Edwin A. Harcourt
Cadence Design Systems
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Edwin A. Harcourt.
design automation conference | 1997
Mark R. Hartoog; James A. Rowson; Prakash Reddy; Soumya Desai; Douglas D. Dunlop; Edwin A. Harcourt; Neeti Khullar
An experimental set of tools that generate instruction set simulators,assemblers, and disassemblers from a single description wasdeveloped to test if retargetable development tools would work forcommercial DSP processors and microprocessors. The processorinstruction set was described using a language called nML. TheTMS320C50 DSP processor and the ARM7 microprocessor weremodeled in nML. The resulting instruction set models executeabout 25,000 instructions per second, and compiled instruction setsimulation models execute about 150,000 instructions per second.The viability of this approach and the deficiencies of nML are discussed.
design, automation, and test in europe | 2001
Paolo Giusto; Grant Martin; Edwin A. Harcourt
Estimates of execution time of embedded software play an important role in function-architecture co-design. This paper describes a technique based upon a statistical approach that improves existing estimation techniques. Our approach provides a degree of reliability in the error of the estimated execution time. We illustrate the technique using both control-oriented and computational-dominated benchmark programs.
international conference on computer design | 1993
Todd A. Cook; Paul D. Franzon; Edwin A. Harcourt; Thomas K. Miller
System-level design requires some sort of specification for a system at the level of abstraction of the system. When the system (or sub-system) is a processor, the appropriate level of abstraction is the instruction set. However, there are no good approaches for describing processors at this level. Nevertheless, this type of specification has a number of benefits: it is more concise (and thus less error-prone) than more general alternatives; it can be re-used in later re-implementations; and it provides support for software codesign through compiler-generators (which rely on higher-level abstractions than other techniques provide). Therefore, we have developed a methodology and an embodying language for specifying processors at the instruction set level.<<ETX>>
international conference on computational logistics | 1994
Todd A. Cook; Edwin A. Harcourt
Application-specific programmable processing systems consist of not only a processor, but also the software that runs on it. In order to support development of such systems, a design environment must support both hardware and software development. Unfortunately, there are no specification languages for processors that are suitable for such dual use. Therefore, we have designed a functional-style language that is specifically intended for describing instruction sets; its functional nature allows it to describe the result that an instruction produces without having to specify the mechanism of operation. This property is key to allowing dual use of the specification, since it will not be biased towards either hardware or software development. We are constructing a design environment based on our language.<<ETX>>
static analysis symposium | 1994
Edwin A. Harcourt; Jon Mauney; Todd A. Cook
We show how to derive a static instruction scheduler from a formal specification of an instruction-level parallel processor. The mathematical formalism used is SCCS, a synchronous process algebra for specifying timed, concurrent systems. We illustrate the technique by specifying a hypothetical processor that shares many properties of commercial processors (such as the MIPS or SuperSparc) including delayed loads and branches, interlocked floating-point instructions, resource constraints, and multiple instruction issue.
Electronic Notes in Theoretical Computer Science | 2009
Edwin A. Harcourt
Pipelining is a well understood and often used implementation technique for increasing the performance of a hardware system. We develop several SystemC/C++ modeling techniques that allow us to quickly model, simulate, and evaluate pipelines. We employ a small domain specific language (DSL) based on resource usage patterns that automates the drudgery of boilerplate code needed to configure connectivity in simulation models. The DSL is embedded directly in the host modeling language SystemC/C++. Additionally we develop several techniques for parameterizing a pipelines behavior based on policies of function, communication, and timing (performance modeling).
Proceedings of the Eighth International Workshop on Hardware/Software Codesign. CODES 2000 (IEEE Cat. No.00TH8518) | 2000
Jwahar R. Bammi; Wido Kruijtzer; Luciano Lavagno; Edwin A. Harcourt; Mihai Teodor Lazarescu
high level design validation and test | 2000
Mihai Teodor Lazarescu; Jwahar R. Bammi; Edwin A. Harcourt; Luciano Lavagno; Marcello Lajolo
Archive | 2000
Sherry Solden; Edwin A. Harcourt; William W. La Rue; Douglas D. Dunlop; Christopher Hoover; Qizhang Chao; Poonam Agrawal; Aaron Beverly; Massimiliano Chiodo; Neeti K. Bhatnagar; Soumya Desai; Hungming Chou; Michael D. Sholes; Sanjay Chakravarty; Eamonn O'brien-Strain; Luciano Lavagno
Archive | 2001
Sherry Solden; Edwin A. Harcourt; William W. Larue; Douglas D. Dunlop; Christopher Hoover; Qizhang Chao; Poonam Agrawal; Aaron Beverly; Massimilano L. Chiodo; Nheeti K. Bhatnagar; Soumya Desai; Hungming Chou; Michael D. Sholes; Ian Dennison; Sanjay Chakravarty; Eamonn O'brien-Strain; Luciano Lavagno