DE10122702C2 - Verfahren und Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt - Google Patents

Verfahren und Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt

Info

Publication number
DE10122702C2
DE10122702C2 DE10122702A DE10122702A DE10122702C2 DE 10122702 C2 DE10122702 C2 DE 10122702C2 DE 10122702 A DE10122702 A DE 10122702A DE 10122702 A DE10122702 A DE 10122702A DE 10122702 C2 DE10122702 C2 DE 10122702C2
Authority
DE
Germany
Prior art keywords
clock
signal
output
flip
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE10122702A
Other languages
English (en)
Other versions
DE10122702A1 (de
Inventor
Peter Schroegmeier
Thilo Marx
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.)
Qimonda AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE10122702A priority Critical patent/DE10122702C2/de
Priority to US10/143,600 priority patent/US7058840B2/en
Publication of DE10122702A1 publication Critical patent/DE10122702A1/de
Application granted granted Critical
Publication of DE10122702C2 publication Critical patent/DE10122702C2/de
Priority to US11/367,218 priority patent/US20060149989A1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • 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
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines

Description

Die vorliegende Erfindung bezieht sich allgemein auf elektro­ nische Schaltungen, bei denen ein Signal von einer ersten Taktdomäne (clock domain) in eine zweite Taktdomäne überführt werden muß, wie dies beispielsweise bei asynchronen Schaltun­ gen der Fall ist, wenn Daten mit einem ersten Takt übernommen und mit einem zweiten Takt weitergegeben werden.
Seit Beginn der digitalen Schaltungstechnik hat der synchrone Schaltungsentwurf den Vorzug über den asynchronen Schaltungs­ entwurf erhalten, wofür insbesondere die rasante Entwicklung in der Mikroprozessortechnologie verantwortlich ist, die auf der synchronen Schaltungstechnik beruht. Synchrone Schaltun­ gen funktionieren wie eine getaktete endliche Zustandsmaschi­ ne, bei der sich die Zustände der logischen Gatter synchron bzw. stets zum selben Zeitpunkt ändern. Synchrone Schaltungen zeichnen sich folglich durch einen einfachen Schaltungsent­ wurf aus, und eine Überprüfung des Entwurfs reduziert sich auf eine Überprüfung der Verzögerungen der kombinatorischen logischen Funktionen zwischen den jeweiligen Registern der synchronen Schaltung.
In neuerer Zeit hat sich jedoch herausgestellt, daß der syn­ chrone Schaltungsentwurf an fundamentale Grenzen stößt, die sich mit einer synchronen Taktung nicht lösen lassen. Ein er­ stes Problem besteht darin, daß eine Schaltung lediglich dann synchron arbeiten kann, falls alle Bauelemente derselben den Takt zumindest bis zu einem bestimmten Grad zum selben Zeit­ punkt erhalten. Die Taktsignale sind jedoch elektrische Si­ gnale, die, wenn sich dieselben über die Drähte ausbreiten, den selben Verzögerungen wie andere Signale unterworfen sind. Falls die Verzögerung für einen bestimmten Teil der Schaltung einen signifikanten Teil einer Taktzykluszeitdauer ausmacht, kann dieser Teil der Schaltung nicht mehr als zu den anderen Teilen der Schaltung synchron arbeitend angesehen werden. Dieses Problem wird insbesondere dadurch verstärkt, daß die Schaltungskomplexität heutiger integrierter Schaltungen mehr und mehr zunimmt, wodurch die Länge der elektrischen Signal­ wege zwischen verschiedenen Schaltungsteilen zunimmt.
Ein weiteres Problem des synchronen Schaltungsentwurfs be­ steht in der Hitzeentwicklung. Bei der CMOS-Technologie ver­ brauchen die Gatter beispielsweise lediglich beim Umschalten Energie. Da allerdings die gesamte Schaltung von einem einzi­ gen Takt getaktet wird, gibt es viele Gatter, die lediglich umschalten, da dieselben an dem Takt angeschlossen sind, aber nicht, weil dieselben Daten verarbeiten. Folglich verbrauchen bei dem synchronen Schaltungsentwurf auch momentan untätige Schaltungsabschnitte Energie, was insbesondere bei Multifunk­ tionsschaltungen nachteilig ist.
Das Problem eines globalen Takts wird durch einen asynchronen Schaltungsentwurf gelöst, bei welchem die Daten nicht durch einen globalen Takt verarbeitet werden. Unter den verschiede­ nen Lösungsansätzen für eine Realisierung einer asynchronen Taktung befindet sich beispielsweise einer, bei denen Daten über sogenannte Mikropipelines übertragen und dabei von Latch-Controllern an verschiedenen Punkten innerhalb des Chips gefangen und zwischengespeichert werden, um erst dann wieder losgelassen zu werden, falls die nächste Latch- Controllerstufe zum Empfang von Daten bereit ist. Auf diese Weise entstehen asynchrone Latch-Ketten, bei denen die zu verarbeitenden Daten mittels eines Quittierungsprotokolls weitergeleitet werden.
Bei diesen asynchronen Schaltungen mit Quittierungsprotokol­ len wird das zeitmäßige Steuern von Daten durch ein asynchro­ nes Steuersignals bestimmt, das zusammen mit den Daten über den Chip läuft und die Latch-Schaltungen ansteuert, mit denen die Daten gefangen werden. In bestimmten Fällen werden die Daten von einer Latch-Stufe der asynchronen Latch-Kette mit einem Auffangtakt (capture-clock) übernommen und mit einem zweiten zu dem ersten Takt phasenverschobenen Ausgabetakt (output-clock) an eine nachfolgende Latch-Stufe weitergege­ ben, so daß es notwendig ist, die übertragenen Daten von dem ersten Taktbereich bzw. der ersten Taktdomäne in den anderen bzw. die andere zu überführen. Hierzu ist es ausreichend, das asynchrone Steuersignal, mit denen das Fangen der Daten ent­ lang der asynchronen Latch-Kette zeitlich gesteuert wird, von der einen Clock-Domäne in die andere zu überführen.
Fig. 5 zeigt eine mögliche Schaltung, die in der Lage ist, eine solche Taktdomänenüberführung bzw. einen solchen Takt­ übergang durchzuführen. Die Schaltung, die allgemein mit 800 angezeigt ist, umfaßt einen Schaltungsteil 810 zum Abtasten des eingehenden asynchronen Steuersignals sowie einen Schal­ tungsteil 820 zum Erzeugen des an die nachfolgende Latch- Stufe auszugebenden asynchronen Steuersignals basierend auf dem Takt, mit dem die Daten weitergegeben werden sollen. Der Schaltungsteil 810 besteht aus einem D-Flip-Flop 830, einem Invertierer 840 sowie einem RS-Flip-Flop 850, der aus zwei NAND-(NICHT-UND-)Gattern 860 und 870 besteht. Ein erster Eingang des NAND-Gatters 860 ist mit einem Eingang Rn 870 der Schaltung 800 verbunden, um ein Rücksetzsignal Rn zu empfan­ gen, mit welchem die gesamte asynchrone Schaltung rückgesetzt wird. Ein Ausgang des NAND-Gatters 860 ist mit einem ersten Eingang des NAND-Gatters 870 verbunden, wobei ein zweiter Eingang des NAND-Gatters 860 mit dem Ausgang des NAND-Gatters 870 verbunden ist, wodurch das RS-Flip-Flop 850 gebildet wird.
Ein zweiter Eingang des NAND-Gatters 870 ist über den Inver­ tierer 840 und das D-Flip-Flop 830 mit einem Eingang Rout 880 der Schaltung 800 verbunden, um das eingehende asynchrone Steuersignal Rout zu erhalten, das mit einem logisch hohen Zustand anzeigt, daß die vorhergehende Latch-Stufe dazu auf­ fordert, die von ihr übertragenen Daten zu fangen. Das D- Flip-Flop 830 ist derart zwischen den Eingang 880 und den In­ vertierer 840 geschaltet, daß der Eingang D desselben mit dem Eingang 880 und der Ausgang Q desselben mit einem Eingang des Invertierers 840 verbunden ist. Das D-Flip-Flop 830 umfaßt ferner einen Eingang Rn, der mit dem Eingang 870 der Schal­ tung 800 verbunden ist, um ebenfalls mit dem Signal Rn rück­ gesetzt zu werden. Das D-Flip-Flop 830 umfaßt ferner zwei Eingänge Cn und C, die jeweils über einen Invertierer 890, 900 mit einem Eingang outclk 910 bzw. einem Eingang outclkn 920 der Schaltung 800 verbunden sind, um den nicht­ invertierten Takt outclk bzw. den invertierten Takt outclkn in invertierter Form zu erhalten, wobei der Takt outclk 910 der Takt ist, mit welchem die Daten weitergegeben werden, während der Takt outclkn von demselben um 180° phasenverscho­ ben ist.
Auf diese Weise wird das D-Flip-Flop 830 mit dem Takt outclk getaktet, so dass dasselbe mit der steigenden Flanke dieses Taktes das asynchrone Steuersignal Rout abtastet und das asynchrone Steuersignal Rout hierdurch in die Taktdomäne des Ausgangstakts überführt. Das Ausgangsabtastsignal von dem D- Flip-Flop 830, das den logischen Abtastzuständen des asyn­ chronen Steuersignals Rout an den steigenden Flanken des Tak­ tes outclk entspricht, wird durch den Invertierer 840 inver­ tiert und in den zweiten Eingang des NAND-Gatters 870 einge­ geben.
Falls das RS-Flip-Flop 850 durch das Rücksetzsignal Rn rück­ gesetzt worden ist, wechselt das RS-Flip-Flop 850 von dem Zeitpunkt an, da das D-Flip-Flop 830 den ersten Puls des asynchronen Steuersignals Rout, d. h. das erste Mal einen lo­ gisch hohen Zustand, abgetastet hat, den logischen Zustand an dem Ausgang des NAND-Gatters 870 bzw. dem Ausgang des Schal­ tungsteils 810, wobei das Signal, das das NAND-Gatter 870 ausgibt, im folgenden als RESET-Signal bezeichnet wird.
Der Schaltungsteil 820 umfaßt zwei D-Flip-Flops 930, 940, zwei Invertierer 950, 960 sowie ein NAND-Gatter 970. Die D- Flip-Flops 930 und 940 weisen jeweils zwei Takteingänge C, Cn, einen Rücksetzeingang Rn, einen Eingang D und einen Aus­ gang Q auf. Die Eingänge C der Flip-Flops 930, 940 sind über den Invertierer 900 mit dem Eingang 920 der Schaltung 800 verbunden, während der Takteingang Cn über den Invertierer 890 mit dem Eingang 910 verbunden ist, damit die Flip-Flops 930, 940 mit dem Takt outclk getaktet werden. Der Rücksetz­ eingang Rn der Flip-Flops 930, 940 ist mit dem Ausgang des NAND-Gatters 870 bzw. dem Ausgang des Schaltungsteils 810 verbunden, um das RESET-Signal zu empfangen. Der Q-Ausgang des D-Flip-Flops 940 ist mit dem D-Eingang des D-Flip-Flops 930 verbunden, während der Q-Ausgang des D-Flip-Flops 930 über den Invertierer 950 mit dem D-Eingang des D-Flip-Flops 940 verbunden ist. Ein Ausgang des Invertierers 950 ist mit dem Eingang D des D-Flip-Flops 940 sowie mit einem ersten Eingang des NAND-Gatters 970 verbunden, wobei ein zweiter Eingang des NAND-Gatters 970 mit einem Knotenpunkt 980 zwi­ schen den beiden D-Flip-Flops 930 und 940 verbunden ist. Ein Ausgang des NAND-Gatters 970 ist über den Invertierer 960 mit einem Ausgang out 990 des Schaltungsteils 820 verbunden.
Das Schaltungsteil 820 besteht im wesentlichen aus einem Zäh­ ler, der durch die D-Flip-Flops 930, 940 und den Invertierer 950 gebildet wird und dazu dient, nach dem Zeitpunkt, da die D-Flip-Flops 930 und 940 rückgesetzt sind, d. h. nachdem der Puls des asynchronen Steuersignals Rout erstmals abgetastet wurde, mit dem Takt outclk wiederholt vier Taktpulse zu zäh­ len. Die Signale des Zählers an den beiden Ausgängen der Flip-Flops 930 und 940 können hierbei lediglich vier ver­ schiedene Zustände annehmen, die beim Hochzählen nacheinander angenommen werden, wobei lediglich ein Zustand existiert, bei dem die Eingangssignale des NAND-Gatters 970 beide einen lo­ gisch hohen Wert aufweisen. Auf diese Weise gibt das NAND- Gatter 970 an dem Ausgang out 990 ein neues, weiterzuleiten­ des asynchrones Steuersignal aus, welches einen viermal lang­ sameren Takt als der Takt outclk aufweist und mit dem Taktzy­ klus des Taktes outclk beginnt, welcher auf das Rücksetzen der D-Flip-Flops 930 und 940 folgt.
Die Schaltung 800 erzeugt folglich aus dem asynchronen Steu­ ersignal, welches in der Taktdomäne des Auffangtaktes vor­ liegt, an dem Ausgang out 990 ein neues asynchrones Steuersi­ gnal, welches in der Taktdomäne des Ausgabetaktes definiert ist, einen viermal langsameren Takt als der Takt outclk auf­ weist und mit dem auf das Auftreten eines Rout-Pulses folgen­ den Taktzyklus des Taktes outclk beginnt.
Ein Problem bei der Schaltung 800 besteht darin, daß in dem Fall, daß der Rout-Puls nach der steigenden Flanke des Ausga­ betaktes outclk auftritt, ein ganzer Zyklus bis zur nächsten steigenden Flanke des Ausgabetaktes outclk vergeht. Um dies näher zu veranschaulichen, sind in Fig. 6a und 6b das an dem Ausgang 880 anliegende asynchrone Steuersignal Rout, das Taktsignal outclk, das an dem Ausgang out 990 anliegende neue asynchrone Steuersignal und das Signal RESET, das von dem Schaltungsteil 810 ausgegeben wird, in ihrem zeitlichen Ver­ lauf für einen Fall, bei dem der Rout-Puls vor der steigenden Flanke des Ausgabetaktes kommt, und für den Fall, daß der Rout-Puls nach der steigenden Flanke des Ausgabetaktes kommt, exemplarisch dargestellt. Insbesondere zeigen Fig. 6a und 6b jeweils zwei Graphen, von denen in dem jeweils oberen die Si­ gnale Rout (gestrichelte Linie) und outclk (durchgezogene Li­ nie) und in dem jeweils unteren die Signale out (durchgezoge­ ne Linie) und Reset (gestrichelte Linie) angezeigt sind, und in denen die Zeit entlang der x-Achse in Nanosekunden und die Signalspannung entlang der y-Achse in V aufgetragen ist.
In Fig. 6a ist der Fall dargestellt, daß der Rout-Puls bzw. die vordere Flanke 1000 desselben vor der steigenden Flanke 1010 des Taktes outclk kommt. In diesem Fall wird der Rout- Puls unmittelbar an der steigenden Flanke 1010 abgetastet, was durch den Schaltungsteil 810 mit dem Signal RESET unmit­ telbar angezeigt wird 1020. Bei der nächsten steigenden Flan­ ke 1030 des Taktes outclk bzw. bei dem nächsten Taktzyklus erzeugt der zu dem Zeitpunkt 1020 rückgesetzte Zähler des Schaltungsteils 820 aus dem Takt outclk das neue asynchrone Steuersignal an dem Ausgang out mit einem viermal langsameren Takt (1040). In dem in Fig. 6a gezeigten Fall beträgt die auftretende Latenzzeit nicht viel mehr als einen Taktzyklus des Takts outclk.
In dem in Fig. 6b gezeigten Fall kommt der Rout-Puls bzw. die steigende Flanke 1050 desselben nach der steigenden Flanke 1060 des Taktes outclk. In diesem Fall vergeht folglich bei­ nahe ein ganzer Taktzyklus bis zu der nächsten steigenden Flanke 1070 des Taktes outclk, bis der Rout-Puls durch das D- Flip-Flop 830 abgetastet wird. Erst zu dem Zeitpunkt 1070, also erst an der nächsten Flanke des Taktes outclk wird folg­ lich das RESET-Signal erzeugt 1080, um den Zähler des Schal­ tungsteils 820 rückzusetzen, der wiederum erst nach einem weiteren Taktzyklus, d. h. erst mit der steigenden Flanke 1090, das neue asynchrone Steuersignal an dem Ausgang out er­ zeugt 1100. Folglich verliert das System einen Taktzyklus verglichen zu dem in Fig. 6a gezeigten Fall, was demnach ei­ ner Zunahme der Latenz um einen Taktzyklus entspricht. Eine solche Latenzzeitzunahme ist insbesondere bei zeitkritischen Anwendungen, wie z. B. bei einem asynchronen DDR- (double da­ ta rate) RAM von großem Nachteil.
Die DE 692 29 162 T2 bezieht sich auf ein Synchronisierungsge­ rät und -verfahren, wobei Signale, die aus einer Taktdomäne x zu einer Taktdomäne y übermittelt werden sollen, anfänglich aus der Taktdomäne x an einen Synchronisiererblock gekoppelt werden, welcher dann die Signale der Taktdomäne y einkoppelt. Die erste Taktdomäne arbeitet nach einem ersten Takt mit ei­ nem ersten Taktsignal, und die zweite Taktdomäne arbeitet nach einem zweiten Takt mit einem zweiten Taktsignal. Der Synchronisiererblock umfaßt eine spezialisierte Taktschaltung und erzeugt aus den beiden Domänen-Taktsignalen zwei Paare eines Mastertaktes und eines Slave-Taktes, die zueinander um 180° untereinander um einen anderen festen Wert phasenver­ schoben sind. Ferner umfaßt der Synchronisiererblock einen Einzelsynchronisierer und einen Mehrfachsynchronisierer je­ weils für jede Synchronisation in der einen oder in die ande­ re Richtung. Welcher der beiden Synchronisierer jeweils ver­ wendet wird, hängt von den Charakteristika der zu übermit­ telnden Signale ab. Ein Einzelsynchronisierermodul latch- speichert mittels eines Flip-Flops zunächst das zu synchroni­ sierende Eingangssignal mit dem Taktsignal der Ursprungsdomä­ ne. Das sich ergebende Ausgangssignal dieses Flip-Flops wird zwei Basissynchronisationszellen zugeführt, die mit jeweils einem Paar eines Master- und Slave-Taktes der Zieldomäne be­ trieben werden. Innerhalb der Basissynchronisationszelle wird das zu synchronisierende Signal nacheinander von zwei trans­ parenten Latches latch-gespeichert, die von dem jeweiligen Master- bzw. Slave-Taktsignal betrieben werden. Die von den beiden Basissynchronisationsschaltungen ausgegebenen Signale werden einem Oder-Gatter zugeführt, dessen Ausgang wiederum den Ausgang des Synchronisierermoduls darstellt.
Die DE 197 37 589 C1 beschreibt eine Schnittstellenschaltung für Fullcustom- bzw. FC- und Semicustom- bzw. SC-Taktdomänen. Ein von dem digitalen SC-Schaltungsabschnitt geliefertes Da­ tensignal wird in die FC-Taktdomäne überführt, indem das Da­ tensignal sequentiell an zwei Flip-Flops abgetastet wird, von denen das erste mit dem Taktsignal der SC-Domäne und das an­ dere mit dem der FC-Domäne betrieben wird. Die Taktsignale der beiden Taktdomänen sind um eine halbe Taktperiode gegen­ einander phasenverschoben.
Die EP 0798630 A1 beschreibt eine Synchronisierung zur Über­ führung von Daten von einer ersten Taktdomäne mit einem er­ sten Taktsignal mit einer ersten Taktrate zu einer zweiten Taktdomäne mit einem zweiten Taktsignal mit einer zweiten Taktrate, die zu der ersten Taktdomäne unterschiedlich ist. Die zu überführenden Daten werden mit einer ersten Taktrate empfangen, wobei die Daten in Halteregistern mit einer ersten Taktrate bereitgestellt werden. Die Daten in den Halteregi­ stern mit der ersten Taktrate werden mit Abtastregistern mit einer zweiten Taktrate basierend auf lediglich der ersten Taktrate und der zweiten Taktrate synchronisiert, ohne daß zusätzliche Steuersignale notwendig sind. Die Daten werden dann von den Halteregistern mit der ersten Taktrate zu den Abtastregistern mit der zweiten Taktrate überführt. Anden Abtastregistern angekommen werden die Daten mit der zweiten Taktrate ausgelesen.
Die WO 99/28806 A2 beschreibt ein Verfahren und eine Vorrich­ tung zum Weiterleiten eines Signals zwischen synchronen Takt­ domänen, die mit einem nicht ganzzahligen Frequenzverhältnis arbeiten. Zunächst werden ein erstes und ein zweites Taktsi­ gnal erzeugt, die im wesentlichen synchron zueinander sind und Frequenzen aufweisen, die nicht ganzzahlige Vielfache voneinander sind. Ein erstes Signal, das in der ersten Takt­ domäne ansprechend auf einen Übergang des ersten Taktsignals erzeugt wird, der im wesentlichen gleichzeitig mit einem Übergang des zweiten Taktsignals ist, wird daran gehindert, in der zweiten Taktdomäne ansprechend auf den Übergang des zweiten Taktsignals latch-gespeichert zu werden. Das erste Taktsignal wird für eine Zeitdauer, die größer als ein maxi­ maler Taktversatz, der zwischen dem ersten und dem zweiten Taktsignal existieren kann, daran gehindert, latch- gespeichert zu werden.
Die Aufgabe der vorliegenden Erfindung besteht folglich dar­ in, ein Verfahren und eine Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt zu schaf­ fen, so daß die Latenzzeit für den Taktdomänenübergang gerin­ ger ist.
Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1 und eine Vorrichtung gemäß Anspruch 2 gelöst.
Ein erfindungsgemäßes Verfahren zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt umfaßt das Abtasten des ersten Signals mit dem zweiten Takt sowie mit einem zu dem zweiten Takt phasenverschobenen Takt, um jeweils festzu­ stellen, ob das erste Signal den vorbestimmten logischen Zu­ stand aufweist. Falls bei zumindest einer der Abtastungen festgestellt wird, daß das erste Signal den vorbestimmten Zu­ stand aufweist, wird das zweite Signal basierend auf dem zweiten Takt, beginnend mit dem nachfolgenden Taktzyklus des zweiten Takts, erzeugt.
Eine erfindungsgemäße Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt umfaßt eine erste und eine zweite Einrichtung zum Abtasten des ersten Signals, um festzustellen, ob das erste Signal einen vorbestimmten lo­ gischen Zustand aufweist, wobei die erste Einrichtung das er­ ste Signal mit dem zweiten Takt abtastet, und die zweite Ein­ richtung das erste Signal mit einem zu dem zweiten Takt ver­ schobenen Takt abtastet. Eine Einrichtung zum Erzeugen des zweiten Signals erzeugt das zweite Signal basierend auf dem zweiten Takt, falls von zumindest einer der Einrichtungen zum Abtasten festgestellt wurde, daß das erste Signal den vorbe­ stimmten Zustand aufweist.
Der vorliegenden Erfindung liegt die Erkenntnis zugrunde, daß das im vorhergehenden erwähnte Problem der Latenzzeitzunahme bei der Überführung des ersten Signals in eine andere Taktdo­ mäne in dem Fall, daß der Puls des ersten Signals nach einem Abtastzeitpunkt erfolgt, dadurch beseitigt oder verringert werden kann, daß das erste Signal innerhalb eines Taktzyklus des zweiten Takts zweimal abgetastet wird, d. h. einmal mit dem zweiten Takt und einmal mit einem zu dem zweiten Takt phasenverschobenen Takt, und daß die Erzeugung des zweiten Signals basierend auf dem zweiten Takt bereits ausgelöst wird, falls bei zumindest einem der beiden Abtastzeitpunkte der Puls des ersten Signals abgetastet wird bzw. festgestellt wird, daß das erste Signal den vorbestimmten logischen Zu­ stand aufweist.
Bei einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung beträgt die Phasenverschiebung zwischen den beiden Abtasttakten 180°, wodurch die Latenzzeit um die Zeitdauer eines Taktzyklus reduziert wird. Ein Vorteil hierbei besteht darin, daß die Erzeugung eines von dem zweiten Takt um 180° phasenverschobenen Takts einfach ist und beispielsweise le­ diglich baugleiche Abtasteinrichtungen mit entgegengesetzter Taktansteuerung erfordert, oder daß ein solcher Takt in einer existierenden elektronischen Schaltung sogar bereits vor­ liegt, so daß die Implementierung der vorliegenden Erfindung in eine solche elektronische Schaltung erleichtert wird.
Gemäß einem Ausführungsbeispiel wird die vorliegende Erfin­ dung bei einer asynchronen Latch-Kette angewendet, wobei das erste und das zweite Signal asynchrone Steuersignale sind, die von einer Latch-Stufe empfangen bzw. gesendet werden, und mit denen das Fangen von Daten entlang der asynchronen Latch- Kette zeitlich gesteuert wird, wobei die Daten bei der Latch- Stufe mit dem zweiten Takt an die nachfolgende Latch-Stufe weitergegeben und mit einem auf dem ersten Takt basierenden Takt von einer vorhergehenden Latch-Stufe übernommen werden. Der vorbestimmte logische Zustand entspricht dem aktivierten Zustand des asynchronen Steuersignals, mit dem eine nachfol­ gende Latch-Stufe aufgefordert wird, daß dieselbe die Daten entlang des Datenwegs der asynchronen Latch-Kette auffängt.
Gemäß einem Ausführungsbeispiel umfaßt die erste Einrichtung zum Abtasten des ersten Signals ein erstes taktzustandsge­ steuertes Flip-Flop und die zweite Einrichtung zum Abtasten des ersten Signals ein zweites taktzustandsgesteuertes Flip- Flop. An einem Eingang des ersten und des zweiten taktzu­ standsgesteuerten Flip-Flops liegt das erste Signal an, wobei das erste taktzustandsgesteuerte Flip-Flop mit dem zweiten Takt angesteuert wird, während das zweite taktzustandsgesteu­ erte Flip-Flop mit dem zu dem zweiten Takt phasenverschobenen Takt angesteuert wird. Die taktzustandsgesteuerten Flip- Flops können beispielsweise D-Flip-Flops sein und können zu­ dem baugleich sein.
Insbesondere für zeitkritische Anwendungen, wie z. B. bei ei­ nem DDR-RAM, wird durch die vorliegende Erfindung eine wert­ volle Latenzzeitersparnis geliefert, die den Umstand, daß die Komplexität der Taktüberführung erhöht wird, deutlich über­ wiegt. Insbesondere kann durch Verwendung einer Phasenver­ schiebung um 180° und durch Verwenden baugleicher Abtastein­ richtungen der zusätzliche Aufwand gering gehalten werden.
Weiterbildungen und weitere bevorzugte Ausgestaltungen der vorliegenden Erfindung sind in den beiliegenden Ansprüchen definiert.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Zeich­ nungen näher erläutert. Es zeigen:
Fig. 1 ein Blockschaltbild einer asynchronen Latch-Kette, das ein Vier-Phasen-Gebündelte-Daten-Protokoll ver­ wendet;
Fig. 2 Signalverläufe, die bei der asynchronen Latch-Kette von Fig. 1 auftreten, zur Veranschaulichung des Vier-Phasen-Quittierungsprotokolls;
Fig. 3 ein Schaltbild einer Schaltung zum Überführen eines asynchronen Steuersignals von einer ersten Taktdo­ mäne in eine zweite Taktdomäne gemäß einem Ausfüh­ rungsbeispiel der vorliegenden Erfindung;
Fig. 4a und 4b Signalverläufe auftretender Signale bei der Schal­ tung von Fig. 3 für den Fall, daß das eingehende asynchrone Steuersignal vor bzw. nach dem Ausgabe­ takt kommt;
Fig. 5 ein Schaltbild einer Schaltung zum Überführen eines asynchronen Steuersignals von einer ersten Taktdo­ mäne in eine zweite Taktdomäne, die nicht gemäß der vorliegenden Erfindung aufgebaut ist; und
Fig. 6a und 6b Signalverläufe von Signalen, die bei der Schaltung von Fig. 5 in dem Fall, daß das eingehende asyn­ chrone Steuersignal vor bzw. nach dem Ausgabetakt kommt.
Es wird darauf hingewiesen, daß, obwohl die vorliegende Er­ findung im folgenden bezugnehmend auf Fig. 3, 4a und 4b an­ hand eines Ausführungsbeispiels beschrieben wird, welches sich auf einen Taktübergang eines asynchronen Steuersignals bei asynchronen Schaltungen bezieht, die vorliegende Erfin­ dung auch bei anderen Schaltungen einsetzbar ist, bei denen ein Signal von einer ersten Taktdomäne in eine andere über­ führt werden muß. Schaltungen solcher Art umfassen beispiels­ weise ferner Datenübertragungsschnittstellen oder derglei­ chen.
Anhand von Fig. 1 und 2 wird zunächst stellvertretend für asynchrone Schaltungen mit einem Quittierungsprotokoll der Aufbau und die Funktionsweise einer asynchronen Latch-Kette mit einem Vier-Phasen-Gebündelte-Daten-Protokoll beschrieben. Das im nachfolgenden bezugnehmend auf die Fig. 3, 4a und 4b beschriebene Ausführungsbeispiel ist jedoch problemlos eben­ falls auf asynchrone Latch-Ketten mit anderen Protokollen an­ wendbar, wie z. B. asynchrone Latch-Ketten mit einem Zwei- Phasen-Protokoll.
Bezugnehmend auf die Fig. 1 und 2 wird zunächst die asynchro­ ne Schaltungstechnik erläutert und zwar insbesondere exempla­ risch anhand von asynchronen Latch-Ketten mit einem Vier- Phasen-Gebündelte-Daten-Protokoll. Fig. 1 zeigt einen Teil einer asynchronen Latch-Kette, die allgemein mit 10 angezeigt ist, wobei in dem gezeigten Teil zwei Latch-Stufen 20a und 20b enthalten sind. Jede Latch-Stufe 20a und 20b enthält eine Latch-Schaltung 30a bzw. 30b und eine Vier-Phasen- Steuerungsschaltung 40a bzw. 40b zum Steuern der Latch- Schaltung 30a bzw. 30b. Die Latch-Schaltungen 30a und 30b der Latch-Stufen 20a und 20b sind an unterschiedlichen Positionen über den die asynchrone Latch-Kette 10 enthaltenden Chip in einen Datenweg 50 in Reihe geschaltet, so daß ein Ausgang der Latch-Schaltung 30a mit dem Eingang der nachfolgenden Latch- Schaltung 30b verbunden ist. Der Datenweg 50 kann seriell oder parallel sein und aus einer oder mehreren Datenleitungen und zwischen den Latch-Schaltungen aus unterschiedlich vielen Datenleitungen bestehen, wie z. B., aber nicht ausschließ­ lich, aus einer Datenleitung für jedes Bit, wobei die Latch- Stufen in dem letztgenannten Fall beispielsweise als Seriali­ sierer und Parallelisierer aber auch als jegliche andere da­ tenverarbeitende Schaltung implementiert sein können.
Jede Latch-Schaltung 30a bzw. 30b, die aus einem oder mehre­ ren Latches besteht, ist über einen Steuereingang mit einem Steuerausgang Lt/Ain der Vier-Phasen-Steuerungsschaltung 40a bzw. 40b verbunden. Der Ausgang Lt/Ain jeder Steuerungsschal­ tung 40a bzw. 40b ist ferner mit einem Steuereingang Aout der Steuerungsschaltung der jeweils vorhergehenden Latch-Stufe verbunden, wie z. B. der Ausgang Lt/Ain der Steuerungsschal­ tung 40b mit dem Eingang Aout der Steuerungsschaltung 40a. Darüber hinaus weist jede Steuerungsschaltung 40a, 40b einen weiteren Eingang Rin und einen weiteren Ausgang Rout auf, wo­ bei der Ausgang Rout stets mit dem Eingang Rin der Steue­ rungsschaltung der nachfolgenden Latch-Stufe verbunden ist, wie z. B. der Ausgang Rout der Steuerungsschaltung 40a mit dem Eingang Rin der Steuerungsschaltung 40b.
Im folgenden wird die Funktionsweise der in Fig. 1 gezeigten asynchronen Latch-Kette sowie das Vier-Phasen-Protokoll der­ selben, wenn die asynchrone Latch-Kette in einem Chip, wie z. B. einen DDR-RAM-Chip, eingebaut ist, erklärt. Der Fluß von Daten über den Datenweg 50 durch den Chip wird durch die asynchronen Latch-Stufen 20a, 20b gesteuert, indem die Daten an unterschiedlichen Positionen des Chips gefangen und zwi­ schengespeichert werden, um das Lenken der Daten durch den Chip zeitlich abzustimmen und eine temporäre Speicherung der Daten zu liefern, während die Daten für eine Datenausgabe bzw. Eingabe serialisiert oder entserialisiert bzw. paralle­ lisiert werden. Bei einem DDR-Chip würden bei Schreibbefehlen die zu schreibenden Daten nach der Empfängerschaltung paral­ lelisiert und dann am Schreib-Lese-Verstärker geschrieben werden. In Leserichtung würden die Daten am Schreib-Lese- Verstärker gelesen und vor dem Off-Chip- bzw. Ausgabe-Treiber wieder serialisiert werden. Parallel zu der gezeigten Daten­ flußsteuerungsschaltungsanordnung ist eine synchrone Steue­ rungsschaltungsanordnung vorgesehen, die eine stabile zeitli­ che Steuerungsumgebung zum Serialisieren und Parallelisieren der Daten bietet.
Zur Steuerung des Datenwegs wird das nachfolgend beschriebene Vier-Phasen-Gebündelte-Daten-Protokoll verwendet, bei dem zwischen den Steuerungsschaltungen 40a, 40b jeweils zwei Ein­ gangssignale und zwei Ausgangssignale ausgetauscht werden, die im folgenden wie die Ein- bzw. Ausgänge der Steuerungs­ schaltungen 40a, 40b benannt werden, von dem dieselben ausge­ geben bzw. in welche dieselben eingegeben werden. Ein Aus­ gangssignal Rout wird von einer Steuerungsschaltung 40a, 40b ausgegeben, um die Steuerungsschaltung der nächsten Latch- Stufe in der Latch-Kette 10 bzw. der Pipeline aufzufordern, die Daten, die in der Latch-Schaltung der anfordernden Latch- Stufe gespeichert sind, auf dem Datenweg 50 zu fangen. Ein Steuer- und Quittierungsausgangssignal Lt/Ain wird von einer Latch-Stufe an die Steuerungsschaltung der vorhergehenden Latch-Stufe und an die Latch-Schaltung der selben Latch-Stufe ausgegeben, um die Latch-Schaltung in einen Zustand zu ver­ setzen, bei dem dieselbe die Daten auf dem Datenweg 50 fängt bzw. zwischenspeichert, und um der vorhergehenden Latch-Stufe zu quittieren, daß die durch das Ausgangssignal Rout dersel­ ben angekündigten Daten empfangen worden sind. Die Ausgangs­ signale Rout und Lt/Ain gelangen zu der nachfolgenden bzw. vorhergehenden Latch-Stufe als Eingangssignal Rin bzw. Aout. Das Eingangssignal Rin wirkt bei der nachfolgenden Latch- Stufe als Aufforderung, daß die ankommenden Daten auf dem Da­ tenweg 50 durch die Latch-Schaltung gefangen bzw. zwischenge­ speichert werden. Das Eingangssignal Aout wirkt bei der vor­ hergehenden Latch-Stufe als ein Quittierungssignal von der jeweils vorhergehenden Latch-Stufe in der Pipeline, das der vorhergehenden Latch-Stufe bestätigt, daß die weitergegebenen Daten von der nachfolgenden Latch-Stufe empfangen worden sind.
Bezugnehmend auf Fig. 1 und 2 wird im folgenden das Signali­ sierungsprotokoll näher beschrieben, wobei Fig. 2 die Signal­ verläufe der Signale Rin, Rout, Lt/Ain und Aout (von oben nach unten übereinander) in ihrem zeitlichen Verlauf (jeweils vertikal zueinander ausgerichtet von links nach rechts) zeigt, die beispielsweise zwischen den Latch-Stufen von Fig. 1 auftreten. Bei dem Protokoll von Fig. 2 wird angenommen, daß die Daten-Latch-Schaltungen undurchlässig sind bzw. sich in einem Auffangzustand befinden, wenn sich das Steuersignal Lt/Ain in einem logisch hohen Zustand befindet. Folglich wer­ den die Daten solange an der Latch-Stufe gehalten, bis die nächste Latch-Stufe in der Pipeline signalisiert, daß die übertragenen Daten empfangen worden sind.
Das in Fig. 2 gezeigte Protokoll ist ein Vier-Phasen- Protokoll, das verwendet wird, um Daten über den Chip zu übertragen, wobei die Daten hierbei von Latch-Stufe zu Latch- Stufe bewegt werden. Zu einem Zeitpunkt 100 stehen bei der Latch-Stufe bzw. einem Controller 20a beispielsweise gültige Daten an dem Datenausgang zur Verfügung, woraufhin derselbe ein Rout-Signal ausgibt. Dieses Signal wird bei dem nachfol­ genden Controller 20b an dem Eingang Rin empfangen, woraufhin derselbe ein Rout-Signal an den wiederum nächsten Controller in der Pipeline sendet 120 und dabei die gebündelten Daten an der Latch-Schaltung 30b unter Verwendung des Lt/Ain-Signals fängt bzw. zwischenspeichert 130. Das Lt/Ain-Signal wird zu dem Aout-Eingang an dem vorhergehenden Controller 20a in der Pipeline rückgekoppelt, um die Eingabe in die Latch-Schaltung 30b des gegenwärtigen Controllers 20b zu bestätigen 140. Die Daten werden in der Latch-Schaltung 30b gehalten, bis das Aout- und das Rin-Eingangssignal an dem gegenwärtigen Con­ troller 20b aktiviert bzw. deaktiviert sind, was bei 150 der Fall ist. Zu diesem Zeitpunkt 150 wird die Latch-Schaltung 30b des gegenwärtigen Controllers 20b durchlässig gemacht, um es neuen Daten zu ermöglichen, zu passieren und zu dem näch­ sten Pipelinezyklus gefangen und zwischengespeichert zu wer­ den. Ein weiterer Controller-Zyklus kann an den Ausgängen des gegenwärtigen Controllers 20b nicht auftreten, bis das Ein­ gangssignal Aout durch das Lt/Ain-Signal von dem darauffol­ genden Controller deaktiviert worden ist, wie es bei 160 der Fall ist. In anderen Worten ausgedrückt, kann das Ausgangssi­ gnal Rout des gegenwärtigen Controllers 20b solange nicht in einen logisch hohen Zustand übergehen, bis das Eingangssignal Aout bzw. das Ausgangssignal Ain von dem darauffolgenden Con­ troller in einen logisch niedrigen Zustand übergegangen ist, vorausgesetzt, daß das Signal Rin bzw. das Ausgangssignal Rout von dem vorhergehenden Controller 20a in einen logisch hohen Zustand übergegangen ist, um anzuzeigen, daß eine neue Pipelinezyklusanforderung aufgetreten ist.
Es wird noch einmal darauf hingewiesen, daß das in Fig. 2 ge­ zeigte Schema lediglich exemplarisch ausgewählt worden ist, und daß zur Steuerung der Übertragung von Daten zwischen den Serialisierern bzw. Parallel-Seriell-Umsetzern und den Dese­ rialisierern bzw. Seriell-Parallel-Umsetzern und für jegliche weitere Datenweglenkungsanforderung über den Chip andere Pro­ tokolle verwendet werden können.
In einem besonderen Fall werden die Daten auf dem Datenweg 50 von einer Latch-Stufe, wie z. B. der Latch-Stufe 20a, mit ei­ nem Auffangtakt übernommen und mit einem zweiten zum Auffang­ takt phasenverschobenen Ausgabetakt an eine nachfolgende Latch-Stufe, z. B. 20b, weitergegeben. In diesem Fall müssen die Daten von der Taktdomäne des Auffangtaktes in die Taktdo­ mäne des Ausgabetaktes überführt werden.
Wie es bereits in der Beschreibungseinleitung erwähnt worden ist, ist es hierzu ausreichend, das asynchrone Steuersignal Rout von der einen Taktdomäne in die andere zu überführen. Eine Schaltung gemäß einem Ausführungsbeispiel der vorliegen­ den Erfindung, die hierzu in der Lage ist, ist in Fig. 3 ge­ zeigt. Es wird darauf hingewiesen, daß diejenigen Elemente der Schaltung von Fig. 3, die zu Elementen von Fig. 2 iden­ tisch sind, mit dem selben Bezugszeichen versehen werden, und daß eine wiederholte Beschreibung dieser Elemente weggelassen wird.
Die in Fig. 3 gezeigte Schaltung, die allgemein mit 100 ange­ zeigt ist, unterscheidet sich von der in Fig. 5 gezeigten Schaltung lediglich dadurch, daß zu dem D-Flip-Flop 830 des Schaltungsteils 810 ein zweites D-Flip-Flop 110 parallel ge­ schaltet ist, wobei ein Eingang Rn desselben mit dem Eingang 870 Rn der Schaltung 100, der Eingang D mit dem Eingang Rout 880 der Schaltung 100 und die Takteingänge Cn und C im Ver­ gleich zu denjenigen des D-Flip-Flops 830 genau anders herum mit den Takteingängen 910 und 920 verbunden sind, nämlich der Eingang C über den Invertierer 890 mit dem Eingang 910 und der Eingang Cn über den Invertierer 900 mit dem Eingang 920, so daß das D-Flip-Flop 110 mit einem relativ zu dem Takt, mit dem das D-Flip-Flop 830 angesteuert wird, um 180° phasenver­ schobenen Takt, nämlich dem Takt outclkn angesteuert wird. Der Ausgang Q des D-Flip-Flops 110 und des D-Flip-Flops 830 sind mit zwei Eingängen eines NOR-(NICHT-ODER-)Gatters 120 verbunden, wobei ein Ausgang desselben mit dem zweiten Ein­ gang des NAND-Gatters 870 verbunden ist.
Durch die gegenphasige Ansteuerung der parallel geschalteten D-Flip-Flops 110 und 830 und durch die ODER-Verknüpfung der beiden Ausgänge derselben wird das asynchrone Steuersignal Rout sowohl mit dem Takt outclk als auch mit dem um 180° pha­ senverschobenen Takt outclkn abgetastet. Die beiden Abtastsi­ gnale, die von den D-Flip-Flops 110 und 830 ausgegeben wer­ den, zeigen die mit dem Takt outclk bzw. dem gegenphasigen Takt outclkn abgetasteten logischen Zustände des asynchronen Steuersignals Rout an. Aufgrund des NOR-Gatters 120 ist es zum Auslösen des Zählers des Schaltungsteils 820 ausreichend, falls zu einem Zeitpunkt zumindest eines der beiden Abtastsi­ gnale bzw. Ausgangssignale der D-Flip-Flops 110 und 830 in einen logisch Zustand übergeht bzw. anzeigt, daß ein Rout- Puls angekommen ist.
Um das Zusammenwirken der beiden entgegengesetzt angesteuer­ ten D-Flip-Flops 110 und 830 und des NOR-Gatters 120 näher zu beschreiben, und um zu veranschaulichen, wie hierdurch ermög­ licht wird, daß das Signal Rout bis zu einem halben Taktzy­ klus später kommen darf als bei der Schaltung von Fig. 5, oh­ ne daß der bezugnehmend auf die Schaltung von Fig. 5 be­ schriebene Verlust von einem Taktzyklus Latenz eintritt, sind in Fig. 6a und 6b exemplarische Signalverläufe für das asyn­ chrone Steuersignal Rout, den Ausgabetakt outclk, das erzeug­ te, neue asynchrone Steuersignal an dem Ausgang out 990 und das Signal RESET, das von dem Schaltungsteil 810 ausgegeben wird, für einen Fall, bei dem der Rout-Puls vor der steigen­ den Flanke des Ausgabetaktes kommt, und für den Fall, daß der Rout-Puls nach der steigenden Flanke des Ausgabetaktes kommt, in ihrem zeitlichem Verlauf dargestellt. Wie bei Fig. 6a und 6b zeigen auch Fig. 4a du 4b jeweils zwei Graphen, von denen in dem jeweils oberen die Signale Rout (gestrichelte Linie) und outclk (durchgezogene Linie) und in dem jeweils unteren die Signale out (durchgezogene Linie) und Reset (gestrichelte Linie) angezeigt sind, und in denen die Zeit entlang der x- Achse in Nanosekunden und die Signalspannung entlang der y- Achse in V aufgetragen ist.
Fig. 6a zeigt die Signalverläufe in dem Fall, daß der Rout- Puls bzw. die vordere Flanke 200 desselben vor der vorderen Flanke 210 des Takts outclk auftritt. In diesem Fall tastet, wie in dem Fall der Schaltung von Fig. 5, das D-Flip-Flop 830 das Signal Rout ab und löst über das Signal RESET den Zähler des Schaltungsteils 820 aus 220, der daraufhin mit dem Begin des nachfolgenden Taktzyklus mit der Erzeugung des neuen asynchronen Steuersignals an dem Ausgang out beginnt 230.
Fig. 6a zeigt den Fall, daß der Rout-Puls bzw. die vordere Flanke 240 desselben nach der steigenden Flanke 250 des Si­ gnals outclk kommt. In diesem Fall tastet das D-Flip-Flop 830 das Signal Rout zu einem Zeitpunkt ab, da sich das Signal Rout noch in einem logisch niedrigen Zustand befindet und folglich noch nicht aktiviert ist. Das gegenphasig angesteu­ erte D-Flip-Flop 110 taktet das asynchrone Steuersignal Rout jedoch einen halben Taktzyklus später ab, nämlich an der fal­ lenden Flanke 260 des Taktes outclk, zu welchem Zeitpunkt sich das Signal Rout bereits in einem logisch hohen Zustand befindet, d. h. aktiviert ist. Das D-Flip-Flop 110 zeigt dies durch ein logisch hohes Abtastsignal an dem Ausgang Q an, wo­ durch über das NOR-Gatter 120 und das NAND-Gatter 870 der Zähler des Schaltungsteils 820 mittels des Signals RESET aus­ gelöst bzw. rückgesetzt wird 270. Der Zähler beginnt darauf­ hin bei der nächsten steigenden Flanke des Taktes outclk 280 mit der Erzeugung des neuen asynchronen Steuersignals an dem Ausgang out 990 (290).
Wie es aus den Fig. 6a und 6b ersichtlich ist, beginnt der Zähler, da in beiden Fällen das Signal RESET vor der näch­ sten, d. h. nach der ansteigenden Flanke des Rout-Pulses auf­ tretenden, steigenden Flanke 280 und 300 des Ausgabetaktes outclk in einen logisch hohen Zustand übergeht (siehe 220 und 270), mit der selben, nächsten Ausgabetaktflanke das neue a­ synchrone Steuersignal zu erzeugen. Die Latenz bzw. die Zeit, die die Daten brauchen, um durch den Datenpfad zu gelangen, wird verglichen zu der Schaltung von Fig. 5 um insgesamt ei­ nen Taktzyklus verringert.
Bezugnehmend auf die vorhergehende Beschreibung wird darauf hingewiesen, daß die vorliegende Erfindung auf alle Schaltun­ gen anwendbar ist, bei denen ein Signal von einer Taktdomäne in eine andere überführt werden soll, wie z. B. bei Schnitt­ stellen zwischen zwei Übertragungsstrecken verschiedener Taktfrequenzen und bei asynchronen Latch-Ketten mit bei­ spielsweise einem Vier-Phasen- oder Zwei-Phasen-Protokoll.
Bezüglich des Ausführungsbeispiels von Fig. 3 und 4 wird dar­ auf hingewiesen, daß die Abtastung des eingehenden asynchro­ nen Steuersignals auch durch andere Einrichtungen als ein D- Flip-Flop erzielt werden können, wie z. B. durch ein taktzu­ standsgesteuertes Flip-Flop anderer Art. Anstatt des NOR- Gatters können ferner andere Einrichtungen vorgesehen werden, um sicherzustellen, daß die Erzeugung des neuen asynchronen Steuersignals durchgeführt wird, falls beide oder zumindest einer der abgetasteten logischen Zustände des eingehenden a­ synchronen Steuersignals dem vorbestimmten bzw. aktivierten Zustand entspricht, wie z. B. insbesondere ein ODER-Gatter. Die Erzeugung des neuen asynchronen Steuersignals basierend auf dem Ausgabetakt kann auch auf andere Art und Weise als durch einen Zähler durchgeführt werden und kann insbesondere die Erzeugung eines neuen asynchronen Steuersignals umfassen, das eine um ein ganzes Vielfaches langsamere Taktfrequenz als den Ausgabetakt aufweist. Obwohl die Phasenverschiebung der beiden Takte, mit denen die Abtastungen an den D-Flip-Flops durchgeführt werden, bei dem vorhergehenden Ausführungsbei­ spiel 180° betrug, sind ferner andere Phasenverschiebungen möglich.
Darüber hinaus kann die vorliegende Erfindung in jeglicher Technologie implementiert sein, wie z. B. als integrierte Schaltung in CMOS oder BiCMOS, oder als verdrahtete Platinen­ schaltung.
Obwohl im vorhergehenden baugleiche D-Flip-Flops verwendet worden sind, die entgegengesetzt taktmäßig angesteuert wur­ den, ist es ferner möglich, daß zwei unterschiedliche Flip- Flops mit unterschiedlichen Ansprechzeiten verwendet werden, die mit demselben Takt, wie z. B. outclk, angesteuert werden aber aufgrund der unterschiedlichen Ansprechzeiten das asyn­ chrone Stauersignal Rout mit einem unterschiedlichen Phasen- bzw. Zeitversatz zu dem Takt outclk abtasten, so daß insge­ samt zwei Abtastungen des Signals Rout mit zwei voneinander phasenverschobenen Takten durchgeführt werden. Die eigentli­ che Erzeugung des neuen asynchronen Signals durch beispiels­ weise den im vorhergehenden beschriebenen Zähler würde durch eine der beiden Abtastungen gestartet und basierend auf dem zweiten Takt erfolgen.

