Departamento de ElectrónicaElectrónica Digital
Facultad de IngenieríaBioingeniería
Universidad Nacional de Entre Ríos
Latches, flipflops y registros
1
Circuitos secuenciales
2
Circuitos secuencialesSalida = F(entrada actual, estado anterior)
Máquinas de estado finitoUn circuito con n variables de estado tiene un número finito (2n) de estados posibles.
Estado de un circuito secuencial: es una colección de variables de estado
• Las variables de estado son valores binarios.
• Contienen toda la información acerca del pasado necesario para explicar el comportamiento futuro del circuito.
• Las variables de estado son valores binarios.
• Contienen toda la información acerca del pasado necesario para explicar el comportamiento futuro del circuito.
3
Reloj (Clock, CK, CLK)
Los cambios de estado de los circuitos secuenciales se presentan en tiempos especificados por una señal de funcionamiento libre.
Latchs y flip-flops
4
Flip-flop o biestableDispositivo secuencial que muestrea sus entradas y cambia sus salidas solamente en ocasiones determinadas por una señal de reloj.Los flancos de la señal de reloj son los instantes de cambio.
LatchDispositivo secuencial que monitorea sus entradas continuamente y modifica sus salidas en cualquier momento, de manera independientede una señal de reloj.Suele existir una señal habilitadora activa por nivel durante el cual cambia su salida.
Elementos biestables: ¿cómo almacenar un bit?
5
No se puede cambiar (controlar) el estado del circuito
6
0
Q
QN
0
0
Q
QN
LatchLatch
¿Cómo cambiar (controlar) el estado?
7
R reset
S set
Q
QN
0
0
El estadose mantiene
Funcionamiento
R = 0S = 0R = 0S = 0
8
R reset
S
Q
QN
1
01
0 La salida Q pasa a 0(el latch se resetea)
R = 1S = 0R = 1S = 0
9
R
S set
Q
QN
0
10
1 La salida Q pasa a 1 (El latch se setea)
R = 0S = 1R = 0S = 1
10
R
S
Q
QN
1
10
0Estado ‘ambiguo’
R = 1S = 1R = 1S = 1
Latch S-R con compuertas NOR
11
Símbolos
12
Diagrama de tiempos
13
Parámetros de temporización
• tpLH, tpHL: retardos de propagación de las entradas de control.
• tpw(min): mínimo ancho de pulso de una entrada de control.
Estado metaestable:No se cumple el
mínimo ancho de pulso
TecnologíaTecnología
15
TecnologíaTecnología
Latch S-R con compuertas NAND
16
AB
Z
El nivel de activación de las entradas de control Set y Reset es LEl nivel de activación de las entradas de control Set y Reset es L
17
Ejemplo de aplicación: Circuito anti-rebote de pulsadores / llaves
AplicacionesAplicaciones
18
Llave en Pos. 1
Primer contacto en Pos. 2
Rebotes
Pos. 1
Pos. 2
SWU_L SWD_L
Q
QN
AplicacionesAplicaciones
19
Ejemplo de aplicación: Control de motor
AplicacionesAplicaciones
20
Ejemplo de aplicación: Control de motor
AplicacionesAplicaciones
Latch NAND S-R con entrada de habilitación
21
E: EnableE: Enable
¿Cuál es ahora el nivel activo de las entradas Set y Reset?
¿Qué función equivalente tienen las NAND del circuito de entrada cuando C = 1?
¿Cuál es ahora el nivel activo de las entradas Set y Reset?
¿Qué función equivalente tienen las NAND del circuito de entrada cuando C = 1?
22
Funcionamiento
Estado metaestable:Se deshabilita el latch
con S y R activas
Estado metaestable:Se deshabilita el latch
con S y R activas
23
Latch D (cerrojo D)• Latches SR: aplicaciones de control como indicador o bandera (flag)• Latch D: una sola entrada de control (D)
• almacenamiento de bits• elimina la ambigüedad
24
transparente “trabado”(latcheado)
Diagrama de tiempos (para C activo por nivel alto)
transparente “trabado”(latcheado)
transparente
El latch copia y almacena el estado de D cuando C = 1
El latch copia y almacena el estado de D cuando C = 1
25
Parámetros de temporización
• tP retardos de propagación: para C y D ref (1) a (5)
• tsetup tiempo de establecimiento: mínimo tiempo que D debe estar en nivel estable antes de que ocurra la transición en C.
• thold tiempo de retención: mínimo tiempo que D debe estar en nivel estable después de que ocurra la transición en C.
Estado metaestable:Cambia D durante tH y tS
Estado metaestable:Cambia D durante tH y tS
TecnologíaTecnología
26
Flip-flop D
Diagrama de tiempos
El FF D copia y almacena el estado de D en cada flanco activo del reloj
El FF D copia y almacena el estado de D en cada flanco activo del reloj
27
Temporización
• tp tiempos de propagación• tsetup (setup time) tiempo de establecimiento: entre CLK y D• thold (hold time) tiempo de retención: entre CLK y D
Control
CLK
tS
CLK
Control
tH
TecnologíaTecnología
28
Flip-flop D con entradas asincrónicas• Entradas sincrónicas: dependientes de la señal de sincronización (CLK)
• entrada (D)
• Entradas asincrónicas: independientes de la señal de sincronización (CLK);
• PR - Preset o Set: pone a 1 la salida Q
• CLR - Clear o Reset: pone a 0 la salida Q
• Usadas en inicialización y prueba
Flip-flop J-K
30
• Dos señales de control: J y K• Sin estados ambiguos• Mayor versatilidad en el diseño; diseños más simples• Preferencia actual por FF-D por PLDs
31
Diagrama de tiempos
El FF JK “lee” sus entradas de control solo en los flancos activo del reloj
El FF JK “lee” sus entradas de control solo en los flancos activo del reloj
32
Tabla de verdad
CLK J K Q Q*
0 0 0 0 0 0 1 1
0 1 X 0 1 0 X 1
1 1 0 1 1 1 1 0
CLK J K Q*
0 X X Q1 X X Q 0 0 Q 0 1 0 1 0 1 1 1 QN
entradas salidaJ K Q D = Q*
0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 0
D Q
QCLK
Circuitocombinacional
JK
CLK
Q
Deducción de la expresión de D = f (Q, J, K)
Convención: Q* = “el siguiente valor de Q”Convención: Q* = “el siguiente valor de Q”
33
J K
00 01 11 10
0 0 0 1 11 1 0 0 1
Q* = D = ?
Q* = D = J . Q’ + K’ . Q
Q
Ecuación característica
entradas salidaJ K Q D = Q*
0 0 0 00 0 1 10 1 0 00 1 1 01 0 0 11 0 1 11 1 0 11 1 1 0
34
Flip-flop T (toggle)
CLK J K Q* 0 0 Q 0 1 0
1 0 1 1 1 Q’
CLK D Q Q* 1 1 0
0 0 1
• Conmuta con cada flanco activo del CLK • Se puede implementar con FF JK y FF D
37
Otros parámetros de sincronización
Frecuencia máxima de CLK, fCLK
The highest frequency at which a clock input of an integrated circuit can be driven, while maintaining proper operation.
Anchos de pulso, tW (CLK y entradas asincrónicas)The time interval between the specified reference points on the two transitions of the pulse waveform
Tiempos de transición del CLK (rise time / fall time) tr , tf
Fall time: The time interval between one reference point on a waveform and a second reference point of smaller magnitude on the same waveform.
Rise time: The time interval between one reference point on a waveform and a second reference point of greater magnitude on the same waveform.
Solid State Technology Association, (ex-JEDEC Joint Electron Device Engineering Council)
TecnologíaTecnología
38
Ejemplo de aplicación: Circuito de conteo binario (3 bits) y divisor de frecuencia
CLK o Reloj
Q0
Q1
Q2
Binario 000 001 010 011 100 101 110 111 000 001 010 011
Decimal 0 1 2 3 4 5 6 7 0 1 2 3
fQ0= fCLK/2
fQ1= fCLK/4
fQ2= fCLK/8
Q0 (LSB) Q1 Q2
“1”
CLKKCLKJ Q0
KCLKJ Q2
KCLKJ Q1
AplicacionesAplicaciones
41
Algunas formas comerciales de FFs
7474: doble FF D disparado por flanco
4013: doble FF-D activo por flanco positivo con Set y Reset
4027: doble FF-JK maestro-esclavo activo por flanco positivo c/ Set y Reset
74x109: FF J-K disparado por flanco positivo
doble FF-D disparado por flanco 7474 (TTL) 74C74 (CMOS)
tS 20 ns 60 nstH 5 ns 0 nstPLH CLK a Q 40 ns 200 nstPHLCLK a Q 25 ns 200 nstW(L)CLK 37 ns 100 nstW(H) CLK 30 ns 100 nsfmax 15 MHz 5 MHztW(L) (Set o Reset) 30 ns 60 ns
Formas comerciales
Formas comerciales
42
Resumen de lo visto hasta ahora
Tipos de latches y FFs: Latches RS NAND y NOR con y sin entrada de habilitación Latch D (cerrojo D) FFs D, JK y T
Tipos de entradas de control Entradas sincrónicas: D, J, K Entradas asincrónicas: SET (ó PRESET) y RESET (ó CLEAR)
Parámetros de temporización Tiempos de propagación tp Tiempos de mantenimiento (tS) y retención (tH) Frecuencia máxima (CLK, Enable) Tiempos de transición (tR y tF) Anchos de pulso mínimos (CLK y entradas asincrónicas)
Registros y latches de múltiples bits
43
Registro: arreglos de dos o más FF D con una entrada de reloj común.
• Registros de almacenamiento
• Registros de desplazamiento o corrimiento (shift registers)
Latch: arreglos de dos o más latches con una entrada de habilitación común.
Aplicaciones
• Almacenamiento de grupos de bits.
• Líneas de retardo de señales digitales.
• Operaciones aritméticas.
Registro de almacenamiento
44
Registro de almacenamiento de 4 bits
Dato de 4 bits
45
• 74x175: registro de almacenamiento de 4 bits
• 74x374: registro octal
• 74x373: latch octal
• 74x273: registro octal
• 74x377: registro octal con habilitación de clock
Formas comerciales
Formas comerciales
Registros de desplazamiento (Shift registers)
Clasificación según el tipo de entrada y salida
• Entrada serie y salida paralelo (SIPO serial input / parallel output)
• Entrada serie y salida serie (SISO serial input / serial output)
• Entrada paralelo y salida paralelo (PIPO parallel input / parallel output)
• Entrada paralelo y salida serie (PISO parallel input / serial output)
46
Registros con una arquitectura dispuesta para desplazar sus datos almacenados una posición por cada flanco activo de reloj.
CLK CLK CLK CLK
47
Registro de entrada serie y salida serie (SISO)
¿Cuántos TCLK deben pasar para tener el primer dato de entrada en SEROUT?
N FFs
48
Registro de entrada serie y salida paralelo (SIPO)
¿Cuántos TCLK deben pasar para tener un dato de N bits en las salidas?
N FFs
Diagrama de tiempos
49
Entrada serie
Reloj
Q2
Q1
Q3
Q0 (LSB)
Salidasparalelas
Datos paralelos0001 / 0010 / 0101 / 1010
Salida serie
50
Registro de entrada paralelo y salida serie (PISO)
0
0
0
1 0
1. Carga del dato paralelo
51
0
0
0
0
0
0
0
1
2. Desplazamiento serie
52
Registro de entrada paralelo y salida paralelo (PIPO)
Arquitectura PISO con una forma diferente de tomar los datos almacenados
53
Ejemplo de aplicación: Módulos de transmisión serial
PISO SIPO
AplicacionesAplicaciones
54
Ejemplo de aplicación: Multiplicación y división por múltiplos de 2
0 0 0 1 0 0 0 1LSB
0 0 1 0 0 0 1 0 0
= 1710
= 3410
= 6810
0 1 1 0 0 0 0 0LSB
0 0 1 1 0 0 0 00
= 9610
= 4810
= 2410
0 1 0 0 0 1 0 0
0 0 0 1 1 0 0 0
0
0
Desplazamiento a la derecha en un shift register
Desplazamiento a la izquierda en un shift register
AplicacionesAplicaciones
55
• 4006: registro de desplazamiento de 18 etapas (stage)
• 4014: registro PISO / SISO de 8 etapas
• 4015: doble registro de desplazamiento de 4 etapas SIPO
• 74x165: registro de desplazamiento PISO de 8 bits
• 74x164: registro de desplazamiento SIPO de 8 bits
• 74x166: registro de desplazamiento PISO de 8 bits
• 74x299: registro de desplazamiento universal de 8 bits
Formas comerciales
Formas comerciales
56
4 modos de operación (S1, S0):• Right-Shift• Left-Shift• Syncchronous parallel load• Do nothing (CLK inhibido)
74x194: registro de desplazamiento universal de 4 bits
Formas comerciales
Formas comerciales
57
Formas comerciales
Formas comerciales
• 74x594: 8-Bit Shift Register with Output Registers
• 8-bit serial-in, parallel-out shift register• 8-bit D-type storage register.• Separate clocks• Direct clears are provided for both the shift register and the storage register. • If both clocks are connected together, the shift register state will always be one clock pulse ahead of the storage register.
Formas comerciales
Formas comerciales
59
FINFIN