DE102020116191A1 - Zyklusborgezähler - Google Patents

Zyklusborgezähler Download PDF

Info

Publication number
DE102020116191A1
DE102020116191A1 DE102020116191.3A DE102020116191A DE102020116191A1 DE 102020116191 A1 DE102020116191 A1 DE 102020116191A1 DE 102020116191 A DE102020116191 A DE 102020116191A DE 102020116191 A1 DE102020116191 A1 DE 102020116191A1
Authority
DE
Germany
Prior art keywords
clock
signal
counter
flip
clock signal
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
DE102020116191.3A
Other languages
English (en)
Inventor
Tianyu Tang
Venky Ramachandra
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.)
Western Digital Technologies Inc
Original Assignee
Western Digital Technologies Inc
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 Western Digital Technologies Inc filed Critical Western Digital Technologies Inc
Publication of DE102020116191A1 publication Critical patent/DE102020116191A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K23/00Pulse counters comprising counting chains; Frequency dividers comprising counting chains
    • H03K23/58Gating or clocking signals not applied to all stages, i.e. asynchronous counters
    • H03K23/588Combination of a synchronous and an asynchronous counter
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K21/00Details of pulse counters or frequency dividers
    • H03K21/08Output circuits
    • H03K21/10Output circuits comprising logic circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K23/00Pulse counters comprising counting chains; Frequency dividers comprising counting chains
    • 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
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K21/00Details of pulse counters or frequency dividers

Landscapes

  • Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Pulse Circuits (AREA)
  • Manipulation Of Pulses (AREA)

Abstract

Es werden hierin Schaltungen und Systeme zum Erzeugen von Zählersignalen bereitgestellt. Eine Schaltung kann ein Schieberegister mit einer Reihe von Flip-Flops aufweisen. Jedes der Flip-Flops der Reihe kann mit einem Taktgeber gekoppelt sein. Das Schieberegister kann ein Borgetaktsignal unter Verwendung eines Ausgangs eines Flip-Flops des Schieberegisters erzeugen, und ein Übergang des Borgetaktsignals kann basierend auf einer Position des Flip-Flops des Schieberegisters um eine Anzahl an Taktzyklen vorgerückt werden. Die Schaltung kann ferner eine Taktteilerschaltung mit einer Anzahl an Teile-durch-N-Zählern und einer Anzahl an Flip-Flops aufweisen. Ein Teile-durch-N-Zähler kann mit einem Flip-Flop des Schieberegisters gekoppelt sein, und ein Flip-Flop der Taktteilerschaltung kann mit einem der Teile-durch-N-Zähler und mit dem Taktgeber gekoppelt sein.

