El sistema de apertura de una caja fuerte está compuesto por dos teclas A y B, un circuito secuencial a diseñar y un temporizador que mantiene la caja fuerte abierta durante 5 minutos cuando recibe un nivel lógico desde el circuito secuencial! Este temporizador vuelve a cerrar la caja fuerte pasado dic"o tiempo, independientemente del circuito secuencial! #uando se pulsa la tecla A, se produce un nivel lógico que entra al circuito secuencial, mientras que cuando se pulsa la tecla B se produce un nivel lógico $ de entrada al circuito a diseñar! %ientras no se pulse ninguna tecla no se genera ning&n nivel lógico de entrada al circuito secuencial! A B #ircuito secuencial 'emporizador #aja fuerte
(ara abrir la caja fuerte, la combinación secreta es) pulsar dos veces seguidas la tecla A, a continuación pulsar una vez la tecla B, y *nalmente pulsar una vez la tecla A! +i se "ace de esta manera, el circuito secuencial dará una salida a nivel lógico , que actuará sobre el temporizador, temporizador, permitiendo la apertura de la caja fuerte durante 5 minutos! +i en cualquier momento se introdujera un error al pulsar la secuencia secreta, en el siguiente ciclo de reloj todos los biestables se pondrán a cero el sistema si stema pasará al estado inicial-, y la secuencia debe volver a introducirse desde el principio! a- .ibujar el diagrama de estados, e/plicando claramente en qu0 consiste cada estado! b- 1mplementar el circuito secuencial a diseñar usando biestables 23 y las puertas necesarias! 1. Paso de las especifcaciones verbales al diagrama de estados En este caso, el diagrama de estados tiene que ser capaz de reconocer la combinación de entrada 1101. Partimos de un estado inicial en el que se espera la introducción del código. A continuación, se pasará a un nuevo estado cada vez que se reconozca correctamente el siguiente bit del código, mientras que si éste no corresponde al código se volverá al estado inicial, !abrá que teclear todo el código de nuevo. El signifcado de los estados será por tanto el de la
siguiente tabla. Estado "efnición #1 #0
q $o !a código 00 0
Estado inicial.
q el primer 1 01 1
%e !a recibido
q consecutivos 10 &
%e !an recibido dos 1
q de dos 1 consecutivos 11 '
%e !a recibido el 0 después
q0 q1 q& q' 0(0 1(0 0(0 1(0 0(0 0(0 1(0 1(1
El )uncionamiento del diagrama será el que se e*plica a continuación. +nicialmente nos encontramos en el estado q es 1101 nos mantendremos en este estado. -uando llegue el primer uno pasamos a q siguiente bit es de nuevo un 1, !abremos reconocido los dos primeros correctamente, por lo que 0. ientras no se teclee un 1 /recordemos que la combinación válida1. %i el 1 el siguiente estado será q incorrecta, como resultado !abrá que regresar a q completo de nuevo. "el mismo modo, al recibir un 0 estando en q reconocido 110. fnalmente, si en q' la entrada es un 1, el código !a sido correcto, por lo tanto la salida del circuito será 1 volveremos a q ltimo bit, aunque volvamos también a q código )ue erróneo.
. %in embargo, si en lugar de un 1 se recibe un 0, la secuencia es0 , para que el código sea tecleado por & pasaremos a q' /!emos 0. %i la entrada es un 0, entonces )alló el 0 , en este caso la salida del circuito es 0, puesto que el &. -onstrucción de la tabla de estados 2omando el diagrama de estados de la fgura anterior debe generarse la tabla de estados, en la que a partir de las entradas el estado actual se obtendrá el siguiente estado, en la que a partir de ambos, con auda de la tabla de e*citación se calcularán las entradas a los biestables /34 en este caso. $ótese como a!ora s5 aparece una )unción de salida /% di)erente del estado que almacenan los biestables. &
E #1/t #0/t 66 #1/t71 #0/t71 6 31 41 30 40 6 % 88888888888888888888888888888888888888888888888888888888888888888888888888 0 0 0 66 0 0 6 0 * 0 * 6 0 0 0 1 66 0 0 6 0 * * 1 6 0 0 1 0 66 1 1 6 * 0 1 * 6 0 0 1 1 66 0 0 6 * 1 * 1 6 0 1 0 0 66 0 1 6 0 * 1 * 6 0 1 0 1 66 1 0 6 1 * * 1 6 0 1 1 0 66 0 0 6 * 1 0 * 6 0 1 1 1 66 0 0 6 * 1 * 1 6 1
'. inimización de las )unciones e implementación del circuito %implifcando por 4arnaug! obtendremos las )unciones de entrada a los biestables /31, 41, 30 40 para el cálculo del nuevo estado, la )unción de salida %. 31 9 E #0 41 9 E 7 #0 30 9 E :;< #1 40 9 1 % 9 E #1 #0
EJEMPLO 2 : pulsos con 3 entradas x 1, x 2, x 3 y una salida z . La salida deberá cabiar de ! a 1, si y s"lo si, ocurre la secuencia x 1 x 2 x 3, ientras #ue $aya sido i%ual a cero. La salida deberá cabiar de 1 a ! , s"lo despu&s #ue ocurra x 2 a la entrada. "ise=ar un circuito de modo por
'OL()*+ En este e-eplo usareos el odelo de Moore, en el cual la salida de los estados se representa dentro del crculo. La si%uiente /i%ura presenta el dia%raa a blo#ues y el dia%raa de estados:
*niciaos nue0aente en un estado . continuaci"n puede presentarse una entrada al circuito #ue puede ser al%una de las seales x 1, x 2 o x 3 no as de una a la 0ez 4. 'i se aplicara x 2 o x 3, el circuito no cabia de estado, pero si se presenta x 1 el circuito recibe la priera condici"n a detectar y cabia de estado con salida ! . Estando en el estado 5, se pueden presentar 3 posibilidades: si se recibe x 1 el circuito no cabia de estado, si se aplica x 3 retornaos al estado para iniciar la secuencia6 /inalente, si se presenta x 2 cabiaos de estado pero la salida en ! . En el estado ) , de las tres posibilidades, 7nicaente x 3 %enera una salida 1, retornando al estado inicial con salida ! . 8abla de estados: Estado presente
Estado siguiente x1
x2
x3
Salida z
A
B
A
A
0
B
B
C
A
0
C
B
A
D
0
D
D
A
D
1
'e re#uieren dos 0ariables binarias y 1 y y 2, para asi%nar los 9 estados, coo se uestra en la tabla de asi%naci"n de estados: Asignación de estados y2
y1
0
1
0
A
B
1
D
C
e la tabla anterior se obser0a #ue a se le asi%na el c"di%o ! ! , a 5 el ! 1, a ) el 11 y a el 1! . 'ustituyendo estos c"di%os en la tabla de estados: Estado presente y1
y2
A
0
B
Estado siguiente x1
Salida z
x2
x3
y+1
y+2
y+1
y+2
y+1
y+2
0
0
1
0
0
0
0
0
0
1
0
1
1
1
0
0
0
C
1
1
0
1
0
0
1
0
0
D
1
0
1
0
0
0
1
0
1
(tilizando ulti0ibradores ' ;< , cuya tabla de excitaci"n es: Tala de excitación S!" #
#+
S
"
0 0 1 1
0 1 0 1
1 0 1 x
x 1 0 1
)obinando las dos tablas anteriores: Estado presente
A
y1
y2
0
0
Estado siguiente x1
x2
Salida z
x3
S1 "1 S2 "2 S1 "1 S2 "2 S1 "1 S2 "2 1
x
0
1
1
x
1
x
1
x
1
x
0
B
0
1
1
x
x
1
0
1
x
1
1
x
1
0
0
C
1
1
1
0
x
1
1
0
1
0
x
1
1
0
0
D
1
0
x
1
1
x
1
0
1
x
x
1
1
x
1
Mapas de =arnau%$ para las entradas de los ulti0ibradores:
e la tabla anterior, se obser0a claraente #ue la salida z es i%ual a: z > y 1 y? 2 El lo%i%raa /inal es: