Todos los ejercicios
Difícil
Desde cero
5 pruebas
Banderas FIFO vacío/lleno
Implementa el contador de ocupación de un FIFO de profundidad 4. Sólo expones las banderas full y empty — los datos no se modelan.
Especificación
- Contador
unsignedde 3 bitscnten rango 0..4. - Cada ciclo:
- si sólo
push='1'ycnt < 4,cnt <= cnt + 1. - si sólo
pop='1'ycnt > 0,cnt <= cnt - 1. - en otro caso mantén el valor.
- si sólo
empty <= '1'cuandocnt = 0.full <= '1'cuandocnt = 4.
Pista
Usa to_unsigned(4, 3) para comparar y limita en los extremos.
Caso de prueba visible
Cuatro push — full sube
| Puerto | Tiempo | Valor |
|---|---|---|
reset |
0 ns | 1 |
reset |
25 ns | 0 |
push |
0 ns | 1 |
pop |
0 ns | 0 |
4 casos de prueba ocultos — resuélvelos para revelarlos.