Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Design ...baccaran/Rabaey/chapter08.pdf · ©...
Transcript of Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Design ...baccaran/Rabaey/chapter08.pdf · ©...
© Digital Integrated Circuits2nd Design Methodologies
Digital Integrated Digital Integrated CircuitsCircuitsA Design PerspectiveA Design Perspective
DesignDesignMethodologiesMethodologies
Jan M. RabaeyAnantha ChandrakasanBorivoje Nikolic
December 10, 2002
© Digital Integrated Circuits2nd Design Methodologies
The Design Productivity ChallengeThe Design Productivity Challenge
Source: sematech97A growing gap between design complexity and design productivity
1 9 8 1
L o g i c T r a n s i s t o r s p e r C h i p ( K )
P r o d u c t i v i t y ( T r a n s . / S t a f f - M o n t h )
1 9 8 3 1 9 8 5 1 9 8 7 1 9 8 9 1 9 9 1 1 9 9 3 1 9 9 5 1 9 9 7 1 9 9 9 2 0 0 1 2 0 0 3 2 0 0 5 2 0 0 7 2 0 0 9
58%/Yr. compoundComplexity growth rate
21%/Yr. compoundProductivity growth rate
1981
10Logi
c Tr
ansi
stor
s pe
r Chi
p (K
)
Pro
duct
ivity
(Tra
ns./S
taff-
Mon
th)
100
1,000
10,000
100,000
1,000,000
10,000,000
1
X XX X
X
X
x100
1,000
10,000
100,000
1,000,000
10,000,000
100,000,000
10
2.5m
.35m
.10m
1983
1985
1987
1989
1991
1993
1995
1997
1999
2001
2003
2005
2007
2009
Transistor/Staff Month
Logic Transistors/Chip
© Digital Integrated Circuits2nd Design Methodologies
A Simple ProcessorA Simple Processor
MEMORY
DATAPATH
CONTROL
I N P U T - O U T P U T
INP
UT/
OU
TPU
T
© Digital Integrated Circuits2nd Design Methodologies
A SystemA System--onon--aa--Chip: ExampleChip: Example
Courtesy: Philips
© Digital Integrated Circuits2nd Design Methodologies
Impact of Implementation ChoicesImpact of Implementation ChoicesE
nerg
y E
ffici
ency
(in
MO
PS
/mW
)
Flexibility(or application scope)
0.1-1
1-10
10-100
100-1000
None Fullyflexible
Somewhatflexible
Har
dwire
d cu
stom
Con
figur
able
/Par
amet
eriz
able
Dom
ain-
spec
ific
proc
esso
r(e
.g. D
SP
)
Em
bedd
ed m
icro
proc
esso
r
© Digital Integrated Circuits2nd Design Methodologies
Design MethodologyDesign Methodology
• Design process traverses iteratively between three abstractions:behavior, structure, and geometry
• More and more automation for each of these steps
© Digital Integrated Circuits2nd Design Methodologies
Implementation ChoicesImplementation Choices
Custom
Standard CellsCompiled Cells Macro Cells
Cell-based
Pre-diffused(Gate Arrays)
Pre-wired(FPGA's)
Array-based
Semicustom
Digital Circuit Implementation Approaches
© Digital Integrated Circuits2nd Design Methodologies
The Custom Approach The Custom Approach
Intel 4004
Courtesy Intel
© Digital Integrated Circuits2nd Design Methodologies
Transition to Automation and Regular StructuresTransition to Automation and Regular Structures
Intel 4004 (‘71)Intel 4004 (‘71)Intel 8080Intel 8080 Intel 8085Intel 8085
Intel 8286Intel 8286 Intel 8486Intel 8486Courtesy Intel
© Digital Integrated Circuits2nd Design Methodologies
CellCell--based Design (or standard cells)based Design (or standard cells)
Routing channel requirements arereduced by presenceof more interconnectlayers
Functionalmodule(RAM,multiplier, …)
Routingchannel
Logic cellFeedthrough cellR
ows
of c
ells
© Digital Integrated Circuits2nd Design Methodologies
Standard Cell Standard Cell —— ExampleExample
[Brodersen92]
© Digital Integrated Circuits2nd Design Methodologies
Standard Cell Standard Cell –– The New GenerationThe New Generation
Cell-structurehidden underinterconnect layers
© Digital Integrated Circuits2nd Design Methodologies
Standard Cell Standard Cell -- ExampleExample
3-input NAND cell(from ST Microelectronics):C = Load capacitanceT = input rise/fall time
© Digital Integrated Circuits2nd Design Methodologies
Automatic Cell GenerationAutomatic Cell Generation
Courtesy Acadabra
Initial transistorgeometries
Placedtransistors
Routedcell
Compactedcell
Finishedcell
© Digital Integrated Circuits2nd Design Methodologies
A Historical Perspective: the PLAA Historical Perspective: the PLA
x0 x1 x2
ANDplane
x0x1
x2
Product terms
ORplane
f0 f1
© Digital Integrated Circuits2nd Design Methodologies
TwoTwo--Level LogicLevel Logic
Inverting format (NOR-NOR) more effective
Every logic function can beexpressed in sum-of-productsformat (AND-OR)
minterm
© Digital Integrated Circuits2nd Design Methodologies
PLA Layout PLA Layout –– Exploiting RegularityExploiting Regularity
f0 f1x0 x0 x1 x1 x2 x2
Pull-up devices Pull-up devices
VDD GNDφAnd-Plane Or-Plane
© Digital Integrated Circuits2nd Design Methodologies
Breathing Some New Life in Breathing Some New Life in PLAsPLAsRiver PLAs
A cascade of multiple-output PLAs.Adjacent PLAs are connected via river routing.
PRE-CHARGE
PRE-
CH
AR
GE
PRE-CHARGE
PRE-
CH
AR
GE
BUFFER
BUFFER
BU
FFER
BU
FFER
PRE-CHARGE
PRE-
CH
AR
GE
BUFFER
BU
FFER
PRE-CHARGE
PRE-
CH
AR
GE
BUFFERB
UFF
ER
• No placement and routing needed. • Output buffers and the input buffers
of the next stage are shared.
Courtesy B. Brayton
© Digital Integrated Circuits2nd Design Methodologies
Experimental ResultsExperimental Results
Layout of C2670
Network of PLAs, 4 layers OTC
River PLA,2 layers no additional routing
Standard cell, 2 layers channel routing
Standard cell,3 layers OTC
0.2
0.6
1
1.4
0 2 4 6 area
dela
y
SC NPLA RPLA
Area: RPLAs (2 layers) 1.23 SCs (3 layers) - 1.00, NPLAs (4 layers) 1.31 DelayRPLAs 1.04SCs 1.00 NPLAs 1.09 Synthesis time: for RPLA , synthesis time equals design time; SCs and NPLAs still need P&R.Also: RPLAs are regular and predictable
© Digital Integrated Circuits2nd Design Methodologies
MacroModulesMacroModules
256×32 (or 8192 bit) SRAMGenerated by hard-macro module generator
© Digital Integrated Circuits2nd Design Methodologies
“Soft” “Soft” MacroModulesMacroModules
Synopsys DesignCompiler
© Digital Integrated Circuits2nd Design Methodologies
“Intellectual Property”“Intellectual Property”
A Protocol Processor for Wireless
© Digital Integrated Circuits2nd Design Methodologies
SemicustomSemicustom Design FlowDesign Flow
HDLHDL
Logic SynthesisLogic Synthesis
FloorplanningFloorplanning
PlacementPlacement
RoutingRouting
Tape-out
Circuit ExtractionCircuit Extraction
Pre-Layout Simulation
Pre-Layout Simulation
Post-Layout Simulation
Post-Layout Simulation
StructuralStructural
PhysicalPhysical
BehavioralBehavioralDesign Capture
Des
ign
Itera
tion
Des
ign
Itera
tion
© Digital Integrated Circuits2nd Design Methodologies
The “Design Closure” ProblemThe “Design Closure” Problem
Courtesy Synopsys
Iterative Removal of Timing Violations (white lines)
© Digital Integrated Circuits2nd Design Methodologies
Integrating Synthesis with Integrating Synthesis with Physical DesignPhysical Design
Physical SynthesisPhysical Synthesis
RTL (Timing) Constraints
Place-and-RouteOptimization
Place-and-RouteOptimization
Artwork
Netlist with Place-and-Route Info
MacromodulesFixed netlists
© Digital Integrated Circuits2nd Design Methodologies
Pre-diffused(Gate Arrays)
Pre-wired(FPGA's)
Array-based
LateLate--Binding ImplementationBinding Implementation
© Digital Integrated Circuits2nd Design Methodologies
Gate Array Gate Array —— SeaSea--ofof--gatesgates
rows of
cells
routing channel
uncommitted
VDD
GND
polysilicon
metal
possiblecontact
In1 In2 In3 In4
Out
UncommitedCell
CommittedCell(4-input NOR)
© Digital Integrated Circuits2nd Design Methodologies
SeaSea--ofof--gate Primitive Cellsgate Primitive Cells
NMOS
PMOS
Oxide-isolation
PMOS
NMOS
NMOS
Using oxide-isolation Using gate-isolation
© Digital Integrated Circuits2nd Design Methodologies
Example: Base Cell of GateExample: Base Cell of Gate--Isolated GAIsolated GA
n-well
contact
21GND2019181716151413121110987654321VDD
m2m1polyp-diffn-diffp-well
contact forisolator
continuousn-diff strip
continuousp-diff strip
From Smith97
© Digital Integrated Circuits2nd Design Methodologies
Example: FlipExample: Flip--Flop in GateFlop in Gate--Isolated GAIsolated GA
CLK
D
Q
GND
VDD
Q
CLR
From Smith97
© Digital Integrated Circuits2nd Design Methodologies
SeaSea--ofof--gatesgates
Random Logic
MemorySubsystem
LSI Logic LEA300K(0.6 µm CMOS)
Courtesy LSI Logic
© Digital Integrated Circuits2nd Design Methodologies
The return of gate arrays?The return of gate arrays?
metal-5 metal-6
Via-programmable cross-point
programmable via
Via programmable gate array(VPGA)
[Pileggi02]
Exploits regularity of interconnect
© Digital Integrated Circuits2nd Design Methodologies
PrewiredPrewired ArraysArraysClassification of prewired arrays (or field-
programmable devices):Based on Programming Technique
Fuse-based (program-once)Non-volatile EPROM basedRAM based
Programmable Logic StyleArray-BasedLook-up Table
Programmable Interconnect StyleChannel-routingMesh networks
© Digital Integrated Circuits2nd Design Methodologies
FuseFuse--Based FPGABased FPGA
antifuse polysilicon ONO dielectric
n+ antifuse diffusion
2 l
From Smith97
Open by default, closed by applying current pulse
© Digital Integrated Circuits2nd Design Methodologies
ArrayArray--Based Programmable LogicBased Programmable Logic
PLA PROM PAL
I5 I4
O0
I3 I2 I1 I0
O1O2O3
Programmable AND array
ProgrammableOR array I5 I4
O0
I3 I2 I1 I0
O1O2O3
Programmable AND array
Fixed OR array
Indicates programmable connection
Indicates fixed connection
O0
I3 I2 I1 I0
O1O2O3
Fixed AND array
ProgrammableOR array
© Digital Integrated Circuits2nd Design Methodologies
Programming a PROMProgramming a PROM
f0
1 X 2 X 1 X 0
f1NANA: programmed node
© Digital Integrated Circuits2nd Design Methodologies
More Complex PALMore Complex PAL
From Smith97
programmable AND array (2 i 3 jk ) k macrocells
j -wide OR array
j
macrocell
productterms
D Q
A
1
j
BCLK
OUT
C i i inputs
i inputs, j minterms/macrocell, k macrocells
© Digital Integrated Circuits2nd Design Methodologies
22--input input muxmuxas programmable logic blockas programmable logic block
FA 0
B
S
1
ConfigurationA B S F=0 0 0 00 X 1 X0 Y 1 Y0 Y X XYX 0 YY 0 XY 1 X X 1 Y1 0 X1 0 Y1 1 1 1
XYXY
XY
© Digital Integrated Circuits2nd Design Methodologies
Logic Cell of Logic Cell of ActelActel FuseFuse--Based FPGABased FPGA
A
B
SA Y
1
C
D
SB
1
S0S1
1
© Digital Integrated Circuits2nd Design Methodologies
LookLook--up Table Based Logic Cellup Table Based Logic Cell
Out
ln1 ln2
Mem
ory In Out
00 00
01 1
10 1
11 0
© Digital Integrated Circuits2nd Design Methodologies
LUTLUT--Based Logic CellBased Logic Cell
Courtesy Xilinx
D4
C1....C4
xxxxxx
D3
D2
D1
F4
F3
F2
F1
Logicfunction
ofxxx
Logicfunction
ofxxx
Logicfunction
ofxxx
xx
xx
4
xxxxxx
xxxxxxxx
xxx
xxxx xxxx xxxx
HP
Bitscontrol
Bitscontrol
Multiplexer Controlledby Configuration Program
x
xx
x
xx
xxx xx
xxxx
x
xxxxxx
xx
x
xx
xxx
xx
Xilinx 4000 Series
Figure must be updated
© Digital Integrated Circuits2nd Design Methodologies
ArrayArray--Based Programmable WiringBased Programmable Wiring
Input/output pinProgrammed interconnection
InterconnectPoint
Horizontaltracks
Vertical tracks
Cell
M
© Digital Integrated Circuits2nd Design Methodologies
MeshMesh--based Interconnect Networkbased Interconnect NetworkSwitch Box
Connect Box
InterconnectPoint
Courtesy Dehon and Wawrzyniek
© Digital Integrated Circuits2nd Design Methodologies
Transistor Implementation of MeshTransistor Implementation of Mesh
Courtesy Dehon and Wawrzyniek
© Digital Integrated Circuits2nd Design Methodologies
Hierarchical Mesh NetworkHierarchical Mesh Network
Use overlayed meshto support longer connections
Reduced fanout and reduced resistance
Courtesy Dehon and Wawrzyniek
© Digital Integrated Circuits2nd Design Methodologies
EPLD Block DiagramEPLD Block Diagram
MacrocellPrimary inputs
Courtesy Altera
© Digital Integrated Circuits2nd Design Methodologies
AlteraAltera MAX Interconnect ArchitectureMAX Interconnect Architecture
LAB2
PIA
LAB1
LAB6
tPIA
tPIA
row channelcolumn channel
LAB
Courtesy Altera
Array-based(MAX 3000-7000)
Mesh-based(MAX 9000)
© Digital Integrated Circuits2nd Design Methodologies
FieldField--Programmable Gate ArraysProgrammable Gate ArraysFuseFuse--basedbased
I/O Buffers
Program/Test/Diagnostics
I/O Buffers
I/O B
uffe
rs
I/O B
uffe
rs
Vertical routes
Rows of logic modulesRouting channels
Standard-cell likefloorplan
© Digital Integrated Circuits2nd Design Methodologies
Xilinx 4000 Interconnect ArchitectureXilinx 4000 Interconnect Architecture
2
12
8
4
3
2
3
CLB
8 4 8 4
Quad
Single
Double
Long
DirectConnect
DirectConnect
Quad Long GlobalClock
Long Double Single GlobalClock
CarryChain
Long12 4 4
Courtesy Xilinx
© Digital Integrated Circuits2nd Design Methodologies
RAMRAM--based FPGA based FPGA
Xilinx XC4000ex
Courtesy Xilinx
© Digital Integrated Circuits2nd Design Methodologies
A LowA Low--Energy FPGA (UC Berkeley)Energy FPGA (UC Berkeley)
Array Size: 8x8 (2 x 4 LUT)Power Supply: 1.5V & 0.8VConfiguration: Mapped as RAMToggle Frequency:125MHzArea: 3mm x 3mm
© Digital Integrated Circuits2nd Design Methodologies
Larger Granularity Larger Granularity FPGAsFPGAs
1-mm 2-metalCMOS tech
1.2 x 1.2 mm2
600k transistors
208-pin PGA
fclock = 50 MHz
Pav = 3.6 W @ 5V
Basic Module: Datapath
PADDI-2 (UC Berkeley)
© Digital Integrated Circuits2nd Design Methodologies
Design at a crossroadDesign at a crossroadSystemSystem--onon--aa--ChipChip
RAM
500 k Gates FPGA+ 1 Gbit DRAMPreprocessing
Multi-SpectralImager
µCsystem+2 GbitDRAMRecog-nition
Ana
log
64 SIMD ProcessorArray + SRAM
Image Conditioning100 GOPS
Embedded applications where cost, performance, and energy are the real issues!DSP and control intensiveMixed-modeCombines programmable and application-specific modulesSoftware plays crucial role
© Digital Integrated Circuits2nd Design Methodologies
Addressing the Design Complexity IssueAddressing the Design Complexity IssueArchitecture ReuseArchitecture Reuse
Reuse comes in generationsGe ne ration Re us e e le me nt Status
1s t Standard c e lls We ll e s tablis he d
2nd IP bloc ks Be ing introduc e d
3rd Arc hite c ture Eme rg ing
4th IC Early re s e arc h
Source: Theo Claasen (Philips) – DAC 00
© Digital Integrated Circuits2nd Design Methodologies
Architecture Architecture ReUseReUseSilicon System Platform
Flexible architecture for hardware and softwareSpecific (programmable) componentsNetwork architectureSoftware modulesRules and guidelines for design of HW and SW
Has been successful in PC’sDominance of a few players who specify and control architecture
Application-domain specific (difference in constraints)Speed (compute power)DissipationCostsReal / non-real time data
© Digital Integrated Circuits2nd Design Methodologies
PlatformPlatform--Based DesignBased Design
A platform is a restriction on the space of possible implementation choices, providing a well-defined abstraction of the underlying technology for the application developerNew platforms will be defined at the architecture-micro-architecture boundaryThey will be component-based, and will provide a range of choices from structured-custom to fully programmable implementationsKey to such approaches is the representation of communication in the platform model
“Only the consumer gets freedom of choice;“Only the consumer gets freedom of choice;designers need freedomdesigners need freedom fromfrom choice”choice”
((OrfaliOrfali, et al, 1996, p.522), et al, 1996, p.522)
Source:R.Newton
© Digital Integrated Circuits2nd Design Methodologies
Berkeley Pleiades ProcessorBerkeley Pleiades Processor
• 0.25um 6-level metal CMOS
• 5.2mm x 6.7mm
• 1.2 Million transistors
• 40 MHz at 1V
• 2 extra supplies: 0.4V, 1.5V
• 1.5~2 mW power dissipationInterface
Reconfigurable
Data-path
FPGA
ARM8 Core
© Digital Integrated Circuits2nd Design Methodologies
Heterogeneous Programmable PlatformsHeterogeneous Programmable Platforms
Xilinx Vertex-II Pro
Courtesy Xilinx
High-speed I/O
Embedded PowerPcEmbedded memories
Hardwired multipliers
FPGA Fabric
© Digital Integrated Circuits2nd Design Methodologies
SummarySummary
Digital CMOS Design is kicking and healthySome major challenges down the road caused by Deep Sub-micron
Super GHz designPower consumption!!!!Reliability – making it work
Some new circuit solutions are bound to emergeWho can afford design in the years to come? Some major design methodology change in the making!