Claims (10)

1. Verfahren zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Si­ gnal mit einem ersten Takt, mit folgenden Schritten:
Abtasten (250) des ersten Signals mit dem zweiten Takt, um festzustellen, ob das erste Signal einen vorbestimmten logi­ schen Zustand aufweist;
Abtasten (260) des ersten Signals mit einem zu dem zweiten phasenverschobenen Takt, um festzustellen, ob das erste Si­ gnal den vorbestimmten logischen Zustand aufweist; und
falls bei zumindest einem der Schritte (250, 260) des Abta­ stens festgestellt wurde, daß das erste Signal den vorbe­ stimmten Zustand aufweist, Erzeugen (290) des zweiten Signals basierend auf dem zweiten Takt, beginnend mit dem nachfolgen­ den Taktzyklus (280) des zweiten Takts.
2. Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Si­ gnal mit einem ersten Takt, mit folgenden Merkmalen:
einer Einrichtung (830) zum Abtasten des ersten Signals mit dem zweiten Takt, um festzustellen, ob das erste Signal einen vorbestimmten logischen Zustand aufweist;
einer Einrichtung (110) zum Abtasten des ersten Signals mit einem zu dem zweiten Takt phasenverschobenen Takt, um festzu­ stellen, ob das erste Signal den vorbestimmten logischen Zu­ stand aufweist; und
einer Einrichtung (820) zum Erzeugen des zweiten Signals ba­ sierend auf dem zweiten Takt, beginnend mit dem nachfolgenden Taktzyklus des zweiten Takts, falls von zumindest einer der Einrichtungen (110, 830) zum Abtasten festgestellt wurde, daß das erste Signal den vorbestimmten Zustand aufweist.
3. Vorrichtung gemäß Anspruch 2, bei der das erste und das zweite Signal asynchrone Steuersignale sind.
4. Vorrichtung gemäß Anspruch 2 oder 3, bei der die Abta­ stungen durch die Abtasteinrichtungen (110, 830) an der stei­ genden oder fallenden Flanke des zweiten oder des zu dem zweiten Takt phasenverschobenen Takts durchgeführt werden.
5. Vorrichtung gemäß einem der Ansprüche 2 bis 4, bei der der zu dem zweiten Takt phasenverschobene Takt von dem zwei­ ten Takt um 180° phasenverschoben ist.
6. Vorrichtung gemäß einem der Ansprüche 2 bis 4, bei der
die erste Einrichtung (830) zum Abtasten folgendes Merkmal aufweist:
ein erstes taktzustandsgesteuertes Flip-Flop (830), das mit dem zweiten Takt angesteuert wird, mit einem Eingang, an dem das erste Signal anliegt, und einem Ausgang zum Ausgeben ei­ nes ersten Abtastsignals, das einen mit dem zweiten Takt ab­ getasteten logischen Zustand des ersten Signals anzeigt, und
die zweite Einrichtung zum Abtasten folgendes Merkmale auf­ weist:
ein zweites taktzustandsgesteuertes Flip-Flop (110), das mit dem zu dem zweiten Takt phasenverschobenen Takt angesteuert wird, mit einem Eingang, an dem das erste Signal anliegt, und einem Ausgang zum Ausgeben eines zweiten Abtastsignals, das einen mit dem zu dem zweiten Takt phasenverschobenen Takt ab­ getasteten logischen Zustand des ersten Signals anzeigt.
7. Vorrichtung gemäß Anspruch 6, bei der das erste und das zweite taktzustandsgesteuerte Flip-Flop (110, 830) baugleich sind.
8. Vorrichtung gemäß Anspruch 6 oder 7, die ferner folgen­ des Merkmal aufweist:
eine Einrichtung (120) zum Durchführen einer ODER-Verknüpfung mit einem ersten Eingang, der mit dem Ausgang des ersten taktzustandsgesteuerten Flip-Flops (830) verbunden ist, einem zweiten Eingang, der mit dem Ausgang des zweiten taktzu­ standsgesteuerten Flip-Flops (110) verbunden ist, und einem Ausgang, der mit der Einrichtung (820) zum Erzeugen verbunden ist, wobei die Einrichtung zum Erzeugen (820) auf die Ein­ richtung (120) zum Durchführen einer ODER-Verknüpfung an­ spricht, um an dem nachfolgenden Taktzyklus die Erzeugung des zweiten Signals zu beginnen.
9. Vorrichtung gemäß einem der Ansprüche 2 bis 8, bei der die Einrichtung (820) zum Erzeugen folgendes Merkmal auf­ weist:
einen Taktteiler zum Teilen des zweiten Takts um ein ganzzah­ liges Vielfaches, um den auf dem zweiten Takt basierenden Takt zu erhalten, wobei der auf dem zweiten Takt basierende Takt gleichzeitig zu dem nachfolgenden Taktzyklus des zweiten Takts beginnt.
10. Vorrichtung gemäß Anspruch 8, bei der die Einrichtung (820) zum Erzeugen folgende Merkmale aufweist:
ein RS-Flip-Flop (850) mit einem Rücksetzeingang, das mit dem Ausgang der Einrichtung (120) zum Durchführen einer ODER- Verknüpfung verbunden ist, einem Rücksetzeingang zum Empfan­ gen eines Rücksetzsignals und einem Ausgang; und
einen Zähler mit einem Rücksetzeingang, der mit dem Ausgang des RS-Flip-Flops (850) verbunden ist, einem Eingang zum Emp­ fangen des zweiten Takts und einem Ausgang zum Ausgeben eines um eine vorbestimmte Potenz von 2 geteilten Takts als dem zweiten Takt beginnend an dem nachfolgenden Taktzyklus.
DE10122702A 2001-05-10 2001-05-10 Verfahren und Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt Expired - Fee Related DE10122702C2 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE10122702A DE10122702C2 (de) 2001-05-10 2001-05-10 Verfahren und Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt
US10/143,600 US7058840B2 (en) 2001-05-10 2002-05-10 Method and apparatus for generating a second signal having a clock based on a second clock from a first signal having a first clock
US11/367,218 US20060149989A1 (en) 2001-05-10 2006-03-03 Method and apparatus for generating a second signal having a clock based on a second clock from a first signal having a first clock

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10122702A DE10122702C2 (de) 2001-05-10 2001-05-10 Verfahren und Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt

