Signale in Testbench verzögern

Gast #4926637
Lesenswert?

Hallo zusammen,

in einer Testbench möchte ich meine Signale mit einem zeitlichen Versatz 
weiterleiten. Dieser zeitliche Versatz ist nicht konstant, sondern mit 
einem Jitter versehen.
'delayed kann ich desewegen ja nicht verwenden.

Also habe ich mich für die Verzögerung der Signale mit after 
entschieden:
1
process 
2
begin
3
  wait until myInputSignal'event;
4
  -- assign delayed signal
5
  myOutputSignal<= myInputSignal after myJitteredDelay;
6

7
  -- calculate jitter for next phase
8
  if myInputSignal = 0 then
9
    uniform(Seed1, Seed2, Random);
10
    myJitterDelay <= myDelay + Random*myJitter;
11
  end if;
12
end process;

Hierbei habe ich leider das Problem, dass mir Events beim weiterleiten 
verloren gehen, wenn diese kürzer als myJitterDelay sind, da diese ja 
von der nächsten
1
myOutputSignal<= myInputSignal after myJitteredDelay;
Anweisung überschrieben werden.
Habt Ihr eine andere Idee, wie ich das Problem lösen kann?

Vielen Dank,
Parcher
Gast #4933907
Lesenswert?

Lothar M. schrieb:
> Der dazu passende Suchbegriff "VHDL Delay Model" findet dann sowas:

Vielen Dank, darauf bin ich dann auch gestoßen ich die Antwort von 
Charles Gardiner gelesen habe. Irgendwann habe ich davon auch schon mal 
gehört, aber leider war es zu weit hinten in meinen Kopf, als dass es 
rauskommen wollte.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren