Embedded system design

In the past decade the main engine of electronic design automation has been the widespread application of ASICs (Application Specific Integrated Circuits). Present technology supports complete systems on a chip, most often used as so-called embedded systems in an increasing number of applications. Embedded systems pose new design challenges which we believe will be the driving forces of design automation in the years to come. These include the design of electronic systems hardware, embedded software and hardware / software codesign. This paper explores the novel technical challenges in embedded system design and presents experiences and results of the work in this area using the CASTLE system. CASTLE supports the design of complex embedded systems and the design of the required tools. It provides a central design representation, Verilog, VHDL and C/C++ frontends, Hardware generation in VHDL and BLIF, a retargetable compiler backend and several analysis and visualization tools. Two design examples, video compression and a diesel injection control, illustrate the presented concepts.

[1]  Wayne Wolf,et al.  Architectural Optimization Methods for Control-Dominated Machines , 1991 .

[2]  Hsueh-Ming Hang,et al.  Image and video coding standards , 1993, AT&T Technical Journal.

[3]  Robert K. Brayton,et al.  MIS: A Multiple-Level Logic Optimization System , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[4]  Michel Barlaud,et al.  Image coding using wavelet transform , 1992, IEEE Trans. Image Process..

[5]  Yves Durand,et al.  A single chip videophone video encoder/decoder , 1995, Proceedings ISSCC '95 - International Solid-State Circuits Conference.

[6]  Charles R. Moore,et al.  The Power PC 601 microprocessor , 1993, IEEE Micro.

[7]  Hermann Kopetz,et al.  Event-Triggered Versus Time-Triggered Real-Time Systems , 1991, Operating Systems of the 90s and Beyond.

[8]  Chuck Monahan,et al.  Symbolic Modeling and Evaluation of Data Paths , 1995, 32nd Design Automation Conference.

[9]  Hugo De Man,et al.  Cathedral-III : architecture-driven high-level synthesis for high throughput DSP applications , 1991, 28th ACM/IEEE Design Automation Conference.

[10]  John K. Ousterhout,et al.  Tcl and the Tk Toolkit , 1994 .

[11]  Ralf G. Herrtwich,et al.  Betriebsmittelvergabe unter Echtzeitgesichtspunkten , 1991, Inform. Spektrum.

[12]  Krithi Ramamritham,et al.  The Spring kernel: a new paradigm for real-time systems , 1991, IEEE Software.

[13]  Wen-Hsiung Chen,et al.  A Fast Computational Algorithm for the Discrete Cosine Transform , 1977, IEEE Trans. Commun..

[14]  Avtar Saini,et al.  Design of the Intel Pentium processor , 1993, Proceedings of 1993 IEEE International Conference on Computer Design ICCD'93.

[15]  M.L. Liou,et al.  Visual telephony as an ISDN application , 1990, IEEE Communications Magazine.

[16]  W. J. Kubitz,et al.  Biting the silver bullet: toward a brighter future for system development , 1992 .

[17]  William H. Ninke,et al.  The video communications decade , 1993, AT&T Technical Journal.

[18]  Chang Yun Park,et al.  Predicting deterministic execution times of real-time programs , 1992 .

[19]  Pierre G. Paulin,et al.  DSP design tool requirements for embedded systems: A telecommunications industrial perspective , 1995, J. VLSI Signal Process..

[20]  N. Ahmed,et al.  Discrete Cosine Transform , 1996 .

[21]  Teresa H. Meng,et al.  Portable video-on-demand in wireless communication , 1995, Proc. IEEE.

[22]  B. Cole Multimedia-the technology framework , 1993, IEEE Spectrum.

[23]  Wayne Wolf,et al.  High-Level VLSI Synthesis , 1991 .

[24]  Wolfram Hardt,et al.  Trade-Offs in HW/SW Codesign , 1996 .

[25]  R. Flavell,et al.  Identification of an enhancer element for the endosperm-specific expression of high molecular weight glutenin. , 1990, The Plant cell.

[26]  T. C. May,et al.  Instruction-set matching and selection for DSP and ASIP code generation , 1994, Proceedings of European Design and Test Conference EDAC-ETC-EUROASIC.

[27]  Norman P. Jouppi,et al.  Available instruction-level parallelism for superscalar and superpipelined machines , 1989, ASPLOS 1989.

[28]  Edward A. Lee,et al.  A hardware-software codesign methodology for DSP applications , 1993, IEEE Design & Test of Computers.

