Upload
others
View
16
Download
0
Embed Size (px)
Citation preview
Elementos básicos de la lógicasecuencial
Fundamentos de Computadores
Escuela Politécnica Superior. U.A.M
Parte del material utilizado en este capítulo ha sido cedido por el grupo DIE de la ETSII de la UPMDIEUPM
2
Índice de la Unidad 3
U3. Elementos básicos de la lógica secuencial.
U3.1. Circuitos secuenciales.
U3.2. Cerrojos. Tipos de cerrojos.
U3.3. Flip-Flops. Tipos de Flip-Flops.
U3.4. Circuitos con Flip-Flops. Cronogramas de temporales.
U3.5. Registros. Registros de desplazamiento.
3
Circuitos secuenciales
Motivación:
Se quiere construir un circuito que cuente las transiciones que sucedan enuna única señal de entrada denominada CLK
Para las funciones S1 y S0, un circuito combinacional no sirve porque parauna misma entrada siempre se alcanza una misma salida.
Solución:
Se necesita un nuevo tipo de circuitos en los que las “nuevas” salidasdependan de las entradas pero también de las “viejas” salidas.
CLK
S1
S0
0
0
0
1
1
0
1
1
0
0
4
Circuitos secuenciales
CLK
S1
S0
0
0
0
1
1
0
1
1
0
0
CLK S1 S0
0 0
0 1
0 0
0 1
0
1
0
1
COMBINACIONAL
S1 S0 CLK
0 0
0 1
1 0
1 1
S’1S’0
0 1
1 0
1 1
0 0
SECUENCIAL
Solución:
Un circuito secuencial se fundamenta en sistemas realimentados (la señal desalida es a su vez una entrada) y estables.
Elemento lógico realimentado e
inestable
Elemento lógico realimentado y
estable
Guarda (memoriza) un ‘0’ ó un ‘1’
5
Circuitos secuenciales
C. COMB.
ESTADO
(f)
BIESTABLES
C. COMB.
SALIDA
(g)
Et
En
Qt
Qn
St
Sn
)Q,E(gS ttt
)Q,E(fQ tttt
Ecuaciones de SALIDA
Ecuaciones de ESTADO EVOLUCIÓN TEMPORAL
VALORES INSTANTÁNEOS
DefiniciónCircuito secuencial es aquel en el que las salidas dependen de las entradas y de suestado anterior.El valor del estado anterior se almacena en unos elementos con capacidad de
memorización.Cada bit de información del estado se guarda en un biestable.
Qt +t
Qn+1
6
Secuenciales asíncronos y síncronos
ASÍNCRONOSCambia de estado y de salida frente a un
cambio de las entradas adecuado
SÍNCRONOS
Cambia de estado cuando se produce un
evento de una señal especial que entra a
los biestables y se denomina señal de reloj
Nivel
(latch)
Flanco(flip-flop)
Clases
Alto
Bajo
Subida
Bajada
Puede haber cambio
de estado sin
cambio de entradas
Los más habituales
7
Biestable D (flip flop D)
D CLK Qt+t
0
1
0
1
Biestable D (FF-D)
CLK
D
Q
Cronograma del funcionamiento
de un biestable D:
Tiempos de inserción de las señales de dato: tsetup, thold y tdelay
ts th
D
CLK
Q
tdelay
Frecuencia máxima operación
Fmax = 1
(tdelay+ tcrítico+tsetup)
D Q
CLK
D Q
CLK
D Q
CLK
tcrítico
8
D Q
D C Qn+1
Qn
0
1
X 0
0 1
1 1
Cerrado
Modo
transparente
Biestable latch D
J K CLK Qn+1
Qn
0
1
/Qn
0 0
0 1
1 0
1 1
J
K
Biestable FF-JK
T QT CLK Qn+1
Qn
/Qn
0
1
Biestable FF-T
C
Síncronopor nivel
Otros biestables
9
Ejemplo: A partir de un biestable D, construir un biestable T
Ejemplos:A partir de un biestable JK, construir a) un biestable D y b) un biestable T
T Qn Qn+1
0
1
1
0
0 0
0 1
1 0
1 1
D
0
1
1
0
Conversión entre biestables
D QT c.c.Q
J QTc.c.
Q
K
J QDc.c.
Q
K
a) b)
10
Ejemplo:Biestable D con reset
CLK
DQD
reset
Inicialización en un biestable
Ejemplo:Biestable D con clear
D
CLK
DQclear
El valor inicial puede ser ‘0’ ó ‘1’
ASÍNCRONOS reset
0
preset
1
SÍNCRONOS clear set
La inicialización asíncrona es inmediata
Las señales de inicialización suelen ser activas por nivel bajo
La inicialización síncrona espera al primer flanco activo de reloj
La inicialización síncrona
se puede considerar como
parte de la funcionalidad
11
Aplicación: Carga de un biestable
En los biestables síncronos, existe la posibilidad de cargar a ‘0’ ó a ‘1’ por medio de una entrada
especial denominada entrada de carga “L” (Load). Similar al enable en los circuitos combinacionales.
L Dat T Qn+1
1 0 X 0
1 1 X 1
0 X 0 Qn
0 X 1 /Qn
Ejemplo: A partir de un biestable D, construir un biestable T con entrada de carga
D QT
c.c.
Q
Dat
Load
12
Cronograma temporal con Flip-Flops
D Q D Q D Q
CLK
EQ0 Q1 Q2
D Q T Q J
K
Q
CLK
EQ0 Q1 Q2
CLK
E
Q0
Q1
Q2
Ejemplo: Completar el cronograma de la figura para cada uno de los dos ejemplos
propuestos.
13
Registros
Registro:
Sistema secuencial formado por un conjunto de biestables
del mismo tipo que comparten la misma señal de reloj.
En-1
Qn-1
E0
Q0 Q1
CLK
D0 D1 Dn-1
E1
Ejemplo: Registro de n bits
………..
14
Registros
Registro de desplazamiento: La salida de un biestable se conecta a la
entrada del biestable de orden superior.
Ejemplo: Registro de desplazamiento (4bits) con entrada de carga
Registro con entrada de carga: Una señal de carga, L (load) permite
cargar síncronamente en el registro cualquier valor deseado.
LQ2Q0 Q1
CLK
D0 D1 D3
E1
1
0
E0
1
0
E2
1
0D2
E3
1
0
Q3
SIN SOUT
15
S R Qt Qt+t
Biestable RS asíncrono
ON
OFF
0
1
0
0
1
1
1
1
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
a, b) Mantener estado
c, d) Apagar (Reset)
e, f) Encender (Set)
g) Inscripción prioritaria
LUZ
1
0
0
1 0
1
f
0
0
1
1 0
1
b
1
0
0
1 1→0
0→1
e
0
1
1
0 1
0
c
0
1
1
0 0→1
1→0
d
1
1
0
0 1
1
g
0
0
1
1 1
0
a
S
R
Q
S
R
Q
ANEXO
16
Inscripción prioritaria Borrado prioritario
¿Cómo hacer que /Q* sea /Q siempre?
R
Q
Q
S
R
Q
S
/Q*
R
S
Q
/Q*
Biestable RS asíncrono
Con R=S=‘1’, las salidas no son complementarias y dependen del diseño interno delbiestable.
ANEXO
17
Biestables RS síncronosActivo por nivel
CLK
S
R
CLK
S
R
A
B
Activo por flanco (edge-triggered)
CLK
RS
master RS
slaveR
SSM
RM
SS
RS
QMQ
Activo por flanco (master-slave)
(NO RECOMENDADO)
ANEXO