Desafío - Eventos de patrones
Parte de la sección Diseño y verificación RTL del Journey de Verilog de Coddy. Lección 37 de 38.
Desafío
IntermedioDetecta el patrón de bits 101 en las muestras de entrada aceptadas. en=1 acepta bit_in en el flanco ascendente; en=0 conserva el estado de coincidencia parcial y produce hit=0. Establece el valor registrado hit=1 solo cuando un bit aceptado completa 101. Se permiten coincidencias superpuestas: 10101 produce dos pulsos. El rst síncrono borra el estado y hit, y tiene prioridad sobre en. Columnas de salida: hit. Todos los controles y datos son estables antes de cada flanco ascendente del reloj; los resultados se observan después.
Completa design.v y conserva sus nombres de módulo y puertos. El testbench.v bloqueado proporciona los cambios de entrada e imprime las salidas después de que se estabilizan. Elige un escenario mediante un argumento del simulador como +CASE=1; no se requiere entrada estándar. No añadas impresiones, retardos ni terminación de la simulación al diseño. La salida esperada es una fila de valores decimales por observación, separados por un espacio y terminada con un salto de línea.
Pruébalo tú mismo
module dut (input clk, input rst, input en, input bit_in, output reg hit);
// Reemplaza este marcador de posición con tu diseño.
initial hit = 0;
endmoduleTodas las lecciones de Diseño y verificación RTL
1RTL combinacional confiable
Los valores predeterminados evitan los latchesCodificadores de prioridadValidación one-hotDecodificación segura de caseRepaso: enrutador de solicitudes4RTL secuencial controlado
Prioridad de reinicio y habilitaciónContadores con saturaciónPipeline de datos y validaciónDetección de flancos muestreadosRepaso: contador de eventos7Proyecto - Monitor de muestras
Acumular muestrasAceptar muestras habilitadas2Anchos y aritmética con signo
Conservar los bits de acarreoComparaciones con signoDesplazamientos aritméticos a la derechaDesbordamiento y saturaciónRepaso: diferencia con signo5Memoria y tablas de consulta
Tablas ROM combinacionalesAlmacenamiento en matriz de registrosPuertos de lectura registradosReenvío de lectura-escrituraRepaso: banco de doble lectura8Desafíos finales
Desafío - Canalización de paridadDesafío - Eventos de patronesDesafío - Suma acotadaPractica por tu cuenta: Compilador de Verilog online