¿Cómo implemento una máquina de estado finito simple con flip-flops 2 T?

1

La siguiente máquina de estados finitos (FSM # 1)

sepuedeimplementarcon2Tflip-flopsasí:

Esto tiene sentido porque tiene 4 estados diferentes {00,01,10,11} y el flip-flip TA maneja el bit izquierdo mientras que el flip-flop TB maneja el bit derecho.

Sin embargo, si tiene una máquina de estados finitos (FSM # 2) que tiene 3 estados:

¿cómocodificaslosestados?¿Simplementedigo"A = 00, B = 01, C = 11"?

Además, las entradas son {x, y} mientras que las salidas son {0,1} para FSM # 2, mientras que FSM # 1 tanto las entradas como las salidas son {0,1}. No estoy seguro de si este es un problema de notación que tengo, pero ¿cómo representan los tres estados, entradas y salidas de FSM # 2 en una tabla como el primer diagrama para FSM # 1?

Apreciaría todos / cualquier consejo!

    
pregunta user1068636

1 respuesta

2

Esto parece una pregunta de tarea, que no responderé. Pero aquí hay algunos consejos:

  • No puede representar más estados que lo que tiene disponible - > eso significa que tendrá que pasar al siguiente estado superior (es decir, 2 FF para 4 estados) o usar solo un FF por estado. (es decir, FF # 1 se correlaciona directamente con A).

  • la opción # 1 (2 FF y 4 estados) es más económica, pero debe asegurarse de que el estado no utilizado no se active y luego se bloquee.

    • puede dibujar esto como un cuarto estado "D" con los bucles de vuelta a sí mismo.
    • lo que generalmente se considera diseño seguro es que siempre tienes transiciones explícitas LEJOS del estado no utilizado en caso de que se active.
  • la opción # 2 usa más FF pero no puede tener ningún estado oculto.

    • es inherentemente más seguro.
    • se conoce como un diseño "uno caliente" y los códigos de termómetros son ejemplos de esto.

Su elección de estados "A = 00", etc. hará que el diseño sea más simple o más complicado. Es posible que desee ir con lo que usted describe o con el estado C="10". Debes mirar todas las posibilidades.

El primer SM, solo usa 0 o 1 como entrada porque solo tiene una variable de entrada. Deberían haber usado una variable para mayor claridad de todos modos. Notará en la tabla que está marcado como "x" pero no en el diagrama.

    
respondido por el placeholder

Lea otras preguntas en las etiquetas