DE112019002560T5 - Vorrichtung, verfahren und system zum bereitstellen eines verzögerten taktsignals an eine schaltung für sperrdaten - Google Patents

Vorrichtung, verfahren und system zum bereitstellen eines verzögerten taktsignals an eine schaltung für sperrdaten Download PDF

Info

Publication number
DE112019002560T5
DE112019002560T5 DE112019002560.0T DE112019002560T DE112019002560T5 DE 112019002560 T5 DE112019002560 T5 DE 112019002560T5 DE 112019002560 T DE112019002560 T DE 112019002560T DE 112019002560 T5 DE112019002560 T5 DE 112019002560T5
Authority
DE
Germany
Prior art keywords
signal
circuit arrangement
clock signal
delay
data
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.)
Pending
Application number
DE112019002560.0T
Other languages
English (en)
Inventor
Christopher Mozak
Senthil Kumar Sampath
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 DE112019002560T5 publication Critical patent/DE112019002560T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • G09G5/008Clock recovery
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/135Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of time reference signals, e.g. clock signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/14Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of delay lines
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L1/00Stabilisation of generator output against variations of physical values, e.g. power supply
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L1/00Stabilisation of generator output against variations of physical values, e.g. power supply
    • H03L1/02Stabilisation of generator output against variations of physical values, e.g. power supply against variations of temperature only
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/081Details of the phase-locked loop provided with an additional controlled phase shifter
    • H03L7/0812Details of the phase-locked loop provided with an additional controlled phase shifter and where no voltage or current controlled oscillator is used
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/08Details of timing specific for flat panels, other than clock recovery
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/04Maintaining the quality of display appearance
    • G09G2320/041Temperature compensation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/00019Variable delay

Landscapes

  • Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Pulse Circuits (AREA)

Abstract

Techniken und Mechanismen zum Bestimmen einer Verzögerung, die auf ein Taktsignal angewendet werden soll, zum Synchronisieren der Datenkommunikation. In einer Ausführungsform wird eine Verzögerung auf ein erstes Taktsignal angewendet, um ein zweites Taktsignal zu erzeugen, das dann an eine Sperrschaltung über einen Taktsignalverteilerpfad kommuniziert wird. Die Verzögerung wird basierend auf einer Bewertung einer ersten Zeit bestimmt, die für die Signalkommunikation über ein Modell des Taktsignalverteilerpfads benötigt wird. Eine solche Bestimmung basiert ferner auf einer Bewertung einer zweiten Zeit für einen Zyklus eines zyklischen Signals, wobei der Zyklus dem des ersten Taktsignals entspricht. In einer anderen Ausführungsform werden mehrere verschiedene Verzögerungen jeweils auf ein anderes jeweiliges Taktsignal angewendet, wobei jede der genannten Verzögerungen auf der Bewertung der ersten Zeit und der Bewertung der zweiten Zeit basiert.

