Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches...
Transcript of Rosa M. Badia Ramon Canal DM Tardor 2004docencia.ac.upc.edu/FIB/grau/VLSI/registres.pdf · Latches...
DM, Tardor 2004 1
Disseny de registres
Rosa M. BadiaRamon Canal
DMTardor 2004
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
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)
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
DM, Tardor 2004 5
Flip-flop tipus D estàtic• Estructura Master-Slave estàtica
D Qclk
Master Slave
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
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
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
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
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”
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
DM, Tardor 2004 12
Flip-flop tipus D alternatiu• Evita utilitzar les portes de pas• Les substitueix per portes tri-state
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
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
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
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
DM, Tardor 2004 17
Flip-flop tipus D dinàmic• Estructura Master-Slave
D Qclk
DM, Tardor 2004 18
Flip-flop tipus D dinàmic• Master: transparent• Slave: emmagatzema una dada
D Qclk
110
0 10 1 0X
DM, Tardor 2004 19
Flip-flop tipus D dinàmic• Master: transparent• Slave: emmagatzema un dada
D Qclk
10
0 10 1 1X
DM, Tardor 2004 20
Flip-flop tipus D dinàmic• Master: emmagatzema una dada • Slave: transparent
D Qclk
00
0 00 1 1X
0
DM, Tardor 2004 21
Flip-flop tipus D dinàmic• Master: transparent• Slave: emmagatzema una dada
D Qclk
00
0 00 1 1X
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
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
DM, Tardor 2004 24
Latch tipus D estàtic• Utilitza el mateix esquema que el flip-flop.
0 1
X
0 0
transparent
DM, Tardor 2004 25
Latch tipus D estàtic• Utilitza el mateix esquema que el flip-flop.
1 1
0
X 0
Opaco
DM, Tardor 2004 26
Latch tipus D dinàmic C2MOS• Permet un millor control del node intern que
emmagatzema el valor en el latch.
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
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
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
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
DM, Tardor 2004 31
Power PC Flipflop
D Q
clk
!clk
!clk
clk
01
10 1
!clk
clk
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
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
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
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
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.
DM, Tardor 2004 37
Bancs de registres
Banc de registres
WDWA
RD0
RD1RA0
RA1
ctl clk
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