[29]  Hugo De Man,et al.  Assessment of the cathedral-ii silicon compiler for digital-signal-processing applications , 1991 .

[30]  Gérard Berry,et al.  Synchronous programming of reactive systems: an introduction to ESTEREL , 1988 .

[31]  Heinrich Meyr,et al.  High-Level Software Synthesis for the Design of Communication Systems , 1993, IEEE J. Sel. Areas Commun..

[32]  Mike Johnson,et al.  Superscalar microprocessor design , 1991, Prentice Hall series in innovative technology.

[33]  Xiaobo Hu,et al.  Configuration-level hardware/software partitioning for real-time embedded systems , 1994, Third International Workshop on Hardware/Software Codesign.

[34]  Henk Corporaal,et al.  Code generation for transport triggered architectures , 1994, Code Generation for Embedded Processors.

[35]  Kiyoshi Oguri,et al.  Synthesis From Pure Behavioral Descriptions , 1991 .

[36]  Giovanni De Micheli,et al.  Computer-aided hardware-software codesign , 1994, IEEE Micro.

[37]  Alice C. Parker,et al.  The high-level synthesis of digital systems , 1990, Proc. IEEE.

[38]  Robert A. Walker,et al.  A Survey of high-level synthesis systems , 1991 .

[39]  Miodrag Potkonjak,et al.  Estimating implementation bounds for real time DSP application specific circuits , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[40]  Heinrich Theodor Vierhaus,et al.  Local microcode generation in system design , 1994, Code Generation for Embedded Processors.

[41]  Wayne Wolf,et al.  Hardware-software co-design of embedded systems , 1994, Proc. IEEE.

[42]  Richard Vickers The development of ATM standards and technology: a retrospective , 1993, IEEE Micro.

[43]  Stéphane Mallat,et al.  A Theory for Multiresolution Signal Decomposition: The Wavelet Representation , 1989, IEEE Trans. Pattern Anal. Mach. Intell..

[44]  Wolfgang Rosenstiel,et al.  Design flow for hardware/software cosynthesis of a video compression system , 1994, Third International Workshop on Hardware/Software Codesign.

[45]  Pierre G. Paulin,et al.  Register assignrnent through resource classification for ASIP microcode generation , 1994, IEEE/ACM International Conference on Computer-Aided Design.

[46]  William P. Birmingham,et al.  MICON: Automated Design of Computer Systems , 1991 .

[47]  Hugo De Man,et al.  High-level synthesis for real-time digital signal processing , 1993, The Kluwer international series in engineering and computer science.

[48]  Nicolas Halbwachs,et al.  Synchronous Programming of Reactive Systems , 1992, CAV.

[49]  Hermann Kopetz,et al.  Distributed fault-tolerant real-time systems: the Mars approach , 1989, IEEE Micro.

[50]  S. M. Wu,et al.  The IBM High-Level Synthesis System , 1991 .

[51]  Bryan D. Ackland The role of VLSI in multimedia , 1994 .

[52]  Michael J. Flynn,et al.  Some Computer Organizations and Their Effectiveness , 1972, IEEE Transactions on Computers.

[53]  Alice C. Parker,et al.  Predicting system-level area and delay for pipelined and nonpipelined designs , 1992, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[54]  R. Composano,et al.  WWW based structuring of codesigns , 1995 .

[55]  Donald B. Alpert,et al.  Architecture of the Pentium microprocessor , 1993, IEEE Micro.

[56]  Raul Camposano,et al.  Cosynthesis In CASTLE , 1995 .

[57]  Andrew S. Tanenbaum,et al.  Using Peephole Optimization on Intermediate Code , 1982, TOPL.

[58]  Hans Georg Musmann,et al.  Kompressionsalgorithmen für interaktive Multimedia- Systeme , 1993, Informationstechnik Tech. Inform..

[59]  Hugo De Man,et al.  Data routing: a paradigm for efficient data-path synthesis and code generation , 1994, Proceedings of 7th International Symposium on High-Level Synthesis.

[60]  J.A. Adam Multimedia-applications, implications , 1993, IEEE Spectrum.

[61]  Donald E. Thomas,et al.  Algorithmic and Register-Transfer Level Synthesis: The System Architect's Workbench , 1989 .

[62]  Neil Weste OK, if these CAD tools are so great, why isn't my chip design on schedule? , 1994, Proceedings 1994 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[63]  Hong Ren Wu,et al.  A two-dimensional fast cosine transform algorithm based on Hou's approach , 1991, IEEE Trans. Signal Process..

