43 / 63 · Evaluación
Comprobación de diseño: latencia, alineación y conservación de entradas
Compruebe dirección, número de movimientos válidos y referencia de observación.
Las lecciones se pueden leer gratis. Inscríbete para guardar el progreso.
Fije cómo se cuenta la latencia
Un registroRegistro Circuito que almacena varios bits de estado. Los registros síncronos de este curso capturan la entrada especificada en el flanco de reloj. Más información de tres bits ejecuta q <= {q[1:0], din} solo con entrada válida y conserva q con valid=0. Desde 0 después de resetReset Control que devuelve el estado a un valor inicial especificado. Deben definirse su carácter síncrono o asíncrono y su prioridad frente a otros controles. Más información, aplique en flancos ascendentesFlanco ascendente Instante en que el reloj pasa de 0 a 1. Se distingue del nivel alto, que abarca todo el intervalo con CLK=1. Más información distintos (valid,din) = (1,1), (0,0), (1,0), (1,1).
Hay cuatro flancos, pero solo tres desplazamientos. Compruebe que la secuencia de estados y la descripción de «latencia en ciclos» sean coherentes.
Cada columna registra un flanco, con entrada previa y estado «después» actualizado; la alineación no muestra propagación físicaRetardo de propagación Tiempo desde un cambio de entrada hasta que la salida se estabiliza en el valor correcto. La equivalencia lógica y el comportamiento temporal son propiedades distintas. Más información. La segunda columna, valid=0, conserva el estado. No confunda número de columnas de reloj con movimientos de q.
Ver los datos de la forma de onda
| Señal | Forma de onda | Valores del bus |
|---|---|---|
| flanco | 2345 | E0 → E1 → E2 → E3 |
| valid | 101. | |
| din | 10.1 | |
| entradas aceptadas | 2.34 | 1 → 2 → 3 |
| q después | 2.34 | 001 → 010 → 101 |
Problema adicional
Al ampliar a un pipelinePipeline Estructura que divide el cálculo en etapas separadas por registros para procesar varias entradas de forma solapada. Los datos, valid y controles deben mantenerse alineados entre etapas. Más información con datos de ocho bits por entrada, es incorrecto poner tres etapas de datos y retrasar valid solo una. Aplique las mismas reglas de avance o diseñe conjuntamente aceptación y entrega de un búfer que pueda detenerse.
Inténtalo tú
Si el circuito desplaza en cada flanco independientemente de valid, ¿cómo cambia la q final de la secuencia?
Leer la explicación
También almacena din=0 del ciclo inválido: 001 → 010 → 100 → 001. Termina en 001, distinto del 101 del diseño que mueve solo entradas válidas. La implementación debe respetar que los datos inválidos se ignoren.
Al aplicar la secuencia con valid descrita, ¿cuáles son la q final y el número real de desplazamientos?
Los estados son 000 → 001 → 001 → 010 → 101. El segundo flanco tiene valid=0 y conserva el estado. La respuesta debe cumplir dirección, condición de avance y número de movimientos.