MULTILANGUAGE SPECIFICATION FOR SYSTEM DESIGN AND CODESIGN

This chapter discusses specification languages and intermediate models used for system-level design. Languages are used during one of the most important steps of system design: the specification of the system to be designed. A plethora of specification languages exists. Each claims superiority but excels only within a restricted application domain. Selecting a language is generally a trade off between several criteria such as the expressive power of the language, the automation capabilities provided by the model underlying the language and the availability of tools and methods supporting the language. Additionally, for some applications, several languages need to be used for the specification of different modules of the same design. Multilanguage solutions are required for the design of heterogeneous systems where different parts belong to different application classes e.g. control/data or continuous/discrete. All system design tools use languages as input. They generally use an intermediate form to perform refinements and transformation of the initial specification. There are only few computation models. These may be dataor control-oriented. In both cases, these may be synchronous or asynchronous. The next section details three system-level modeling approaches to introduce homogeneous and heterogeneous modeling for codesign. Each of the modeling strategies implies a different organization of the codesign environment. Section 3 deals with intermediate forms for codesign. Section 4 introduces several languages and outlines a comparative study of these languages. Finally, section 5 deals with multilanguage modeling and cosimulation.

[1]  Dominique Borrione,et al.  CONLAN Report , 1983, Lecture Notes in Computer Science.

[2]  de Gg Gjalt Gerrit Jong,et al.  Generalized data flow graphs : theory and applications , 1993 .

[3]  A. O. Fernandes,et al.  Hardware-software codesign of embedded systems , 1998, Proceedings. XI Brazilian Symposium on Integrated Circuit Design (Cat. No.98EX216).

[4]  H. De Man,et al.  CoWare—A design environment for heterogeneous hardware/software systems , 1996, Proceedings EURO-DAC '96. European Design Automation Conference with EURO-VHDL '96 and Exhibition.

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

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

[7]  Paul Le Guernic,et al.  SIGNAL: A declarative language for synchronous programming of real-time systems , 1987, FPCA.

[8]  Giovanni De Micheli,et al.  Relative scheduling under timing constraints , 1991, DAC '90.

[9]  Ahmed Amine Jerraya,et al.  Behavioral Synthesis and Component Reuse with VHDL , 1996 .

[10]  Giovanni De Micheli,et al.  Run-time scheduler synthesis for hardware-software systems and application to robot control design , 1997, Proceedings of 5th International Workshop on Hardware/Software Co Design. Codes/CASHE '97.

[11]  Michael Jackson,et al.  Conjunction as composition , 1993, TSEM.

[12]  Robin Milner,et al.  Calculi for Synchrony and Asynchrony , 1983, Theor. Comput. Sci..

[13]  Ahmed Amine Jerraya,et al.  Automatic generation of interfaces for distributed C-VHDL cosimulation of embedded systems: an industrial experience , 1996, Proceedings Seventh IEEE International Workshop on Rapid System Prototyping. Shortening the Path from Specification to Prototype.

[14]  Daniel D. Gajski,et al.  Synthesis from VHDL , 1988, Proceedings 1988 IEEE International Conference on Computer Design: VLSI.

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

[16]  Ahmed Amine Jerraya,et al.  VHDL generation from SDL specifications , 2001 .

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

[18]  Daniel D. Gajski,et al.  SpecCharts : A Language for System Level Synthesis , 1991 .

[19]  Frank Vahid,et al.  System specification and synthesis with the SpecCharts language , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[20]  Jörg Henkel,et al.  An approach to the adaptation of estimated cost parameters in the COSYMA system , 1994, CODES '94.

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

[22]  Luciano Lavagno,et al.  Embedded System Codesign: Synthesis and Verification , 1995 .

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

[24]  J. Michael Spivey,et al.  An introduction to Z and formal specifications , 1989, Softw. Eng. J..

[25]  A. Hugo A Hardware Implementation of Pure Esterel , 1991 .

[26]  Peter Radford,et al.  Petri Net Theory and the Modeling of Systems , 1982 .