[64]  R. Comerford How DEC developed Alpha , 1992 .

[65]  Peter Pirsch,et al.  VLSI Architectures for Digital Video Signal Processing , 1992 .

[66]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[67]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[68]  Ketan Mayer-Patel,et al.  Performance of a software MPEG video decoder , 1993, MULTIMEDIA '93.

[69]  Dirk Herrmann,et al.  An approach to the adaptation of estimated cost parameters in the COSYMA system , 1994, Third International Workshop on Hardware/Software Codesign.

[70]  G. Goossens,et al.  Architectural synthesis for medium and high throughput signal processing with the new Cathedral environment , 1991 .

[71]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[72]  Edward A. Lee,et al.  A global criticality/local phase driven algorithm for the constrained hardware/software partitioning problem , 1994, Third International Workshop on Hardware/Software Codesign.

[73]  Raul Camposano,et al.  Design of an embedded video compression system-a quantitative approach , 1994, Proceedings 1994 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[74]  Gregory K. Wallace,et al.  The JPEG still picture compression standard , 1992 .

[75]  Didier J. Le Gall,et al.  The MPEG video compression algorithm , 1992, Signal Process. Image Commun..

[76]  Daniel P. Siewiorek,et al.  A case study in embedded-system design: The VuMan 2 wearable computer , 1993, IEEE Design & Test of Computers.

[77]  Kunle Olukotun,et al.  Emulation and Prototyping Of Digital Systems , 1996 .

[78]  John Cocke,et al.  A methodology for the real world , 1981 .

[79]  John Cocke,et al.  The Evolution of RISC Technology at IBM , 1990, IBM J. Res. Dev..

[80]  Xiaobo Sharon Hu,et al.  Codesign of architectures for automotive powertrain modules , 1994, IEEE Micro.

[81]  Jörg Henkel,et al.  Hardware-software cosynthesis for microcontrollers , 1993, IEEE Design & Test of Computers.

[82]  Sreejit Chakravarty,et al.  A Characterization of Binary Decision Diagrams , 1993, IEEE Trans. Computers.

[83]  Masahiko Yoshimoto,et al.  A 100-MHz 2-D discrete cosine transform core processor , 1992 .

[84]  Michael C. McFarland,et al.  Formal verification of sequential hardware: a tutorial , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[85]  Arnaud E. Jacquin,et al.  Image coding based on a fractal theory of iterated contractive image transformations , 1992, IEEE Trans. Image Process..

[86]  Paolo Pavan,et al.  Improving the reliability and safety of automotive electronics , 1993, IEEE Micro.

[87]  Jean Paul Calvez,et al.  Embedded Real-Time Systems , 1993 .

[88]  Kurt Keutzer,et al.  Code Optimization Techniques for Embedded DSP Microprocessors , 1995, 32nd Design Automation Conference.

[89]  Allen Gersho,et al.  Adaptive vector quantization , 1992 .

[90]  Mahadevan Ganapathi,et al.  Attributed linear intermediate representations for retargetable code generators , 1984, Softw. Pract. Exp..

[91]  Gaetano Borriello Combining event and data-flow graphs in behavioral synthesis , 1988, [1988] IEEE International Conference on Computer-Aided Design (ICCAD-89) Digest of Technical Papers.

[92]  Kunle Olukotun,et al.  A software-hardware cosynthesis approach to digital system simulation , 1994, IEEE Micro.

[93]  Ingrid Daubechies,et al.  Ten Lectures on Wavelets , 1992 .

[94]  Allen Gersho,et al.  Vector quantization and signal compression , 1991, The Kluwer international series in engineering and computer science.

[95]  Luciano Lavagno,et al.  Hardware-software codesign of embedded systems , 1994, IEEE Micro.

[96]  Petru Eles,et al.  VHDL system-level specification and partitioning in a hardware/software co-synthesis environment , 1994, Third International Workshop on Hardware/Software Codesign.

[97]  Roger L. Fetterman,et al.  Mainstream Multimedia: Applying Multimedia in Business , 1993 .

[98]  Steven E. Shladover Research and development needs for advanced vehicle control systems , 1993, IEEE Micro.

[99]  Minh N. Do,et al.  Youn-Long Steve Lin , 1992 .

[100]  Henk Corporaal,et al.  Transport-Triggering versus Operation-Triggering , 1994, CC.