Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Práctica # 5
“Máquina de estados”
Alumno:
Jesús Alejandro Ramírez Tovar
Carrera:
Ingeniería Electrónica.
TECNOLÓGICO NACIONAL DE MÉXICO
INSTITUTO TECNOLÓGICO DE QUERETARO
INGENERÍA ELECTRÓNICA
Introducción
En el presente trabajo abordaremos el tema de maquinas de estados, concretamente
máquina de Mealy, ya que el ejercicio hace referencia a una secuencia de contraseña,
si la contraseña es correcta el display marcara una “A” y si la contraseña es incorrecta
marcara “1”, adicional a esto en el display se deberá mostrar el estado en el que esta,
para poder visualizar cada una de las etapas, utilizaremos el reloj interno para dar un
tiempo de visualización y después vaya cambiando mostrando la salida mostrando las
etapas y el resultado final.
Marco teórico
Máquina de estados.
Un ‘estado’ es la condición de una cosa en un tiempo determinado. Algunos que
pueden realizar tareas y que utilizan estados como su núcleo son máquinas de estado.
También son conocidas como máquinas de estado finitas, lo que significa que sabemos
todos los posibles estados de ella. La clave para la máquina de estado es el concepto
del tiempo y la historia. El estado de la máquina es evaluado periódicamente. Cada vez
que es evaluada, un nuevo estado es elegido (el que podría ser el mismo estado
nuevamente) y el resultado es presentado.
igualando el estado anterior más uno. El set finito de estados que puede tener es la
cantidad de números que puede contar.
George Mealy escribió un ensayo un año antes que Moore, titulado “A Method for
Synthesizing Sequential Circuits”, en el cual entra en profundidad acerca de crear
máquinas de estado desde funciones matemáticas, y describe esas salidas de
máquinas de estado en términos de sus entradas.
TECNOLÓGICO NACIONAL DE MÉXICO
INSTITUTO TECNOLÓGICO DE QUERETARO
INGENERÍA ELECTRÓNICA
Para diagramar la máquina Mealy, la salida está hecha para depender de ambos: el
estado actual y la entrada. Aquí la nube de la lógica de la próxima etapa contiene la
lógica de salida también:
También puede ser dibujado separando la nube en la lógica del próximo estado o
lógica de salida.
Reloj VHDL
Podemos describir por tanto el reloj del sistema como su corazón, donde cada
palpitación hace fluir las señales desde unos biestables hasta su destino, que será
otro biestable. El tiempo que tarde la señal en llegar de su origen a su destino entre
dos pulsaciones de este corazón eléctrico, lo denominamos el camino crítico del
circuito, y es la velocidad máxima a la que puede latir el reloj, ya que si fuera más
rápido las señales no serían estables a las entradas de los flips-flops y el circuito
comenzaría a dar resultados erroneos.
Cada FPGA necesita tener conectada a alguno de sus pines de entrada una señal
de reloj. El reloj desde ese pin se propagará a través de líneas internas a los
recursos de la FPGA utilizados para implementar el diseño.
TECNOLÓGICO NACIONAL DE MÉXICO
INSTITUTO TECNOLÓGICO DE QUERETARO
INGENERÍA ELECTRÓNICA
Divisor de frecuencia
Desarrollo
Se asigna una contraseña, en este caso 100111 cada que se vaya avanzando en cada
uno de los estados se leerá la salida observando si es parte de la contraseña, si no es
parte de la contraseña, regresara al primer estado indicando que la contraseña es
errónea cambiando el resultado a “1”, si por el contrario todo es correcto la salida se
mostrara con una “A”. Si se desea volver a introducir la contraseña se deberá de activar
y desactivar el reset el cual será indicado con la letra “r”. Cada estado aparecerá solo 1
segundo.
Pin planner:
Resultados
Mientras la contraseña sea correcta seguirá avanzando hasta llegar a la letra A
TECNOLÓGICO NACIONAL DE MÉXICO
INSTITUTO TECNOLÓGICO DE QUERETARO
INGENERÍA ELECTRÓNICA
TECNOLÓGICO NACIONAL DE MÉXICO
INSTITUTO TECNOLÓGICO DE QUERETARO
INGENERÍA ELECTRÓNICA
TECNOLÓGICO NACIONAL DE MÉXICO
INSTITUTO TECNOLÓGICO DE QUERETARO
INGENERÍA ELECTRÓNICA
TECNOLÓGICO NACIONAL DE MÉXICO
INSTITUTO TECNOLÓGICO DE QUERETARO
INGENERÍA ELECTRÓNICA
Conclusión
Uno de los inconvenientes que se tuvo fue que cuando trate de implementar una flag
mostraba que siempre era error, no importada cuanto tiempo le daba para que
analizara el estado del botón, siempre daba error, esto se soluciono con mejor
mandarlo al estado 1.
Referencias bibliográficas
[3]V. (2019b, febrero 19). Dividir el reloj en una FPGA. Recuperado 27 de marzo de 2021, de
https://vhdl.es/dividir-reloj-en-fpga/