Description

  • GEBIET DER ERFINDUNG
  • Die Erfindung bezieht sich auf Zählerschaltungen für digitale Systeme. Genauer bezieht sich die vorliegende Erfindung auf Zähler zur Verwendung in nichtflüchtigen Speicherschaltungen.
  • HINTERGRUND
  • In Speichervorrichtungen kann es wünschenswert sein, die Zeitsteuerung von Schaltvorgängen zu koordinieren, um die Leistung zu verbessern. Beispielsweise kann eine Speicherschaltung, die einen Lese- oder Schreibvorgang durchführt, ein Taktsignal und ein Datensignal empfangen. Die Speicherschaltung kann das Datensignal beim Erfassen von Impulsen des Taktsignals abtasten. In einigen Fällen kann es notwendig sein, das Datensignal innerhalb einer bestimmten Taktspanne abzutasten, um Abtastfehler zu vermeiden. Solche Beschränkungen können zunehmend ausgeprägt werden, wenn Daten unter Verwendung von Taktsignalen abgetastet werden, die mit höheren Geschwindigkeiten oszillieren.
  • Nichtflüchtige Speichervorrichtungen, wie NAND-Flash, sowie andere Arten von Nur-Lese-Speicher (Read-Only Memory (ROM)) können Lese- und/oder Schreibvorgänge mit relativ niedrigeren Geschwindigkeiten als beispielsweise der Taktfrequenz eines Prozessors oder von flüchtigem Speicher wie Direktzugriffsspeicher (Random Access Memory (RAM)) oder dynamischem RAM (DRAM) durchführen. In einigen Systemen kann eine NAND-Flash-Vorrichtung Datensignale in Übereinstimmung mit solchen relativen „Hochgeschwindigkeits“-Taktsignalen empfangen. Somit kann es in diesen Systemen vorteilhaft sein, die Zeitsteuerung eines Hochgeschwindigkeits-Taktsignals derart einzustellen, zu korrigieren oder zu kalibrieren, dass ein Impuls innerhalb des geeigneten Zeitfensters richtig erfasst wird.
  • Prozesse zur Kalibrierung von Taktsignalen können von einer Speichervorrichtung unter Verwendung einer oder mehrerer synchroner oder asynchroner Zählerschaltungen durchgeführt werden. Zählersignale, mit denen die Kalibrierung durchgeführt werden soll, können mit unterschiedlichen Frequenzen erzeugt werden. Beispielsweise kann eine Zählerschaltung ein Zählersignal durch Erfassen von Impulsen des Taktgebers erzeugen. Bei Erfassung einer bestimmten Anzahl an Impulsen des Taktsignals kann eine binäre Zählerschaltung das Zählersignal von einem hohen Zustand in einen niedrigen Zustand überführen oder umgekehrt. Bei Implementierung in einer Speicherschaltung kann der Zähler verwendet werden, um ein oder mehrere Taktsignale gatterzusteuern, wobei beispielsweise eine Kalibrierung ermöglicht wird, während sich das Zählersignal in einem hohen Zustand befindet, und ein Umschalten des Taktsignals verhindert wird, während sich das Zählersignal in einem niedrigen Zustand befindet.
  • Zählertypen schließen sowohl Synchron- als auch Asynchronzähler ein. Ein Synchronzähler kann mehrere Stufen aufweisen, die in einer parallelen Anordnung derart eingerichtet sind, dass jede Stufe des Synchronzählers das Taktsignal als Eingang annimmt und jede ein Zählersignal mit einer anderen Frequenz erzeugt. Angesichts der Tatsache, dass jede parallele Zählerstufe direkt Impulse des Taktgebers misst, kann jede Stufe des Synchronzählers den gleichen Betrag an Ausbreitungsverzögerung in Bezug auf das Taktsignal einführen. Ein Asynchronzähler kann in ähnlicher Weise Zählersignale mit unterschiedlichen Frequenzen unter Verwendung aufeinander folgender Stufen erzeugen. In diesem Fall können die Stufen eine serielle Anordnung aufweisen, was bedeutet, dass nur die erste Stufe des Asynchronzählers den Takteingang verwendet und nachfolgende Stufen Zählersignale durch Erfassen von Impulsen einer vorhergehenden Zählerstufe erzeugen. Jede nachfolgende Stufe des Asynchronzählers kann eine zusätzliche Ausbreitungsverzögerung einführen.
  • Typ und Design eines solchen Zählers können für jede Implementierung spezifisch sein. Beispielsweise kann es zusätzlich zu der Kompatibilität mit einem Hochgeschwindigkeits-Taktgeber, die zusätzliche Beschränkungen für das Maß an akzeptabler Ausbreitungsverzögerung auferlegen kann, wünschenswert sein, einen Zähler zu verwenden, der eine minimale Verzögerung aus einem Taktimpuls einführt und Signale mit einem konsistenten Betrag an Verzögerung erzeugt. Aufgrund von Strom- und Platzbeschränkungen in bestimmten Schaltungen kann es auch nicht praktikabel sein, Synchronzähler zu verwenden. Somit ist ein Zähler erwünscht, der relativ wenig Strom benötigt, einen niedrigen Platzbedarf aufweist und Flexibilität bei der Gattersteuerung eines Hochgeschwindigkeits-Taktsignals bietet.
  • KURZDARSTELLUNG
  • Es werden hierin Schaltungen und Systeme zum Erzeugen von Zählersignalen bereitgestellt. Eine Schaltung kann ein Schieberegister mit einer Reihe von Flip-Flops aufweisen. Jedes der Flip-Flops der Reihe kann mit einem Taktgeber gekoppelt sein. Das Schieberegister kann ein Borgetaktsignal unter Verwendung eines Ausgangs eines Flip-Flops des Schieberegisters erzeugen, und ein Übergang des Borgetaktsignals kann basierend auf einer Position des Flip-Flops des Schieberegisters um eine Anzahl an Taktzyklen vorgerückt werden. Die Schaltung kann ferner eine Taktteilerschaltung mit einer Anzahl an Teile-durch-N-Zählern und einer Anzahl an Flip-Flops aufweisen. Ein Teile-durch-N-Zähler kann mit einem Flip-Flop des Schieberegisters gekoppelt sein, und ein Flip-Flop der Taktteilerschaltung kann mit einem der Teile-durch-N-Zähler und mit dem Taktgeber gekoppelt sein.
  • Figurenliste
    • 1 zeigt ein beispielhaftes Taktdiagramm für eine Schaltung, bei der eine Vielzahl von synchronen Teile-durch-N-Zählern aus einem Roh-Taktsignal erzeugt werden;
    • 2 zeigt ein beispielhaftes Taktdiagramm für eine Schaltung, bei der eine Vielzahl von asynchronen Teile-durch-N-Zählerausgaben basierend auf einem Roh-Taktsignal erzeugt werden;
    • 3A ist ein System, das eingerichtet ist, um einen Prozess zur Versatzkorrektur durchzuführen, wobei das System eine synchrone Zählerschaltung implementiert;
    • 3B ist ein Taktdiagramm, das den Takt, die Zählerausgaben und die gattergesteuerten Taktausgaben der in 3A gezeigten Schaltung zeigt;
    • 4A ist ein System, das eingerichtet ist, um einen Prozess zur Versatzkorrektur durchzuführen, wobei das System eine asynchrone Zählerschaltung implementiert;
    • 4B ist ein Taktdiagramm, das ein Roh-Taktsignal, ein eingestelltes Taktsignal, ein asynchrones Zählersignal und eine gattergesteuerte Taktausgabe des in 4A gezeigten Systems zeigt;
    • 5 ist eine Darstellung einer Verzögerungsreplik, die mit Ausgängen auf Stufen gezeigt ist, die eingerichtet sind, um mit den Verzögerungswerten verschiedener Teile-durch-N-Signale übereinzustimmen;
    • 6A ist ein Schaltplan eines Schieberegisters, das eingerichtet ist, um ein DIV12-Basisborgetaktsignal zu erzeugen;
    • 6B ist ein Schaltplan einer Taktteilerschaltung, wie sie eingerichtet sein kann, um ein DIV48-Zählersignal unter Verwendung eines ausgewählten Ausgangs des Schieberegisters zu erzeugen;
    • 6C ist ein Taktdiagramm, das verschiedene Signale zeigt, die von den in 6A und 6B beschriebenen Asynchronzählerkomponenten erzeugt werden;
    • 6D ist ein Diagramm, das simulierte Wellenformen für die Signale anzeigt, die von den in 6A und 6B beschriebenen Asynchronzählerkomponenten erzeugt werden;
    • 7A ist ein Schaltplan eines Schieberegisters, das eingerichtet ist, um ein DIV12-Basisborgetaktsignal zu erzeugen;
    • 7B ist ein Schaltplan einer Taktteilerschaltung, wie sie eingerichtet sein kann, um ein DIV160-Zählersignal unter Verwendung eines ausgewählten Ausgangs des Schieberegisters zu erzeugen;
    • 7C ist ein Taktdiagramm, das verschiedene Signale zeigt, die von den in 6A und 6B beschriebenen Asynchronzählerkomponenten erzeugt werden; und
    • 7D ist ein Diagramm, das simulierte Wellenformen für die Signale anzeigt, die von den in 6A und 6B beschriebenen Asynchronzählerkomponenten erzeugt werden.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Hierin beschriebene Ausführungsformen schließen Verfahren, Schaltungen, Apparate, Vorrichtungen und Systeme zum Erzeugen eines Zählersignals ein, das mit einem internen Takt synchron ist. In den folgenden Ausführungsformen kann das Taktsignal als ein „Referenz“-Taktsignal, ein „Roh“-Taktsignal, ein „Eingangs“-Taktsignal oder ein „CLK“ bezeichnet werden. Die Begriffe „Impuls“, „Taktimpuls“, „Flanke“ oder „Übergang“, wie hierin verwendet, können auf dasselbe Bezug nehmen. Außerdem können die Begriffe „steigende Flanke“ und „Low-zu-High-Übergang“ auf dasselbe Bezug nehmen, wie auch die Begriffe „abfallende Flanke“ und „High-zu-Low-Übergang“. Wie in der gesamten folgenden Beschreibung verwendet, können diese Begriffe austauschbar verwendet werden. Ferner kann in jeder der hierin beschriebenen Ausführungsformen ein Taktgenerator ein einseitig gerichtetes Signal oder ein Paar von Differenzsignalen erzeugen, wobei sich die Differenzsignale jeweils gegenseitig ergänzen. Wenn zum Beispiel eines der zwei Differenzsignale in einen hohen Zustand übergeht, geht das andere gleichzeitig in einen niedrigen Zustand über.
  • Der Begriff „Takt-zu-Ausgang-Verzögerung“ kann verwendet werden, um auf eine Ausbreitungsverzögerung, oder Gatterverzögerung, Bezug zu nehmen, welches die Zeit sein kann, die ein Datenimpuls benötigt, um von dem Eingang eines Logikgatters zu dem Ausgang des Logikgatters zu wandern. Die Takt-zu-Ausgang-Verzögerung kann absolut gesehen als ein Zeitwert (d. h. in Nanosekunden oder Picosekunden) verstanden werden. Innerhalb eines gegebenen Pfads in einer Schaltung kann die Ausbreitungsverzögerung in Abhängigkeit von mehreren zusätzlichen Faktoren wie Temperatur, Versorgungsspannung und/oder Lastkapazität variieren. Somit kann es nicht praktikabel sein, einen bestimmten Betrag an Ausbreitungsverzögerung entlang eines gegebenen Signalwegs zu berechnen oder vorauszusehen. In einigen Ausführungsformen kann die Takt-zu-Ausgang-Verzögerung einer Schaltung in relativer Hinsicht verstanden werden. Beispielsweise kann angenommen werden, dass sie kleiner als eine gegebene Anzahl an Taktzyklen (z. B. ein oder ein halber Taktzyklus) ist.
  • Ein Synchron- oder Asynchronzähler kann ein Teile-durch-N-Zähler sein. Ein Teile-durch-N-Zähler kann ein Eingangstaktsignal annehmen und ein Ableitungssignal erzeugen. Dies kann erreicht werden, indem die Frequenz des Eingangstaktsignals durch einen Teilungsfaktor, N, geteilt wird. In einem rudimentären Beispiel, in dem N = 2 ist und ein Eingangstaktsignal eine Frequenz f aufweist, kann ein Teile-durch-2-Zähler einen Zähler mit einer Frequenz f/2 erzeugen.
  • 1 zeigt ein beispielhaftes Taktdiagramm für eine Schaltung, bei der eine Vielzahl von synchronen Teile-durch-N-Zählerausgaben aus einem Roh-Taktsignal erzeugt wird. Ein Roh-Taktsignal CLK kann mit einer Periode 100 gegeben sein. Wie gezeigt, kann die Schaltung von 1 eine Vielzahl von Teile-durch-N-Zählern DIV2, DIV4 und DIV8 implementieren. DIV2 kann ein Teile-durch-2-Signal sein, DIV4 kann ein Teile-durch-4-Signal sein, und DIV8 kann ein Teile-durch-8-Signal sein. Dementsprechend kann DIV4 eine Frequenz von der Hälfte von derjenigen von DIV2 aufweisen, und DIV8 kann eine Frequenz von der Hälfte von derjenigen von DIV4 aufweisen. Jeder Teile-durch-N-Zähler kann das rohe Hochgeschwindigkeits-Taktsignal als seinen Takteingang nehmen. Wie in 1 gezeigt, kann jeder Ausgang eine gleiche Takt-zu-Ausgang-Verzögerung 110 aufweisen.
  • In anderen Ausführungsformen kann eine Reihe von Teile-durch-N-Zählern gegeben sein, bei denen sich N für einige oder alle der Zählersignale unterscheidet. Beispielsweise kann ein erster Zähler ein Teile-durch-2-Zählersignal ausgeben, während ein zweiter Zähler ein Teile-durch-4-Zählersignal ausgeben kann. In diesem Fall kann das Teile-durch-2-Zählersignal eine Frequenz von der Hälfte von derjenigen des rohen Hochgeschwindigkeitstakts aufweisen, während das Teile-durch-4-Zählersignal eine Frequenz von einem Viertel von derjenigen des Hochgeschwindigkeitstakts aufweisen kann. In Abhängigkeit von der Konfiguration der Schaltung kann sich die Takt-zu-Ausgang-Verzögerung für jeden Synchronzähler mit einem unterschiedlichen Wert N unterscheiden.
  • In einigen Ausführungsformen kann das Roh-Taktsignal 110 zwischen hohen und niedrigen Pegeln mit einer gegebenen Frequenz in Abhängigkeit von der Implementierung oszillieren. Beispielsweise kann in einer NAND-Flash-Implementierung ein Hochgeschwindigkeits-Roh-Taktsignal eine Periode zwischen 1 und 1,5 Nanosekunden aufweisen. Für andere Arten von Speicher oder Schaltungen im Allgemeinen, wie RAM, DRAM, synchrones DRAM (SDRAM), oder wenn das Taktsignal von einem Computerprozessor ausgegeben wird, kann die Frequenz deutlich höher sein. Das Roh-Taktsignal weist einen Tastgrad auf, der als der Anteil oder Prozentsatz einer Periode definiert werden kann, in der ein Taktsignal auf einem hohen Pegel ist. Der Tastgrad kann ein Verhältnis der Breite eines Taktimpulses in einem einzigen Zyklus zu der Gesamtdauer des Taktzyklus sein. Wie in 1 gezeigt, kann der Takt einen Tastgrad von 50 % aufweisen, obwohl in anderen Ausführungsformen der Tastgrad niedriger oder höher sein kann.
  • 2 zeigt ein beispielhaftes Taktdiagramm für eine Schaltung, bei der eine Vielzahl von asynchronen Teile-durch-N-Zählerausgaben basierend auf einem einzigen Taktsignal erzeugt werden. In ähnlicher Weise kann, wie in 1 gezeigt, das Roh-Taktsignal CLK mit einer hohen Frequenz oszillieren, und als solcher kann der Zyklus 200 in einem Bereich von beispielsweise 1 bis 1,5 Nanosekunden liegen. Die in 2 beispielhaft veranschaulichte Schaltung kann eine Vielzahl von Teile-durch-N-Zählersignalen DIV2, DIV4 und DIV8 erzeugen. DIV2 kann ein Teile-durch-2-Signal sein, DIV4 kann ein Teile-durch-4-Signal sein, und DIV8 kann ein Teile-durch-8-Signal sein. Dementsprechend kann DIV4 eine Frequenz von der Hälfte von derjenigen von DIV2 aufweisen, und DIV8 kann eine Frequenz von der Hälfte von derjenigen von DIV4 aufweisen.
  • Wie in 2 gezeigt, können die Zählersignale DIV2, DIV4 und DIV8 asynchron in Bezug auf CLK sein. Beispielsweise können die Zählerstufen in einer Ripple-Konfiguration derart angeordnet sein, dass jeder nachfolgende Zähler den Ausgang eines vorherigen Zählers als seinen Takteingang nimmt. Wie gezeigt, kann ein erster Teile-durch-2-Zähler das Signal CLK als Eingang nehmen, um DIV2 zu erzeugen. Ein zweiter Teile-durch-2-Zähler kann das erste DIV2-Signal als Eingang nehmen, um ein DIV4-Signal zu erzeugen, und ein dritter Teile-durch-2-Zähler kann die Ausgabe DIV4 als Eingang nehmen und anschließend DIV8 erzeugen. Jeder Teile-durch-2-Zähler kann eine andere Instanz einer Takt-zu-Ausgang-Verzögerung, gezeigt durch 210, 220 und 230, einführen. DIV4 kann eine Frequenz von der Hälfte von derjenigen von DIV2 aufweisen, und DIV8 kann eine Frequenz von der Hälfte von derjenigen von DIV4 aufweisen.
  • Für Ausführungsformen, die einen Asynchronzähler implementieren, kann eine Reihe von Teile-durch-N-Zählern gegeben sein, bei denen sich N für alle oder einige der Zählersignale unterscheidet. Beispielsweise kann ein erster Zähler ein DIV2-Zählersignal ausgeben, während ein zweiter Zähler ein DIV4-Zählersignal ausgeben kann. In diesem Fall kann das DIV2-Zählersignal eine Frequenz von der Hälfte von derjenigen des rohen Hochgeschwindigkeitstakts aufweisen, während das DIV4-Zählersignal eine Frequenz von einem Viertel von derjenigen des Hochgeschwindigkeitstakts aufweisen kann. In Abhängigkeit von der Konfiguration der Schaltung können die Werte der Takt-zu-Ausgang-Verzögerung für jede Zählerschaltung mit einem unterschiedlichen Frequenzteilungsfaktor N unterschiedlich sein.
  • In einer digitalen Schaltung kann es wünschenswert sein, einen Zähler zu erzeugen, mit dem ein oder mehrere Takt- oder Datensignale gattergesteuert werden sollen. Eine mögliche Implementierung kann in einem Vorbereitungs- und Haltezeit-Kalibrierprozess sein. Beispielsweise kann in einem beispielhaften System eine Sendeschaltung sowohl ein Datensignal als auch ein Taktsignal an eine Empfangsschaltung senden. Die Empfangsschaltung kann Werte des Datensignals als Reaktion auf das Erfassen von Übergängen des Taktsignals identifizieren.
  • Idealerweise können Taktübergänge zu optimalen Zeitpunkten auftreten, was es der Empfangsschaltung ermöglicht, Werte des Datensignals korrekt abzutasten. In einigen Fällen kann jedoch eine Übergangszeit des Taktsignals von einer optimalen Übergangszeit abweichen (z. B. kann das Taktsignal langsamer übergehen, als es wünschenswert ist). Dies kann bewirken, dass die Empfangsschaltung Werte des Datensignals falsch identifiziert, wodurch Abtastfehler verursacht werden. Die Abweichung des Taktsignalübergangs von der optimalen Übergangszeit kann als „Versatz“ bezeichnet werden. Wenn ein Taktsignal mit einer hohen Frequenz oszilliert, kann der nachteilige Effekt des Versatzes auf die Fähigkeit der Empfangsschaltung zum Lesen von Datenwerten zunehmen. Ein Versatzkorrekturprozess kann zum Beispiel zuerst das Erfassen einer Anzahl an Abtastfehlern und anschließend das Verzögern des Taktsignals derart umfassen, dass nachfolgende Taktübergänge zu optimalen Zeitpunkten auftreten.
  • In einigen Ausführungsformen kann ein Zählersignal verwendet werden, um das Abtasten des Takt- und/oder Datensignals während des Versatzkorrekturprozesses auszulösen. Ein Zählersignal kann eine feste Umschaltzeitperiode und eine feste stabile Zeitperiode aufweisen. Ein Zählersignal kann für die Dauer einer festen Umschaltzeitperiode auf einem hohen Wert bleiben, wodurch ermöglicht wird, dass andere von dem Zählersignal gattergesteuerte Signale oszillieren. Dagegen kann ein Zählersignal für die Dauer einer stabilen Zeitperiode auf einem niedrigen Wert bleiben, wodurch andere von dem Zählersignal gattergesteuerte Signale deaktiviert werden. Dementsprechend kann ein hoher Wert des Zählersignals während der festen Umschaltzeitperiode das Abtasten des ursprünglichen Taktsignals oder eines verzögerten Taktsignals ermöglichen, wohingegen während eines niedrigen Werts des Zählersignals während der festen stabilen Zeitperiode verschiedene Vorgänge, einschließlich Vergleichen der Eingangsdaten und der Lesedaten, vorgenommen werden können, und Taktverzögerungswerte können zum Beispiel basierend auf einer Anzahl an Abtastfehlern eingestellt werden.
  • 3A zeigt ein Beispiel eines Synchronzählers, wie er in einer Vielfalt an Schaltungen verwendet werden kann, einschließlich des vorstehend beschriebenen Versatzkorrekturprozesses. Wie gezeigt, kann ein Hochgeschwindigkeits-Taktgeber 310 ein Taktsignal (CLK) 311 ausgeben. In einigen Ausführungsformen, wie NAND-Flash-Speicher, kann CLK ein Datenstrobesignal, DQS, oder ein invertiertes Datenstrobesignal, BDQS, sein. Ein Datenstrobesignal kann auf ein Zeitlesesignal Bezug nehmen, das zusammen mit einem Datensignal ausgegeben wird. Ein Dateneingangsblock 320 kann sowohl das Taktsignal 311 als auch eine oder mehrere Dateneingaben annehmen. Außerdem kann eine synchrone Zählerschaltung 330 das Hochgeschwindigkeits-Taktsignal annehmen und ein Zählersignal 331 ausgeben.
  • Eine Schaltung, wie in 3A dargestellt, kann eine Reihe von Gattern NAND1 und NAND2 einschließen, die das Hochgeschwindigkeits-Taktsignal 311 unter Verwendung des Zählersignals 331 gattersteuern. Es ist ersichtlich, dass in anderen nicht dargestellten Ausführungsformen eine andere Konfiguration von Logikgattern, die äquivalent zu der Reihe von Gattern NAND1 und NAND2 ist, implementiert werden kann. In dem gezeigten Beispiel kann NAND1 eingerichtet sein, um sowohl das rohe Hochgeschwindigkeitstaktsignal 311 als auch das synchrone Zählersignal 331 zu empfangen. NAND2 kann eingerichtet sein, um ein Ausgangssignal des NAND1-Gatters und das synchrone Zählersignal 331 zu empfangen. Die Ausgabe 332 des gattergesteuerten Taktsignals von NAND2 kann dann von einer Verzögerungsschaltung 340 empfangen werden, die eine Vielzahl von Verzögerungsketten einschließen kann, die mit einem Umgehungssignal gekoppelt sind. Die Verzögerungsschaltung 340 kann das Signal 332 empfangen und verzögern, um eine Ausgabe zu erzeugen, die von dem Dateneingangsblock 320 empfangen werden kann. Der Dateneingangsblock kann eine Schaltungsanordnung einschließen, die eingerichtet ist, um die Abtastprozesse des Versatzkorrekturprozesses durchzuführen, wobei die Anzahl an Fehlern gemessen wird, die auftreten, wenn das Datensignal beim Übergang des Taktsignals gelesen wird. Die Verzögerungsschaltung 340 kann derart einstellbar sein, dass die Zeitsteuerung des gattergesteuerten Taktsignals dynamisch, beispielsweise in periodischen Intervallen oder beim Umschalten eines Freigabesignals, eingestellt werden kann, bevor es durch den Dateneingangsblock 330 empfangen wird. Dies kann die Kalibrierung der Vorbereitungs- und Haltezeit ermöglichen, wodurch gewährleistet wird, dass die Taktsignalübergänge zu gewünschten Zeitpunkten auftreten.
  • 3B ist ein Taktdiagramm, das den Takt, die Zählerausgaben und die gattergesteuerten Taktausgaben der in 3A gezeigten Schaltung zeigt. Wie in 3B gezeigt, kann das rohe Hochgeschwindigkeits-Taktsignal 311, das als Eingabe an der synchronen Zählerschaltung 330 und an dem NAND1-Gatter empfangen wird, die gleiche Zeitsteuerung aufweisen. In einigen Ausführungsformen kann das Taktsignal 311 einen Tastgrad von 50 % aufweisen. Als Alternative kann der Tastgrad des Taktsignals in Abhängigkeit von der Konfiguration der Schaltung höher oder niedriger sein.
  • Wie in 3B gezeigt, kann das Zählersignal 331 ein DIV48-Zählersignal sein. Dementsprechend kann der hohe Wert des Zählersignals für eine Periode von 24 Zyklen des rohen Hochgeschwindigkeits-Taktsignals 311 fortbestehen, und der niedrige Wert des Zählersignals 331 kann für eine Periode von 24 Zyklen des rohen Hochgeschwindigkeitstakts fortbestehen. Diese Konfiguration kann ermöglichen, dass die NAND-Gatter 1 und 2 das Ausgangssignal 332 durch Gattersteuern des Taktsignals 311 während dieser Periode erzeugen. Somit kann das Ausgangssignal 332 eine Umschaltperiode von 24 Zyklen und eine stabile Periode von 24 Zyklen für eine Gesamtperiode von 48 Roh-Takt-Zyklen aufweisen.
  • Wie in 3B gezeigt, kann die Gesamtperiode des Zählersignalzyklus 48 Roh-Takt-Zyklen betragen. In anderen Ausführungsformen kann die gesamte synchrone Zählerzyklusperiode kürzer oder länger sein kann. In anderen Ausführungsformen können die Umschaltperiode und die stabile Periode kürzer oder länger sein, und sie müssen nicht die gleiche Länge aufweisen. In Abhängigkeit von der Konfiguration der Schaltung kann ein Teile-durch-N-Zähler mit einem Wert von N gleich einer ganzen Zahl von zwei oder mehr implementiert werden.
  • In einigen Ausführungsformen kann das von dem Hochgeschwindigkeitstakt 311 abgeleitete Zählersignal 331 einen Tastgrad von 50 % aufweisen, wie in 3B gezeigt. Als Alternative kann der Tastgrad des Zählersignals in Abhängigkeit von der Konfiguration der Schaltung höher oder niedriger sein.
  • Wie in 3B gezeigt, kann das synchrone Zählersignal 331 basierend auf einem High-zu-Low-Übergang des Taktsignals 311 erzeugt werden. Aufgrund der Konfiguration von Kombinationslogik in der synchronen Zählerschaltung 330 kann das synchrone Zählersignal 331 eine Takt-zu-Ausgang-Verzögerung 340 aufweisen. Die Takt-zu-Ausgang-Verzögerung für die synchrone Zählerschaltung 330 kann derart sein, dass die Umschaltperiode des Zählersignals 331 vor dem nächsten Low-zu-High-Übergang des Taktsignals 311 beginnt. Dies kann ermöglichen, dass das Zählersignal 331 das Taktsignal 311 richtig gattersteuert und das Signal 332 erzeugt.
  • In einer anderen Ausführungsform können die Takt-zu-Ausgang-Verzögerung einer Zählerschaltung und/oder die Frequenz eines Taktsignals derart sein, dass die Umschaltperiode des Zählersignals nicht früh genug beginnt, um das Taktsignal richtig gatterzusteuern. Beispielsweise kann eine Taktspanne die Verwendung des Hochgeschwindigkeitstakts in Verbindung mit der Zählerschaltung einschränken. Die Gattersteuerungs-Taktspanne kann eine Periode eines Gattersteuersignals definieren, innerhalb derer ein Taktübergang erfolgen muss, damit eine Empfangsschaltung einen Wert des Gattersteuersignals richtig liest. Dies kann auf die Vorbereitungs- und/oder Haltezeit des Taktsignals zurückzuführen sein, die Perioden vor und nach einem Taktübergang spezifizieren, während deren das Zählersignal stabil gehalten werden muss. Eine Taktspanne kann in Form eines Taktzyklus oder eines Bruchteils eines Taktzyklus ausgedrückt werden. Beispielsweise kann die Taktspanne eine Länge von ½ Taktzyklus aufweisen.
  • Hierin beschriebene Ausführungsformen können die Verwendung eines Asynchronzählers umfassen, um ein Signal mit einer gewünschten Frequenz zu erzeugen und dennoch die Taktspannenanforderungen des Layouts zu erfüllen. Beispielsweise kann in einer Implementierung, in der eine Umschaltperiode eines Zählers nicht sofort beginnen muss, ein Asynchronzähler eine Rekonfiguration des Takt- und/oder Zählersignals derart ermöglichen, dass Gattersteuerungs-Taktspannen erfüllt werden können.
  • 4A zeigt ein Beispiel einer asynchronen Zählerschaltung, die in dem vorstehend beschriebenen Versatzkorrekturprozess implementiert ist. Wie gezeigt, kann ein Hochgeschwindigkeits-Taktgeber 410 ein Taktsignal 411 ausgeben. Ein Dateneingangsblock 420 kann sowohl das Taktsignal 411 als auch eine oder mehrere Dateneingaben annehmen. Die asynchrone Zählerschaltung 430 kann das Hochgeschwindigkeits-Taktsignal 411 annehmen und ein Zählersignal 431 ausgeben. Der Asynchronzähler kann eine oder mehrere Teile-durch-N-Stufen einschließen, wobei jede Stufe den gleichen Wert N aufweist. Als Alternative kann der Wert N für jede nachfolgende Stufe des Asynchronzählers unterschiedlich sein. Jede Stufe kann den Ausgang der vorherigen Stufe als ihren Eingang nehmen.
  • Eine Takt-zu-Ausgang-Verzögerung kann entlang des Pfads von dem Roh-Taktsignal 411 zu der asynchronen Zählersignalausgabe 431 eingeführt werden. Wenn die asynchrone Zählerschaltung 430 mehrere Teile-durch-N-Stufen einschließt, wobei jede Stufe den gleichen N-Wert aufweist und jede Stufe den Ausgang der vorherigen Stufe als ihren Eingang nimmt, kann die gesamte Takt-zu-Ausgang-Verzögerung, die an dem letzten Asynchronzählerausgang beobachtet wird, ein Vielfaches des Werts der Takt-zu-Ausgang-Verzögerung für eine einzige Teile-durch-N-Stufe betragen. Als Alternative kann der Wert N für jede nachfolgende Stufe des Asynchronzählers unterschiedlich sein, was zu unterschiedlichen Werten der Takt-zu-Ausgang-Verzögerung für jede Stufe führt.
  • Ähnlich zu der in 3A dargestellten Schaltung kann die in 4A dargestellte Schaltung eine Reihe von Gattern NAND1 und NAND2 einschließen, mit denen der Hochgeschwindigkeitstakt basierend auf dem asynchronen Zählersignal 431 gattergesteuert werden soll. Es ist ersichtlich, dass in anderen nicht dargestellten Ausführungsformen eine andere Konfiguration von Logikgattern äquivalent zu der Reihe von Gattern NAND1 und NAND2. Aufgrund der zusätzlichen Takt-zu-Ausgang-Verzögerung, die durch die mehreren Teile-durch-N-Stufen des Asynchronzählers eingeführt wird, können das rohe Hochgeschwindigkeits-Taktsignal und das asynchrone Zählersignal 431 unsynchronisiert sein. Gemäß einer beliebigen von mehreren Ausführungsformen, die später hierin erörtert werden, kann eine zusätzliche Verzögerung entlang des Pfads zwischen dem rohen Hochgeschwindigkeitstakt und dem Eingang des NAND1-Gatters eingeführt werden, was zu einem eingestellten Hochgeschwindigkeits-Taktsignal 415 führt. Als Alternative kann das asynchrone Zählersignal 431 durch Zyklusborgen, das ebenfalls später hierin beschrieben wird, abgeglichen werden.
  • Unter der Annahme, dass das asynchrone Zählersignal 431 mit dem Roh-Taktsignal 411 über eines der vorstehend genannten Verfahren abgeglichen wird, kann das Signal des Asynchronzählers verwendet werden, um den Roh-Takt gatterzusteuern. Beispielsweise kann NAND1 eingerichtet sein, um sowohl das eingestellte Hochgeschwindigkeits-Taktsignal 411 als auch das asynchrone Zählersignal 431 zu empfangen. NAND2 kann eingerichtet sein, um ein Ausgangssignal des NAND1-Gatters und das asynchrone Zählersignal 431 zu empfangen. Wie in 4B gezeigt, kann die Ausgabe des gattergesteuerten Taktsignals von NAND2 von einer einstellbaren Verzögerungsschaltung empfangen werden, die eine Vielzahl von Verzögerungsketten einschließen kann, die mit einem Umgehungssignal gekoppelt sind. Solch eine Schaltungsanordnung kann eine Versatzeinstellfunktionalität bereitstellen, wie in vorherigen Ausführungsformen erörtert. Die einstellbare Verzögerungsschaltung 440 kann das Eingangssignal empfangen und verzögern, um eine Ausgabe zu erzeugen, die von dem Dateneingangsblock 420 zusammen mit einem Dateneingangssignal empfangen wird.
  • 4B ist ein Taktdiagramm, welches das Roh-Taktsignal 411, das eingestellte Taktsignal 412, das asynchrone Zählersignal 431 und die gattergesteuerte Taktausgabe 440 der in 4A gezeigten Schaltung zeigt.
  • In Ausführungsformen, wie gezeigt, kann das Taktsignal 411 einen Tastgrad von 50 % aufweisen. Als Alternative kann der Tastgrad des Taktsignals in Abhängigkeit von der Konfiguration der Schaltung höher oder niedriger sein.
  • Wie in 4B gezeigt, kann das asynchrone Zählersignal 431 ein DIV48-Zählersignal sein. In Abhängigkeit von der Konfiguration der Schaltung kann ein Teile-durch-N-Zähler mit einem unterschiedlichen Wert N implementiert werden. Wie gezeigt, kann die Gesamtperiode des Zählersignalzyklus 48 eingestellte Taktzyklen betragen. In anderen Ausführungsformen kann die gesamte Zählerzyklusperiode des Asynchronzählers größer oder kleiner sein. Außerdem kann, wie in 4B gezeigt, das von dem Hochgeschwindigkeits-Taktsignal 411 abgeleitete Zählersignal 431 einen Tastgrad von 50 % aufweisen. Dementsprechend kann der hohe Wert des Zählersignals für eine Periode von 24 Zyklen des eingestellten Hochgeschwindigkeits-Taktsignals 412 fortbestehen, und der niedrige Wert des Zählersignals 431 kann für eine Periode von 24 Zyklen des eingestellten Hochgeschwindigkeitstakts fortbestehen. In alternativen Ausführungsformen kann der Tastgrad des Zählersignals 431 in Abhängigkeit von der Konfiguration der Schaltung höher oder niedriger sein.
  • Bei einer Schaltung wie derjenigen, die in 4A und 4B dargestellt ist, kann eine Gattersteuerungs-Taktspanne die Verwendung eines Hochgeschwindigkeitstakts in Verbindung mit einer Zählerschaltung einschränken. Die Gattersteuerungs-Taktspanne kann eine Periode eines Gattersteuersignals definieren, innerhalb derer ein Taktübergang erfolgt, damit eine Empfangsschaltung einen Wert des Gattersteuersignals richtig liest. Wie in 4B gezeigt, kann eine Taktspanne in Form eines Taktzyklus oder eines Bruchteils eines Taktzyklus gegeben sein. Beispielsweise kann die Taktspanne eine Länge von ½ Taktzyklus aufweisen.
  • Ausführungsformen, die auf die Erzeugung eines asynchronen Zählersignals ausgerichtet sind, das mit einem Roh-Taktsignal synchron ist, sind hierin beschrieben. In solchen Ausführungsformen kann das asynchrone Zählersignal synchron mit dem Roh-Taktsignal in dem Sinne sein, dass die Takt-zu-Ausgang-Verzögerung von einem Übergang des Taktsignals gleich oder ähnlich lang ist wie die Takt-zu-Ausgang-Verzögerung einer synchronen Zählerschaltung, die eingerichtet ist, um das gleiche Zählersignal zu erzeugen. Außerdem kann die von der implementierten Schaltung eingeführte Takt-zu-Ausgang-Verzögerung selbst für Schaltungen, die Ausgaben mit unterschiedlichen Frequenzen erzeugen, konsistent sein. Mit anderen Worten kann gesagt werden, dass das asynchrone Zählersignal mit dem rohen HochgeschwindigkeitsHochgeschwindigkeitstakt „abgeglichen“ wird.
  • Das Roh-Taktsignal und das asynchrone Zählersignal können durch Einstellen des Roh-Taktsignals oder des asynchronen Zählersignals abgeglichen werden. Dies kann zum Beispiel durch Hinzufügen einer Verzögerung entlang eines oder beider Signalwege erreicht werden. In einer Ausführungsform können zum Einstellen des Roh-Taktsignals ein oder mehrere digitale Puffer verwendet werden, um die Ausbreitungsverzögerung zu replizieren, die aufgrund der Vielzahl von Teile-durch-N-Stufen in den Asynchronzähler eingeführt wird. Bei einer solchen Lösung kann die Verzögerungsreplik unter Verwendung einer Kette von Inverter-Gattern eingerichtet sein, die unterschiedlich groß sind und verschiedene Verzögerungswerte aufweisen.
  • 5 stellt eine Darstellung einer Verzögerungsreplik dar, die mit Ausgängen auf Stufen gezeigt ist, die eingerichtet sind, um mit den Verzögerungswerten verschiedener Teile-durch-N-Signale übereinzustimmen. Wie gezeigt, ist die Verzögerungsreplik 500 eine Schaltung, die sechs derartige Stufen aufweist. Für eine erste Stufe kann die Verzögerungsreplik 500 drei Inverter aufweisen, die eingerichtet sind, um mit der Takt-zu-Ausgang-Verzögerung eines Asynchronzählers übereinzustimmen, der ein DIV5-Signal ausgibt. Für eine zweite Stufe können weitere zwei Inverter eingerichtet sein, um eine Verzögerung zu erzeugen, die einer DIV5-Asynchronzählerausgabe entspricht. Verschiedene nachfolgende Konfigurationen von Invertern können gegeben sein, um eine Verzögerung zu erzeugen, die DIV40-, DIV80- und DIV160-Asynchronzählerausgaben entspricht.
  • Wie in dem Beispiel von 5 gezeigt, kann jedes der Inverter-Gatter ein CMOS-Inverter sein, der komplementäre MOSFETs vom p-Typ und n-Typ, PMOS und NMOS, aufweist. Jeder Inverter kann mit einem Beta-Verhältnis eingerichtet sein, das als eine Größe des PMOS, geteilt durch eine Größe des NMOS, definiert ist, beispielsweise 2,5 1
    Figure DE102020116191A1_0001
    oder 2,15 0,86
    Figure DE102020116191A1_0002
    wie gezeigt. Ein CMOS-Inverter kann auch einen gegebenen Fan-out-Wert aufweisen, der auf eine Anzahl an Gattern, die durch den Inverter angesteuert werden, in Bezug auf eine Stärke eines den Inverter ansteuernden Gatters Bezug nehmen kann. Fan-out-Werte, die den drei Invertern der DIV5-Verzögerungsstufe entsprechen, sind in 5 beispielhaft als 3, 1,83 und 4 dargestellt. Der Verzögerungswert kann von dem eingerichteten Beta-Verhältnis und den eingerichteten Fan-out-Werten abhängen, und dementsprechend kann es notwendig sein, die Größe des PMOS und des NMOS sorgfältig zu bemessen und eine Verzögerungskette mit einer geeigneten Anzahl an Gattern einzurichten, um den gewünschten Betrag an Verzögerung einzuführen.
  • In bestimmten Implementierungen, wie allgemein in den vorstehenden Absätzen erörtert, kann es schwierig sein, den Betrag an Ausbreitungsverzögerung vorherzusagen, der von einer Verzögerungsreplik eingeführt werden soll. Ferner kann es aufgrund der möglichen Komplexität der Verzögerungsreplik (d. h. der großen Anzahl an Invertern, die möglicherweise benötigt wird) schwierig sein, die Konfiguration präzise zu bestimmen, um diesen Betrag an Verzögerung zu simulieren. Somit kann in einigen Fällen eine andere Lösung, die mehr Flexibilität und Einfachheit bietet, wünschenswert sein.
  • Ausführungsformen, die auf die Erzeugung einer asynchronen Zählerausgabe ausgerichtet sind, die mit einem Roh-Taktsignal synchron ist, sind hierin beschrieben. Bei einer Lösung kann eine Schaltung dies durch Verwenden eines Schieberegisters erreichen, um einen Basisborgetakt mit einer vorher festgelegten Frequenz zu erzeugen. Ein Taktteiler mit einer oder mehreren Stufen von Teile-durch-N-Zählern kann verwendet werden, um Zählersignale von dem Basisborgetakt mit nachfolgenden Zielfrequenzen abzuleiten. Jede Teile-durch-N-Zählerstufe kann intrinsisch eine Takt-zu-Ausgang-Verzögerung einführen. Die Länge der Takt-zu-Ausgang-Verzögerung kann in Form eines Zyklus des Roh-Takts vorliegen. Beispielsweise kann angenommen werden, dass die Takt-zu-Ausgang-Verzögerung kleiner als ein Taktzyklus oder eine Hälfte eines Taktzyklus ist. Der Roh-Takt kann ein einseitig gerichtetes Signal oder Differenzsignale, die komplementär zueinander sind, erzeugen, und hierin beschriebene Schaltungsanordnungskomponenten, die eingerichtet sind, um einen Übergang des Taktsignals zu lesen, können das einseitig gerichtete Signal oder eines der zwei Differenzsignale lesen.
  • 6A und 6B sind Diagramme, die eine beispielhafte Konfiguration zeigen, die verwendet wird, um ein DIV48-Zählersignal zu erzeugen, das mit einem Hochgeschwindigkeitstakt synchron ist. Insbesondere zeigt 6A ein Beispiel eines Schieberegisters 610, das eingerichtet ist, um aus einem Roh-Taktsignal ein DIV12-Basisborgetaktsignal zu erzeugen. Das Schieberegister 610 kann eine Vielzahl von Flip-Flops 611, 612, 613, 614, 615 und 616 aufweisen. Wie gezeigt, kann jedes Flip-Flop von dem Roh-Taktsignal CLK angesteuert werden, und somit kann gesagt werden, dass ihre Ausgänge synchron miteinander sind. Jedes Flip-Flop kann ein D-Flip-Flop sein, das mit einem binären Eingang D und binären Ausgängen Q und Qn eingerichtet ist. Die Flip-Flops können in einer Weise mit seriellem Eingang und seriellem Ausgang derart angeordnet sein, dass jedes nachfolgende Flip-Flop den Ausgang Q eines vorherigen Flip-Flops in der Reihe als Eingang, D, nimmt. Wie gezeigt, kann jedes Flip-Flop des Schieberegisters 610 Eingangsdaten D auf einer steigenden Flanke des Taktsignals CLK an seinen Ausgang Q übertragen. Ferner kann das erste Flip-Flop 611 der Reihe auch das Komplement, Qn, des Ausgangs des letzten Schieberegisters 616 als seinen Eingang D nehmen, wie bei einer Ring-, Twisted-Ring- oder Johnson-Zählerkonfiguration. Für Ausführungsformen, die eine Ring-, Twisting-Ring- oder Johnson-Zählerkonfiguration implementieren, sei hervorgehoben, dass das Roh-Taktsignal CLK in jedes Flip-Flop der Reihe eingespeist werden kann, im Unterschied zu einer Ripple-Carry-Zählerkonfiguration, bei der jedes Flip-Flop einen Ausgang eines vorherigen Flip-Flops als seinen Takteingang annimmt. Wie gezeigt, kann jedes Flip-Flop auch einen Rücksetzsignaleingang, Rn, aufweisen, mit dem der Ausgang des Flip-Flops unabhängig von dem Eingang D oder dem Taktsignal auf einen Setz- oder Rücksetzzustand gesetzt werden kann. In nicht dargestellten Ausführungsformen kann jedes Flip-Flop als Alternative zu dem Rücksetzsignaleingang oder zusätzlich zu dem Rücksetzsignaleingang einen Initialisierungseingang aufweisen.
  • Es kann angenommen werden, dass ein initialisierter Q-Wert für alle Flip-Flops 0 beträgt. Beginnend bei der Ankunft eines ersten Taktimpulses und fortfahrend für die ersten sechs Taktimpulse, kann eine Qn-Ausgabe von 1 aus Flip-Flop 616 in den Eingang von Flip-Flop 611 eingespeist werden. Bei Ankunft eines zweiten Taktimpulses kann Flip-Flop 611 den ausgegebenen Q-Wert 1 an den Eingang D von Flip-Flop 612 weiterleiten. Flip-Flop 612 kann diesen anschließend bei dem dritten Taktimpuls an Flip-Flop 613 weiterleiten, und die Flip-Flops 614 und 615 können auf ähnliche Weise nachfolgen. In diesem Beispiel beträgt nach sechs Taktimpulsen der Wert Q an allen Flip-Flops 1.
  • Beginnend bei der Ankunft eines siebten Taktimpulses und fortfahrend bis zur Ankunft eines zwölften Taktimpulses, kann eine Qn-Ausgabe von 0 aus Flip-Flop 616 in den Eingang von Flip-Flop 611 eingespeist werden. Das Vorrücken des Schieberegisters kann im Wesentlichen wie vorstehend beschrieben derart erfolgen, dass das Muster bei Ankunft eines dreizehnten Taktimpulses wiederholt wird.
  • Wie zu beobachten ist, kann aufgrund des zyklischen Wesens der Twisted-Ring-Zählerkonfiguration eine Reihe von n Flip-Flops verwendet werden, um einen Basisborgetakt mit einer Periode von 2n zu erzeugen. In alternativen Ausführungsformen kann das Schieberegister eine gerade serielle Konfiguration aufweisen, wobei stattdessen einfach die Ausgabe eines ersten Flip-Flops an das nächste weitergeleitet wird, ohne dass die Eingänge von dem letzten Flip-Flop der Reihe aus zyklisch durchlaufen werden.
  • 6B zeigt ferner eine beispielhafte Konfiguration der Taktteilerschaltung, wie sie eingerichtet sein kann, um ein DIV48-Zählersignal unter Verwendung eines ausgewählten Ausgangs des Schieberegisters 610 zu erzeugen. Taktteiler 620 kann eine Reihe von Teile-durch-2-Zählern 621 und 623 und Flip-Flops 622 und 624 einschließen. In den gegebenen Beispielen kann angenommen werden, dass die Takt-zu-Ausgang-Verzögerung für jede Teilungsstufe gleich oder kleiner als eine Länge eines Roh-Takt-Zyklus ist. In einigen Ausführungsformen kann die von jedem der Flip-Flops eingeführte Takt-zu-Ausgang-Verzögerung auch größer als ein Halbzyklus sein, wodurch ein vorhersagbares Zeitfenster bereitgestellt wird, zu dem die Taktteilerschaltung eingerichtet sein kann, um mit dem Umschalten des Roh-Takts zu beginnen oder damit aufzuhören. In Ausführungsformen, wie gezeigt, können die Zähler 621 und 623 und die Flip-Flops 622 und 624 jeweils einen Rücksetzsignaleingang, Rn, und/oder einen Initialisierungssignaleingang aufweisen, mit denen ihre Ausgänge unabhängig von dem Eingang D oder dem Taktsignal auf einen Setz- oder Rücksetzzustand gesetzt werden können.
  • Um die Zeitsteuerung des letzten Ausgangssignals des Asynchronzählers einzustellen, kann der Taktteiler 620 aus dem von dem Schieberegister 610 erzeugten Basisborgetakt Zyklen „borgen“. Angesichts der Tatsache, dass das Schieberegister 610 ein DIV12-Signal erzeugt und ein DIV48-Zählersignal erwünscht ist, kann bestimmt werden, dass zwei Teile-durch-2-Stufen benötigt werden. Da jede Stufe eine Instanz einer Takt-zu-Ausgang-Verzögerung einführen kann, müssen möglicherweise zwei Zyklen geborgt werden. Dies kann zum Beispiel erreicht werden, indem der Taktteiler eingerichtet wird, um ein Ausgangssignal eines bestimmten Flip-Flops in dem Schieberegister anzunehmen. Standardmäßig (d. h., wenn das DIV12-Signal ohne Borgen verwendet werden soll) kann der Ausgang des letzten Flip-Flops des Schieberegisters verwendet werden, um den Taktteiler anzusteuern. Für ein DIV12-Signal, wie gezeigt, das eine Periode von zwölf Roh-Takt-Zyklen aufweist, kommt der erste Übergang des DIV12-Signals nach sechs Roh-Takt-Zyklen an. In dem in 6 gezeigten Beispiel kann jedoch, wenn zwei Taktzyklen geborgt werden sollen, die Ausgabe DIV12<3> des vierten Flip-Flops 614 verwendet werden, um die Taktteilerschaltung 620 anzusteuern, wodurch effektiv die Ankunft des ersten Übergangs des DIV48-Signals nach nur vier Roh-Takt-Zyklen anstatt sechs festgelegt wird.
  • Weiterhin die Taktteilerschaltung beschreibend, ist ein erster Teile-durch-2-Zähler 621 der Reihe eingerichtet, um das DIV12<3>-Signal als seinen Takteingang anzunehmen. Zähler 621 nimmt als seinen Dateneingang, D, das Komplement seines Ausgangs, Qn. Wie gezeigt, kann der erste Zähler 621 im Allgemeinen eingerichtet sein, um bei Auslösung durch eine abfallende Flanke des DIV12<3>-Signals einen Ausgang, Q, zu erzeugen. Der Ausgang, Q, der eine Frequenz von der Hälfte von derjenigen des DIV12-Eingangs aufweist, ist als DIV24pre gezeigt kann unabhängig von dem Eingang D oder dem Taktsignal auf einen Setz- oder Rücksetzzustand gesetzt werden.
  • Wie gezeigt, nimmt Flip-Flop 622 anschließend das DIV24pre-Signal des Zählers 621 als seinen Eingang, D, an. Im Unterschied zu dem Zähler 621 liest Flip-Flop 622 den Wert des eingegebenen DIV24pre-Signals bei Auslösung des Roh-Taktsignals. Somit fängt Flip-Flop 622 effektiv den Wert des DIV24pre-Signals auf mit dem Roh-Takt synchrone Weise auf. Dies hat auch den Effekt, dass die Zeitsteuerung des DIV24-Signals um einen Taktzyklus in Bezug auf das DIV24pre-Signal vorgerückt wird. Die erste Flanke der DIV24-Ausgabe von Flip-Flop 622 kommt unmittelbar nach dem elften Taktzyklus an.
  • Ein zweiter Teile-durch-2-Zähler 623 ist eingerichtet, um den Ausgang des Flip-Flops 622 als seinen Takt anzunehmen. Wie gezeigt, kann der Zähler 623 eingerichtet sein, um bei Auslösung durch eine abfallende Flanke des DIV24-Signals einen Ausgang, Q, zu erzeugen. Zähler 623 teilt das DIV24-Signal auf ähnliche Weise wie Zähler 621, wobei er als seinen Eingang, D, das Komplement, Qn, seines Ausgangs nimmt. Wie gezeigt, teilt der Zähler das DIV24-Signal, um ein DIV48pre-Signal zu erzeugen.
  • Wie gezeigt, nimmt Flip-Flop 624 anschließend das DIV48pre-Signal des Zählers 622 als seinen Eingang, D, an. Flip-Flop 624 liest dann den Wert des eingegebenen DIV48pre-Signals bei Auslösung des Roh-Taktsignals und fängt somit den Wert des DIV48-Zählers auf mit dem Roh-Takt synchrone Weise auf. Dies kann zum Vorrücken der Zeitsteuerung des DIV48-Signals in Bezug auf das DIV48pre-Signal um wiederum einen Taktzyklus führen. Zu diesem Zeitpunkt kommt, da die Taktteilerschaltung die Zeitsteuerung der Ausgabe um insgesamt zwei Zyklen vorgerückt hat, die erste Flanke der DIV48-Ausgabe von Flip-Flop 624 unmittelbar nach dem vierundzwanzigsten Taktzyklus an.
  • 6C stellt die Zeitsteuerung der in den vorstehenden Absätzen beschriebenen Signale ausführlicher dar. Die DIV24-Signalausgabe von Flip-Flop 622 kann bei einem Übergang des CLK-Signals umschalten. In Ausführungsformen kann der Übergang eine steigende Flanke oder eine abfallende Flanke sein, wie gezeigt ist. Beim Erzeugen des DIV24-Signals kann das Flip-Flop 622 eine Verzögerung 631 relativ zu einem Übergang des CLK einführen. Die Verzögerung 631 von dem CLK-Übergang zu entweder einer steigenden oder einer abfallenden Flanke des DIV24-Signals kann gleich sein. Anschließend erzeugt der Teile-durch-2-Zähler 623 eine Ausgabe DIV48pre aus dem DIV24-Zählersignal unter Einführung einer Verzögerung 632. Bei 633 tastet jedoch Flip-Flop 624 das DIV48pre-Signal beim Übergang des CLK ab, was zu einer Takt-zu-Ausgang-Verzögerung 634 führt. Die Takt-zu-Ausgang-Verzögerung 634 kann die gleiche wie die Takt-zu-Ausgang-Verzögerung 632 sein. Obwohl nicht dargestellt, ist ersichtlich, dass das Basisborgetaktsignal DIV12 und das Ableitungszählersignal DIV24pre sich auf ähnliche Weise ausbreiten können wie das DIV24- und das DIV48pre-Signal.
  • 6D zeigt simulierte Wellenformen für die in den Absätzen 6A bis 6C beschriebenen Signale. Die Signale INB und IN stellen das Umschalten des rohen differenziellen Takteingangssignals, CLK, dar, wie vorstehend beschrieben. Wie gezeigt, können INB und IN komplementäre Signale sein. Ebenfalls gezeigt sind das Basisborgetaktsignal DIV12<3>, das DIV24pre- und das DIV24-Signal und das DIV48pre- und das DIV48-Signal. Wie zu sehen ist, wird das DIV12<3>-Signal so modifiziert, dass es nach nur vier Roh-Takt-Zyklen anstatt sechs von einem niedrigen Wert zu einem hohen Wert umschaltet, wobei zwei Taktzyklen in Vorbereitung auf die zwei nachfolgenden Teilungsstufen geborgt werden.
  • 641 und 642 stellen die nach den zwei Teilungsstufen eingeführte Takt-zu-Ausgang-Verzögerung dar. Bei 641, entsprechend dem ersten der zwei geborgten Taktzyklen, wird die Zeitsteuerung des DIV24-Signals um einen Zyklus in Bezug auf das DIV24pre-Signal vorgerückt, wenn der Wert des DIV24pre-Signals gelesen wird. Da dies beim Übergang des Roh-Takts erfolgt, kann die DIV24-Ausgabe die gleiche Takt-zu-Ausgang-Verzögerung relativ zu dem Roh-Takt aufweisen, wie ein synchroner Teile-durch-2-Zähler es würde. In ähnlicher Weise wird bei 642, entsprechend dem zweiten der zwei geborgten Taktzyklen, die Zeitsteuerung des DIV48-Signals wiederum um einen Zyklus in Bezug auf das DIV48pre-Signal vorgerückt, wenn das DIV48pre-Signal beim Übergang des Roh-Takts gelesen wird.
  • 7A bis 7D stellen ein anderes Beispiel einer asynchronen Zählerschaltung bereit, die eingerichtet ist, um ein synchrones DIV160-Zählersignal zu erzeugen. 7A zeigt einen Schaltplan eines Schieberegisters 710, das eingerichtet ist, um aus einem Roh-Taktsignal ein DIV10-Basisborgetaktsignal zu erzeugen. Das Schieberegister 710 kann eine Vielzahl von Flip-Flops 711, 712, 713, 714 und 715 aufweisen. Wie gezeigt, kann jedes Flip-Flop von dem Roh-Taktsignal CLK angesteuert werden, und somit kann gesagt werden, dass ihre Ausgänge synchron miteinander sind. Jedes Flip-Flop kann ein D-Flip-Flop sein, das mit einem binären Eingang D und binären Ausgängen Q und Qn eingerichtet ist. Die Flip-Flops können in einer Weise mit seriellem Eingang und seriellem Ausgang derart angeordnet sein, dass jedes nachfolgende Flip-Flop den Ausgang Q eines vorherigen Flip-Flops in der Reihe als Eingang, D, nimmt. Wie gezeigt, kann jedes Flip-Flop des Schieberegisters 710 Eingangsdaten D auf einer steigenden Flanke des Taktsignals CLK an seinen Ausgang Q übertragen. Ferner kann das erste Flip-Flop 711 der Reihe auch das Komplement, Qn, des Ausgangs des letzten Schieberegisters 715 als seinen Eingang D nehmen, wie in einer Twisted-Ring- oder Johnson-Zählerkonfiguration. Wie gezeigt, kann jedes Flip-Flop auch einen Rücksetzsignaleingang, Rn, aufweisen, mit dem der Ausgang des Flip-Flops unabhängig von dem Eingang D oder dem Taktsignal auf einen Setz- oder Rücksetzzustand gesetzt werden kann. In nicht dargestellten Ausführungsformen kann jedes Flip-Flop als Alternative zu dem Rücksetzsignaleingang oder zusätzlich zu dem Rücksetzsignaleingang einen Initialisierungseingang aufweisen.
  • Es kann angenommen werden, dass ein initialisierter Q-Wert für alle Flip-Flops 0 beträgt. Beginnend bei der Ankunft eines ersten Taktimpulses und fortfahrend für die ersten fünf Taktimpulse, kann eine Qn-Ausgabe von 1 aus Flip-Flop 715 in den Eingang von Flip-Flop 711 eingespeist werden. Bei Ankunft eines zweiten Taktimpulses kann Flip-Flop 711 den ausgegebenen Q-Wert 1 an den Eingang D von Flip-Flop 712 weiterleiten. Flip-Flop 712 kann diesen anschließend bei dem dritten Taktimpuls zu Flip-Flop 713 weiterleiten, und die Flip-Flops 714 und 715 können dem Beispiel in ähnlicher Weise folgen. In diesem Beispiel beträgt nach fünf Taktimpulsen der Wert Q an allen Flip-Flops 1.
  • Beginnend bei der Ankunft eines sechsten Taktimpulses und fortfahrend bis zur Ankunft eines zehnten Taktimpulses, kann eine Qn-Ausgabe von 0 aus Flip-Flop 715 in den Eingang von Flip-Flop 711 eingespeist werden. Das Vorrücken des Schieberegisters kann im Wesentlichen wie vorstehend beschrieben derart erfolgen, dass das Muster bei Ankunft eines elften Taktimpulses wiederholt wird.
  • Wie zu beobachten ist, kann aufgrund des zyklischen Wesens der Twisted-Ring-Zählerkonfiguration eine Reihe von n Flip-Flops verwendet werden, um einen Basisborgetakt mit einer Periode von 2n zu erzeugen. In alternativen Ausführungsformen kann das Schieberegister eine gerade serielle Konfiguration aufweisen, wobei stattdessen einfach die Ausgabe eines ersten Flip-Flops an das nächste weitergeleitet wird, ohne dass die Eingänge von dem letzten Flip-Flop der Reihe aus zyklisch durchlaufen werden.
  • 7B zeigt ferner eine beispielhafte Konfiguration der Taktteilerschaltung, wie sie eingerichtet sein kann, um ein DIV160-Zählersignal unter Verwendung eines ausgewählten Ausgangs des Schieberegisters 710 zu erzeugen. Taktteiler 720 kann eine Reihe von Teile-durch-2-Zählern 721, 723, 725 und 727 und Flip-Flops 722, 724, 726 und 728 einschließen. In den gegebenen Beispielen kann angenommen werden, dass die Takt-zu-Ausgang-Verzögerung für jede Teilungsstufe gleich oder kleiner als eine Länge eines Roh-Takt-Zyklus ist. In Ausführungsformen, wie gezeigt, können die Zähler 721, 723, 725 und 727 und die Flip-Flops 722, 724, 726 und 728 jeweils einen Rücksetzsignaleingang, Rn, und/oder einen Initialisierungssignaleingang aufweisen, mit denen ihre Ausgänge unabhängig von dem Eingang D oder dem Taktsignal auf einen Setz- oder Rücksetzzustand gesetzt werden können.
  • Um die Zeitsteuerung des letzten Ausgangssignals des Asynchronzählers einzustellen, kann der Taktteiler 720 aus dem von dem Schieberegister 710 erzeugten Basisborgetakt Zyklen borgen. Angesichts der Tatsache, dass das Schieberegister 710 ein DIV10-Signal erzeugt und ein DIV160-Zählersignal erwünscht ist, kann bestimmt werden, dass vier Teile-durch-2-Stufen benötigt werden. Da jede Stufe eine Instanz einer Takt-zu-Ausgang-Verzögerung einführen kann, müssen möglicherweise vier Zyklen geborgt werden. Dies kann zum Beispiel erreicht werden, indem der Taktteiler eingerichtet wird, um ein Ausgangssignal eines bestimmten Flip-Flops in dem Schieberegister anzunehmen. Standardmäßig (d. h., wenn das DIV10-Signal ohne Borgen verwendet werden soll) kann der Ausgang des letzten Flip-Flops des Schieberegisters verwendet werden, um den Taktteiler anzusteuern. Für ein DIV10-Signal, wie gezeigt, das eine Periode von zehn Roh-Takt-Zyklen aufweist, kommt der erste Übergang des DIV10-Signals nach fünf Roh-Takt-Zyklen an. In dem in 7 gezeigten Beispiel kann jedoch, wenn zwei Taktzyklen geborgt werden sollen, die Ausgabe DIV10<0> des zweiten Flip-Flops 712 verwendet werden, um die Taktteilerschaltung 720 anzusteuern, wodurch effektiv die Ankunft des ersten Übergangs des DIV48-Signals nach nur sechs Roh-Takt-Zyklen anstatt zehn festgelegt wird.
  • Weiterhin die Taktteilerschaltung beschreibend, ist ein erster Teile-durch-2-Zähler 721 der Reihe eingerichtet, um das DIV10<0>-Signal als seinen Takteingang anzunehmen. Zähler 721 nimmt als seinen Dateneingang, D, das Komplement seines Ausgangs, Qn. Wie gezeigt, kann der erste Zähler 721 im Allgemeinen eingerichtet sein, um bei Auslösung durch eine abfallende Flanke des DIV10<0>-Signals einen Ausgang, Q, zu erzeugen. Der Ausgang, Q, der eine Frequenz von der Hälfte von derjenigen des DIV10-Eingangs aufweist, ist als DIV20pre gezeigt kann unabhängig von dem Eingang D oder dem Taktsignal auf einen Setz- oder Rücksetzzustand gesetzt werden.
  • Wie gezeigt, nimmt Flip-Flop 722 anschließend das DIV20pre-Signal des Zählers 721 als seinen Eingang, D, an. Im Unterschied zu dem Zähler 721 liest Flip-Flop 722 den Wert des eingegebenen DIV20pre-Signals bei Auslösung des Roh-Taktsignals. Somit fängt Flip-Flop 722 effektiv den Wert des DIV20pre-Zählers auf mit dem Roh-Takt synchrone Weise auf. Die Zeitsteuerung des DIV20-Signals wird um einen Taktzyklus in Bezug auf das DIV20pre-Signal vorgerückt. Die erste Flanke der DIV20-Ausgabe von Flip-Flop 722 kommt unmittelbar nach dem siebten Taktzyklus an.
  • Die folgenden zwei Teilungsstufen, die von den Zählern 723 und 725 und den Flip-Flops 724 und 726 durchgeführt werden, können auf ähnliche Weise ausgeführt werden, wie vorstehend für Zähler 721 und Flip-Flop 722 beschrieben.
  • Ein vierter und letzter Teile-durch-2-Zähler 727 ist eingerichtet, um den Ausgang des Flip-Flops 726 als seinen Takt anzunehmen. Wie gezeigt, kann der Zähler 727 eingerichtet sein, um bei Auslösung durch eine abfallende Flanke des DIV80-Signals einen Ausgang, Q, zu erzeugen. Zähler 727 teilt das DIV80-Signal auf ähnliche Weise wie die Zähler 721, 723 und 725, wobei er als seinen Eingang, D, das Komplement, Qn, seines Ausgangs nimmt. Wie gezeigt, teilt der Zähler das DIV80-Signal, um ein DIV160pre-Signal zu erzeugen.
  • Wie gezeigt, nimmt das vierte und letzte Flip-Flop 728 anschließend das DIV160pre-Signal des Zählers 727 als seinen Eingang, D, an. Flip-Flop 728 liest dann den Wert des eingegebenen DIV160pre-Signals bei Auslösung des Roh-Taktsignals und fängt somit den Wert auf mit dem Roh-Takt synchrone Weise auf. Entsprechend dem vierten der vier von dem Basisborgetakt geborgten Zyklen wird das DIV160-Signal um einen Taktzyklus in Bezug auf das DIV160pre-Signal derart vorgerückt, dass die erste Flanke der DIV160-Ausgabe von Flip-Flop 728 unmittelbar nach dem achtzehnten Taktzyklus ankommt.
  • 7C stellt die Zeitsteuerung der in den vorstehenden Absätzen beschriebenen Signale ausführlicher dar. Die DIV20-Signalausgabe von Flip-Flop 722 kann bei einem Übergang des CLK-Signals umschalten. In Ausführungsformen kann der Übergang eine steigende Flanke oder eine abfallende Flanke sein, wie gezeigt ist. Beim Erzeugen des DIV20-Signals kann das Flip-Flop 722 eine Verzögerung 731 relativ zu einem Übergang des CLK einführen. Die Verzögerung 731 von dem CLK-Übergang zu entweder einer steigenden oder einer abfallenden Flanke des DIV20-Signals kann gleich sein. Anschließend erzeugt der Teile-durch-2-Zähler 723 eine Ausgabe DIV40pre aus dem DIV20-Zählersignal unter Einführung einer Verzögerung 732. Bei 733 tastet jedoch Flip-Flop 724 das DIV40pre-Signal beim Übergang des CLK ab, was zu einer Takt-zu-Ausgang-Verzögerung 734 führt. Die Takt-zu-Ausgang-Verzögerung 734 kann die gleiche oder ähnlich wie die Takt-zu-Ausgang-Verzögerung 732 sein. Obwohl nicht dargestellt, ist ersichtlich, dass das Basisborgetaktsignal DIV10, die Ableitungszählersignale DIV20pre, DIV20, DIV40pre und DIV40 sich auf ähnliche Weise ausbreiten können wie das DIV80- und das DIV160pre-Signal.
  • 7D zeigt simulierte Wellenformen für die in den Absätzen 7A bis 7C beschriebenen Signale. Die Signale INB und IN stellen das Umschalten des rohen differenziellen Takteingangssignals, CLK, dar, wie vorstehend beschrieben. Wie gezeigt, können INB und IN komplementäre Signale sein. Ebenfalls gezeigt sind das Basisborgetakt - signal DIV10<0>, das DIV20pre- und das DIV20-Signal, das DIV40pre und das DIV40, das DIV80pre- und das DIV80-Signal und das DIV160pre- und das DIV160-Signal. Wie zu sehen ist, wird das DIV10<0>-Signal so modifiziert, dass es nach nur sechs Roh-Takt-Zyklen anstatt zehn von einem niedrigen Wert zu einem hohen Wert umschaltet, wobei vier Taktzyklen in Vorbereitung auf die vier nachfolgenden Teilungsstufen geborgt werden.
  • 741, 742, 743 und 744 stellen die nach den vier Teilungsstufen eingeführte Takt-zu-Ausgang-Verzögerung dar. Bei 741, entsprechend dem ersten der vier geborgten Taktzyklen, wird die Zeitsteuerung des DIV20-Signals um einen Taktzyklus in Bezug auf das DIV20pre-Signal vorgerückt, wenn der Wert des DIV20pre-Signals gelesen wird. Da dies beim Übergang des Roh-Takts erfolgt, kann die DIV20-Ausgabe die gleiche Takt-zu-Ausgang-Verzögerung relativ zu dem Roh-Takt aufweisen, wie eine Ausgabe eines synchronen Teile-durch-2-Zähler es würde. Bei 742, 743 und 744, entsprechend den übrigen drei geborgten Taktzyklen, wird die Zeitsteuerung des DIV40-, des DIV80- und des DIV160-Signalsjeweils auf ähnliche Weise um einen Taktzyklus in Bezug auf das DIV40pre-, das DIV80pre- und das DIV160pre-Signal vorgerückt.
  • Obwohl Merkmale und Elemente vorstehend in bestimmten Kombinationen beschrieben sind, wird der Fachmann erkennen, dass jedes Merkmal oder Element allein oder in einer beliebigen Kombination mit den anderen Merkmalen und Elementen verwendet werden kann.