Description

  • PRIORITÄTSANSPRUCH
  • Diese Anmeldung beansprucht die Priorität der U.S.-Patentanmeldung Nr. 16/022,357 , eingereicht am 28. Juni 2018, mit dem Titel „DEVICE, METHOD AND SYSTEM FOR PROVIDING A DELAYED CLOCK SIGNAL TO A CIRCUIT FOR LATCHING DATA“, die hierin durch Verweis vollumfänglich einbezogen ist.
  • HINTERGRUND
  • Technisches Gebiet
  • Ausführungsformen der Erfindung beziehen sich allgemein auf integrierte Schaltungsstrukturen und genauer, aber nicht ausschließlich, auf Schaltungsanordnungen, die bedienbar sind, eine Verzögerung zu bestimmen, die auf ein Taktsignal angewendet werden soll.
  • Stand der Technik
  • Die Kommunikation zwischen Komponenten auf einer Hostplattform ist notwendig, um eine elektronische Vorrichtung zu betreiben. Verschiedene Bedingungen wirken sich jedoch auf das Timing der Hochgeschwindigkeitskommunikation zwischen Komponenten aus, wie etwa Temperaturwechsel und Spannungsvariation. Allgemein kann die Kommunikation unter verschiedenen Komponenten als E/A (Eingabe/Ausgabe) bezeichnet werden, und sie wird häufig von Standards (z. B. zwischen Komponenten eines Speicheruntersystems) bestimmt. Die E/A-Standards können sich auf Leistungsfähigkeitseigenschaften für E/A-Leistung, E/A-Latenz und E/A-Frequenz beziehen. Die Standards oder Nennwerte von E/A-Leistungsfähigkeitseinstellungen sind auf Werte gestellt, die über verschiedene Systeme hinweg erreicht werden können, um Kompatibilität und Interoperabilität sicherzustellen. Typischerweise kommt es zu Kompromissen zwischen Leistung und Latenz. So können zwar knappe Timingparameter die Leistung verringern, aber auch die E/A-Latenz dazu veranlassen, negativer durch Temperatur, Spannung und Prozessvariation beeinflusst zu werden.
  • Bei bestehenden weitergeleiteten Taktarchitekturen unter Verwendung eines nicht abgeglichenen Empfängers erfolgt eine Verzögerungsleitungskalibrierung zum Verschieben eines Taktsignals, sodass eine Taktsignalflanke bezüglich eines Datensignals zentriert ist. Konventionelle Techniken zur Verzögerungsleitungskalibrierung verwenden ein Zeittraining oder eine ständige Takt- und Datenwiederherstellungsschleife (CDR-Schleife) zum Bereitstellen einer bestimmten Phasenbeziehung zwischen dem weitergeleiteten Takt und einem entsprechenden Datensignal, das abgetastet werden soll. Diese Kalibrierungstechniken müssen in jedem der empfangen Taktpfade eines Systems einzeln erfolgen, was wiederum einen weiteren Bereichs- und Leistungs-Overhead pro weitergeleiteter Taktgruppe verlangt. Da aufeinanderfolgende Generationen integrierter Schaltungstechnologien immer schnellere Betriebsfrequenzen unterstützen, wird erwartet, dass eine steigende Prämie auf inkrementelle Verbesserungen von Systemtaktlösungen erhoben wird.
  • Figurenliste
  • Die verschiedenen Ausführungsformen dieser Erfindung sind beispielhaft und nicht einschränkend in den Figuren der beiliegenden Zeichnungen illustriert, wobei gilt:
    • 1 illustriert ein Funktionsblockdiagramm auf hoher Ebene, das Elemente eines Systems illustriert, um ein Taktsignal nach einer Ausführungsform bereitzustellen.
    • 2 illustriert ein Ablaufdiagramm, das Elemente eines Verfahrens illustriert, um ein Taktsignal mit einer integrierten Schaltungsanordnung nach einer Ausführungsform bereitzustellen.
    • 3 illustriert Funktionsblockdiagramme jeweiliger Schaltungskomponente, um die Verzögerung eines Taktsignals nach einer entsprechenden Ausführungsform zu ermöglichen.
    • 4 illustriert ein Funktionsblockdiagramm auf hoher Ebene, das Elemente einer integrierten Schaltung illustriert, um ein Taktsignal nach einer Ausführungsform bereitzustellen.
    • 5 illustriert ein Schaltdiagramm, das Elemente einer Erkennungsschaltung illustriert, um eine Verzögerung eines Taktsignals nach einer Ausführungsform zu ermöglichen.
    • 6 illustriert ein Schaltungsdiagramm, das Elemente einer Bewertungsschaltung illustriert, um die Verzögerung eines Taktsignals nach einer entsprechenden Ausführungsform zu ermöglichen.
    • 7 illustriert ein Funktionsblockdiagramm, das eine Rechnervorrichtung nach einer Ausführungsform illustriert.
    • 8 illustriert ein Funktionsblockdiagramm, das ein beispielhaftes Computersystem nach einer Ausführungsform illustriert.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Hierin besprochene Ausführungsformen stellen verschiedentlich Techniken und Mechanismen bereit, um eine Verzögerung zu bestimmen, die auf ein Taktsignal angewendet wird, um das Sperren von Daten zu synchronisieren, die in einem Datensignal empfangen wurden. Das Taktsignal wird durch eine erste Schaltungsanordnung verzögert und dann durch einen Taktsignalverteilerpfad von der ersten Schaltungsanordnung an eine Sperrschaltung kommuniziert. Die Verzögerung wird basierend auf der Bewertung einer ersten Zeitdauer bestimmt, die für Signalkommunikation über ein Modell des Taktsignalverteilerpfads erforderlich ist (wobei die erste Zeitdauer der entspricht, die für die Kommunikation über den Taktsignalverteilerpfad selbst benötigt wird). Die Bestimmung der Verzögerung basiert ferner auf der Bewertung einer zweiten Zeitdauer für einen Zyklus eines zyklischen Signals (wobei die zweite Zeitdauer dieselbe ist wie die für einen Zyklus des Taktsignals). Eine Gesamtverzögerung, die auf das Taktsignal angewendet wird, kann linear (oder alternativ dazu nichtlinear) mit einer oder beiden der ersten Zeitdauer oder der zweiten Zeitdauer variieren. eine solche Verzögerung kann proportional zu einer Summe sein, die auf der ersten Zeitdauer und der zweiten Zeitdauer basiert. In einigen Ausführungsformen wird die Verzögerung mindestens teilweise basierend auf einer bedingten Bewertung davon bestimmt, ob die erste Zeitdauer oder die zweite Zeitdauer einen vorgegebenen Testzustand erfüllt - z. B. wenn die Verzögerung auf einem Vergleich einer Zeitdauer mit einer Grenzzeitspanne basiert.
  • In einer Ausführungsform werden mehrere Verzögerungen verschiedentlich jeweils auf ein anderes jeweiliges Taktsignal angewendet, wobei die mehreren Verzögerungen jeweils basierend auf sowohl der ersten Zeitdauer als auch der zweiten Zeitdauer bestimmt werden. Als Ergebnis davon ermöglichen einige Ausführungsformen die Bestimmung von mindestens einer Verzögerungskomponente basierend auf einem Modell eines Taktverteilungspfads zur Verwendung in mehreren verschiedenen Verzögerungskalibrierungsprozessen. Im Vergleich mit bestehenden Taktverzögerungskalibrierungstechniken ermöglichen solche Ausführungsformen unterschiedlich verringerte Bereichs-, Leistungs- und/oder andere Ressourcenanforderungen.
  • Bestimmte Merkmale verschiedener Ausführungsformen sind hierin hinsichtlich der Kommunikation eines verzögerten Taktsignals über einen Taktsignalverteilerpfad beschrieben, wobei ein Modell des Taktsignalverteilerpfads als eine Grundlage zum Bestimmen der Verzögerung verwendet wird, die auf das Taktsignal angewendet werden soll. Wie hierin verwendet, bezieht sich „Taktsignalverteilerpfad“ (oder um der Kürze Willen „Taktverteilungspfad“) auf Schaltungsstrukturen, die einen leitfähigen Pfad für die Kommunikation eines Taktsignals bereitstellen. Ein Taktverteilungspfad kann ein Zweig, Schenkel oder anderer Pfad eines größeren Taktverteilungsnetzwerks sein, das ferner mehrere solche Pfade umfasst, die - beispielsweise - in einem Netz, Baum oder einer anderen verzweigenden Topologie angeordnet sind. Ein bestimmter Taktverteilungspfad kann eine oder mehrere Zwischenverbindungsstrukturen umfassen und in einigen Ausführungsformen einen oder mehrere Puffer, die in Reihe mit der einen oder den mehreren Zwischenverbindungsstrukturen angeordnet sind. Weiterhin oder alternativ dazu kann ein solcher Taktverteilungspfad ein oder mehrere programmierbare Verzögerungselemente umfassen, die beispielsweise unterschiedlich konfigurierbar sind (z. B. unabhängig voneinander) um ein relatives Timing zwischen jeweiligen Anstiegs-/Abfallsübergängen eines verzögerten Taktsignals und eines anderen Signals zu koordinieren. Ein Modell anderer Schaltungsanordnungen (neben einem Modell eines Taktverteilungspfads) kann ebenfalls verwendet werden, um die Verzögerung zu bestimmen, die auf das Taktsignal angewendet werden soll. Beispiele anderer Schaltungsanordnungen umfassen eine Eingabe-/Ausgabe-Sendeschaltung (EA-Sendeschaltung), eine EA-Empfängerschaltung, eine Tastgradeinstellungsschaltung und/oder eine von verschiedenen anderen Schaltungen, die verwendet werden können, ein Taktsignal zu kommunizieren, das unter Verwendung hierin beschriebener Techniken verzögert wird.
  • In dem Kontext der Modellierung eines Taktsignalpfads bezieht sich „Modell“ hierin auf Schaltungsstrukturen, die die eines assoziierten Taktverteilungspfads emulieren - d. h. wobei die Emulierung mindestens bezüglich einer Zeitdauer erfolgt, die notwendig ist, eine Kommunikation durch die Schaltungsstrukturen auszuführen. Die Schaltungsstrukturen des Modells können Zwischenverbindungsstrukturen und in einigen Ausführungsformen einen oder mehrere Puffer umfassen, die in Reihe mit der einen oder den mehreren Zwischenverbindungsstrukturen angeordnet sind. In einer solchen Ausführungsform kann eine Gesamtlänge des leitfähigen Pfads eines bestimmten Modells im Wesentlichen gleich wie der des assoziierten Taktverteilungspfads sein (z. B. bis auf innerhalb von 10 % und in einigen Ausführungsformen bis auf innerhalb von 1 %). Alternativ oder zusätzlich dazu kann eine Gesamtanzahl von Puffern des Modells im Wesentlichen gleich wie die von Puffern des assoziierten Taktverteilungspfads sein (z. B. bis auf innerhalb von 10 %).
  • Die Technologien, die hierin beschrieben sind, können in einer oder mehreren elektronischen Vorrichtungen umgesetzt sein. Nichteinschränkende Beispiele elektronischer Vorrichtungen, die die hierin beschriebenen Technologien verwenden können, umfassen alle Arten mobiler Vorrichtungen und/oder stationärer Vorrichtungen, wie etwa Kameras, Handys, Computerterminals, Desktopcomputer, elektronische Reader, Faxmaschinen, Kiosks, Laptopcomputer, Netbookcomputer, Notebookcomputer, Internetvorrichtungen, Zahlungsterminals, Personal Digital Assistants, Mediaplayer und/oder Recorder, Server (z. B. Bladeserver, Rackmount-Server, Kombinationen daraus usw.), Set-Top-Boxes, Smartphones, Tablet-Personal-Computers, ultramobile Personal Computers, verkabelte Telefone, Kombinationen daraus und dergleichen. Allgemeiner können die hierin verwendeten Technologien in jeder einer Vielzahl elektronischer Vorrichtungen eingesetzt werden, einschließlich integrierter Schaltungsanordnungen, die einen Taktgeber zum Sperren von Daten verwendet.
  • In der folgenden Beschreibung werden zahlreiche Details besprochen, um eine ausführlichere Erklärung der Ausführungsformen dieser Offenbarung bereitzustellen. Es wird jedoch für einen Fachmann auf dem Gebiet offensichtlich sein, dass die Ausführungsformen dieser Offenbarung ohne diese spezifischen Details praktiziert werden können. In anderen Instanzen werden bekannte Strukturen und Vorrichtungen in Form eines Blockdiagramms gezeigt, statt ausführlich, um Ausführungsformen dieser Offenbarung nicht zu verschleiern.
  • Es ist zu beachten, dass in den entsprechenden Zeichnungen der Ausführungsformen Signale mit Linien dargestellt sind. Einige Linien können dicker sein, um eine größere Anzahl von darstellenden Signalpfaden darzustellen, und/oder Pfeile an einem oder mehreren Enden aufweisen, um eine Informationsflussrichtung anzuzeigen. Solche Anzeigen sind nicht als einschränkend vorgesehen. Stattdessen werden die Linien in Verbindung mit einer oder mehreren beispielhaften Ausführungsformen verwendet, um ein leichteres Verständnis einer Schaltung oder logischen Einheit zu ermöglichen. Jedes dargestellte Signal kann, wie durch Designbedürfnisse oder Vorzüge vorgeschrieben, tatsächlich ein oder mehrere Signale umfassen, die in jeder Richtung laufen können und die mit einer geeigneten Art von Signalschema umgesetzt werden können.
  • In der gesamten Spezifikation und in den Ansprüchen bedeutet der Begriff „verbunden“ eine direkte Verbindung, wie etwa eine elektrische, mechanische oder magnetische Verbindung zwischen den verbundenen Dingen, ohne Vermittlungsvorrichtungen. Der Begriff „gekoppelt“ bedeutet eine direkte oder indirekte Verbindung, wie etwa eine direkte elektrische, mechanische oder magnetische Verbindung zwischen den Dingen, die verbunden sind, oder eine indirekte Verbindung durch eine oder mehrere passive oder aktive Zwischenvorrichtungen. Der Begriff „Schaltung“ oder „Modul“ kann sich auf eine oder mehrere passive und/oder aktive Komponenten beziehen, die angeordnet sind, miteinander zusammenzuarbeiten, um eine gewünschte Funktion bereitzustellen. Der Begriff „Signal“ kann sich auf mindestens ein Stromsignal, Spannungssignal, magnetisches Signal oder Daten- /Taktsignal beziehen. Die Bedeutungen von „ein“, „eine“ und „der/die/das“ umfassen auch Pluralverweise. Die Bedeutung von „in“ umfasst „in“ und „an“.
  • Der Begriff „Vorrichtung“ kann sich allgemein auf eine Einrichtung nach dem Zusammenhang der Verwendung des Begriffs beziehen. Beispielsweise kann sich eine Vorrichtung auf einen Stapel Schichten oder Strukturen, eine einzige Struktur oder Schicht, eine Verbindung verschiedener Strukturen, die aktive und/oder passive Elemente aufweisen usw. beziehen. Allgemein ist eine Vorrichtung eine dreidimensionale Struktur mit einer Ebene entlang der x-y-Richtung und einer Höhe entlang der z-Richtung eines kartesischen x-y-z-Koordinatensystems. Die Ebene der Vorrichtung kann auch die Ebene einer Einrichtung sein, die die Vorrichtung umfasst.
  • Der Begriff „Skalierung“ bezieht sich allgemein auf die Umwandlung eines Designs (Schema und Layout) von einer Prozesstechnologie in eine andere Prozesstechnologie und die nachfolgende Verringerung des Layoutbereichs. Der Begriff „Skalierung“ bezieht sich allgemein auch auf Verringern der Größe von Layout und Vorrichtungen innerhalb desselben Technologieknotens. Der Begriff „Skalierung“ kann sich auch auf die Anpassung (z. B. Verlangsamung oder Beschleunigung - d. h. Abskalierung bzw. Aufskalierung) einer Signalfrequenz relativ zu einem anderen Parameter, wie etwa dem Stromversorgungspegel, beziehen.
  • Die Begriffe „im Wesentlichen“, „nahe“, „etwa“, „in der Nähe“ und „ca.“ beziehen sich allgemein auf einen Bereich von +/- 10 % um einen Zielwert. Beispielsweise bedeuten, wenn nicht anders im ausdrücklichen Kontext ihrer Verwendung vorgegeben, die Begriffe „im Wesentlichen gleich“, „etwa gleich“ und „ungefähr gleich“, dass es nicht mehr als eine nebensächliche Variation zwischen den so beschriebenen Dingen gibt. In der Technik ist eine solche Variation typischerweise maximal +/- 10 % eines vorgegebenen Zielwerts.
  • Es versteht sich, dass die Begriffe, die so verwendet werden, unter geeigneten Umständen austauschbar sind, sodass die Ausführungsformen der hierin beschriebenen Erfindung beispielsweise in der Lage sind, in anderen Ausrichtungen betrieben zu werden, als denen, die hierin illustriert oder anderweitig beschrieben sind.
  • Wenn nicht anders vorgegeben, dient die Verwendung der Ordinaladjektive „erste/r/s“, „zweite/r/s“ und „dritte/r/s“ usw. bei Beschreibung eines gemeinsamen Objekts nur der Anzeige, dass auf verschiedene Instanzen gleicher Objekte verwiesen wird, und soll nicht implizieren, dass die so beschriebenen Objekte in einer bestimmten Reihenfolge vorliegen müssen, weder zeitlich noch räumlich, in Rangordnung oder anderweitig.
  • Zum Zweck dieser Offenbarung bedeuten die Phrasen „A und/oder B“ und „A oder B“ (A), (B) oder (A und B). Zum Zweck dieser Offenbarung bedeutet die Phrase „A, B und/oder C‟ (A), (B), (C), (A und B), (A und C), (B und C) oder (A, B und C).
  • Die Begriffe „links“, „rechts“, „vorne“, „hinten“, „oben“, „unten“, „über“, „unter“ und dergleichen in der Beschreibung und den Ansprüchen werden, wenn vorhanden, zu beschreibenden Zwecken verwendet und dienen nicht notwendigerweise der Beschreibung permanenter relativer Positionen. Beispielsweise beziehen sich die Begriffe „über“, „unter“ „Vorderseite“, „Rückseite“, „oben“, „unten“, „über“, „unter“ und „an“, wie hierin verwendet auf eine relative Position einer Komponente, einer Struktur oder eines Materials bezüglich anderer genannter Komponenten, Strukturen oder Materialien innerhalb einer Vorrichtung, bei denen solche physischen Beziehungen zu beachten sind. Diese Begriffe werden hierin zu rein beschreibenden Zwecken und vornehmlich innerhalb des Kontexts einer Vorrichtungsz-Achse eingesetzt und können daher relativ zu einer Ausrichtung einer Vorrichtung stehen. Daher kann ein erstes Material „über“ einem zweiten Material im Zusammenhang einer Figur, die hierin bereitgestellt ist, auch „unter“ dem zweiten Material sein, wenn die Vorrichtung kopfüber relativ zu dem Kontext der bereitgestellten Figur angeordnet ist. In dem Kontext von Materialien kann ein Material, das über oder unter einem anderen angeordnet ist, direkt in Kontakt stehen oder ein oder mehrere dazwischenliegende Materialien aufweisen. Weiterhin kann ein Material, das zwischen zwei Materialien angeordnet ist, direkt mit den beiden Schichten in Kontakt stehen oder eine oder mehrere dazwischenliegende Schichten aufweisen. Im Gegensatz dazu steht ein erstes Material „auf“ einem zweiten Material in direktem Kontakt mit dem zweiten Material. Ähnliche Unterschiede sind in Zusammenhang mit Bauteilbaugruppen zu machen.
  • Der Begriff „zwischen“ kann in dem Zusammenhang der z-Achse, x-Achse oder y-Achse einer Vorrichtung verwendet werden. Ein Material, das zwischen zwei anderen Materialien liegt, kann in Kontakt mit einem oder beiden der Materialien stehen, oder kann von beiden der anderen zwei Materialien durch eines oder mehrere dazwischenliegende Materialien getrennt sein. Ein Material, das „zwischen“ zwei anderen Materialien liegt, kann somit mit einem oder beiden der beiden anderen Materialien in Kontakt stehen, oder kann durch ein dazwischenliegendes Material mit den beiden anderen Materialien gekoppelt sein. Eine Vorrichtung, das zwischen zwei anderen Vorrichtungen liegt, kann direkt mit einer oder beiden der Vorrichtungen verbunden sein, oder kann von beiden der anderen zwei Vorrichtungen durch eine oder mehrere dazwischenliegende Vorrichtungen getrennt sein.
  • Wie während dieser Beschreibung und in den Ansprüchen verwendet, kann eine Liste von Posten, die mit dem Begriff „mindestens eines aus“ oder „eines oder mehr aus“ jede Kombination der aufgeführten Posten umfassen. Beispielsweise kann die Phrase „mindestens eines aus A, B oder C“ A; B; C; A und B; A und C; B und C; oder A, B und C bedeuten. Es wird festgehalten, dass die Elemente aus den Figuren mit denselben Referenzziffern (oder Namen) wie die Elemente jeder anderen Figur hierin in jeder Weise operieren oder funktionieren können, die ähnlich wie die beschriebene ist, aber nicht darauf beschränkt sind.
  • Weiterhin können die verschiedenen Elemente kombinatorischer Logik und sequenzieller Logik, die in dieser Offenbarung erklärt sind, sich auf physische Strukturen (wie etwa AND-Gates, OR-Gates oder XOR-Gates) oder synthetisierte oder anderweitig optimierte Sammlungen von Vorrichtungen beziehen, die die logischen Strukturen umsetzen, die Boolesche Äquivalente der erklärten Logik sind.
  • Es wird festgehalten, dass die Elemente aus den Figuren mit denselben Referenzziffern (oder Namen) wie die Elemente jeder anderen Figur hierin in jeder Weise operieren oder funktionieren können, die ähnlich wie die beschriebene ist, aber nicht darauf beschränkt sind.
  • 1 zeigt Merkmale eines Systems 100 nach einer Ausführungsform zum Timen des Sperrens von Daten basierend auf einem verzögerten Taktsignal. System 100 ist ein Beispiel einer Ausführungsform, in der die integrierte Schaltungsanordnung bedienbar ist, eine Zeitverzögerung auf ein erstes Taktsignal anzuwenden, um ein zweites Taktsignal zu erzeugen, wobei die Verzögerung basierend auf einem Zyklus, der dem des ersten Taktsignals entspricht, und einem Modell eines Taktverteilungspfads, das verwendet wird, um das zweite Taktsignal zu kommunizieren, bestimmt wird.
  • Wie in 1 dargestellt, umfasst System 100 einen integrierten Schaltungschip (IC-Chip) 102 und eine Source 104, die damit gekoppelt ist. Source 104 stellt eine aus einer Vielzahl von Schaltungsvorrichtungen dar, die ein Datensignal und ein Taktsignal mit IC-Chip 102 kommunizieren. Beispielsweise kann Source 104 ein anderer IC-Chip einer gepackten Vorrichtung sein, die auch IC-Chip 102 umfasst. Alternativ kann eine gepackte Vorrichtung, die IC-Chip 102 umfasst, mit einer anderen gepackten Vorrichtung gekoppelt sein, die Source 104 umfasst. In der beispielhaften Ausführungsform, die dargestellt ist, umfasst eine Hardwareschnittstelle des IC-Chips 102 leitfähige Kontakte 106, 108 - z. B. Mikrobumps - zum Kommunizieren von (jeweils) einem Datensignal 110 und einem Taktsignal 112 mit Source 104. In einigen Ausführungsformen lässt das System 100 Source 104 aus und umfasst beispielsweise nur IC-Chip 102.
  • Sperrschaltungsanordnung 120 von IC-Chip 102 kann gekoppelt sein, Datensignal 110 zu empfangen. Daten des Datensignals 110 sollen über die Sperrschaltungsanordnung 120 an eine Schaltungsressource von IC-Chip 102 bereitgestellt werden, wie etwa die dargestellte illustrative Datensenke 130. Die Datensenke 130 kann einen Bus, einen Prozessor, einen Speicher, einen Controllerhub und/oder eine von verschiedenen anderen Schaltungskomponenten umfassen, die bedienbar sind, einige oder alle Daten des Datensignals 110 zu speichern, kommunizieren oder anderweitig zu verarbeiten. Einige Ausführungsformen sind nicht auf eine bestimmte Funktionalität beschränkt, die die Datensenke 130 mit solchen Daten bereitstellen soll.
  • Zum Erleichtern der Operation von mindestens einer synchronen Domäne 190 des IC-Chips 102 kann die Sperrschaltungsanordnung 120 ein Sperren der Daten auf die Datensenke 130 timen. Ein Taktsignal 114, das an der Sperrschaltungsanordnung 120 angelegt ist, steuert dieses Sperren, wobei Taktsignal 114 basierend auf Taktsignal 112 erzeugt ist. Beispielsweise kann IC-Chip 102 ferner eine Schaltungsanordnung umfassen (wie etwa die dargestellte illustrative programmierbare Verzögerungsleitung 144), die gekoppelt ist, um Taktsignal 112 von Source 104 zu empfangen - wobei z. B. Taktsignal 112 über Empfängerschaltungsanordnungen wie etwa den dargestellten illustrativen Verstärker 142 kommuniziert wird.
  • Erzeugung von Taktsignal 114 basierend auf Taktsignal 112 kann eine Verzögerungsleitung 144 umfassen, die eine Verzögerung auf das Taktsignal 112 anwendet. Die Verzögerung kann angewendet werden, um mindestens einen Zeitraum abzudecken, der für die Signalkommunikation über eine oder mehrere Zwischenverbindungen und/oder andere Schaltungsstrukturen benötigt wird, die zwischen der Verzögerungsleitung 144 und der Sperrschaltungsanordnung 120 gekoppelt sind. Beispielsweise kann die Sperrschaltungsanordnung 120 Taktsignal 114 über einen Signalpfad empfangen, der einen Taktsignalverteilerpfad 148 umfasst. Der Taktsignalverteilerpfad 148 kann ein Pfad eines Taktsignalverteilungsnetzwerks sein - wobei z. B. mehrere Pfade des Netzwerks jeweils eine jeweilige Version von Taktsignal 114 mit einer entsprechenden Sperrschaltung kommunizieren können. In einer solchen Ausführungsform ist die Verzögerungsleitung 144 programmiert oder anderweitig gesteuert, eine Taktsignalverzögerung bereitzustellen, die mindestens einen Zeitraum abdeckt, der für die Kommunikation entlang des Taktsignalverteilerpfads 148 benötigt ist. Die Verzögerung, die durch die Verzögerungsleitung 144 auf das Taktsignal 112 angewendet wird, kann ferner auf einem Zeitraum für ein bestimmtes skalares Vielfaches von einem Zyklus von Taktsignal 112 basieren. Ein solches skalares Vielfaches kann positiv oder negativ sein. Das skalare Vielfache kann beispielsweise zwischen null (0) und eins (1) liegen. In einigen Ausführungsformen ist das skalare Vielfache eines aus einem Viertel, einer Hälfte und drei Vierteln (wobei z. B. das skalare Vielfache eines aus einem Viertel oder drei Vierteln ist). In anderen Ausführungsformen ist das skalare Vielfache mehr als eins (1) - wobei z. B. das skalare Vielfache einem ganzzahligen Vielfachen eines Viertels eines Zyklus entspricht.
  • In der dargestellten beispielhaften Ausführungsform basiert die Anwendung einer Verzögerung auf Taktsignal 112 auf einem Steuersignal 154, das die Steuerschaltungsanordnung 150 von IC-Chip 102 an die Verzögerungsleitung 144 bereitstellt. Die Erzeugung des Steuersignals 154 durch die Steuerungsschaltungsanordnung 150 basiert auf einer Bewertung einer Kommunikationsverzögerung durch eine Schaltung, die den Taktsignalverteilerpfad 148 modelliert. Beispielsweise kann IC-Chip 102 ferner eine Bewerterschaltung 170 und eine Bewerterschaltung 180 umfassen, die jeweils mit Steuerungsschaltungsanordnung 150 gekoppelt sind, und jeweils ein zyklisches Signal empfangen sollen (wie etwa das dargestellte illustrative Signal 162), das eine Frequenz und eine Phase aufweist, die denen des Taktsignals 112 entsprechen. In der dargestellten beispielhaften Ausführungsform ist das zyklische Signal 162 durch Schaltungsanordnung 160 bereitgestellt, die eine Phasenregelschleifenschaltung umfasst. Die Phasenregelschleifenschaltung kann gekoppelt sein, Empfangen eines Systemtaktsignals (nicht dargestellt), das Source 104 ebenfalls verwendet, um Taktsignal 112 zu erzeugen. In einer anderen Ausführungsform ist das zyklische Signal 162 Taktsignal 112 selbst - wobei z. B. IC-Chip 102 Schaltungsanordnung 160 weglässt.
  • Basierend auf einem Zyklus eines zyklischen Signals 162 (das einem Zyklus von Taktsignal 112 entspricht) erzeugt die Bewerterschaltung 170 ein Signal 172, das eine Anzeige einer Verzögerung umfasst, die dem Zyklus entspricht - z. B. die gleich wie eine Dauer des Zyklus ist. In einigen Ausführungsformen umfasst Bewerterschaltung 170 eine Verzögerungsregelschleife (DLL), die eine Zeitdauer für einen solchen Zyklus umfasst. Die Bewerterschaltung 180 stellt der Steuerungsschaltungsanordnung 150 ein Signal 184 bereit, das basierend auf dem zyklischen Signal 162 erzeugt wird. Die Bewerterschaltung 180 erkennt eine Zeitdauer, die erforderlich ist, um das zyklische Signal 162 durch einen Pfad zu kommunizieren, der ein Modell 182 des Taktsignalverteilerpfads 148 umfasst. Der Pfad kann ferner andere Schaltungsanordnungen modellieren, die auch verwendet werden, das verzögerte Taktsignal zu kommunizieren. In einer solchen Ausführungsform entspricht eine Zeit, die für Signalkommunikation über einen Pfad benötigt wird, einer Zeit, die für Signalkommunikation über eine Kombination der anderen Schaltungsanordnungen und des Taktsignalverteilerpfads benötigt wird, der damit verbunden ist. Basierend auf dieser Erkennung der Zeitdauer, die benötigt ist, das zyklische Signal 162 zu kommunizieren, kommuniziert die Bewerterschaltung 180 über das Signal 184 eine zweite Anzeige einer anderen Verzögerung, um der Zeitdauer zu entsprechen. Dementsprechend können Signale 172, 184 für die Steuerungsschaltungsanordnung 150 jeweils eine Verzögerung basierend auf einem Zyklus anzeigen, der dem von Taktsignal 112 entspricht, und eine andere Verzögerung, die auf einer Kommunikation durch einen Pfad basiert, der dem Taktsignalverteilerpfad 148 entspricht.
  • Die Steuerungsschaltungsanordnung 150 kann einen umdefinierten Zustand des IC-Chips 102 (wie etwa der dargestellten illustrativen Referenzinformation 152) umfassen oder anderweitig Zugriff darauf haben, was die Erzeugung von Steuersignal 154 basierend auf Signalen 172, 184 erlaubt. IC-Chip 102 kann - z. B. durch einen Hersteller oder einen anderen Agenten - mit Referenzinformationen 152 initialisiert, vorprogrammiert oder anderweitig vorkonfiguriert sein, die ein bestimmtes skalares Vielfaches eines Zyklus vorgibt oder anderweitig anzeigt, um das das Taktsignal 112 verzögert werden soll, um ein effektives Sperren durch die Sperrschaltungsanordnung 120 zu ermöglichen. Verzögern des Taktsignals 112 um mindestens einen Bruchteil eines Zyklus kann beispielsweise das Risiko des Abtastens des Datensignals 110 am oder in der Nähe des Zeitpunkts zwischen zwei aufeinanderfolgenden Datenbytes verringern. Ein solcher Bruchteil kann beispielsweise eines aus einem Viertel, einer Hälfte, oder drei Vierteln sein - wobei z. B. der Bruchteil eines aus einem Viertel oder drei Vierteln ist.
  • In einem illustrativen Szenario umfasst Signal 172 eine Kennung CodeCycle einer Zeitdauer für einen Zyklus des Taktsignals 112 oder zeigt diese anderweitig an - wobei z. B. Signal 184 eine Kennung CodeFwdClk einer Zeitdauer für Kommunikation über den Pfad, der Modell 182 umfasst, umfasst oder anderweitig anzeigt. In einer solchen Ausführungsform kann die Steuerungsschaltungsanordnung 150 ein Lookup oder eine andere Verarbeitung durchführen, um basierend auf CodeCycle und CodeFwdClk eine Kennung DelayCode einer gesamten Verzögerung zu bestimmen, die durch die Verzögerungsleitung 144 auf Taktsignal 112 angewendet werden soll. Beispielsweise kann DelayCode mit einer Summe variieren, die auf CodeCycle und CodeFwdClk basiert - z. B. nach den folgenden: DelayCode CodeFwdClk + β 0 [ CodeCycle ] ,
    Figure DE112019002560T5_0001
    wobei β0 ein definierter Multiplikatorfaktor für ein bestimmtes skalares Vielfaches eines Taktzyklus, ein bestimmtes Vielfaches Taktzyklen oder dergleichen ist. Der Faktor β0 kann beispielsweise einen N-Bit-Wert PICode[N-1:0] umfassen oder anderweitig darauf basieren - z. B. laut dem Folgenden: β 0 = { PICode [ N 1 : 0 ] } / { 2 N } .
    Figure DE112019002560T5_0002
  • Beispielsweise kann, dass PICode[N-1:0] gleich 2N ist, eine Verzögerung anzeigen, die einem ganzen Taktzyklus entspricht. In einigen Ausführungsformen zeigen die Referenzinformationen 152 eine oder mehrere weitere Komponenten der Verzögerung an, die im Steuersignal 154 angezeigt werden sollen. Beispielsweise können eine oder mehrere andere Schaltungskomponenten der Schaltungsanordnung 140 (außer Taktsignalverteilerpfad 148) jeweils eine jeweilige Source weiterer Taktsignalverzögerung sein, die ferner mit der Verzögerungsleitung 144 abgedeckt werden soll. Diese eine oder mehreren weiteren Verzögerungskomponenten können auch in einer Funktion umfasst sein, um die Kennung DelayCode zu bestimmen.
  • DelayCode kann in anderen Ausführungsformen proportional zu jeder von verschiedenen komplexeren Funktionen von CodeFwdClk und CodeCycle sein. Illustrierend und nicht einschränkend kann Faktor β0 selbst basierend auf einer Bewertung eines oder beider von CodeFwdClk und DelayCode variieren. In einer beispielhaften Ausführungsform kann Faktor β0 durch einen ganzzahligen Betrag basierend auf einem Vergleich eines aus CodeFwdClk oder DelayCode mit einem entsprechenden vordefinierten Grenzwert erhöht (oder verringert) werden. Eine solche inkrementelle Anpassung an Faktor β0 kann Taktsignaljitter verringern oder anderweitig robusten Betrieb fördern.
  • Basierend auf den entsprechenden Verzögerungsanzeigen der Signale 172, 184 kann die Steuerungsschaltungsanordnung 150 über Steuersignal 154 (z. B. mit der Kennung DelayCode) eine Verzögerung kommunizieren, die auf das Taktsignal 112 angewendet werden soll. Das entstehende verzögerte Taktsignal 114 kann von der Verzögerungsleitung 144 über einen Pfad an die Sperrschaltungsanordnung 120 kommuniziert werden, der Taktsignalverteilerpfad 148 umfasst - wobei z. B. der Pfad ferner Puffer 146 umfasst. In Antwort auf Taktsignal 114 können Daten von Datensignal 110 durch die Sperrschaltungsanordnung 120 auf die Datensenke 130 gesperrt werden, die damit gekoppelt ist. Zu verschiedenen Zeiten während des Betriebs von System 100 kann die Steuerungsschaltungsanordnung 150 intermittierend das Steuersignal 154 basierend auf einer Zustandsänderung des IC-Chips 102 aktualisieren. Beispielsweise können ein oder beide Signale 172, 184 sich im Lauf der Zeit mit einem sich ändernden Wärmezustand des IC-Chips 102 ändern. Die Steuerungsschaltungsanordnung 150 kann Signale 172, 184 ständig oder - alternativ dazu - auf intermittierender Grundlage überwachen. In einigen Ausführungsformen stellen ein oder mehrere Sensoren (nicht dargestellt), die in dem IC-Chip 102 umfasst oder damit gekoppelt sind, der Steuerungsschaltungsanordnung 150 Sensorinformationen bereit, die eine Temperatur des Systems 100 anzeigen. In einer solchen Ausführungsform kann die Steuerungsschaltungsanordnung 150 Signale 172, 184 in Reaktion auf die Erkennung einer Temperaturänderung am oder nahe dem IC-Chip 102 abtasten und das Steuersignal 154 auf dieser Abtastung basierend aktualisieren.
  • 2 zeigt Merkmale eines Verfahrens 200 zum Bereitstellen eines Taktsignals zum Sperren von Daten nach einer Ausführungsform. Verfahren 200 ist ein Beispiel einer Ausführungsform, in der eine Zeitverzögerung auf ein Taktsignal angewendet wird, wobei die Verzögerung unter Verwendung eines Zyklus, der dem des ersten Taktsignals entspricht, und eines Modells eines Taktverteilungspfads, das verwendet wird, um das entstehende verzögerte Taktsignal zu kommunizieren, bestimmt wird. Verfahren 200 kann beispielsweise mit IC-Chip 102 ausgeführt werden.
  • Wie in 2 dargestellt, umfasst Verfahren 200 (in 210) das Empfangen eines ersten Taktsignals an der ersten Schaltungsanordnung eines IC-Chips. Die erste Schaltungsanordnung umfasst eine programmierbare Verzögerungsleitung oder andere solche Schaltungsanordnungen, die basierend auf einem Steuersignal bedienbar sind, eine Verzögerung auf das erste Taktsignal anzuwenden. Beispielsweise kann das Empfangen bei 210 umfassen, dass Taktsignal 112 an der programmierbaren Verzögerungsleitung 144 empfangen wird. Verfahren 200 umfasst ferner (in 220) das Erzeugen eines zweiten Taktsignals basierend auf dem ersten Taktsignal. Das Erzeugen in 220 kann umfassen, dass die Verzögerungsleitung 144 eine Verzögerung auf Taktsignal 112 anwendet - z. B. wo die Verzögerung auf mehrfachen Verzögerungskomponenten basiert, die mit Bewertungsschaltungsanordnungen des IC-Chips identifiziert werden.
  • In einer Ausführungsform umfasst Verfahren 200 ferner (in 230) das Empfangen des zweiten Taktsignals an einer zweiten Schaltungsanordnung über einen ersten Signalpfad, der einen Taktsignalverteilerpfad umfasst. Beispielsweise können das zweite Taktsignal, die zweite Schaltungsanordnung und der Taktsignalverteilerpfad funktional (jeweils) dem Taktsignal 114, der Sperrschaltungsanordnung 120 und dem Verteilungspfad 148 entsprechen. In einer solchen Ausführungsform kann der erste Signalpfad eine oder mehrere andere Komponenten der Schaltungsanordnung 140 umfassen (d. h. neben dem Verteilungspfad 148). Das zweite Taktsignal kann ferner unterschiedlich an eine oder mehrere andere Sperrschaltungen des IC-Chips kommuniziert werden - z. B. wo jede solche Kommunikation des zweiten Taktsignals über einen anderen jeweiligen Taktsignalverteilerpfad eines Taktsignalverteilungsnetzwerks erfolgt. Verfahren 200 kann ferner (in 240) das Sperren von Daten eines Datensignals mit der zweiten Schaltungsanordnung als Reaktion auf das zweite Taktsignal umfassen. Beispielsweise kann das Sperren in 240 einen Teil des Datensignals 110 an die Senke 130 kommunizieren (wie etwa einen Prozessorkern, der in der zweiten Schaltungsanordnung enthalten oder damit gekoppelt ist).
  • Prozesse von Verfahren 200 können in 220 Informationen zum Bestimmen einer Taktverzögerung, die angewendet wird, um das zweite Taktsignal zu erzeugen, kommunizieren. Beispielsweise kann Verfahren 200 ferner (in 250) das Erzeugen eines Signals S1 mit einer dritten Schaltungsanordnung umfassen, die ein Modell des ersten Signalpfads umfasst - wobei z. B. Signal S1 und die dritte Schaltungsanordnung funktional (jeweils) Signal 184 und Bewerterschaltung 180 entsprechen. Das Signal S1 kann eine erste Anzeige einer ersten Verzögerung umfassen, die dem Modell entspricht. Beispielsweise kann die erste Verzögerung (z. B. CodeFwdClk) gleich einer Zeit sein, die erforderlich ist, ein Signal über das Modell zu kommunizieren, oder anderweitig darauf basieren.
  • Verfahren 200 kann ferner (in 260) das Erzeugen eines Signals S2 umfassen, das eine zweite Anzeige einer zweiten Verzögerung umfasst, basierend auf einem Zyklus eines zyklischen Signals. Das Erzeugen von Signal S2 in 260 kann mit Verzögerungsregelschleifenschaltungsanordnungen wie etwa der von Bewerterschaltung 170 erfolgen - wobei z. B. CodeCycle die zweite Verzögerung darstellt. Verfahren 200 umfasst ferner (in 270) das Bereitstellen eines Steuersignals an die erste Schaltungsanordnung, wobei das Erzeugen des zweiten Taktsignals in 220 umfasst, dass die erste Schaltungsanordnung eine dritte Verzögerung auf das erste Taktsignal basierend auf dem Steuersignal anwendet. Das Steuersignal kann mit einer dritten Schaltungsanordnung des IC-Chips basierend auf Signalen S1, S2 erzeugt werden - wobei z. B. das Steuersignal und die dritte Schaltungsanordnung (jeweils) Steuersignal 154 und Steuerungsschaltungsanordnung 150 sind. Beispielsweise kann die dritte Verzögerung proportional zu einer Summe sein, die basierend auf einem ersten Wert und einem zweiten Wert bestimmt wird, wobei der erste Wert die erste Verzögerung darstellt, die durch Signal S1 angezeigt wird, und wobei der zweite Wert eine Zeit für ein bestimmtes skalares Vielfaches eines Zyklus darstellt, der durch Signal S2 angezeigt wird. Das skalare Vielfache kann basierend auf einem oder mehreren Faktoren berechnet werden, einschließlich beispielsweise der ersten Verzögerung (angezeigt durch Signal S1), einem erlaubten Grenzwert oder Bereich einer programmierbaren Verzögerungsleitung, Feedbacksignalisierung von Taktüberwachungs-/Schulungslogik usw. In verschiedenen Ausführungsformen ist das skalare Vielfache positiv oder negativ. In einigen Ausführungsformen ist ein solches skalares Vielfaches eines aus einem Viertel, einer Hälfte oder drei Vierteln. (z. B. eines aus einem Viertel oder drei Vierteln).
  • In einigen Ausführungsformen umfasst Verfahren 200 ferner das intermittierende Aktualisieren des Steuersignals (und damit das Aktualisieren der Verzögerung, die auf das erste Taktsignal angewendet werden soll) basierend auf einer Änderung eines aus Signal S1 oder Signal S2. Eine solche intermittierende Aktualisierung kann in Reaktion auf das Erkennen eines Temperaturübergangs, eines Spannungsübergangs oder eines anderen geänderten Zustands in einer gepackten Vorrichtung erfolgen, die den IC-Chip umfasst.
  • 3 zeigt Elemente einer Bewerterschaltung 300, die an der Erzeugung eines verzögerten Taktsignals nach einer Ausführungsform teilnehmen sollen. Die Bewerterschaltung 300 ist ein Beispiel für eine Verzögerungsregelschleifenschaltung, die Signalisierung bereitstellt, um eine Zeitdauer für einen Zyklus eines Taktsignals bereitzustellen (wie etwa Taktsignal 112). Beispielsweise kann die Funktionalität von 300 der der Bewerterschaltung 170 entsprechen und/oder eine Ausgabe wie das Signal S2 bereitstellen, die in 260 von Verfahren 200 erzeugt wurde.
  • Wie in 3 gezeigt ist, umfasst die Bewerterschaltung 300 eine programmierbare Verzögerungsleitung 310 und einen Verstärker 312 zum Empfangen jeweiliger zyklischer Signale Clk1, Clk2 - wobei z. B. Clk1 ein zyklisches Signal wie Signal 162 umfasst (oder anderweitig darauf basiert), und wobei Clk2 eine Version des zyklischen Signals ist, das im Vergleich mit Clk1 um eine ganze Zahl von Zyklen verzögert wurde. Beispielsweise kann die Bewerterschaltung 300 eine Schaltungsanordnung (nicht dargestellt) umfassen oder damit gekoppelt sein, die Clk1 und Clk2 basierend auf Signal 162 oder einem anderen solchen zyklischen Signal erzeugt.
  • Ein Phasendetektor 320 der Bewerterschaltung 300 kann gekoppelt sein, um jeweilige Ausgaben von Verzögerungsleitung 310 und einem Verstärker 312 zu empfangen - wobei z. B. Verzögerungsleitung 310 eine Version von Clk1 bereitstellt, die basierend auf einer Feedbackversion eines Signals 330 verzögert wurde. Phasendetektor 320 stellt eine Ausgabe bereit, die eine Differenz zwischen den jeweiligen Phasen von Clk2 und der verzögerten Version von Clk1 bereitstellt. Basierend auf einer solchen Ausgabe von Phasendetektor 320 kann ein Encoder 322 (z. B. eine Finite-State-Machine oder eine andere geeignete Schaltungsanordnung) von Bewerterschaltung 300 ein Lookup oder einen anderen Prozess durchführen, um eine Menge einer Verzögerung zu identifizieren, die über Feedback von Signal 330 an die Verzögerungsleitung 310 kommuniziert werden soll. Beispielsweise kann Encoder 322 eine Verzögerungsmenge identifizieren, die eine aktuelle Differenz zwischen den jeweiligen Phasen von Clk1 und Clk2 verringert. Im Lauf der Zeit kann die Bewerterschaltung 300 sich an eine Verzögerungsmenge „sperren“, die Verzögerungsleitung 310 für eine Nullphasendifferenz (oder annähernd Nullphasendifferenz) zwischen Clk1 und Clk2 anwenden soll. Wenn Bewerterschaltung 300 so gesperrt ist, kann das Signal 330 eine Zeitdauer für einen einzigen Zyklus von Clk1 anzeigen (und entsprechend eine Zeitdauer für einen einzigen Zyklus eines Taktsignals wie Taktsignal 112). Dieser Wert kann durch Signal 330 an eine andere Schaltungsanordnung (nicht dargestellt), die mit Bewerterschaltung 300 gekoppelt ist, kommuniziert werden, wobei die andere Schaltungsanordnung - z. B. Steuerungsschaltungsanordnung 150 - eine Verzögerung bestimmen soll, die auf ein Taktsignal angewendet werden soll.
  • 3 zeigt ferner Elemente einer Bewerterschaltung 350, die ebenfalls an der Erzeugung eines verzögerten Taktsignals nach einer Ausführungsform teilnehmen soll. Die Bewerterschaltung 350 ist ein Beispiel einer Schaltungsanordnung, die ein Modell eines Taktsignalverteilerpfads umfasst, wobei die Schaltungsanordnung Signalisierung bereitstellt, um eine Zeit anzuzeigen, die für die Kommunikation über den Taktsignalverteilerpfad erforderlich ist. Beispielsweise kann die Funktionalität von 350 der der Bewerterschaltung 180 entsprechen und/oder eine Ausgabe wie das Signal S1 bereitstellen, die in 250 von Verfahren 200 erzeugt wurde.
  • Wie in 3 dargestellt, umfasst die Bewerterschaltung 350 einen Differenzverstärker 360 zum Empfangen zyklischer Signale Clk1, Clklb - wobei z. B. Clk1 dasselbe Clk1 ist, das an die Bewerterschaltung 350 bereitgestellt wird, und wobei Clklb eine logisch invertierte Version von Clk1 ist. Der Differenzverstärker 360 stellt an eine programmierbare Verzögerungsleitung 362 der Bewerterschaltung 350 ein Signal bereit, das eine Differenz zwischen Clk1 und Clklb darstellt. Beispielsweise kann die Bewerterschaltung 350 eine Schaltungsanordnung (nicht dargestellt) umfassen oder damit gekoppelt sein, die Clk1 und Clklb basierend auf demselben zyklischen Signal erzeugt.
  • Die Verzögerungsleitung 362 wendet auf das Ausgabesignal von Differenzverstärker 360 eine Verzögerung an, die auf dem Feedback eines Signals 370 basiert. Dieses verzögerte Ausgabesignal wird dann durch die Verzögerungsleitung 362 an ein Modell 364 eines Taktsignalverteilerpfads (nicht dargestellt) wie etwa Taktsignalverteilerpfad 148 bereitgestellt. Nach der Kommunikation durch Modell 364 wird die verzögerte Ausgabe von der Verzögerungsleitung 362 an einen Phasendetektor 366 der Bewerterschaltung 350 bereitgestellt. Phasendetektor 366 kann ferner gekoppelt sein, jeweils ein Signal Clk2 zu empfangen, das (beispielsweise) dasselbe Clk2 ist, das der Bewerterschaltung 350 bereitgestellt wird. Phasendetektor 366 stellt eine Ausgabe bereit, die eine Differenz zwischen den jeweiligen Phasen von Clk2 und dem verzögerten Ausgabesignal, das über Modell 364 empfangen wird, bereitstellt. Basierend auf einer solchen Ausgabe von Phasendetektor 366 kann ein Encoder 368 (z. B. eine Finite-State-Machine oder eine andere geeignete Schaltungsanordnung) von Bewerterschaltung 350 eine Verarbeitung durchführen, um eine Menge einer Verzögerung zu identifizieren, die über ein Feedback von Signal 370 an Verzögerungsleitung 362 kommuniziert werden soll. Beispielsweise kann Encoder 368 eine Verzögerungsmenge identifizieren, die eine aktuelle Phasendifferenz, die durch Phasendetektor 366 angezeigt wird, verringert. Im Lauf der Zeit sperrt die Bewerterschaltung 350 sich an einer Verzögerungsmenge, die die Verzögerungsleitung 362 anwenden soll, sodass Phasendetektor 366 eine Nullphasendifferenz (oder annähernd Nullphasendifferenz) anzeigt. Wenn die Bewerterschaltung 350 so gesperrt ist, zeigt Signal 370 eine Zeitdauer an, die für die Signalkommunikation durch Modell 364 benötigt wird (und ähnlich eine Zeitdauer, die für Signalkommunikation durch einen entsprechenden Taktsignalverteilerpfad benötigt wird, den Modell 364 darstellt). Dieser Wert kann durch Signal 370 zur Verwendung durch eine andere Schaltungsanordnung (nicht dargestellt) kommuniziert werden - z. B. durch die Steuerungsschaltungsanordnung 150 - die mit der Bewerterschaltung 350 gekoppelt ist.
  • 4 zeigt die integrierte Schaltungsanordnung 400 zum Bereitstellen eines Takts für verschiedene Datensignale nach einer Ausführungsform. Die integrierte Schaltungsanordnung 400 ist ein Beispiel einer Ausführungsform, bei der die integrierte Schaltungsanordnung bedienbar ist, unterschiedlich mehrere Taktsignale jeweils durch Anwenden einer jeweiligen Verzögerung auf ein erstes Taktsignal zu erzeugen, wobei die jeweiligen Verzögerungen jeweils basierend auf einem Zyklus, der dem des ersten Taktsignals entspricht, und einem jeweiligen Modell eines Taktverteilungspfads bestimmt werden. Die integrierte Schaltungsanordnung 400 kann beispielsweise einige oder alle der Merkmale von IC-Chip 102 umfassen. Wie in 4 dargestellt, kann die integrierte Schaltungsanordnung 400 Schaltungsressourcen (wie etwa die illustrativen dargestellten Schaltungsressourcen 440a, ..., 440n) umfassen, die jeweils gekoppelt sind, ein Taktsignal 430 zu empfangen, wobei die Schaltungsressourcen 440a, ..., 440n unterschiedlich jeweilige Daten basierend auf Taktsignal 430 sperren sollen.
  • In der dargestellten beispielhaften Ausführungsform umfasst die Schaltungsressource 440a eine programmierbare Verzögerungsleitung 442a und eine Sperrschaltung 446a, die gekoppelt sind, (jeweils) Taktsignal 430 und Datensignal 450a zu empfangen. In Reaktion auf ein verzögertes Taktsignal 443a, das basierend auf Taktsignal 430 erzeugt ist, kann die Sperrschaltung 446a Daten von Datensignal 450a an eine Datensenke 448a sperren. Beispielsweise kann eine Steuerschaltung 452a der Schaltungsressource 440a die Verzögerungsleitung 442a mit einem Steuersignal 441a steuern, das eine Verzögerung anzeigt, die auf das Taktsignal 430 angewendet werden soll. Sperrschaltung 446a, Verzögerungsleitung 442a und Steuerschaltung 452a können funktional jeweils der Sperrschaltungsanordnung 120, Verzögerungsleitung 144 und Steuerungsschaltungsanordnung 150 entsprechen.
  • Das Erzeugen von Steuersignal 441a durch Steuerschaltung 452a kann auf Signalen 412, 422 basieren, die beispielsweise auch durch die Schaltungsressource 440n verwendet werden. In der dargestellten beispielhaften Ausführungsform umfasst integrierte Schaltungsanordnung 400 ferner Bewerterschaltungen 410, 420 die jeweils gekoppelt sind, ein zyklisches Signal 402 zu empfangen - wie etwa das zyklische Signal 162 - das dieselbe Frequenz aufweist wie die von Taktsignal 430 (und in einigen Ausführungsformen dieselbe Phase aufweist wie die von Taktsignal 430). Basierend auf dem zyklischen Signal 402 kann die Bewerterschaltung 410 mit Signal 412 eine Zeitdauer für einen Zyklus des zyklischen Signals 402 anzeigen (was einer Zeitdauer für einen Zyklus von Taktsignal 430 entspricht). In einer solchen Ausführungsform kann die Bewerterschaltung 420 mit Signal 422 eine Zeitdauer anzeigen, die für die Signalkommunikation durch ein Modell 424 eines Taktsignalverteilerpfads 444a benötigt wird, durch den Taktsignal 443a an Sperrschaltung 446a kommuniziert wird. Beispielsweise können Bewerterschaltung 410 und Bewerterschaltung 420 funktional jeweils Bewerterschaltung 170 und Bewerterschaltung 170 (oder jeweils Bewerterschaltung 300 und Bewerterschaltung 350) entsprechen.
  • In einer solchen Ausführungsform kann Schaltungsressource 440n Funktionalität bereitstellen (ähnlich wie die von Schaltungsressource 440a), um Daten eines anderen Datensignals basierend auf dem Anwenden einer anderen Verzögerung auf Taktsignal 430 zu sperren. Beispielsweise kann Schaltungsressource 440n eine programmierbare Verzögerungsleitung 442n, eine Sperrschaltung 446n, einen Taktsignalverteilerpfad 444a und eine Datensenke 448n umfassen, die (jeweils) funktional Verzögerungsleitung 442a, Sperrschaltung 446a, Taktsignalverteilerpfad 444a und Datensenke 448a entsprechen. Sperrschaltung 446n ist bedienbar, ein Datensignal 450n zu empfangen und Daten davon an die Datensenke 448n zu sperren, wobei das Sperren in Reaktion auf ein Taktsignal 443n erfolgt, das von der Verzögerungsleitung 442n über den Taktsignalverteilerpfad 444n empfangen wird. Die Verzögerungsleitung 442n kann Taktsignal 443n durch Anwenden einer Verzögerung auf Taktsignal 430 erzeugen - wobei z. B. verschiedene jeweilige Verzögerungen durch Verzögerungsleitungen 442a, 442n unterschiedlich auf Taktsignal 430 angewendet werden, um jeweilige Taktsignale 443a, 443n zu erzeugen. Ein Steuersignal 441n von Steuerschaltung 452n zeigt der Verzögerungsleitung 442n die jeweilige Verzögerung an, die auf Taktsignal 430 angewendet werden soll. Ähnlich wie Steuersignal 441a kann die Erzeugung von Steuersignal 441n durch Steuerschaltung 452n auf den Signalen 412, 422 basieren.
  • In einigen Ausführungsformen kommuniziert Signal 412 eine Kennung CC einer Zeitdauer für einen Zyklus von Taktsignal 402 - wobei z. B. Signal 422 eine Kennung CFC einer Zeitdauer zur Kommunikation über den Pfad kommuniziert, der Modell 424 umfasst. Die Kennungen CC und CFC können beispielsweise (jeweils) CodeCycle und CodeFwdClk entsprechen. In einer solchen Ausführungsform kann die Steuerungsschaltungsanordnung 452a basierend auf der Kennung CC und der Kennung CFC eine Kennung DC A der Gesamtverzögerung, die durch Verzögerungsleitung 442a auf Taktsignal 430 angewendet werden soll, um Taktsignal 443a zu erzeugen, bestimmen. Ähnlich kann die Steuerungsschaltungsanordnung 452n basierend auf der Kennung CC und der Kennung CFC eine Kennung DC N einer Gesamtverzögerung, die durch Verzögerungsleitung 442n auf Taktsignal 430 angewendet werden soll, um Taktsignal 443n zu erzeugen, bestimmen. Beispielsweise können die Kennungen DC_A und DC_N jeweils mit einer jeweiligen Summe variieren, die auf der Kennung CC und der Kennung CFC basiert - z. B. nach Folgendem: DC _ A CFC + β A [ CC ] ,
    Figure DE112019002560T5_0003
    und DC _ N CFC + β N [ CC ] ,
    Figure DE112019002560T5_0004
    wobei βA und βN unterschiedliche jeweilige skalare Vielfache eines Taktzyklus sind, der der Kennung CC entspricht.
  • 5 zeigt Elemente einer Bewerterschaltung 500, die an der Erzeugung eines verzögerten Taktsignals nach einer Ausführungsform teilnehmen soll. Die Bewerterschaltung 500 ist bedienbar, eine Verzögerungsregelschleifenschaltungsfunktion wie etwa die von Bewerterschaltung 170 bereitzustellen und/oder kann eine Ausgabe wie etwa das Signal S2 bereitstellen, das in 260 von Verfahren 200 erzeugt wird.
  • Wie in 5 gezeigt, ist Bewerterschaltung 500 gekoppelt, ein zyklisches Signal 504 (z. B. Signal 162) und ein Steuersignal 502 zu empfangen, das selektiv eine Zeitverzögerungserkennungsfunktion von Bewerterschaltung 500 ermöglicht. Mit einem AND-Gate 506 und einem Zähler 508 werden ein Zählsignal 510 und ein Signal 528 unterschiedlich basierend auf dem zyklischen Signal 504 und dem Steuersignal 502 erzeugt. Zählsignal 510 kann einen Zählerwert Ctr darstellen, der Zyklen durch eine Sequenz wiederholt, die zwischen einem Mindestzählwert und einem Maximalzählwert zählt. Basierend auf Signal 510 und Signal 528 geben Logikgates 512, 514 jeweilige Signale 520, 522 aus - wobei z. B. Signal 520 basierend darauf, dass Ctr gleich eins („1“) ist, auf ein logisches hoch eingestellt ist, und Signal 522 basierend darauf, dass Ctr gleich zwei („2“) ist, auf hoch eingestellt ist. In einer solchen Ausführungsform können andere Logikgates 516, 518 auch jeweilige Signale 524, 526 basierend auf Signal 510 und Signal 528 ausgeben.
  • Eine programmierbare Verzögerungsleitung 530 und ein Phasendetektor 532 können - basierend auf Signalen 520, 522 und 524 - operieren, eine Zeitdifferenz zwischen jeweiligen Logikzustandsübergängen durch Signale 520, 522 zu detektieren. Eine solche Zeitdifferenz kann einer Zeit für eine ganze Zahl von Zyklen des zyklischen Signals 504 entsprechen (wobei die ganze Zahl gleich oder größer 1 ist). Beispielsweise kann Verzögerungsleitung 530 eine Verzögerung auf Signal 520 anwenden, wobei die Verzögerung auf einem Feedback eines Signals 552 basiert, das ebenfalls von Bewerterschaltung 500 ausgegeben wird. Signal 522 und die verzögerte Version von Signal 520 steuern jeweils ein jeweiliges Sperren von Signal 524 an eine entsprechende Eingabe von Phasendetektor 532. Ein Signal 534, das durch Phasendetektor 532 ausgegeben wird, zeigt eine Differenz zwischen dem Sperren an, das auf Signal 522 basiert, und dem anderen Sperren, das auf der verzögerten Version von Signal 520 basiert. In einer solchen Ausführungsform wird Signal 534 an einen Encoder 550 kommuniziert - z. B. wo eine solche Kommunikation über Sperrschaltungen 540, 542 erfolgt. Die Signale 526, 528 können unterschiedlich die Sperrschaltungen 540, 542 steuern, um ein Risiko des Sperrens einer falschen Oberschwingung einer Zielverzögerung durch die Verzögerungsleitung zu verringern.
  • Basierend auf Signal 534 kann der Encoder 550 Operationen ausführen, die eine Menge einer Verzögerung identifizieren, die über das Feedback von Signal 552 an die Verzögerungsleitung 530 kommuniziert werden soll. Beispielsweise kann Encoder 550 eine Verzögerungsmenge identifizieren, die eine aktuelle Zeitdifferenz zwischen den jeweiligen Zustandsübergängen der Signale 520, 522 verringert. Im Lauf der Zeit kann die Bewerterschaltung 500 sich an eine Verzögerungsmenge sperren, die Verzögerungsleitung 530 für eine Nulldifferenz (oder annähernd Nulldifferenz) zwischen den Signalen 520, 522 anwenden soll. Wenn Bewerterschaltung 500 so gesperrt ist, kann das Signal 552 eine Zeitdauer für einen einzigen Zyklus des zyklischen Signals 504 anzeigen (und entsprechend eine Zeitdauer für einen einzigen Zyklus eines Taktsignals wie Taktsignal 112). Dieser Wert kann durch Signal 552 an eine andere Schaltungsanordnung (nicht dargestellt) kommuniziert werden, die mit Bewerterschaltung 500 gekoppelt ist, wobei die andere Schaltungsanordnung - z. B. Steuerungsschaltungsanordnung 150 - eine Verzögerung bestimmen soll, die auf ein Taktsignal angewendet werden soll.
  • 6 zeigt Elemente einer Bewerterschaltung 600, die an der Erzeugung eines verzögerten Taktsignals nach einer Ausführungsform teilnehmen soll. Die Bewerterschaltung 600 ist bedienbar, eine Verzögerungsregelschleifenschaltungsfunktion wie etwa die von Bewerterschaltung 180 bereitzustellen und/oder kann eine Ausgabe wie etwa das Signal S1 bereitstellen, das in 250 von Verfahren 200 erzeugt wird.
  • Wie in 6 gezeigt, ist Bewerterschaltung 600 gekoppelt, ein zyklisches Signal 604 (z. B. Signal 162) und ein Steuersignal 602 zu empfangen, das selektiv eine Zeitverzögerungserkennungsfunktion von Bewerterschaltung 600 ermöglicht. Mit einem Zähler 608 und einer anderen Gatelogik werden ein Zählsignal 610 und ein Signal 628 unterschiedlich basierend auf dem zyklischen Signal 604 und dem Steuersignal 602 erzeugt. Zählsignal 610 stellt einen Zählerwert Ctr dar, der Zyklen durch eine Sequenz wiederholt, die zwischen einem Mindestzählwert und einem Maximalzählwert zählt. Basierend auf Signal 610 und Signal 628 geben Logikgates unterschiedlich jeweilige Signale 620, 622, 624, 626, 634 aus - wobei z. B. Signal 620 basierend darauf, dass Ctr gleich eins („1“) ist, auf ein logisches hoch eingestellt ist, und Signal 634 basierend darauf, dass Ctr gleich zwei („2“) ist, auf hoch eingestellt ist. In einer solchen Ausführungsform stellt Signal 620 den logisch gegenteiligen Zustand von dem von Signal 622 dar, und eine Zeitdifferenz zwischen dem jeweiligen Logikzustandsübergang der Signale 620, 634 kann einer ganzen Zahl von Zyklen des zyklischen Signals 604 entsprechen. In einigen Ausführungsformen umfasst die Bewerterschaltung 600 ferner die Schaltungsanordnung 612 zum unterschiedlichen Stabilisieren, Filtern oder anderweitigen Konditionieren einiger oder aller der Signale 620, 622, 634.
  • Ein Differenzverstärker 630 ist gekoppelt, um ein Signal 632 zu erzeugen, das eine Differenz zwischen den Signalen 620, 622 darstellt. Eine Verzögerungsleitung 631 kann eine Verzögerung auf Signal 632 anwenden, wobei die Verzögerung auf einem Feedback eines Signals 672 basiert, das ebenfalls von Bewerterschaltung 600 ausgegeben wird. Ein Steuersignal 636 ermöglicht selektiv die Kommunikation eines Signals 638 (basierend auf der verzögerten Version von Signal 632) durch ein Modell 640 eines Taktsignalverteilerpfads. Nach Kommunikation durch Modell 640 wird Signal 638 verwendet - zusammen mit Signalen 634 und 624 - um ein Sperren jeweiliger Eingaben an einen oder mehrere Phasendetektoren wie etwa die dargestellten illustrativen Phasendetektoren 650, 652 bereitzustellen. Um die Erzeugung von Signal 672 basierend auf einem aus einer Verzögerung eines Signalanstiegs oder einer Verzögerung eines Signalabfalls zu ermöglichen, ermöglichen Phasendetektoren 650, 652 und ein Multiplexer 654 eine Auswahl - z. B. durch Steuersignal 636 - zwischen der Verwendung von Signalanstiegsübergängen und Signalabfallübergängen als eine Grundlage zum Erkennen einer Zeitverzögerung. In einigen Ausführungsformen ermöglicht Signal 636 sowohl eine Auswahl einer Art von Signalflanke (ansteigend oder fallend), die die Grundlage zum Erzeugen von Signal 672 ist, und ermöglicht der Bewerterschaltung 600 das Sperren an entweder einen Zyklus oder eine Phase des zyklischen Signals 604.
  • Die Ausgabe von Multiplexer 654 wird an einen Encoder 670 kommuniziert - z. B. wo eine solche Kommunikation über Sperrschaltungen 660, 662 erfolgt, die (jeweils) durch Signale 626, 628 gesteuert werden. Basierend auf der Ausgabe von Multiplexer 654 kann der Encoder 670 Operationen ausführen, die eine Menge einer Verzögerung identifizieren, die über das Feedback von Signal 672 an die Verzögerungsleitung 631 kommuniziert werden soll. Beispielsweise kann Encoder 670 eine Verzögerungsmenge identifizieren, die eine aktuelle Zeitdifferenz zwischen den jeweiligen Zustandsübergängen von Eingaben eines der Phasendetektoren 650, 652 verringert. Wenn das Feedback durch Signal 672 gesperrt wird, zeigt ein Wert von Signal 672 eine Zeitdauer an, die zur Kommunikation über Modell 640 benötigt wird (und entsprechend, eine Zeitdauer für die Kommunikation über einen Taktsignalverteilerpfad, den Modell 640 darstellt). Dieser Wert kann durch Signal 672 an eine andere Schaltungsanordnung (nicht dargestellt) kommuniziert werden, die mit Bewerterschaltung 600 gekoppelt ist, wobei die andere Schaltungsanordnung - z. B. Steuerungsschaltungsanordnung 150 - eine Verzögerung bestimmen soll, die auf ein Taktsignal angewendet werden soll.
  • 7 illustriert eine Rechnervorrichtung 700 nach einer Ausführungsform. Die Rechnervorrichtung 700 umfasst eine Platine 702. Die Platine 702 kann eine Anzahl von Komponenten enthalten, einschließlich, aber nicht beschränkt auf einen Prozessor 704 und mindestens einen Kommunikationschip 706. Der Prozessor 704 ist physisch und elektrisch mit der Platine 702 gekoppelt. In einigen Umsetzungen ist der mindestens eine Kommunikationschip 706 auch physisch und elektrisch mit der Platine 702 gekoppelt. In weiteren Umsetzungen ist der Kommunikationschip 706 Teil des Prozessors 704.
  • Abhängig von ihren Anwendungen kann die Rechnervorrichtung 700 andere Komponenten umfassen, die physisch und elektrisch mit der Platine 702 gekoppelt sein können, aber nicht müssen. Diese anderen Komponenten umfassen, sind aber nicht beschränkt auf flüchtigen Speicher (z. B. DRAM), nichtflüchtigen Speicher (z. B. ROM), Flashspeicher, einen Grafikprozessor, einen digitalen Signalprozessor, einen Kryptoprozessor, ein Chipset, eine Antenne, eine Anzeige, eine Touchscreenanzeige, einen Touchscreencontroller, eine Batterie, einen Audiocodec, einen Videocodec, einen Leistungsverstärker, eine Global-Positioning-System- (GPS) Vorrichtung, einen Kompass, einen Beschleunigungsmesser, ein Gyroskop, einen Lautsprecher, eine Kamera und eine Massespeichervorrichtung (wie etwa eine Festplatte, Compact Disk (CD), Digital Versatile Disk (DVD) und so weiter).
  • Der Kommunikationschip 706 ermöglicht die drahtlose Kommunikation für die Übertragung von Daten an die und von der Rechnervorrichtung 700. Der Begriff „drahtlos“ und seine Ableitungen können verwendet werden, um Schaltungen, Vorrichtungen, Systeme, Verfahren, Techniken, Kommunikationskanäle usw. zu beschreiben, die Daten durch die Verwendung modulierter elektromagnetischer Strahlung durch ein nichtfestes Medium kommunizieren. Der Begriff impliziert nicht, dass assoziierte Vorrichtungen keine Drähte umfassen, wobei dies jedoch in einigen Ausführungsformen der Fall sein kann. Der Kommunikationschip 706 kann jeden aus einer Reihe von Drahtlosstandards oder -protokollen umsetzen, einschließlich, aber nicht beschränkt auf Wi-Fi (IEEE 802.11-Familie), WiMAX (IEEE 802.16-Familie), IEEE 802.20, Long Term Evolution (LTE), Ev-DO, HSPA+, HSDPA+, HSUPA+, EDGE, GSM, GPRS, CDMA, TDMA, DECT, Bluetooth, Ableitungen davon sowie viele andere Drahtlosprotokolle, die als 3G, 4G, 5G, und so weiter bezeichnet werden. Die Rechnervorrichtung 700 kann mehrere Kommunikationschips 706 umfassen. Beispielsweise kann ein erster Kommunikationschip 706 für Drahtloskommunikationen mit kürzerer Reichweite vorgesehen sein, wie etwa Wi-Fi und Bluetooth, und ein zweiter Kommunikationschip 706 kann für Drahtloskommunikationen mit längerer Reichweite vorgesehen sein, wie GPS, EDGE, GPRS, CDMA, WiMAX, LTE, Ev-DO und andere.
  • Der Prozessor 704 der Rechnervorrichtung 700 umfasst ein integriertes Schaltungsdie, das in dem Prozessor 704 verpackt ist. Der Begriff „Prozessor“ kann sich auf alle Vorrichtungen oder Abschnitte einer Vorrichtung beziehen, die elektronische Daten von Registern und/oder Speichern verarbeiten, um diese elektronischen Daten in andere elektronische Daten umzuwandeln, die in Registern und/oder Speichern gespeichert werden können. Der Kommunikationschip 706 umfasst auch ein integriertes Schaltungsdie, das in dem Kommunikationschip 706 verpackt ist.
  • In verschiedenen Umsetzungen kann die Rechnervorrichtung 700 ein Laptop, ein Netbook, ein Notebook, ein Ultrabook, ein Smartphone, ein Tablet, eine Personal Digital Assistant (PDA), ein ultramobiler PC, ein Mobiltelefon, ein Desktopcomputer, ein Server, ein Drucker, ein Scanner, ein Monitor, eine Set-Top Box, eine Unterhaltungssteuereinheit, eine Digitalkamera, ein tragbarer Musikspieler oder ein digitaler Videorecorder sein. In weiteren Umsetzungen kann die Computervorrichtung 700 jede andere elektronische Vorrichtung sein, die Daten verarbeitet.
  • Einige Ausführungsformen können als ein Computerprogrammprodukt oder Software bereitgestellt sein, die ein maschinenlesbares Medium umfasst, auf dem Anweisungen gespeichert sind, die verwendet werden können um ein Computersystem (oder andere elektronische Vorrichtungen) zu programmieren, um einen Prozess nach einer Ausführungsform auszuführen. Ein maschinenlesbares Medium umfasst einen beliebigen Mechanismus zum Speichern über Übertragen von Informationen in einer Form, die durch eine Maschine (z. B. einen Computer) lesbar ist. Beispielsweise umfasst ein maschinenlesbares (z. B. computerlesbares) Medium ein maschinenlesbares (z. B. computerlesbares) Speichermedium (z. B. Festwertspeicher („ROM“), Direktzugriffspeicher („RAM“), magnetische Diskettenspeichermedien, optische Speichermeiden, Flashspeichervorrichtungen usw.), ein maschinenlesbares (z. B. computerlesbares) Übertragungsmedium (elektrisch, optisch, akustisch oder andere Formen von weitergeleiteten Signalen (z. B. Infrarotsignalen, digitalen Signalen usw.)), usw.
  • 8 illustriert eine diagrammatische Darstellung einer Maschine in der beispielhaften Form eines Computersystems 800, in dem ein Satz Anweisungen, um die Maschine zu veranlassen, jede aus einer oder mehreren der hierin beschriebenen Methodologien auszuführen, ausgeführt werden kann. In alternativen Ausführungsformen kann die Maschine mit anderen Maschinen in einem Local Area Network (LAN), einem Intranet, einem Extranet oder dem Internet verbunden (z. B. vernetzt) sein. Die Maschine kann in der Kapazität einer Server- oder Clientmaschine in einer Client-Server-Netzwerkumgebung oder als eine Peer-Maschine in einer Peer-zu-Peer- (oder verteilten) Netzwerkumgebung laufen. Die Maschine kann ein Personal Computer (PC), ein Tablet-PC, eine Set-Top-Box (STB), ein Personal Digital Assistant (PDA), ein Handy, eine Webanwendung, ein Server, ein Netzwerkrouter, ein Switch oder Bridge, oder jede Maschine sein, die in der Lage ist, einen Satz Anweisungen auszuführen (sequenziell oder anderweitig), die Aktionen vorgeben, die durch die Maschine ausgeführt werden sollen. Ferner ist zwar nur eine einzige Maschine illustriert, aber der Begriff „Maschine“ umfasst auch jede Sammlung von Maschinen (z. B. Computern), die einzeln oder gemeinsam einen Satz (oder mehrere Sätze) von Anweisungen ausführen, um eine oder mehrere der hierin beschriebenen Methodologien auszuführen.
  • Das beispielhafte Computersystem 800 umfasst einen Prozessor 802, einen Hauptspeicher 804 (z. B. Direktzugriffspeicher (ROM), Flashspeicher, dynamischen Direktzugriffspeicher (DRAM) wie etwa synchronen DRAM (SDRAM) oder Rambus DRAM (RDRAM) usw.), einen statischen Speicher 806 (z. B. Flashspeicher, statischen Direktzugriffspeicher (SRAM) usw.), und einen sekundären Speicher 818 (z. B. eine Datenspeichervorrichtung), die miteinander über einen Bus 830 kommunizieren.
  • Der Prozessor 802 stellt eine oder mehrere Mehrzweckverarbeitungsvorrichtungen dar, wie etwa einen Mikroprozessor, eine zentrale Prozessoreinheit oder dergleichen. Genauer kann der Prozessor 802 ein Complex-Instruction-Set-Computing(CISC)-Mikroprozessor, ein Reduced-Instruction-Set-Computing(RISC)-Mikroprozessor, ein Very-Long-Instruction-Word(VLIW)-Mikroprozessor, ein Prozessor, der andere Anweisungssätze umsetzt oder Prozessoren, die eine Kombination aus Anweisungssätzen umsetzen, sein. Prozessor 802 kann auch eine oder mehrere Spezialzweckverarbeitungsvorrichtungen sein, wie etwa eine anwendungsspezifische integrierte Schaltung (ASIC), ein im Feld programmierbares Gatearray (FPGA), ein digitaler Signalprozessor (DSP), Netzwerkprozessor oder dergleichen. Prozessor 802 ist konfiguriert, die Verarbeitungslogik 826 zum Durchführen der hierin beschriebenen Operationen auszuführen.
  • Das Computersystem 800 kann ferner eine Netzwerkschnittstellenvorrichtung 808 umfassen. Das Computersystem 800 kann auch eine Videoanzeigeeinheit 810 (z. B. ein Liquid Crystal Display (LCD), eine Leuchtdiodenanzeige (LED) oder eine Kathodenstrahlröhre (CRT)), eine alphanumerische Eingabevorrichtung 812 (z. B. eine Tastatur), eine Cursorsteuervorrichtung 814 (z. B. eine Maus) und eine Signalerzeugungsvorrichtung 816 (z. B. einen Lautsprecher) umfassen.
  • Der sekundäre Speicher 818 kann ein Maschinenzugriffspeichermedium (oder genauer ein computerlesbares Speichermedium) 832, auf dem ein oder mehrere Sätze Anweisungen gespeichert sind (z. B. Software 822), die eine oder mehrere der hierin beschriebenen Methodologien oder Funktionen verkörpern, umfassen. Die Software 822 kann auch vollständig oder zumindest teilweise innerhalb des Hauptspeichers 804 und/oder innerhalb des Prozessors 802 sitzen, wenn diese durch das Computersystem 800 ausgeführt wird, wobei der Hauptspeicher 804 und der Prozessor 802 auch maschinenlesbare Speichermedien darstellen. Die Software 822 kann ferner über ein Netzwerk 820 über die Netzwerkschnittstellenvorrichtung 808 übertragen oder empfangen werden.
  • Während das Maschinenzugriffspeichermedium 832 in einer beispielhaften Ausführungsform als ein einziges Medium dargestellt ist, sollte der Begriff „maschinenlesbares Speichermedium“ so verstanden werden, dass er ein einziges Medium oder mehrere Medien umfasst (z. B. eine zentralisierte oder verteilte Datenbank und/oder assoziierte Caches und Server), die einen oder mehrere Sätze Anweisungen speichern. Der Begriff „maschinenlesbares Speichermedium“ wird als jedes Medium umfassend betrachtet, das in der Lage ist, einen Satz Anweisungen zur Ausführung durch die Maschine zu speichern oder zu codieren, und die die Maschine veranlassen, eine oder mehrere Ausführungsformen auszuführen. Der Begriff „maschinenlesbares Speichermedium“ ist daher zu verstehen als unter anderem Solid-State-Speicher und optische und magnetische Medien umfassend.
  • In einer Ausführungsform umfasst ein Verfahren auf einem integrierten Schaltungschip (IC-Chip) das Empfangen eines ersten Taktsignals an der ersten Schaltungsanordnung, das Erzeugen eines zweiten Taktsignals mit der ersten Schaltungsanordnung basierend auf dem ersten Taktsignal, das Empfangen des zweiten Taktsignals an der zweiten Schaltungsanordnung über einen ersten Signalpfad, der einen Taktsignalverteilerpfad umfasst, und das Sperren von Daten eines Datensignals mit der zweiten Schaltungsanordnung als Reaktion auf das zweite Taktsignal. Das Verfahren umfasst ferner das Erzeugen eines Signals S1 mit einer dritten Schaltungsanordnung, wobei ein zweiter Signalpfad der dritten Schaltungsanordnung ein Modell des ersten Signalpfads umfasst, wobei das Signal S1 eine erste Anzeige einer ersten Verzögerung umfasst, die dem Modell entspricht, das Erzeugen eines Signals S2, das eine zweite Anzeige einer zweiten Verzögerung, die auf einem Zyklus des zyklischen Signals basiert, basierend auf einem zyklischen Signal, und das Bereitstellen des Steuersignals an die erste Schaltungsanordnung, wobei das Erzeugen des zweiten Taktsignals das Anwenden der dritten Verzögerung durch die erste Schaltungsanordnung auf das erste Taktsignal basierend auf dem Steuersignal umfasst.
  • In einer Ausführungsform basiert die dritte Verzögerung auf einer Summe eines ersten Werts und eines zweiten Werts, wobei der erste Wert die erste Verzögerung darstellt und wobei der zweite Wert eine Zeit für ein skalares Vielfaches eines Zyklus des zyklischen Signals darstellt. In einer anderen Ausführungsform ist das skalare Vielfache eines aus einem Viertel oder drei Vierteln. In einer anderen Ausführungsform ist das skalare Vielfache weniger als Null. In einer anderen Ausführungsform basiert das skalare Vielfache auf einer Bewertung einer der ersten Zeitdauer oder der zweiten Zeitdauer. In einer anderen Ausführungsform ist das Datensignal ein erstes Datensignal und das Verfahren umfasst ferner das Empfangen eines zweiten Datensignals an einer vierten Schaltungsanordnung, und an einer fünften Schaltungsanordnung, das Empfangen jedes des ersten Taktsignals, des Signals S1 und des Signals S2, und das Erzeugen eines dritten Taktsignals basierend auf jedem des ersten Taktsignals, des Signals S1 und des Signals S2, wobei das Erzeugen das Anwenden einer vierten Verzögerung außer der dritten Verzögerung auf das erste Taktsignal umfasst, und mit der vierten Schaltungsanordnung, Sperren von Daten des zweiten Datensignals basierend auf dem dritten Datensignal.
  • In einer anderen Ausführungsform basiert die dritte Verzögerung auf einem ersten Parameter, der eine Zeit für ein erstes skalares Vielfaches eines Zyklus des zyklischen Signals vorgibt, wobei die vierte Verzögerung auf einem zweiten Parameter basiert, der eine Zeit für ein zweites skalares Vielfaches eines Zyklus des zyklischen Signals vorgibt, wobei sich das zweite skalare Vielfache von dem ersten skalaren Vielfachen unterscheidet. In einer anderen Ausführungsform umfasst der erste Signalpfad ferner die erste Schaltungsanordnung. In einer anderen Ausführungsform umfasst die erste Schaltungsanordnung eine programmierbare Verzögerungsleitung. In einer anderen Ausführungsform umfasst das Erzeugen des Signals S2 das Erzeugen einer Verzögerungsregelschleifenschaltung. In einer anderen Ausführungsform umfasst das Verfahren ferner das intermittierende Aktualisieren des Steuersignals basierend auf einer Änderung an einem des Signals S1 oder des Signals S2. In einer anderen Ausführungsform umfasst das Verfahren ferner das Erkennen eines aus einer Temperaturänderung oder einer Spannungsänderung an dem IC-Chip, wobei das intermittierende Aktualisieren des Steuersignals in Reaktion auf das eine aus Temperaturänderung oder Spannungsänderung erfolgt. In einer anderen Ausführungsform umfasst der zweite Signalpfad ferner ein Modell einer Eingabe-/Ausgabe-Empfängerschaltung (EA-Empfängerschaltung) oder eines Modells einer EA-Senderschaltung. In einer anderen Ausführungsform umfasst das Verfahren ferner das Empfangen von Daten an einem Prozessorkern von der zweiten Schaltungsanordnung.
  • Techniken und Architekturen zum Bestimmen einer Verzögerung auf ein Taktsignal sind hierin beschrieben. In der obigen Beschreibung werden zum Zweck der Erklärung zahlreiche spezifische Details dargestellt, um ein eingehendes Verständnis gewisser Ausführungsformen bereitzustellen. Es ist jedoch für einen Fachmann auf dem Gebiet offensichtlich, dass bestimmte Ausführungsformen ohne diese spezifischen Details praktiziert werden können. In anderen Instanzen werden Strukturen und Vorrichtungen in Form eines Blockdiagramms gezeigt, um die Ausführungsformen nicht zu verschleiern.
  • Verweise in der Spezifikation auf „eine Ausführungsform“ bedeuten, dass das ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Eigenschaft, das/die in Verbindung mit der Ausführungsform beschrieben ist, in mindestens einer Ausführungsform der Erfindung enthalten ist. Das Auftreten des Begriffs „in einer Ausführungsform“ an verschiedenen Stellen der Spezifikation muss sich nicht notwendigerweise immer auf dieselbe Ausführungsform beziehen.
  • Einige Abschnitte der ausführlichen Beschreibung hierin sind bezüglich Algorithmen und symbolischer Darstellungen von Operationen auf Datenbits innerhalb eines Computerspeichers dargestellt. Diese algorithmischen Beschreibungen und Darstellungen sind das Mittel, das von Fachleuten der Rechentechnik verwendet werden, um am effizientesten den Inhalt ihrer Arbeit an andere Fachleute auf dem Gebiet zu übermitteln. Ein Algorithmus ist hier und allgemein betrachtet als eine in sich geschlossene Sequenz von Schritten, die zu einem gewünschten Ergebnis führt. Die Schritte sind die, die physische Manipulationen physischer Mengen verlangen. Üblicherweise, aber nicht notwendigerweise, nehmen diese Mengen die Form elektrischer oder magnetischer Signale an, die in der Lage sind, gespeichert, übertragen, kombiniert, verglichen oder anderweitig manipuliert zu werden. Es hat sich gelegentlich als praktisch herausgestellt, vornehmlich aus Gründen häufiger Verwendung, diese Signale als Bits, Werte, Elemente, Symbole, Zeichen, Begriffe, Zahlen oder dergleichen zu bezeichnen.
  • Es sollte jedoch beachtet werden, dass all diese und ähnliche Begriffe mit den entsprechenden physischen Mengen assoziiert sind und nur praktische Labels sind, die auf diese Mengen angewendet werden. Sofern nicht speziell anders dargestellt, wie aus der Erklärung hierin offensichtlich ist, ist zu verstehen, dass in der gesamten Beschreibung Erklärungen, die Begriffe wie „Verarbeitung“ oder „Berechnung“ oder „Bestimmung“ oder „Anzeigen“ oder dergleichen verwenden, sich auf die Aktion und Prozesse eines Rechnersystems oder einer ähnlichen elektrischen Rechnervorrichtung beziehen, die Daten, die als physische (elektronische) Mengen innerhalb der Register und Speicher des Computersystems dargestellt sind, manipuliert und in andere Daten umwandelt, die ähnlich als physische Mengen innerhalb von Computersystemspeichern oder -registern oder anderen solchen Informationsspeicher-, Übertragungs- oder Anzeigevorrichtungen dargestellt sind.
  • Bestimmte Ausführungsformen beziehen sich auch auf das Durchführen der Operationen hierin. Diese Vorrichtung kann speziell für die erforderlichen Zwecke aufgebaut sein, oder kann einen Allgemeinzweckcomputer umfassen, der selektiv durch ein Computerprogramm, das in dem Computer gespeichert ist, aktiviert oder rekonfiguriert ist. Ein solches Computerprogramm kann auf einem computerlesbaren Speicher wie etwa unter anderem einer beliebigen Art von Diskette gespeichert sein, umfassend Floppy Disks, optische Disketten, CD-ROMs und magnetoptische Disketten, Festwertspeicher (ROMs), Direktzugriffspeicher (RAMs) wie etwa dynamische RAM (DRAM), EPROMs, EEPROMs, magnetische oder optische Karten oder jede Art von Medien, die sich zum Speichern elektronischer Anweisungen eignen und mit einem Computersystembus gekoppelt sind.
  • Die hierin dargestellten Algorithmen und Anzeigen beziehen sich nicht inhärent auf einen bestimmten Computer oder eine andere Vorrichtung. Verschiedene Allgemeinzwecksysteme können mit Programmen nach der Lehre hierin verwendet werden, oder es kann sich als praktisch herausstellen, spezialisiertere Apparate zu konstruieren, um die erforderlichen Verfahrensschritte auszuführen. Die erforderliche Struktur für eine Vielzahl dieser Systeme erscheint aus der Beschreibung hierin. Weiterhin sind bestimmte Ausführungsformen nicht mit Verweis auf eine bestimmte Programmiersprache beschrieben. Es ist zu erkennen, dass eine Vielzahl von Programmiersprachen verwendet werden kann, um die Lehre solcher Ausführungsformen wie hierin beschrieben umzusetzen.
  • Neben dem hierin beschriebenen können verschiedene Modifikationen auf die offenbarten Ausführungsformen und Umsetzungen davon ausgeführt werden, ohne von deren Schutzumfang abzuweichen. Daher sollten die Illustrationen und Beispiele hierin in illustrativer und nicht einschränkender Weise ausgelegt werden. Der Schutzumfang der Erfindung sollte einzig durch Verweis auf die folgenden Ansprüche gemessen werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 16/022357 [0001]

