Forum: FPGA, VHDL & Co. "return in_signal after." in "functions"


von Matthias G. (mgottke)


Lesenswert?

Ist es möglich in einer "funktion" ein Delay zu erzeugen?
Beispiel:
1
   return in_signal after delay_time;
Oder ev. bei einer "procedure" ?

von Klaus F. (kfalser)


Lesenswert?

Vor das Return statement einfach ein

wait for delay_time;

setzen. Geht das nicht?

von Matthias G. (mgottke)


Lesenswert?

> wait for delay_time;

Gute Idee. Danke. Leider geht das nicht, aber jetzt spuckt Modelsim 
wenigstens aus: "Wait statements are not allowed in functions". Das 
nenne ich doch mal ne klare Aussage.

Jetzt muss ich das eben mal mit einer Procedure umsetzen.

von Sven P. (Gast)


Lesenswert?

Wenn ich mich recht erinnere sind diese Wait-Dinger sowieso nicht 
synthetisierbar.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Wenn ich mich recht erinnere sind diese Wait-Dinger sowieso nicht
> synthetisierbar.
Ja, das stimmt. Aber in einer Testbench sind sie super, um zeitliche 
Abhängigkeiten darzustellen ;-)

Und z.B. ein
1
   wait until rising_edge(clk);
ist immerhin schon synthetisierbar.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.