Claims (22)

  1. Asynchrone Zählerschaltung, aufweisend: ein Schieberegister, aufweisend eine Reihe von Flip-Flops, wobei jedes der Flip-Flops der Reihe mit einem Taktgeber gekoppelt ist, wobei das Schieberegister unter Verwendung eines Ausgangs eines Flip-Flops des Schieberegisters ein Borgetaktsignal erzeugt, wobei ein Übergang des Borgetaktsignals basierend auf einer Position des Flip-Flops des Schieberegisters um eine Anzahl an Taktzyklen vorgerückt wird; und eine Taktteilerschaltung, aufweisend eine Anzahl an Teile-durch-N-Zählern und eine Anzahl an Flip-Flops, wobei ein Teile-durch-N-Zähler mit einem Flip-Flop des Schieberegisters gekoppelt ist, und wobei ein Flip-Flop der Taktteilerschaltung mit einem der Teile-durch-N-Zähler und mit dem Taktgeber gekoppelt ist.
  2. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei ein Ausgangssignal der Taktteilerschaltung synchron mit dem Takt ist.
  3. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei die Anzahl an Teile-durch-N-Zählern die gleiche wie die Anzahl an Taktsignalzyklen ist.
  4. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei die Teile-durch-N-Zähler und die Flip-Flops der Taktteilerschaltung in abwechselnder Folge angeordnet sind, wobei die abwechselnde Folge mit einem der Teile-durch-N-Zähler beginnt.
  5. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei die Reihe von Flip-Flops des Schieberegisters in einer Twisted-Ring-Zählerkonfiguration angeordnet ist.
  6. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei die Anzahl an Teile-durch-N-Zählern und die Anzahl an Flip-Flops der Taktteilerschaltung gleich sind.
  7. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei die Teile-durch-N-Zähler der Taktteilerschaltung jeweils Teile-durch-2-Zähler sind, und wobei die Teile-durch-2-Zähler jeweils als Datensignaleingang ein Komplement ihrer Ausgangssignale annehmen.
  8. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei das Schieberegister eine Vielzahl von Borgetaktsignalen unter Verwendung eines Ausgangs von jedem einer Vielzahl von Flip-Flops des Schieberegisters erzeugt, und wobei für jedes der Borgetaktsignale ein Übergang eines Borgetaktsignals basierend auf einer Position eines Flip-Flops des Schieberegisters um eine Anzahl an Taktzyklen vorgerückt wird.
  9. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei die Teile-durch-N-Zähler und die Flip-Flops der Taktteilerschaltung in einer Vielzahl von abwechselnden Folgen angeordnet sind, wobei jede der abwechselnden Folgen mit einem ersten Teile-durch-N-Zähler beginnt, wobei der erste Teile-durch-N-Zähler in jeder der abwechselnden Folgen mit einem anderen Flip-Flop des Schieberegisters gekoppelt ist, und wobei ein letztes Flip-Flop in jeder der abwechselnden Folgen der Taktteilerschaltung mit einem vorhergehenden Teile-durch-N-Zähler in jeder der abwechselnden Folgen und mit dem Taktgeber gekoppelt ist.
  10. Asynchrone Zählerschaltung gemäß Anspruch 2, die mit einem oder mehreren Logikgattern gekoppelt ist, wobei das eine oder die mehreren Logikgatter eingerichtet sind, um einen Ausgang des Taktsignals unter Verwendung des Ausgangssignals der Taktteilerschaltung gatterzusteuern.
  11. Asynchrone Zählerschaltung gemäß Anspruch 1, wobei das Schieberegister und die Taktteilerschaltung ferner Initialisierungs- und Freigabeeingangsanschlüsse aufweisen.
  12. Asynchrone Zählerschaltung, aufweisend: Mittel zum Erzeugen eines Borgetaktsignals basierend auf einem Taktsignal, wobei ein Übergang des Borgetaktsignals um eine Anzahl an Taktsignalzyklen vorgerückt wird; Mittel zum Teilen des Borgetaktsignals in einer Anzahl an aufeinander folgenden Teilungsstufen, um ein Zählerausgangssignal zu erzeugen; und Mittel zum Abtasten des Zählerausgangssignals bei einem Übergang des Taktsignals.
  13. Asynchrone Zählerschaltung gemäß Anspruch 12, wobei das Mittel zum Abtasten des Zählerausgangssignals eingerichtet ist, um ein anderes Zählerausgangssignal zu erzeugen, das mit dem internen Taktsignal synchron ist.
  14. Asynchrone Zählerschaltung gemäß Anspruch 12, wobei die Anzahl an aufeinander folgenden Teilungsstufen die gleiche ist wie die Anzahl an Taktsignalzyklen.
  15. Asynchrone Zählerschaltung gemäß Anspruch 12, weiterhin aufweisend Mittel zum Abtasten des geteilten Borgetaktsignals für jede der Anzahl an aufeinander folgenden Teilungsstufen.
  16. Asynchrone Zählerschaltung gemäß Anspruch 12, weiterhin aufweisend Mittel zum Erzeugen einer Vielzahl von Borgetaktsignalen unter Verwendung des Taktsignals und zum Vorrücken, für jedes der Borgetaktsignale, eines Übergangs eines Borgetaktsignals um eine Anzahl an Taktzyklen.
  17. Asynchrone Zählerschaltung gemäß Anspruch 12, weiterhin aufweisend Mittel zum Teilen des Borgetaktsignals in einer Anzahl an aufeinander folgenden Teilungsstufen, um eine Vielzahl von Zählerausgangssignalen zu erzeugen, und Mittel zum Abtasten jedes der Zählerausgangssignale bei einem Übergang des Taktsignals.
  18. System, aufweisend: eine Zählerschaltung, die eingerichtet ist, um ein Taktsignal zu empfangen; eine Reihe von Logikgattern, die eingerichtet sind, um das Taktsignal und ein Ausgangssignal der Zählerschaltung zu empfangen; und eine einstellbare Verzögerungsschaltung, die eingerichtet ist, um eine Ausgabe der Reihe von Logikgattern zu empfangen.
  19. Schaltung gemäß Anspruch 18, wobei die Zählerschaltung eine asynchrone Zählerschaltung ist, und wobei das Ausgangssignal der asynchronen Zählerschaltung und das Taktsignal synchron sind.
  20. Schaltung gemäß Anspruch 18, wobei die Zählerschaltung eine synchrone Zählerschaltung ist, wobei die Reihe von Logikgattern eingerichtet ist, um das Taktsignal über eine Verzögerungskette zu empfangen, und wobei die Verzögerungskette und der synchrone Zähler einen gleichen Betrag an Ausbreitungsverzögerung in das Taktsignal einführen.
  21. Schaltung gemäß Anspruch 18, wobei die Reihe von Logikgattern eingerichtet ist, um das Taktsignal unter Verwendung des Ausgangssignals der Zählerschaltung gatterzusteuern.
  22. Schaltung gemäß Anspruch 21, weiterhin aufweisend einen Dateneingangsblock, der eingerichtet ist, um eine Ausgabe der einstellbaren Verzögerungsschaltung und ein Dateneingangssignal zu empfangen, wobei der Dateneingangsblock eingerichtet ist, um das Taktsignal basierend auf der Ausgabe der einstellbaren Verzögerungsschaltung einzustellen und einen Impuls des Dateneingangssignals bei einem Übergang des eingestellten Taktsignals abzutasten.