[27]  Mohamed Abid,et al.  A unified model for co-simulation and co-synthesis of mixed hardware/software systems , 1995, Proceedings the European Design and Test Conference. ED&TC 1995.

[28]  Gregor von Bochmann Specification Languages for Communication Protocols , 1993, CHDL.

[29]  Donald L. Dietmeyer,et al.  A Digital System Design Language (DDL) , 1968, IEEE Transactions on Computers.

[30]  Frank Vahid,et al.  A system-design methodology: executable-specification refinement , 1994, Proceedings of European Design and Test Conference EDAC-ETC-EUROASIC.

[31]  Frank Vahid,et al.  SpecCharts: a VHDL front-end for embedded systems , 1995, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[32]  Daniel D. Gajski,et al.  High ― Level Synthesis: Introduction to Chip and System Design , 1992 .

[33]  P ? ? ? ? ? ? ? % ? ? ? ? , 1991 .

[34]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[35]  Clifford Liem,et al.  Retargetable Compilers for Embedded Core Processors: Methods and Experience in Industrial Applications , 1997 .

[36]  Martin Peschke,et al.  Design and Validation of Computer Protocols , 2003 .

[37]  Jeroen Bruijning Evaluation and Integration of Specification Languages , 1987, Comput. Networks.

[38]  Mario Barbacci,et al.  Instruction set processor specifications (ISPS): The notation and its applications , 1981, IEEE Transactions on Computers.

[39]  Giovanni De Micheli,et al.  Hardware C - A Language for Hardware Design , 1988 .

[40]  Gérard Berry,et al.  A hardware implementation of pure ESTEREL , 1992 .

[41]  Steven P. Reiss Working in the Garden Environment for Conceptual Programming , 1987, IEEE Software.

[42]  David Sinclair,et al.  Integrated System Design with an Object-Oriented Methodology , 1996 .

[43]  Jochen A. G. Jess,et al.  Exact scheduling strategies based on bipartite graph matching , 1995, Proceedings the European Design and Test Conference. ED&TC 1995.

[44]  Rolf Ernst,et al.  A path-based technique for estimating hardware runtime in HW/SW-cosynthesis , 1995 .

[45]  Alan M. Davis,et al.  Software requirements - analysis and specification , 1990 .

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

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

[48]  Frank Waters,et al.  The B Book , 1971 .

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

[50]  Gérard Berry,et al.  The ESTEREL Synchronous Programming Language and its Mathematical Semantics , 1984, Seminar on Concurrency.

[51]  C. Delgado Kloos,et al.  From Lotos to VHDL , 1995 .

[52]  Gregory R. Andrews,et al.  Concurrent programming - principles and practice , 1991 .

[53]  Diederik Verkest,et al.  Co-Design of DSP Systems , 1996 .

[54]  Jan Madsen,et al.  Hardware/Software Partitioning Using the Lycos System , 1997 .

[55]  Leon Stok,et al.  Architectural synthesis and optimization of digital systems , 1991 .

[56]  A. Jeffroy,et al.  Evaluation and composition of specification languages, an industrial point of view , 1995, Proceedings of ASP-DAC'95/CHDL'95/VLSI'95 with EDA Technofair.

[57]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[58]  Giovanni De Micheli,et al.  Interface optimization for concurrent systems under timing constraints , 1993, IEEE Trans. Very Large Scale Integr. Syst..

[59]  Stanislaw Budkowski,et al.  An Introduction to Estelle: A Specification Language for Distributed Systems , 1987, Comput. Networks.

[60]  Russ Klein,et al.  Miami: a hardware software co-simulation environment , 1996, Proceedings Seventh IEEE International Workshop on Rapid System Prototyping. Shortening the Path from Specification to Prototype.

[61]  Nicolas Halbwachs,et al.  Programming and Verifying Real-Time Systems by Means of the Synchronous Data-Flow Language LUSTRE , 1992, IEEE Trans. Software Eng..

[62]  Ahmed Amine Jerraya,et al.  Languages for System-Level Specification and Design , 1997 .