Timing-Analyse und CDC

Die Schreibseite arbeitet mit 250 MHz, die Leseseite mit 200 MHz, beide übertragen 1 Wort pro Zyklus. Welche Tiefe ist für einen FIFO, der einen Burst von 64 Wörtern aufnimmt, rechnerisch mindestens erforderlich (Verzögerung durch Synchronisierung vernachlässigt, Bruchteile werden aufgerundet)?

  1. A51 Wörter
  2. B64 Wörter
  3. C13 Wörter
Antwort und Erläuterung anzeigen

Antwort: C. 13 Wörter

Das Schreiben von 64 Wörtern dauert 64 × 4 ns = 256 ns; in dieser Zeit können 256 ÷ 5 ns = 51,2 Wörter gelesen werden. Es verbleiben 64 − 51,2 = 12,8 Wörter, aufgerundet sind also 13 Wörter erforderlich. 51 Wörter ist die lesbare Menge, 64 Wörter der Wert, wenn der gesamte Burst gespeichert wird; das reicht zwar, ist aber nicht das Minimum. Im realen Entwurf wird die Verzögerung durch die Zeigersynchronisierung hinzugerechnet und auf eine Zweierpotenz wie 16 Wörter aufgerundet, die sich für Gray-codierte Zeiger gut eignet.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Timing-Analyse und CDC

  1. Welcher Aufbau einer Reset-Synchronisierungsschaltung, die aus einem active-low externen Reset einen internen Reset erzeugt, der „asynchron aktiviert und synchron deaktiviert“ wird, ist richtig?
  2. Zwei Steuersignale aus derselben Sendedomäne werden jeweils mit einem eigenen 2-stufigen Synchronisierer empfangen und auf der Empfangsseite per AND verknüpft verwendet. Welches Problem dieses Entwurfs ist richtig?
  3. Was ist der richtige Grund dafür, dass trotz STA und RTL-Simulation eine Prüfung mit einem CDC-Verifikationstool erforderlich ist?
  4. Warum kann es problematisch sein, den Pfad, über den die Gray-codierten Zeiger eines asynchronen FIFO in die Gegendomäne übertragen werden, nur weil er asynchron ist, ohne Constraint (als False Path) zu belassen?
  5. In einer synchronen Schaltung mit einer Taktperiode von 2,0 ns beträgt die Clock-to-Q-Verzögerung des sendenden Flipflops 0,2 ns, die Verzögerung der kombinatorischen Logik 1,4 ns und die Setup-Zeit des empfangenden Flipflops 0,1 ns. Wie groß ist der Setup-Slack, wenn der Taktversatz (Skew) 0 ist?