Hallo zusammen! Hätte da eine Frage zum process statement in VHDL. In diesem Thread: Beitrag "Process in VHDL, wie funktioniert das genau??" wird erklärt, die Anweisungen in einem Process werden alle gleichzeitig in der Zeit 0 ausgeführt. Warum liest man dann überall, dass die Anweisungen in einem process sequentiell abgearbeitet werden? z.B. hier http://www.nt-nv.fh-koeln.de/Labor/VhdlEasy/Kap8/k821.html Wie passt das zusammen? Besten dank
Die Anweisungen werden sequentiell abgearbeitet, dabei vergeht aber keine Zeit. Signalzuweisungen geschehen aber immer erst nach einer gegebenen Zeit, falls kein Delay angegeben ist, nach der delta-Zeit (also "null, aber nicht jetzt"). Für Signalzuweisungen an unterschiedliche Signale ist die Reihenfolge also irrelevant, es zählt nur das Delay. Bei mehrfacher Zuweisungen an ein Signal kann ein bestehendes Event überschrieben werden (je nach Delay), dann gewinnt also die letzte Zuweisung. In dem Fall ist die Reihenfolge wichtig, im Normalfall nicht.
MB schrieb: > Warum liest man dann überall, dass die Anweisungen in einem process > sequentiell abgearbeitet werden? Die Anweisungen im Prozess werden (vom Simulator und vom Synthesizer) nacheinander von oben her abgearbeitet (klar: der PC, auf dem der simualtor läuft, MUSS das zwangsläufig so machen). Während dieser Bearbeitung bleibt die Uhr des Simulators stehen. Am Ende des Prozesses ist keine Simulations-Zeit vergangen. In der realen Hardware wird das alles gleichzeitig bearbeitet. Und deshalb ist alles gleichzeitig vorhanden.
Ein Process ist einfach eine sequenzielle Beschreibung von paralleler Hardware. Das heißt nichts anderes, also dass du zwar dein Verhalten des Prozesses mit sequenziellen Anweisungen beschreibst, aber die Tools erzeugen daraus parallele Hardware, die das gleiche Verhalten hat, wie dein Prozess.
OK, sehr gut. Das würde bedeuten, dass ich wenn ich Aktionen der Hardware tatsächlich sequentiell ausgeführt haben will, dafür eine Zustandsmaschine beschreiben muss? Danke
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.