DE102020116191.3A 2020-03-10 2020-06-18 Zyklusborgezähler Pending DE102020116191A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/814,631 2020-03-10
US16/814,631 US11184007B2 (en) 2020-03-10 2020-03-10 Cycle borrowing counter

Publications (1)

Publication Number Publication Date
DE102020116191A1 true DE102020116191A1 (de) 2021-09-16

Family

ID=77457297

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020116191.3A Pending DE102020116191A1 (de) 2020-03-10 2020-06-18 Zyklusborgezähler

Country Status (3)

Country Link
US (1) US11184007B2 (de)
CN (1) CN113381750A (de)
DE (1) DE102020116191A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11284007B2 (en) * 2018-03-27 2022-03-22 Tactacam LLC Camera system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090180358A1 (en) 2008-01-10 2009-07-16 Oki Semiconductor Co., Ltd. Frequency corrector and clocking apparatus using the same
US10187082B1 (en) 2016-11-14 2019-01-22 Marvell International Ltd. Systems and methods for gray coding based error correction in an asynchronous counter
WO2019173821A1 (en) 2018-03-09 2019-09-12 Texas Instruments Incorporated Wobble reduction in an integer mode digital phase locked loop

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3753127A (en) 1971-12-27 1973-08-14 Singer Co Pseudosynchronous counter
US4002926A (en) 1975-10-02 1977-01-11 Hughes Aircraft Company High speed divide-by-N circuit
FR2492563B1 (fr) 1980-10-20 1986-08-14 Dassault Electronique Dispositif pour le comptage d'impulsions de frequence elevee
DE3806981A1 (de) 1988-03-03 1989-09-14 Siemens Ag Binaerzaehler
US5013944A (en) * 1989-04-20 1991-05-07 International Business Machines Corporation Programmable delay line utilizing measured actual delays to provide a highly accurate delay
US6566918B1 (en) 2001-08-28 2003-05-20 Xilinx, Inc. Divide-by-N clock divider circuit with minimal additional delay
WO2016064492A1 (en) 2014-10-20 2016-04-28 Ambiq Micro, Inc. Adaptive voltage converter
US9817047B2 (en) * 2015-10-13 2017-11-14 International Business Machines Corporation Duty cycle measurement

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090180358A1 (en) 2008-01-10 2009-07-16 Oki Semiconductor Co., Ltd. Frequency corrector and clocking apparatus using the same
US10187082B1 (en) 2016-11-14 2019-01-22 Marvell International Ltd. Systems and methods for gray coding based error correction in an asynchronous counter
WO2019173821A1 (en) 2018-03-09 2019-09-12 Texas Instruments Incorporated Wobble reduction in an integer mode digital phase locked loop

