Tema 7 Registros y Contadores

Anuncio
Tema 7
Registros y Contadores
© Luis Entrena, Celia López,
Mario García, Enrique San Millán
Universidad Carlos III de Madrid
1
Contenidos
1.  Registros
Ø  Registros con entrada serie y salida serie y paralelo
Ø  Registros con entrada paralelo y salida serie y paralelo
Ø  Registro universal de desplazamiento
2.  Contadores
Ø  Contadores síncronos
• 
• 
• 
• 
• 
Concepto de contador síncrono.
Síntesis como máquina de estados con biestables T.
Contador ascendente-descendente.
Contadores con entradas de precarga, acarreo/habilitación y salida de acarreo.
Aplicaciones con contadores síncronos: secuenciadores.
Ø  Contadores basados en registros de desplazamiento
• 
Contador en anillo. Contador Johnson.
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
2
Registro
Circuito digital con dos funciones básicas: almacenamiento de datos y
movimiento de datos (Floyd)
Es una colección de dos o más biestables tipo-D con una entrada común. Se
utiliza para almacenar una serie de bits relacionados, como un byte (8 bits) de
datos.
Dato(n)
Q(n)
Enable
Clear
Registro
•  Registra datos en los flancos activos del
Reloj
Reloj
• 
Borra el contenido ante el nivel activo del
Reset
Reset
•  Puede tener señales de Habilitación y Clear
síncronos
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
3
Registro (1 bit)
0
Dato
1
Esquema
Q
Enable
Clear
Reloj
Reset
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
4
Registro (4 bits)
Entrada paralelo/salida paralelo
Esquema
Enable
Clear
Dato(1)
Dato(2)
Dato(3)
Dato(0)
Q(3)
Registro
1 bit
Registro
1 bit
Registro
1 bit
Registro
1 bit
Reset
Q(2)
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(1)
Q(0)
5
Registro de desplazamiento
Es un registro que almacena y desplaza la información
Bit 0
Bit 1
Bit 2
Bit 3
•  Registra datos en los flancos activos del Reloj. Desplaza los bits..
• 
Borra el contenido ante el nivel activo del Reset
•  Puede tener señales de Habilitación y Clear síncronos
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
6
Registro de desplazamiento
Entrada y salida SERIE
Entrada
Bit 0
Bit 1
•  Un bit de entrada. Un bit de salida.
•  Carga SERIE. Desplaza los bits.
•  4 Ciclos de reloj en cargar un dato
Bit 2
Bit 3
Salida
SISO
•  4 Ciclos de reloj en leer un dato
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
7
Registro de desplazamiento
Entrada SERIE, salida PARALELO
Entrada
Bit 0
S(0)
Bit 1
S(1)
•  Un bit de entrada. Cuatro bits de salida.
•  Carga SERIE. Desplaza los bits.
Bit 2
Bit 3
S(2)
S(3)
SIPO
•  4 Ciclos de reloj en cargar un dato
•  1 Ciclo de reloj en leer un dato
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
8
Registro de desplazamiento
Entrada PARALELO, salida SERIE
D(0)
Bit 0
D(1)
Bit 1
•  Cuatro bits de entrada. Un bit de salida.
•  Carga PARALELO. Salida SERIE.
•  1 Ciclo de reloj para almacenar el dato
D(3)
D(2)
Bit 2
Bit 3
Salida
PISO
•  4 Ciclos de reloj para leer el dato
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
9
Registro de desplazamiento
Entrada serie/ salida paralelo-serie
Esquema
Enable
Clear
Dato
Q(3)
Registro
1 bit
Registro
1 bit
Registro
1 bit
Registro
1 bit
Reset
Q(2)
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(1)
Q(0)
10
Registro de desplazamiento
Entrada serie-paralelo / salida paralelo-serie
Esquema
Dato(1)
Dato(2)
Dato(3)
S/P
Dato(0)
S_In
S_Out
Enable
Clear
Registro
1 bit
Registro
1 bit
Registro
1 bit
Registro
1 bit
Q(3)
Reset
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(2)
Q(1)
Q(0)
11
Registro de desplazamiento
Dato(1)
Dato(2)
Dato(3)
Esquema
SISO
S/P
Dato(0)
S_Out
S_In
Enable
Clear
Registro
1 bit
Registro
1 bit
Registro
1 bit
Registro
1 bit
Q(3)
Reset
Q(2)
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(1)
Q(0)
12
Registro de desplazamiento
Dato(1)
Dato(2)
Esquema
Dato(3)
PIPO
S/P
Dato(0)
S_Out
S_In
Enable
Clear
Registro
1 bit
Registro
1 bit
Registro
1 bit
Registro
1 bit
Q(3)
Reset
Q(2)
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(1)
Q(0)
13
Registro universal de desplazamiento
Dato Carga Serie.
Desplazamiento a la Izquierda
Dato Carga Serie.
Desplazamiento a la Derecha
Dato Entrada.
N bits entrada Paralelo
Bit 0 entrada Serie
Modo de operación
CSDI
CSDD
D(n)
Modo (2)
Q(n)
Registro
Universal
de
desplazamiento
Dato Salida.
N bits salida Paralelo
Bit 0 salida Serie
Reloj
Reset
Registro de desplazamiento con entrada serie y paralelo. Los datos se
pueden desplazar a izquierda o a derecha.
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
14
Registro universal de desplazamiento
Dato(1)
Dato(0)
Esquema
Modo
CSDI
CSDD
11
10
01
00
11
10
01
00
Registro
0
Registro
1
Reset
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(1)
Q(0)
15
Registro universal de desplazamiento
Dato(1)
Dato(0)
Esquema
Modo
CSDI
CSDD
11
10
01
00
11
10
01
00
Registro
0
Registro
1
Reset
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(1)
Q(0)
16
Registro universal de desplazamiento
Dato(1)
Dato(0)
Esquema
Modo
CSDI
CSDD
11
10
01
00
11
10
01
00
Registro
0
Registro
1
Reset
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(1)
Q(0)
17
Registro universal de desplazamiento
Dato(1)
Dato(0)
Esquema
Modo
CSDI
CSDD
11
10
01
00
11
10
01
00
Registro
0
Registro
1
Reset
Reloj
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
Q(1)
Q(0)
18
Contadores síncronos
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
19
Contadores síncronos
Contador básico
Enable
Q(n)
Contador
Fin
Reloj
Reset
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
20
Contadores síncronos
Cronograma de funcionamiento
Reset
Clk
Enable
Q
0
1
2
3
4
5
6
7
0
1
Fin
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
21
Contadores síncronos
Cronograma de funcionamiento
Reset
Clk
Enable
Q
0
1
2
3
4
5
6
7
0
1
Fin
Inicialización Asíncrona
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
22
Contadores síncronos
Cronograma de funcionamiento
Reset
Clk
Enable
Q
0
1
2
3
4
5
6
7
0
1
Fin
Parada de cuenta
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
23
Contadores síncronos
Cronograma de funcionamiento
Reset
Clk
Enable
Q
0
1
2
3
4
5
6
7
0
1
Fin
Fin de cuenta
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
24
Contadores síncronos como FSM
1.  Entradas y Salidas
2.  Diagrama de estados. Asignación de estados. Biestables
3.  Tabla de transiciones
4.  Optimización
5.  Esquemático
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
25
Contadores síncronos como FSM
Contador
en binario natural
de 0 a 7
1.  Entradas y Salidas
Moore
Enable
Q(3)
Contador
Fin
Reloj
Reset
Entrada__Salidas
Ena__Q-F
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
26
Contadores síncronos como FSM
2.  Diagrama de estados
0
7
6
1
2
5
4
3
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
27
Contadores síncronos como FSM
2.  Diagrama de estados
0
1
0
Entrada__Salidas
Ena__Q-F
7
6
1
2
5
4
3
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
28
Contadores síncronos como FSM
2.  Diagrama de estados
Entrada__Salidas
0
1
0
Ena__Q-F
1
0
0
1
7
0
6
1
1
1
2
5
0
1
0
4
0
3
1
1
0
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
29
Contadores síncronos como FSM
2.  Diagrama de estados
Entrada__Salidas
0
1
6
0
0
1
0
Moore
1
000_0
7
Ena__Q-F
Salidas
111_1
0
1
110_0
001_0
1
1
2
5
0
010_0
101_0
4
1
100_0
0
0
3
1
011_0
1
0
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
30
Contadores síncronos como FSM
2.  Asignación de estados
7 estados è 3 biestables
Estado__Codificación
0 à
1 à
2 à
3 à
4 à
5 à
6 à
7à
000
001
010
011
100
101
110
111
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
31
Contadores síncronos como FSM
Estado
siguiente
Entrada +Estado
Entradas T
Salidas
E
Q2
Q1
Q0
Q2
Q1
Q0
T2
T1
T0
Q2
Q1
Q0
Fin
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
1
1
0
1
1
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
1
1
0
1
0
0
0
1
0
1
0
0
1
1
0
1
1
0
0
0
0
1
1
0
0
0
1
1
1
1
1
1
0
0
0
1
1
1
0
32
Contadores síncronos como FSM
Estado
siguiente
Entrada +Estado
Entradas T
Salidas
E
Q2
Q1
Q0
Q2
Q1
Q0
T2
T1
T0
Q2
Q1
Q0
Fin
1
0
0
0
0
0
1
0
0
1
0
0
0
0
1
0
0
1
0
1
0
0
1
1
0
0
1
0
1
0
1
0
0
1
1
0
0
1
0
1
0
0
1
0
1
1
1
0
0
1
1
1
0
1
1
0
1
1
0
0
1
0
1
0
0
1
1
0
0
0
1
1
0
1
1
1
0
0
1
1
1
0
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
0
1
1
1
1
0
0
0
1
1
1
1
1
1
1
33
Contadores síncronos como FSM
4.  Optimización
T2
Q1Q0
00
00
T1
01
11
10
0
0
0
0
01
0
0
0
11
0
0
10
0
0
EnQ2
Q1Q0
00
01
11
10
00
0
0
0
0
0
01
0
0
0
0
1
0
11
0
1
1
0
1
0
10
0
1
1
0
EnQ2
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
34
Contadores síncronos como FSM
4.  Optimización
T0
Q1Q0
00
00
Fin
01
11
10
0
0
0
0
01
0
0
0
11
1
1
10
1
1
EnQ2
Q1Q0
00
01
11
10
00
0
0
0
0
0
01
0
0
0
0
1
1
11
0
0
1
0
1
1
10
0
0
0
0
EnQ2
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
35
Contadores síncronos como FSM
4.  Optimización
T0 = Enable
T1 = Q0·Enable
T2 = Q1·Q0·Enable
Fin = Q2·Q1·Q0·Enable
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
36
Contadores síncronos como FSM
Esquema
5.  Esquemático
Enable
Fin
T0 Q0
T1 Q1
T2 Q2
Q(0)
Q(1)
Reloj
Reset
Q(2)
37
Contadores síncronos
Contador Ascendente/Descendente
Q(n)
Enable
UpDown
Contador
Fin
Reloj
Reset
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
38
Contadores síncronos (Asc/Desc)
Cronograma de funcionamiento
Reset
Clk
UpDo
Enable
Q
0
1
2
3
4
5
6
5
4
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
3
39
Contadores síncronos (Asc/Desc)
Cronograma de funcionamiento
Reset
Clk
UpDo
Enable
Q
0
7
6
5
4
3
2
3
4
5
Cuenta Descendente
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
40
Contadores síncronos (Asc/Desc)
Cronograma de funcionamiento
Reset
Clk
UpDo
Enable
Q
0
7
6
5
4
3
2
3
4
5
Cuenta Ascendente
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
41
Contadores síncronos
Contador con Precarga /Clear síncrono
Clear
Q(n)
Enable
Load
Dato(n)
Contador
Fin
Reloj
Reset
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
42
Contadores síncronos
Cronograma de funcionamiento
Reset
Clk
Clear
Enable
Load
Q
3
9
Dato
0
1
2
3
4
5
3
0
1
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
2
43
Contadores síncronos
Inicialización Asíncrona
Reset
Clk
Clear
Enable
Load
Q
3
9
Dato
0
1
2
3
4
5
3
0
1
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
2
44
Contadores síncronos
Habilitación de cuenta
Reset
Clk
Clear
Enable
Load
Q
3
9
Dato
0
1
2
3
4
5
3
0
1
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
2
45
Contadores síncronos
Precarga de valor de cuenta
Reset
Clk
Clear
Enable
Load
Q
3
9
Dato
0
1
2
3
4
5
3
0
1
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
2
46
Contadores síncronos
Inicialización Síncrona
Reset
Clk
Clear
Enable
Load
Q
3
9
Dato
0
1
2
3
4
5
3
0
1
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
2
47
Contadores síncronos (FSM)
Contador con entrada Clear
Ejercicio
Clear
Q(n)
Enable
Contador
Fin
Reloj
Reset
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
48
Contadores síncronos (FSM)
Contador con entrada Clear
Entradas__Salidas
01
1X
00
Clear-Ena__Q-Fin
01
0
6
01
Ejercicio
X0
11
1X
1X
00
1
1X
1X
5
01
1X
2
00
01
4
00
3
00
01
01
00
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
49
Contadores síncronos (FSM)
Contador con entrada Clear
Ejercicio
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
50
Contadores basados en registros
de desplazamiento
Un contador basado en un registro de desplazamiento es básicamente un
registro de desplazamiento con la salida serie realimentada a la entrada
serie, de modo que se generen secuencias especiales (Floyd)
Contador Johnson
Contador en anillo
Bit 0
Bit 1
Bit 2
Bit 0
Bit 1
Bit 2
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
51
Contadores basados en registros
de desplazamiento
Contador Johnson
D0
Ciclo
Q0
D1
Q2 Q1 Q0
Clk
Clk
0
0
0
0
1
2
0
0
0
1
1
1
3
4
1
1
1
1
1
0
5
6
1
0
0
0
0
0
Q1
7
0
0
1
Q2
Q1
D2
Clk
Q2
Reloj
Clk
Q0
2n patrones
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
52
Contadores basados en registros
de desplazamiento
Contador en anillo
Ciclo
D0
Q2 Q1 Q0
Q0
Clk
Clk
0
0
0
1
Reloj
1
2
0
1
1
0
0
0
Reset
3
4
0
0
0
1
1
0
5
6
1
0
0
0
0
1
7
0
1
0
D1
Q1
D2
Q2
Clk
Clk
Q0
Q1
Q2
n patrones
© Luis Entrena, Celia López, Mario García, Enrique San Millán. Universidad Carlos III de Madrid, 2008
53
Descargar