Download presentation
Presentation is loading. Please wait.
Published byCharla Curtis Modified over 8 years ago
1
EE141 Timing Issues 1 Chapter 10 Timing Issues Rev.1.0 05/11/2003
2
EE141 Timing Issues 2 Synchronous Timing
3
EE141 Timing Issues 3 Latch Parameters D Clk Q D Q t c-q t hold PW m t su t d-q Delays can be different for rising and falling data transitions T
4
EE141 Timing Issues 4 Register Parameters D Clk Q D Q t c-q t hold T t su Delays can be different for rising and falling data transitions
5
EE141 Timing Issues 5 Clock Uncertainties Sources of clock uncertainty
6
EE141 Timing Issues 6 Clock Nonidealities Clock skew Spatial variation in temporally equivalent clock edges; deterministic + random, t SK Clock jitter Temporal variations in consecutive edges of the clock signal; modulation + random noise Cycle-to-cycle (short-term) t JS Long term t JL Variation of the pulse width Important for level sensitive clocking
7
EE141 Timing Issues 7 Clock Skew and Jitter Both skew and jitter affect the effective cycle time Only skew affects the race margin Clk t SK t JS
8
EE141 Timing Issues 8 Clock Skew # of registers Clk delay Insertion delay Max Clk skew Earliest occurrence of Clk edge Nominal – /2 Latest occurrence of Clk edge Nominal + /2
9
EE141 Timing Issues 9 Positive and Negative Skew
10
EE141 Timing Issues 10 Positive Skew Launching edge arrives before the receiving edge
11
EE141 Timing Issues 11 Negative Skew Receiving edge arrives before the launching edge
12
EE141 Timing Issues 12 Timing Constraints Minimum cycle time: T - = t c-q + t su + t logic Worst case is when receiving edge arrives early (positive )
13
EE141 Timing Issues 13 Timing Constraints Hold time constraint: t (c-q, cd) + t (logic, cd) > t hold + Worst case is when receiving edge arrives late Race between data and clock
14
EE141 Timing Issues 14 Impact of Jitter
15
EE141 Timing Issues 15 Longest Logic Path in Edge-Triggered Systems Clk T T SU T Clk-Q T LM Latest point of launching Earliest arrival of next cycle T JI +
16
EE141 Timing Issues 16 Clock Constraints in Edge-Triggered Systems If launching edge is late and receiving edge is early, the data will not be too late if: Minimum cycle time is determined by the maximum delays through the logic T c-q + T LM + T SU < T – T JI,1 – T JI,2 - T c-q + T LM + T SU + + 2 T JI < T Skew can be either positive or negative
17
EE141 Timing Issues 17 Shortest Path Clk T Clk-Q T Lm Earliest point of launching Data must not arrive before this time Clk THTH Nominal clock edge
18
EE141 Timing Issues 18 Clock Constraints in Edge-Triggered Systems Minimum logic delay If launching edge is early and receiving edge is late: T c-q + T LM – T JI,1 < T H + T JI,2 + T c-q + T LM < T H + 2T JI +
19
EE141 Timing Issues 19 How to counter Clock Skew?
20
EE141 Timing Issues 20 Flip-Flop – Based Timing Flip -flop Logic Flip-flop delay Skew Logic delay T SU T Clk-Q Representation after M. Horowitz, VLSI Circuits 1996.
21
EE141 Timing Issues 21 Flip-Flops and Dynamic Logic Logic delay T SU T Clk-Q Logic delay T SU T Clk-Q Precharge Evaluate Precharge Flip-flops are used only with static logic
22
EE141 Timing Issues 22 Latch timing D Clk Q t D-Q t Clk-Q When data arrives to transparent latch When data arrives to closed latch Data has to be ‘re-launched’ Latch is a ‘soft’ barrier
23
EE141 Timing Issues 23 Single-Phase Clock with Latches Latch Logic Clk P PW T skl T skt
24
EE141 Timing Issues 24 Latch-Based Design L1 Latch Logic L2 Latch L1 latch is transparent when = 0 L2 latch is transparent when = 1
25
EE141 Timing Issues 25 Slack-borrowing
26
EE141 Timing Issues 26 Latch-Based Timing L1 Latch Logic L2 Latch L1 latch L2 latch Skew Can tolerate skew! Long path Short path Static logic
27
EE141 Timing Issues 27 Clock Distribution Clock is distributed in a tree-like fashion H-tree
28
EE141 Timing Issues 28 More realistic H-tree [Restle98]
29
EE141 Timing Issues 29 The Grid System No rc-matching Large power
30
EE141 Timing Issues 30 Example: DEC Alpha 21164
31
EE141 Timing Issues 31 21164 Clocking 2 phase single wire clock, distributed globally 2 distributed driver channels Reduced RC delay/skew Improved thermal distribution 3.75nF clock load 58 cm final driver width Local inverters for latching Conditional clocks in caches to reduce power More complex race checking Device variation t rise = 0.35ns t skew = 150ps t cycle = 3.3ns Clock waveform Location of clock driver on die pre-driver final drivers
32
EE141 Timing Issues 32
33
EE141 Timing Issues 33 Clock Skew in Alpha Processor
34
EE141 Timing Issues 34 2 Phase, with multiple conditional buffered clocks 2.8 nF clock load 40 cm final driver width Local clocks can be gated “off” to save power Reduced load/skew Reduced thermal issues Multiple clocks complicate race checking t rise = 0.35nst skew = 50ps t cycle = 1.67ns EV6 (Alpha 21264) Clocking 600 MHz – 0.35 micron CMOS Global clock waveform
35
EE141 Timing Issues 35 21264 Clocking
36
EE141 Timing Issues 36 EV6 Clock Results GCLK Skew (at Vdd/2 Crossings) ps 5 10 15 20 25 30 35 40 45 50 ps 300 305 310 315 320 325 330 335 340 345 GCLK Rise Times (20% to 80% Extrapolated to 0% to 100%)
37
EE141 Timing Issues 37 EV7 Clock Hierarchy + widely dispersed drivers + DLLs compensate static and low- frequency variation + divides design and verification effort - DLL design and verification is added work + tailored clocks Active Skew Management and Multiple Clock Domains
38
EE141 Timing Issues 38 Self-timed and Asynchronous Design Functions of clock in synchronous design 1) Acts as completion signal 2) Ensures the correct ordering of events Truly asynchronous design 2) Ordering of events is implicit in logic 1) Completion is ensured by careful timing analysis Self-timed design 1) Completion ensured by completion signal 2) Ordering imposed by handshaking protocol
39
EE141 Timing Issues 39 Synchronous Pipelined Datapath
40
EE141 Timing Issues 40 Self-Timed Pipelined Datapath Check Textbook for details!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.