Hardware/Software Co-Design: Application Domains and Design Technologies

The design of electronic systems is complex because of the interplay of different components, which may be heterogeneous in nature. Moreover, systems consist of a very large number of elementary constituents (e.g., electronic transistors, machine-level instructions), which yield numerous design options. System-level design benefits from the use of system-level computer-aided design (CAD) tools to support modeling, validation and synthesis. Whereas computer-aided design tools have reached maturity in the domain of synthesizing and validating very large scale integration (VLSI) circuits, few tools and structured design methodologies exist yet for electronic systems, due to their heterogeneous nature, where different components may require different design techniques and where the interactions among heterogeneous components has to be dealt with.

[1]  Gaetano Borriello,et al.  Software Scheduling in the Co-Synthesis of Reactive Real-Time Systems , 1994, 31st Design Automation Conference.

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

[3]  Stephen G. Tell,et al.  An engineering environment for hardware/software co-simulation , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

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

[5]  Jianwen Zhu,et al.  Specification and Design of Embedded Systems , 1998, Informationstechnik Tech. Inform..

[6]  Parameswaran Ramanathan,et al.  Real-time computing: a new discipline of computer science and engineering , 1994, Proc. IEEE.

[7]  Gert Goossens,et al.  Chess: retargetable code generation for embedded DSP processors , 1994, Code Generation for Embedded Processors.

[8]  Edmund M. Clarke,et al.  Symbolic model checking for sequential circuit verification , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  Ahmed Amine Jerraya,et al.  Synthesis Steps and Design Models for Codesign , 1995, Computer.

[10]  Peter Marwedel,et al.  Tree-based mapping of algorithms to predefined structures , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[11]  Giovanni De Micheli,et al.  A co-synthesis approach to embedded system design automation , 1996, Des. Autom. Embed. Syst..

[12]  Gaetano Borriello,et al.  Interval Scheduling: Fine-Grained Code Scheduling for Embedded Systems , 1995, 32nd Design Automation Conference.

[13]  Wolfgang Rosenstiel,et al.  A method for partitioning UNITY language in hardware and software , 1994, EURO-DAC '94.

[14]  Tilak Agerwala Microprogram Optimization: A Survey , 1976, IEEE Transactions on Computers.

[15]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[16]  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.

[17]  Roberto Saracco,et al.  CCITT SDL: Overview of the Language and its Applications , 1987, Comput. Networks.

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

[19]  A. Alomary,et al.  An ASIP instruction set optimization algorithm with functional module sharing constraint , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[20]  W. Kever,et al.  A low-cost graphics and multimedia workstation chip set , 1994, IEEE Micro.

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

[22]  Bruce K. Holmer A tool for processor instruction set design , 1994, EURO-DAC '94.

[23]  Ing-Jer Huang,et al.  High level synthesis of pipelined instruction set processors and back-end compilers , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[24]  E. Hamdy,et al.  Antifuse field programmable gate arrays , 1993, Proc. IEEE.

[25]  Mani Srivastava,et al.  Rapid-prototyping of hardware and software in a unified framework , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[26]  Jean Vuillemin,et al.  Introduction to programmable active memories , 1990 .

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

[28]  Ing-Jer Huang,et al.  Hardware/software resolution of pipeline hazards in pipeline synthesis of instruction set processors , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

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

[30]  Giovanni De Micheli,et al.  Hardware-software cosynthesis for digital systems , 1993, IEEE Design & Test of Computers.

[31]  Wayne H. Wolf,et al.  Tutorial on embedded system design , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[32]  Mark Shand,et al.  Programmable active memories: reconfigurable systems come of age , 1996, IEEE Trans. Very Large Scale Integr. Syst..

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

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

[35]  John G. McWhirter,et al.  Systolic Array Processors , 1989 .

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

[37]  Frank Vahid,et al.  Translating system specifications to VHDL , 1991, Proceedings of the European Conference on Design Automation..

[38]  G. De Micheli,et al.  The Olympus Synthesis System for Digital Design , 1990 .

[39]  Giovanni De Micheli,et al.  Synthesis and simulation of digital systems containing interacting hardware and software components , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[40]  Albert Benveniste,et al.  The synchronous approach to reactive and real-time systems , 1991 .

[41]  John O'Leary,et al.  Codesign of communication protocols , 1993, Computer.

[42]  Donald E. Thomas,et al.  The Verilog® Hardware Description Language , 1990 .

[43]  Herman Schmit,et al.  A Model and Methodology for Hardware-Software Codesign , 1993, IEEE Des. Test Comput..

[44]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[45]  S. Trimberger,et al.  A reprogrammable gate array and applications , 1993 .

[46]  Rajesh Gupta,et al.  Hardware/software co-design , 1996, Proc. IEEE.

[47]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[48]  Gaetano Borriello,et al.  Scheduling for reactive real-time systems , 1994, IEEE Micro.

[49]  Pierre G. Paulin,et al.  Flexware: A flexible firmware development environment for embedded systems , 1994, Code Generation for Embedded Processors.

[50]  James A. Rowson,et al.  Hardware / Software Co-Simulation , 2000 .