Sie sind auf Seite 1von 23

EE141

EE141 EECS141

Lecture #19

!! Project

Phase 2 now on the web-site. !! Hw 6 due today. !! New homework to be posted in a week. !! Cory Hall closed on Monday (Power Outage)
"! Instructional computers in 353 Cory should come back on line on Tu. !! Enjoy

Spring Break!

EE141 EECS141

Lecture #19

EE141

!! Last

lecture lecture (Ch 10)

"! Registers
!! Todays

"! Timing
!! Reading

EE141 EECS141

Lecture #19

EE141 EECS141

Lecture #16

EE141

#! Latch: level-sensitive
clock is low - hold mode clock is high - transparent
D Q Clk Clk D Q
EE141 EECS141

#! Register: edge-triggered
stores data when clock rises
D Q Clk Clk D Q
Lecture #16 5

EE141 EECS141

Lecture #16

EE141

D Q Clk T Clk D tclk-q PWm thold tsetup td-q

Q Delays can be different for rising and falling data transitions


EE141 EECS141

Lecture #16

D Q Clk T Clk D tsetup Q tclk-q Delays can be different for rising and falling data transitions
EE141 EECS141

thold

Lecture #16

EE141

tclk-q,min tsetup, thold

tclk-q

tlogic tlogic,min

EE141 EECS141

Lecture #16

tclk-q tclk-q,min tsetup, thold

tlogic,min

tlogic

Cycle time (max): TClk > tclk-q + tlogic + tsetup Race margin (min): thold < tclk-q,min + tlogic,min
EE141 EECS141

Lecture #16

10

EE141

!! Clock

skew jitter

"! Spatial variation in temporally equivalent clock edges; deterministic + random, tSK
!! Clock

"! Temporal variations in consecutive edges of the clock signal; modulation + random noise "! Cycle-to-cycle (short-term) tJS "! Long term tJL
!! Variation

of the pulse width

"! Important for level sensitive clocking


EE141 EECS141

Lecture #16

11

Sources of clock uncertainty

EE141 EECS141

Lecture #16

12

EE141

Clk
tSK

Clk

tJS

!! Both

skew and jitter affect the effective cycle time and the race margin

EE141 EECS141

Lecture #16

13

# of registers Earliest occurrence Latest occurrence of Clk edge of Clk edge Nominal !/2 Nominal + ! /2

Insertion delay Max Clk skew

Clk delay

EE141 EECS141

Lecture #16

14

EE141

EE141 EECS141

Lecture #16

15

Launching edge arrives before the receiving edge

EE141 EECS141

Lecture #16

16

EE141

TCLK - ! CLK1 1 TCLK 3

CLK2

Receiving edge arrives before the launching edge

EE141 EECS141

Lecture #16

17

tclk-q,min tsetup, thold

tclk-q

tlogic tlogic,min

Minimum cycle time: Tclk + ! = tclk-q + tsetup + tlogic


Worst case is when receiving edge arrives early (negative !)
EE141 EECS141

Lecture #16

18

EE141

tclk-q tclk-q,min tsetup, thold

tlogic,min

tlogic

Hold time constraint: t(clk-q,min) + t(logic,min) > thold + !


Worst case is when receiving edge arrives late Race between data and clock
EE141 EECS141

Lecture #16

19

tsetup Clk tclk-Q tlogic TCLK

tJS - !

"

Latest point of launching

Earliest arrival of next cycle

EE141 EECS141

Lecture #16

20

10

EE141

If launching edge is late and receiving edge is early, the data will not be too late if:

tclk-q + tlogic + tsetup < TCLK tJS,1 tJS,2 + !"


Minimum cycle time is determined by the maximum delays through the logic

tclk-q + tlogic + tsetup - ! + 2tJS < TCLK


Skew can be either positive or negative
EE141 EECS141

Lecture #16

21

Earliest point of launching

Clk tclk-q,min Clk

tlogic,min

thold
Data must not arrive before this time

Nominal clock edge

EE141 EECS141

Lecture #16

22

11

EE141

If launching edge is early and receiving edge is late:

tclk-q,min + tlogic,min tJS,1 > thold + tJS,2 + !"


Minimum logic delay