Publications (2)

Publication Number Publication Date
DE10122702A1 DE10122702A1 (de) 2002-11-21
DE10122702C2 true DE10122702C2 (de) 2003-08-21

Family

ID=7684278

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10122702A Expired - Fee Related DE10122702C2 (de) 2001-05-10 2001-05-10 Verfahren und Vorrichtung zum Erzeugen eines zweiten Signals mit einem auf einem zweiten Takt basierenden Takt aus einem ersten Signal mit einem ersten Takt

Country Status (2)

Country Link
US (2) US7058840B2 (de)
DE (1) DE10122702C2 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060023819A1 (en) * 2004-07-29 2006-02-02 Adkisson Richard W Clock synchronizer
US7436917B2 (en) * 2004-07-29 2008-10-14 Hewlett-Packard Development Company, L.P. Controller for clock synchronizer
US20060117201A1 (en) * 2004-11-30 2006-06-01 Infineon Technologies North America Corp. Variable pipeline circuit
DE102005046363B4 (de) * 2005-09-28 2016-09-01 Polaris Innovations Ltd. Integrierter Halbleiterspeicher mit Übertragung von Daten über eine Datenschnittstelle
US7515667B2 (en) * 2005-11-09 2009-04-07 Hewlett-Packard Development Company, L.P. Method and apparatus for reducing synchronizer shadow
US7701255B2 (en) * 2007-11-06 2010-04-20 Elastix Corporation Variability-aware scheme for asynchronous circuit initialization
US9928202B2 (en) * 2015-04-21 2018-03-27 Fermi Research Alliance, Llc Time-division multiplexing data bus

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69029162T2 (de) * 1989-05-09 1997-05-28 Hewlett Packard Co Gaschromatograph mit integrierter Drucksteuerung
EP0798630A1 (de) * 1996-03-29 1997-10-01 Fore Systems, Inc. Synchronisiereinrichtung, Verfahren und System für Datenübertragung
DE19737589C1 (de) * 1997-08-28 1998-11-26 Siemens Ag Interfaceschaltung für fullcustom- und semicustom-Taktdomänen
WO1999028806A2 (en) * 1997-12-04 1999-06-10 Intel Corporation Method and apparatus for propagating a signal between synchronous clock domains operating at a non-integer frequency ratio

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69030192T2 (de) * 1990-12-18 1997-07-24 Alcatel Bell Nv Synchronisationsschaltung
US5256912A (en) 1991-12-19 1993-10-26 Sun Microsystems, Inc. Synchronizer apparatus for system having at least two clock domains
KR0167683B1 (ko) * 1995-09-11 1999-02-01 김광호 동기메모리의 고주파 동작용 데이타 출력버퍼 제어방법
KR100236088B1 (ko) * 1997-02-03 1999-12-15 김영환 클럭 분배기
US5969576A (en) * 1997-12-22 1999-10-19 Philips Electronics North America Corporation Phase locked loop lock condition detector
US6292507B1 (en) * 1999-09-01 2001-09-18 Lexmark International, Inc. Method and apparatus for compensating a spread spectrum clock generator
US6323791B1 (en) * 1999-10-13 2001-11-27 Analog Devices, Inc. Control systems and methods for reducing residue signal offset in subranging analog-to-digital converters
US6788753B1 (en) * 2000-05-12 2004-09-07 Oak Technology, Inc. Maintenance of data synchronization across large gaps in a data stream
US6651122B2 (en) * 2000-12-07 2003-11-18 Micron Technology, Inc. Method of detecting a source strobe event using change detection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69029162T2 (de) * 1989-05-09 1997-05-28 Hewlett Packard Co Gaschromatograph mit integrierter Drucksteuerung
EP0798630A1 (de) * 1996-03-29 1997-10-01 Fore Systems, Inc. Synchronisiereinrichtung, Verfahren und System für Datenübertragung
DE19737589C1 (de) * 1997-08-28 1998-11-26 Siemens Ag Interfaceschaltung für fullcustom- und semicustom-Taktdomänen
WO1999028806A2 (en) * 1997-12-04 1999-06-10 Intel Corporation Method and apparatus for propagating a signal between synchronous clock domains operating at a non-integer frequency ratio

