Modeling and synthesis of behavior, control and data flow

To tackle the exponential growth in the complexity of digital circuits, designers are moving to higher levels of abstraction in the design process. This chapter surveys the state of the art in modeling and synthesis techniques above RTL. The chapter focuses in three areas: Behavioral Synthesis, High-Level Control, and Data Flow.

[1]  Jan M. Rabaey,et al.  Maximizing the throughput of high performance DSP applications using behavioral transformations , 1994, Proceedings of European Design and Test Conference EDAC-ETC-EUROASIC.

[2]  R. Karp,et al.  Properties of a model for parallel computations: determinacy , 1966 .

[3]  Charles E. Leiserson,et al.  Optimizing synchronous systems , 1981, 22nd Annual Symposium on Foundations of Computer Science (sfcs 1981).

[4]  Donald E. Thomas,et al.  Exploiting the special structure of conflict and compatibility graphs in high-level synthesis , 1994, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[5]  Forrest Brewer,et al.  Incorporating Speculative Execution in Exact Control-Dependent Scheduling , 1994, 31st Design Automation Conference.

[6]  Joan L. Mitchell,et al.  MPEG Video: Compression Standard , 1996 .

[7]  Fadi J. Kurdahi,et al.  REAL: A Program for REgister ALlocation , 1987, 24th ACM/IEEE Design Automation Conference.

[8]  Robert K. Brayton,et al.  Optimal State Assignment for Finite State Machines , 1985, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[9]  William W. Wadge,et al.  Lucid, a nonprocedural language with iteration , 1977, CACM.

[10]  Kazutoshi Wakabayashi,et al.  A resource sharing and control synthesis method for conditional branches , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[11]  Jeffrey D. Ullman,et al.  Experience with a regular expression compiler , 1983 .

[12]  Alice C. Parker,et al.  A Formal Method for the Specification, Analysis, and Design of Register-Transfer Level Digital Logic , 1983, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[13]  Andrew Seawright Grammar-based specification and synthesis for synchronous digital hardware design , 1994 .

[14]  Janusz A. Brzozowski,et al.  Derivatives of Regular Expressions , 1964, JACM.

[15]  Robert K. Brayton,et al.  Retiming and resynthesis: optimizing sequential networks with combinational techniques , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[16]  Andrew Seawright,et al.  High-level Symbolic Construction Techniques for High Performance Sequential Synthesis , 1993, 30th ACM/IEEE Design Automation Conference.

[17]  Pierre G. Paulin,et al.  Force-directed scheduling for the behavioral synthesis of ASICs , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[18]  Rudy Lauwereins,et al.  Static scheduling of multi-rate and cyclo-static DSP-applications , 1994, Proceedings of 1994 IEEE Workshop on VLSI Signal Processing.

[19]  Andrew Seawright,et al.  Clairvoyant: a synthesis system for production-based specification , 1994, IEEE Trans. Very Large Scale Integr. Syst..

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

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

[22]  Ian Watson,et al.  The Manchester prototype dataflow computer , 1985, CACM.

[23]  Peter Duzy,et al.  The Synthesis Approach to Digital System Design , 1992 .

[24]  Ulrich Holtmann,et al.  Design of a SPDIF receiver using Protocol Compiler , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[25]  Andrew Seawright,et al.  Synthesis from production-based specifications , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

[26]  Catherine H. Gebotys,et al.  Optimal VLSI Architectural Synthesis , 1992 .

[27]  Raul Camposano,et al.  Path-based scheduling for synthesis , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[28]  Michael J. Sexton,et al.  Transmission Networking: Sonet and the Synchronous Digital Hierarchy , 1992 .

[29]  Edward A. Lee,et al.  Dataflow process networks , 1995, Proc. IEEE.

[30]  Olivier Coudert,et al.  New ideas on symbolic manipulations of finite state machines , 1990, Proceedings., 1990 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[31]  Louis J. Hafer,et al.  Constraint improvements for MILP-based hardware synthesis , 1991, 28th ACM/IEEE Design Automation Conference.

[32]  Donald E. Thomas,et al.  A Method of Automatic Data Path Synthesis , 1983, 20th Design Automation Conference Proceedings.

[33]  Ellen M. Sentovich,et al.  Latch optimization in circuits generated from high-level descriptions , 1996, ICCAD 1996.

[34]  Forrest Brewer,et al.  Controller optimization for protocol intensive applications , 1996, Proceedings EURO-DAC '96. European Design Automation Conference with EURO-VHDL '96 and Exhibition.

[35]  Guang R. Gao,et al.  Well-behaved dataflow programs for DSP computation , 1992, [Proceedings] ICASSP-92: 1992 IEEE International Conference on Acoustics, Speech, and Signal Processing.

[36]  Johnny Öberg,et al.  Grammar-based hardware synthesis of data communication protocols , 1996, Proceedings of 9th International Symposium on Systems Synthesis.

[37]  Alexandru Nicolau,et al.  Percolation based synthesis , 1991, DAC '90.

[38]  Edward A. Lee,et al.  Generating compact code from dataflow specifications of multirate signal processing algorithms , 1995 .

[39]  Peter Marwedel,et al.  The MIMOLA Design System: Tools for the Design of Digital Processors , 1984, 21st Design Automation Conference Proceedings.