Claims (25)

  1. Integrierter Schaltungschip (IC-Chip) für das Timing einer Kommunikation von Daten, der IC-Chip umfassend: eine erste Schaltungsanordnung zum Empfangen eines ersten Taktsignals, zum Erzeugen eines zweiten Taktsignals basierend auf dem ersten Taktsignal und zum Kommunizieren des zweiten Taktsignals über einen ersten Signalpfad, der einen Taktsignalverteilerpfad umfasst; eine zweite Schaltungsanordnung zum Erzeugen eines Signals S1, wobei ein zweiter Signalpfad der zweiten Schaltungsanordnung ein Modell des ersten Signalpfads umfasst, wobei das Signal S1 eine erste Anzeige einer ersten Verzögerung umfasst, die dem Modell entspricht; und eine dritte Schaltungsanordnung zum Empfangen des Signals S1 und eines Signals S2, das eine zweite Anzeige einer zweiten Verzögerung basierend auf einem Zyklus eines zyklischen Signals umfasst, wobei die dritte Schaltungsanordnung ferner basierend auf der ersten Anzeige und der zweiten Anzeige ein Steuersignal an die erste Schaltungsanordnung bereitstellt, wobei die erste Schaltungsanordnung eine dritte Verzögerung auf das erste Taktsignal basierend auf dem Steuersignal anwenden soll.
  2. IC-Chip nach Anspruch 1, wobei die dritte Verzögerung auf einer Summe eines ersten Werts und eines zweiten Werts basiert, wobei der erste Wert die erste Verzögerung darstellt und wobei der zweite Wert eine Zeit für ein skalares Vielfaches eines Zyklus des zyklischen Signals darstellt.
  3. IC-Chip nach Anspruch 2, wobei das skalare Vielfache auf einer Bewertung einer der ersten Zeitdauer oder der zweiten Zeitdauer basiert.
  4. IC-Chip nach einem der Ansprüche 1 und 2, wobei das Datensignal ein erstes Datensignal ist, wobei der IC-Chip ferner umfasst: eine vierte Schaltungsanordnung zum Empfangen des ersten Taktsignals, des Signals S1 und des Signals S2, wobei die vierte Schaltungsanordnung ein drittes Taktsignal basierend auf jedem des ersten Taktsignals, des Signals S1 und des Signals S2 erzeugen soll, und wobei die vierte Schaltungsanordnung auf das erste Taktsignal eine vierte Verzögerung anwenden soll, die sich von der dritten Verzögerung unterscheidet.
  5. IC-Chip nach einem der Ansprüche 1, 2 und 4, wobei die erste Schaltungsanordnung eine programmierbare Verzögerungsleitung umfasst.
  6. IC-Chip nach einem der Ansprüche 1, 2 und 4, wobei die dritte Schaltungsanordnung intermittierend das Steuersignal basierend auf einer Änderung an Signal S1 oder Signal S2 aktualisiert.
  7. IC-Chip nach Anspruch 6, wobei die dritte Schaltungsanordnung eines aus einer Temperaturänderung oder einer Spannungsänderung an dem IC-Chip erkennen soll, und wobei die dritte Schaltungsanordnung intermittierend das Steuersignal in Antwort auf das eine aus der Temperaturänderung oder der Spannungsänderung aktualisieren soll.
  8. Integrierter Schaltungschip (IC-Chip) für das Timing einer Kommunikation von Daten, der IC-Chip umfassend: eine erste Schaltungsanordnung zum Empfangen eines Datensignals; eine zweite Schaltungsanordnung zum Empfangen eines ersten Taktsignals und zum Erzeugen eines zweiten Taktsignals basierend auf dem ersten Taktsignal, wobei die erste Schaltungsanordnung das zweite Taktsignal über einen ersten Signalpfad empfangen soll, der einen Taktsignalverteilerpfad umfasst, wobei die erste Schaltungsanordnung Daten des Datensignals in Reaktion auf das zweite Taktsignal sperren soll; eine dritte Schaltungsanordnung zum Erzeugen eines Signals S1, wobei ein zweiter Signalpfad der dritten Schaltungsanordnung ein Modell des ersten Signalpfads umfasst, wobei das Signal S1 eine erste Anzeige einer ersten Verzögerung umfasst, die dem Modell entspricht; eine vierte Schaltungsanordnung zum Erzeugen eines Signals S2 basierend auf einem zyklischen Signal, das eine zweite Anzeige einer zweiten Verzögerung umfasst, basierend auf einem Zyklus des zyklischen Signals; und eine fünfte Schaltungsanordnung zum Empfangen des Signals S1 und des Signals S2, wobei die fünfte Schaltungsanordnung ferner basierend auf der ersten Anzeige und der zweiten Anzeige ein Steuersignal an die zweite Schaltungsanordnung bereitstellt, wobei die zweite Schaltungsanordnung eine dritte Verzögerung auf das erste Taktsignal basierend auf dem Steuersignal anwenden soll.
  9. IC-Chip nach Anspruch 8, wobei die dritte Verzögerung auf einer Summe eines ersten Werts und eines zweiten Werts basiert, wobei der erste Wert die erste Verzögerung darstellt und wobei der zweite Wert eine Zeit für ein skalares Vielfaches eines Zyklus des zyklischen Signals darstellt.
  10. IC-Chip nach Anspruch 9, wobei das skalare Vielfache auf einer Bewertung einer der ersten Zeitdauer oder der zweiten Zeitdauer basiert.
  11. IC-Chip nach einem der Ansprüche 8 und 9, wobei das Datensignal ein erstes Datensignal ist, wobei der IC-Chip ferner umfasst: eine sechste Schaltungsanordnung zum Empfangen eines zweiten Datensignals; und eine siebte Schaltungsanordnung zum Empfangen des ersten Taktsignals, des Signals S1 und des Signals S2, wobei die siebte Schaltungsanordnung ein drittes Taktsignal basierend auf jedem des ersten Taktsignals, des Signals S1 und des Signals S2 erzeugen soll, wobei die siebte Schaltungsanordnung auf das erste Taktsignal eine vierte Verzögerung anwenden soll, die sich von der dritten Verzögerung unterscheidet, und wobei die sechste Schaltungsanordnung Daten des zweiten Datensignals basierend auf dem dritten Taktsignal sperren soll.
  12. IC-Chip nach Anspruch 11, wobei die dritte Verzögerung auf einem ersten Parameter basiert, der eine Zeit für ein erstes skalares Vielfaches eines Zyklus des zyklischen Signals vorgibt, wobei die vierte Verzögerung auf einem zweiten Parameter basiert, der eine Zeit für ein zweites skalares Vielfaches eines Zyklus des zyklischen Signals vorgibt, wobei sich das zweite skalare Vielfache von dem ersten skalaren Vielfachen unterscheidet.
  13. IC-Chip nach einem der Ansprüche 8, 9 und 11, wobei der erste Signalpfad ferner die zweite Schaltungsanordnung umfasst.
  14. IC-Chip nach einem der Ansprüche 8, 9 und 11, wobei die zweite Schaltungsanordnung eine programmierbare Verzögerungsleitung umfasst.
  15. IC-Chip nach einem der Ansprüche 8, 9 und 11, wobei die vierte Schaltungsanordnung eine Verzögerungsregelschleife umfasst.
  16. IC-Chip nach einem der Ansprüche 8, 9 und 11, wobei der zweite Signalpfad ferner ein Modell einer Eingabe-Ausgabe-Empfängerschaltung (EA-Empfängerschaltung) oder ein Modell einer EA-Senderschaltung umfasst.
  17. IC-Chip nach einem der Ansprüche 8, 9 und 11, ferner umfassend einen Prozessorkern zum Empfangen der Daten von der ersten Schaltungsanordnung.
  18. System zum Timen einer Kommunikation von Daten, das System umfassend: einen integrierten Schaltungschip (IC-Chip), umfassend: eine erste Schaltungsanordnung zum Empfangen eines Datensignals; eine zweite Schaltungsanordnung zum Empfangen eines ersten Taktsignals und zum Erzeugen eines zweiten Taktsignals basierend auf dem ersten Taktsignal, wobei die erste Schaltungsanordnung das zweite Taktsignal über einen ersten Signalpfad empfangen soll, der einen Taktsignalverteilerpfad umfasst, wobei die erste Schaltungsanordnung Daten des Datensignals in Reaktion auf das zweite Taktsignal sperren soll; eine dritte Schaltungsanordnung zum Erzeugen eines Signals S1, wobei ein zweiter Signalpfad der dritten Schaltungsanordnung ein Modell des ersten Signalpfads umfasst, wobei das Signal S1 eine erste Anzeige einer ersten Verzögerung umfasst, die dem Modell entspricht; eine vierte Schaltungsanordnung zum Erzeugen eines Signals S2 basierend auf einem zyklischen Signal, das eine zweite Anzeige einer zweiten Verzögerung umfasst, basierend auf einem Zyklus des zyklischen Signals; und eine fünfte Schaltungsanordnung zum Empfangen des Signals S1 und des Signals S2, wobei die fünfte Schaltungsanordnung ferner basierend auf der ersten Anzeige und der zweiten Anzeige ein Steuersignal an die zweite Schaltungsanordnung bereitstellt, wobei die zweite Schaltungsanordnung zum Erzeugen des zweiten Taktsignals umfasst, dass die zweite Schaltungsanordnung eine dritte Verzögerung auf das erste Taktsignal basierend auf dem Steuersignal anwendet; und eine Anzeigevorrichtung, die mit dem IC-Chip gekoppelt ist, wobei die Anzeigevorrichtung ein Bild basierend auf dem Datensignal anzeigen soll.
  19. System nach Anspruch 18, wobei das Datensignal ein erstes Datensignal ist, wobei der IC-Chip ferner umfasst: eine sechste Schaltungsanordnung zum Empfangen eines zweiten Datensignals; und eine siebte Schaltungsanordnung zum Empfangen des ersten Taktsignals, des Signals S1 und des Signals S2, wobei die siebte Schaltungsanordnung ein drittes Taktsignal basierend auf jedem des ersten Taktsignals, des Signals S1 und des Signals S2 erzeugen soll, wobei die siebte Schaltungsanordnung auf das erste Taktsignal eine vierte Verzögerung anwenden soll, die sich von der dritten Verzögerung unterscheidet, und wobei die sechste Schaltungsanordnung Daten des zweiten Datensignals basierend auf dem dritten Taktsignal sperren soll.
  20. System nach einem der Ansprüche 18 und 19, wobei die fünfte Schaltungsanordnung ferner eines aus einer Temperaturänderung oder einer Spannungsänderung an dem IC-Chip erkennen soll, wobei die fünfte Schaltungsanordnung ferner intermittierend das Steuersignal in Antwort auf das eine aus der Temperaturänderung oder der Spannungsänderung aktualisieren soll.
  21. Verfahren zum Timen einer Kommunikation von Daten, das Verfahren umfassend: Empfangen eines ersten Taktsignals an der ersten Schaltungsanordnung; Erzeugen eines zweiten Taktsignals mit der ersten Schaltungsanordnung basierend auf dem ersten Taktsignal; Empfangen des zweiten Taktsignals an der zweiten Schaltungsanordnung über einen ersten Signalpfad, der einen Taktsignalverteilerpfad umfasst; Sperren von Daten eines Datensignals mit der zweiten Schaltungsanordnung als Reaktion auf das zweite Taktsignal; Erzeugen eines Signals S1 mit einer dritten Schaltungsanordnung, umfassend ein Modell des ersten Signalpfads, wobei das Signal S1 eine erste Anzeige einer ersten Verzögerung umfasst, die dem Modell entspricht; Erzeugen eines Signals S2, das eine zweite Anzeige einer zweiten Verzögerung basierend auf einem Zyklus eines zyklischen Signals umfasst; und Bereitstellen eines Steuersignals an die erste Schaltungsanordnung basierend auf der ersten Anzeige und der zweiten Anzeige, wobei das Erzeugen des zweiten Taktsignals umfasst, dass die erste Schaltungsanordnung eine dritte Verzögerung auf das erste Taktsignal basierend auf dem Steuersignal anwendet.
  22. Verfahren nach Anspruch 21, wobei die dritte Verzögerung auf einer Summe eines ersten Werts und eines zweiten Werts basiert, wobei der erste Wert die erste Verzögerung darstellt und wobei der zweite Wert eine Zeit für ein skalares Vielfaches eines Zyklus des zyklischen Signals darstellt.
  23. Verfahren nach Anspruch 22, wobei das skalare Vielfache auf einer Bewertung einer der ersten Zeitdauer oder der zweiten Zeitdauer basiert.
  24. Verfahren nach einem der Ansprüche 21 und 22, wobei das Datensignal ein erstes Datensignal ist, wobei das Verfahren ferner umfasst: an der vierten Schaltungsanordnung, Empfangen des ersten Taktsignals, des Signals S1 und des Signals S2, wobei die vierte Schaltungsanordnung ein drittes Taktsignal basierend auf jedem des ersten Taktsignals, des Signals S1 und des Signals S2 erzeugt, und wobei die vierte Schaltungsanordnung auf das erste Taktsignal eine vierte Verzögerung anwendet, die sich von der dritten Verzögerung unterscheidet.
  25. Verfahren nach einem der Ansprüche 21, 22 und 24, wobei die erste Schaltungsanordnung eine programmierbare Verzögerungsleitung umfasst.
