Diseño de circuitos digitales y maquinas de estados

Diseño de circuitos secuenciales con maquinas de estado.

2.1 Introducción
?

Una maquina de estados es un sistema que genera una lógica de salida en función de un numero de entradas y una secuencia de eventos. La maquina de estados mas simple es el contador binario síncrono.

?

2.1 Introducción
?

?

Este genera una salida que depende del numero anterior; y debe “recordar” enque numero (estado) se encuentra para generar el siguiente. Si además es un contador ascendente/descendente deberá de considerarse la entrada que conmuta entre las dos secuencias para mostrar el siguiente numero de la cuenta.

Elementos de una maquina de estados
?

?

?

1.- Lógica combinacional del siguiente estado. (INPUT-FORMING-LOGIC). 2.- Registro del estado presente. (PRESENT STATEREGISTER). 3.- Lógica combinacional de salida. (OUTPUT-FORMING LOGIC).

Elementos de una maquina de estados

(IFL)
LOGICA COMBINACIONAL DEL SIGUIENTE ESTADO

(PSR)
REGISTRO DEL ESTADO PRESENTE

(OFL)
LOGICA COMBINACIONAL DE SALIDA

2.1 Contadores binarios síncronos
?

En el caso de un contador binario síncrono se omite el tercer bloque, dado que la salida no requiere serdecodificada y la única entrada que se requiere para generar el siguiente estado es la retroalimentación de la salida.

2.1 Contadores binarios síncronos

LOGICA COMBINACIONAL DEL SIGUIENTE ESTADO

REGISTRO DEL ESTADO PRESENTE

2.2 Tablas de excitación para FF-D, JK y SR

PRESENT STATE

NEXT STATE

FF-D

FF-JK

FF-SR

Qt 0 0 1 1

Qt+1 0 1 0 1

Dt 0 1 0 1

Jt 0 1 X X

Kt X X 10

St 0 1 0 X

Rt X 0 1 0

2.4 Diagramas de estado
?

Un diagrama de estados define la secuencia de eventos que sigue una maquina de estados así como las condiciones para la transición entre estos y el valor asignado a las salidas en cada estado. Los tres elementos básicos son:
? ? ?

Estado (STATE) (Circulo) Condiciones de las entradas (INPUT) (Rombo) Valor de las salidas (OUTPUT)(Rectángulo)

Contador Gray de 2 bits/F1
PRESET

Código del Estado

00

01

10

11

Contador Gray de 2 bits/F2
PRESET Nombre del Estado Código del Estado

A 00

B 01

D 10

C 11

Transición entre estados con condiciones

1010 1 0011 R 0 1100

Transición entre estados con condiciones
?

Este diagrama indica que cuando la entrada “R” sea 0 la maquina cambiara alestado “1100”. Y cuando la entrada “R” sea 1, el siguiente estado sera el “0011”.
?

NOTA: La transicion entre estados siempre se da sincronamente con la señal de reloj.

Asignación de datos a las salidas, dependiendo del estado.
?

?

Este diagrama indica que en el estado “0101” se activa la salida X, desde que comienza el estado hasta que termina. Y que el estado comienza en unatransicion positiva. SB = STATE BEGINING SE = STATE END

0101 X SB SE

2.5 Tablas de estado, 2.6 Calculo de expresiones booleanas a partir de las tablas de estado, 2.7 Implementación de circuitos secuenciales diseñados mediante maquinas de estado.

Diseñe una maquina de estados con cuatro estados, que realiza la siguiente secuencia: 0,4,2,1,0,4,2,…
PRESET

000

100

100

010

Realizarlas tablas de estado
PRESENT STATE Q2 0 0 0 0 1 1 1 1 Q1 0 0 1 1 0 0 1 1 Q0 0 1 0 1 0 1 0 1 Q2+1 1 0 0 X 0 X X X NEXT STATE Q1+1 0 0 0 X 1 X X X Q0+1 0 0 1 X 0 X X X D2 1 0 0 X 0 X X X IFL D1 0 0 0 X 1 X X X D0 0 0 1 X 0 X X X

Obtener las ecuaciones
?

Realizar las ecuaciones del ejercicio anterior.

2.6 Calculo de expresiones booleanas a partir de las tablas de estado. 2.7Implementación de circuitos secuenciales diseñados mediante maquinas de estado.

Ejemplo 1
?

Diseñe un contador sincrono que realice la secuencia 1,2,3,7,4,1,2,3,7,… Si por error se cargara un 0,5 o 6 en los registros, se debera comenzar en el estado 1 (inicio). Utilice FF-D y active un LED cuando se cargue un estado no valido.

1.- Hacer diagrama de estados
?

Observe que los estados 0,5 y 6…