Altifigence Academy

33 / 37 · Konzept

Setup, Hold und Zeitbudget

Maximale und minimale Pfade trennen und frequenzunabhängige Hold-Bedingungen berechnen.

Korrekte Daten müssen rechtzeitig eintreffen

Ein synchroner Pfad besteht aus sendendem FlipflopFlipflop Speichert den Eingang an einer festgelegten Taktflanke bis zur nächsten. Die Eingabe muss Setup und Hold erfüllen. Mehr erfahren, kombinatorischer Logik und empfangendem Flipflop. Im einfachen Modell mit Taktskew=0 gilt folgende Setup-BedingungSetup Mindestzeit vor der Abtastflanke, in der Eingangsdaten stabil sein müssen. Bei Verletzung ist das gespeicherte Ergebnis nicht garantiert.. uncertainty berücksichtigt konservativ Jitter und Entwurfsreserven.

Tclk≥tcq,max+tpd,max+tsetup+tuncertaintyT_{clk}\ge t_{cq,\mathrm{max}}+t_{pd,\mathrm{max}}+t_{setup}+t_{uncertainty}

tcqt_{cq} ist Clock-to-Q, tpdt_{pd} die maximale kombinatorische Verzögerung. Nur die nach RegisterausgabezeitRegister Speichert einen Zustand aus mehreren Bits. Die synchronen Register dieses Kurses übernehmen festgelegte Eingaben an Taktflanken. Mehr erfahren und Empfangs-Setup verbleibende Zeit steht der Logik zur Verfügung.

Eine Pfadgrenze numerisch berechnen

Mit Clock-to-Q 0.12ns, Logik 1.80ns, Setup 0.15ns und uncertainty 0.08ns beträgt die Mindestperiode 2.15ns.

fmax≤12.15 ns≈465.1 MHzf_{\mathrm{max}}\le\frac{1}{2.15\ \mathrm{ns}}\approx465.1\ \mathrm{MHz}

500MHz entsprechen 2ns: Der Setup-Slack ist −0.15ns. Dies gilt nur für den gegebenen Pfad und die Annahmen. Eine reale Frequenzgarantie verlangt alle relevanten Pfade, Betriebsbedingungen und Constraints.

Verfolgen Sie die addierten Verzögerungen unten: zusammen 2.15ns. Die Pfeile zeigen die Summierungsreihenfolge, nicht Bauteilgrößen oder maßstäbliche Verzögerungen.

Der Pfad nutzt das Setup-Zeitbudget
  1. Sender-FF: clock-to-Q: 0.12ns
  2. Kombinatorischer Pfad: Maximale Verzögerung: 1,80 ns
  3. Empfangsbedingungen: setup: 0.15ns
  4. Entwurfsreserve: uncertainty: 0.08ns

Hold betrifft den schnellsten Pfad

Ändern neue Sendedaten an derselben Flanke zu früh, stören sie die erforderliche Haltezeit des alten Empfangswerts. Bei skew=0 und ohne zusätzliche Reserve lautet die vereinfachte Hold-BedingungHold-Zeit Mindestzeit nach der Abtastflanke, in der Eingangsdaten stabil bleiben müssen. Vom allgemeinen Halten eines Werts zu unterscheiden.:

tcq,min+tcd,min≥tholdt_{cq,\mathrm{min}}+t_{cd,\mathrm{min}}\ge t_{hold}

Mit minimalem Clock-to-Q 0.05ns, minimalem Logikpfad 0.03ns und Hold 0.10ns fehlen 0.02ns. Eine längere Periode löst diese Bedingung derselben Flanke nicht. Nötig sind Implementierungsmaßnahmen wie Zusatzverzögerung oder Anpassung des Taktpfads.

Positiver Skew, bei dem der Empfangstakt später eintrifft, kann Einzyklus-Setup helfen und Hold verschlechtern. Zeichnen Sie Datenankunft und Abtastflanken, statt Vorzeichen auswendig zu lernen. Multicycle- oder False-path-Ausnahmen dürfen ohne funktionale Begründung keine Timing-Warnungen kaschieren.

Selbst ausprobieren

Welche maximale Logikverzögerung erlaubt eine Periode von 4ns bei tcq=0.2t_{cq}=0.2ns, tsetup=0.3t_{setup}=0.3ns und uncertainty=0.1ns? Löst eine Änderung auf 8ns einen Hold-Verstoß?

Erklärung lesen

4−0.2−0.3−0.1=3.44-0.2-0.3-0.1=3.4ns. Übliche Hold-Bedingungen derselben Flanke werden durch längere Perioden nicht gelöst. Analysieren Sie minimale Datenpfade und Taktankunft gesondert.

Deine Auswahl gilt für diesen Browser. Du kannst sie jederzeit in der Fußzeile ändern.