Beruflich Dokumente
Kultur Dokumente
A Design Perspective
Jan M. Rabaey Anantha Chandrakasan Borivoje Nikoli
Timing Issues
January 2003
EE141 Digital Integrated
Circuits2nd
Timing Issues
Synchronous Timing
Out
Circuits2nd
Timing Issues
Timing Definitions
Circuits2nd
Timing Issues
Latch Parameters
D Q Clk
T
Clk D tc-q PWm thold td-q tsu
Circuits2nd
Timing Issues
Register Parameters
D Q Clk
T
Clk D tsu Q tc-q Delays can be different for rising and falling data transitions
EE141 Digital Integrated
thold
Circuits2nd
Timing Issues
Clock Uncertainties
4 Power Supply 3 Interconnect Devices 6 Capacitive Load 7 Coupling to Adjacent Lines
Circuits2nd
Timing Issues
Clock Nonidealities
Clock skew
Spatial variation in temporally equivalent clock edges; deterministic + random, tSK
Clock jitter
Temporal variations in consecutive edges of the clock signal; modulation + random noise Cycle-to-cycle (short-term) tJS Long term tJL
Circuits2nd
Timing Issues
Clk
tJS
Both skew and jitter affect the effective cycle time Only skew affects the race margin
Circuits2nd
Timing Issues
Clock Skew
# of registers Earliest occurrence of Clk edge Nominal /2 Latest occurrence of Clk edge Nominal + /2
Clk delay
Circuits2nd
Timing Issues
Combinational Logic
R2 D Q tCLK2
delay Combinational Logic
R3
D Q
tCLK3
In
Combinational Logic
R3 D Q tCLK3 CLK
Circuits2nd
Timing Issues
Positive Skew
TCLK + d CLK1 1
d
TCLK
CLK2
2
d + th
Circuits2nd
Timing Issues
Negative Skew
TCLK + d
CLK1
TCLK
CLK2
Circuits2nd
Timing Issues
Timing Constraints
In R1
D Q
R2 Combinational Logic
D Q
CLK tc - q
tCLK1 tlogic
tlogic, cd tc - q, cd tsu, thold
tCLK2
Circuits2nd
Timing Issues
13
Timing Constraints
In R1
D Q
R2 Combinational Logic
D Q
CLK tc - q
tCLK1 tlogic
tlogic, cd tc - q, cd tsu, thold
tCLK2
Circuits2nd
Timing Issues
14
Impact of Jitter
CLK
TC LK
In
REGS
cd
Circuits2nd
Timing Issues
15
TJI +
Circuits2nd
Timing Issues
16
Circuits2nd
Timing Issues
17
Shortest Path
Earliest point of launching
Clk
TClk-Q TLm
Clk
TH
Data must not arrive before this time
Circuits2nd
Timing Issues
18
Circuits2nd
Timing Issues
19
REG
REG
REG
log
Out
In
Circuits2nd
Timing Issues
Flip-flop delay
Flip -flop
TClk-Q
=0
Logic
=1
Circuits2nd
Timing Issues
21
=0
=1
=0
=1
Evaluate
Evaluate
Precharge
Circuits2nd
Timing Issues
22
Latch timing
tD-Q
D Clk Q
tClk-Q
Circuits2nd
Timing Issues
23
Logic
Tskl Clk
Tskl
Tskt
Tskt
PW P
EE141 Digital Integrated
Circuits2nd
Timing Issues
24
Latch-Based Design
L1 latch is transparent when = 0
L1 Latch
Logic
L2 Latch
Logic
Circuits2nd
Timing Issues
25
Slack-borrowing
In L1 D Q a CLB_A t p d,A b L2 D Q c CLB_B t p d,B L1 d D Q e
CLK1
CLK2 TC LK
CLK1
CLK1
CLK2 slack passed to next stage t pd,A a valid tD Q tpd,B t DQ e valid d valid
26
b valid c valid
Circuits2nd
Timing Issues
Latch-Based Timing
Static logic
Skew
L1 Latch
Logic
L2 Latch
=1
L1 latch
L2 latch
Logic
Long path
=0
Circuits2nd
Timing Issues
27
Clock Distribution
H-tree
CLK
Circuits2nd
Timing Issues
28
[Restle98]
EE141 Digital Integrated
Circuits2nd
Timing Issues
29
Driver
Driver
GCLK
GCLK
Circuits2nd
Timing Issues
30
Circuits2nd
Timing Issues
31
21164 Clocking
tcycle= 3.3ns trise = 0.35ns tskew = 150ps
Clock waveform
final drivers
pre-driver
Local inverters for latching Conditional clocks in caches to reduce power More complex race checking Device variation
Timing Issues
32
Circuits2nd
Clock Drivers
Circuits2nd
Timing Issues
33
Circuits2nd
Timing Issues
34
PLL
Local clocks can be gated off to save power Reduced load/skew Reduced thermal issues Multiple clocks complicate race checking
Timing Issues
35
Circuits2nd
21264 Clocking
Circuits2nd
Timing Issues
36
ps 300 305 310 315 320 325 330 335 340 345 GCLK Rise Times
(20% to 80% Extrapolated to 0% to 100%)
Circuits2nd
Timing Issues
37
DLL
DLL
+ DLLs compensate static and lowfrequency variation + divides design and verification effort
PLL
SYSCLK
+ tailored clocks
Timing Issues
38
Circuits2nd
Circuits2nd
Timing Issues
39
R1 D Q tpd,reg
R2 D Q
R3 D Q
R4 D Q
CLK
Circuits2nd
Timing Issues
40
In
R1
F1
R2
F2
R3
F3
Out
tpF1
tpF2
tpF3
Circuits2nd
Timing Issues
41
Start
DELAY MODULE
Done
Circuits2nd
Timing Issues
42
Circuits2nd
Timing Issues
43
B1
B0
In1 In 1 In 2 In 2
B1
PDN
PDN
Start
Circuits2nd
Timing Issues
44
Self-Timed Adder
VDD Start C0 C0 Start VDD Start C0 C0 Start (a) Differential carry generation
45
P0 G0
C1
P1 G1
C2
P2 G2
P0 K0
C1
P1 K1
C2
P2 K2
C3
P3 K3
C4
C4
Circuits2nd
Timing Issues
Inputs Start
tdelay
GNDsense
Current Sensor
tpd-NOR
valid
B Output
Circuits2nd
Timing Issues
46
Hand-Shaking Protocol
Circuits2nd
Timing Issues
47
B 0 1 0 1
Fn+1 0 Fn Fn 1
0 0 1 1
(a) Schematic
VDD A A B S R (a) Logic Q F B VDD B
F
B
Circuits2nd
Timing Issues
48
Advantage : FAST - minimal # of signaling events (important for global interconnect) Disadvantage : edge - sensitive, has state
EE141 Digital Integrated
Circuits2nd
Timing Issues
49
Circuits2nd
Timing Issues
50
2-Phase Protocol
Circuits2nd
Timing Issues
51
Example
From [Horowitz]
EE141 Digital Integrated
Circuits2nd
Timing Issues
52
Example
Circuits2nd
Timing Issues
53
Example
Circuits2nd
Timing Issues
54
Example
Circuits2nd
Timing Issues
55
Circuits2nd
Timing Issues
56
Circuits2nd
Timing Issues
57
Self-Resetting Logic
completion detection (L1) completion detection (L2) completion detection (L3)
VDD
int
out
A B C
Post-charge logic
Circuits2nd
Timing Issues
58
Clock-Delayed Domino
GND
CLK1
VDD
Q1 (also D2)
D1
Pulldown Network
Circuits2nd
Timing Issues
59
Asynchronous-Synchronous Interface
Circuits2nd
Timing Issues
60
Circuits2nd
Timing Issues
61
A Simple Synchronizer
CLK int I1 Q I2 CLK
Data sampled on rising edge of the clock Latch will eventually resolve the signal value, but ... this might take infinite time!
EE141 Digital Integrated
Circuits2nd
Timing Issues
62
Vout
1.0 0.0 0
100
time [ps]
200
300
Circuits2nd
Timing Issues
63
Circuits2nd
Timing Issues
64
Example
Tf = 10 nsec = T Tsignal = 50 nsec tr = 1 nsec t = 310 psec VIH - VIL = 1 V (VDD = 5 V)
N(T) = 3.9 10-9 errors/sec MTF (T) = 2.6 10 8 sec = 8.3 years MTF (0) = 2.5 sec
EE141 Digital Integrated
Circuits2nd
Timing Issues
65
Influence of Noise
Uniform distribution around VM p(v)
logarithmic reduction T
VIL
VIH
Initial Distribution
Still Uniform
Circuits2nd
Timing Issues
66
Typical Synchronizers
2 phase clocking circuit
Q 1 2
Circuits2nd
Timing Issues
67
In Sync
f
O1 Sync
O2 Sync
Out
Circuits2nd
Timing Issues
68
Arbiters
Req1 Req2 Arbiter Ack1 Req1 Ack2
Ack1
A B
Ack2
Req2
(b) Implementation
Circuits2nd
Timing Issues
69
PLL-Based Synchronization
Chip 1 Data Digital System fsystem = N x fcrystal PLL fcrystal , 200<Mhz
Crystal Oscillator reference clock
Divider
Circuits2nd
Timing Issues
70
Phase detector
Down
Charge pump
Loop filter
vcont
VCO
Local clock
Divide by N
System Clock
Circuits2nd
Timing Issues
71
Phase Detector
Output before filtering
Transfer characteristic
Circuits2nd
Timing Issues
72
Phase-Frequency Detector
Rst D Q A Rst D Q DN
B A B
B
UP
B
UP = 0 DN = 1 UP = 0 DN = 0 UP = 1 DN = 0 A
(a) schematic
A B UP DN
B
UP DN (c) Timing waveforms
Circuits2nd
Timing Issues
73
UP
DN
Circuits2nd
Timing Issues
74
VDD
Circuits2nd
Timing Issues
75
Charge Pump
VDD
UP
DN
Circuits2nd
Timing Issues
76
PLL Simulation
Circuits2nd
Timing Issues
77
Phase Det
Charge Pump
Filter
DL
fO
PD
CP
Filter
VCO
fO
Circuits2nd
Timing Issues
78
Circuits2nd
Timing Issues
79
Digital Circuit
VCDL
Digital Circuit
Circuits2nd
Timing Issues
80