Práctica5

Anuncio
LABORATORIO DE SISTEMAS DIGITALES II
SECCION 02
Atendida por el Profesor Arturo Huerta Martinez
PRACTICA # 5
SENCILLA MAQUINA DE ESTADOS SINCRONICA
Se debe presentar una máquina de estados sencilla, conformada por lo
menos de dos flip-flop’s sincrónicos y la lógica combinatoria necesaria
diseñada para que se comporte de una manera previamente definida, la cual
incluya por lo menos una entrada externa de control para determinar el estado
siguiente a cada estado de la máquina, el estado nuevo se adquiere con cada
pulso de reloj.
Se debe considerar que un estado de la máquina es cualquiera de las
combinaciones posibles de los estados 0 o 1 de los flip-flop’s que la
conforman, de tal manera que lo primero que se debe elegir es cuántos flipflop’s la conformarán.
Posteriormente se debe elegir cuantas entradas externas de control
tendrá la máquina y así mismo determinar el comportamiento de la misma con
cada combinación posible de las entradas de control.
Enseguida se deben establecer las entradas de excitación hacia cada uno
de los flip-flop’s, necesarias para que con cada pulso de reloj, se adquiera el
nuevo estado definido previamente dependiente tanto del estado previo
como de las entradas externas.
Finalmente, con las entradas de excitación se generarán las funciones
lógicas combinacionales que representan los circuitos de control de la
máquina de estados, que con la señal de reloj conectada simultáneamente a
cada flip-flop seguirá la secuencia de estados definida que se puede controlar
con las entradas externas.
A continuación se da un ejemplo con dos flip-flop’s Q1 y Q2 y una
entrada de control X el cual solo servirá de guía, en la práctica deberá
presentarse una de comportamiento diferente según el primer párrafo.
Los cuatro estados posibles de la máquina son:
A (Q1=0, Q2=0), B(0,1), C(1,1) y D(1,0)
Se elige el siguiente comportamiento: Si la máquina se encuentra en el
estado 00 y la entrada X es igual a 0 al ocurrir el pulso de reloj pasará al
estado 10, pero si la entrada X es igual a 1 el estado después del pulso será 00.
Estas dos posibilidades de comportamiento para el estado 00 se
muestran en los dos primeros renglones de la siguiente tabla y además se
agrega en ella el comportamiento deseado para cada uno de sus estados
posibles
Estado en Estudio (Actual) Entrada Dada (Actual) Estado Después del Pulso
(Q1Q2)n
Xn
(Q1Q2)n+1
A
00
0
10
A
00
1
00
B
01
1
11
B
01
0
10
D
10
0
01
D
10
1
01
C
11
1
11
C
11
0
00
Si se utilizan FF de tipo JK para implementar esta máquina entonces,
para lograr el comportamiento del estado 00 cuando la entrada externa X se
encuentre en 0, se requerirá colocar en la entrada J1 un 1 y cualquier nivel (x)
en la entrada K1, en tanto que en las entradas J2 y K2 se requerirá un 0 y
cualquier nivel (x) respectivamente y todo esto en forma simultánea para que
al ocurrir el pulso de reloj ambos FF’s adquieran el estado nuevo al mismo
tiempo (sincrónicamente).
La siguiente tabla muestra los niveles de excitación que requieren las
entradas J1, K1, J2 y K2 de los FF’s para cada caso de la tabla anterior:
(Q1Q2)n
00
00
01
01
10
10
11
11
Xn
0
1
1
0
0
1
1
0
(Q1Q2)n+1
10
00
11
10
01
01
11
00
J1
1
0
1
1
x
x
x
x
K1
x
x
x
x
1
1
0
1
J2
0
0
x
x
1
1
x
x
K2
x
x
0
1
x
x
0
1
Si se obtienen las expresiones lógicas para J1, K1, J2 y K2 en función
de Q1,Q2 y X a partir de las tablas de verdad anteriores se comprobará que
J1(Q1,Q2,X)n = X+ Q2
J2 = Q1
K1=X +Q2
K2 = X
las cuales representan los circuitos o conexiones que deberán tener los FF’s en
sus entradas J y K respectivas para lograr el comportamiento que se especificó
en la primera tabla de este ejemplo.
Se debe considerar que X es una entrada externa de control que se
puede escoger que esté en 0 o 1, lo que determinará el estado siguiente
después de un pulso de reloj; Q1 y Q2 son las salidas de los FF’s que indican
el estado previo a partir del cual se obtiene el nuevo estado después del pulso.
La demostración consiste en implementar el circuito resultante en un
protoboard, visualizando las variables de estado Q1, Q2 ... QN donde N es el
número de FF’s escogido para la práctica personal (en este ejemplo N=2).
Disponer interruptores que proporcionen los niveles 1 o 0 de las entradas de
control (en este ejemplo uno para X). Conectar simultáneamente las entradas
de reloj de los FF’s a un generador de pulsos de baja frecuencia (puede ser un
interruptor al cual se le hayan eliminado los rebotes).
Una vez implementado lo anterior, energizar y comprobar que para cada
estado de la máquina se puede obtener un nuevo estado después de cada pulso
de reloj de acuerdo a la tabla de comportamiento según la condición de las
entradas de control.
Podrán utilizarse cualesquiera de los flip-flop´s que se encuentren en
circuitos integrados comerciales, o bien podría programarse un GAL de tipo
secuencial.que cumpla las especificaciones del diseño previo.
Descargar