DE112019002560.0T 2018-06-28 2019-05-28 Vorrichtung, verfahren und system zum bereitstellen eines verzögerten taktsignals an eine schaltung für sperrdaten Pending DE112019002560T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/022,357 US10573272B2 (en) 2018-06-28 2018-06-28 Device, method and system for providing a delayed clock signal to a circuit for latching data
US16/022,357 2018-06-28
PCT/US2019/034208 WO2020005438A1 (en) 2018-06-28 2019-05-28 Device, method and system for providing a delayed clock signal to a circuit for latching data

Publications (1)

Publication Number Publication Date
DE112019002560T5 true DE112019002560T5 (de) 2021-04-22

Family

ID=68987557

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019002560.0T Pending DE112019002560T5 (de) 2018-06-28 2019-05-28 Vorrichtung, verfahren und system zum bereitstellen eines verzögerten taktsignals an eine schaltung für sperrdaten

Country Status (4)

Country Link
US (1) US10573272B2 (de)
CN (1) CN112005497A (de)
DE (1) DE112019002560T5 (de)
WO (1) WO2020005438A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10778164B2 (en) * 2018-10-05 2020-09-15 Winbond Electronics Corp. Input receiver circuit and adaptive feedback method
US10886903B1 (en) * 2019-08-20 2021-01-05 Apple Inc. Programmable clock skewing for timing closure
US11165416B2 (en) 2019-12-03 2021-11-02 Apple Inc. Duty cycle and skew measurement and correction for differential and single-ended clock signals
US11599139B1 (en) 2021-09-03 2023-03-07 Xepic Corporation Limited Dynamic adjustment of root clock frequency in logic system design during verification
CN117409834A (zh) * 2022-07-08 2024-01-16 长鑫存储技术有限公司 一种控制装置、存储器、信号处理方法和电子设备
CN116108803B (zh) * 2023-04-12 2024-03-22 北京紫光青藤微系统有限公司 用于生成非常规时钟信号的方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4915017B2 (ja) * 2005-09-29 2012-04-11 株式会社ハイニックスセミコンダクター 遅延固定ループ回路
US7571340B2 (en) 2006-06-13 2009-08-04 Intel Corporation Eliminating receiver clock drift caused by voltage and temperature change in a high-speed I/O system that uses a forwarded clock
US7825711B2 (en) * 2009-04-01 2010-11-02 Micron Technology, Inc. Clock jitter compensated clock circuits and methods for generating jitter compensated clock signals
US9565036B2 (en) 2009-06-30 2017-02-07 Rambus Inc. Techniques for adjusting clock signals to compensate for noise
US8996906B1 (en) 2010-05-13 2015-03-31 Tabula, Inc. Clock management block
US8248124B2 (en) 2010-06-03 2012-08-21 Intel Corporation Methods and apparatuses for delay-locked loops and phase-locked loops
JP2013131277A (ja) 2011-12-22 2013-07-04 Elpida Memory Inc 半導体装置及びその製造方法
CN104012002B (zh) 2011-12-29 2017-04-12 瑞萨电子株式会社 半导体装置
KR101735497B1 (ko) 2011-12-30 2017-05-15 인텔 코포레이션 포워딩된 클록 지터 감소
JP2015012350A (ja) * 2013-06-27 2015-01-19 マイクロン テクノロジー, インク. 半導体装置
US9218575B2 (en) 2013-09-04 2015-12-22 Intel Corporation Periodic training for unmatched signal receiver
US9178502B2 (en) 2013-12-27 2015-11-03 Intel Corporation Apparatus for a monotonic delay line, method for fast locking of a digital DLL with clock stop/start tolerance, apparatus and method for robust clock edge placement, and apparatus and method for clock offset tuning
KR102180001B1 (ko) * 2014-07-14 2020-11-17 에스케이하이닉스 주식회사 반도체 장치
KR20170132392A (ko) 2016-05-23 2017-12-04 삼성전자주식회사 지연 코드 생성기를 포함하는 지연 고정 회로

