Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Asincrono
Asincrono
Tema 6: Sistemas Secuenciales Asncronos 6.1. Sistemas Secuenciales Asncronos en modo fundamental 6.2. Anlisis de los Sistemas Secuenciales Asncronos Tabla de Transicin Tabla de Flujo Tabla de Flujo Primitiva Minimizacin 6.3. Diseo de Sistemas Secuenciales Asncronos Mapas de Excitacin. Mapas de salida 6.4. Problemas del diseo de Sistemas Secuenciales Asncronos Ciclos y carreras (Rediseo) Azares (Riesgos)
Milagros Fernndez Centeno Tema 6. Sistemas Secuenciales Asncronos 1
6.1. Sistemas Secuenciales Asncronos en modo fundamental Los S.S. Asncronos son circuitos combinacionales que tienen realimentacin Ejemplo:
y
R Y=Z S
Y = S + y + R = S + y R
M y1 M M
yk
Combinacional
M M
z1 zp Y1
Yk
Retardo
Retardo
Modo fundamental a) En cada instante slo se puede cambiar una entrada b) No puede haber otro cambio hasta que todas las variables se hayan estabilizado
Tema 6. Sistemas Secuenciales Asncronos 2
6.2. Anlisis de los Sistemas Secuenciales Asncronos a) Partimos del circuito En nuestro caso:
R Y=Z S
Y = S + y R
b) Describimos el comportamiento del circuito usando la tabla de transicin b1) Salidas y excitaciones en funcin de las entradas y de las secundarias b2) Cada excitacin es el estado siguiente de las secundarias
SR y
0 1
y=0
SR=00 Y=0
Y = S + y R
Si cambio R ? 1 (slo cambio una variable (Modo fundamental) Y=0 Si cambio S ? 1 desde (slo cambia una variable) Y=1
Y = S + y R
Parto de Cambio S
y=0
SR=10 Y=1
Parto de Cambio S
y=1
SR=10 Y=1
Como hemos partido de S = 0, R = 0 no hemos podido considerar el caso S = 1, R = 1 porque slo consideramos el modo fundamental
c) Tabla de Flujo Asignamos un estado distinto a cada combinacin de entradas y secundarias estables estado actual En la tabla de flujo el estado siguiente (excitaciones) es funcin de las variables de estado (secundarias) y de las entradas Nota: Un estado estable es cuando Y = y En el caso que estbamos discutiendo
Y = S + y R
Estados estables
Y=0+0 1=0=y Y=0+0 0=0=y Y = 0 + 1 1 = 1 Ky Y=0+1 1=1=y Y=0+1 0=0Ky Y=1+1 1=1=y
Designamos arbitrariamente los estados estables: y=0 y=0 y=1 y=1 SR=00 SR=01 SR=00 SR=10
1 4 3 2
}
11
Los estados estables los encerramos en un crculo. Los inestables los designamos con los nombres de los estables a los que van pero sin crculo
SR y
0 1
La tabla de flujo 00
1
01
4
11
10 2
d) Tabla de flujo Primitiva Tabla de flujo donde slo aparece un estado estable por fila
SR
2
00
1
01 4
10 2
2 Imposible cambiar las 2 entradas
1 2 3 4
La tabla de salida
3
3
4
4
SR y
0 1
00 0 1
01 0
11
10
1 1
2 entradas: x1 x2 1 salida: z
z=0 siempre que x1 = 0 Mientras x1 = 1, el 1er cambio en x2 z = 1 z sigue en 1 hasta que x1 vuelve a 0
Nota: El cambio en las entradas estar separado suficientemente para que el circuito se estabilice antes de que llegue la transicin en una segunda entrada. 1) Tabla de flujo primitiva Debemos partir de un estado inicial estable conveniente Por ejemplo: x1 = 0 x2 = 0 salida z=0 Independiente de cual fue la entrada que cambi la ltima Nota: Indicaremos slo las salidas en los estados estables
x1 = 0
Cambia x 1
x2 = 0
z= 0
Cambia x 2
3 Cambia x 1
x1 = 1 x 2 = 0 z= 0
Cambia x 2
x1 = 0 x 2 = 1 z= 0
Cambia x 1
Cambia x 2
x1 = 1 x 2 = 1 z= 1
Cambia x 2 Cambia x 1
x1 = 1 x 2 = 1 z= 0
Cambia x 1
Cambia x 2
x1 = 1 x 2 = 0 z= 1
Cambia x 2 Cambia x 2
x1 = 1 x 2 = 0 z= 1
Cambia x 1
Cambia x 1
Cambia x 2
x1 = 1 x 2 = 1 z= 1
Cambia x 1 Cambia x 2
x1 x2
1
x1 x2
00 01 11 10 00 01 11 10 2
2
4 5
4 5
0 0 0 0 1 1 1 1
z
Estado Actual
x1 x2
1 2 3 4 5 6 7 1
x1 x2
00 01 11 10 00 01 11 10 2
2
4 5
4 5
0 0 0 0 1 1 1 1
Salida
1 1
1 1
2 2
1 1
6 7
6 7
2 2
1 1
6 7
6 7
8 8
8
8 8
8
Estado Siguiente
Si comparamos esta tabla con la tabla de transicin de estados vemos que slo falta poner el estado actual y el siguiente
Repeticin
Minimizacin Incompatibles:
2 3 4 5 6 7 8
v v
3-6 3-7 3-6 3-7 3-7 4-5
3 3 4 4
6 7 5 8
v
4-5 4-8 4-8 4-8
3-6 4-5 3-7 4-8 6-7 4-8 3-7 5-8 6-7 5-8 5-8 5-8
1 Pasada Incompatibles
1 1 1 1 1
4 5 6 7 8
2 2 2 2 2
3 5 6 7 8
3 4 3 5 3 8
4 6 4 7
v
6-7
v 7
Mximos Compatibles 1 2 5 6 si 1 3 5 8 si 2 4 5 7 si 7 8 6 8 si 6 7
6 5 5 6
7 8 8 7
5 8
si
si si si
Estado Actual
00 01 11 10 00 01 11 10 b
b
(1 3) (2 4) (5 6 7 8)
c
b c
0 0 0 1
Salida
a a
c
c
Estado Siguiente
Respecto a las salidas Antes habamos dicho que no nos bamos a preocupar de las salidas durante las transiciones, sino slo cuando estbamos en el estado estable. Pero hay dos casos: 1) Si una variable de salida va a cambiar como resultado de un cambio de estado, esa variable efectivamente es un dont care durante la transicin. Si por ejemplo va a cambiar de 0 a 1, si se pone un 0 en esa variable durante la transicin, el cambio al valor 1 se producir necesariamente al final de la transicin. Si se pone un 1 en la transicin , el cambio se ha producido al principio de ella. Durante la transicinpuede ser un 0 o un 1, luego es un dont care 2) Si la variable de salida no tiene que cambiar como consecuencia de un cambio de estado, no debemos dejar libertad de que sea un 0 o un 1 durante la transicin.
11
Ejemplo: Transicin a ?
Estado Actual
b ?
b x1 x2
x1 x2 a b c a
00 01 11 10 00 01 11 10 b
b
00 01 11 10 0 0 0 0 1
Salida
(1 3) (2 4) (5 6 7 8)
c
b c
0 0 0 1
Salida
a a
c
c
Estado Siguiente
00 01 11 10
a b c
0 0
0 0
0 1
(1 3)
1
(2 4) b
a c (5 6 7 8)
Salida
12
6.3. Diseo de Sistemas Secuenciales Asncronos a) Tabla de flujo b) Minimizacin. Tabla de flujo mnima c) Mapas de excitacin: Asignar combinaciones especficas de secundarias a estados Por ejemplo: En el caso que estamos discutiendo 3 estados 2 variables secundarias Si damos cualquier asignacin ( Cuidado!!!: discusin en el siguiente apartado) y1 y2 0 0 1 0 1 1 ? ? ?
a a b c b c x1 x2 x1 x2 y1y2
00 01 11 10
a
00 00 00 00
01 01 01 01
11 11 01 11
01 00 11 11
b
b
c
b c
00 01 11 10
x1 x2
a a
c
c
Estado Siguiente
x1 x2 y1y2
Y1 Y2 ?
excitaciones
00 0 0 0
01 0 0 0
11 1 0 1
01 0 1 1
y1y2
00 0 0 0
01 1 1 1
11 1 1 1
01 0 1 1
00 01 11 10
00 01 11 10
Y2 = x2 + y2x2
}
13
Mapas de excitacin
d) Mapa de salida
x1 x2 y1y2
00 01 11 10 0 0 0 0
00 01 11 10
0 1
z = y1
x2
Y2 y2 y2x2
x1
6.4. Problemas del diseo de Sistemas Secuenciales Asncronos Ciclos y Carreras Es posible que un circuito pase por ms de un estado inestable antes de alcanzar un nuevo estado estable. Si para un estado inicial (estable) y un cambio en la entrada la secuencia de estados inestables por los que el circuito pasa es nica, a esa secuencia se le llama ciclo. Ejemplo: x2 x1 Paso de 1 a 4 al cambiar x1 desde 0 1 y2 y1 pasa de 0 0 0 1 1 1 1 0 00 01 11 10 y2 y1 Cada uno de los cambios implica un cambio en una secundaria 00 1 2 No hay problema. Al final llega al estado estable que tena 01 3 que llegar. 11 4 Cuando cambia ms de una secundaria el circuito tiene una 10 4 carrera. Otro ejemplo
x2 x1 y2 y1
00 01 11 10 00 01 11 10
1
2 2
2
Si estamos en 1 y2 y1 = 0 0 Si x1 cambia 0 1 puede pasar que como consecuencia del circuito que implementa el SSA, Y 2 cambie antes pasando a y2 y1 = 1 0 (inestable) y despus cambie Y1 pasando a y2 y1 = 1 1 (estable). Si es al revs, Y1 cambia antes pasando a y2 y1 = 0 1 (inestable). Despus cambia Y2 pasando a y2 y1 = 1 1 (estable). El resultado final es el mismo:
Tema 6. Sistemas Secuenciales Asncronos
Carrera no crtica
15
Carrera Crtica
y2 y1 x
0
1
y2 y1
0
00
00 01 11 10
00
2
3 1
3
01 11 10
10 00
10 Y2 Y1
01
El circuito se supone que debe moverse desde el estado estable al cambiar x 0, al estado estable 3 (y2 y1 = 1 0)
2 (y2 y1 = 0 1) con x = 1,
Si Y1 cambia antes, se pasa a y2 y1 = 0 0, estado estable 1 y ah se queda. Si Y2 cambia antes, se pasa a y2 y1 = 1 1, (inestable), despus cambia Y1 y se pasa a y2 y1 = 1 0, estado estable 3 Dependiendo que variable de estado cambie antes se llega a un estado estable u otro
Carrera Crtica
16
Para eliminar carreras crticas 2 posibilidades a) Hacemos asignaciones sin carreras Asignamos a los estados que tengan transiciones entre s, cdigos adyacentes (vara una variable secundaria durante la transicin)
x2 x1
00
a b
01 c c
c d
11
a
10 c
b c
d a
d
b a
00
a c
01
00 01 11 10
10
11
17
b) Si no es posible b1) Puede ser que sea una carrera no crtica Ejemplo
x2 x1
Transiciones 00
a b
01 c c
c
11
a
10 c
b c
a b c d
d a
d
b a
c c d a b a b c
00
a c
01
10
11
La transicin diagonal de d no puede ser eliminada pero representa una carrera no crtica ya que se puede pasar de d a c a travs de a o a travs de b
18
00
A
01 B
B C
11 D
B
10
A
Transiciones A B C D B D A D A B B C 00
A B
A
C
D A
D
01
B
D
10
11
Puede haber carreras crticas Qu se puede hacer? Depende de si el n de estados es una potencia de 2 o no. Si recordamos el problema de la pgina 13
x1 x2
00 01 11 10
a b c a
b
b
c
b c
a a
c
c
Transiciones a b c b a c c a b
Estado Siguiente
Si hacemos la asignacin: 00
a b
01 00
a c b
01
11
a y c tienen transiciones entre s, b y
10
c tienen una transicin entre s,
y no tienen asignados cdigos adyacentes Carrera Crtica Solucin: En el caso anterior, utilizar los trminos no importan porque el n real de estados no es potencia de 2. Dos tcnicas para aprovechar los estados libres: 1) Fila compartida ------------------------------- Si se puede usar es preferible 2) Asignacin fila mltiple Asignacin universal para tablas de 3 estados ----------- libre de carreras crticas
y1 y2
0 1 3
1 2
Tema 6. Sistemas Secuenciales Asncronos 20
0 1
Asignacin 00
a b a b c c
00 01 11 10
a b c a
10
y1 y2 0 0 1 0 0 1
b
b
c
b c
a a
c
c
Estado Siguiente
01
}
b
b
No hay problema
00 01 11 10
a
00 01 11 10
00
00 10 11
c
b
a
Est. libre
b
Est. libre
c
c c
00 10 11
10
01 00
10
11
00 10 10
11
01
01 01
01 a
01 00
Y1 Y2
Estado Siguiente
21
x1 x2 y1 y2
x1 x2 y1 y2
00 01 11 10 0 0 1 1 1
1
00 01 11 10 0 0 0
1
00 10 11
0 1
0
1
00 0 10 11 01 0 0
1 0
0
1
0 0 0
1 1 1
01 0
Y1 = x1 x2 + y1 y2 x1
Y2 = y2 x1 + y1 x1 x2 + y1 x1 x2 + y1 y2 x2
x1
y1
Y1 y1y2x1 y1y2x2
x2
y1x1x2 Y2 y1x2x1
y2
Si tenemos 4 estados no habr filas (estados) libres para compartir, a no ser que aadamos una variable de estado ----------- Asignacin fila mltiple A cada estado se le asignan 2 o ms combinaciones de variables de estado (2 o ms filas en la tabla de transicin) Por ejemplo: Para 4 estados Asignacin universal sin carreras
y3 y2 y1 0 1
3 00 1 2 01 3 4 11 2 1 10 4 3 2 100 4
101 2 110
001
1 000
23
00
A
01 B
B C
11 D
B
10
A
00 0 0
01 1 0 1
11 0 0 1
10 0 0 1
1 2 3 4
A
C
D A
D
B
D
00
A1
01 B1
B1
11 D2
B1 D1
10
A1
00 0 0 0 0
01 1 1 0 1 0 1
11 0 1 0 1 0 0
10 0 1 0 1 0 0
100 D2
A1 C1
C1
D1
D1
B1
C1
B2
D2
A1
D2
A1
000
C1 010
C2
C2 A2
B2
C2
B1 D1
B2
A2
A2
B2
B2
A2
D2
24
00
000
01
001 001 001 010 110 101 110 110
11
100 001 011 110 100 001 011 110
10
000 011 011 000 100 111 111 100
00 x
01 x
11
10
00 01 11 10
x x x x
Y3 Y2 Y1
000 x
001 x
011
010
100
101
111 x
110 x
00 01 11 10
x x x x
x
25
Riesgos: Empezamos con un ejemplo Tenemos una tabla de flujo y una tabla de transicin para un Circuito Secuencial Asncrono. No tiene carreras crticas y por tanto se supone que funcionar de forma adecuada.
x2 x1 y2 y1
00 a b d a
01 a b b d
11 a a c c
10 d b c d
00 01 11 10
a b c d
d a b d a c
00
a b
01
10
11
Ecuaciones mnimas
x2 x1 y2 y1
00
00 01
01
00 01
11
00
10 10
Y2 = y2 x2 + y2 y1 x1 + y1 x2 x1 + y2 y1 x1 Y1 = y2 x2 y1+ y2 y1 x1 + y2 x2 x1 + y1 x2 x1
00
01 11 10
00
11
01 11 10
10 00
01
10
11
Y2 Y1
26
x2
A1
y2x2 y1
x1
A2
y2 y1x1 Y1
A3
y2x1x2 y1x2x1
A4
x y12 y2
x1
Lgica de Y 2
Y2
x1 -----?
Pero vamos a ver lo que pasa en detalle: Cuando x1 -----? 0 Salida A2 = 0 Salida A3 = 0 Salida A4 --? 1 pero como para obtener x1 se necesita un inversor habr un retraso debido al inversor para que la Salida A4 = 1 Y1 Riesgo esttico
00 0 1 0 0
01 0 1 1 0
Y1
11 0 0 1 1
10 0 1 1 0
00 01 11 10
a Y =y x y+y y x +y x x +y x x 1 2 2 1 2 1 1 2 2 1 1 2 1
Y1 = y2 x2 y1+ y2 y1 x1 + y2 x2 x1 + y1 x2 x1 + y1 x2 x1 + y2 y1 x2 + y2 y1 x1
28
Tabla de Excitaciones
0 00 11 11 00
1 01 01 10 10
y2 y1
0 0 1 1 0
Y2
1 0 0 1 1
y2 y1
0 0 1 1 0
Y1
1 1 1 0 0
00 01 11 10
00 01 11 10
00 01 11 10
Y2 = y1 x + y2 x + y2 y1 Y1 = y1 x + y2 x + y2 y1
29
Suposicin: Circuito estable 11 y2 y1 x 1 1 0 Ahora hay un cambio en la x 0 1 Este cambio debe producir un cambio en Y1 pasando al estado estable 10
y2 y1 x
y2
A1
y2 y1
A2
A3
0 00 11 11 00
1 01 01 10 10
00 01 11 10
Salida de A3 0 Y1 0 y1 0 Salida de A1 0 Se espera que al mismo tiempo la salida de A2 1 de tal forma que Y2 no se vea afectada. y1 Pero si la puerta A2 tiene un retardo muy grande puede ser que su salida permanezca en 0 haciendo que Y2 valga 0, por lo que se pasara de y2 y1 x a y2 y1 x 1 1 0 0 0 1
A4
y2x Y1 y2 y1 OR1
A5
Estado inestable
Parece que es un riesgo esttico pero no lo es. Aparece porque una variable de estado depende de la otra (cosa normal).
Tema 6. Sistemas Secuenciales Asncronos 30
Slo se puede eliminar analizando los retardos de los distintos caminos de realimentacin Cmo se averigua si existe un riesgo esencial? Si en la tabla de transicin hay un estado estable en que 3 cambios consecutivos en una nica variable llevar al circuito a un estado diferente que al que llegaba al hacer un cambio nicamente. Ejemplo: x=0 1 3 3 x=1 2 2 4 4 Si estamos en 1 y hacemos un cambio en x pasamos a 2 Pero si estamos en 1 y hacemos 3 cambios pasamos a 4
y2 y1
0 00 11 11 00
1 01 01 10 10
00 01 11 10
31