Moore vs mealy, ¿por qué la salida se retrasa en el primero?

3

No soy un ingeniero (desarrollador de software), pero me gustaría entender por qué se retrasa la salida de la máquina de Moore.

Sé que en la máquina de Moore, la salida depende solo del estado, mientras que en la máquina de Mealy, depende tanto de la entrada actual como del estado.

Pero para mí, no explica por qué se dice que está retrasado (o, como dice una fuente, "el cambio en la entrada se manifestará en la salida en el siguiente estado".

Pero ¿por qué? Si se ingresa la entrada de Moore, el estado cambia y se genera la salida. Entonces, ¿qué es este retraso?

    
pregunta John V

3 respuestas

5

Las salidas de Moore están sincronizadas con el reloj. Cambia solo con la transición de estado en el borde del reloj. Las salidas mealy son asíncronas. Pueden cambiar inmediatamente con cambio de entrada, independientemente del reloj. Así que podemos decir que Moore Machine no es tan "rápido" como mealy.

    
respondido por el Meenie Leis
0
  

Si se ingresa la entrada de Moore, el estado cambia y la salida es   generado. Entonces, ¿qué es este retraso?

En la máquina Moore, la salida depende solo del estado actual, y esta última de la entrada antes de la próxima transición de reloj. Por lo tanto, la salida correspondiente a la entrada actual se mostrará solo después de que se realice una transición de reloj (borde positivo). Por lo tanto, la salida tiene un retraso de ciclo de reloj correspondiente a la máquina de estado Mealy.

Para ponerlo más, la salida de una máquina Moore de una sola entrada se puede escribir como Z (x = n) = f (estado de flip-flops (n)), donde el estado de flip-flops (n) es una función de x (n-1) y otros parámetros. Dado que la salida Z (n) para x = n corresponde al estado de los flip-flops (n), y el estado actual de los flip-flops es n-1, tenemos que esperar un ciclo de reloj para que la salida correspondiente a la aparece el tiempo n, que es cuando el estado de los flip-flops ha cambiado a n.

    
respondido por el dirac16
0

El retraso adicional en un Moore SM es simplemente la fracción restante de un ciclo de reloj después de que llega la entrada, y antes del siguiente borde de reloj activo.

Si esto es significativo o no, depende del contexto del diseño.

Una característica de la máquina Mealy que pasa las entradas directamente a las salidas es que puede producir señales de salida con una duración mucho menor que un ciclo de reloj, lo que se conoce como fallos o pulsos de funcionamiento. Esto puede causar un mal funcionamiento de la lógica dependiendo de la máquina de estado.

El tipo Moore (y también el estilo de máquina de estado de proceso único preferido en VHDL) produce pulsos de salida limpios de uno o un múltiplo de un período de reloj de longitud.

Ambos estilos de máquina de estado son vulnerables a una operación incorrecta dado que las entradas llegan demasiado cerca del borde del reloj, por lo tanto, al usar cualquiera de los dos tipos, debe sincronizar las entradas al reloj antes de pasarlas a la máquina de estado.

    
respondido por el Brian Drummond

Lea otras preguntas en las etiquetas