MÁQUINA ROTATIVA (AUTÓMATA TIPO MEALY)


Como dije anteriormente esta práctica se llevaría acabo mediante una maquina de estados tipo mealy, que será luego introducido en un símbolo grafico que se utilizara para el diseño en el esquemático.

TABLA DE ESTADOS:

Aquí se enumeran todos los estados posibles que tendrá la maquina de estados.

Estos estados no deben confundirse con los estados internos que se van a necesitar para registrar todo el proceso secuencial.

DIAGRAMA DE FLUJO:

Con este diagrama expresamos la secuencia del proceso de la maquina rotativa.

ENTORNO XILINX:

Una vez teniendo todo claro y sabiendo la secuencia de la máquina  de estados, dibujaremos el esquemático en xilinx pero para eso hay que crear un símbolo del diagrama de estados del ejercicio, y para esto, xilinx tiene un entorno para crear diagramas de estados el cual se llama statecad.

En el statecad se puede simular los procesos de los estados paso a paso o si queremos hacerlo directamente sin ir paso a paso, lo que nos lleva a ver su comportamiento mediante una señal  (statebench).

DIAGRAMA DE ESTADOS EN STATECAD:

Como he mencionado anteriormente  con el statebench se puede crear una señal del comportamiento de la máquina rotativa, que a continuación se mostrara:

Luego hay que crear un código vhdl para poder crear el símbolo en el esquemático que a continuación se mostrará:

Luego de esto, en el área de trabajo de xilinx para crear el esquemático se añade una nueva fuente el cual es el archivo vhdl que se ha generado anteriormente y se crea un símbolo esquemático  y así se obtendrá el símbolo de la maquina de estados.

Esquema:

Ya teniendo el esquemático completo, hace falta colocar los pines de entradas y salidas de la maquina rotativa al cpld.

Los puntos azules en la imagen son los pines asignados del cpld para la maquina rotativa.

Podemos observar el correcto funcionamiento del diseño en circuito con la siguiente configuración de entrada/salida:

ENTRADAS

 

  • RST = Estará en ‘0’ durante el proceso normal del autómata.
  •  a, b = Pondremos una secuencia de valores que nos lleven por los distintos estados de la maquina.

CLK 

SALIDA

  M = Se pondrá en ‘1’ en los estados 1, 2, 3 y 4.