Logik-Design mit FPGAs und SoCs

So nützen Sie XDC-Timing-Constraints in FPGA-Designs richtig

| Autor / Redakteur: Adam Taylor * / Sebastian Gerstl

Timing- und Placement-Constraints sind ein wichtiger Faktor, wenn man vorgegebene Entwicklungsanforderungen optimal erfüllen will. Grundsätzlich gilt: Die Deklaration eines Multicycle Path resultiert in einer besseren und weniger restriktiven Timing-Analyse. Dadurch wird die Timing Engine frei für andere kritischere Pfade.
Bildergalerie: 4 Bilder
Timing- und Placement-Constraints sind ein wichtiger Faktor, wenn man vorgegebene Entwicklungsanforderungen optimal erfüllen will. Grundsätzlich gilt: Die Deklaration eines Multicycle Path resultiert in einer besseren und weniger restriktiven Timing-Analyse. Dadurch wird die Timing Engine frei für andere kritischere Pfade. (Bild: Xilinx)

Timing- und Placement-Constraints sind ein wichtiger Faktor, wenn man vorgegebene Entwicklungsanforderungen optimal erfüllen will. Dieser Artikel soll als Einführung in den besten Einsatz dieser Design-Bedingungen dienen.

Der korrekte Abschluss des RTL-Designs ist ein wichtiger Teilschritt auf dem Weg zur Fertigungsreife eines FPGA-Designs. Die nächste Herausforderung besteht in der Sicherstellung der Timing- und Performance-Anforderungen des Bausteins. Oft muss man dazu muss man die Timing- und auch die Placement-Constraints definieren. Ein Blick auf die Erstellung und den Einsatz dieser beiden Bedingungen beim Systementwurf mit Xilinx FPGAs und SoCs ist dazu aufschlussreich.

Timing Constraints

Im einfachsten Fall definieren Timing Constraints die Betriebsfrequenz für den Takt (oder die Takte) des zu entwickelnden Systems. Höher komplexe Constraints können außerdem die Beziehungen zwischen den Taktpfaden etablieren. Als Entwickler muss man diese Arten von Constraints berücksichtigen, um zu entscheiden, ob man den Pfad analysieren muss oder – falls keine gültige Zeitbeziehung zwischen diesen Taktpfaden besteht – darauf verzichtet.

In ihrer Grundeinstellung analysiert die Xilinx Vivado Design Suite alle diese Beziehungen. Allerdings haben nicht alle Takte in einem Design eine Timing-Beziehung, die sich genauer analysieren lässt. Ein Beispiel dafür sind asynchrone Takte, da eine genaue Bestimmung ihrer Phase nicht möglich ist (siehe Bild 1).

Man kann die Beziehungen zwischen den Taktpfaden mit Hilfe einer Constraint-Datei und der Deklaration von Taktgruppen einrichten. Wenn eine Taktgruppe deklariert wird, führen die Vivado-Tools keine Timing-Analyse in beiden Richtungen zwischen den darin definierten Takten durch. Um die Generierung von Timing Constraints zu unterstützen, definieren die Vivado Tools geeignete Takte in drei möglichen Kategorien: synchron, asynchron oder nicht expandierbar.

  • Synchrone Takte haben eine vorhersagbare Timing/Phasenbeziehung. Dies ist normalerweise bei einem primären Takt und seinen abgeleiteten Takten der Fall, da sie auf einer gemeinsamen Erzeugung (root) beruhen und eine gemeinsame Periode haben.
  • Asynchrone Takte haben keine vorhersagbare Timing/Phasenbeziehung. Das ist häufig der Fall bei unterschiedlichen primären (und den von ihnen abgeleiteten) Takten. Asynchrone Takte beruhen auf unterschiedlichen Roots.
  • Zwei Takte sind nicht expandierbar, wenn sie bei über 1.000 Zyklen keine gemeinsame Periode erkennen lassen. Ist dies der Fall, wird die Worst-Case Setup-Beziehung über diese 1.000 Zyklen verwendet. Dabei besteht allerdings keine Gewähr, dass dies die wirkliche Worst-Case-Bedingung ist.

Um herauszufinden, welche Art von Takt aktuell vorliegt, nutzt man am besten den Clock Report, den Vivado erstellt. Dieser Report hilft bei der Identifizierung von asynchronen und nicht expandierbaren Takten.

Inhalt des Artikels:

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44009087 / Takterzeugung)