Introduction To Vlsi Design
Introduction To Vlsi Design
Design
ספרתיVLSI מבוא לתכנון
Introduction
1
IC Products
Processors
CPU, DSP, Controllers
Memory chips
RAM, ROM, EEPROM
Analog
Mobile communication,
audio/video processing
Programmable
PLA, FPGA
Embedded systems
Used in cars, factories
Network cards
System-on-chip (SoC)
Size
much smaller both transistor and wires.
leads to smaller parasitic resistances, capacitances and inductances
Speed
communication within the chips are much faster than between a chips
on PCB (Printed Circuit Board).
High speed of circuits on-chip due to smaller size.
Power Consumption
Logic operation within the chip consumes
much less power.
smaller size -> smaller parasitic
capacitances and resistance -> require less
power to drive the circuit.
Reduce Cost
Reducing in number of components.
Power Supply requirement.
Cabinets
The cost of building a whole system is reduce eventhough Ics cost
more.
Technology
Let us build a system faster, and more complex system
Economics
In 1960s,Gordon Moore said that the number of transistor would grow
exponentially. The number of transistors per chip has doubled about once a
year.
IC plant is very expensive. $2-3billion or more.
Is it worth to invest in IC business?
Die
Die size
size grows
grows by
by 14%
14% to
to satisfy
satisfy Moore’s
Moore’s Law
Law
100
Die size (mm)
P6
486 Pentium ® proc
10 386
286
8080 8086
8085 ~7% growth per year
8008
4004 ~2X growth in 10 years
1
1970 1980 1990 2000 2010
Year
13 Introduction to Digital VLSI 24.01.2007
Gil Rahav
Clock Frequency
Lead
Lead microprocessors
microprocessors frequency
frequency doubles
doubles every
every 22 years
years
10000
P6
100
Pentium ® proc
486
10 8085 386
8086 286
1 8080
8008
4004
0.1
1970 1980 1990 2000 2010
Year
14 Introduction to Digital VLSI 24.01.2007
Gil Rahav
Challenges in VLSI design
Layout designers
Circuit designers
Architects
Test engineers
Fabrication engineers
System designers
CAD tool programmers
Architecture
major resources, connections
Register-Transfer
logic blocks, FSMs, connections
Logic
gates, flip-flops, latches, connections
Circuit
transistors, parasitics, connections
Layout
mask layers, polygons
19 Introduction to Digital VLSI 24.01.2007
Gil Rahav
Dealing with complexity
sum
a Full
adder
b
cin
Add2.a
Add1.a cout
sum sum
a Add1(Full a Add2(Full
adder) adder)
b b
cin cin
box1 box2 x
z
23 Introduction to Digital VLSI 24.01.2007
Gil Rahav
Net lists and component lists
top
i1 xxx i2
component pin
+
φ'
D Q'
φ'
D Q'
inverter
v v
t t
a
cout
a
sum
t full sum
b adder
b
t
cin
t
a
cout
a
sum
t
b full sum
adder
b t
cin
t
0010
+
0001
+ 0011
0100
0010
+
0001
+ 0111
0100
English specification
Executable Throughput,
program behavior design time
38
IC Design Steps
High-level
High-level Functional
Functional
Specifications
Specifications Description
Description Description
Description
Behavioral Structural
HDL, C HDL
Synthesis
Physical Technology
Design Mapping
Placed
Placed Logic
&& Routed Gate-level
Gate-level Logic
Routed Design Description
Description
Design
Design Design
Packaging Fabri-
Fabri- X=(AB*CD)+
cation (A+D)+(A(B+C))
Y = (A(B+C)+AC+
D+A(BC+D))
40 Introduction to Digital VLSI 24.01.2007
Gil Rahav
Figs. [©Sherwani]
VLSI Design Cycle (2/9)
X = (AB+CD)(E+F)
Y= (A(B+C) + Z + D)
Component list:
Net list: top: in1=net1 n1=topin1 n2=topin2
net1: top.in1 in1.in n3=botin1 out=outnet
net2: i1.out xxx.B i1: in=net1 out=net2
topin1: top.n1 xxx.xin1 xxx: xin1=topin1 xin2=topin2 xin3=botin1
topin2: top.n2 xxx.xin2 B=net2 out=net3
botin1: top.n3 xxx.xin3 i2: in=net3 out=outnet
net3: xxx.out i2.in
outnet: i2.out top.out
Component hierarchy
top
i1 xxx i2
Architectural Layout
Specification Circuit Design
or Fabrication
Functional
Logic Synthesis
Design
Chips
Timing & relationship
Packaging
between functional units
Logic Packaged and
Design
tested chips
RTL in HDL
49 Introduction to Digital VLSI 24.01.2007
Gil Rahav
Physical Design Cycle (1/6)
Circuit Partitioning
Clock Tree
Routing
Layout Compaction
51 Introduction to Digital VLSI 24.01.2007
Gil Rahav
Physical Design Cycle (3/6)
Floorplanning – Set up a plan for a good layout. Place the
modules (modules can be blocks, functional units, etc.) at an
early stage when details like shape, area, I/O pin positions of
the modules, …, are not yet fixed.
Deadspace
Feedthrough
Standard cell type 1
Standard cell type 2
v
Feedthrough
Type 1 standard cel1
v
Type 2 standard cell
Full-Custom ASICs
Some (possibly all) logic cells are customized and
all mask layers are customized
Semicustom ASICs
All logic cells are predesigned (defined in cell library) and some
(possibly all) of the mask layers are customized
Types:
Standard-cell based and Gate-array-based ASICs
Programmable ASICs
All logic cells are predesigned and
none of the mask layers are customized
Types: PLD (Programmable Logic Device) and
FPGA (Field Programmable Gate Array)
A cell-based
ASIC (CBIC) die
with a single
standard-cell
area combined
with 4 fixed
blocks
Characteristics
custom blocks can be embedded;
ASIC designer defines only the placement of the standard cells and
the interconnect in a CBIC
standard cells can be placed anywhere on a silicon =>
all mask layers of a CBIC are customized
manufacturing lead time is 8 weeks
PLDs
standard ICs, available in standard configurations
sold in high volume to many different customers
PLDs may be configured or programmed to create
a part customized to specific application
Characteristics
no customized mask layers or logic cells
fast design turnaround
a single large block of programmable interconnect
a matrix of logic macrocells that usually consists of programmable array
logic followed by a flip-flop or latch
Types of PLDs
PROM: uses metal fuse that can be blown permanently)
EPROM: used programmable MOS transistors whose characteristics are altering by
applying a high voltage
PAL – Programmable Array Logic
• programmable AND logic array or AND plane,
and fixed OR plane
PLA – Programmable Logic Array
• programmable AND plane
followed by programmable OR plane
Depending on how
the PLD is programmed
erasable PLD (EPLD)
mask-programmed PLD
FPGA
a step above the PLD in complexity;
it is usually larger and more complex than a PLD
rapidly growing in importance
Characteristics
none of mask layers are customized
a method for programming basic cells
and the interconnect
the core is regular array
of programmable basic logic cells
(combinational + sequential)
a matrix of programmable interconnect
that surrounds the basic cells
programmable I/O cells around the core
design turnaround is a few hours
SPLD HCPLD
Simple PLD High Capacity PLD
PLA PAL
Programmable Logic Array Programmable Array Logic
CPLD FPGA
Complex PLD Field Programmable Gate Array
Behavioral simulation
Synthesis (synthesis models)
Gate level simulation (gate models)
Floor planning
Loading estimation (loading estimation model)
Simulation/timing verification with estimated back-annotation
Place and route (place and route rules)
Design Rule Check, DRC (DRC rules)
Loading extraction (rules and parameters)
Simulation/timing verification with real back-annotation
Design export
Testing: Test generation, Fault simulation, Vector translation
70 Introduction to Digital VLSI 24.01.2007
Gil Rahav
Design entry
Layout
Drawing geometrical shapes: Defines layout hierarchy
Defines layer masks
Requires detailed knowledge about CMOS technology
Requires detailed knowledge about design rules (hundreds of rules)
Requires detailed knowledge about circuit design
Slow and tedious
Optimum performance can be obtained
b
?
Extraction: Vdd
Extracts electrical circuit: transistors, connections, capacitance,
resistance
IN Out
Layout versus schematic (LVS):
Gnd
Compares electrical circuits: transistors: parallel or serial
(schematic and extracted layout)
10 10 10 10 10 10 40
EXT LVS
Behavioral simulation
System and IC definition ( algorithm, architecture )
Partitioning
75 Introduction to Digital VLSI 24.01.2007
Complexity estimation Gil Rahav
Gate level models
Border between transistor domain (analog)
and digital domain
Digital gate level models introduced to speed
up digital simulation.
Gate level model contains:
Logic behavior
Delays depending on: operating conditions, process, loading,
signal slew rates
Setup and hold timing violation checks
Gate level model parameters extracted from
transistor level simulations and
characterization of real gates.
50ps
Global connections
Gate delay
25ps
Technology
1.0u 0.5u 0.25u 0.1u Wire length
Text:
Tool independent
Good for describing algorithms
Bad for getting an overview of a large design
Sum
Sum
Behavioral synthesis
Clear
address MEM
Register level
Clock
20% technology dependent Clear
sum
Logic synthesis
Gate level
100% technology dependent
Complex
logic
0 0
Complex
logic 1
Arriving late
Complex
logic Arriving late
1
Design space
Delay
Requirements
Wire loading
Timing optimization is based on a wire loading model.
Loading of gate = input capacitance of following gates + wire capacitance
Gate loading known by synthesizer
Wire loading must be estimated
R-C delay calculation very complicated
Delay Relative number
Average Average
200ps Wire load delay
100ps
50ps
Gate delay Large chip
25ps Small chip
Technology
1.0u 0.5u 0.25u 0.1u Wire capacitance
Large chip
Small chip
Processor
Logic capacity increases ~ 30% per year
Clock frequency increases ~ 20% per year
Cost per function decreases ~20% per year
Memory
DRAM capacity: increases ~ 60% per year
(4x every 3 years)
Speed: increases ~ 10% per year
Cost per bit: decreases ~25% per year
Implementation
Debug
Design
Initial concept: what is the function performed by the object?
Constraints: How fast? How much area? How much cost?
Refine abstract functional blocks into more concrete realizations
Implementation
Assemble primitives into more complex building blocks
Composition via wiring
Choose among alternatives to improve the design
Debug
Faulty systems: design flaws, composition flaws, component flaws
Design to make debugging easier
Hypothesis formation and troubleshooting skills