SlideServe
Menu
Préférences
© SlideServe · v2026

Behavioral Synthesis: Design Flow and Simulation Techniques

ormanda avatar
13 diapositives · 288 Views · Mar 02, 2014

The fundamentals of behavioral synthesis in electronic design automation (EDA), focusing on the design flow, simulation, and verification processes. It covers both RTL (Register Transfer Level) and behavioral design, highlighting the role of behavioral compilers and the transformation of abstract models into HDL (Hardware Description Language) code. Key concepts include dataflow and control flow-oriented synthesis, finite state machines, and the essential activities of scheduling and allocation. The text also discusses advantages and challenges in simulation and verification for optimized designs.

Behavioral Synthesis: Design Flow and Simulation Techniques - slide 1
01 / 13Behavioral Synthesis: Design Flow and Simulation Techniques
1 / 17

Télécharger la présentation

Behavioral Synthesis: Design Flow and Simulation Techniques
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. ECE-C662 Introduction to Behavioral SynthesisKnapp Text Ch. 1-2Prawat Nagvajara • Design flow • Simulation and verification • RTL and behavioral design • Behavioral compiler • Design flow • Representation • Allocation • Netlisting • Control FSM • Compiler outputs

  2. Control synthesis Dataflow synthesis Design flow Behavioral synthesis RTL synthesis Logic synthesis

  3. Domain-Specific Synthesis • Dataflow oriented synthesis • Input data are streams of samples • Operations on data are stream oriented • Signal flow diagrams, e.g., x = axz-1 + bu or x[k] = ax[k-1] + bu[k] • Signal processing applications, e.g., filtering, modulations, etc. • Languages and schematic capture editors available • Outputs are HDL description to behavioral or RTL synthesis tool

  4. Control flow oriented synthesis • Finite state machines • States and their transitions • Input data are conditions • Hierarchical descriptions • Languages and schematic capture editors available • Outputs are HDL description to behavioral or RTL synthesis tool

  5. Behavioral Synthesis • Back end for control flow and dataflow synthesis with HDL interchange format • Language-based general purpose tool • Languages: Verilog, VHDL, C, APL, ISP • Scheduling is the core activity • Create states and assign operations to states • Allocation • Operations assign to hardware and data to storage elements • Trade off latency for area and register area for combinational and interconnect area • Optimized design advantages over RTL synthesis

  6. RTL Synthesis • State graph; states and transitions are tightly bound to resources • Serve as a back end for other synthesis (but it can be a front-end tool in its own right) • Cumbersome, verbose and error prone Logic synthesis • Propagation delay and area optimization • Back end for higher abstraction

  7. Simulation and Verification • Simulation tests the response for particular inputs • Formal verification mathematically proves equivalence between the design and a ‘golden’ model described by math properties • E.g., a design is deadlock free, against Boolean expressions and specific functions • Design verification checks properties • Implementation verification checks, e.g., an optimized version against un-optimized version • They work well with combinational logic but the problem is very difficult for design with states, e.g., under process statements

  8. RTL and Behavioral Design • Behavioral synthesis tools glue the domain-specific and RTL synthesis tools, e.g., C description to the dataflow oriented toolx=0;while (!reset) { u = read(input); x = a*x + b*u; write(output);} • Initial questions on data widths, operation ordering, rounding methods, timing, states and queue sizes are abstracts in terms of C or C++ • This abstract model is translated to HDL model where interfaces and timing between modules are corrected using simulation

  9. RTL and Behavioral Design continued • Synthesizable description • Processes are synthesized into separate FSMs or logic blocks. They may be connected by logic blocks. • The number of states in behavioral synthesis can be optimized and operations assigned to states can also changes post optimization • In RTL synthesis, the design decide on the FSM design

  10. a x1 * := b u Schedule example: x[k] = ax[k-1] + bu[k] * + x <=

  11. a x1 mux * u b * Allocation: x[k] = ax[k-1] + bu[k] R * + + x

  12. Behavioral Compiler Flow • HDL input: simulate 1. HDL analysis (parsing and semantic analysis) and elaboration for scheduling 2. User constraints • Timing model of the dataflow portion • Explicit user constraints, e.g., number of clock cycles • Dataflow -> gate-level netlist -> target technology • Early timing analysis (technology-specific scheduling) 3. Schedule • Assignment of operations to states

  13. Behavioral Compiler Flow Continued 4. Allocate • Modules and registers are constructed • Mapping from the logical operations and data to netlist modules and registers • Outputs a logical description of the datapath-abstract resources and data transfer 5. Build netlist and control FSM • Simulation 6. Logic-level optimization; constraints and report • Timing-accurate timing simulation, testability assertion, test generation and layout • EDIF or others output