No se puede obtener el mapa k correcto para esta máquina de estados finitos (Sistema de paso de peatones)

Estoy tratando de crear un sistema de paso de peatones usando una máquina de estados finitos. Aunque entiendo cómo hacerlo, aparentemente llego continuamente a las ecuaciones incorrectas para mis entradas D ya que mis K-maps son incorrectos. Estoy usando 2 chanclas D para esta máquina de estado. Lo intenté varias veces y rehice mis k-maps, pero sigo llegando a las ecuaciones incorrectas; aparentemente, debería haber 3 grupos tanto para la entrada D1 como para la entrada D0. Publicaré el diagrama en la máquina de estado y también mi trabajo. Todo lo que pido es el mapa K para la máquina de estado. Aquí está el diagrama a continuación junto con mi k-map, hágame saber dónde estoy haciendo esto incorrectamente, gracias:

Diagrama y SalidasEnlace a la imagen del diagrama para mayor resolución: http://i.stack.imgur.com/zyDb9.png

Mi mapa K

Respuestas (2)

Me gustan estos problemas. Son como Sudoku para EE.

No estoy familiarizado con su estilo de mapa de Karnaugh. Te mostraré cómo nos enseñaron esto.

El registro de estado tiene dos flip-flops con entradas D1, D0 y salidas Q1, Q0. Disponemos de entradas TC, C7 y RESET. Restablecer es un caso especial. Si queremos que sea asíncrono, lo conectamos a la entrada de reinicio de los flip-flops y luego no entra en nuestras ecuaciones lógicas. Si queremos que sea sincrónico, lo usamos en las ecuaciones, pero su función es tan simple que podemos mantenerlo fuera de los K-maps.

Primero nos ocuparemos de las transiciones de estado, luego de las salidas.

ingrese la descripción de la imagen aquí

D1 y D0 obtienen sus propios K-maps. El reinicio es 'R' y puede eliminarlo si vamos a usar reinicios asíncronos.

ingrese la descripción de la imagen aquí

Ahora las salidas. Dado que las salidas solo dependen de los valores de estado y no de las entradas (nombre esa máquina de estado), hace que sea fácil escribir las ecuaciones de salida por inspección.

WALK solo está activado en el estado 00. WALK = !Q1 * !Q0(! significa 'no')

HAND está encendido en los estados 11 y 10.HAND = Q1

NUM_ON está activado en los estados 01 y 11.Num_on = Q0

Finalmente , EN solo está desactivado en el estado 01.EN = !( !Q1 * Q0)

Creo que puedo ayudarte con esto, pero estoy luchando por descifrar el K-Map que has puesto. Creo que lo mejor sería si pudiera enumerar cada estado y para cada estado enumerar las entradas y la condición en que estarán las entradas, las salidas y lo que quiere que sean en cada estado y una descripción en sus propias palabras de lo que está destinado a suceder en ese estado (por lo general, aquí es donde empiezo cuando diseño un FSM).