Ich habe studiert, um die statische Timing-Analyse, auch bekannt als STA, zu verstehen. Eines der Dinge, die ich nicht verstehe, ist, ob ich bei der statischen Timing-Analyse in vier Kategorien von Timing-Pfaden einen Bericht für das Timing für Min / Max erstellen muss.
Sollte ich mich um jeden 4-Kategorie-Pfad kümmern müssen, um einen Timing-Bericht zu erstellen? Wenn ja, warum? Oder muss ich nur einen MIN/MAX-Timing-Bericht erstellen? Warum?
BEARBEITEN:
Könnten Sie mir eine Beschreibung der Lösung für jede Kategorie einer Timing-Verletzung geben? Ich denke, im R-zu-R-Pfadfall wird dies eine der Lösungen für das Hinzufügen einer F / F-Pipeline für die Setup-Verletzung und das Einfügen eines Puffers für die Halteverletzung sein.
Aber sonst keine Ahnung. Könnten Sie mich für 3 andere Kategorien im Setup-and-Hold-Verletzungsfall anleiten?
Für die anderen 3 Fälle müssen Sie mehr wissen als nur, was für diesen Teil aus der STA kommt. Sie müssen Zeit-/Verzögerungswerte für Dinge kennen, mit denen Ihr Gerät (FPGA, ASIC) eine Verbindung herstellt. Dann müssen Sie manuell eine Gesamt-STA für das Gerät vor Ort aufbauen.
Nehmen wir zuerst den Fall Reg2out. Ihr STA-Bericht gibt eine CLK-Ausgangsverzögerung an, die wahrscheinlich a) eine Taktverzögerung in den Chip und eine Taktverteilungsverzögerung, b) eine Clk-Ausgangsverzögerung des Flip-Flops (FF), c) die Verzögerung durch die kombinatorische Logik und d) die Verzögerung durch das Ausgangspad. Ohne zu wissen, wohin dieser Ausgang geht und ob dieses Ziel getaktet ist oder nicht, ist es bedeutungslos, über Setup-and-Hold-Zeitverletzungen oder den Spielraum zu sprechen, den Sie haben. Sie müssen die Verzögerung und andere Timing-Informationen Ihrer Verbindung und Ihres Ziels angeben, um Dinge wie Einrichtungs- und Haltezeitspielraum zu bewerten.
Für den in2Out-Fall benötigen Sie zusätzlich zu den Verzögerungen, die aus Ihrer STA kommen, Zeitinformationen darüber, was die kombinatorische Logik antreibt, und Zeitinformationen dafür, wohin die Ausgabe der kombinatorischen Logik geht.
Diagramm hinzugefügt
Hier ist eine Illustration aus der Frage von OP.
Hier zeige ich zwei Geräte, zum Beispiel FPGAs, von denen eines das andere speist und einen gemeinsamen Takt verwendet. Sie führen Ihre STA auf beiden Geräten aus. Sie verwenden dann die Uhr, um Informationen des ersten Geräts auszugeben, mit der Eingangsverzögerung und den SU/Hold-Zeitinformationen des zweiten Geräts, um zu sehen, ob Sie das Timing einhalten. Ich gehe in diesem Beispiel davon aus, dass die Uhr bei beiden Geräten exakt zur gleichen Zeit ankommt. Ist dies nicht der Fall, muss dies ebenfalls berücksichtigt werden.
Ja. Jede der vier Timing-Situationen ist ein potenzieller Fehler für Ihr Design. Jeder von ihnen spiegelt eine Art und Weise wider, wie Ihr Design für den Benutzer angegeben wird ... maximale Taktfrequenz, Eingangseinrichtungszeit und so weiter. Sie sollten STA verwenden, um zu überprüfen, ob alle diese Anforderungen erfüllt sind.
Tony Stewart EE75