Lecture 3 - Design Flow
Lecture 3 - Design Flow
Lecture 3 - Design Flow
ELEC 5250/6250
ASIC Design Flow
ASIC Design Flow
Behavioral
Verify
Model
Function
VHDL/Verilog
Front-End
Synthesis
Design
DFT/BIST Gate-Level Verify
& ATPG Netlist Function
Std. Cell
Layouts Floorplan Cadence
Chip/Blocks “SOC Encounter”
Libraries
“Innovus”
Process data, Plan Rows, “Virtuoso”
Design rules Place & Route
Std. Cells
From
E. Brunvand
Book
ASIC CAD tools available in ECE
Modeling and Simulation
Modelsim, Questa-ADMS, Eldo, ADiT (Mentor Graphics)
Verilog-XL, NC_Verilog, Spectre (Cadence)
Active-HDL (Aldec)
Design Synthesis (digital)
Leonardo Spectrum (Mentor Graphics)
Design Compiler (Synopsys), RTL Compiler (Cadence)
Design for Test and Automatic Test Pattern Generation
Tessent DFT Advisor, Fastscan, SoCScan (Mentor Graphics)
Schematic Capture & Design Integration
Pyxis Design Architect-IC (Mentor Graphics)
Design Framework II (DFII) - Composer (Cadence)
Physical Layout
Pyxis IC Station (Mentor Graphics)
SOC Encounter, Virtuoso (Cadence)
Design Verification
Calibre DRC, LVS, PEX (Mentor Graphics)
Diva, Assura (Cadence)
IC Process Design Kits (PDKs)
Foundry-specific data and models for a
specific IC technology
Used by the design tools
Design components for both front-end
& back-end design
Design entry/modeling
Technology/process data
Layer definitions/parameters (Trans, R,C,…)
Design rules
Standard Cell Library
Synthesis library
Simulation models (Verilog, transistor)
Physical designs (LEF models)
Timing models (fast, typical, slow)
Verification (DRC,LVS,PEX)
DFT/test generation
IP and device generators (RAM, etc.)
Global Foundries BiCMOS8HP 130nm PDK
Global Foundries BiCMOS8HP 130nm PDK
Installed in /class/ELEC6250/ncsu-cdk-1.6.0.beta
U. of Utah CDK (used in Dr. Brunvand’s book)
/class/ELEC6250/UofUtah/
UofU_TechLib_ami06 UofU-modified tech library for AMI C5N
0.5 micron CMOS process, in the NCSU CDK framework
(AMI acquired by ON Semiconductor for $915M in 2008)
UofU_Digital_v1_2 Std. Cell library (37 cells, use M1 & M2)
UofU_Digital_v1_2.db: compiled library file for Synopsys Design Compiler
UofU_Digital_v1_2.lef: abstract layout information file for place and route tools
UofU_Digital_v1_2.lib: library characterization file
UofU_Digital_v1_2.v:Verilog interface and simulation behavior file
UofU_Digital_v1_2_behv.v:Verilog models with timing “specify” blocks
UofU_Pads Pad cells and frames based on the MOSIS-supplied .5μm
pads from Tanner, but UofU-modified to pass DRC and LVS
UofU_AnalogParts UofU-modified transistor models that add delay
to the switch-level simulation of those devices
UofU_Digital_v1_2 CMOS cell library
AND3X1: 3-input AND
AOI21X1, AOI22X1: AND-OR-Invert gates Xn = drive strength
BUFX2, BUFX4, BUFX8: non-inverting buffers
DCBNX1, DCBX1, DCNX1, DCX1: D-type flip flops with active-low clear.
B means that the device includes both Q and QB outputs.
N means active-low clock.
ENINVX1, ENINVX2: enabled (tri-state) inverters
FILL, FILL2, FILL4, FILL8: filler cells of different widths for filling in std cell rows
INVX1, INVX16, INVX2, INVX4, INVX8: inverters
LCNX1, LCX1: level-sensitive (gated) latches with active-low clear.
N means active-low gate
MUX2NX1, MUX2X2: 2-way muxes. N means an inverting mux
NAND2X1, NAND2X2, NAND3X1: NAND gates with 2 and 3 inputs
NOR2X1, NOR2X2, NOR3X1: NOR gates with 2 and 3 inputs
OAI21X1 OAI22X1: OR-AND-Invert gates
TIEHI, TIELO: Cells used to tie inputs high or low
XNOR2X1: 2-input XNOR
XOR2X1: 2-input XOR
SoC Design Flow (Using IP cores)
IP Vendors:
Hardware Software
IP cores Purchase drivers core design
Purchase
HW cores SW drivers
SoC
Integrated Design specifics Integrated
Hardware Software
HW/SW partitioning
Fabless Vendors:
Functional Prototype on platforms Software SoC design
Simulation e.g. FPGA Simulation
Foundries:
Volume manufacture Chip fabrication
and ship
Device vendors:
PCB manufacture
and device assembly Final products
FPGA Design Flow
Behavioral Verify
Design Function
Mentor Graphics
Front-End Tools Synthesis
(Technology-Independent)
Gate-Level Verify
Schematic Function
EDIF Netlist
Xilinx/Altera/Other
Map, Place Verify
Back-End Tools
& Route Timing
(Technology-Specific)