Hay dos señales sig, habilitar , y quería encontrar la diferencia de tiempo después de lo cual habilitar alterna después de que caiga la firma. (> Sig Low to Enable < time)
Entiendo que siempre el bloque @ () no se puede anidar dentro de otro, así que probé el siguiente enfoque:
realtime toggletime ;
realtime sig_low;
always@(negedge sig) begin
sig_low = $time ;
@(enable)begin
toggletime= $time - sig_low ;
end
end
Mi idea fue rastrear sig, y cada vez que baja, anote la hora (en sig_low ) y, desde ese punto, habilite el rastreo y cada vez que cambie note la diferencia entre ese punto y el anterior Valor sig_low. Pero esto no me está dando el resultado requerido. ¿Hay alguna otra forma de hacer esto?
* La señal sig es un pulso periódico que baja, por ejemplo, cada 500us. habilitar es una señal que cambia a intervalos esporádicos. Estoy tratando de medir el tiempo transcurrido después de la última señal y luego habilitar los cambios.
* Ambos están sincronizados con el mismo reloj. No se disparan al mismo tiempo. Si hay varios bordes negativos, solo el último borde es de interés.