iee5043 spring 2016 數位積體電路 · 1 part 7 special-purpose subsystems lecture 25 : clock...
TRANSCRIPT
![Page 1: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/1.jpg)
1
Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems
IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits
Professor Wei Hwang ( 黃 威 教授 ) Department of Electronics Engineering National Chiao Tung University [email protected]
![Page 2: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/2.jpg)
Topics covered in a typical DIC Course
![Page 3: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/3.jpg)
3
Outline Introduction Synchronous Systems
Timing Issues Clock generation Phase-Locked Loops (PLL) Delay-Locked Loops (DLL)
Clock distribution Asynchronous Systems Summary
![Page 4: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/4.jpg)
4
Issues in Timing
Source from : McLaughlin
![Page 5: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/5.jpg)
5
Issues in Timing
![Page 6: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/6.jpg)
6
Some Definitions Signals that can only transition at predetermined
times with respect to a signal clock are called “{syn,meso,plesio} chronous” An asynchronous signal can transition at any
arbitrary time.
![Page 7: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/7.jpg)
7
Some Definitions (contd) Synchronous Signal: exactly the same frequency as local
clock, and fixed phase offset to that clock. Mesochronous Signal: exactly the same frequency as local
clock, but unknown phase offset. Plesiochronous Signal: frequency nominally the same as local
clock, but slightly different
Mesochronous and plesiochronous concepts are very useful for the design of systems with long interconnections, and/or multiple clock domains
![Page 8: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/8.jpg)
8
Mesochronous Interconnect
![Page 9: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/9.jpg)
9
Mesochronous Communication
![Page 10: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/10.jpg)
10
Plesiochronous Communication
Does only marginally deal with fast variations in data delay
![Page 11: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/11.jpg)
11
Synchronous Pipelined Datapath
![Page 12: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/12.jpg)
12
Anisochronous Interconnect
![Page 13: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/13.jpg)
13
The Timing Uncertainty
![Page 14: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/14.jpg)
Positive and Negative Clock Skew
14
![Page 15: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/15.jpg)
Data Structure with feedback
15
![Page 16: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/16.jpg)
Clock Subsystem
![Page 17: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/17.jpg)
Skew and Jitter in Synchronous Clock distribution
17
![Page 18: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/18.jpg)
18
Clocked Elements 1 – Master-Slave latch
![Page 19: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/19.jpg)
19
Clocked Elements 2 – Pulsed-Clock latch
![Page 20: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/20.jpg)
20
Clocked Elements 3 – Sense-Amp Flip-Flop
![Page 21: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/21.jpg)
![Page 22: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/22.jpg)
22
Clock Generation
Low frequency: Buffer input clock and drive to all registers
High frequency Buffer delay introduces large skew relative to
input clocks Makes it difficult to sample input data
Distributing a very fast clock on a PCB is hard
![Page 23: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/23.jpg)
23
Zero-Delay Buffer
If the periodic clock is delayed by Tc, it is indistinguishable from the original clock
Build feedback system to guarantee this delay
Phase-Locked Loop (PLL)
Delay-Locked Loop (DLL)
![Page 24: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/24.jpg)
24
Phase-Locked Loop (PLL)
System
Linear Model
![Page 25: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/25.jpg)
Why PLL ?
The PLL has been widely used in consumer, computer and communication aspects.
Phase Locked-Loop
Frequency synthesis
Clock/Data Recovery
Clock De-skewing Demodulator ………
….
![Page 26: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/26.jpg)
26
PLL-Based Synchronization
![Page 27: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/27.jpg)
Charge Pump PLL (analog)
27
![Page 28: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/28.jpg)
DPLL Architecture (mixed mode)
28
![Page 29: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/29.jpg)
PFD Circuit
29
![Page 30: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/30.jpg)
DCO Circuit
30
![Page 31: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/31.jpg)
31
![Page 32: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/32.jpg)
All Digital –PLL (ADPLL)
32
![Page 33: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/33.jpg)
Detailed Block Diagram of ADPLL
33
![Page 34: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/34.jpg)
PLL Versions The advantage and disadvantage of different types of PLL
LPLL
DPLL
ADPLL
Design methodology
Design cycle
Noise rejection
Output frequency
Oscillator resolution
power
Lock cycle
Area
Analog Mixed mode Digital
Slow Slow Fast
Poor Poor Good
High High Low
High High Low
Slow Slow Quick
Large Large Small
Large Large Design dependent
![Page 35: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/35.jpg)
35
Delay Locked Loop
Delays input clock rather than creating a new clock with an oscillator
Cannot perform frequency multiplication More stable and easier to design
1st order rather than 2nd State variable is now time (T)
Locks when loop delay is exactly Tc
Deviations of ∆T from locked value
![Page 36: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/36.jpg)
36
Delay-Locked Loop (DLL)
System
Linear Model
![Page 37: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/37.jpg)
37
Delayed Locked Loop (DLL)
DLL
( )( )
cp
err 2pd
pd
I s IK
s π= =
Φ
![Page 38: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/38.jpg)
38
![Page 39: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/39.jpg)
39
![Page 40: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/40.jpg)
40
DLL Loop Dynamics
Closed loop transfer function of DLL
This is a first order system
τ indicates time constant (inverse of bandwidth) Choose at least 10Tc for continuous time approx.
( ) ( )( )
out
in
11
T sH s
T s sτ∆
= =∆ +
1 c
pd I vcdl cp vcdl
CTK K K I K
τ = =
![Page 41: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/41.jpg)
All Digital Multiphase Delay-Locked Loop (AD-MDLL)
41
![Page 42: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/42.jpg)
ADMDLL Architecture
42
![Page 43: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/43.jpg)
43
Phase Alignment
If the DDR clock is aligned to the transmitted clock, it must be shifted by 90º before sampling
Use PLL
![Page 44: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/44.jpg)
44
Mesochronous Clocking
As speeds increase, it is difficult to keep clock and data aligned Mismatches in trace lengths Mismatches in propagation speeds Different in clock vs. data drivers
Mesochronous: clock and data have same frequency but unknown phase Use PLL/DLL to realign clock to each data
channel
![Page 45: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/45.jpg)
45
Phase Calibration Loop
Special phase detector compares clock & data phase
![Page 46: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/46.jpg)
Clock Distribution
![Page 47: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/47.jpg)
Clock Tree Distribution
![Page 48: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/48.jpg)
Central Clock Spine Distribution
![Page 49: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/49.jpg)
49
Clocking Architectures
DLL
( )( )
cp
err 2pd
pd
I s IK
s π= =
Φ
![Page 50: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/50.jpg)
50
Clock Distribution
On a small chip, the clock distribution network is just a wire And possibly an inverter for clkb
On practical chips, the RC delay of the wire resistance and gate load is very long Variations in this delay cause clock to get to
different elements at different times This is called clock skew
Most chips use repeaters to buffer the clock and equalize the delay Reduces but doesn’t eliminate skew
![Page 51: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/51.jpg)
51
Example
Skew comes from differences in gate and wire delay With right buffer sizing, clk1 and clk2 could ideally
arrive at the same time. But power supply noise changes buffer delays clk2 and clk3 will always see RC skew
3 mm
1.3 pF
3.1 mmgclk
clk1
0.5 mm
clk2clk3
0.4 pF 0.4 pF
![Page 52: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/52.jpg)
52
Review: Skew Impact
F1 F2
clk
clk clk
Combinational Logic
Tc
Q1 D2
Q1
D2
tskew
CL
Q1
D2
F1
clk
Q1
F2
clk
D2
clk
tskew
tsetup
tpcq
tpdq
tcd
thold
tccq
( )setup skew
sequencing overhead
hold skew
pd c pcq
cd ccq
t T t t t
t t t t
≤ − + +
≥ − +
Ideally full cycle is available for work Skew adds sequencing overhead Increases hold time too
![Page 53: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/53.jpg)
53
Solutions
Reduce clock skew Careful clock distribution network design Plenty of metal wiring resources
Analyze clock skew Only budget actual, not worst case skews Local vs. global skew budgets
Tolerate clock skew Choose circuit structures insensitive to skew
![Page 54: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/54.jpg)
54
Clock Dist. Networks
Ad hoc Grids H-tree Hybrid
![Page 55: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/55.jpg)
55
Clock Grids
Use grid on two or more levels to carry clock Make wires wide to reduce RC delay Ensures low skew between nearby points But possibly large skew across die
![Page 56: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/56.jpg)
56
Alpha Clock Grids
![Page 57: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/57.jpg)
57
H-Trees
Fractal structure Gets clock arbitrarily close to any point Matched delay along all paths
Delay variations cause skew A and B might see big skew A B
![Page 58: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/58.jpg)
58
Itanium 2 H-Tree
Four levels of buffering: Primary driver Repeater Second-level clock buffer Gater
Route around obstructions
![Page 59: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/59.jpg)
59
Hybrid Networks
Use H-tree to distribute clock to many points Tie these points together with a grid
Ex: IBM Power4, PowerPC
H-tree drives 16-64 sector buffers Buffers drive total of 1024 points All points shorted together with grid
![Page 60: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/60.jpg)
![Page 61: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/61.jpg)
61
Self-timed and Asynchronous Design Functions of clock in synchronous design
Acts as completion signal Ensures the correct ordering of events
Truly asynchronous design Ordering of events is implicit in logic Completion is ensured by careful timing analysis
Self-timed design Completion ensured by completion signal Ordering imposed by handshaking protocol
![Page 62: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/62.jpg)
62
Synchronous Datapath
Source from : McLaughlin
![Page 63: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/63.jpg)
63
Self-Timed Pipelined Datapath
Source from : McLaughlin
![Page 64: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/64.jpg)
64
Hand-Shaking Protocol
![Page 65: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/65.jpg)
65
Event Logic – The Muller-C Element
![Page 66: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/66.jpg)
66
2-Phase Handshake Protocol
Advantage : FAST - minimal # of signaling events (important for global interconnect)
Disadvantage : edge - sensitive, has state
![Page 67: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/67.jpg)
67
Example: Self-timed FIFO
All 1s or 0s -> pipeline empty Alternating 1s and 0s -> pipeline full
![Page 68: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/68.jpg)
68
2-Phase Protocol
![Page 69: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/69.jpg)
69
Example
![Page 70: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/70.jpg)
70
Example
![Page 71: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/71.jpg)
71
Example
![Page 72: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/72.jpg)
72
Example
![Page 73: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/73.jpg)
73
4-Phase Handshake Protocol
Source from : McLaughlin
![Page 74: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/74.jpg)
74
4-Phase Handshake Protocol
![Page 75: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/75.jpg)
75
Self-Resetting Logic
![Page 76: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/76.jpg)
76
Asynchronous-Synchronous Interface
![Page 77: IEE5043 Spring 2016 數位積體電路 · 1 Part 7 Special-Purpose Subsystems Lecture 25 : Clock Subsystems IEE5043 Spring 2016 數位積體電路 Digital Integrated Circuits . Professor](https://reader033.vdocuments.net/reader033/viewer/2022060823/609c17371665fe573e751db7/html5/thumbnails/77.jpg)
77
Synchronizers and Arbiters Arbiter: Circuit to decide which of 2 events occurred first Synchronizer: Arbiter with clock φ as one of the inputs Problem: Circuit HAS to make a decision in limited time
which decision is not important Caveat: It is impossible to ensure correct operation But, we can decrease the error probability at the expense of
delay