Detector de secuencia de bits de la máquina de estados finitos (FSM) para un flujo de varios bits [cerrado]

0

Por lo general, extraer un FSM es la solución a este problema. Sin embargo, mi pregunta aquí es su implementación. Pensé en dos formas, pero no estoy seguro de si eran correctas.

  1. FSM típico, tabla de verdad para estados actuales, estados siguientes y salida de 1 bit. Desarrolle la función lógica para cada salida e implemente la función lógica con y puertas y etc.

  2. 5 flipflops consecutivos se conectan a un solo mux como su señal de control. Cada etapa contribuye 1 bits al control. Hasta que la señal de control de estos flip-flops coincida con el patrón requerido, seleccione y envíe la salida 1.

¿Cuál es la forma correcta ya que la mayoría de las veces veo que la gente usa el primer método?

¿Cuál es el mejor método para diseñar un detector de secuencia para un flujo de varios bits? Por ejemplo: 10110

    
pregunta user3431800

1 respuesta

2

Tengo que admitir, por eso estaría muy tentado de ignorar el enfoque FSM en conjunto, a favor de algo como un registro de desplazamiento de 5 bits y algunas cosas combinatorias simples, más fáciles de escribir, más fáciles de LEER (posiblemente más importantes) y muy, muy obvio en casi cualquier HDL.

5 flipflops y como máximo una o dos LUTS, que supongo que es tu segunda opción.

Las FSM pequeñas tienen su lugar, y en una codificación de estado denso podría ser más densa que el enfoque de cambio de reg (en uno, quizás dos flip-flops), pero hay razones por las que generalmente se prefiere una codificación en caliente para máquinas de estados y eso no va a ser mejor que el control de cambios, mientras que es más difícil de entender.

TBH, hacer ese tipo de cosas como un FSM me parece un ejercicio de licenciatura, no algo que se deba hacer en la realidad.

    
respondido por el Dan Mills

Lea otras preguntas en las etiquetas