Unidad 1 · Instrucciones secuenciales y modelado de flip-flops
lunes 31 de agosto · 18:00–19:40 · en 9 días
GUÍA 31-08-26 Sistemas Embebidos
LA207 · lunes 31/08/2026 · 18:00-19:40 · Sesión 4
Unidad 1 · Instrucciones secuenciales y modelado de flip-flops
EL PROCESO
Dentro de un process las instrucciones son secuenciales: se evalúan en orden. Pero el proceso completo se comporta como un bloque concurrente respecto al resto del diseño. Esa doble naturaleza es la clave del lenguaje.
INSTRUCCIONES SECUENCIALES
- if-then-elsif-else — genera lógica con prioridad.
- case — genera un multiplexor plano; conviene cuando las condiciones son mutuamente excluyentes.
- Ciclos for — se desenrollan en tiempo de síntesis; no son ciclos de ejecución sino repetición de estructura.
SEÑAL CONTRA VARIABLE
- Señal, con <= — la actualización se programa y se hace efectiva al final del proceso. Representa un cable.
- Variable, con := — se actualiza de inmediato dentro del proceso. Representa un valor intermedio de cálculo.
Confundirlas produce el error más frecuente del curso. Si dentro de un proceso asignas a una señal y la lees en la línea siguiente, lees el valor viejo, no el que acabas de escribir.
MODELADO DE UN FLIP-FLOP D
El patrón es fijo y conviene memorizarlo tal cual:
- process(clk) begin if rising_edge(clk) then q <= d; end if; end process;
Lo que hace sintetizar un registro es exactamente eso: una asignación dentro de un if de flanco. No hay una palabra reservada «flip-flop»; el registro se infiere de la estructura.
REINICIO ASÍNCRONO Y SÍNCRONO
- Asíncrono — el reset aparece en la lista de sensibilidad y se evalúa antes del flanco. Actúa de inmediato.
- Síncrono — el reset se evalúa dentro del if de flanco. Actúa en el siguiente flanco de reloj.
En FPGA suele preferirse el síncrono: usa menos recursos, evita problemas de metaestabilidad al soltar el reset y facilita el análisis de tiempos.
LATCH NO DESEADO
Si en un proceso combinacional alguna ruta no asigna la salida, la herramienta infiere un latch para conservar el valor anterior. Casi nunca es lo que se quería y complica el análisis de tiempos. Se evita asignando un valor por defecto al inicio del proceso.
REGISTROS Y CONTADORES
- Registro de desplazamiento, con y sin carga paralela.
- Contador ascendente y descendente, con habilitación y carga.
AVISO
La próxima sesión, lunes 7 de septiembre, es la Evaluación 1. Cubre la unidad 1 completa.
Nada anotado en esta sesión todavía.