专利摘要:
Es wird eine Vorrichtung zur Datensynchronisation, die bei hoher Geschwindigkeit und niedriger Leistungsaufnahme ausfallsicher ist, für den Austausch von getakteten Daten zwischen verschiedenen Taktbereichen, die in einer digitalen Verarbeitungseinrichtung mit gleicher Taktfrequenz, aber mit beliebiger relativer Phasenverschiebung laufen, geboten. Eine Registeranordnung weist eine vorher festgelegte Anzahl an parallelen Registern auf, wobei jedes Register einen Dateneingang, einen Schreibtakteingang, einen Lesetakteingang und einen Datenausgang besitzt. Ein Schreib-Auswahl-Multiplexer weist einen Eingang auf, der ein Schreibtaktsignal von einem ersten Taktbereich empfängt, einen Taktausgang für jedes der parallelen Register, der mit einem Schreibtakteingang eines entsprechenden Registers verbunden ist, und einen Schreib-Auswahl-Eingang für jeden Taktausgang. Ein Lese-Auswahl-Multiplexer weist einen Eingang auf, der ein Lesetaktsignal von einem zweiten Taktbereich empfängt, einen Taktausgang für jedes der parallelen Register, der mit einem Lesetakteingang eines entsprechenden Registers verbunden ist, und einen Lese-Auswahl-Eingang für jeden Taktausgang. Ein Schreib-Auswahl-Schieberegister weist eine Anzahl an Stufen, die mit der vorher festgelegten Anzahl an Registern übereinstimmt, und eine Ausgangsstufe auf, die an eine Eingangsstufe zurückgeschleift ist. Jede Stufe des Schreib-Auswahl-Schieberegisters hat einen Ausgang, der mit einem entsprechenden Eingang der ...There is provided a data synchronization apparatus which is fail-safe at high speed and low power consumption for exchanging clocked data between different clock domains running in a digital processor at the same clock frequency but with any relative phase shift. A register arrangement has a predetermined number of parallel registers, each register having a data input, a write clock input, a read clock input, and a data output. A write select multiplexer has an input receiving a write clock signal from a first clock domain, a clock output for each of the parallel registers connected to a write clock input of a corresponding register, and a write select input for each clock output. A read select multiplexer has an input receiving a read clock signal from a second clock domain, a clock output for each of the parallel registers connected to a read clock input of a corresponding register, and a read select input for each clock output. A write select shift register has a number of stages that match the predetermined number of registers and an output stage that is looped back to an input stage. Each stage of the write select shift register has an output connected to a corresponding input of the ...
公开号:DE102004011672A1
申请号:DE102004011672
申请日:2004-03-10
公开日:2005-10-06
发明作者:Joerg Goller;Norbert Reichel
申请人:Texas Instruments Deutschland GmbH;
IPC主号:G06F1-12
专利说明:
[0001] Dievorliegende Erfindung bezieht sich auf eine Vorrichtung zur Datensynchronisationfür den Austauschvon getakteten Daten zwischen verschiedenen Taktbereichen, die ineiner digitalen Verarbeitungseinrichtung mit gleicher Taktfrequenzaber mit beliebiger relativer Phasenverschiebung laufen.TheThe present invention relates to a device for data synchronizationfor the exchangeof clocked data between different clock ranges, which ina digital processing device with the same clock frequencybut with any relative phase shift.
[0002] Ineinem System, in dem synchrone Signale zwischen verschiedenen Taktbereichenmit derselben Taktfrequenz aber mit beliebiger Phasenbeziehung zwischenden Taktsignalen ausgetauscht werden, gibt es das Problem der Metastabilität. Datensignale,die ihren Logikzustand in jeder Taktperiode ändern können, erfordern eine Zwischenspeicherung,um sicherzustellen, dass ihr Zustand stabil ist, wenn sie gelatchedwerden. Außerdemkann die Zeit, in der ein Bit im Speicher verweilt, in einigen Systemenkritisch sein. Also stellt die in den Datenpfad eingeführte Latenzzeitbeim Austausch von Daten zwischen verschiedenen Taktbereichen einweiteres Problem dar.Ina system in which synchronous signals between different clock rangeswith the same clock frequency but with any phase relationship betweenthe clock signals are exchanged, there is the problem of metastability. Data signalswhich can change their logic state every clock period, require caching,to make sure that their condition is stable when they are latchedbecome. FurthermoreIn some systems, the time that a bit lingers in memory can bebe critical. So, the latency introduced in the data path representswhen exchanging data between different clock rangesanother problem.
[0003] EineherkömmlicheLösungdieser Probleme besteht in der Verwendung eines FIFO-Speichers zur Zwischenspeicherung.Für Schreib-und Leseoperationen werden inkrementierte/dekrementierte Pointer verwendet,die nur mit einem der Taktsignale synchronisiert sind. Dies istkeine ausfallsichere Lösung. Dermittlere Ausfallabstand (MTBF) ist eine Zahl, die von der Phasenbeziehungzwischen den Taktsignalen, dem gewählten Versatz und der Frequenz,bei der der FIFO-Speicherbetrieben wird, abhängt.AconventionalsolutionThese problems are the use of a FIFO memory for caching.For writingand read operations use incremented / decremented pointers,which are synchronized with only one of the clock signals. This isno fail-safe solution. Of themean failure distance (MTBF) is a number that depends on the phase relationshipbetween the clock signals, the selected offset and the frequency,at the FIFO memoryis operated, depends.
[0004] Dievorliegende Erfindung bietet eine Vorrichtung zur Datensynchronisation,die bei hoher Geschwindigkeit und niedriger Leistungsaufnahme ausfallsicherist. Im Besonderen bietet die Erfindung eine Vorrichtung zur Datensynchronisation für den Austauschvon seriellen Daten oder Bussen zwischen verschiedenen Taktbereichen,die in einer digitalen Verarbeitungseinrichtung mit gleicher Taktfrequenz abermit beliebiger relativer Phasenverschiebung laufen. Die Vorrichtungzur Datensynchronisation umfasst eine Registeranordnung mit einervorher festgelegten Anzahl an parallelen Registern, von denen jedeseinen Dateneingang, einen Schreibtakteingang, einen Lesetakteingangund einen Datenausgang besitzt. Ein Schreib-Auswahl-Multiplexerweist einen Eingang auf, der ein Schreibtaktsignal von einem erstenTaktbereich empfängt,einen Taktausgang fürjedes der parallelen Register, der mit einem Schreibtakteingangeines entsprechenden Registers verbunden ist, und einen Schreib-Auswahl-Eingang für jedenTaktausgang. Ein Lese-Auswahl-Multiplexer weist einen Eingang auf,der ein Lesetaktsignal von einem zweiten Taktbereich empfängt, einenTaktausgang fürjedes der parallelen Register, der mit einem Lesetakteingang einesentsprechenden Registers verbunden ist, und einen Lese-Auswahl-Eingang für jedenTaktausgang. Ein Schreib-Auswahl-Schieberegister weist eine Anzahlan Stufen, die mit der vorher festgelegten Anzahl an Registern übereinstimmt,und eine Ausgangsstufe auf, die an eine Eingangsstufe zurückgeschleiftist. Jede Stufe des Schreib-Auswahl-Schieberegisters hat einen Ausgang,der mit einem entsprechenden Eingang der Schreib-Auswahl-Eingänge desSchreib-Auswahl-Multiplexers verbunden ist. Das Schreib-Auswahl-Schieberegister istmit dem Schreibtaktsignal getaktet. Ein Lese-Auswahl-Schieberegister weist eineAnzahl an Stufen, die mit der vorher festgelegten Anzahl an Registern übereinstimmt,und eine Ausgangsstufe auf, die an eine Eingangsstufe zurückgeschleiftist. Jede Stufe des Lese-Schieberegisters hat einen Ausgang, dermit einem entsprechenden Eingang der Lese-Auswahl-Eingänge desLese-Auswahl-Multiplexers verbunden ist. Das Lese-Auswahl-Schieberegisterist mit dem Lesetaktsignal getaktet. Ein Rücksetzkreis initialisiert jedes Schieberegistermit einem Bitmuster, das nur einen hohen Wert enthält, wobeidie Bitmuster in den Schieberegistern einen konstanten relativenVersatz aufweisen. Im Betrieb wird ein getakteter Eingabedatenstrom,der mit dem Takt des ersten Taktbereichs synchronisiert ist, andie Dateneingängeder Register angelegt, und ein getakteter Ausgabedatenstrom, dermit dem Takt des zweiten Taktbereichs synchronisiert ist, wird vonden Datenausgängender Register abgerufen.Thepresent invention provides a device for data synchronization,fail-safe at high speed and low power consumptionis. In particular, the invention provides a device for data synchronization for the exchangeserial data or buses between different clock domains,but in a digital processing device with the same clock frequencyrun with any relative phase shift. The devicefor data synchronization comprises a register arrangement with apredetermined number of parallel registers, each of whicha data input, a write clock input, a read clock inputand has a data output. A write-select multiplexerhas an input which receives a write clock signal from a firstClock range receives,a clock output foreach of the parallel registers having a write clock inputof a corresponding register, and a write select input for eachClock output. A read select multiplexer has an input,receiving a read clock signal from a second clock domain, oneClock output foreach of the parallel registers connected to a read clock input of acorresponding register, and a read-select input for eachClock output. A write select shift register has a numberat levels that match the predetermined number of registers,and an output stage looped back to an input stageis. Each stage of the write select shift register has an output,with a corresponding input of the write select inputs of theWrite selection multiplexer is connected. The write select shift register isclocked with the write clock signal. A read select shift register has aNumber of levels that matches the number of registers set in advance,and an output stage looped back to an input stageis. Each stage of the read shift register has an output thatwith a corresponding input of the read select inputs of theRead-select multiplexer is connected. The read-select shift registeris clocked with the read clock signal. A reset circuit initializes each shift registerwith a bit pattern containing only a high value, wherethe bit patterns in the shift registers have a constant relativeHave offset. In operation, a clocked input data stream,which is synchronized with the clock of the first clock rangethe data inputscreated the register, and a clocked output data stream, theis synchronized with the clock of the second clock range is fromthe data outputsretrieved from the register.
[0005] Durchdie Integration eines passenden festen Versatzes zwischen den Bitmusternin den zwei Schieberegistern werden niemals Daten gelesen, während siegeschrieben werden. Es gibt eine wählbare, aber mindestens einevolle Taktperiode zwischen dem Schreiben und dem Lesen derselbenDaten. Je nach der Leistung der verwendeten Register und/oder derTaktfrequenz kann der Versatz zwischen den Bitmustern der Schieberegistervom Entwickler so festgelegt werden, dass nicht gegen die Anforderungenbezüglichder zeitlichen Abstimmung der Register verstoßen wird. Außerdem beträgt das Risiko,ein Informationsbit zu verlieren, genau Null und der MTBF ist unendlich,da der Versatz zwischen den Bitmustern in den Schieberegistern einfester Versatz ist und die Frequenz, bei der jedes einzelne Registerbetrieben wird, gleich Taktfrequenz geteilt durch die Anzahl anparallelen Registern ist. Auch die Leistungsaufnahme wird entsprechendverringert, da zu einem beliebigen Zeitpunkt immer nur ein Register getaktetist und der größte Teilder Schaltungsvorrichtung inaktiv bleibt.Bythe integration of a proper fixed offset between the bit patternsThe two shift registers never read data while they areto be written. There is a selectable, but at least onefull clock period between writing and reading themDates. Depending on the performance of the registers used and / or theClock frequency can be the offset between the bit patterns of the shift registersbe set by the developer so that does not violate the requirementsin terms oftiming of registries is violated. In addition, the risklosing an information bit, exactly zero, and the MTBF is infinite,because of the offset between the bit patterns in the shift registersfixed offset and the frequency at which each individual registeris operated, equal clock frequency divided by the number ofis parallel registers. The power consumption will be appropriateis reduced because at any one time only one register is clockedis and most of itthe circuit device remains inactive.
[0006] Ineinem vorteilhaften Ausführungsbeispiel derErfindung besitzen die Schieberegister vier Stufen und der Versatzzwischen den Bitmustern beträgt zweiStufen. Bei der Rücksetzungwird zum Beispiel das Schreib-Schieberegister auf ein Bitmuster „1000" initialisiert unddas Lese-Schieberegister wird auf ein Bitmuster „0010" initialisiert. Selbst im schlechtesten Falleiner gemeinsamen Phasendifferenz zwischen den Taktsignalen (diedie gleiche Frequenz aufweisen) gibt es mindestens eine volle Taktperiodezwischen einem Schreib- und einem Lesevorgang derselben Daten.In an advantageous embodiment of the invention, the shift registers have four stages and the offset between the bit patterns is two steps. In the reset, for example, the write shift register is initialized to a bit pattern "1000" and the read shift register is initialized to a bit pattern "0010". Even in the worst case of a common phase difference between the clock signals (having the same frequency), there is at least one full clock period between a write and a read of the same data.
[0007] WeitereVorteile und Merkmale werden aus der folgenden Beschreibung unterBezugnahme auf die beigefügtenZeichnungen ersichtlich. In den Zeichnungen:FurtherAdvantages and features will become apparent from the following descriptionReference to the attachedDrawings visible. In the drawings:
[0008] stellt 1 einBlockdiagramm der Vorrichtung zur Datensynchronisation dar;provides 1 a block diagram of the device for data synchronization is;
[0009] 2 stelltein Schaltbild eines Lese-Schieberegisters in der Vorrichtung aus 1 dar; 2 depicts a schematic diagram of a read shift register in the device 1 group;
[0010] 3 stelltein Schaltbild einer Rücksetz-Synchronisierungschaltungdar; und 3 Fig. 12 is a circuit diagram of a reset synchronization circuit; and
[0011] 4 stelltein Diagramm dar, das zwei gemeinsam verschobene Vierbitmuster invier aufeinander folgenden Bedingungen zeigt. 4 Fig. 12 is a diagram showing two mutually shifted four bit patterns in four consecutive conditions.
[0012] DieVorrichtung zur Datensynchronisation in 1 ist Teileiner digitalen Verarbeitungseinrichtung und sie wird für den Austauschvon Daten zwischen verschiedenen Taktbereichen, die mit derselben Taktfrequenzmit einer beliebigen relativen Phase zwischen den Taktsignalen laufen.Währenddie Erfindung unter Bezugnahme auf Datenbits offenbart wird, diesequentiell zwischen einzelnen Datenleitungen ausgetauscht werden,sollte es verstanden werden, dass dieselben Konzepte auch auf Bussemit parallelen Datenleitungen angewendet werden können.The device for data synchronization in 1 is part of a digital processing device and is used for the exchange of data between different clock domains running at the same clock frequency with any relative phase between the clock signals. While the invention is disclosed with reference to data bits being exchanged sequentially between individual data lines, it should be understood that the same concepts can be applied to buses having parallel data lines as well.
[0013] DieVorrichtung enthälteine Registeranordnung mit vier parallelen Daten-Schreibregistern Rw1 bis Rw4 und vierparallelen Daten-Leseregistern Rr1 bis Rr4. Die Dateneingänge derSchreibregister Rw1 bis Rw4 sind parallel mit einer DateneingangsschnittstelleDATAin geschaltet. Jedes Schreibregister Rw1 bis Rw4 hat einen Ausgang,der mit einem Dateneingang eines entsprechenden Leseregisters Rr1bis Rr4 verbunden ist. Im abgebildeten Ausführungsbeispiel handelt es sichbei jedem Register Rw1 bis Rw4 und Rr1 bis Rr4 um ein D-Flipflop.TheDevice containsa register arrangement having four parallel data write registers Rw1 to Rw4 and fourparallel data read registers Rr1 to Rr4. The data inputs of theWrite registers Rw1 to Rw4 are in parallel with a data input interfaceDATAin switched. Each write register Rw1 to Rw4 has an output,with a data input of a corresponding read register Rr1until Rr4 is connected. In the illustrated embodiment isat each register Rw1 to Rw4 and Rr1 to Rr4 to a D flip-flop.
[0014] EinTaktsignal CLKI von einem ersten Taktbereich, das Schreibtaktsignalgenannt wird, wird selektiv an einen Takteingang nur eines der SchreibregisterRw1 bis Rw4 zur gleichen Zeit mit Hilfe einer Schreib-Multiplexer-Vorrichtung,die aus vier parallelen Multiplexerstufen Mw1 bis Mw4 besteht, angelegt.Jede Schreib-Multiplexerstufe Mw1 bis Mw4 hat einen Wahleingang,der mit einem von vier Ausgängeneines ersten Vier-Phasen-Schieberegisters, dem so genannten Schreib-SchieberegisterSRw verbunden ist.OneClock signal CLKI from a first clock range, the write clock signalis selectively connected to a clock input only one of the write registersRw1 to Rw4 at the same time by means of a write multiplexer device,which consists of four parallel multiplexer stages Mw1 to Mw4 applied.Each write multiplexer stage Mw1 to Mw4 has a select input,the one with four outletsa first four-phase shift register, the so-called write shift registerSRw is connected.
[0015] Auf ähnlicheWeise wird ein Taktsignal CLK2 von einem zweiten Taktbereich, dasLesetaktsignal genannt wird, selektiv an einen Takteingang nur einesder Leseregister Rr1 bis Rr4 zur gleichen Zeit mit Hilfe einer Lese-Multiplexer-Vorrichtung,die aus vier parallelen Multiplexerstufen Mr1 bis Mr4 besteht, angelegt.Jede Lese-Multiplexerstufe Mr1 bis Mr4 hat einen ausgewählten Eingang,der mit einem von vier Ausgängeneines zweiten Vier-Phasen-Schieberegisters,dem so genannten Lese-Schieberegister SRr verbunden ist.On similarWay, a clock signal CLK2 from a second clock domain, theRead clock signal is selectively connected to a clock input only onethe read register Rr1 to Rr4 at the same time by means of a read multiplexer device,which consists of four parallel multiplexer stages Mr1 to Mr4, applied.Each read multiplexer stage Mr1 to Mr4 has a selected input,the one with four outletsa second four-phase shift register,connected to the so-called read shift register SRr.
[0016] DieAusgängeder Leseregister Rr1 bis Rr4 sind jeweils mit einem Eingang einervon vier Entkopplungspufferstufen B1 bis B4 verbunden, deren Ausgänge gemeinsammit einem Dateneingang eines D-Flipflops DFF0 verbunden sind, derdurch das invertierte Taktsignal CLK2 getaktet ist und dessen Ausgangeine Datenausgangsschnittstelle DATAout ist. Die EntkopplungspufferstufenB1 bis B4 empfangen auch ausgewählteEingaben von den invertierten Ausgängen Q1 bis Q4vom Lese-Schieberegister SRr, um Konkurrenz zu vermeiden. Die Auswahlder Pufferstufen B1 bis B4 ist so, dass ein Registerausgang zurgleichen Zeit ausgewähltwird und der ausgewähltezu puffernde Registerausgang ein Ausgang eines Registers ist, daszur gleichen Zeit nicht getaktet ist.The outputs of the read registers Rr1 to Rr4 are each connected to an input of one of four decoupling buffer stages B1 to B4 whose outputs are connected in common to a data input of a D flip-flop DFF0 which is clocked by the inverted clock signal CLK2 and whose output is a data output interface DATAout , The decoupling buffer stages B1 to B4 also receive selected inputs from the inverted outputs Q 1 to Q 4 from the read shift register SRr to avoid competition. The selection of the buffer stages B1 to B4 is such that a register output is selected at the same time and the selected register output to be buffered is an output of a register which is not clocked at the same time.
[0017] Einbevorzugtes Ausführungsbeispieleines Schieberegisters ist in 2 unterBezugnahme auf ein Lese-Schieberegister SRr abgebildet, wobei verstandensein sollte, dass das Schreib-Schieberegister SRw auf eine ähnlicheWeise konfiguriert wäre. DasSchieberegister SRr in 2 besteht aus vier in Reihegeschalteten D-FlipflopsF1 bis F4. Der Ausgang der letzten Stufe F4 ist an den Eingang derersten Stufe F1 zurückgeschleift.Jede Stufe hat einen nicht invertierten Ausgang (Q 1 bis Q4) undeinen invertierte Ausgang (Q1bis Q4).A preferred embodiment of a shift register is in 2 with reference to a read shift register SRr, it should be understood that the write shift register SRw would be configured in a similar manner. The shift register SRr in 2 consists of four series-connected D flip-flops F1 to F4. The output of the last stage F4 is looped back to the input of the first stage F1. Each stage has a non-inverted output (Q 1 to Q 4) and an inverted output ( Q 1 to Q 4).
[0018] EineRücksetz-Synchronisierungschaltung RESETwird bereitgestellt, um beide Schieberegister SRw und SRr mit spezifischenVierbitmustern bei jeder Rücksetzungder Vorrichtung zu initialisieren, wie unter Bezugnahme auf 3 erläutert wird.A reset sync circuit RESET is provided to initialize both shift registers SRw and SRr with specific four-bit patterns every time the device is reset as described with reference to FIG 3 is explained.
[0019] Diein 3 abgebildete Rücksetz-Synchronisierungschaltungenthältvier in Reihe geschaltete D-Flipflops DFF1 bis DFF4 und zwei UND-SchaltungenA1 und A2. Die Flipflops DFF1 und DFF2 sind durch das SchreibtaktsignalCLK1 getaktet und die Flipflops DFF3 und DFF4 sind durch das LesetaktsignalCLK2 getaktet. Ein Rücksetzsignals RESET_NO_SYNCHwird an den Dateneingang des ersten Flipflops DFF1 und an einenersten Eingang jeder UND-Schaltung A1, A2 angelegt. Ein zweiter Eingangder UND-Schaltung A1 ist mit dem Ausgang des Flipflops DFF4 verbunden,und ein zweiter Eingang der UND-Schaltung A2 ist mit dem Ausgang desFlipflops DFF2 verbunden. Durch die Synchronisierung des Rücksetzsignalsindividuell und sequentiell zu jedem der Taktbereiche wird ein korrektesanfänglichesLaden der Schieberegister SRw und SRr mit ihren vorher definiertenin 4 gezeigten Saatwerten von den Ausgängen derUND-Schaltungen A1bzw. A2 sichergestellt.In the 3 The illustrated reset synchronizing circuit includes four series-connected D flip-flops DFF1 to DFF4 and two AND circuits A1 and A2. The flip-flops DFF1 and DFF2 are clocked by the write clock signal CLK1, and the flip-flops DFF3 and DFF4 are latched by the read clock gnal CLK2 clocked. A reset signal RESET_NO_SYNCH is applied to the data input of the first flip-flop DFF1 and to a first input of each AND circuit A1, A2. A second input of the AND circuit A1 is connected to the output of the flip-flop DFF4, and a second input of the AND circuit A2 is connected to the output of the flip-flop DFF2. By synchronizing the reset signal individually and sequentially to each of the clock domains, a correct initial loading of the shift registers SRw and SRr with their previously defined in 4 shown seed values of the outputs of the AND circuits A1 and A2 ensured.
[0020] UnterBezugnahme auf 4 lädt die Rücksetz-SynchronisierungschaltungRESET bei jeder Rücksetzungder Vorrichtung ein Bitmuster „1000" in das Schreib-SchieberegisterSRw und ein Bitmuster „0010" in das Lese-Schieberegister SRr.Im Betrieb wird das Schreib-Schieberegister SRw durch das SchreibtaktsignalCLK1 vom ersten Taktbereich getaktet und das Lese-Schieberegister SRrwird durch das Lesetaktsignal CLK2 vom zweiten Taktbereich getaktet.Der anfänglicheNullstellungszustand ist bei a) in 3 abgebildet.In 3 b) sind beide Bitmuster um eine Position inder gleichen Richtung verschoben. Es sollte verstanden werden, dassnormalerweise keine Verschiebung in beiden Schieberegistern zurexakt gleichen Zeit vorkommt, da der Schreibtakt und der Lesetakteine willkürlichePhasenbeziehung haben können.Da jedoch die Frequenz beider Taktsignale gleich ist, gibt es niemals eineVeränderungdes Versatzes zwischen beiden Bitmustern. Also treten Verschiebungenin den Schieberegistern SRw sowie SRr nacheinander auf, wie ausden 3 a) bis d) ersichtlich ist, wodurch die beidenBitpositionen immer denselben Versatz aufweisen. Als Folge des festenVersatzes zwischen den Bitmustern in beiden Schieberegistern wirdeine Schreiboperation niemals gleichzeitig mit einer Leseoperationfür dieselbenDaten ausgeführt.Es vergeht vielmehr immer mindestens eine volle Taktperiode zwischeneiner Schreib- und einer Leseoperation für dieselben Daten.With reference to 4 At each reset of the device, the reset synchronizing circuit RESET loads a bit pattern "1000" into the write shift register SRw and a bit pattern "0010" into the read shift register SRr. In operation, the write shift register SRw is clocked by the write clock signal CLK1 from the first clock domain, and the read shift register SRr is clocked by the read clock signal CLK2 from the second clock domain. The initial zero state is at a) in 3 displayed. In 3 b) both bit patterns are shifted by one position in the same direction. It should be understood that normally there is no shift in both shift registers at exactly the same time since the write clock and the read clock may have an arbitrary phase relationship. However, since the frequency of both clock signals is the same, there is never any change in the offset between both bit patterns. So shifts in the shift registers SRw and SRr occur successively, as from the 3 a) to d) can be seen, whereby the two bit positions always have the same offset. As a result of the fixed offset between the bit patterns in both shift registers, a write operation is never performed concurrently with a read operation for the same data. Rather, at least one full clock period always passes between a write and a read operation for the same data.
[0021] Somitist es verständlich,dass die offenbarte Vorrichtung zur Datensynchronisation einen getaktetenEingabedatenstrom, der an der Schnittstelle DATAin empfangen wirdund mit dem Takt aus einem ersten Taktbereich synchronisiert ist,an die Schnittstelle DATAout übermittelt,wo er mit dem Takt aus einem zweiten Taktbereich synchronisiertist, ohne jegliches Risiko, ein Datenbit zu verlieren, wobei der Ausfallabstand(MTBF) unendlich ist.Consequentlyits understandable,that the disclosed data synchronization device has a clockedInput data stream received at the DATAin interfaceand is synchronized with the clock from a first clock range,transmitted to the interface DATAout,where it synchronizes with the clock from a second bar rangeis, without any risk, losing a bit of data, with the failure distance(MTBF) is infinite.
[0022] DieSchnittstellen DATAin und DATAout können als Eingang und Ausgangeiner seriellen Schnittstelle verstanden werden, wenn serielle Datenausgetauscht werden.TheInterfaces DATAin and DATAout can be used as input and outputa serial interface understood when serial databe replaced.
[0023] SolltenDaten zwischen Datenbussen ausgetauscht werden, benötigt jedeBusleitung eine Registeranordnung und einen Multiplexer, wie offenbart, aberes wird nur ein Auswahlmechanismus mit einem Schreib-Schieberegisterund einem Lese-Schieberegister füralle Busleitungen benötigt.ShouldData needs to be exchanged between data buses, each one needsBus line a register arrangement and a multiplexer, as disclosed, butit will only be a selection mechanism with a write shift registerand a read shift register forall bus lines needed.
权利要求:
Claims (9)
[1]
Vorrichtung zur Datensynchronisation für den Austauschvon getakteten Daten zwischen verschiedenen Taktbereichen, die ineiner digitalen Verarbeitungseinrichtung mit gleicher Taktfrequenzaber mit beliebiger relativer Phasenverschiebung laufen, die folgendesumfasst: eine Registeranordnung, die eine vorher festgelegte Anzahlan parallelen Registern umfasst, wobei jedes Register einen Dateneingang,einen Schreibtakteingang, einen Lesetakteingang und einen Datenausgangbesitzt, einen Schreib-Auswahl-Multiplexer, der einen Eingangaufweist, der ein Schreibtaktsignal von einem ersten Taktbereichempfängt,einen Taktausgang für jedesder parallelen Register, der mit einem Schreibtakteingang einesentsprechenden Registers verbunden ist, und einen Schreib-Auswahl-Eingangfür jedenTaktausgang, einen Lese-Auswahl-Multiplexer, der einen Eingang aufweist,der ein Lesetaktsignal von einem zweiten Taktbereich empfängt, einenTaktausgang fürjedes der parallelen Register, der mit einem Lesetakteingang einesentsprechenden Registers verbunden ist, und einen Lese-Auswahl-Eingangfür jedenTaktausgang, ein Schreib-Auswahl-Schieberegister mit einerAnzahl an Stufen, die mit der vorher festgelegten Anzahl an Registern übereinstimmt,und einer Ausgangsstufe, die an eine Eingangsstufe zurückgeschleiftist, wobei jede Stufe einen Ausgang hat, der mit einem entsprechendenEingang der Schreib-Auswahl-Eingängedes Schreib-Auswahl-Multiplexers verbunden ist, wobei das Schreib-Auswahl-Schieberegister mit demSchreibtaktsignal getaktet ist, ein Lese-Auswahl-Schieberegistermit einer Anzahl an Stufen, die mit der vorher festgelegten Anzahlan Registern übereinstimmt,und einer Ausgangsstufe, die an eine Eingangsstufe zurückgeschleiftist, wobei jede Stufe des Lese-Schieberegisterseinen Ausgang hat, der mit einem entsprechenden Eingang der Lese-Auswahl-Eingänge desLese-Auswahl-Multiplexers verbunden ist, wobei das Lese-Auswahl-Schieberegistermit dem Lesetaktsignal getaktet ist, und einen Rücksetzkreisfür dieInitialisierung jedes Schieberegisters mit einem Bitmuster, dasnur einen hohen Wert enthält,wobei die Bitmuster in den Schieberegistern einen konstanten relativenVersatz aufweisen; wobei ein Eingabedatenstrom, der mit demTakt des ersten Taktbereichs synchronisiert ist, an die Dateneingänge derRegister angelegt wird und ein getakteter Ausgabedatenstrom, dermit dem Takt des zweiten Taktbereichs synchronisiert ist, von denDatenausgängender Register abgerufen wird.A data synchronization apparatus for exchanging clocked data between different clock domains running in a digital processor at the same clock frequency but at any relative phase shift, comprising: a register arrangement comprising a predetermined number of parallel registers, each register having a data input having a write clock input, a read clock input and a data output, a write select multiplexer having an input receiving a write clock signal from a first clock domain, a clock output for each of the parallel registers connected to a write clock input of a corresponding register, and a write select input for each clock output, a read select multiplexer having an input receiving a read clock signal from a second clock domain, a clock output for each of the parallel registers coupled to a read set kteingang a corresponding register, and a read select input for each clock output, a write select shift register with a number of stages that matches the predetermined number of registers, and an output stage that is looped back to an input stage wherein each stage has an output connected to a corresponding input of the write select inputs of the write select multiplexer, the write select shift register being clocked with the write clock signal, a read select shift register having a number at stages coincident with the predetermined number of registers and an output stage looped back to an input stage, each stage of the read shift register having an output connected to a corresponding input of the read select inputs of the read select Multiplexer, wherein the read select shift register is clocked with the read clock signal, and a reset circuit for initializing each shift register with a bit pattern containing only a high value, the bit patterns in the shift registers having a constant relative offset; wherein an input data stream synchronized with the clock of the first clock domain is applied to the data inputs of the registers and a clocked one The output data stream, which is synchronized with the clock of the second clock domain, is retrieved from the data outputs of the registers.
[2]
Vorrichtung zur Datensynchronisation aus Anspruch1, bei der die Registeranordnung vier parallele Register aufweistund der relative Versatz der Bitmuster zwei Stufen des Schieberegistersbeträgt.Device for data synchronization from claim1, in which the register arrangement comprises four parallel registersand the relative offset of the bit patterns two stages of the shift registeris.
[3]
Vorrichtung zur Datensynchronisation aus Anspruch1 oder Anspruch 2, bei der jedes Register eine Schreib-Registerstufeund eine Lese-Registerstufe umfasst, wobei jede Schreib-Registerstufeeinen Datenausgang aufweist, der mit einem Dateneingang der entsprechendenLese-Registerstufe verbunden ist.Device for data synchronization from claim1 or claim 2, wherein each register has a write register stageand a read register stage, each write register stagehas a data output connected to a data input of the correspondingRead register stage is connected.
[4]
Vorrichtung zur Datensynchronisation aus Anspruch3, bei der die Registerstufen durch D-Flipflops gebildet werden.Device for data synchronization from claim3, in which the register stages are formed by D flip-flops.
[5]
Vorrichtung zur Datensynchronisation gemäß Anspruch3 oder Anspruch 4, bei der sich nach den Ausgängen der Lese-Registerstufenjeweils eine Entkopplungspufferstufe befindet, die jeweils einenAuswahleingang aufweist, der mit einem invertierten Ausgang desLese-Auswahl-Schieberegisters verbunden ist.Data synchronization device according to claim3 or claim 4, wherein the outputs of the read register stageseach a decoupling buffer stage is located, each oneHas selection input, with an inverted output of theRead select shift register is connected.
[6]
Vorrichtung zur Datensynchronisation gemäß Anspruch5, bei der die Ausgängeder Entkopplungspufferstufen gemeinsam mit einem Dateneingang einesD-Flipflops verbunden sind, der durch das Taktsignal vom zweitenTaktbereich getaktet ist und der einen Ausgang aufweist, der Datenliefert, die mit dem Takt vom zweiten Taktbereich synchronisiert sind.Data synchronization device according to claim5, at the outputsthe decoupling buffer stages together with a data input of aD flip-flops are connected by the clock signal from the secondClock area is clocked and has an output, the datawhich are synchronized with the clock from the second clock domain.
[7]
Vorrichtung zur Datensynchronisation gemäß einemder Ansprüche1 bis 6, bei der der Rücksetzkreisvier in Reihe geschaltete D-Flipflops enthält, von denen ein erstes undein zweites durch das Taktsignal vom ersten Taktbereich getaktetist und von denen ein drittes und ein viertes durch das Taktsignal vomzweiten Taktbereich getaktet ist, wobei das erste D-Flipflop einenRücksetzeingangaufweist, an den ein Rücksetzsignalzur Initialisierung angelegt wird, das zweite D-Flipflop einen Ausgangaufweist, der ein Bitmuster fürdie Initialisierung des Schreib-Auswahl-Schieberegisters liefert,und das vierte D-Flipflopeinen Ausgang aufweist, der ein Bitmuster für die Initialisierung des Lese-Auswahl-Schieberegisters liefert.Device for data synchronization according to athe claims1 to 6, in which the reset circuitcontains four series-connected D flip-flops, of which a first anda second clocked by the clock signal from the first clock rangeand of which a third and a fourth by the clock signal fromclocked second clock range, wherein the first D-type flip-flop aReset inputto which a reset signalis applied for initialization, the second D flip-flop an outputhaving a bit pattern forprovides the initialization of the write select shift register,and the fourth D flip-flophas an output which provides a bit pattern for the initialization of the read select shift register.
[8]
Vorrichtung zur Datensynchronisation gemäß einemder Ansprüche1 bis 7, bei der die Daten serielle Daten sind.Device for data synchronization according to athe claims1 to 7, where the data is serial data.
[9]
Vorrichtung zur Datensynchronisation gemäß einemder Ansprüche1 bis 7, bei der die Daten auf parallelen Busleitungen ausgetauschtwerden, wobei jede Busleitung eine zugehörige Registeranordnung undzugehörigeSchreib- und Lese-Auswahl-Multiplexer aufweist, wobei die parallelenBusleitungen einen gemeinsamen Auswahlmechanismus für die Schreib-und Lese-Auswahl-Multiplexerhaben.Device for data synchronization according to athe claims1 to 7, in which the data exchanged on parallel bus lineseach bus line having an associated register arrangement andassociatedWrite and read select multiplexer, wherein the parallelBus lines have a common selection mechanism for the writeand read select multiplexerto have.
类似技术:
公开号 | 公开日 | 专利标题
JP5654630B2|2015-01-14|Interconnect system
CA1233259A|1988-02-23|High performance memory utilizing pipeliningtechniques
DE69724463T2|2004-07-08|METHOD AND DEVICE FOR GIVING SIMULTANEOUS ACCESS FROM MULTIPLE AGENTS TO A COMMON STORAGE
DE69833708T2|2006-08-24|Communication method for a media-independent interface | for a highly integrated Ethernet network element
DE60006650T2|2004-09-30|FAST RANDOM NUMBER GENERATOR
US5274678A|1993-12-28|Clock switching apparatus and method for computer systems
DE112010001824B4|2016-10-13|Packaged interface for coupling agents
DE69733407T2|2006-01-26|Schnittstelle zur datenübertragung zwischen zwei taktbereichen
CN1093963C|2002-11-06|减少在两个相互异步总线之间数据的同步传送中的累积时间延迟
DE112006001643B4|2011-09-15|Method and apparatus for negotiating point-to-point connections
DE102005009086B4|2010-09-09|Method and system for fast frequency switching for a power choke in an integrated device
DE2853239C2|1989-02-02|
DE69834739T2|2007-05-16|COMPARING DATA BETWEEN DIFFERENT LADDERS OPERATING ON DIFFERENT FREQUENCIES
DE60308183T2|2007-08-23|BUFFER ARRANGEMENT FOR MEMORY
DE69910674T2|2004-07-08|Delay locked loop
DE4345604B3|2012-07-12|Device for communication with a DRAM
DE10121901B4|2010-04-29|storage system
EP0091657B1|1986-03-05|Datenübertragungseinrichtung zwischen zwei asynchron gesteuerten Datenverarbeitungssystemen mit einem Pufferspeicher
DE102007005701B4|2014-05-22|Memory control circuit and method
US8296541B2|2012-10-23|Memory subsystem with positional read data latency
DE10041048B4|2009-12-03|Non-integer frequency divider
US4851995A|1989-07-25|Programmable variable-cycle clock circuit for skew-tolerant array processor architecture
EP0513611B1|1998-01-07|Verfahren zur Datenübertragung für einen Halbleiterspeicher und Halbleiterspeicher zur Durchführung des Verfahrens
DE112004002043B4|2011-07-14|Method, system and program for building a package
US6791352B2|2004-09-14|Method and apparatus for debugging a chip
同族专利:
公开号 | 公开日
DE102004011672B4|2007-04-05|
US20050201191A1|2005-09-15|
US7145831B2|2006-12-05|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2005-10-06| OP8| Request for examination as to paragraph 44 patent law|
2007-09-27| 8364| No opposition during term of opposition|
2020-10-01| R119| Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee|
优先权:
申请号 | 申请日 | 专利标题
DE102004011672A|DE102004011672B4|2004-03-10|2004-03-10|Device for data synchronization|DE102004011672A| DE102004011672B4|2004-03-10|2004-03-10|Device for data synchronization|
US11/071,673| US7145831B2|2004-03-10|2005-03-03|Data synchronization arrangement|
[返回顶部]