UNIVERSIDAD NACIONAL DE INGENIERIA
FACULTAD DE ELECTROTECNIA Y COMPUTACION
INGENIERÍA ELECTRÓNICA
Maquinas Secuenciales
UNI-FEC
CIRCUITOS SECUENCIALES
Combinacional: las salidas dependen de las entradas
Secuencial: las salidas dependen de las entradas y de valores anteriores
de determinadas salidas ( e.d. depende de la vida pasada del circuito)
Entradas
Sistema Salidas
combinacional
Circuito de
realimentación
CIRCUITOS SECUENCIALES
Los circuitos secuenciales pueden ser:
•Asíncronos: no dependen de ninguna señal de reloj
•Síncronos: dependen de un reloj
Entradas
Sistema Entradas
Salidas
combinacional Sistema
Salidas
combinacional
Salidas que
actúan como
entradas
Elementos de
memoria
Generador de
impulsos de
reloj
CIRCUITOS SECUENCIALES
Las células básicas de los circuitos secuenciales son los biestables los
cuales pueden ser:
•Asíncronos: no dependen de ninguna señal de reloj
•Síncronos: dependen de un reloj
•Activos por nivel
•Activos por flanco Flip-Flops
Los más utilizados son:
•RS
•JK
•D
•T
•etc
BIESTABLES ASÍNCRONOS
BIESTABLE RS NOR Tabla de Verdad
S R Q(t+1) Q(t+1)
0 0 Q(t) Q(t) No cambia
0 1 0 1 Reset
1 0 1 0 Set
1 1 - - Indeseable
S R Q(t) Q(t+1)
0 0 0 0
0 0 1 1 No cambia
R Q
0 1 0 0
Cuando RS la salida
0 1 1 0
sigue a la S
1 0 0 1
S Q
1 0 1 1
1 1 0 -
Indeseable
1 1 1 -
BIESTABLES ASÍNCRONOS
BIESTABLE RS NOR
Tabla de Transición
Q(t) Q(t+1) S R
0 0 0 X
0 1 1 0
1 0 0 1
1 1 X 0
R Q
S Q
BIESTABLES ASÍNCRONOS
BIESTABLE RS NAND Tabla de Verdad
S R Q(t+1) Q(t+1)
0 0 - - Indeseable
0 1 1 0 Set
1 0 0 1 Reset
1 1 Q(t) Q(t) No cambia
S R Q(t) Q(t+1)
0 0 0 -
Indeseable
0 0 1 -
R Q
0 1 0 1
Cuando RS la salida
0 1 1 1
sigue a la R
1 0 0 0
S Q
1 0 1 0
1 1 0 0
No cambia
1 1 1 1
BIESTABLES ASÍNCRONOS
BIESTABLE RS NAND
Tabla de Transición
Q(t) Q(t+1) S R
0 0 1 X
0 1 0 1
1 0 1 0
1 1 X 1
R Q
S Q
BIESTABLES ASÍNCRONOS
BIESTABLE JK Tabla de Verdad
J K Q(t+1) Q(t+1)
0 0 Q(t) Q(t) No cambia
0 1 0 1 Reset
1 0 1 0 Set
J Q
1 1 Q(t) Q(t) Cambia
K Q J K Q(t) Q(t+1)
0 0 0 0
0 0 1 1 No cambia
0 1 0 0
Cuando JK la salida
0 1 1 0
sigue a la J
1 0 0 1
1 0 1 1
1 1 0 1
Cambia
Oscilación para J=K=1 Carreras 1 1 1 0
No se suelen usar Sol: Biestable
JK M/S
BIESTABLES ASÍNCRONOS
BIESTABLE JK
Tabla de Transición
Q(t) Q(t+1) J K
J Q
0 0 0 X
0 1 1 X
K Q 1 0 X 1
1 1 X 0
BIESTABLES ASÍNCRONOS
BIESTABLE TIPO T ( = JK cortocircuitando J=K)
Tabla de Verdad
T Q(t) Q(t+1)
T Q
0 0 0
0 1 1 No cambia
Q 1 0 1
1 1 0 Cambia (TOGGLE)
BIESTABLES ASÍNCRONOS
BIESTABLE TIPO D ( No hace nada, sirve de memoria)
D Q(t)
Q(t)
NECESIDAD DE SISTEMAS SÍNCRONOS
Generación de un GLITCH
NECESIDAD DE SISTEMAS SÍNCRONOS
Efecto de un GLITCH sobre un biestable
BIESTABLES SÍNCRONOS
Entradas asíncronas no dependen de reloj PRESET (poner a 1
la salida) y CLEAR (poner a 0 la salida)
Activas a nivel alto Activas a nivel bajo
PR PR
CLR CLR
No pueden estar activas a la vez
BIESTABLES SÍNCRONOS
Entradas de reloj CK, CLK, CLOCK ...
nivel alto
CLK
Disparo por nivel
nivel bajo
CLK
flanco de
subida CLK
Disparo por flanco
flanco de
bajada CLK
BIESTABLES SÍNCRONOS
Entradas síncronas dependen del reloj R, S, J, K, T, D
R J T
S K
BIESTABLES SÍNCRONOS
Orden de prioridad:
1.- Entradas Asíncronas
2.- Entrada de Reloj
3.- Entradas Síncronas
PR PR
R Q R Q
S CLK
Q S Q
CLK
CLR CLR
BIESTABLES SÍNCRONOS
BIESTABLE RS SÍNCRONO ACTIVADO POR NIVEL
R Q
Q
C
C S R Q Q
0 X X Q Q
1 0 0 Q Q
1 0 1 0 1
1 1 0 1 0
1 1 1 1 1
BIESTABLES SÍNCRONOS
BIESTABLE RS SÍNCRONO CON ENTRADAS ASÍNCRONAS
PR
R Q
PR CLR C S R Q(t+1) Q
0 1 X X X 1 CLK
1 0 X X X 0
0 0 X X X 1* Indeseado
1 1 0 0 Q(t) CLR
1 1 1 0 1
1 1 0 1 0
1 1 1 1 Indeterminado
BIESTABLES SÍNCRONOS
BIESTABLE RS SÍNCRONO ACTIVADO POR FLANCO (FLIP-FLOP)
C S R Q Q R Q
X X Q Q
0 0 Q Q S
0 1 0 1
1 0 1 0 Q
CLK
1 1 1 1
BIESTABLES SÍNCRONOS
BIESTABLE JK MAESTRO ESCLAVO (MASTER-SLAVE)
BIESTABLES SÍNCRONOS
FLIP-FLOP JK SÍNCRONO ACTIVADO POR FLANCO
J Q J Q
K K
Q Q
CLK CLK
C S R Q Q C S R Q Q
X X Q Q X X Q Q
0 0 Q Q 0 0 Q Q
0 1 0 1 0 1 0 1
1 0 1 0 1 0 1 0
1 1 Q Q 1 1 Q Q
BIESTABLES SÍNCRONOS
BIESTABLE TIPO D
C D Q(t) Q(t+1)
0 0 0 0
0 0 1 1
Modo memoria D Q
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 0 Modo transparente Q
1 1 0 1 CLK
1 1 1 1
BIESTABLES SÍNCRONOS
FLIP-FLOP TIPO D
BIESTABLES SÍNCRONOS
FLIP-FLOP TIPO T
REGISTROS DE DESPLAZAMIENTO
REGISTRO DE DESPLAZAMIENTO ENTRADA SERIE SALIDA SERIE
REGISTROS DE DESPLAZAMIENTO
REGISTRO DE DESPLAZAMIENTO ENTRADA SERIE SALIDA SERIE
REGISTROS DE DESPLAZAMIENTO
REGISTRO DE DESPLAZAMIENTO ENTRADA SERIE SALIDA PARALELA
REGISTROS DE DESPLAZAMIENTO
REGISTRO DE DESPLAZAMIENTO ENTRADA SERIE SALIDA PARALELA
REGISTROS DE DESPLAZAMIENTO
REGISTRO DE DESPLAZAMIENTO ENTRADA PARALELA SALIDA SERIE
REGISTROS DE DESPLAZAMIENTO
REGISTRO DE DESPLAZAMIENTO ENTRADA PARALELA SALIDA SERIE
REGISTROS DE DESPLAZAMIENTO
REGISTRO DE DESPLAZAMIENTO ENTRADA PARALELA SALIDA PARALELA
REGISTROS DE DESPLAZAMIENTO
REGISTRO DE DESPLAZAMIENTO ENTRADA PARALELA SALIDA PARALELA
CONTADORES
Definición: Circuito secuencial cuyas salidas representan en un
determinado código el número de impulsos que se aplican a la entrada
Estructura: Biestables activados por flanco (FF) conectados entre sí
Módulo (M): número de valores por los que pasa (divisor por M)
Tipos:
•Ascendentes
•Descendentes
Tipos:
•Asíncronos Los FF no comparten la misma señal de reloj
•Síncronos Los FF comparten la misma señal de reloj:
•Síncronos propiamente dichos
•Contadores basados en registros de desplazamiento
CONTADORES
CONTADORES ASÍNCRONOS
Secuencia
Condiciones de funcionamiento
de cuenta
A2 A1 A0
0 0 0
0 0 1 A0 cambia de 0 a 1
0 1 0 A0 cambia de 1 a 0; A1 cambia de 0 a 1.
0 1 1 A0 cambia de 0 a 1
1 0 0 A0 cambia de 1 a 0; A1 cambia de 1 a 0; A2 cambia
1 0 1 A0 cambia de 0 a 1
1 1 0 A0 cambia de 1 a 0; A1 cambia de 0 a 1.
1 1 1 A0 cambia de 0 a 1
CONTADORES
CONTADORES ASÍNCRONOS Utiliza FF tipo T o tipo JK
QA QB QC
Entrada de J Q J Q J Q
impulsos a
contar CLK CLK CLK
K Q K Q K Q
“1”
Problema lento ya que cada FF debe esperar a que el anterior bascule
Módulo = M = 2n = 23 = 8 impulsos
CONTADORES
CONTADORES ASÍNCRONOS Módulo 2n
Se parte de un contador de M = 2n y se conecta la primera combinación no
deseada mediante una NAND a las entradas CLEAR de los FF JK o T.
Ej: contador M = 12
Entrada de J Q J Q J Q J Q
impulsos a
CLK CLK CLK CLK
contar
K C KC K C K C
“1”
CONTADORES
CONTADORES SÍNCRONOS Ej: Contador M = 16 con biestables JK M/S
TABLA DE TRANSICIONES SEÑALES DE CONTROL
ESTADO
ESTADO ACTUAL ENTRADAS SÍNCRONAS
SIGUIENTE
QD QC QB QA QD QC QB QA JD KD JC KC JB KB JA KA
0 0 0 0 0 0 0 1 0 X 0 X 0 X 1 X
0 0 0 1 0 0 1 0 0 X 0 X 1 X X 1
0 0 1 0 0 0 1 1 0 X 0 X X 0 1 X
0 0 1 1 0 1 0 0 0 X 1 X X 1 X 1
0 1 0 0 0 1 0 1 0 X X 0 0 X 1 X
0 1 0 1 0 1 1 0 0 X X 0 1 X X 1
0 1 1 0 0 1 1 1 0 X X 0 X 0 1 X
0 1 1 1 1 0 0 0 1 X X 1 X 1 X 1
1 0 0 0 1 0 0 1 X 0 0 X 0 X 1 X
1 0 0 1 1 0 1 0 X 0 0 X 1 X X 1
1 0 1 0 1 0 1 1 X 0 0 X X 0 1 X
1 0 1 1 1 1 0 0 X 0 1 X X 1 X 1
1 1 0 0 1 1 0 1 X 0 X 0 0 X 1 X
1 1 0 1 1 1 1 0 X 0 X 0 1 X X 1
1 1 1 0 1 1 1 1 X 0 X 0 X 0 1 X
1 1 1 1 0 0 0 0 X 1 X 1 X 1 X 1
CONTADORES
CONTADORES SÍNCRONOS Ej: Contador M = 16 con biestables JK M/S
Simplificamos por Karnaugh:
JD=KD=QAQBQC
JC=KC=QAQB
JB=KB=QA
JA=KA=“1”
CONTADORES
CONTADORES SÍNCRONOS Ej: Contador M = 16 con biestables JK M/S
QA QB QC QD
Entrada de
impulsos a
contar
J Q J Q J Q J Q
CLK CLK CLK CLK
K K K K
“1”
CONTADORES
CONTADORES SÍNCRONOS Ej: Contador M = 16 con biestables JK M/S
Podemos ahorrar puertas lógicas si nos damos cuenta que:
JA=KA=“1”
JB=KB=QA
JC=KC=JBQB
JD=KD=JCQC
CONTADORES
CONTADORES SÍNCRONOS Ej: Contador M = 16 con biestables JK M/S
QA QB QC QD
J Q J Q J Q J Q
CLK CLK CLK CLK
K K K K
“1”
CONTADORES
CONTADORES SÍNCRONOS Ej: UP/DOWN Counter M = 5
CONTADORES
CONTADORES SÍNCRONOS Ej: UP/DOWN Counter M = 5
CONTADORES
CONTADORES SÍNCRONOS DE CUALQUIER SECUENCIA Ej: Contador
de la secuencia “2, 3, 5, 1, 7, 2, 3,...”
CONTADORES
CONTADORES SÍNCRONOS DE CUALQUIER SECUENCIA Ej: Contador
de la secuencia “2, 3, 5, 1, 7, 2, 3,...”
CONTADORES
CONTADORES SÍNCRONOS BASADOS EN REGISTROS DE
DESPLAZAMIENTO CONTADOR EN ANILLO
CONTADORES
CONTADORES SÍNCRONOS BASADOS EN REGISTROS DE
DESPLAZAMIENTO CONTADOR JOHNSON O ANILLO INVERTIDO