Professional Documents
Culture Documents
Clocking: Figure by MIT OCW
Clocking: Figure by MIT OCW
2/18/05
L06 Clocks
Inputs
Combinational Logic
Outputs
Want to reuse
combinational logic
from cycle to cycle
6.884 - Spring 2005
2/18/05
L06 Clocks
Also need convention for when its safe to send another value
synchronous systems, on next clock edge (after hold time)
asynchronous systems, acknowledge signal from receiver
Data
Data
Ready
Acknowledge
Clock
Synchronous
6.884 - Spring 2005
Asynchronous
2/18/05
L06 Clocks
Large Systems
Clock
domain 1
Chip A
Clock
domain 2
Clock
domain 6
Asynch. Chip C
channel
Clock
domain 5
Clock
domain 4
Chip B
2/18/05
L06 Clocks
data passes through when clock high, latched when clock low
D
Clock
D
Q
Clock
Transparent
Latched
Q
Clock
Clock
D
Q
2/18/05
L06 Clocks
Building a Latch
0
1
CLK
CLK
Optional
input buffer
D
CLK
D
CLK
Q
Optional
output buffer
L06 Clocks
Clocked CMOS
(C2MOS)
feedback
inverter
CLK
CLK
CLK
CLK
D
Q
CLK
Q
D
CLK
2/18/05
Pulldown
stack
overpowers
cross-coupled
inverters
L06 Clocks
Clock
Tsetup
Thold
Q
TCQmin
TCQmax
TDQmin
TDQmax
TCQmin/TCQmax
TDQmin/TDQmax
Tsetup/Thold
2/18/05
L06 Clocks
CLK
CLK
CLK
D
Q
CLK
2/18/05
L06 Clocks
Failing Setup
CLK
CLK
CLK
D
Q
CLK
2/18/05
L06 Clocks
10
CLK
CLK
CLK
D
Q
CLK
Hold time represents the race for clock to close the input
gate before next cycles data disturbs the stored value.
(Here were rooting for the clock signal)
6.884 - Spring 2005
2/18/05
L06 Clocks
11
CLK
CLK
CLK
D
Q
CLK
2/18/05
L06 Clocks
12
Flip-Flops
CLK
Master
Transparent
Slave
Latched
Master
Latched
Master
Transparent
Slave
Slave
Transparent Latched
CLK
2/18/05
L06 Clocks
13
Flip-Flop Designs
CLK
CLK
CLK
CLK
CLK
CLK
CLK
CLK
D
CLK
CLK
2/18/05
L06 Clocks
14
Clock
Tsetup
Thold
TCQmin
TCQmax
TCQmin/TCQmax
Tsetup/Thold
2/18/05
L06 Clocks
15
TPmin/TPmax
Combinational
Logic
CLK
2/18/05
L06 Clocks
16
Clock Distribution
Central
Clock
Driver
Variations in local clock
load, local power supply,
local gate length and
threshold, local
temperature
6.884 - Spring 2005
Difference in
clock arrival time
is clock skew
Local
Clock
Buffers
2/18/05
L06 Clocks
17
Clock Grids
together.
2/18/05
L06 Clocks
18
H-Trees
Uses much less power than grid, but has more skew
In practice, an approximate H-tree is used at the top
level (has to route around functional blocks), with local
clock buffers driving regions
6.884 - Spring 2005
2/18/05
L06 Clocks
19
Clock Oscillators
2/18/05
L06 Clocks
20
Clock Crystals
2/18/05
L06 Clocks
21
External Clock
Frequency
+/Phase
Oscillator
Comparator
Circuit
Generated Clock
2/18/05
L06 Clocks
22
Frequency
+/Phase
Oscillator
Comparator
Circuit
Divide by N
2/18/05
L06 Clocks
23
Global Distribution
Regional Distribution
GCLK
Reference
clock
DSK
Local Distribution
Regional Grid
RCD
CLKP
CLKN
VCC/2
PLL
DSK
Main clock
DSK
RCD
DLCLK
OTB
2/18/05
L06 Clocks
24
2/18/05
L06 Clocks
25
2/18/05
L06 Clocks
26
Timing Revisited
TPmin/TPmax
Combinational
Logic
CLK1
CLK2
2/18/05
L06 Clocks
27