Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches...

38
DM, Tardor 2004 1 Disseny de registres Rosa M. Badia Ramon Canal DM Tardor 2004

Transcript of Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches...

Page 1: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 1

Disseny de registres

Rosa M. BadiaRamon Canal

DMTardor 2004

Page 2: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 2

Tipus d’elements de memòria• Utilitzats per emmagatzemar informació binària

(registres).• Depenen de la sincronització amb el rellotge:

– Flip-flop: sincronitzat per flanc– Latch: sincronitzat per nivell– Pulse-mode– Asíncrons (sense rellotge)

• Varietat en la seva implementació:– Velocitat– Càrrega sobre el rellotge– Estàtics / dinàmics

Page 3: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 3

Latches vs Flip-flops• Latches

– level sensitive circuit that passes inputs to Q when the clock is high (or low) - transparent mode

– input sampled on the falling edge of the clock is held stable when clock is low (or high) - hold mode

• Flip-flops (edge-triggered)– edge sensitive circuits that sample the inputs on a

clock transition• positive edge-triggered: 0 → 1• negative edge-triggered: 1 → 0

– built using latches (e.g., master-slave flipflops)

Page 4: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 4

Flip-flop tipus D• Emmagatzema una dada en el flanc descendent del rellotge:

– tsetup : temps abans del flanc de rellotge en que les dades han d’estar estables

– thold : temps després del rellotge en que les dades s’han de mantenir estables

– td-q : temps de propagació

D Qclk

Clk

D

Q

tsetup thold

td-q

Page 5: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 5

Flip-flop tipus D estàtic• Estructura Master-Slave estàtica

D Qclk

Master Slave

Page 6: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 6

Flip-flop tipus D estàtic• Master: transparent• Slave: emmagatzema un dada

D Qclk

110

0 1 1

X 0

0 X

Page 7: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 7

Flip-flop tipus D estàtic• Master: emmagatzema un dada• Slave: transparent

D Qclk

10

0 1 1

0 X

X 1

Page 8: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 8

Flip-flop tipus D estàtic• Master: emmagatzema un dada• Slave: transparent

D Qclk

00

0 1 0

0 X

X 1

0

Page 9: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 9

Flip-flop tipus D estàtic• Master: transparent• Slave: emmagatzema un dada

D Qclk

00

0 1 0

X 1

0 X

Page 10: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 10

Flip-flop tipus D estàtic• Podem eliminar una porta de pas• L’inversor que implementa el feedback ha de ser

“weak”

Page 11: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 11

Flip-flop tipus D estàtic• Podem eliminar una porta de pas• L’inversor que implementa el feedback ha de ser

“weak”

• L’inversor weak ha de posar menys corrent que l’entrada

Page 12: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 12

Flip-flop tipus D alternatiu• Evita utilitzar les portes de pas• Les substitueix per portes tri-state

Page 13: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 13

Flip-flop tipus D alternatiu• Evita utilitzar les portes de pas• Les substitueix per portes tri-state

01

1

11 0

0X

Page 14: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 14

Flip-flop tipus D alternatiuC2 MOS• Clocked CMOS, evita utilitzar les portes de pas• Les substitueix per portes tri-state

00

0 0

1 01X

Page 15: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 15

Flip-flop tipus D dinàmic• Emmagatzema una dada a la capacitat

d’entrada de l’inversor• Requereix una freqüència mínima d’operació

1

0 0 1

Page 16: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 16

Flip-flop tipus D dinàmic• Emmagatzema una dada a la capacitat

d’entrada de l’inversor• Requereix una freqüència mínima d’operació

0

1 0 1

Page 17: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 17

Flip-flop tipus D dinàmic• Estructura Master-Slave

D Qclk

Page 18: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 18

Flip-flop tipus D dinàmic• Master: transparent• Slave: emmagatzema una dada

D Qclk

110

0 10 1 0X

Page 19: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 19

Flip-flop tipus D dinàmic• Master: transparent• Slave: emmagatzema un dada

D Qclk

10

0 10 1 1X

Page 20: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 20

Flip-flop tipus D dinàmic• Master: emmagatzema una dada • Slave: transparent

D Qclk

00

0 00 1 1X

0

Page 21: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 21

Flip-flop tipus D dinàmic• Master: transparent• Slave: emmagatzema una dada

D Qclk

00

0 00 1 1X

Page 22: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 22

Latch tipus D• emmagatzema una dada en el nivelll negatiu del

