Hallo Leute, ich habe eine Frage zu den Prozeduren in VHDL. Habe ich es richtig verstanden, dass ich sie auf 2 Arten aufrufen kann? Also einmal ganz normal in irgendeinem Prozess also: process(...) begin procedure_xyz(a,b,c); end und dann nebenläufig mit einer Sensivitätsliste wie bei einem Prozess, also es wird jedes mal in die Prozedur gesprungen, wenn sich einer der Werte ändert? Wo ist dann der Unterschied zu einem Prozess?
> Wo ist dann der Unterschied zu einem Prozess? Versuch doch mal einen Prozess in einen Prozess zu schreiben. > Wo ist dann der Unterschied zu einem Prozess? Du vergleichst hier Äpfel mit Flugzeugen. Du kannst z.B. einen Wert aus einer Prozedur nur über eine Variable zurückbekommen. Und nur in Prozessen gibt es Variable. Ergo gibt es Prozeduren mit Rückgabewerten auch nur in Prozessen. Klar könntest du eine Prozedur ohne Rückgabewert auch Concurrent aufrufen, aber was wäre der Sinn, so ganz ohne Rückgabewert? Sieh dir einfach mal den Anhang an. Fazit: Ich verwende Prozeduren ganz gern in der Simulation, um irgendwelche Assertions auszulösen oder Buszyklen abzubilden. Zur Hardwarebeschreibung sind mir die dinger zu sehr eingeschränkt und zu sperrig.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.