Also Published As

Publication number Publication date
CN113381750A (zh) 2021-09-10
US11184007B2 (en) 2021-11-23
US20210288652A1 (en) 2021-09-16

Similar Documents

Publication Publication Date Title
DE102008046831B4 (de) Ereignisgesteuerte Zeitintervallmessung
DE10102887B4 (de) Verzögerungsvorrichtung, die eine Verzögerungssperrschleife aufweist und Verfahren zum Kalibrieren derselben
DE4206082C1 (de)
DE19917320C2 (de) Taktgenerator für ein Halbleiter-Prüfsystem
DE10141939B4 (de) Flip-Flop-Schaltung zur taktsignalabhängigen Datenpufferung und diese enthaltender Signalhöhenkomparator
DE4326134B4 (de) Eingangswechseldetektorschaltung
EP1554803B1 (de) Verfahren und vorrichtung zum erzeugen eines taktsignals mit vorbestimmten taktsignaleigenschaften
DE10041048A1 (de) Nicht-Ganzzahliger Frequenzteiler
DE112004002222T5 (de) Taktwiedergewinnungsschaltung und Kommunikationsvorrichtung
DE112004001067B4 (de) Mehrtakterzeuger mit programmierbarer Taktverzögerung
DE10130122B4 (de) Verzögerungsregelkreis
DE112013003268T5 (de) Differenztaktsignalgenerator
DE2401334A1 (de) Synchronisationsstufe
DE10346559A1 (de) Dateninvertierungsschaltung und Halbleitervorrichtung
DE69821461T2 (de) Logische Schaltung mit eigener Takterzeugung und zugehöriges Verfahren
DE102020116191A1 (de) Zyklusborgezähler
DE4318422A1 (de) Integrierte Schaltung mit Registerstufen
DE19741915A1 (de) Zwischenspeicheroptimierung in Hardware-Logikemulations-Systemen
DE10150362A1 (de) Phasenselektor hoher Geschwindigkeit
DE60220338T2 (de) Schaltung und Methode zur Erzeugung eines verzögerten internen Taktsignals
DE3131897A1 (de) Steuersignal-multiplexschaltung
DE60214379T2 (de) Verfahren und vorrichtung für eine taktschaltung
DE19811591A1 (de) Taktsignal modellierende Schaltung mit negativer Verzögerung
DE112008003831B4 (de) Synchrone sequentielle Logikvorrichtung mit doppelt getriggerten Flipflops sowie eine Methode zum gezielt zeitversetzten Triggern solcher zustandsspeichernden Register
DE10122702C2 (de) Verfahren und Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R082 Change of representative

Representative=s name: DEHNSGERMANY PARTNERSCHAFT VON PATENTANWAELTEN, DE

Representative=s name: DEHNS GERMANY PARTNERSCHAFT MBB, DE