Hardware SynthesisOverview ModuleModule 33
Rapid Prototyping Design Process
Module Goals
Module Outline
Module Outline (Cont.)
Quick and Dirty Definition
The Integrated Circuit Design Process
Why Use Synthesis?
Why Use Synthesis? (Cont.)
Synthesis Goals
Design Constraints
Area vs. Speed
Definitions
Definitions (Cont.)
Gajski and Kuhn’s Y Chart
Levels of Abstraction Architectural Level
Levels of Abstraction Algorithmic Level
Levels of AbstractionFunctional Block Level
Levels of AbstractionLogic Level
Levels of AbstractionCircuit Level
The Role of Synthesis
Synthesis Categories
Synthesis Process Overview
Logic Synthesis Tasks(e.g., Mentor Graphics’ AutoLogic)
Logic Reduction/FactorizationBerkeley’s Espresso
Logic Reduction/FactorizationBerkeley’s Espresso (Cont.)
Logic Reduction/Factorization Berkeley’s Espresso (Cont.)
Logic Reduction ExampleBerkeley’s Espresso
Logic Reduction Example (Cont.)Berkeley’s Espresso
Register Transfer LevelBasic Computer Registers
Register Transfer Level Instruction Fetch Cycle Example
Behavioral Synthesis Tasks
High-level Optimizations
High-level Optimizations (Cont.)
Allocation
Allocation (Cont.)
Square Root Example
High-Level OptimizationsSquare Root Example
SchedulingSquare Root Example
Scheduling (Cont.)Square Root Example
Supported VHDL Constructs(in Mentor Graphics’ Autologic)
Support for Additional VHDL Provisions
Combinatorial Example Process with Intermediate Signal
Combinatorial Example (Cont.)Process with Intermediate Signal
Combinatorial Example Process with Intermediate Variable
Combinatorial ExampleSelected Signal Assignment
Synthesis of IF-ELSE Statement VHDL Description
Synthesis of IF-ELSE StatementResulting Schematic
Synthesis of Simple If StatementVHDL Description
Synthesis of Simple If StatementResulting Schematic
Internal State ExampleIncorrect Version
Internal State ExampleCorrected Version
Internal State for Signal ExampleUnsynthesizable Version
Internal State for Signal ExampleSynthesizable Version
Internal State for Signal ExampleFeedback Version
Internal State for Signal ExampleSynthesizable without Feedback
Internal State for Signal ExampleNo Feedback Version
Clocked Register DefinitionsUsing Sensitivity List
Clocked Register DefinitionsUsing WAIT Statement
Clocked Register DefinitionsUsing BLOCKs
Clocked Register with LogicVHDL Description
Clocked Register with LogicResulting Schematic
Logic after the RegisterVHDL Description
Logic after the RegisterResulting Schematic
Keys to Success with Synthesis
More KeysVHDL Constructs
Tool Features
Synthesis Entry Points
Common Synthesis Targets
Synthesis Shortcomings
Synthesis and RASSP COMET
Synthesis and RASSPCOMET (Cont.)
Hardware Synthesis Flow in COMET
Synthesis in RASSPModeling and Synthesis Libraries
Summary
References
Email: dll2@psu.edu
Home Page: http://www.cedcc.psu.edu/
Other information: RASSP E&F Program Slides used by PSU -- EE497I Rapid System Prototyping