Also Published As

Publication number Publication date
US10573272B2 (en) 2020-02-25
US20200005729A1 (en) 2020-01-02
CN112005497A (zh) 2020-11-27
WO2020005438A1 (en) 2020-01-02

Similar Documents

Publication Publication Date Title
DE112019002560T5 (de) Vorrichtung, verfahren und system zum bereitstellen eines verzögerten taktsignals an eine schaltung für sperrdaten
DE112019001144T5 (de) VERFAHREN UND VORRICHTUNGEN ZUR BESTIMMUNG VON GEWICHTUNGEN FÜR DEN EINSATZ MIT CNNs (CONVOLUATIONAL NEURAL NETWORKS)
DE102020132721A1 (de) Vollständig digitaler spannungsmonitor (advm) mit einzelzykluslatenz
DE112019002025T5 (de) Hochfrequenzentfernungsmessung unter verwendung von phasendifferenz
DE102016013372A1 (de) Bildbeschriften mit schwacher Überwachung
DE102017009505A1 (de) Erzeugen einer kompakten Videomerkmaldarstellung in einer digitalen Medienumgebung
DE102014119507A1 (de) Synchronisation eines datensignals
DE112019002417T5 (de) Tastverhältniskorrektursystem und auf einem low-dropout (ldo)-regler basierende verzögerungsregelschleife (dll)
DE112019002524T5 (de) Drosseln von komponenten über prioritätenreihenfolgen
DE112019002628T5 (de) Vorrichtung, verfahren und system für on-chip-erzeugung eines referenztaktsignals
DE102014010217A1 (de) Dynamische Informationsanpassung für ein Computergerät mit mehreren Leistungsmodi
DE102014100404A1 (de) Temperaturgesteuerter Oszillator und Temperatursensor mit demselben
DE202015001474U1 (de) Versatztoleranten Taktrückgewinnungsarchitektur
Wu et al. Adaptive synchronization and pinning control of colored networks
DE102022121192A1 (de) Systeme und verfahren für die prüfung vernetzter geräte
DE102022203266A1 (de) Verfahren und einrichtungen zum automatischen aktualisieren von künstliche-intelligenz-modellen für autonome fabriken
Bedingham et al. The thermodynamic cost of quantum operations
Affleck et al. Screening clouds and majorana fermions
Morrone et al. Charging a quantum battery in a non-Markovian environment: a collisional model approach
Wang et al. On fractional coupled logistic maps: Chaos analysis and fractal control
DE112019002321T5 (de) Vollständig digitaler spannungsgenerator mit geschlossenem regelkreis
Colla et al. Initial correlations in open quantum systems: constructing linear dynamical maps and master equations
DE112020001948T5 (de) Resonanter on-package-schaltkondensator-spannungsregler mit hoher bandbreite
DE102020119183A1 (de) System und Verfahren zum Identifizieren und Dekodieren von Reed-Muller-Codes in Polarcodes
DE112017002244T5 (de) Verhältnis-metrischer selbstkapazitiver-zu-code-konverter