Chapter 1 VLSI Design Methods

advertisement
Chapter 1
VLSI Design Methods
Jin-Fu Li
Advanced Reliable Systems (ARES) Laboratory
Department of Electrical Engineering
National Central University
Jhongli, Taiwan
Outline
Introduction
VLSI Design Flows & Design Verification
VLSI Design Styles
System-on-Chip Design Methodology
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
2
Complexity & Productivity Growth of ICs
Complexity grows 58%/yr (doubles every 18 mos)
Productivity grows 21%/yr (doubles every 31/2 yrs) unless
methodology is updated
Complexity and Productivity Growth
10,000,000
100,000,000
1,000,000
10,000,000
Productivity
100,000
1,000,000
10,000
100,000
1,000
10,000
100
1,000
10
1980
Advanced Reliable Systems (ARES) Lab.
Produc tiv ity
Tra ns is tors /Sta ff M onth
C om ple xity
Tra ns istors per C hip (K )
Com plexity
100
1985
1990
1995
2000
2005
Jin-Fu Li, EE, NCU
2010
[Source: MITRE]
3
VLSI Design Methodologies
Design methodology
Process for creating a design
Methodology goals
Design cycle
Complexity
Performance
Reuse
Reliability
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
4
IC Community
Design rules
Silicon
Simulation models
and parameters
IC
foundry
Mask layouts
design
Integrated circuits
CAD
Process information
tool
Software tools
provider
[M. M. Vai, VLSI design]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
5
System to Silicon Design
System Requirements
Algorithm
Hardware Architecture
Synthesis
X[k] = Σ x[n]e-j2 πk/N
System Integration
x[n] = Σ X[k]e+j2 πk/N
Σ
Fabricate and Test
Physical
Design For Test
Observe
Co nt ro l
[Source: MITRE]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
6
Y-Chart
Structural
Domain
Behavioral
Domain
Processor
Algorithm
Register
ALU
FSM
Module
Description
Leaf Cell
Transistor
Boolean
Equ.
Mask
Cell
Placement
Module
Placement
Chip
Floorplan
Physical
Domain
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
7
VLSI Design Flow
Concept
Design
Validation
RTL
Verification
Logic
Verification
Designer
Final Product
Behavior Specification
Manufacturing
Behavior Synthesis
Layout (Masks)
RTL Design
Layout Synthesis
Logic Synthesis
Netlist (Logic Gates)
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
Product
Verification
Layout
Verification
8
Behavioral Synthesis & RTL Synthesis
4 cycles=16 ns
Behavioral Synthesis
3 cycles=15 ns
Vary clock period
HDL
Vary # clock cycles
z = a(i) × b(i) − c × d (k ) + f
2 cycles=20 ns
Multiple Architectures
RTL Synthesis
1 cycle=50 ns
Vary clock period
1 clock cycle
Single Architecture
Source: Synopsys
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
9
Behavioral Synthesis (Resource Allocation)
Source code defines the functionality
y_real := a_real * b_real - a_imag * b_imag
y_imag := a_real * b_imag + a_imag * b_real
Constraints allow designer to explore different architectures,
trading off speed vs. area
Two possible implementations for a complex multiplier:
Fast, but large
Small, but slow
(4 mult, 1 add, 1 sub)
(1 mult, 1 add/sub)
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
[Source: MITRE]
10
Behavioral Synthesis (Retiming)
Allows designer to trade off latency for throughput by adding and
moving registers in order to meet timing constraints
Specification needs to include registers at functional boundaries,
without regard to register-to-register timing: software takes care of
optimizing register placement
Compiled
Functional
Description
Circuit After Behavioral Retiming
> create_clock clk -period 10
> pipeline_design -stages 3
register tp = 0.5
> optimize_registers
tp=5
tp=23.0
tp=8.7
tp=9.5
Max. Speed= 1/23.0 nSec = 43 MHz
Max. Speed= 1/10 nSec = 100 MHz
Latency
Latency
= 1 clock cycle
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
= 3 clock cycles
[Source: MITRE]
11
Verification
The four representations of the design
Behavioral, RTL, gate level, and layout
In mapping the design from one phase to another, it is
likely that some errors are produced
Caused by the CAD tools or human mishandling of the tools
Usually, simulation is used for verification, although
more recently, formal verification has been gaining in
importance
Two types of simulations are used to verify the design
Functional simulation & timing simulation
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
12
DFT Flow
Behavioral Description
Behavioral DFT Synthesis
RTL Description
Technology Mapping
Layout
Logic DFT Synthesis
Gate Description
Parameter Extraction
Manufacturing
Test Pattern Generation
Low
Gate
Fault Coverage ?
Product
Test Application
High
Good Product
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
13
Design Styles – Full Custom
A
B
Z
Vss
Vdd
z
B
A
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
14
Design Styles – Programmable Logic Array
AND array
OR array
Buffering
Buffering
Outputs
Inputs
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
15
Design Styles – Gate Array
Cell
1
Cell
2
Cell
3
Cell
4
Cell
5
Cell
6
Cell
7
Cell
8
Cell
9
Cell
10
Cell
11
Cell
12
Cell
13
Cell
14
Cell
15
Cell
16
Cell
17
Cell
18
Cell
19
Cell
20
Cell
21
Cell
22
Cell
23
Cell
24
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
16
Design Styles – Field Programmable Gate Array (FPGA)
Xilinx SRAM-based FPGA
Configurable Logic Block
(CLB)
I/O Block
Routing channel
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
17
Design Styles – Field Programmable Gate Array (FPGA)
Xilinx XC4000 Configurable logic block
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
18
Design Styles – Field Programmable Gate Array (FPGA)
SRAM-based programmable switch
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
19
Design Styles – Field Programmable Gate Array (FPGA)
Architecture of Altera FLEX 10K FPGA
FastTrack
Interconnect
I/O
I/O
I/O
I/O
EAB
Logic Array Block
(LAB)
I/O
I/O
I/O
I/O
Embedded
Array
Block
I/O
EAB
I/O
I/O
Advanced Reliable Systems (ARES) Lab.
I/O
Jin-Fu Li, EE, NCU
20
Design Styles – Field Programmable Gate Array (FPGA)
Logic array block
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
21
Standard-Cell Design Styles
Cell
1
Cell
6
Cell
2
Cell
7
Cell
8
Cell
13
Advanced Reliable Systems (ARES) Lab.
Cell
3
Cell
4
Cell
9
Cell
14
Cell
5
Cell
10
Cell
11
Cell
12
Cell
15
Cell
16
Cell
17
Jin-Fu Li, EE, NCU
22
Standard-Cell Design Styles
Design entry
Enter the design into an ASIC design system, either using a
hardware description language (HDL) or schematic entry
An example of Verilog HDL
module fadder(sum,cout,a,b,ci);
output sum, cout;
input a, b, ci;
reg sum, cout;
ci
always @(a or b or ci) begin
sum = a^b^ci;
cout = (a&b)|(b&ci)|(ci&a);
end
endmodule
Advanced Reliable Systems (ARES) Lab.
b
a
fadder
cout
sum
Jin-Fu Li, EE, NCU
23
Design Styles – Comparison
Design Styles
Advantages
Disadvantages
Full-custom
- Compact designs;
- Improved electrical
characteristics;
- Very time consuming;
- More error prone;
Semi-custom
-Well-tested standard
cells which can be
shared between users;
-Good for bottom-up
design;
-Can be time consuming to
built-up standard cells;
-Expensive in the short term
but cheaper in long-term
costs;
-Fast implementation;
-Easy updates;
-Can be wasteful of space
and pin connections;
-Relatively expensive in
large volumes;
FPGA
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
24
Emergence of SOC Idea
Motivation:
Transistor density
Moor's law
Integration with analog
parts
AMS specification,
synthesis, simulation
SoC Design Methodology
and Tools
Filling the Gap through
Source: Synopsys
Reuse
Design Automation
System Specification
Methodology
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
25
What’s a System?
System
[Source: M. Gudarzi]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
26
What’s a System?
Customer’s view:
System = User/Customer-specified functionality +
requirements in terms of: Cost, Speed, Power,
Dimensions, Weight, …
Designer’s view:
System = HW components +SW modules
[Source: M. Gudarzi]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
27
Hierarchical Design Flow for an System Chip
Specification
Hardware
Architecture
Detail Design
Requirements
and
specification
Architecture
Hardware
Design
Software
Design
Specification
Software
Architecture
Module Design
Integration
Integration
Integration
Test
System test
Test
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
28
HDL’s & SDL’s: Requirements
HDL’s
HardwareC
Verilog
AHDL
VHDL
SDL’s
C
Pascal
ADA
[Source: M. Gudarzi]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
29
HDL’s & SDL’s: Realization
Hardware
Program
Software
Program
Compilation
Synthesis
Operating System
[Source: M. Gudarzi]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
30
HDL’s & SDL’s: Features
Any SW-realizable algorithm is HW-realizable as well.
Hardware Realization
Software Realization
Speed
Energy Efficiency
Cost Efficiency (in high
volumes)
Flexibility
Ease of Development
Ease of Test and Debug
Cost = SW + Processor
[Source: M. Gudarzi]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
31
HW-SW Co-design
How much SW + how much HW?
Objectives:
Power
Speed
Area
Memory space
Time-to-market
Implementation platform:
Collection of chips on a board (MCM)
…
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
32
HW/SW Co-Design Methodology
Must architect hardware and software together:
provide sufficient resources;
avoid software bottlenecks.
Can build pieces somewhat independently, but
integration is major step.
Also requires bottom-up feedback
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
33
HW/SW Co-design Main Topics
Synthesis
System
H
System
S
OS
Specification
Verification
[Source: M. Gudarzi]
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
34
[Source: M. Gudarzi]
System
Specification
Verification
Co-Synthesis
Partitioning
HW Parameter
SW Parameter
Estimation
Estimation
HW Synthesis
Verification
SW Synthesis
Verification
ASIC
OS
EXE Code
Advanced Reliable Systems (ARES) Lab.
System
Integration
Jin-Fu Li, EE, NCU
Verification
Final Verification
35
SOC Design Essentials
Realization strategy:
Automated HW-SW Co-design + Reusable Cores
Intellectual Property: IP Cores
IP Core Examples:
Processors: PowerPC, 680x0, ARM, …
Controllers: PCI, …
DSP Processors: TI
...
IP Core Categories:
Soft Cores: HDL, SW/HW Cores
Firm Cores: Synthesized HDL
Hard Cores: Layout for a specific fabrication process
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
36
Trends and Challenges of SOC Designs
Technology trends
3D technology + System-in-package
Architecture trends
Regular architectures, e.g., multi-core architecture
Network-on-chip communication
Challenges
Power
Reliability
Yield
Design-for-manufacturability
…
Advanced Reliable Systems (ARES) Lab.
Jin-Fu Li, EE, NCU
37
Download