Kmila
Todos los ejercicios
Medio Corrige el error 5 pruebas

Detector de flanco — flanco equivocado

Se pedía un detector de flanco de subida sobre d.

Especificación

  • Muestrea d una vez por rising_edge(clk) en d_prev.
  • pulse = '1' durante un ciclo cuando d era '0' en el ciclo anterior y ahora es '1'.
  • reset asíncrono activo en alto pone d_prev a '0'.

Qué falla

La expresión combinacional de pulse mira la polaridad opuesta: se dispara cuando d baja de '1' a '0', es decir, en el flanco de bajada. Cuando d sube (objetivo del spec) pulse se queda en '0', y cuando d baja se dispara por error.

Pista

Intercambia las dos comparaciones de la asignación condicional de pulse.

Caso de prueba visible

d sube tras reset — pulse debe activarse

Puerto Tiempo Valor
reset 0 ns 1
reset 25 ns 0
d 0 ns 0
d 105 ns 1

4 casos de prueba ocultos — resuélvelos para revelarlos.

Ocurrió un error no controlado. Recargar 🗙