tclk-q,min + tlogic,min > thold + 2tJS+ !"


(This assumes jitter at launching and receiving clocks are independent which usually is not true)
EE141 EECS141

Lecture #16

23

EE141 EECS141

Lecture #16

24

12

EE141

Reference

Pipelined

EE141 EECS141

Lecture #16

25

(Domino logic almost always uses latch-based clocking)

EE141 EECS141

Lecture #16

26

13

EE141

!! In

a flip-flop based system:


! And must arrive before next rising edge

"! Data launches on one rising edge "! If data arrives late, system fails
! If it arrives early, wasting time

"! Flip-flops have hard edges


!! In

a latch-based system:
! As long as each loop finished in one cycle

"! Data can pass through latch while it is transparent "! Long cycle of logic can borrow time into next cycle

EE141 EECS141

Lecture #16

27

EE141 EECS141

Lecture #16

28

14

EE141

!! Flip-flops

generally easier to use

"! Most digital ASICs designed with register-based timing


!! But,

latches (both pulsed and level-sensitive) allow more flexibility


"! And hence can potentially achieve higher performance "! Latches can also be made more tolerant of clock un-certainty "! More in EE241

EE141 EECS141

Lecture #16

29

EE141 EECS141

Lecture #16

30

15

EE141

!! Make

things cheaper:

"! Want to sell more functions (transistors) per chip for the same money "! Or build same products cheaper "! Price of a transistor has to be reduced
!! But

also want to be faster, smaller, lower power

EE141 EECS141

Lecture #16

31

!! Benefits

of 30% Dennard scaling (1974):

"! Double transistor density "! Reduce gate delay by 30% (increase operating frequency by 43%) "! Reduce energy per transition by 65% (50% power savings @ 43% increase in frequency)
!! Die

size used to increase by 14% per generation (not any more) !! Technology generation spans 2-3 years
EE141 EECS141

Lecture #16

32

16

EE141

EE141 EECS141

Lecture #16

33

2X reduction every ~5 years

EE141 EECS141

Lecture #16

34

17

EE141

EE141 EECS141

Lecture #16

35

tp decreases by 30%/year f increases by 43%

EE141 EECS141

Lecture #16

36

18

EE141

From Kuroda
EE141 EECS141

Lecture #16

37

Full Scaling (Constant Electrical Field)


ideal model dimensions and voltages scale together by the same factor S

Fixed Voltage Scaling


most common model until 1990s only dimensions scale, voltages remain constant

General Scaling
most realistic for todays situation voltages and dimensions scale with different factors

EE141 EECS141

Lecture #16

38

19

EE141

EE141 EECS141

Lecture #16

39

!! W,

L, tox: 1/S !! VDD, VT: 1/S


!! Area:

WL !! Cox: 1/tox !! CL: CoxWL !! ID: Cox(W/L)(VDD-VT)2 !! Req: VDD/IDSAT


EE141 EECS141

Lecture #16

40

20

EE141

!! W,

L, tox: 1/S !! VDD, VT: 1/S


!! tp:

ReqCL !! Pavg: CLVDD2/tp !! Pavg/A: CoxVDD2/tp

EE141 EECS141

Lecture #16

41

EE141 EECS141

Lecture #16

42

21

EE141

!! W,

L, tox: 1/S !! VDD, VT: 1/S


!! Area:

WL !! Cox: 1/tox !! CL: CoxWL !! ID: WCoxvsat(VDD-VT-VVSAT/2) !! Req: VDD/IDSAT


EE141 EECS141

Lecture #16

43

!! W,

L, tox: 1/S !! VDD, VT: 1/S


!! tp:

ReqCL !! Pavg: CLVDD2/tp !! Pavg/A: CoxVDD2/tp

EE141 EECS141

Lecture #16

44

22

EE141

EE141 EECS141

Lecture #16

45

!! What

will did cause this model to break?

"! Leakage set by kT/q


! Temp. does not scale ! VT set to minimize power

"! Power actually increased


! Leakage increased drastically ! f increased faster than device speed ! Hit cooling limit

"! Process Variation


! Hard to build very small things accurately (less averaging)
EE141 EECS141

Lecture #16

46

23

Das könnte Ihnen auch gefallen