Concepto tiempo y modelado de retardos

La simulación VHDL es una simulación dirigida por transacción y eventos

Cada señal dispone de lo que se llama cola de eventos en la que se almacenan sus posibles transacciones

Durante el proceso de simulación, se avanza hasta que se detecta una transacción en alguna señal

Una transacción corresponde a variaciones de las señales, cuyo cambio resulta en una reacción que crea nuevas transacciones en la simulación del modelo

Cuando una transacción implica cambios de valor en alguna de las señales se produce un evento

Por consiguiente, el ciclo de simulación consta de dos etapas

Etapa de asignación de eventos a las colas de señales
Ejecución de los eventos cuya lista de sensibilidad se ve afectada

Modelado de retardos

VHDL permite asociar a las descripciones de los circuitos retardos temporales que modelen (y permitan simular) el efecto de la propagación de señales en los componentes y conexiones ante cambios en las señales de entrada

Ejemplo:

architecture logic of s_fa is
signal tem: bit;
begin

tem <= a xor b after 5ns;
s <= c xor tem after 5ns;

end logic;

En VHDL pueden especificarse dos tipos de retardos:

- El retardo inercial
- El retardo de transporte

Retardo inercial

Permite modelar la inercia de los dispositivos reales
Pulsos pequeños no son transportados. No propaga los glitchs menores en duración al retardo considerado
Es el retardo considerado por defecto

Retardo de transporte

Propaga los glitchs independientemente de su duración
Permite modelar interconexiones entre componentes
Modela un dispositivo ideal en el que cualquier pulso de entrada es transmitido a la salida

Ejemplo

En el siguiente diagrama temporal se observa el resultado de simulación de un circuito con una señal generadora de forma de onda (señal o) y cuatro señales de salida (s1, s2, s3, s4) dependientes de la señal generadora

El modelo VHDL generador viene dado en onda

Comentarios al respecto:

Observar que la señal s2 asume, por defecto, un retardo inercial (es el retardo asociado por defecto)
El retardo transport no hace más que modelar la señal de entrada después del retardo consdierado
Empleando reject podemos modelar la no propagación de glitchs

 

El modelado de formas de onda puede ser útil en

Un entorno de modelado y simulación de circuitos previo a la síntesis
En la generación de señales para comprobación de código

Cabe recordar que todo modelo implementado utilizando retardos tiene sentido en un entorno de simulación. En el caso de disponer y conocer los retardos tecnológicos (en aplicaciones para síntesis) estos pueden ser incluidos en el modelado VHDL

Las herramientas de síntesis no consideran los retardos introducidos en los modelos de simulación

 

Anterior
Volver a inicio curso
Volver a inicio capítulo


WcN - Joan Oliver. Diseño de circuitos digitales con VHDL: Síntesis concurrente