Also Published As

Publication number Publication date
US7058840B2 (en) 2006-06-06
US20020178392A1 (en) 2002-11-28
DE10122702A1 (de) 2002-11-21
US20060149989A1 (en) 2006-07-06

Similar Documents

Publication Publication Date Title
DE69432587T2 (de) Verzögerungsleitungsseparator für datenbus
DE10164914B4 (de) Verifizierungsschaltungsanordnung
EP1590727B1 (de) Asynchrone hüllschaltung für eine global asynchrone, lokal synchrone (gals) schaltung
DE10249886B4 (de) Verfahren und Vorrichtung zum Erzeugen eines Taktsignals mit vorbestimmten Taktsingaleigenschaften
DE10255685B3 (de) Taktsynchronisationsschaltung
EP0574598A1 (de) Datenpufferspeicher
DE60206278T2 (de) Vorrichtung und verfahren zum detektieren von statusanzeigen
DE19914986A1 (de) Vorrichtung zum Verzögern eines Taktsignals
DE19625185C2 (de) Präzisionstaktgeber
WO1993003440A1 (de) Hochgeschwindigkeits-bussystem und verfahren zum betreiben desselben
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
DE60213443T2 (de) Speicherschaltung und schaltung zur erkennung eines gültigen überganges
DE3818843A1 (de) Verfahren und schaltungsanordnung zur rueckgewinnung eines bittaktes aus einem empfangenen digitalen nachrichtensignal
DE102005019568B4 (de) Speichereinrichtung, Verwendung derselben und Verfahren zur Synchronisation eines Datenwortes
DE4040299A1 (de) Schaltungsanordnung zur taktumsetzung eines digitalen signals
EP0275406A1 (de) Verfahren und Anordnung zur Rückgewinnung des Taktes oder der Taktphase eines synchronen oder plesiochronen Digitalsignals
EP0471207B1 (de) Schaltungsanordnung zum Regenerieren und Synchronisieren eines digitalen Signals
DE10297489T5 (de) Phasenanpassungsvorrichtung und Halbleiterspeicher-Testvorrichtung
EP1721407A1 (de) Schnittstellenvorrichtung und verfahren zur synchronisation von daten
DE60214379T2 (de) Verfahren und vorrichtung für eine taktschaltung
AT512192B1 (de) Synchrone sequentielle logikvorrichtung mit doppelt getriggerten flipflops sowie eine methode zum gezielt zeitversetzten triggern solcher zustandspeichernden register
DE10052210A1 (de) Integrierte Schaltung mit einer synchronen und asynchronen Schaltung sowie Verfahren zum Betrieb einer solchen integrierten Schaltung
WO2003044945A2 (de) Mehrphasiger komparator
DE4316494C1 (de) Digitale Taktsynchronisierung
DE3835259C2 (de) Schaltungsanordnung zum Empfang von seriell übertragenen digitalen Daten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8304 Grant after examination procedure
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: QIMONDA AG, 81739 MUENCHEN, DE

8339 Ceased/non-payment of the annual fee