Pulso de salida extraño en forma de onda vectorial en Quartus 2

2

Tengo un pulso de salida oscuro en mis formas de onda de salida para mi medio sumador. ¿Es porque las entradas son altas en 40ns? Entonces, ¿debería retrasar un poco b ir a lo alto después de que un nivel bajo? El tiempo 58ns sugiere que este es el caso porque el FLEX 10k70RC240-4 tiene un retardo de propagación de aproximadamente 20ns.

Mi salida parece y el pulso está en aproximadamente 58ns:

    
pregunta Dean

1 respuesta

4

Lo que estás viendo es un error técnico o condición de carrera . Hay una ligera diferencia en el tiempo que tarda la señal a y la señal b en propagarse a la salida, por lo que si ambos se cambian al mismo tiempo, puede ver un pulso muy corto en la salida antes de que alcance el estado final (que es el mismo que el estado inicial de este circuito).

Si retrasas una de las entradas, hará que este fallo se prolongue porque tendrías poco tiempo donde están las entradas, digamos, ambas 0, en lugar de tener (1,0) y luego (0,1) como entradas También debe darse cuenta de que, en realidad, es posible que no sepa si la señal a o b se está propagando más rápido, e incluso puede variar en respuesta a la temperatura u otros factores ambientales. . Es probable que el simulador simplemente haya elegido arbitrariamente una de las dos entradas para procesar primero, lo que resulta en un tiempo de fallo igual al paso de tiempo mínimo del simulador.

La forma habitual de lidiar con un problema técnico como este simplemente es no registrar el resultado en el siguiente flip-flop hasta que todos los problemas se hayan solucionado. Es decir, diseñe su circuito con el tiempo de configuración adecuado . El hecho de que los fallos solo afecten a la salida de un flip-flop si ocurren al mismo tiempo que llega el borde del reloj es una de las razones por las que diseñar la lógica síncrona correctamente es mucho más fácil que diseñar la lógica asíncrona.

    
respondido por el The Photon

Lea otras preguntas en las etiquetas