Subido por mauro-seba

CIRCUITOS SECUENCIALES ASINCRONOS

Anuncio
CIRCUITOS SECUENCIALES ASÍNCRONOS
Profesor Jorge Gianotti Hidalgo
Departamento de Ingeniería Eléctrica
Universidad de Antofagasta
2007
Sistemas Digitales
1
Modelo de Circuito Secuencial Asíncrono
Modalidad Nivel
Un circuito se considera asíncrono si no utiliza una señal de reloj
periódica para sincronizar sus cambios de estado interno.
Las sencillas técnicas asíncronas son necesarias para diseñar
dispositivos de memoria, circuitos con tiempos de entrada
imprevisibles y circuitos con varios relojes.
Los circuitos asíncronos son potencialmente más rápidos que los
síncronos, pero son difíciles de analizar y diseñar. El modelo básico
es el de Huffman, que restringe la ubicación de retardos del circuito
y los tiempos en que pueden cambiar las entradas primarias.
Sistemas Digitales
2
• Al analizar su comportamiento se distinguen los estados
estables, aquellos que no cambian con entradas primarias
constantes, de los estados inestables, que si varían.
• Por otra parte ocurren las carreras que ocurren cuando dos o
más variables de estado cambian como respuesta a un solo
cambio de las variables de entrada al sistema secuencial
asíncrono. La carrera se considera crítica si el estado estable
final depende del orden en que cambien las variables de
estado.
• Los circuitos secuenciales asíncronos deben diseñarse para
evitar las carreras críticas y diversos riesgos (señales
espurias)
Sistemas Digitales
3
Modelo Básico de Circuito Modalidad Nivel (HUFFMAN)
Entradas
primarias
Entradas
secundarias
X1
X2
Lógica
Z1
Z2
Xn
Combinacional
Zp
y1
de salida
y2
(Variables de
estado)
yr
salidas
Y1
Yr
Y2
excitaciones
retardo
retardo
retardo
Sistemas Digitales
4
• Los elementos de retardo son una concentración de los retardos
distribuidos en los elementos lógicos combinacionales. Se
considera que estos proporcionan una memoria a corto plazo.
• Cuando hay un cambio en una variable de entrada (xi), el retardo
le permite al circuito recordar los valores actuales de las variables
de estado y1,y2….yr un tiempo lo suficientemente largo como
para desarrollar los nuevos valores de Y1, Y2,…Yr, que a su vez,
se convierten en los nuevos valores del siguiente estado de
y1,y2….yr después de un retardo.
• De la figura del modelo de HUFFMAN, se aprecia que los cambios
en las variables de las entradas secundarias y de excitación se
pueden producir en respuesta a un cambio de las variables de
entrada X1,X2,..Xn
Sistemas Digitales
5
• El trato que se realiza en el análisis para el diseño de
secuenciales asíncronos se denomina modalidad fundamental,
que significa que sólo se permite que ocurra en las variables de
entrada, donde sólo pueden cambiar una a la vez, pero no dos
o más simultaneamente. De esta forma las variables secundarias
y de excitación deberán también cambiar sólo una a la vez.
• El circuito se estabiliza o cae en un estado estable cuando las
variables de excitación y secundarias llegan a la estabilización de
sus valores.
• El proceso de síntesis que se sigue para obtener un diseño
definitivo es semejante al seguido para los secuenciales
síncronos.
Sistemas Digitales
6
Ejemplo para analizar un sistema secuencial asíncrono
Un circuito de retardo de control, tiene una entrada de pulso de
control X, una entrada de reloj C y una salida de pulso de control Z.
los pulsos en la línea de entrada estarán siempre separados por
varios períodos de reloj.
Siempre que se produzca un pulso en la línea X, se superpondrá a un
pulso de reloj y tendrá más o menos la misma anchura que éste. Es
decir, la línea X sólo pasará a valor “1” despues de que el pulso de
reloj pase a “1” y retornará a valor “0” sólo después de que el pulso
de reloj haya vuelto a valor “0”.
Por cada pulso de entrada debe haber un pulso de salida en la línea
Z, que coincida con el siguiente pulso de reloj que sigue al pulso en
X. Por lo tanto, cada pulso X da como resultado un pulso en Z
retardado en aproximadamente un período de reloj.
Sistemas Digitales
7
Diagrama del sistema y señales de entrada y salida
X
Retardo de
C
Control
Z
C
X
Z
Sistemas Digitales
8
Desarrollo: Tabla de Flujo Primitiva
Entradas: XC
Estado
Inicial
Salida: Z
00
01
11
10
00
01
11
10
1
2
-
-
0
-
-
-
1
2
3
-
-
0
-
-
-
-
3
4
-
-
0
-
5
-
-
4
-
-
-
0
5
6
-
-
0
-
-
-
1
6
-
-
-
1
-
-
Sistemas Digitales
9
Implicancia para resolver los estados mínimos
2
√
3
√
√
4
1-5
1-5
√
5
2-6
2-6
1-5
√
√
6
2-6
√
1-5
1-5
3
4
5
1
2
Clase de estado: a = (1,2) ; b = (3,4,5) ; c = (6)
Sistemas Digitales
10
Tabla Mínima de Flujo y Asignación de Estados
Estado
Inicial
Entradas: XC
Salida: Z
00
01
11
10
00
01
11
10
a=(1,2)
a
a
b
-
0
0
-
-
b=(3,4,5)
b
c
b
b
0
-
0
0
c=(6)
a
c
-
-
-
1
-
-
y2y1 = 00 para el estado “a”
y2y1 = 01 para el estado “b”
y2y1 = 11 para el estado “c”
Asignación de
estados
y2y1 = 10 don’t care
Sistemas Digitales
11
Ecuaciones de Estado
Tabla de Transición y Mapa de Salida
XC
y2y1
XC
00
01
11
10
00
00
00
01
-
00
01
01
11
01
01
01
11
00
11
-
-
11
-
1
-
-
10
-
-
-
-
10
-
-
-
-
Y2Y1
Sistemas Digitales
y2 y 1
00
01
11
10
-
-
Z
12
Ecuaciones de Estado
Mapas de Excitación y Funciones de Excitaciones
XC
y2y1
XC
00
01
11
10
00
0
0
1
-
0
01
1
1
1
1
-
-
11
0
1
-
-
-
-
10
-
-
-
-
00
01
11
10
00
0
0
0
-
01
0
1
0
11
0
1
10
-
-
y2 y 1
Y2
Y2 = X ’ C y 1
Sistemas Digitales
Y1
Y1 = X + y2’ y1 + C y1
Z = y2
13
Circuito Final
Y2'
X
Z
Y2
y2'
y1
Y1
C
y1
Si el circuito final tiene retardos de tiempo distintos por compuerta,
esto puede introducir carreras críticas.
A continuación, se analizará la naturaleza de estas carreras y la
manera de lograr eliminarlas.
Sistemas Digitales
14
Ciclos y Carreras
•
Un sistema o bien un circuito puede asumir más de un estado
inestable antes de llegar a un nuevo estado estable.
•
Si para un estado inicial dado y una transición de las variables
de entrada, este tipo de secuencia de estados inestables es
única, se le denomina CICLO.
Sistemas Digitales
15
Ciclos
X2X1
y2 y 1
00
00
01
1
2
01
11
3
3
10
4
4
11
2
10
Las transiciones del estado
estable 1 proceden a través
de los estados inestables 2,3 y
4 hasta el estado estable 4
cualquier otro inicio en los
estados estables seguirá el
mismo camino hacia el estado
estable 4
Y2Y1
Sistemas Digitales
16
Ciclos (estados asignados)
X2X1
y2 y 1
00
00
01
00
01
01
11
10
11
11
11
10
01
10
10
Y2Y1
Sistemas Digitales
17
Carreras
Carreras No-Críticas
X2X1
y2 y 1
X2X1
01
00
11
1
2
00
01
2
01
11
11
2
11
11
10
2
10
11
Y2Y1
Sistemas Digitales
10
00
01
00
11
y2 y 1
00
11
10
Y2Y1
18
Carreras
Carreras Críticas
X2X1
y2 y 1
X2X1
01
11
10
00
00
00
01
-
b
01
01
11
01
01
-
-
11
00
11
-
-
-
-
10
-
-
-
-
01
11
10
00
a
a
b
-
01
b
c
b
11
a
c
10
-
Y2Y1
Sistemas Digitales
y2 y 1
00
00
Y2Y1
19
Eliminación de Carreras Críticas
Carreras críticas del ejemplo anterior.
XC
y2y1
00
01
11
10
00
00
00
01
-
01
01
11
01
01
11
00
11
-
-
10
-
-
-
-
Cuando XC cambia de 01 a 00,
el estado estable 11 debe llegar
al estado estable 00 y no al
estado estable 01 pues así lo
indica el estado inestable 00 en
XC=00, luego hay carrera crítica
Y2Y1
Sistemas Digitales
20
Eliminación de Carreras Críticas
Carreras críticas del ejemplo anterior.
XC
y2y1
00
01
11
10
00
00
00
01
-
01
01
11
01
01
11
10
11
-
-
10
00
-
-
-
Al cambiar el estado inestables
00 en XC=00 para y2y1=11 al
estado inestable 10, estamos
conduciendo al circuito a que
secuencia luego al estado
inestable 00 y finalmente al
estado estable 00
Y2Y1
Sistemas Digitales
21
Eliminación de Carreras Críticas
Carreras críticas del ejemplo anterior.
Bajo esta nueva situación, ha cambiado la situación de las ecuaciones
de estado y se debe volver a la nueva Tabla de Transición.
XC
y2y1
Sistemas Digitales
00
01
11
10
00
00
00
01
-
01
01
11
01
01
11
10
11
-
-
10
00
-
-
-
Y2Y1
22
Mapas de Excitación y Funciones de Excitaciones
XC
y2y1
XC
00
01
11
10
00
0
0
1
-
0
01
1
1
1
1
-
-
11
0
1
-
-
-
-
10
0
-
-
-
00
01
11
10
00
0
0
0
-
01
0
1
0
11
1
1
10
0
-
y2 y 1
Y2
Y2 = X’ C y1 + y2y1
Sistemas Digitales
Y1
Y1 = X + y2’ y1 + C y1
Z = y2
Nuevo término para eliminar carrera crítica
23
Circuito Final Libre de Carreras Críticas
Y2
Z
C
X
Sistemas Digitales
Y1
24
Asignación de Estados
Es importante considerar que la asignación de estados debe buscar
la eliminación de las carreras críticas.
X1X2
y2 y 1
Sistemas Digitales
00
01
11
10
1
2
5
8
3
4
5
7
3
2
6
7
1
4
5
7
Y2Y1
25
Por ejemplo: si se aplicara al azar una asignación como la que
se indica en la figura, se podrían generar las siguientes
carreras críticas:
X1X2
y2 y 1
00
01
11
10
00
a
c
b
a
11
a
b
b
d
10
b
c
c
d
01
d
c
b
d
Y2Y1
Sistemas Digitales
26
Si se intercambia la asignación entre las filas 2 y 4 se logra
eliminar las carreras críticas.
X1X2
y2 y 1
00
01
11
10
00
a
c
b
a
01
a
b
b
d
10
b
c
c
d
11
d
c
b
d
Y2Y1
Sistemas Digitales
27
Otro ejemplo de asignación de estados que resulta algo más
complejo es el siguiente. Sea la siguiente tabla de flujo mínimo:
En
esta
tabla
existe
carreras críticas hacia el
estado estable “C”, para
X1X2=11 desde más de un
estado estable.
Sistemas Digitales
00
X1X2
01
a
11
10
a
c
a
b
b
c
b
a
b
c
d
d
d
c
d
28
Para lograr superar
esta situación se
opta por trabajar
con tres elementos,
y1y2y3, tal que la
asignación sea la
siguiente:
Sistemas Digitales
y1 y 2 y3
X1X2
00
01
11
10
000
a
a
c
a
001
a
b
c
d
011
b
b
c
b
010
-
-
-
-
110
-
-
-
-
111
-
-
-
-
101
d
d
c
d
100
-
-
-
29
Ejemplo Ilustrativo Operación Nivel (modo fundamental)
Un circuito de conmutación secuencial bajo operación de nivel,
tiene 2 terminales de entrada, X1 y X2 y un terminal de salida Z.
El circuito trabaja de la manera siguiente:
• Z va a estado “1” cuando X1 cambio a estado “1”.
• Z va a estado “0” cuando X2 cambia a estado “0”.
• Ninguna otra secuencia de entrada produce cambios en la
salida Z. Solamente una entrada puede cambiar de estado a
la vez (modo fundamental)
• Obtener:
1.- La tabla de Flujo Primitiva
2.- La tabla de Flujo Mínima
3.- Asignación de estados libre de carreras críticas.
4.- Ecuaciones de las variables de estado.
5.- El diagrama del circuito
Sistemas Digitales
30
Solución : Tabla de Flujo Primitiva
X1X2
00
01
Sistemas Digitales
11
10
Z
1
2
-
3
0
1
2
4
-
0
5
-
4
3
1
-
6
4
7
1
5
6
-
3
1
1
6
4
-
1
1
-
8
7
0
-
2
8
7
0
31
Solución: Tabla de Flujo Mínima
Por simple inspección se observa que las clases de estado son
las siguientes: a=(1,2); b=(3,5); c=(4,6); d=(7,8)
X1X2
Sistemas Digitales
00
01
11
10
Z
1
2
4
3
0
5
6
4
3
1
1
6
4
7
1
1
2
8
7
0
32
Solución: Clases de estado en Tabla de Flujo Mínima
X1X2
Sistemas Digitales
y1y2
00
01
11
10
Z
00
a
a
c
b
0
01
b
c
c
b
1
11
a
c
c
d
1
10
a
a
d
d
0
33
Solución: Asignación de Estados
Carreras Críticas
X1X2
X1X2
y1 y 2
00
01
11
10
y1 y 2
00
01
11
10
00
00
00
11
01
00
0
0
-
-
01
01
11
11
01
01
1
1
1
1
11
00
11
11
10
11
-
1
1
-
10
00
00
10
10
10
0
0
0
0
Y1Y2
Sistemas Digitales
Z
34
Solución: Asignación de Estados Libre de Carreras Críticas
X1X2
X1X2
y1 y 2
00
01
11
10
y1 y 2
00
01
11
10
00
00
00
01
01
00
0
0
-
-
01
01
11
11
01
01
1
1
1
1
11
10
11
11
10
11
-
1
1
-
10
00
00
10
10
10
0
0
0
0
Y1Y2
Sistemas Digitales
Z
35
Solución: Ecuaciones de Variables de Estado Y1 y Y2
X1X2
X1X2
y1 y 2
00
01
11
10
y1 y 2
00
01
11
10
00
0
0
0
0
00
0
0
1
1
01
0
1
1
0
01
1
1
1
1
11
1
1
1
1
11
0
1
1
0
10
0
0
1
1
10
0
0
0
0
Y1= x2y2 + y1y2 + x1y1
Sistemas Digitales
Y2 = x1y1’ + y1’y2 + x2y2
36
Solución: Ecuación de Salida Z
X1X2
y1 y 2
00
01
11
10
00
0
0
-
-
01
1
1
1
1
11
-
1
1
-
10
0
0
0
0
Z = y2
Sistemas Digitales
37
Solución: Ecuaciones Finales de Estado
Y1 = x2y2 + y1y2 + x1y1
Y2 = x1y1’ + y1’y2 + x2y2
Z = y2
Sistemas Digitales
38
Solución: Diagrama del Circuito
y2
X1 X2 y1
y1'
Y1
Y2
y1
y2
Z
Sistemas Digitales
39
Ejercicio
La figura y las ecuaciones siguientes definen un circuito
secuencial asíncrono en modo fundamental.
a. Obtenga una tabla de
flujo
Y1 = x2’y2 + x1y1 +x1x2’
Y2 = x1’y2 + x1’x2 + x2y1
Z = x1x2’ + x2y1’ + x1’y2
b. Utilice la tabla de flujo
preparada en la parte
(a) para determinar la X1
secuencia
de
salida X2
Lógica
correspondiente a la
Combinacio
y
secuencia de entrada 1
y2
nal
x1x2 = 00, 01, 11, 10,
11, 01, 00, 10 si las
líneas de retardo se
encuentran inicialmente
∆t
en cero (estado estable
∆t
x1 = x2 = y1 = y2 = 0).
Sistemas Digitales
Z
Y2
Y1
40
Solución: variables de estado
X1X2
X1X2
y1 y 2
00
01
11
10
y1y2
00
01
11
10
00
0
0
0
1
00
0
1
0
0
01
1
0
0
1
01
1
1
0
0
11
1
0
1
1
11
1
1
1
0
10
0
0
1
1
10
0
1
1
0
Y1= x2’y2 + x1y1 +x1x2’
Sistemas Digitales
Y2 = x1’y2 + x1’x2 + x2y1
41
Solución: salida
X1X2
y1 y 2
00
01
11
10
00
0
1
1
1
01
1
1
1
1
11
1
1
0
1
10
0
0
0
1
Z = x1x2’ + x2y1’ + x1’y2
Sistemas Digitales
42
Solución: Tabla de Flujo Mínima
X1X2
X1X2
y1 y 2
00
01
11
10
y1 y 2
00
01
11
10
00
00
01
00
10
00
0
1
1
1
01
11
01
00
10
01
1
1
1
1
11
11
01
11
10
11
1
1
0
1
10
00
01
11
10
10
0
0
0
1
Y1Y2
Sistemas Digitales
Z
43
Solución: Clases de estado en Tabla de Flujo Mínima
X1X2
X1X2
y1 y 2
00
01
11
10
y1 y 2
00
01
11
10
00
a
b
a
d
00
0
1
1
1
01
c
b
a
d
01
1
1
1
1
11
c
b
c
d
11
1
1
0
1
10
a
b
c
d
10
0
0
0
1
Y1Y2
Sistemas Digitales
Z
44
Solución: secuencia de salida
X1X2
00
01
11
10
11
01
00
10
Estado
a
b
a
d
c
b
c
d
Z
0
1
1
1
0
1
1
1
Sistemas Digitales
45
Ejercicio
Encuentre las ecuaciones de estado, libre de carreras críticas,
un circuito secuencial asíncrono que posee dos entradas, X1 y
una salida Z. El circuito se caracteriza porque:
para
X2 y
• Trabaja en modalidad fundamental
• La frecuencia de la señal de una de las entradas X es 4 veces
la frecuencia de la señal de salida en Z.
• La frecuencia de la señal de una de las entradas X es 2 veces
la frecuencia de la señal de salida en Z.
• Las señales de entrada y salida varían entre niveles binarios 0
y 1.
Sistemas Digitales
46
Solución
Diagrama de tiempo de acuerdo a condiciones del
problema
X1
X2
Z
Sistemas Digitales
47
Solución
X1
X2
X1
X2
Z
0
0
0
0
0
1
0
0
1
0
1
1
1
1
0
0
1
1
0
0
1
1
1
1
0
1
0
0
1
0
0
0
0
0
1
1
0
0
1
1
1
1
1
1
1
0
1
1
0
1
1
1
1
1
1
1
0
0
1
1
0
0
0
0
0
1
0
0
1
0
1
1
1
1
0
0
1
1
0
0
1
1
1
1
0
1
0
0
1
0
Sistemas Digitales
Tabla de Flujo Primitiva
X1X2
00
01
11
10
Z
1
4
-
2
0
5
-
3
2
0
-
4
3
2
0
5
4
3
-
0
5
8
-
6
1
1
-
7
6
1
-
8
7
6
1
1
8
7
-
1
48
Tabla de Implicancia
2
1-5
3
√
√
4
1-5
√
√
1-5
2-6
3-7
4-8
2-6
4-8
2-6
3-7
1-5
3-7
1-5
3-7
4-8
√
√
1-5
√
√
5
6
7
5
6
2-6
7
4-8
2-6
3-7
2-6
8
4-8
1-5
3-7
3-7
4-8
1
2
3
Sistemas Digitales
4
49
Clases de Estado y Tabla Mínima
Clases:
a = {1,3} ; b = {2,4} ; c = {5,7} ; d = {6,8}
Tabla Mínima
X1X2
Z(X1X2)
00
01
11
10
00
a
b
a
b
01
c
b
a
11
c
d
10
a
d
Sistemas Digitales
00
01
11
10
00
0
--
0
--
b
01
--
0
--
0
c
d
11
1
--
1
--
c
d
10
--
1
--
1
50
Asignación de Estados y Ecuaciones de Estado
Clases:
a = 00 ; b = 01 ; c = 11 ; d = 10
X1X2
Z(X1X2)
00
01
11
10
00
01
11
10
00
00
01
00
01
00
0
--
0
--
01
11
01
00
01
01
--
0
--
0
11
11
10
11
10
11
1
--
1
--
10
00
10
11
10
10
--
1
--
1
Y1 = y2 x’1 x’2 + y1 x2 + y1 x1
Y2 = y’1 x’1 x2 + y’1 x1 x’2 + y2 x’1 x’2 + y1 x1 x2
Z = y1
Sistemas Digitales
51
Descargar