Soc Design
Soc Design
ICE of silicon
[Roza]
Computational efficiency
106 [MOPS/W]
105
3DTV
Query
by
humming
104
103
7400
102
i386SX
101
100
601
microsparc
604
i486DX P5 Super
sparc
68040
Turbosparc
604e
604e
21364
21164a
Ultra
P6
sparc
0.13
0.25
Feature size [m]
0.5
0.07
http://bwrc.eecs.berkeley.edu/cic
Designing Embedded Systems on Silicon-1
J. van Meerbergen
2/7/13
Hardware Efficiency
efficiency
high
ASIC
ASIP
medium
DSP
GP proc
FPGA
low
low
Designing Embedded Systems on Silicon-1
J. van Meerbergen
medium
2/7/13
high
flexibility
ASIC Style
A Finite Impulse
Response (FIR) filter
MEM
ASIC
General-purpose microprocessors
No picture
SoC Design
Synthesis
DFT Insertion
Floorplanning
Power Planning
Clock tree insertion
Place and Route
RC extraction
Timing check
8
Design Tools
System Architecture
C/C++
SystemC
Matlab
RTL
Verilog-XL
NC-Verilog
NC-VHDL
Debussy
Synthesis
RC Compiler
Design Compiler
Physical Design
SoC Encounter
Magma (Synopsys)
Mentor
9
Simplified Flow
.lib
LEF
RTL
Front End
Test
(ATPG)
Logic Synthesis
Logic
Simulation
Floor planning
Formal
Verification
Clock Tree
Synthesis
Timing
Constraints
Static Timing
Analysis
Back End
Place &Route
RC Extraction
DRC/LVS
Netlist
GDSII
Static Timing
Analysis
SPEF, SDF
10
11
12
MODULE
+
GATE
CIRCUIT
DEVICE
G
S
n+
D
n+
13
impact of a
design decision
Conceptual level
high level
RT level
gate level
transistor level
complexity
Designing Embedded Systems on Silicon-1
J. van Meerbergen
2/7/13
Time concept
comm. processes with
distinct rates
frame, signal rate
clock
set-up en hold times
Analog
Data type
Tokens
Code lines
1K
arrays, lists
scalars, int, float
bits
Volt, mA
10K
100K
1M
10M
2/7/13
Logic Synthesis
Netlist Synthesis
Idea
Functional
Description
Behavioral
HDL
RTL code
Target ASIC cell library
User Constraints
RTL
Gate-Level
Netlist
Optimization of logic
Mapping of the optimized netlist to
the gates of target library.
Synthesis tool requires
RTL Coding
:= PC + 1;
DBUF
:= MEM(PC);
SP
:= SP - 1;
PC
:= DBUF;
else
MEM(SP) := PC + 1;
end if;
17
Logic Synthesis
RTL
Process (CLK, RST)
if (RST = 1) then
Q <= 0;
else
if rising_edge (CLK) then
Q <=A and B and !(C and D);
ASIC cell
library
User
constraints
Logic Synthesis
Tool
B
A
Standard Cells
I-002
S
B
Z
ANDOR-001
19
DfT Insertion
Testable Flip-Flops
Scan chain generation
Chain propagation
from core to output pin
DfT Insertion
DfT Insertion and Synthesis
DfT Analysis
Test generation
ATPG / Expansion
test validation
Handoff deliverables
20
Backend Design
Technology Information and
Physical Libraries
Corelib.lef
IOlib.lef
Rams.vclef
Timing libraries
Corelib_slow,lib
Corelib_fast.lib
Corelib_typ.lib
IOlib_slow.lib
RAM timing libraries
Power Grid
Design
Analysis
Chip
Assembly
Hierarchical
STA
Floorplan
Implementation
Physical Synthesis
Placement
DFT
Clock Tree
Synthesis
Post Placement
Optimisation
Crosstalk Fixing
Floorplanning
Std. Cells
IP Block
Pads 22
Floorplanning
Calculating core size, width and height
When calculating core size of standard cells, the core utilization must be
decided first. Usually the core utilization is higher than 85%
The core size is calculated as follows
Example
Standard cell area = 2,000,000um2
Core utilization demanded = 85%
No macros
Core Size of Standard Cells = 2,000,000 / 0.85 =
2,352,941um2
Width = Height = (2,352,941)0.5 =1534um
23
Floorplanning
Core Margins
Space for power and ground
routing
24
Power Planning
Metal migration (also known as electromigration)
Under high currents, electron collisions with
metal grains cause the metal to move. The
metal wire may be open circuit or short circuit.
Prevention: sizing power supply lines to
ensure that the chip does not fail
Experience: make current density of power
ring < 1mA/m
IR drop
IR drop is the problem of voltage drop of the
power and ground due to high current flowing
through the power-ground resistive network
When there are excessive voltage drops in the
power network or voltage rises in the ground
network, the device will run at slower speed
IR drop can cause the chip to fail due to
25
Counter
enable
TC =
1
FC
C2 counts
698
697
696
counts = 6
695
694
693
692
691
0
50
100
150
200
250
Tester ck-cycles
26
SoC Encounter
Block
Powergrid
View
Voltage Storm
Partition 1
Virtual
Prototype
IP Block
(flat implementation)
Top-level Analysis
Encounter Power Analysis
Partition 2
Power Grid
View Library
Instance Power
Consumption
Voltage Storm
Top-level
Block-level
Chip
PG
PG
Analysis
SignCreate
Hierarchy
Results displayed
in
off
SoC Encounter Interface
27
Power
Grid
Connect
Multiple
Power
Ground
Power
Grid
Analysis
Power
Propagation
Power
Plan
Refinement
Power
Routing
Power
Propagation
28
Experience
Gate count = 70 k
4000 Flip-Flops
80% FF with dynamic gated clock
Current needed = 0.2mA/MHz
Example:
Gate count = 200 k
No gated clock
Clock frequency = 20 MHz
Current needed = (200/70) * 0.2 * 20 * 2 = 22.86 mA
Current density < 1mA/m
The Width of P/G Ring > 22.86 um
In order to avoid the slot rule of wide metal, the
largest width is 20 um (process dependent)
Use two sets of P/G ring for this case
29
IO power pad
Core power
connection
Stripes
Power ring
Placement
Std cells
Low utilization
core
31
Placement
Source: Magma
32
33
34
Routing
Routing is the process of building the
physical connections between blocks
as defined by the logical connections.
Routing takes place in more than one
layer, the exact number available
depending on the process and design
conventions.
Layers are connected together using
vias
Global Routing
Assigns wires to channels
defined during the floor
planning phase
Detailed Routing
Assigns nets to individual
tracks in the channel
Crosstalk Fixing
35
shield wire
pico pad
T1IN
driver
aggressor
receiver
bfx4
T2IN
bfx3
driver
victim
driver
bfx4
aggressor
Power supply 2
T1OUT
bfx50ohm
receiver
bfx4
bfx3
bfx4
bfx50ohm
receiver
bfx3
bfx50ohm
bfx4
T3IN
bfx4
T2OUT
T3OUT
shield wire
wire length
36
Routing: SI Prevention
Verification Signoff
Timing & Crosstalk
Analysis
Power
Distribution
Analysis
Parasitic
Extraction
37
Path 2
CLK
Path 3
1.0
0.32
0.66
0.43
0.23
0.25 U33
Physical Verification
DRC
Design Rule
Checking
LVS
Layout vs.
Schematic
verifications
39
Chip Finishing
tiles
Seal ring
40
Package Fitting
Package options
Selection of appropriate
package
Route pads to pins
Wire length is important
Rule checking
41
Packaging