Peligro estático en un valor específico o ¿Algún cambio?

0

Tengo un problema resuelto, mi profesor lo resolvió de la siguiente manera:

y dice

  

con B = C = D = 1 para cambiar el valor de 'A' de uno a cero, tenemos Peligro estático '1'.

pero creo que deberíamos decir

  

con B = C = D = 1 para cualquier cambio en los valores de 'A' tenemos Static-Hazard '1'.

¿Cuál es la correcta? ¿Alguna idea?

    
pregunta Davied Zuhraph

2 respuestas

5

Su maestro tiene razón, si hay un retraso en la propagación de las puertas NO que entran a las puertas NAND. Si no hay un retraso en la propagación de las puertas NOT que entran en las puertas NAND, entonces no habrá '1' de Peligro Estático.

Suponiendo que habrá un retraso de propagación para las puertas NO que entran en la puerta NAND, solo habrá un Peligro estático '1' cuando 'A' pase de 1 a 0. No hay otro Peligro estático '1' cuando 'A' va de 0 a 1.

Para demostrar esto, recreé el circuito utilizando VHDL y lo simulé.

A las 10 ns en la forma de onda, puede ver las transiciones 'A' de 0 a 1. Sin embargo, la salida 'F' no cambia. A 20 ns, 'A' cambia de 1 a 0. Después de 1 ns (un retardo de propagación programé para que tuvieran todos los componentes), 'F' cambia de 1 a 0 y permanece en 0 durante 1 ns. Después de ese 1 ns, vuelve a cambiar a 1. Este es un ejemplo de Peligro estático '1'.

Código VHDL: enlace

Resultado de la forma de onda:

    
respondido por el pjbollinger
1

La respuesta es que no hay suficiente información en la pregunta para decidir entre las dos posibilidades.

Si asume que \ $ \ overline {A} \ $ es generado por un inversor alimentado desde \ $ A \ $, que las puertas tienen el mismo retardo de propagación entre sí y el mismo retardo de propagación en todas las condiciones, entonces su El maestro tiene razón.

Cuando \ $ A \ $ va de 0 a 1, \ $ A \ $ y \ $ \ overline {A} \ $ serán brevemente 1 al mismo tiempo, por lo tanto, la salida de las puertas de primer nivel siempre contiene al menos un cero y no habrá ningún fallo en la salida final.

Por otro lado, cuando A va de 1 a 0, \ $ A \ $ y \ $ \ overline {A} \ $ serán brevemente 0 al mismo tiempo, lo que hará que las tres puertas de la primera etapa salgan brevemente un 1 al mismo tiempo causando un fallo en la salida final.

Pero esas son suposiciones injustificadas de la OMI. Los retardos de propagación varían entre puertas, entre diferentes entradas en la misma puerta y con la dirección de la transición. Dependiendo de cómo se diseñe otra lógica en el sistema, \ $ A \ $ puede, de hecho, generarse desde \ $ \ overline {A} \ $ en lugar de viceversa.

En el caso más general en el que las señales que llegan a diferentes rutas podrían llegar en cualquier orden, podría haber un problema técnico en cualquier dirección (o si tiene un error muy personal en ambas direcciones).

    
respondido por el Peter Green

Lea otras preguntas en las etiquetas