DE112006002337T5 - Verfahren und Vorrichtung zur Detektion verspäteter Timing-Übergänge - Google Patents

Verfahren und Vorrichtung zur Detektion verspäteter Timing-Übergänge Download PDF

Info

Publication number
DE112006002337T5
DE112006002337T5 DE112006002337T DE112006002337T DE112006002337T5 DE 112006002337 T5 DE112006002337 T5 DE 112006002337T5 DE 112006002337 T DE112006002337 T DE 112006002337T DE 112006002337 T DE112006002337 T DE 112006002337T DE 112006002337 T5 DE112006002337 T5 DE 112006002337T5
Authority
DE
Germany
Prior art keywords
signal
latch
clock
parameter
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE112006002337T
Other languages
English (en)
Inventor
Edward San Jose Grochowski
Chris Portland Wilkerson
Shih-Lien Portland Lu
Murali Santa Clara Annavaram
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112006002337T5 publication Critical patent/DE112006002337T5/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31922Timing generation or clock distribution
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31725Timing aspects, e.g. clock distribution, skew, propagation delay
    • G01R31/31726Synchronization, e.g. of test, clock or strobe signals; Signals in different clock domains; Generation of Vernier signals; Comparison and adjustment of the signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/153Arrangements in which a pulse is delivered at the instant when a predetermined characteristic of an input signal is present or at a fixed time interval after this instant
    • H03K5/1534Transition or edge detectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0079Receiver details
    • H04L7/0083Receiver details taking measures against momentary loss of synchronisation, e.g. inhibiting the synchronisation, using idle words or using redundant clocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Logic Circuits (AREA)
  • Manipulation Of Pulses (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Power Sources (AREA)

Abstract

Vorrichtung, umfassend:
ein erstes Latch, um einen Zustand eines Datensignals bei einem Übergang eines Taktsignals zu halten;
ein zweites Latch, um einen Zustand des Datensignals beim Übergang des Taktsignals zu halten; und
Vergleichslogik, um eine Ausgabe des ersten Latches mit einer Ausgabe des zweiten Latches zu vergleichen und, wenn die Ausgaben gleich sind, ein erstes Signal und, wenn die Ausgaben ungleich sind, ein zweites Signal zu erzeugen.

Description

  • GEBIET DER ERFINDUNG
  • Ausführungsformen der Erfindung betreffen Timing von Schaltungen. Insbesondere betreffen Ausführungsformen das Einstellen von Schaltungstaktverlaufs-Parametern, um die Leistung zu steigern und/oder Betriebsfehler zu vermeiden. Andere Ausführungsformen werden ebenfalls beschrieben und beansprucht.
  • ALLGEMEINER STAND DER TECHNIK
  • Elektronische Schaltungen arbeiten oft synchron unter der Steuerung eines oder mehrerer Taktsignale. Die Arbeitsgeschwindigkeit kann durch Steigern der Taktfrequenzen gesteigert werden, bis Signalausbreitungs- und andere Verzögerungen in Bezug auf die Taktzeiträume lang genug werden, daß Signale nicht mehr zuverlässig innerhalb des richtigen Zyklus empfangen werden. (Die Betriebsfrequenz steht außerdem in Korrelation zur Leistungsaufnahme, zur Versorgungsspannung und zur Wärmeerzeugung, so daß auch Leistungs- und Wärmeeffekte die Maximalgeschwindigkeit begrenzen können, mit der eine Schaltung betrieben werden kann.)
  • Einige komplexe Schaltungen, wie z. B. Mikroprozessoren und Digitalsignalprozessoren, zeigen eine erhebliche Variabilität von Gerät zu Gerät bei der maximalen Taktfrequenz aufgrund von Veränderungen in Fertigungsbedingungen, Materialeigenschaften und anderen Faktoren. Derartige Geräte können nach der Herstellung sortiert werden, indem sie unter ungünstigsten Bedingungen mit zunehmenden Taktfrequenzen getestet werden. Nach Ermitteln der Frequenz, bei der das Gerät inkonsistent zu arbeiten beginnt, wird ein Sicherheitsfaktor angewandt, und das Gerät wird zur Verwendung bei einer bestimmten, niedrigeren Frequenz zugelassen.
  • Dieses Verfahren des Setzens einer maximalen Betriebsfrequenz ist recht zuverlässig (bei gegebenem ausreichend breitem Sicherheitsband), verzichtet jedoch auf Leistung, wenn das Gerät unter besseren als den ungünstigsten Bedingungen betrieben wird. Außerdem berücksichtigt das statische Sortieren zum Fertigungszeitpunkt nicht die natürliche zeitbedingte Änderung in den Charakteristika des Gerätes.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Ausführungsformen der Erfindung werden als Beispiel und nicht als Einschränkung in den Figuren der beiliegenden Zeichnungen dargestellt, in denen ähnliche Bezugszeichen ähnliche Elemente anzeigen. Es ist anzumerken, daß Bezüge auf „eine" (englisch „an" oder „one") Ausführungsform in dieser Beschreibung nicht zwangsläufig solche auf dieselbe Ausführungsform sind und daß derartige Bezüge „mindestens eine" bedeuten.
  • 1 ist ein Timing-Diagramm, das Parameter zeigt, die für Ausführungsformen der Erfindung von Belang sind.
  • 2 ist ein Ablaufdiagramm, das die Operationen einer Ausführungsform der Erfindung skizziert.
  • 3 ist ein Schaltschema, das eine andere Ausführungsform der Erfindung zeigt.
  • 4 zeigt mehrere alternative Implementierungen einer Komponente in 3.
  • 5 zeigt Timing-Diagramme dreier Arbeitsregeln einer Ausführungsform der Erfindung.
  • 6 zeigt ein größeres System, das Ausführungsformen der Erfindung einsetzt.
  • AUSFÜHRLICHE BESCHREIBUNG DER ZEICHNUNGEN
  • Ausführungsformen der Erfindung überwachen wichtige Timing-Parameter eines Geräts dynamisch, während das Gerät sich in normalem Betrieb befindet (z. B. während seiner Integration in ein System oder danach, während das System in Benutzung durch einen Endbenutzer ist). Ein drohender Timing-Fehler kann signalisiert und/oder Betriebsparameter können automatisch eingestellt werden, um verbesserte Leistung unter tatsächlichen Umgebungsbedingungen zu erlangen.
  • 1 zeigt ein Schaltzeichen eines transparenten Latches 100 und ein Timing-Diagramm, das einige Aspekte des Latch-Betriebes darstellt. Während das Taktsignal 110 am Eingang CLK 135 auf einem ersten Pegel ist (während Zeitraum 175), breiten sich Änderungen im Eingangssignal 105, das am Eingang D 120 vorliegt, nach einer Verzögerung 140 zum Ausgang Q 125 aus (siehe Übergänge 145 im Taktverlaufsdiagramm-Ablauf von Ausgangssignal 115). Wenn zur Zeit 180 das Taktsignal auf einen zweiten Pegel übergeht, speichert das Latch den Wert des Eingangssignals 105, das am Eingang D 120 vorlag, und nachfolgende Übergänge am Eingang D beeinflussen den Ausgang Q nicht (man beachte das Fehlen von Übergängen während des Zeitraums 185, wie bei 150 gezeigt). Das Eingangssignal am Eingang D muß mindestens eine kurze Zeitdauer 155 („Mindesteinstellzeit” (minimum setup time) genannt) vor der Taktflanke zur Zeit 180 lang stabil sein. Die Einstellzeit 160 ist länger als die Mindesteinstellzeit 155, so daß das gelatchte Ausgangssignal während Zeitraum 185 richtig ist. Ist das Eingangssignal während der Einstellzeit jedoch nicht stabil, kann das Latch nicht den richtigen Wert speichern. Dies ist nahe der rechten Seite des Timing-Diagramms gezeigt: Das Eingangssignal 105 ist nur die Einstellzeit 165 vor der Taktflanke zur Zeit 190 lang stabil. Die Einstellzeit 165 ist kürzer als die Mindesteinstellzeit 155, so daß das Ausgangssignal 115 den Wert des Eingangssignals zur Zeit 190 nicht richtig widerspiegelt (siehe den Abschnitt von Ausgangssignal 115, der bei Element 170 angezeigt ist). Dies ist ein Beispiel des unkorrekten Betriebes, der auftreten kann, wenn eine Schaltung mit einer zu hohen Frequenz getaktet ist oder wenn ein Datensignal in Bezug auf die Taktflanke zu spät ankommt, die ein Latch veranlassen soll, dieses aufzuzeichnen.
  • Obgleich die Timing-Diagramme in 1 anzeigen, daß das Latch transparent ist, wenn das Taktsignal auf hoch (high) ist, und daß es die Daten latcht, die zu einer fallenden Flanke des Taktes vorliegen, können andere Latches transparent sein, wenn der Takt auf niedrig (low) ist, und Daten latchen, die an einer ansteigenden Taktflanke vorliegen. Bei einigen Schaltungsentwürfen können aus Platz-, Geschwindigkeits- oder Effizienzgründen invertierende Latches bevorzugt sein. Andere Schaltungen können Untereinheiten einsetzen, die in ihren Anforderungen einer Mindesteinstellzeit auf ein Datensignal Latches ähnlich sind, aber keine transparenten Latches sind (beispielsweise ein flankengesteuertes Flipflop). Diese alternativen Latches und latchähnlichen Schaltungen können ebenfalls mit einer Ausführungsform der Erfindung verwendet werden.
  • Eine Schaltung, die eine Ausführungsform der Erfindung implementiert, kann bevorstehende Timing-Fehler (Latchfehler aufgrund unzureichender Einstellzeiten) detektieren, indem sie gemäß dem Ablaufdiagramm in 2 arbeitet. Ein Datensignal wird zu einem Bereich der Schaltung geleitet, wo das Signal zu latchen ist (210). Eine verzögerte Version des Datensignals wird ebenfalls verfügbar gemacht (220). Das Datensignal und das verzögerte Datensignal werden zu einer Flanke eines Taktsignals (240(a) und 240(b)) in zwei Latches gelatcht (ein Signal pro Latch). Das unverzögerte Signal wird eine bestimmte Einstellzeit in Bezug auf die Taktflanke aufweisen, und das verzögerte Signal wird eine zweite, kürzere Einstellzeit in Bezug auf die Taktflanke aufweisen. Die zweite Einstellzeit wird um die Länge der Signalverzögerung kürzer als die erste sein.
  • Als Nächstes werden das erste gelatchte Signal und das zweite gelatchte Signal verglichen (250). Sind die gelatchten Werte gleich, konnten beide Latches den richtigen Wert speichern, so daß kein Timing-Fehler auftrat (260). Sind die gelatchten Werte ungleich, dann war die Einstellzeit am zweiten Latch wahrscheinlich kürzer als die Mindesteinstellzeit (270).
  • Das Ergebnis des Vergleichs stellt einen Hinweis darauf bereit, wie nahe die aktuellen Schaltungsarbeitsbedingungen daran sind, zu versagen. Wenn die Latches beide korrekt arbeiten, könnte die Schaltung beispielsweise durch Erhöhen der Taktgeschwindigkeit schneller betrieben werden. Alternativ könnte die Leistungsaufnahme der Schaltung durch Senken ihrer Betriebsspannung reduziert werden. Statt dessen könnten andere Betriebsparameter eingestellt werden, um ohne signifikante Gefahr, unkorrekten Betrieb durch Timing-Verletzungen zu verursachen, ein unterschiedliches Ziel zu erreichen.
  • Wenn es dem zweiten Latch nicht gelungen ist, den richtigen Wert zu speichern, zeigt dies jedoch an, daß die Schaltung unter den Bedingungen nahe ihrer Maximalgeschwindigkeit arbeitet. Das erste Latch weist den richtigen Wert auf, da seine Einstellzeit länger als die des zweiten Latches war, aber jedwede Bedingungsänderungen, die dazu tendieren würden, die Timing-Spielräume zu verringern (z. B. Erhöhen der Taktfrequenz, Senken der Betriebsspannung) könnten die Schaltung zu unkorrektem Betrieb verschieben. Die Schaltung hat eigentlich nicht versagt (das erste Latch enthält den richtigen Wert), so daß es noch etwas verbleibenden Timing-Sicherheitsspielraum gibt. Der Spielraum kann nicht größer als die Verzögerung im Datensignal sein, das zum zweiten Latch geliefert wird.
  • 3 zeigt eine praktische Schaltung, die eine Ausführungsform der Erfindung verwendet, um aktuelle Timing-Spielräume zu beurteilen und verspätete Timing-Übergänge zu detektieren. Latches 325 und 370 können transparente Latches sein, wie z. B. unter Bezug auf 1 beschrieben. Sie sind in einer Master-Slave-Konfiguration angeordnet, die üblicherweise in einem Register, einem Cachespeicher, einer Arithmetik-Logikeinheit (Arithmetic Logic Unit, „ALU") oder einer anderen Struktur zu finden ist. Das Masterlatch 325 wird durch eine Phase eines Taktsignals 310 gesteuert, und das Slavelatch 370 wird durch eine andere Phase des Taktes gesteuert. Der Takt, der das Masterlatch 325 (CLK, 310) steuert, ist als lokal durch Inverter 315 generiert gezeigt, es können aber beide Phasen anderswo in der Schaltung generiert und über einen Taktverteilbaum zu den Latches geliefert werden.
  • An der fallenden Flanke von CLK 310 latcht Masterlatch 325 die Daten, die an seinem Eingang vorliegen, und an der nachfolgenden fallenden Flanke von CLK 320 (die hier der nachfolgenden ansteigenden Flanke von CLK 310 entspricht), latcht Slavelatch 370 den Wert von Masterlatch 325.
  • Die Ausgabe von Masterlatch 325 wird außerdem an das Detektorlatch für verspätete Taktverlaufsübergänge (Late Timing Transition Detector, „LTTD"-Latch) 345 übermittelt, das seinen Eingang auf derselben fallenden Flanke von CLK latcht, die Masterlatch 325 auslöst. Wegen der Verzögerung durch Masterlatch 325 (siehe Element 140 nach 1) weist LTTD-Latch 345 eine kürzere Einstellzeit als Masterlatch 325 auf. In einigen Ausführungsformen kann die Einstellzeit bei LTTD-Latch 345 durch Verzögern des Signals vom Masterlatch 325 über eine Verzögerungsstruktur 335 weiter verkürzt werden. Ist das Masterlatch 325 nicht transparent oder versagt es aus einem anderen Grund beim Einführen einer nützlichen Verzögerung, kann Eingangsdatensignal 305 über eine Verzögerungsstruktur direkt mit LTTD-Latch 345 verbunden werden, wie bei 342 gezeigt.
  • Kurz Bezug nehmend auf 4 kann die Verzögerungsstruktur 335 als eine Kette von Invertern 410 implementiert sein. Die Verzögerung ist proportional zur Anzahl an Invertern in der Kette. Eine gerade Anzahl an Invertern bewahrt den Sinn des Datensignals, während eine ungerade Anzahl verwendet werden kann, wenn andere Logikoperationen dementsprechend eingestellt werden. Die Verzögerungsstruktur 335 kann zusätzliche Steuerung und Flexibilität in einer Ausführungsform bereitstellen, wenn die Verzögerung einstellbar ist. Neben anderen Techniken können variable Verzögerungen durch Modifizieren einer Inverterstufe 410 oder einer Lastkapazität 430 erlangt werden. Element 440 zeigt, wie ein Inverter durch Bereitstellen einer einstellbaren Stromsenke in einem Pull-Down-Zweig der Schaltung modifiziert werden kann. Beispielsweise gestattet Transistor 450 in Schaltungsfragment 460, daß das Inverter-Timing unter der Steuerung einer Analogspannung V geändert wird. Digitale Steuerung des Inverter-Timing könnte durch paralleles Plazieren einer Anzahl von Pull-Down-Transistoren erreicht werden, wie bei Element 480 in Schaltungsfragment 490 gezeigt. Die Geschwindigkeit des Inverters in 480 kann gemäß vier Digitalsignalen B eingestellt werden, wobei ein jedes einen der Transistoren 480 steuert. Die Anzahl und Breite der Transistoren 480 kann ausgewählt werden, um zu gestatten, daß die Verzögerung gemäß einer n-bit-Binärzahl gesteuert wird. Einstellbare Verzögerungsstrukturen können auch durch Anbringen von mehr oder größeren Lastkapazitäten an einer Ausgangssignalleitung über steuerbare Schalter (nicht gezeigt) aufgebaut sein.
  • Zurückkehrend zu 3 werden die Ausgaben von Masterlatch 325 und LTTD-Latch 345 beispielsweise durch Exklusiv-ODER-Gatter („XOR"-Gatter) 350 verglichen. Der Ausgang 355 von XOR-Gatter 350 ist auf low, wenn die Latches im selben Zustand sind, und auf high, wenn die Latches in unterschiedlichen Zuständen sind. Daher ist Signal 355 auf high, wenn das Datensignal 305 eine kurze, aber noch akzeptable Einstellzeit aufweist, während das verzögerte Datensignal 340 eine kurze und inakzeptable Einstellzeit aufweist. Vergleiche anderer LTTD-Latches und ihrer entsprechenden Masterlatches (z. B. XOR-Gatter 365) können über OR-Gatter 360 kombiniert werden, dessen Ausgang 375 signalisiert, wenn ein oder mehrere LTTD-Latches nicht mit ihrem Masterlatches übereinstimmen. Der Ausgang des OR-Gatters kann durch Latchen desselben im transparenten Latch 380 mit dem Takt synchronisiert sein. Eine „1" von Latch 380 zeigt an, daß an einem oder mehreren LTTD-Latches ein Einstellzeitfehler aufgetreten ist.
  • Verschiedene Modifikationen an der Schaltung nach 3 sind für den Durchschnittsfachmann offensichtlich. Beispielsweise kann dann, wenn (aus Platz-, Leistungs- oder Geschwindigkeitsgründen, wie vorher erwähnt) invertierende Latches verwendet werden, eine ungerade Anzahl von Invertern in Verzögerungsstruktur 335 oder ein Nicht-Exklusiv-ODER-Gatter („XNOR"-Gatter) an die Stelle gesetzt werden, um die beschriebene logische Operation zu bewahren. Die XOR-(XNOR-)-Gatter und der OR-Baum können entweder mit statischen oder dynamischen Logikelementen gebaut sein. Bei Implementierung in einem Komplementär-Metalloxid-Halbleiter-Prozeß („CMOS"-Prozeß) können „Domino"-Gatterkonstruktionen verwendet werden. Das LTTD-Latch könnte seine Eingabe auch vom selben Signal wie das Hauptlatch (statt vom Ausgang des Latches) empfangen, wobei eine Verzögerung direkt eingefügt ist, wie durch die gestrichelte Linie 342 gezeigt.
  • 5 zeigt drei mögliche Timing-Fälle für Master- und LTTD-Latches. Im ersten Fall sind sowohl das Datensignal 503 als auch das verzögerte Datensignal 504 vor der Mindesteinstellzeit 502 stabil, und somit speichern beide Latches den richtigen Wert beim Taktübergang 501. Die Signale stabilisieren sich zu Zeiten 513 bzw. 516 vor der Mindesteinstellgrenze 502. Es wird kein Fehler signalisiert.
  • In Fall 2 wird es, sowie das Datensignal 503 in Bezug auf die Taktflanke 501, an der es zu latchen ist, später eintrifft, dem verzögerten Datensignal 504 letztendlich nicht gelingen, die Mindesteinstellzeit einzuhalten. Das LTTD-Latch wird sich auf den falschen Wert einstellen, und es wird ein Fehler signalisiert werden. Man beachte, daß die Daten 503 die Mindesteinstellzeit noch einhalten (Zeit 522 tritt vor 502 ein), die verzögerten Daten 504 aber stabilisieren sich nicht bis zur Zeit 525 nach 502. Der Übergang bei 528 ist verspätet und veranlaßt, daß das LTTD-Latch einen falschen Wert speichert.
  • In Fall 3 trifft das Datensignal 503 noch später ein, so daß es ihm auch nicht gelingt, die Mindesteinstellzeit einzuhalten. Sowohl das Masterlatch als auch das LTTD-Latch werden falsche Werte enthalten. Dieser Fall ist vom verfrühten Eintreffen eines Datensignals auf Grund dessen nicht unterscheidbar, daß es im folgenden Zyklus gelatcht wird. Es wird kein Fehler signalisiert.
  • Eine Ausführungsform der Erfindung kann in einer Rückkopplungsschleife verwendet werden, die einen oder mehrere Betriebsparameter einer Schaltung steuert, wie in 6 gezeigt. Die Schaltung kann ein monolithisches Gerät wie z. B. eine integrierte CMOS-Schaltung sein, die aus einer Anzahl Funktionseinheiten besteht. 6 zeigt zwei Schaltungen 610 (die beispielsweise ein Digitalsignalprozessor („DSP") sein kann) und 660 (die eine Computer-Zentraleinheit („CPU") sein kann).
  • Master-Slave-Latches oder andere Flipflops, erweitert um ein Detektorlatch für verspätete Timing-Übergänge und einen Komparator ähnlich dem in 3 gezeigten, können an verschiedenen physikalischen Orten um die monolithischen Schaltungen 610 und 660 herum (beispielsweise bei 615, 620, 625, 680 und 692) plaziert sein. Einsetzung 630 zeigt einige Elemente der ergänzten Latches. Latches und Flipflops liegen oft in gemeinschaftlich getakteten Bänken oder Anordnungen vor, und nicht alle Latches in einer derartigen Anordnung müssen instrumentalisiert werden. Statt dessen kann ein LTTD-Latch die Operationen einer Gruppe von Latches überwachen, die gemeinschaftlich getaktet sind und Daten empfangen, die wahrscheinlich ähnliche Verzögerungen zwischen der Datensignalquelle und den Latcheingängen erfahren.
  • LTTD-Komparator-(„Fehler"-)-Ausgaben können durch beispielsweise OR-Gatter 635 kombiniert werden. Wie unter Bezug auf 3 erwähnt, kann das Fehlersignal durch Speichern desselben in einem anderen Latch (nicht gezeigt) zu einem Takt synchronisiert werden. Das Fehlersignal zeigt an, daß einer oder mehrere der LTTD-Monitore einen möglichen bevorstehenden Timing-Fehler signalisierten. Dieses Fehlersignal wird einer Regelungsschaltung 640 bereitgestellt, die Schaltungsparameter wie z. B. die Betriebsspannung 645, die Substratkörpervorspannung 650 oder die Taktfrequenz 655 einstellen kann. Die Regelungsschaltung kann Schaltungsparameter einstellen, um ein vorgegebenes Verhältnis von Fehler- zu Kein-Fehler-Signalen zu erreichen. Wenn das Zielverhältnis von Fehler- zu Kein-Fehler-Signalen niedrig ist, wird die Schaltung mit komfortablen Sicherheitsmargen arbeiten, aber etwas Leistung aufgeben (sie wird beispielsweise langsamer arbeiten als sie könnte, oder sie wird mehr Leistung aufnehmen, als streng genommen nötig ist). Wenn das Zielverhältnis hoch ist, wird die Schaltung mit reduzierten Sicherheitsmargen arbeiten, aber Leistung gewinnen.
  • Die Rückkopplungsschleife sollte Parameter allmählich ändern, um das Übergehen vom ersten Timing-Fall nach 5 (keine Fehler signalisiert, große Timing-Spielräume) direkt auf den dritten Timing-Fall (keine Fehler signalisiert, aber Timing-Spielräume verletzt) ohne Detektieren von Fehlern im Timing-Fall zwei zu vermeiden. In einigen Ausführungsformen kann eine Sicherheitsrücksetzschaltung 658 verwendet werden, um die Rückkopplungsschleife in eine extrem „langsame" Bedingung zu zwingen, bevor es der Schleife gestattet wird, das Optimieren von Betriebsparametern wiederaufzunehmen.
  • Die Logik, welche die Rückkopplungsschleife steuert, kann als Software oder als Firmware (sowie als Hardware) implementiert sein, die Zugriff auf das Fehlersignal aus der LTTD-Schaltung hat. Eine derartige Implementierung kann flexiblere Steuerung des Systems gestatten. Beispielsweise könnte die Software Betriebsparameter einstellen, um die Leistungsaufnahme zu reduzieren, wenn das System an Batterien arbeitete, und die Leistung zu erhöhen, wenn angemessene Leistung und Kühlung verfügbar wäre. Andere, komplexere Leistungsprofile könnten ebenfalls festgelegt werden.
  • Software könnte auch den Betrieb eines umfangreicheren Systems durch Überwachen von Timing-Fehlern von einer Anzahl separater Schaltungen koordinieren. Beispielsweise könnte eine Regelungsschaltung in einer CPU 660 Systemparameter 685 (z. B. Spannung, Taktfrequenz) in Reaktion auf Fehlersignale von anderen Systemkomponenten, wie z. B. von DSP 610, Speicher 670 und Ein- und Ausgabegeräten 675, sowie Fehlersignale von LTTD-Latches 680 innerhalb der CPU selbst einstellen. Der Gesamtsystemtakt könnte in Reaktion auf Signale von einem DSP, einer CPU, einem Speichercontroller und einem Hauptspeicher eingestellt werden. Alternativ könnte eine Funktionseinheit innerhalb eines monolithischen Gerätes, wie z. B. eine Fließkommaeinheit (Floating Point Unit, „FPU") 690, mit einer lokalen Regelung 695 und einem lokalen Parametereinsteller 698 ausgestattet sein, um zu gestatten, daß lokale Betriebsparameter in Reaktion auf Fehlersignale von LTTD-Latches 692 innerhalb der Funktionseinheit eingestellt werden.
  • Eine Ausführungsform der Erfindung kann ein maschinenlesbares Medium sein, das darauf gespeicherte Befehle aufweist, die einen Prozessor veranlassen, Operationen wie oben beschrieben auszuführen. In anderen Ausführungsformen könnten die Operationen durch spezifische Hardwarekomponenten ausgeführt werden, die festverdrahtete Logik enthalten.
  • Jene Operationen können alternativ durch jedwede Kombination aus programmierten Computerkomponenten und maßgeschneiderten Hardwarekomponenten ausgeführt werden.
  • Ein maschinenlesbares Medium kann jedweden Mechanismus zum Speichern oder Übertragen von Informationen in einer durch eine Maschine (z. B. einen Computer) lesbaren Form beinhalten, einschließlich, jedoch nicht beschränkt auf CDs (Compact Disc Read-Only Memory, CD-ROMs), Lese-Speicher (Read-Only Memory, ROMs), Direktzugriffsspeicher (Random Access Memory, RAM), lösch- und programmierbaren Lese-Speicher (Erasable Programmable Read-Only Memory, EPROM) und eine Übertragung über das Internet.
  • Die Anwendungen der vorliegenden Erfindung sind weitgehend unter Bezug auf spezifische Beispiele und im Hinblick auf bestimmte Zuteilungen von Funktionalität auf gewisse Hardware- und/oder Softwarekomponenten beschrieben worden. Fachleute werden jedoch erkennen, daß eine Leistungssteigerung, die auf Detektion verspäteter Timing-Übergänge basiert, auch durch Software und Hardware erreicht werden kann, die die Funktionen von Ausführungsformen dieser Erfindung unterschiedlich gegenüber dem hierin Beschriebenen verteilt. Derartige Variationen und Implementierungen sind als gemäß den folgenden Ansprüchen festgesetzt zu verstehen.
  • ZUSAMMENFASSUNG
  • Zwei Latches speichern den Zustand eines Datensignals bei einem Übergang eines Taktsignals. Vergleichslogik vergleicht die Ausgaben der zwei Latches und produziert ein Signal, um anzuzeigen, ob die Ausgaben gleich oder ungleich sind. Beschrieben und beansprucht werden Systeme, welche die Latches und die Vergleichslogik verwenden.

Claims (21)

  1. Vorrichtung, umfassend: ein erstes Latch, um einen Zustand eines Datensignals bei einem Übergang eines Taktsignals zu halten; ein zweites Latch, um einen Zustand des Datensignals beim Übergang des Taktsignals zu halten; und Vergleichslogik, um eine Ausgabe des ersten Latches mit einer Ausgabe des zweiten Latches zu vergleichen und, wenn die Ausgaben gleich sind, ein erstes Signal und, wenn die Ausgaben ungleich sind, ein zweites Signal zu erzeugen.
  2. Vorrichtung nach Anspruch 1, ferner umfassend: eine Verzögerungsstruktur, um das Datensignal zum zweiten Latch zu verzögern.
  3. Vorrichtung nach Anspruch 2, wobei die Verzögerungsstruktur eine einstellbare Verzögerungsstruktur ist, wobei die Verzögerungsstruktur mindestens eines von folgendem umfaßt: einen Inverter; einen Inverter mit einer einstellbaren Stromsenke in einem Pull-Down-Zweig und einen Inverter mit einer Lastkapazität, die über einen steuerbaren Schalter an einem Ausgang angebracht ist.
  4. Vorrichtung nach Anspruch 1, ferner umfassend: ein drittes Latch, um einen Ausgabewert von der Vergleichslogik zu halten.
  5. Vorrichtung nach Anspruch 1, ferner umfassend: Rückkopplungslogik, um einen Parameter einer elektronischen Schaltung einzustellen, wobei die Rückkopplungslogik auf ein vorgegebenes Verhältnis von „gleichen" zu „ungleichen" Signalwerten von der Vergleichslogik zielt.
  6. Vorrichtung nach Anspruch 5, wobei der Parameter mindestens einer von folgendem ist: eine Spannung, die zur elektronischen Schaltung geliefert wird; eine Körpervorspannung, die an die elektronische Schaltung gelegt wird; und eine Frequenz eines Taktes, die zur elektronischen Schaltung geliefert wird.
  7. Vorrichtung nach Anspruch 1, wobei das erste Latch und das zweite Latch nicht invertierende Latches sind.
  8. Vorrichtung nach Anspruch 1, wobei das erste Latch und das zweite Latch invertierende Latches sind.
  9. Vorrichtung nach Anspruch 1, wobei eine Ausgabe jedes des ersten und zweiten Latches eine Eingabe des Latches nachverfolgt, wenn der Takt auf einem ersten Pegel ist, und einen Wert hält, der am Eingang des Latches vorliegt, wenn der Takt vom ersten Pegel auf einen zweiten Pegel übergeht.
  10. Vorrichtung nach Anspruch 1, wobei die Vergleichslogik ein dynamisches Logikgatter umfaßt.
  11. Vorrichtung nach Anspruch 1, wobei die Vergleichslogik ein statisches Logikgatter umfaßt.
  12. Verfahren, umfassend: Latchen eines Datensignals mit einer ersten Einstellzeit relativ zu einer Taktsignalflanke; Latchen des Datensignals mit einer zweiten Einstellzeit relativ zur Taktsignalflanke und Vergleichen des ersten gelatchten Signals mit dem zweiten gelatchten Signal, um ein Vergleichssignal zu erzeugen.
  13. Verfahren nach Anspruch 12, wobei die zweite Einstellzeit um einen festen Zeitraum kürzer als die erste Einstellzeit ist.
  14. Verfahren nach Anspruch 12, wobei die zweite Einstellzeit um einen einstellbaren Zeitraum kürzer als die erste Einstellzeit ist.
  15. Verfahren nach Anspruch 12, ferner umfassend: Synchronisieren des Vergleichssignals zum Taktsignal.
  16. Verfahren nach Anspruch 12, ferner umfassend: Einstellen eines Betriebsparameters einer Schaltung in Reaktion auf das Vergleichssignal.
  17. Verfahren nach Anspruch 16, wobei der Betriebsparameter einer unter einer Versorgungsspannung für die Schaltung, einer Körpervorspannung für die Schaltung und einer Taktfrequenz für die Schaltung ist.
  18. Verfahren nach Anspruch 16, ferner umfassend: Setzen des Betriebsparameters der Schaltung auf einen Extremwert des Parameters vor dem Einstellen des Parameters in Reaktion auf das Vergleichssignal.
  19. System, umfassend: ein Register; einen Detektor und einen Betriebsparameter-Einstellmechanismus; wobei das Register zum Speichern eines Datenwerts relativ zu einer Taktsignalflanke dient; der Detektor zum Signalisieren einer Datenwert-Einstellzeit kürzer als ein vorgegebener Zeitraum relativ zur Taktsignalflanke dient und der Einstellmechanismus zum Einstellen eines Parameters des Systems dient, so daß der Detektor eine kurze Einstellzeit in einem vorgegebenen Verhältnis von Taktsignalzeiträumen signalisiert.
  20. System nach Anspruch 19, wobei der Einstellmechanismus zum Justieren mindestens eines unter einer Versorgungsspannung, einer Körpervorspannung und einer Taktfrequenz dient.
  21. System nach Anspruch 19, ferner umfassend: ein zweites Register, einen zweiten Detektor und einen zweiten Betriebsparameter-Einstellmechanismus; wobei der Einstellmechanismus zum Justieren eines Parameters dient, der auf einen ersten Abschnitt eines monolithischen Geräts anwendbar ist; und der zweite Einstellmechanismus zum Justieren eines zweiten Parameters dient, der auf einen zweiten Abschnitt des monolithischen Geräts in Reaktion auf ein Signal vom zweiten Detektor anwendbar ist.
DE112006002337T 2005-09-23 2006-09-14 Verfahren und Vorrichtung zur Detektion verspäteter Timing-Übergänge Ceased DE112006002337T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/234,548 US7622961B2 (en) 2005-09-23 2005-09-23 Method and apparatus for late timing transition detection
US11/234,548 2005-09-23
PCT/US2006/036153 WO2007038033A2 (en) 2005-09-23 2006-09-14 Method and apparatus for late timing transition detection

Publications (1)

Publication Number Publication Date
DE112006002337T5 true DE112006002337T5 (de) 2008-06-19

Family

ID=37836868

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112006002337T Ceased DE112006002337T5 (de) 2005-09-23 2006-09-14 Verfahren und Vorrichtung zur Detektion verspäteter Timing-Übergänge

Country Status (4)

Country Link
US (2) US7622961B2 (de)
CN (1) CN101268615B (de)
DE (1) DE112006002337T5 (de)
WO (1) WO2007038033A2 (de)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8281158B2 (en) * 2007-05-30 2012-10-02 Lapis Semiconductor Co., Ltd. Semiconductor integrated circuit
US7827454B2 (en) * 2007-07-17 2010-11-02 Renesas Electronics Corporation Semiconductor device
US7941772B2 (en) * 2007-08-06 2011-05-10 International Business Machines Corporation Dynamic critical path detector for digital logic circuit paths
US8132136B2 (en) * 2007-08-06 2012-03-06 International Business Machines Corporation Dynamic critical path detector for digital logic circuit paths
JP2009147221A (ja) * 2007-12-17 2009-07-02 Renesas Technology Corp 半導体装置
US8499230B2 (en) * 2008-05-07 2013-07-30 Lsi Corporation Critical path monitor for an integrated circuit and method of operation thereof
US8191029B2 (en) * 2008-12-12 2012-05-29 Lsi Corporation Timing error sampling generator, critical path monitor for hold and setup violations of an integrated circuit and a method of timing testing
US20100153896A1 (en) * 2008-12-12 2010-06-17 Lsi Corporation Real-time critical path margin violation detector, a method of monitoring a path and an ic incorporating the detector or method
US8032804B2 (en) 2009-01-12 2011-10-04 Micron Technology, Inc. Systems and methods for monitoring a memory system
KR101062853B1 (ko) * 2009-07-01 2011-09-07 주식회사 하이닉스반도체 반도체 장치의 데이터 샘플링 회로
US7834653B1 (en) * 2009-10-31 2010-11-16 Lsi Corporation Failsafe and tolerant driver architecture and method
GB2482303A (en) * 2010-07-28 2012-02-01 Gnodal Ltd Modifying read patterns for a FIFO between clock domains
US8499265B2 (en) * 2011-02-14 2013-07-30 Nanya Technology Corporation Circuit for detecting and preventing setup fails and the method thereof
CN103842835B (zh) * 2011-09-28 2016-03-23 英特尔公司 自主式通道级老化监控装置和方法
US8762804B2 (en) * 2012-08-06 2014-06-24 Texas Instruments Incorporated Error prediction in logic and memory devices
TWI489245B (zh) * 2012-12-04 2015-06-21 Univ Nat Cheng Kung 具有能預測因製程與環境變異所造成時序錯誤的嵌入式脈衝時序電路系統
US9223710B2 (en) 2013-03-16 2015-12-29 Intel Corporation Read-write partitioning of cache memory
DE102013211372A1 (de) * 2013-06-18 2014-12-18 Aalto University Foundation Steuerungsmechanismus basiert auf zeitverhaltensinformation
WO2015035327A1 (en) * 2013-09-06 2015-03-12 Futurewei Technologies, Inc. Method and apparatus for asynchronous processor with fast and slow mode
EP2858244A1 (de) * 2013-10-02 2015-04-08 Aalto University Foundation Verhinderung von Zeitüberschreitungen
WO2015094373A1 (en) * 2013-12-20 2015-06-25 Intel Corporation Apparatus and method for adaptive guard-band reduction
CN104952382A (zh) * 2014-03-24 2015-09-30 昆达电脑科技(昆山)有限公司 液晶电视影像传输前后比对装置
US9755653B2 (en) 2014-11-05 2017-09-05 Mediatek Inc. Phase detector
US9231591B1 (en) * 2014-12-12 2016-01-05 Xilinx, Inc. Dynamic voltage scaling in programmable integrated circuits
KR102468786B1 (ko) * 2016-05-19 2022-11-18 에스케이하이닉스 주식회사 삼각파 발생 장치
CN112969927A (zh) * 2018-10-16 2021-06-15 米尼码处理器公司 可测试性设计的适应性微电子电路的应用
EP3891894A4 (de) * 2018-12-05 2022-07-27 Minima Processor Oy Mikroelektronische schaltung zur selektiven aktivierung von verarbeitungswegen und verfahren zur aktivierung von verarbeitungswegen in einer mikroelektronischen schaltung
US11074150B2 (en) 2019-04-19 2021-07-27 Nxp B.V. Chip health monitor
EP3923472A1 (de) 2020-06-08 2021-12-15 Nxp B.V. Schaltung zur erkennung und korrektur von zeitfehlern

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5813046A (ja) * 1981-07-17 1983-01-25 Victor Co Of Japan Ltd デ−タ読み取り回路
US4535459A (en) * 1983-05-26 1985-08-13 Rockwell International Corporation Signal detection apparatus
US5223755A (en) * 1990-12-26 1993-06-29 Xerox Corporation Extended frequency range variable delay locked loop for clock synchronization
US5317219A (en) 1991-09-30 1994-05-31 Data Delay Devices, Inc. Compensated digital delay circuit
US5307381A (en) 1991-12-27 1994-04-26 Intel Corporation Skew-free clock signal distribution network in a microprocessor
US5301196A (en) * 1992-03-16 1994-04-05 International Business Machines Corporation Half-speed clock recovery and demultiplexer circuit
US5579352A (en) * 1994-04-06 1996-11-26 National Semiconductor Corporation Simplified window de-skewing in a serial data receiver
US5539786A (en) * 1995-07-31 1996-07-23 The United States Of America As Represented By The Secretary Of The Navy Digital circuit for generating a clock signal
JPH09270677A (ja) * 1995-09-05 1997-10-14 Mitsubishi Electric Corp フリップフロップ回路及びスキャンパス並びに記憶回路
US5917356A (en) * 1995-09-11 1999-06-29 International Business Machines Corp. Three state phase detector
US5744991A (en) * 1995-10-16 1998-04-28 Altera Corporation System for distributing clocks using a delay lock loop in a programmable logic circuit
US6002733A (en) * 1995-12-23 1999-12-14 Lg Semicon Co., Ltd. Universal asynchronous receiver and transmitter
JPH09200491A (ja) 1996-12-06 1997-07-31 Topcon Corp 走査同期信号発生回路
JP3970974B2 (ja) * 1997-03-28 2007-09-05 富士通株式会社 デジタル信号の位相比較方法、位相比較器、pll回路、データ復調回路、及び、データ読み出し装置
US6100732A (en) * 1997-06-20 2000-08-08 Sun Microsystems, Inc. Phase enable and clock generation circuit
US6121804A (en) * 1998-08-27 2000-09-19 Applied Micro Circuits Corporation High frequency CMOS clock recovery circuit
JP2000114939A (ja) * 1998-10-05 2000-04-21 Nec Corp クロック信号生成装置
US6072337A (en) * 1998-12-18 2000-06-06 Cypress Semiconductor Corp. Phase detector
US6909852B2 (en) * 2000-02-17 2005-06-21 Broadcom Corporation Linear full-rate phase detector and clock and data recovery circuit
US6377102B2 (en) * 2000-02-29 2002-04-23 Texas Instruments Incorporated Load equalization in digital delay interpolators
JP2002251227A (ja) * 2001-02-23 2002-09-06 Nec Microsystems Ltd クロック監視回路、データ処理装置、データ処理システム
CA2344787A1 (en) * 2001-04-19 2002-10-19 Pmc-Sierra Ltd. A phase detector customized for clock synthesis unit
US7092474B2 (en) * 2001-09-18 2006-08-15 Broadcom Corporation Linear phase detector for high-speed clock and data recovery
JP3476448B2 (ja) * 2001-12-12 2003-12-10 沖電気工業株式会社 信号同期回路
JP3848152B2 (ja) * 2001-12-20 2006-11-22 株式会社東芝 多機能icカード
US6956405B2 (en) * 2002-07-09 2005-10-18 Ip-First, Llc Teacher-pupil flip-flop
JP2005214732A (ja) 2004-01-28 2005-08-11 Sony Corp クリティカル・パス評価方法及び遅延状態計測回路、並びにlsi製造方法
FR2875311A1 (fr) * 2004-09-14 2006-03-17 St Microelectronics Sa Procede de detection du positionnement relatif de deux signaux et dispositif correspondant
US7042250B1 (en) * 2004-11-03 2006-05-09 Texas Instruments Incorporated Synchronization of clock signals in a multi-clock domain
DE102005060394B4 (de) * 2005-12-16 2012-10-11 Infineon Technologies Ag Schaltungsanordnung und Verfahren zum Betreiben einer Schaltungsanordnung
JP4388571B2 (ja) * 2007-10-31 2009-12-24 Okiセミコンダクタ株式会社 高速クロック検知回路

Also Published As

Publication number Publication date
US8125246B2 (en) 2012-02-28
US20100052730A1 (en) 2010-03-04
US20070164787A1 (en) 2007-07-19
WO2007038033A2 (en) 2007-04-05
CN101268615A (zh) 2008-09-17
WO2007038033A3 (en) 2007-06-21
CN101268615B (zh) 2012-06-06
US7622961B2 (en) 2009-11-24

Similar Documents

Publication Publication Date Title
DE112006002337T5 (de) Verfahren und Vorrichtung zur Detektion verspäteter Timing-Übergänge
DE10330796B4 (de) Registergesteuerter Delay Locked Loop mit Beschleunigungsmodus
DE102010006578B4 (de) Schaltungsanordnung mit einer Prüfschaltung und einer Referenzschaltung und ein entsprechendes Verfahren
DE102006045254B4 (de) Verzögerungsregelschleife für Hochgeschwindigkeits-Halbleiterspeichervorrichtung
DE102008046831B4 (de) Ereignisgesteuerte Zeitintervallmessung
DE10023248B4 (de) Schaltung und Verfahren zur Taktsignalsynchronisation
DE102004034864B4 (de) Erzeugnisse und Verfahren zum dynamischen Verändern eines Taktsignals
DE69307684T2 (de) Mikroprozessor mit verteilten Taktgebern
DE102005060394A1 (de) Schaltungsanordnung und Verfahren zum Betreiben einer Schaltungsanordnung
DE102004032478A1 (de) Verzögerungsregelkreis in Halbleiterspeichervorrichtung und sein Taktsynchronisierverfahren
DE112016001481T5 (de) Unterspannungserkennung und leistungsdrosselung
DE102018115971B4 (de) Taktsteuerung in einem Halbleitersystem
DE69530748T2 (de) Spannungsregler für einen Ausgangstreiber mit verringerter Ausgangsimpedanz
DE10228562A1 (de) Taktsteuerschaltung
DE10393657T5 (de) Verfahren und Vorrichtung zur Datenabfrage
DE10392126B4 (de) Prozessortemperatursteuerungsschnittstelle
DE102007009525A1 (de) Konzept zum Erzeugen eines versorgungsspannungsabhängigen Taktsignals
DE102012219056A1 (de) Störimpulsfreier programmierbarer Taktformer
DE102004002437A1 (de) Verzögerungsregelkreis, integrierte Schaltung und Betriebsverfahren
DE102021124365A1 (de) Elektronische Systeme für integrierte Schaltungen und Spannungsregler
DE10310065B4 (de) Verfahren und Vorrichtung für eine Verzögerungsverriegelungsschleife
DE102010002370B4 (de) Fehlerdetektion in einer integrierten Schaltung
DE19811591C2 (de) Taktsignal modellierende Schaltung mit negativer Verzögerung
DE19949799A1 (de) Mikroprozessorschaltung mit variablem Taktbetrieb
DE102019215453A1 (de) Auf linearem Schieberegister basierter Taktsignalgenerator, zeitdomänenverschachtelter Analog-Digital-Umsetzer und Verfahren

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H03K0005130000

Ipc: H03K0005125200

R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20120218