[40]  M.C. McFarland Using Bottom-Up Design Techniques in the Synthesis of Digital Hardware from Abstract Behavioral Descriptions , 1986, 23rd ACM/IEEE Design Automation Conference.

[41]  Srinivas Devadas,et al.  Algorithms for hardware allocation in data path synthesis , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[42]  Andrew Seawright,et al.  Design and synthesis of array structured telecommunication processing applications , 1997, DAC.

[43]  Heinrich Meyr,et al.  High level software synthesis for signal processing systems , 1992, [1992] Proceedings of the International Conference on Application Specific Array Processors.

[44]  Robert K. Brayton,et al.  Implicit state enumeration of finite state machines using BDD's , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[45]  Edward A. Lee,et al.  Scheduling dynamic dataflow graphs with bounded memory using the token flow model , 1993, 1993 IEEE International Conference on Acoustics, Speech, and Signal Processing.

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

[47]  Gaetano Borriello,et al.  Interface co-synthesis techniques for embedded systems , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[48]  Narendra V. Shenoy,et al.  Retiming: Theory and practice , 1997, Integr..

[49]  Michael Jackson Constructive Methods of Program Design , 1976 .

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

[51]  Gérard Berry,et al.  The Esterel Synchronous Programming Language: Design, Semantics, Implementation , 1992, Sci. Comput. Program..

[52]  Catherine H. Gebotys,et al.  Optimal VLSI Architectural Synthesis: Area, Performance and Testability , 1991 .

[53]  Srinivas Devadas,et al.  Retiming sequential circuits for low power , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[54]  Ellen Sentovich,et al.  Efficient latch optimization using exclusive sets , 1997, DAC.

[55]  Andrew Seawright,et al.  A system for compiling and debugging structured data processing controllers , 1996, Proceedings EURO-DAC '96. European Design Automation Conference with EURO-VHDL '96 and Exhibition.

[56]  Jeffrey D. Ullman,et al.  The compilation of regular expressions into integrated circuits , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[57]  Gérard Berry,et al.  From Regular Expressions to Deterministic Automata , 1986, Theor. Comput. Sci..

[58]  Heinrich Meyr,et al.  Digital Receiver Design Using VHDL Generation From Data Flow Graphs , 1995, 32nd Design Automation Conference.

[59]  P. Marwedel,et al.  A New Synthesis Algorithm for the MIMOLA Software System , 1986, 23rd ACM/IEEE Design Automation Conference.

[60]  Alice C. Parker,et al.  MAHA: A Program for Datapath Synthesis , 1986, DAC 1986.

[61]  Sachin S. Sapatnekar,et al.  A fresh look at retiming via clock skew optimization , 1995, DAC '95.

[62]  Robert K. Brayton,et al.  Computing the initial states of retimed circuits , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[63]  Thaddeus J. Kowalski An artificial intelligence approach to VLSI design , 1985 .

[64]  Bruce D. Shriver,et al.  Some Experiments in Local Microcode Compaction for Horizontal Machines , 1981, IEEE Transactions on Computers.

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

[66]  Edward A. Lee,et al.  Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing , 1989, IEEE Transactions on Computers.

[67]  Atm Forum ATM user-network interface (UNI) specification : version 3.1 , 1993 .

[68]  Barry M. Pangrle Splicer: a heuristic approach to connectivity binding , 1988, 25th ACM/IEEE, Design Automation Conference.Proceedings 1988..

[69]  Edward A. Lee,et al.  Software Synthesis from Dataflow Graphs , 1996 .

[70]  Jeffrey D Ullma Computational Aspects of VLSI , 1984 .

[71]  Giovanni De Micheli,et al.  Analysis and synthesis of concurrent digital circuits using control-flow expressions , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[72]  Joseph Buck A dynamic dataflow model suitable for efficient mixed hardware and software implementations of DSP applications , 1994, Third International Workshop on Hardware/Software Codesign.

[73]  David E. Culler,et al.  Dataflow architectures , 1986 .

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

[75]  Theodore D. Friedman,et al.  Methods Used in an Automatic Logic Design Generator (ALERT) , 1969, IEEE Transactions on Computers.

[76]  Randal E. Bryant,et al.  Efficient implementation of a BDD package , 1991, DAC '90.

[77]  Thomas R. Shiple,et al.  Constructive analysis of cyclic circuits , 1996, Proceedings ED&TC European Design and Test Conference.

[78]  Daniel Gajski,et al.  Design Tools for Intelligent Silicon Compilation , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[79]  Raul Camposano Behavioral synthesis , 1995, IEEE Design & Test of Computers.

[80]  Daniel P. Siewiorek,et al.  Automated Synthesis of Data Paths in Digital Systems , 1986, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[81]  Andrew Seawright,et al.  Partitioning and optimizing controllers synthesized from hierarchical high-level descriptions , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[82]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[83]  Mohamed I. Elmasry,et al.  Simultaneous scheduling and allocation for cost constrained optimal architectural synthesis , 1991, DAC '91.

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

[85]  Joan L. Mitchell,et al.  JPEG: Still Image Data Compression Standard , 1992 .

[86]  Donald L. Dietmeyer,et al.  Translation of a DDL Digital System Specification to Boolean Equations , 1969, IEEE Transactions on Computers.