Todos los ejercicios
Medio
Corrige el error
5 pruebas
Flip-flop D — el reset asíncrono no lo es
Se pedía un flip-flop D con reset asíncrono activo en alto.
Especificación
- En
rising_edge(clk):q <- d. - Cuando
reset = '1':qpasa a'0'inmediatamente, sin esperar al reloj.
Qué falla
Si activas reset entre flancos, q no se limpia al instante: el simulador solo re-evalúa el proceso cuando cambia clk. En la práctica el reset se ha vuelto síncrono, lo cual contradice la especificación.
Pista
La lista de sensibilidad determina cuándo se re-evalúa un proceso. Un reset asíncrono debe figurar junto a clk.
Caso de prueba visible
d=1 y reset breve entre dos flancos
| Puerto | Tiempo | Valor |
|---|---|---|
reset |
0 ns | 0 |
reset |
405 ns | 1 |
reset |
413 ns | 0 |
d |
0 ns | 1 |
4 casos de prueba ocultos — resuélvelos para revelarlos.