2016-05-15 9 views
0

Ich habe versucht, das Problem zu lösen, aber ich habe eine andere Tabelle als die Tabelle, die Xilinx zeigt. Ich habe sowohl meine Antwort als auch meine echte Antwort gefunden. Xilinx zeigt, dass "out" bis 36ns "U" ist, nach 36ns ist es "1". Kann mir jemand helfen, warum die "out" -Grafik vor 36ns keinen Wert bekommt (ich denke, es sollte erst bei 20 ns zugewiesen werden). my answer questionEreignis und Transaktion in vhdl (Timing-Diagramm)

+0

Wenn kein Verzögerungsmechanismus vorhanden ist oder wenn ein Verzögerungsmechanismus einschließlich des reservierten Wortes ** Trägheit ** vorhanden ist, wird die Verzögerung als Trägheitsverzögerung interpretiert. ... Jede träge verzögerte Signalzuordnung hat eine * Impulsunterdrückungsgrenze *. Wenn der Verzögerungsmechanismus eine Trägheitsverzögerung spezifiziert, und wenn das reservierte Wort ** Zurückweisung ** gefolgt von einem Zeitausdruck vorhanden ist, spezifiziert der Zeitausdruck die Impulsunterdrückungsgrenze. In allen anderen Fällen wird die Impulsunterdrückungsgrenze durch den Zeitausdruck spezifiziert, der dem ersten Wellenformelement zugeordnet ist. IEEE Std 1076-2008 10.5.2.1 – user1155120

Antwort

1

Dies stellte eine wirklich gute Frage erwiesen. Ich dachte zuerst, du hättest bei der Simulation etwas falsch gemacht, aber dann habe ich meine eigene Simulation durchgeführt und das gleiche Ergebnis erzielt.

Es stellt sich heraus, dass die a <= b after x Zuweisung standardmäßig das sogenannte "Trägheitszeitmodell" verwendet. In diesem Modus werden geplante Ereignisse abgebrochen, wenn b erneut geändert wird, bevor die x Zeit abgelaufen ist. Der Zweck besteht darin, Impulse zu filtern, die kürzer als die spezifizierte Verzögerung sind. In Ihrem Fall ist es das, was der Simulator tun:

  • Bei t = 0, out geplant ist 1 bei t ändern = 20.
  • Bei t = 12 wird tem1 or tem2 auf 0 geändert. Die geplante Änderung bei t = 20 wird abgebrochen und eine neue Änderung auf 0 wird bei t = 32 angesetzt.
  • Bei t = 16 wechselt tem1 or tem2 zurück zu 1. Wieder wird die geplante Änderung abgebrochen und eine neue Änderung wird bei t = 36 geplant.
  • Nach dieser tem1 or tem2 bleibt bei 1, so dass die Änderung bei t = 36 ausgeführt wird und out ändert schließlich von U.

Sie können auf die „Transportverzögerung Modell“ ändern Sie Ihre gezeichnet Wellenform mit out <= transport tem1 or tem2 after 20 ns; In diesem Fall wird mit der Simulation übereinstimmen.

+0

Vielen Dank, ich habe es :) –

+0

Vielen Dank, ich habe versucht, dies über eine Stunde zu verstehen und jetzt habe ich es total. –