ee141 1 electronic design automation [ adopted from jan m. rabaey, alessandra nardi, abhay dixit,...
TRANSCRIPT
![Page 1: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/1.jpg)
EE1411
Electronic Design Electronic Design AutomationAutomation
[Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]
![Page 2: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/2.jpg)
EE1412
Electronic Design AutomationElectronic Design Automation
Design Analysis Structural and Behavioral Modeling in HDL Design Verification Cell Based Design Programmable Logic Devices and FPGA Design Synthesis
![Page 3: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/3.jpg)
EE1413
Design methodologiesDesign methodologies
analysis and verification- simulation is input dependent
- verification requires understanding of circuit operation
implementation and synthesis testability tools and techniques
![Page 4: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/4.jpg)
EE1414
TerminologyTerminology HDL: Hardware Description Language
E.g.: Verilog, VHDL RTL: Register Transfer Level.
It is HDL written for logic synthesis: clock cycle to clock cycle operations and events are explicitly defined architecture of the design is implicit in RTL code
Behavioral HDLIt is HDL written for behavioral synthesis: it describes the intent and the algorithm behind the design
Behavioral synthesisIt tries to optimize the design at architectural level with constraints for clock, latency and throughput. The output is RTL level design with clocks, registers and buses.
Logic synthesisIt automatically converts RTL code into gates without modifying the implied architecture. It tries to optimize the gate-level implementation to meet performance (timing, area….) goals
![Page 5: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/5.jpg)
EE1415
Verification at different levels of abstractionVerification at different levels of abstraction
Goal:Goal: Ensure the design meets its functional and timing requirements at each of these levels of abstraction
In general this process consists of the followingconceptual steps:1. Creating the design at a higher level of abstraction2. Verifying the design at that level of abstraction3. Translating the design to a lower level of abstraction4. Verifying the consistency between steps 1 and 35. Steps 2, 3, and 4 are repeated until tapeout
![Page 6: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/6.jpg)
EE1416
Verification at different levels of abstractionVerification at different levels of abstraction
Behavioral
HDL
System Simulators
HDL Simulators
Code Coverage
Gate-level SimulatorsStatic Timing
Analysis
Layout vs Schematic (LVS)
RTL
Gate-level
PhysicalDomain V
erif
icat
ion
![Page 7: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/7.jpg)
EE1417
Verification TechniquesVerification Techniques
Simulation (functionalfunctional and timingtiming) Behavioral RTL Gate-level (pre-layout and post-layout) Switch-level Transistor-level
Formal Verification (functionalfunctional) Static Timing Analysis (timingtiming)
Goal:Goal: Ensure the design meets its functional and timing requirements at each of these levels of abstraction
![Page 8: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/8.jpg)
EE1418
Classification of SimulatorsClassification of Simulators
Logic Simulators
Emulator-based Schematic-basedHDL-based
Event-driven Cycle-based Gate System
![Page 9: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/9.jpg)
EE1419
Classification of SimulatorsClassification of Simulators
HDL-basedHDL-based: Design and testbench described using HDL Event-driven Cycle-based
Schematic-basedSchematic-based: Design is entered graphically using a schematic editor
EmulatorsEmulators: Design is mapped into FPGA hardware for prototype simulation. Used to perform hardware/software co-simulation.
![Page 10: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/10.jpg)
EE14110
Instruction SetArchitecture
Design(Microarchitecture
Design-I)
System-LevelDesign
RTL Level Design
(MicroarchitectureDesign II)
CompilerDesign
CodeOptimizer
HardwareDesign
SwitchLevel
Design
CircuitLeveldesign
ISASimulator
System LevelSimulator
RTLLevel
Simulator
SwitchLevel
Simulator
CircuitLevel
Simulator
Arch./CompilerDesign Toolset Processor ArchitectureProcessor Architecture
Simulation and Design Simulation and Design Flow DiagramFlow Diagram
HDL (VHDL or Verilog)
CodeGenerator
![Page 11: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/11.jpg)
EE14111
(Some) EDA Tools and Vendors(Some) EDA Tools and Vendors
Behavioral synthesis Behavioral compiler Synopsys
Logic Synthesis Design Compiler Synopsys BuildGates Ambit Design Systems Galileo (FPGA) Examplar (Mentor Graphics) FPGAExpress (FPGA) Synopsys Synplify (FPGA) Synplicity
![Page 12: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/12.jpg)
EE14112
(Some) EDA Tools and Vendors(Some) EDA Tools and Vendors Logic Simulation
Scirocco (VHDL) Synopsys Verilog-XL (Verilog) Cadence Design Systems Leapfrog (VHDL) Cadence Design Systems VCS (Verilog) Chronologic (Synopsys)
Cycle-based simulation SpeedSim (VHDL) Quickturn PureSpeed (Verilog) Viewlogic (Synopsys) Cobra Cadence Design Systems Cyclone Synopsys
![Page 13: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/13.jpg)
EE14113
Circuit SimulationCircuit Simulation Formulation of circuit equations
STA, MNA
Solution of linear equations LU factorization, QR factorization, Krylov Methods
Solution of nonlinear equations Newton’s method
Solution of ordinary differential equations One-step and Multi-step methods
AC Analysis and Noise Simulation Techniques for RF
Shooting-Newton Harmonic-Balance
![Page 14: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/14.jpg)
EE14114
Analog Circuits – A World ApartAnalog Circuits – A World Apart Analog circuits’ behavior specified in terms of complex
functions: time-domain, frequency-domain, distortion, noise, power spectra….
Required accuracy of models much higher than digital
…emerging paradigm: Field Programmable Analog Array for prototyping (and more)
![Page 15: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/15.jpg)
EE14115
Design analysis and simulationDesign analysis and simulation
Spice - exact but time consuming
discrete time steps circuit models timing simulation with
partitioning and relaxation method
![Page 16: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/16.jpg)
EE14116
Timing SimulationTiming Simulation
Vdd
out1 out2in
out3
i(Vdd)
in
out1
out2
out3
Vdd-Vth
• Uses simplified (table-lookup) transistor model• Handles leakage, direct path, and reduced swing
• Up to 2 orders of magnitude faster than SPICE
![Page 17: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/17.jpg)
EE14117
Switch-Level SimulationSwitch-Level Simulation
Linear Switch-Level Simulation RSIM (Terman), nRSIM (Chu), IRSIM (Horowitz) Model transistor as switched, linear resistor Ternary (0, 1, X) node states Elmore (RC product) model of circuit delay
aa
1
X
0
Voltage LogicValue
![Page 18: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/18.jpg)
EE14118
Switch-Level SimulationSwitch-Level Simulation
A
B
X
F
Cap
(fF
/bit)
Sample
0102030405060708090
100
0 10 20 30 40 50 60
IRSIMSPICE
Up to 3 Orders of Magnitude Faster than Circuit
• Accurate for Dynamic Power
• Unreliable on leakage and direct path currents
Switch level model of inverter
![Page 19: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/19.jpg)
EE14119
Event-driven SimulationEvent-driven Simulation
Event: change in logic value at a node, at a certain instant of time (V,T)
Event-driven: only considers active nodes Efficient
Performs both timing and functional verification All nodes are visible Glitches are detected
Most heavily used and well-suited for all types of designs
![Page 20: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/20.jpg)
EE14120
Event-driven SimulationEvent-driven Simulation
Event: change in logic value, at a certain instant of time (V,T)
10
1
0
1
0
1
D=2a
b
cEvents:•Input: b(1)=1•Output: none
10
1
0
1
0
1
D=2a
b
cEvents:•Input: b(1)=1•Output: c(3)=03
![Page 21: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/21.jpg)
EE14121
Event-driven SimulationEvent-driven Simulation
Uses a timewheel to manage the relationship between components
TimewheelTimewheel = list of all events not processed yet, sorted in time (complete ordering)
When event is generated, it is put in the appropriate point in the timewheel to ensure causality
![Page 22: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/22.jpg)
EE14122
Event-driven SimulationEvent-driven Simulation
d
b(1)=1d(5)=1
d(5)=1
D=1
101
01
D=2a
bc
501
e01
3
c(3)=0d(5)=1
01
4
d(5)=1
e(4)=0
6
e(6)=1
![Page 23: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/23.jpg)
EE14123
Cycle-based SimulationCycle-based Simulation
Take advantage of the fact that most digital designs are largely synchronous
Synchronous circuit: state elements change value on active edge of clock
Only boundary nodes are evaluated
Internal Node
Boundary NodeLatches
Latches
![Page 24: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/24.jpg)
EE14124
Cycle-based SimulationCycle-based Simulation
Compute steady-state response of the circuit at each clock cycle at each boundary node
Latches
Latches
Internal Node
![Page 25: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/25.jpg)
EE14125
Cycle-based versus Event-drivenCycle-based versus Event-driven
Cycle-based:Cycle-based: Only boundary nodes No delay information
Event-driven:Event-driven: Each internal node Need scheduling and
functions may be evaluated multiple times
Cycle-based is 10x-100x faster than event-driven (and less memory usage)
Cycle-based does not detect glitches and setup/hold time violations, while event-driven does
![Page 26: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/26.jpg)
EE14126
Simulation: Simulation: Perfomance vs AbstractionPerfomance vs Abstraction
.001x
SPICE
Event-drivenSimulator
Cycle-basedSimulator
1x 10xPerformance and Capacity
Abs
trac
tion Timing
Simulator
![Page 27: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/27.jpg)
EE14127
Perspective on accuracy and Perspective on accuracy and speedspeed
Comparison between circuit simulation (SPICE)and timing or switch analysis
% Error Speedup % Error SpeedupTiming 6 15 7 3.7Switch 27 60 4 22
Adder Shift Register
![Page 28: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/28.jpg)
EE14128
Gate level simulationGate level simulation
faster than switch level
functional simulation
VHDL description used
![Page 29: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/29.jpg)
EE14129
Epics PowerMillEpics PowerMill
*** Current information is calculated from 5.00 ns to 400.00 ns ***
average current on VDD : -0.442845 mApeak current on VDD : -10.269000 mA at 211.10 nsrms current on VDD : +0.877633 mA
average current on GND : +0.364263 mApeak current on GND : +6.720000 mA at 49.50 nsrms current on GND : +0.645861 mA
![Page 30: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/30.jpg)
EE14130
PowerMill PerformancePowerMill Performance
Ckt’s Nodes Elements Vectors CPU Time*SW Avg Total Avg
1 582 1,134 406 3.33mA
SW/Total%
3.92mA 84.9% 13.6Min**
2 4,162 9,476 16 13.3mA 15.3mA 86.9% 15.7Min
3 1,066 60 12.3mA 22.6mA 54.4% 47.2Sec475
4 7.91mA 16.9mA 46.8% 28.5Min14,200 29,956 250
5 14.5mA 76.5mA 18.9% 2.65hr32,676 70,971 150
6 20.1mA 27.2mA 73.9% 10.6hr51,658 103,653 1,000
7 231mA 307mA 75.2% 15.2hr44,239 106,379 1,000
8 70.2mA 201mA 34.8% 19.6hr522,411 1,000183,103
** 70.2hr for Spice* On a 25-Mips machine
add
add
SRAM
Ctrl
DRAM
DSP
F.P.
SRAM
![Page 31: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/31.jpg)
EE14131
Avant!s STAR-ADM (previously Anagram)Avant!s STAR-ADM (previously Anagram)
Mixed analog/digital simulation Claims to be more accurate for deep sub-micron design
than switch-level simulation
![Page 32: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/32.jpg)
EE14132
Performance BenchmarksPerformance Benchmarks
![Page 33: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/33.jpg)
EE14133
Structural model in VHDLStructural model in VHDL
![Page 34: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/34.jpg)
EE14134
Behavioral model in VHDLBehavioral model in VHDL
![Page 35: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/35.jpg)
EE14135
High level behavioral VHDLHigh level behavioral VHDL
![Page 36: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/36.jpg)
EE14136
![Page 37: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/37.jpg)
EE14137
Digital Systems VerificationDigital Systems Verification
Overview Cycle-based and event-driven simulation Formal methods
Timing Analysis
Hardware Description Languages (Verilog-VHDL)
System C
![Page 38: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/38.jpg)
EE14138
Verification - SimulationVerification - Simulation
Consistency: same testbench at each level of abstraction
Behavioral
Gate-level Design(Post-layout)
Gate-level Design(Pre-layout)
RTL Design
Testbench Simulation
![Page 39: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/39.jpg)
EE14139
Formal VerificationFormal Verification Can be used to verify a design against a
reference design as it progresses through the different levels of abstraction
Verifies functionality without test vectors Three main categories:
Model Checking: compare a design to an existing set of logical properties (that are a direct representation of the specifications of the design). Properties have to be specified by the user (far from a “push-button” methodology)
Theorem Proving: requires that the design is represented using a “formal” specification language. Present-day HDL are not suitable for this purpose.
Equivalence Checking: it is the most widely used. It performs an exhaustive check on the two designs to ensure they behave identically under all possible conditions.
![Page 40: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/40.jpg)
EE14140
Digital Systems VerificationDigital Systems Verification Timing AnalysisTiming Analysis
Not only has the design to “function properly”….it also has always tighter timing constraints
Design timing properties have
to be verified
Static Timing Analysis is the main method
![Page 41: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/41.jpg)
EE14141
Static Timing AnalysisStatic Timing Analysis
Suitable for synchronous design
Verify timing without testvectors
Conservative with respect to dynamic timing analysis
Latches LatchesCombinationalLogic
![Page 42: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/42.jpg)
EE14142
Static Timing AnalysisStatic Timing Analysis
Inputs: Netlist, library models of the cells and constraints
(clock period, skew, setup and hold time…) Outputs:
Delay through the combinational logic
Basic concepts: Look for the longest topological path Discard it if it is false
![Page 43: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/43.jpg)
EE14143
Conventional Simulation Conventional Simulation Methodology LimitationsMethodology Limitations
Increase in size of design significantly impact the verification methodology in general Simulation requires a very large number of test
vectors for reasonable coverage of functionality Test vector generation is a significant effort Simulation run-time starts becoming a bottleneck
New techniques: Static Timing Analysis Cycle-based simulation Formal Verification
![Page 44: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/44.jpg)
EE14144
New Verification ParadigmNew Verification Paradigm Functional: cycle-based simulation and/or formal
verification Timing: Static Timing Analysis
Gate-level netlist
RTL
TestbenchLogic Synthesis
Cycle-based Sim.
Event-driven Sim.
Static Timing Analysis
Formal Verification
![Page 45: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/45.jpg)
EE14145
More issuesMore issues
System Level Simulation (Hardware/Software Codesign) CoCentric System Studio Synopsys Virtual Component Co-Design (VCC)
Cadence Design Syst.
Mixed-Signal Simulation Verilog-AMS
![Page 46: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/46.jpg)
EE14146
Design verificationDesign verification
checking number of inversions between two C2MOS gates
checking pull-up and pull down ratio in pseudo-NMOS gates
checking minimum driver size to maintain rise and fall times
checking charge sharing to satisfy noise-margins
Electrical verification
![Page 47: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/47.jpg)
EE14147
Design verificationDesign verification
Spice too long simulation time RC delay estimated using Penfield-
Rubinstein-Horowitz method identification of critical path (avoid false
paths)
Timing verification
![Page 48: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/48.jpg)
EE14148
Design verificationDesign verification
components described behaviorally circuit model obtained from component
models resulting circuit behavior computed with
design specifications no generally acceptable verifier exists
Formal verification
![Page 49: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/49.jpg)
EE14149
Physical issues verification (DSM)Physical issues verification (DSM)
Interconnects Signal Integrity
P/G integrity Substrate coupling Crosstalk
Parasitic Extraction Reduced Order Modeling Manufacturability and Reliability
Power Estimation
![Page 50: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/50.jpg)
EE14150
(Some) EDA Tools and Vendors(Some) EDA Tools and Vendors Formal Verification
Formality Synopsys FormalCheck Cadence Design Systems DesignVerifyer Chrysalis
Static Timing Analysis PrimeTime Synopsys (gate-level) PathMill Synopsys (transistor-level) Pearl Cadence Design Systems
![Page 51: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/51.jpg)
EE14151
SummarySummary
Conventional design and verification flow review
Verification Techniques Simulation
– Behavioral, RTL, Gate-level, Switch-level, Transistor-level
Formal Verification Static Timing Analysis
Emerging verification paradigm Functional: cycle-based, formal verification Timing: Static Timing Analysis
![Page 52: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/52.jpg)
EE14152
““Prototyping” Techniques Prototyping” Techniques in Design Stagesin Design Stages
timetime
HardwareHardwareDesignDesign
ChangesChanges
SoftwareSoftwareSimulationSimulation
EmulationEmulation
PrototypePrototypeReplicationReplicationFlexibilityFlexibility
PerformancePerformance
CostCost
![Page 53: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/53.jpg)
EE14153
Implementation approachesImplementation approaches
![Page 54: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/54.jpg)
EE14154
Custom circuit designCustom circuit design
labor intensive high time-to-market cost amortized over a large volume reuse as a library cell was popular in early designs layout editor, DRC, circuit extraction
![Page 55: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/55.jpg)
EE14155
Layout editorLayout editor
transistor symbols relative positioning compaction stick diagram description design rules automatically satisfied automatic pitch matching
1. Polygon based (Magic)2. Symbolic layout
![Page 56: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/56.jpg)
EE14156
Automatic pitch matchingAutomatic pitch matching
![Page 57: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/57.jpg)
EE14157
Design rule checkingDesign rule checking
on-line DRC- rules checked and errors
flagged during layout batch DRC
- post design verification
![Page 58: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/58.jpg)
EE14158
Circuit extractionCircuit extraction
Circuit schematic derived from layout
Transistors are build with proper geometry
Parasitic capacitances and resistances evaluated
Extraction of inductance requires 3D analysis
![Page 59: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/59.jpg)
EE14159
![Page 60: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/60.jpg)
EE14160
Cell-based designCell-based design
reduced cost reduced time reduced integration density reduced performance
standard cell compiled cells module generators macro cell place and route
![Page 61: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/61.jpg)
EE14161
Standard cellStandard cell
library contains basic logic cells- inverter, AND/NAND, OR/NOR,
XOR/NXOR, flip-flop, AOI, MUX, adder, compactor, counter, decoder, encoder,
fan-in and fan-out specified schematic uses cells from library layout automatically generated
![Page 62: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/62.jpg)
EE14162
Standard cellStandard cell cells have equal heights cell rows separated by routing channels
![Page 63: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/63.jpg)
EE14163
Standard cell designStandard cell design
![Page 64: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/64.jpg)
EE14164
Standard cellStandard cell layoutlayout and and descriptiondescription
![Page 65: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/65.jpg)
EE14165
An Example CellAn Example Cell A 2-input dynamic C with a clearing
input and an inverting output (C_dic2)
![Page 66: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/66.jpg)
EE14166
Single vs Double Height CellsSingle vs Double Height Cells
arbiter
![Page 67: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/67.jpg)
EE14167
Single vs Double Height Cells…Single vs Double Height Cells… arbiter_dblht
![Page 68: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/68.jpg)
EE14168
Existing Design FlowExisting Design Flow
Synopsys Synthesis
CadenceSilicon
Ensemble
CadenceComposerSchematic
CadenceVirtuosoLayout
ExistingDatapathLayout
Behavioral VerilogCode
YourLibraries
LVS
Verilog-XL
Verilog-XL
BehavioralVerilog
Structural Verilog
CircuitLayout
![Page 69: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/69.jpg)
EE14169
New Design FlowNew Design Flow
Cadence to Synopsys Interface
CadenceSilicon
Ensemble
CadenceComposerSchematic
CadenceVirtuosoLayout
ExistingDatapathLayout
Standard Cell
Libraries
LVS
Verilog-XL
Structural Verilog
CircuitLayout
![Page 70: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/70.jpg)
EE14170
Placed and RoutedPlaced and Routed
![Page 71: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/71.jpg)
EE14171
What are Standard Cell LibrariesWhat are Standard Cell Libraries
Standard-cell libraries are fixed set of well-characterized logic blocks.
Basic logic functions are used several times on the same integrated circuit.
It will have leaf cells ranging from simple gates to latches and flip-flops. These can then be used to build arithmetic blocks like adders and multipliers.
ASIC designers commonly employ the use of standard cell libraries due to their robustness and flexibility resulting in quick turnaround times.
![Page 72: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/72.jpg)
EE14172
Advantages of standard cell librariesAdvantages of standard cell libraries
Designers save time and money by reducing the product development cycle time.
Reduce risk by using predesigned, pretested and precharacterised standard cell libraries.
Optimisation is possible.
![Page 73: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/73.jpg)
EE14173
Disadvantages of standard cell librariesDisadvantages of standard cell libraries
Time and expenses of designing or buying the standard cell library.
Time needed to fabricate all layers of ASIC for each new design when the standard cell library must be ported to a new
fabrication process, the physical layout of all the cells need to be changed.
There are no naming conventions There are no standards for cell behavior
![Page 74: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/74.jpg)
EE14174
Standard cellStandard cell
large design cost amortized over a large number of designs
large number of different cells with different fan-ins large fan-out for cells to be used in different designs synthesis tools made standard cell design popular standard cell design outperform PLA in area and
speed standard cell benefit from multi level logic synthesis
![Page 75: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/75.jpg)
EE14175
Classification of standard cell librariesClassification of standard cell libraries
Classical Libraries:--- Theses are the most common logic elements like gates, flip-flops, multiplexers, PAL, memories etc.
IP (Intellectual Property) offerings:
--- These include products like gate arrays and CPLDs which are IP offerings by many companies. Each one providing its own features and facilities in the product.
![Page 76: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/76.jpg)
EE14176
Fragment of an ASIC LibraryFragment of an ASIC Library
Class ElementCombinationalfunctions
NAND, NOT, NOR, XOR
Storage functions D flip-flop,Latch, J-Kflip-flop, shift register,RAM, ROM
Information switches Selector, Multiplexer
Data Operator Adder, counter, ALU,Decoder
![Page 77: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/77.jpg)
EE14177
MOSIS compatible cell libraries are provided by many organisations, commercial and non-commercial both
Commercial organisations are: Mentor Graphics, Cadence, Artisan, Avant, Barcelona Design, Tanner Research, LEDA systems etc.
Non Commercial Organisations are:MSU’s SCMOS Library, LASI, Ballistic, Magic etc.
MOSIS compatible design tools and cell librariesMOSIS compatible design tools and cell libraries
![Page 78: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/78.jpg)
EE14178
Standard Cells Provided by Mentor GraphicsStandard Cells Provided by Mentor Graphics
There are over 200 standard cells available for the 2.0 um, 1.2 um, and 0.8 um technology.-- 2, 3, and 4-input AND, NAND, OR, NOR, AO
-- 2-input XOR and XNOR gates -- 2-1 MUX gate
-- multiple drive strength buffers, inverters and tri-state buffers -- four D-type flip-flops: dff, dffs, dffr, and dffsr -- four D-type latches: latch, latchs, latchr, latchsr
All of these cells have quickpart models with timing for full, backannotated simulation after layout
![Page 79: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/79.jpg)
EE14179
MGC Digital LibrariesMGC Digital Libraries
![Page 80: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/80.jpg)
EE14180
MGC Digital Libraries (Contd..)MGC Digital Libraries (Contd..)
![Page 81: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/81.jpg)
EE14181
MGC Digital Libraries (Contd..)MGC Digital Libraries (Contd..)
![Page 82: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/82.jpg)
EE14182
MGC Digital Libraries (Contd..)MGC Digital Libraries (Contd..)
![Page 83: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/83.jpg)
EE14183
MGC Digital Libraries (Contd..)MGC Digital Libraries (Contd..)
![Page 84: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/84.jpg)
EE14184
New Trends in Standard Cell LibrariesNew Trends in Standard Cell Libraries In a bid to improve the performance of standard-cell designs,
vendors of place-and-route and synthesis tools and cell libraries are teaming up to develop a technique that is likely to lead to the death of the standard cell itself.
Prolific Inc. (Newark, Calif.) has launched a tool called Liquid Libraries that will create tuned cells on the fly and insert them into the libraries used by place and route tools
Hot on the heels of Prolific's launch, Cadabra Design Automation (Santa Clara, Calif.) is working on a new flow that would ultimately move library generation as far forward as the synthesis phase, giving logic designers the ability to tune parts of a design for low power consumption or speed
![Page 85: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/85.jpg)
EE14185
New Trends Contd..New Trends Contd..
Prolific is working with Cadence Design Systems, Magma Design Automation, Monterey Design Systems and Sapphire Design Automation..
Cadabra is working with Avanti, Cadence, Synopsis and Magma.
The first fruit of the Cadabra project will be the power and performance optimization (PPO) flow.
![Page 86: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/86.jpg)
EE14186
Important Links to Standard Cell LibrariesImportant Links to Standard Cell Libraries
a) Tanner Inc. www.tanner.com.
b) Prolific Inc. www. prolificinc.com c) MOSIS organisation www.mosis.org MOSIS/Tech Support/MOSIS Compatible Design Toolsd) Cadabra Design www.cadabratech.com Automation Inc.e) Cadence Design Systems www.cadence.com Inc.
![Page 87: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/87.jpg)
EE14187
Compiled cellCompiled cell
cell layout generated on the fly transistor or gate level netlist used with transistor
size specified layout densities approach that of human designers
Circuit schematicswith
transistor sizing
![Page 88: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/88.jpg)
EE14188
Compiled cellCompiled cell
Generated layout
![Page 89: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/89.jpg)
EE14189
Module generatorsModule generators
logic level cells not efficient for subcircuit design- shifters, adders, multipliers, data paths,
PLAs, counters, memories Macrocell generators
- use design parameters like number of bits data path compilers
- use bit slice modules and repeat them N times - generate interconnections between modules
![Page 90: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/90.jpg)
EE14190
Datapath compilers Datapath compilers
Feedtroughs used to improve routing
![Page 91: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/91.jpg)
EE14191
Datapath Datapath compilers compilers Datapath compiler
results
![Page 92: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/92.jpg)
EE14192
Macrocell place and routeMacrocell place and route channel routing
- metal 2 horizontal segments
metal 1 vertical segments over the block routing
(3-6 metal layers used)
![Page 93: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/93.jpg)
EE14193
![Page 94: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/94.jpg)
EE14194
Array-based design implementationArray-based design implementation
mask programmable arrays fuse based FPGAs nonvolatile FPGAs RAM based FPGAs
To avoid slow fabrication process which takes 3-4 weeks :
![Page 95: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/95.jpg)
EE14195
Mask programmable arraysMask programmable arrays
gate-array - similar to standard cell
sea-of-gate- routed over the cells (high density)
- wires added to make logic gates challenge in design is to utilize the maximum
cell capacity utilization < 75% for random logic design
![Page 96: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/96.jpg)
EE14196
Fuse-based PLD’sFuse-based PLD’s
![Page 97: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/97.jpg)
EE14197
Fuse-based FPGA’sFuse-based FPGA’s
Actel sea-of-gate and standard cell approach
![Page 98: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/98.jpg)
EE14198
Fuse-based FPGA’sFuse-based FPGA’s
Example : XOR gate obtainedby setting :A=1, B=0, C=0, D=1,SA=SB=In1,S0=S1=In2
![Page 99: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/99.jpg)
EE14199
Fuse-based FPGA’sFuse-based FPGA’s
Anti-fuse provides short (low resistance) when blown out
![Page 100: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/100.jpg)
EE141100
Nonvolatile FPGA’sNonvolatile FPGA’s
programming similar to PROM erasable programmable logic devices - EPLD electrically erasable - EEPLD design partitioned into macrocells flip-flops used to make sequential circuits software used to program interconnections to
optimize use of hardware input specified from schematics, truth tables,
state graphs, VHDL code
![Page 101: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/101.jpg)
EE141101
![Page 102: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/102.jpg)
EE141102
RAM based (RAM based (volatilevolatile) FPGA’s) FPGA’s
programming is fast and can be repeated many times
no high voltage needed integration density is high information lost when the power goes
off
![Page 103: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/103.jpg)
EE141103
XILINX FPGA’sXILINX FPGA’s
configurable logic blocks CLBs used five input two output combinational blocks two D flip flops are edge or level triggered functionality and multiplexers controlled by
RAM RAM can be used as look-up table or a
register file
![Page 104: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/104.jpg)
EE141104
XILINX FPGA’sXILINX FPGA’s
![Page 105: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/105.jpg)
EE141105
XILINX FPGA’sXILINX FPGA’s
each cell connected to 4 neighbors routing channels provide local or global
connections switching matrices(RAM controlled) are
used for switching between channels
![Page 106: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/106.jpg)
EE141106
XILINX FPGA’sXILINX FPGA’s
![Page 107: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/107.jpg)
EE141107
XILINX FPGA’s (XC4025)XILINX FPGA’s (XC4025)
32 × 32 CLBs 25000 gates 422 k bites of RAM operates at 250 MHz 32 kbit adder uses 62 CLBs
![Page 108: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/108.jpg)
EE141108
XILINX FPGA’s (XC4025)XILINX FPGA’s (XC4025)
![Page 109: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/109.jpg)
EE141109
Universal Nanoscale ArchitectureUniversal Nanoscale Architecture Beyond lithographic
limits Crossed Wire
nanoarrays Implement PLAs,
memory, and xbars
NSC’02: to appear IEEE TR Nano
![Page 110: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/110.jpg)
EE141110
Design synthesisDesign synthesis
![Page 111: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/111.jpg)
EE141111
Circuit synthesisCircuit synthesis
derivation of the transistors schematics from logic functions
- complementary CMOS- pass transistor
- dynamic - DCVSL
(differential cascode voltage switch logic) transistor sizing
- performance modeling using RC equivalent circuits - layout generation
synthesis not popular due to designers reluctance
![Page 112: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/112.jpg)
EE141112
Logic synthesisLogic synthesis
state transition diagrams, FSM, schematics, Boolean equations, truth tables, and HDL used
synthesis - combinational or sequential - multi level, PLA, or FPGA
logic optimization for - area, speed , power- technology mapping
![Page 113: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/113.jpg)
EE141113
Logic optimizationLogic optimization
Expresso - two level minimization tool (UCB)
state minimization and state encoding MIS - multilevel logic synthesis (UCB)
Example : S = (AB) Ci
Co= AB + ACi + BCi
![Page 114: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/114.jpg)
EE141114
Architecture synthesisArchitecture synthesis
behavioral or high level synthesis optimizing translation e.g. pipelining Cathedral and HYPER tools HYPER tutorial and synthesis example:
http://infopad.eecs.berkeley.edu/~hyper
![Page 115: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/115.jpg)
EE141115
Architecture SynthesisArchitecture Synthesis
Automatic Tool
Application
Customized Architecture
Power
Size
Performance
Timing
![Page 116: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/116.jpg)
EE141116
Architecture synthesis exampleArchitecture synthesis example
![Page 117: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/117.jpg)
EE141117
Architecture synthesisArchitecture synthesis
![Page 118: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/118.jpg)
EE141118
Tensilica: Xtensa ArchitectureTensilica: Xtensa Architecture
Copyright: Tensilica
![Page 119: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/119.jpg)
EE141119
Design FrameworkDesign Framework
Copyright: Tensilica
![Page 120: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/120.jpg)
EE141120
Silicon ChoicesSilicon Choices ASIC implementation of Processor
Fast but not flexible Time intensive design process Example: Tensilica, HP-STMicroelectronics
Processor core in ASIC but instruction set extensions in reconfigurable logic Medium speed but flexible Fast design process Example: Triscend Configurable System-on-Chip
![Page 121: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/121.jpg)
EE141121
Triscend Configurable SoCTriscend Configurable SoC
Copyright: Triscend
![Page 122: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/122.jpg)
EE141122
Reconfigurable Computing 101Reconfigurable Computing 101 Higher performance than software with higher level of flexibility than
hardware e.g. Field Programmable Gate Arrays (FPGA)
Logic Blocks– Array of computational elements whose functionality is
determined through multiple SRAM configuration bits Interconnection
– Logic blocks are connected using programmable routing resources
Any custom circuit can be mapped to FPGA by computing logic functions within logic blocks and using configurable routing to connect the logic blocks together
Dynamically reconfigurable Logic Logic reconfiguration during application execution Temporal partitioning of software reduces logic area Overhead for reconfiguration
![Page 123: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/123.jpg)
EE141123
Use of Reconfigurable ComputingUse of Reconfigurable Computing
Two choices Map both control and datapath to RC Map only datapath to RC
Granularity of reconfigurable logic Bit Multiple bits ALU
![Page 124: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/124.jpg)
EE141124
RC Coupled to I/O System BusRC Coupled to I/O System Bus
Most common form of commercial RC Overhead of data transfer between CPU and RC Requires large granularity of computation on RC
CPU
RC I/O
Memory
Local Bus
PCI BusPCI Bus
Local Bus
![Page 125: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/125.jpg)
EE141125
RC Coupled to Local BusRC Coupled to Local Bus
Pilchard from Chinese University of Hong Kong Still requires large granularity of computation
CPU
RC I/O
Memory
Local Bus
PCI BusPCI Bus
Local Bus
![Page 126: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/126.jpg)
EE141126
RC Coupled to CPU as CoprocessorRC Coupled to CPU as Coprocessor
Tight coupling between CPU and RC RC can execute ISA extensions CPU and RC cannot share register file
CPU
RC I/O
Memory
Local Bus
PCI BusPCI Bus
Local Bus
![Page 127: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/127.jpg)
EE141127
PICO ArchitecturePICO Architecture
Copyright: Bob Rau et. al.
![Page 128: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/128.jpg)
EE141128
Design FrameworkDesign Framework
Copyright: Bob Rau et. al.
![Page 129: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/129.jpg)
EE141129
Design FlowDesign Flow
Copyright: Bob Rau et. al.
![Page 130: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/130.jpg)
EE141130
Hardware/software Co-designHardware/software Co-design
Well studied problem. Then what’s new? High Level Synthesis (HLS)
Time-to-market constraint forces automated generation of reconfigurable bitstream from high level specification or software
Automated generation of interface Spatial and temporal partitioning
Partitioning among multiple configurable devices Map a function that exceeds the available space of
reconfigurable device using time sharing Requires new compilation techniques
![Page 131: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/131.jpg)
EE141131
High Level Synthesis-1High Level Synthesis-1
High level hardware description language Start from software programming language
and add support for Parallelism via threads Message passing Examples: Handel-C, SystemC
Make current HDL more abstract Superlog, System Verilog
Still requires user to find parallelism
![Page 132: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/132.jpg)
EE141132
High Level Synthesis-2High Level Synthesis-2
Combine research in two different fields: compiler and design automation
Traditional HLS techniques target ASIC implementation RC does not have the layout freedom Objective of RC is to minimize execution time Temporal partitioning if insufficient area Hardware library of operators or structures
commonly used by software programs
![Page 133: EE141 1 Electronic Design Automation [ Adopted from Jan M. Rabaey, Alessandra Nardi, Abhay Dixit, Meeta Bhate, Kedar Rajpathak, Tulika Mitra]](https://reader035.vdocument.in/reader035/viewer/2022062800/56649e155503460f94aff3b7/html5/thumbnails/133.jpg)
EE141133
High Level Synthesis-3High Level Synthesis-3 Concentrate on loops Leverage parallelizing compiler technology combined
with high level synthesis Parallelize computation Optimize external memory access Loop transformation: Area versus Performance
– Unroll and Jam– Loop unrolling– Software pipelining– Loop-invariant code motion– Data layout
Hardware specific optimizations Bitwidth reduction