relllotge:– thold: dades estables després de la fase transparent– tlatch: temps de propagació

D Qclk

Clk

D

Q

thold

tlatch

transparent Opac

Page 23: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 23

Latch tipus D• emmagatzema una dada en el nivell negatiu del

rellotge:– thold: dades estables després de la fase transparent– tlatch: temps de propagació– tsetup: dades estables abans de la fase opaca

D Qclk

Clk

D

Q

thold

tlatch

transparent Opaco

tsetup

Page 24: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 24

Latch tipus D estàtic• Utilitza el mateix esquema que el flip-flop.

0 1

X

0 0

transparent

Page 25: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 25

Latch tipus D estàtic• Utilitza el mateix esquema que el flip-flop.

1 1

0

X 0

Opaco

Page 26: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 26

Latch tipus D dinàmic C2MOS• Permet un millor control del node intern que

emmagatzema el valor en el latch.

Page 27: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 27

Latch tipus D dinàmic (Alpha 21064)• Nombre de transistors reduït (actiu amb Clk = 1)

0

1

1 0

X

1

Page 28: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 28

Latch tipus D dinàmic (Alpha 21064)

• Nombre de transistors reduït (actiu amb Clk = 1)

1

1

0 1

X

0

Page 29: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 29

Latch tipus D dinàmic (Alpha 21064)

• Nombre de transistors reduït (actiu amb Clk = 1)

1

0

X 1

X

0

Page 30: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 30

Latch tipus D dinàmic (Alpha 21064)

• Nombre de transistors reduït (actiu amb Clk = 1)

0

0

1 1

X

1

Page 31: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 31

Power PC Flipflop

D Q

clk

!clk

!clk

clk

01

10 1

!clk

clk

Page 32: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 32

Power PC Flipflop

D Q

clk

!clk

!clk

clk

01

10 1

!clk

clk

master transparentslave hold

master holdslave transparent

→0→1 →0 →1

Page 33: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 33

Pulsed FF (AMD-K6)Pulse registers - a short pulse (glitch clock) is generated locally from the rising (or falling) edge of the system clock and is used as the clock input to the flipflop

race conditions are avoided by keeping the transparent mode time very short (during the pulse only)advantage is reduced clock load; disadvantage is substantial increase in verification complexity

clk

D

Q

M1

M2

M3

M4

M5

M6

P1

P2

P3X

!clkd

0 ONVdd

OFF OFF

11 0ON

1/0ON/OFF

0/Vdd ON/OFF

1/0

0 OFF

1

1OFF

ON ON

ON

Page 34: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 34

Sense Amp FF (StrongArm SA100)

clk

D

Q

!Q

M1

M2

M3

M5

M6

M4

M9

M7

M8

M10

Sense amplifier (circuits that accept small swing input signals and amplify them to full rail-to-rail signals) flipflops

advantages are reduced clock load and that it can be used as a receiver for reduced swing differential buses

0

0

1

1

1

1

1

0

1

0

1

Page 35: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 35

Flipflop Comparison Chart

203 (clk)SenseAmpSA 100

195 (clk)DynamicAMD K6

102 (clk)DynamicS-O TSPC

3tpinvtpinvtpinv114 (clk)DynamicTSPC

2tpinv+tptx

tpinv+tptx

tpFF

84 (clk-!clk)DynamicC2MOS

to1-1tptx84 (clk-!clk)DynamicT-gate

168 (clk1-clk2)Ps-Static2-phase

168 (clk-!clk)StaticPowerPC

03tpinv+tptx208 (clk-!clk)StaticMux

tholdtset-up#tr#clk ldTypeName

Page 36: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 36

Conclusions• Elements de memòria per emmagatzemar

informació en el data-path dels processadors• Diferents tipus de bistables segons l'estratègia de

“clocking”.– Master-slave.– Dinàmics / estàtics.

• Els bistables necessiten un caracteritzacióespecial:

– temps de hold.– temps de setup.– temps de latch.

Page 37: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 37

Bancs de registres

Banc de registres

WDWA

RD0

RD1RA0

RA1

ctl clk

Page 38: Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches vs Flip-flops ... Sense Amp FF (StrongArm SA100) clk D Q!Q M 1 M 2 M 3 M 5 M 6 M

DM, Tardor 2004 38

Bancs de registres• Descodificador d’escriptura: com els

descodificadors de fila de les RAM• Descodificadors de lectura: com els

descodificadors de columna de les RAM – Per exemple, en arbre