-
Die
Erfindung betrifft eine Schnittstellenvorrichtung für die synchrone Übertragung
eines Datenwortes sowie ein Verfahren zur Synchronisation eines
Datenwortes zwischen zwei mit gleicher Frequenz getakteten Schaltungsblöcken.
-
In
getakteten Systemen müssen
häufig
Daten zwischen zwei verschiedenen Schaltungsblöcken ausgetauscht werden. Die
einzelnen Schaltungsblöcke
können
dabei beispielsweise Daten austauschen, die dann in den jeweiligen
Schaltungsblöcken weiterverarbeitet
werden. Ein solches Beispiel zeigt die
WO 98/13768 . Darin ist zwischen zwei
mit unterschiedlichen Frequenzen getakteten Schaltungsblöcken eine
Vorrichtung zum Datenaustausch geschaltet. Die Taktsignale werden
dabei von einem gemeinsamen Regelkreis erzeugt.
-
In
einem anderen Ausführungsbeispiel
werden die beiden Schaltungsblöcke
sind jeweils mit einem Taktsignal gleicher Frequenz getaktet. Um
auch hier Datenfehler während
des Datenaustausches zu vermeiden, muss der Datenaustausch synchron
erfolgen, das heißt,
die auszutauschenden Daten müssen
immer zu den richtigen Zeitpunkten an den Schaltungsblöcken anliegen.
-
Aufgrund
der räumlichen
versetzten Anordnung der Schaltungsblöcke kann es zu Laufzeitunterschieden
zwischen den beiden Taktsignalen der Schaltungsblöcke kommen.
Unterschiedlich lange Leitungen für die beiden Taktsignale führen ebenso zu
Laufzeitunterschieden. Ein Laufzeitunterschied ergibt einen Phasenunterschied
der Taktsignale der beiden Schaltungsblöcke. Zusätzlich wird ein unbekannter
Phasenunterschied der beiden Taktsignale zueinander durch eine leichte
zufällige
Variation, die "Jitter" genannt wird, wie
auch durch verschiedene frequenzaufbereitende Maßnahmen hervorgerufen. Wenn
die Frequenzen des Taktsignals gleich sind, aber aus unter schiedlichen
Signalquellen stammen, so weisen sie meist eine unbekannte Phasenlage
zueinander auf.
-
Bei
einem Datenaustausch gibt ein Schaltungsblock die auszutauschenden
Daten während
eines Taktzyklus, beispielsweise bei einer steigenden Flanke seines
Taktsignals, an seinem Ausgang ab. Der zweite Schaltungsblock liest
beispielsweise bei einer steigenden Taktflanke seines Taktsignals
die an seinem Eingang anliegenden Daten und verarbeitet sie weiter.
Aufgrund des Phasenunterschiedes der beiden Taktsignale der Schaltungsblöcke zueinander erfolgt
die Bereitstellung am Datenausgang bzw. der Lesevorgang am Dateneingang
zu jeweils unterschiedlichen Zeitpunkten. Es kann daher passieren, dass
ein Lesezyklus bereits startet, bevor der erste Schaltungsblock
die zu übergebenden
Daten an seinem Datenausgang bereitgestellt hat. Dadurch ergibt sich
ein Datenverlust und somit ein Fehler in der Datenübertragung
zwischen den Blöcken.
-
Zur
Vermeidung eines solchen Datenverlustes werden Synchronisationsschaltungen
und insbesondere sogenannte FIFO-Puffer (FIFO = First In First Out)
zwischen die einzelnen Schaltungsblöcke geschaltet. Die verwendeten
Pufferschaltungen speichern die zu übergebenden Daten in Flip-Flop-Schaltungen
zwischen und geben sie bei Bedarf wieder ab. Dabei werden die Daten,
die als erste im Puffer abgelegt werden, auch als erste Daten wieder
herausgegeben.
-
Ein
Beispiel einer synchronen Schnittstelle mit einem FIFO-Puffer zeigt 3.
Die Synchronisationsschaltung 3 ist dabei zwischen die
beiden Schaltungsblöcke 1 und 2 geschaltet.
Der Schaltungsblock 1 gibt an seinem Ausgang bei jeder
Taktperiode seines Taktsignals ein Datenwort ab. Das Datenwort umfasst
ein Datum oder mehrere Daten und wird in einer der drei parallel
geschalteten Registerbänke 32 abgelegt.
Die Registerbänke 32 umfassen
dabei jeweils mehrere parallel geschaltete Flip-Flop-Schaltungen,
die je ein Datum des Datenworts speichern. Eine Auswahl, in welche
der drei Registerbänke 32 das
Datenwort des Schaltungsblocks 1 abgelegt wird, erfolgt
durch die Steuereinrichtung 31. Ein Auslesen des gespeicherten
Datenworts erfolgt über eine
Multiplexereinheit 33, die mit einem Steuersignal der Steuereinheit 31 eine
der drei Registerbänke 32 auf
den Ausgang der Synchronisationsschaltung 3 schaltet und
somit das Datenwort dem zweiten Schaltungsblock 2 zuführt. Die
Abgabe des Datenwortes erfolgt dabei in der Reihenfolge, in der
sie auch in den Registerbänken 32 abgelegt
wurden.
-
Nach
dem Auslesen einer Registerbank und dem Bereitstellen an den zweiten
Schaltungsblock wird der Inhalt der Registerbank gelöscht und
diese wieder für
einen erneuten Schreibvorgang freigegeben. Die Synchronisation des
Lese- und des Schreibvorgangs erfolgt über die Steuereinrichtung 31,
der die Taktsignale des Schaltungsblocks 1 sowie des Schaltungsblocks 2 zugeführt werden.
-
Wenn
der Schreib- und Lesevorgang der Daten mit zwei unterschiedlichen
Taktsignalen gleicher Frequenz durchgeführt wird, müssen für jedes zu synchronisierende
Datum mindestens drei Speicherstellen existieren. Für die Synchronisation
n parallel anliegender Daten, welche ein Datenwort ergeben, sind
daher 3·n
Speicherstellen notwendig. Jede der dargestellten Registerbänke 32 enthält somit
n Speicherstellen. Die dritte Registerbank ist erforderlich, um
sicherzustellen, dass große
Schwankungen der Phasenlage zwischen dem Taktsignal des ersten Schaltungsblocks
und dem Taktsignal des zwei ten Schaltungsblocks in positiver als
auch in negativer Richtung aufgefangen werden. Gerade bei Schaltungsblöcken, deren
zu synchronisierendes Datenwort sehr viele parallele Daten umfasst,
führt die
Notwendigkeit einer dritten Speicherstelle pro Datum in der Synchronisationsschaltung
zu einer großen
Anzahl von Speicherstellen. Dies erhöht den Platzbedarf und erzeugt
zusätzliche
Kosten.
-
Aufgabe
der Erfindung ist es, eine Schnittstellenvorrichtung mit vorzusehen,
welche zur Synchronisation auch bei unbekannter Phasenlage geeignet
ist. Eine weitere Aufgabe der Erfindung ist es, ein Verfahren zur
Synchronisation eines Datenwortes zwischen zwei mit gleicher Frequenz
getakteten Schal- tungsblöcken
mit einfachen Mitteln vorzusehen.
-
Diese
Aufgaben werden mit den Gegenständen
der Patentansprüche
1 und 14 gelöst.
Vorteilhafte Ausgestaltungen ergeben sich aus den Unteransprüchen.
-
Dabei
umfasst eine Schnittstellenvorrichtung zur synchronen Übertragung
eines Datenwortes einen Dateneingang für das Datenwort sowie einen Datenausgang
für das
Datenwort. Eine erste Registereinrichtung und eine zweite parallel
zu der ersten geschaltete Registereinrichtung ist mit je einem Eingang
an den Dateneingang gekoppelt und weist einen Auswahleingang und
einen Ausgang auf. Die erste und zweite Registereinrichtung ist
dabei für eine
Speicherung eines eingangsseitig anliegenden Datenwortes und zur
Abgabe des Datenwortes an den Ausgang ausgebildet. Die Schnittstellenvorrichtung
umfasst weiterhin ein Auswahlmittel, welches an den Ausgang der
ersten Registereinrichtung und an den Ausgang der zweiten Registereinrichtung
angeschlossen ist. Das Mittel ist für eine Kopplung des Ausgangs
der ersten oder zweiten Regis tereinrichtung mit dem Datenausgang
abhängig
von einem Stellsignal ausgebildet. Das Mittel bildet somit eine Multiplexereinheit.
Die Schnittstellenvorrichtung umfasst weiterhin einen ersten Takteingang
zur Zuführung
eines ersten Taktsignals sowie einen zweiten Takteingang zur Zuführung eines
zweiten Taktsignals. Letztlich enthält sie eine Synchronisationseinrichtung,
welches mit dem ersten und dem zweiten Takteingang sowie mit einem
Stellausgang an das Auswahlmittel gekoppelt ist. Die Synchronisationseinrichtung
ist zur Abgabe eines von dem ersten Taktsignal abgeleiteten Selektionssignals
zu einer Auswahl der ersten oder der zweiten Registereinrichtung
für eine
Speicherung eines am Dateneingang anliegenden Datenworts ausgebildet.
Bevorzugt ist die Einrichtung so zur Abgabe eines Auswahlsignals an
die erste und die zweite Registereinrichtung ausgebildet. Weiterhin
ist die Synchronisationseinrichtung zur Abgabe des Stellsignals
an den Stellausgang ausgebildet, wobei das Stellsignal aus dem Auswahlsignal
und dem zweiten Taktsignal abgeleitet ist.
-
Mit
der Synchronisationseinrichtung und der selektiven Ansteuerung der
ersten und zweiten Registereinrichtung ist eine dritte Registereinrichtung mit
zusätzlichen
Speicherstellen nicht erforderlich. Eine Synchronisation zwischen
den Taktsignalen der beiden Schaltungsblöcke wird auf die Synchronisationseinrichtung
konzentriert, anstatt wie bisher die drei Registerbänke dafür zu verwenden.
Diese Einrichtung muss für
die gesamte Schnittstellenvorrichtung nur einmal ausgebildet werden.
Sie stellt sicher, dass die zwischen den Schaltungsblöcken auszutauschenden
Daten fehlerfrei zum richtigen Zeitpunkt am Ausgang der erfindungsgemäßen Schnittstellenvorrichtung
bereitliegen. Insbesondere liegt am Ausgang der erfindungsgemäßen Schnittstellenvorrichtung
zu dem Zeitpunkt das zu übertragende
Datenwort an, an dem der Schaltungsblock ein an seinem Eingang anliegendes
Datenwort übernimmt
und weiterverarbeitet.
-
Dies
erfolgt bevorzugt durch eine zeitliche Auswertung des Selektionssignals
mit dem zweiten Taktsignal und der daraus abhängigen Ableitung des Stellsignals.
Der Realisierungsaufwand der Erfindung wird dadurch bei einem synchronen
Austausch vieler paralleler Daten im Verhältnis zur konventionellen Realisierung
mit drei Registerbänken
immer geringer.
-
Dabei
ist es insbesondere von Vorteil, wenn in einer vorteilhaften Ausgestaltung
die erste und die zweite Registereinrichtung einen Taktsignaleingang umfassen,
der den Auswahleingang bildet. Die erste und die zweite Registereinrichtung
ist dabei zur Abgabe eines an ihrem Dateneingang anliegenden Datenworts
bei einer Flanke eines aus dem Selektionssignal abgeleiteten Taktsignals
an ihren Ausgang ausgebildet. Diese Registereinrichtungen, die aus dem
Stand der Technik bekannt sind, können so weiterverwendet werden.
Die Registereinrichtungen enthalten dabei mehrere parallel angeordnete Flip-Flop-Schaltungen
für jedes
einzelne Datum des Datenwortes.
-
Um
die Datensicherheit zu erhöhen,
ist in einer Weiterbildung der Erfindung eine erste Pufferschaltung
zwischen dem Dateneingang der Schnittstellenvorrichtung und der
ersten und zweiten Registereinrichtung geschaltet. Diese ist zur
Abgabe eines am Dateneingang der Schnittstellenvorrichtung anliegenden
Datenwortes an die erste und die zweite Registereinrichtung bei
einer Taktflanke des ersten Taktsignals ausgebildet. Bevorzugt ist
dies die fallende Taktflanke. Dadurch wird sichergestellt, dass
am Dateneingang der ersten und zweiten Registereinrichtung ein gültiges Datenwort
anliegt, wenn die erste und zweite Registereinrichtung bei einer
steigenden Flanke des angelegten Taktsignals das Datenwort an ihrem
Dateneingang übernimmt.
-
In
einer anderen Weiterbildung der Erfindung ist eine zweite Puffereinrichtung
zwischen das Auswahlmittel und den Datenausgang der Schnittstellenvorrichtung
geschaltet. Sie ist zur Abgabe eines am Datenausgang des Auswahlmittels
abgegebenen Datenwortes an den Ausgang der Schnittstellenvorrichtung
bei einer fallenden Taktflanke des zweiten Taktsignals ausgebildet.
Dadurch ist sichergestellt, dass das mit dem zweiten Taktsignal
synchronisierte Datenwort bei einer steigenden Taktflanke des zweiten
Taktsignals sicher am Datenausgang der Schnittstellenvorrichtung
anliegt. So kann das Datenwort mit dieser Taktflanke des zweiten
Taktsignals in den Schaltungsblock zur weiteren Verarbeitung übernommen
werden. Alternativ kann die Richtung der Taktflanken in der ersten
bzw. zweiten Pufferschaltung auch vertauscht werden.
-
In
einer Weiterbildung der Erfindung umfasst die Synchronisationseinrichtung
ein Selektionsmittel bzw. einen Selektor, das zur Erzeugung des
Auswahlsignals zur Auswahl der jeweils anderen Registereinrichtung
bei jeder Taktperiode des ersten Taktsignals ausgebildet ist. Das
Auswahlsignal ist so gebildet, dass dadurch alternierend zwischen
beiden Registereinrichtungen ausgewählt wird. Die Frequenz des
Auswahlsignals entspricht der halben Frequenz des ersten Taktsignals.
Bevorzugt umfasst das Selektionsmittel bzw. der Selektor ein mit
dem ersten Taktsignal getaktetes D-Toggle-Flip-Flop. Der Datenausgang
des Toggle-Flip-Flops ist mit einem ersten Eingang eines ersten
logischen Gatters und über
einen Inverter zu seinem ersten Eingang eines zweiten logischen
Gatters sowie mit seinem Dateneingang gekoppelt. Das rückgekoppelte
D-Toggle-Flip-Flop wirkt
daher als Frequenzteiler, das die Fre quenz des ersten Taktsignals
halbiert. Alternativ dazu kann jede andere Schaltung verwendet werden,
die ein Taktsignal mit halber Frequenz des Eingangstakts erzeugt.
-
In
einer zweckmäßigen Weiterbildung
der Erfindung ist ein jeweils zweiter Eingang des ersten und des
zweiten logischen Gatters an den ersten Takteingang gekoppelt und
der Ausgang des ersten logischen Gatters zur Abgabe des Auswahlsignals
mit dem Auswahleingang der ersten Registereinrichtung verbunden.
Der Ausgang des zweiten logischen Gatters ist mit dem Auswahleingang
der zweiten Registereinrichtung gekoppelt. Durch diese logische
Verschaltung liegt am Auswahleingang der ersten und der zweiten
Registereinrichtung jeweils ein Taktsignal mit der halben Frequenz
des ersten Taktsignals an. Die an den Auswahleingängen der
Registereinrichtungen anliegenden Signale sind zueinander um 90° phasenverschoben.
So kann in einfacher Weise ein Auswahlsignal erzeugt werden, das
zudem als Taktsignal für
die erste und zweite Registereinrichtung benutzbar ist, welche in
alternierender Form jeweils ein Datenwort am Synchronisationseingang
der Synchronisationseinrichtung einlesen.
-
In
einer anderen Weiterbildung der Erfindung umfasst die Synchronisationseinrichtung
eine mit dem zweiten Taktsignal getaktete Abtastvorrichtung. Die
Abtastvorrichtung ist für
eine Detektion einer Änderung
des Selektionssignals und zur Abgabe des Stellsignals an das Auswahlmittel
ausgebildet. Das Stellsignal ist dabei so geschaltet, dass es den
Ausgang der durch das Selektionssignal ausgewählten Registereinrichtung mit
dem Datenausgang der Schnittstellenvorrichtung verbindet. Eine solche
Ausbildung ist besonders vorteilhaft, da die Abtastvorrichtung somit über das
Selektionssignal die Registerein richtung detektiert, die das nächste zu
synchronisierende Datenwort gespeichert hat.
-
Sobald
eine Änderung
registriert ist, die eine neue Registereinrichtung anzeigt, wird
das Stellsignal an das Auswahlmittel abgegeben. Die Synchronisationseinrichtung
ist so ausgebildet, dass der Datenausgang der ausgewählten Registereinrichtung auf
den Datenausgang der Synchronisationseinrichtung geschaltet wird.
So ist sichergestellt, dass die Registereinrichtung erst dann auf
den Ausgang der Synchronisationseinrichtung geschaltet ist, wenn
von der Registereinrichtung ein gültiges Datenwort abgegeben
wird.
-
In
einer anderen vorteilhaften Ausgestaltung umfasst die Abtastvorrichtung
zur Detektion einer Änderung
eine erste und zumindest eine zweite Flip-Flop-Schaltung. An den
Dateneingängen
der ersten und der zumindest einen zweiten Flip-Flop-Schaltung ist das
Selektionssignal zuführbar.
Ein Takteingang der ersten Flip-Flop-Schaltung ist an den zweiten
Takteingang und ein Takteingang der zumindest einen zweiten Flip-Flop-Schaltung ist über zumindest
ein erstes Verzögerungsglied
an den zweiten Takteingang angeschlossen. Das Verzögerungsglied
ist dabei für
eine zeitliche Verzögerung des
zweiten Taktsignals ausgebildet. Durch die Ausbildung mit zumindest
zwei Flip-Flop-Schaltungen, deren Taktsignaleingänge an den zweiten Takteingang
angeschlossen sind, ist somit eine Detektion des Zeitpunktes einer
Signaländerung
des Selektionssignals möglich.
Dies ergibt Aufschluss über
die Registereinrichtung, die das nächste abzugebende Datenwort
enthält.
-
Es
ist zudem zweckmäßig, wenn
die Abtastvorrichtung eine dritte Flip-Flop-Schaltung enthält, deren
Takteingang über
ein zweites Verzögerungsglied
mit dem zweiten Takteingang ge koppelt ist. Der Dateneingang der
dritten Flip-Flop-Schaltung ist über zumindest
ein Logikgatter an die Datenausgänge
der ersten und der zumindest einen zweiten Flip-Flop-Schaltung angeschlossen.
Die Logikschaltung ist dabei zur Auswertung der zeitlichen Detektion
einer Änderung
des Selektionssignals durch die erste und die zumindest eine zweite
Flip-Flop-Schaltung
ausgebildet. Der Datenausgang der dritten Flip-Flop-Schaltung ist bevorzugt mit dem
Stelleingang des Auswahlmittels gekoppelt. Somit ist an dem Datenausgang
der dritten Flip-Flop-Schaltung das Stellsignal der Synchronisationseinrichtung
abgreifbar.
-
Das
Verfahren zur Synchronisation eines Datenwortes umfasst neben einem
Bereitstellen einer ersten Registereinrichtung und einer zweiten
Registereinrichtung für
ein vom ersten Schaltungsblock abgegebenes Datenwort ein Auswählen einer
der beiden Registereinrichtungen durch ein Selektionssignal. Der
Wert des Selektionssignals ist je einem der Registereinrichtungen
zugeordnet. Weiterhin wird ein vom ersten Schaltungsblock abgegebenes
Datenwort in die ausgewählte
Registereinrichtung mit einer steigenden Taktflanke eines ersten
Taktsignals übernommen.
Das Selektionssignal wird durch Auswerten des zeitlichen Verhaltens
des Selektionssignals mit einem zweiten Taktsignal detektiert. Dadurch
wird detektiert, welche der beiden Registereinrichtungen zur Übernahme
des vom Schaltungsblock abgegebenen Datenworts ausgewählt wurde.
Das übernommene
Datenwort wird an den zweiten Schaltungsblock nach einer solchen
Detektion bei einer steigenden Taktflanke des zweiten Taktsignals
abgegeben. Erfindungsgemäß wird somit
die Synchronisation auf eine Detektion eines Pegelübergangs
im Selektionssignal konzentriert. Diese Detektion erfolgt durch
die zeitliche Auswertung eines Vergleichs des Selektionssignals
mit dem zweiten Taktsignal.
-
Es
sind daher nur zwei Registereinrichtungen für die Synchronisation notwendig,
in die das zu synchronisierende Datenwort abwechselnd übernommen
wird. Sobald sichergestellt ist, dass die Registereinrichtung das
am Eingang der Schnittstellenvorrichtung anliegende Datenwort übernommen
hat, wird dieses mit dem Takt des zweiten Taktsignals am Datenausgang
abgegeben.
-
In
diesem Zusammenhang ist es vorteilhaft, wenn das Selektionssignal
mit einem ersten und einem zweiten logischen Pegel erzeugt wird.
Der erste und der zweite logische Pegel wird mit jeder Taktperiode
des ersten Taktsignals invertiert, wobei jedem logischen Pegel eine
der beiden Registereinrichtungen zugeordnet ist. Das Selektionssignal
ist daher ein Signal, das seinen Pegel mit jeder Periode des ersten
Taktsignals invertiert. In bevorzugter Ausführungsform wird das Selektionssignal
aus dem ersten Taktsignal durch eine Halbierung des ersten Taktsignals
erzeugt. Der logisch hohe Pegel wird dabei der ersten Registereinrichtung
zugeordnet, der logisch niedrige Pegel der zweiten Registereinrichtung.
Das Selektionssignal kann so bevorzugt direkt für die Erzeugung eines Taktsignals
für die
Registereinrichtungen verwendet werden.
-
In
einer zweckmäßigen Ausgestaltung
ist dafür
ein Phasenversatz einer halben Taktperiode des ersten Taktsignals
für die
jeweiligen Auswahlsignale am Takteingang der ersten und zweiten
Registereinrichtung vorgesehen. Diese Signale können bevorzugt durch ein Anlegen
des Selektionssignals und des ersten Taktsignals an ein erstes logisches
Gatter sowie ein Invertieren des Selektionssignals und Anlegen des
invertierten Selektionssignals und des ersten Taktsignals an ein
zweites logisches Gatter erzeugt werden.
-
In
einer anderen bevorzugten Ausführungsform
wird ein drittes und ein viertes Taktsignal mit einem Tastverhältnis von
3:1 erzeugt, wobei das dritte Taktsignal ein Phasenversatz von einer
halben Taktperiode zu dem vierten Taktsignal aufweist. Das dritte Taktsignal
wird dem Takteingang der ersten Registereinrichtung und das vierte
Taktsignal dem Taktsignal der zweiten Registereinrichtung zugeführt. Bei
einer steigenden Taktflanke am Takteingang übernehmen somit die Registereinrichtungen
ein von dem ersten Schaltungsblock abgegebenes Datenwort.
-
Das
Detektieren des Selektionssignals erfolgt bevorzugt durch Detektieren
einer Taktflanke des Selektionssignals mittels einer logischen Auswertung.
Die genaue zeitliche Detektion erfolgt dabei über ein Verzögern des
zweiten Taktsignals und anschließendes Zuführen des zweiten verzögerten Taktsignals
an einen Takteingang einer Flip-Flop-Schaltung. Abhängig von
der Verzögerung wird
der Datenausgang der Flip-Flop-Schaltung erst dann umgeschaltet,
wenn ein Pegelübergang
im Selektionssignal erfolgt ist. Die Ausgangssignale des Datenausgangs
der Flip-Flop-Schaltungen werden in der Logikschaltung ausgewertet
und daraus der Zeitpunkt bestimmt, an dem das in der Registriereinrichtung
abgelegte Datenwort an den Ausgang der Synchronisationseinrichtung übernommen
werden kann.
-
Im
Folgenden wird die Erfindung anhand von Ausführungsbeispielen unter Zuhilfenahme
der Zeichnungen im Detail erläutert.
Es zeigen:
-
1 ein
erstes Ausführungsbeispiel
der Erfindung,
-
2 ein
detailliertes Blockschaltbild einer Schnittstellenvorrichtung,
-
3 eine
bekannte Schnittstellenvorrichtung,
-
4 ein
Zeitdiagramm mit ausgewählten Signalen
innerhalb der Schnittstellenvorrichtung.
-
1 zeigt
ein schematisches Blockdiagramm mit der erfindungsgemäßen Schnittstellenvorrichtung.
Eine Schnittstelle wird benötigt,
wenn Daten zwischen unterschiedlichen Blöcken ausgetauscht werden, wobei
die Schaltungsblöcke
mit je einem eigenen Taktsignal getaktet sind. Das Taktsignal für den ersten
Schaltungsblock wie auch für
den zweiten Schaltungsblock besitzen die gleiche Frequenz, jedoch
ist ihre Phasenlage zueinander unterschiedlich. Sie kann zudem durch
Jitter bzw. natürliche
Schwankungen verändert
werden. Die Schnittstellenvorrichtung erlaubt den synchronen Austausch von
Daten zwischen den Schaltungsblöcken.
Unter dem Begriff synchron ist hier die zeitlich korrekte Abgabe
des am Eingang der Schnittstellenvorrichtung vorliegenden Datenworts
an ihrem Ausgang gemeint, wenn der zweite Schaltungsblock dieses
bereit ist zu übernehmen.
Der "synchrone" Austausch stellt
so sicher, dass das auszutauschende korrekte Datenwort mit einer
Taktflanke des zweiten Taktsignals vom zweiten Schaltungsblock übernommen
wird.
-
Dazu
ist eine erfindungsgemäße Schnittstellenvorrichtung 4 zwischen
dem Ausgang 11 eines ersten Schaltungsblocks 1 und
dem Eingang 21 eines zweiten Schaltungsblocks 2 geschaltet.
Die Schnittstellenvorrichtung 4 enthält einen Dateneingang 41 für das zu übertragende
Datenwort, der mit dem Eingang 11 des ersten Schaltungsblocks
verbunden ist, sowie einen Datenaus gang 42 für die Abgabe
eines Datenwortes, welcher an den Eingang 21 des zweiten
Schaltungsblocks 2 angeschlossen ist. Weiterhin umfasst
die erfindungsgemäße Schnittstellenvorrichtung
zwei Takteingänge 43 bzw. 44.
Am ersten Takteingang 43 liegt ein Taktsignal T1 an, das auch
das Taktsignal des ersten Schaltungsblocks 1 ist. Am zweiten
Takteingang 44 liegt ein zweites Taktsignal T2 an, das
ebenso als Taktsignal für
den zweiten Schaltungsblock 2 verwendet wird. Die beiden Eingänge sind
somit für
Taktsignale des ersten bzw. zweiten Schaltungsblocks 1, 2 ausgebildet.
-
Der
Dateneingang 41 ist jeweils mit einer ersten Registereinrichtung 6 und
einer dazu parallel geschalteten Registereinrichtung 7 verbunden.
Die beiden Registereinrichtungen 6 und 7 speichern
ein am Dateneingang 41 anliegendes Datenwort DW zwischen
und geben dies jeweils an ihrem Ausgang ab. Die Speicherung und
die Abgabe des Datenwortes wird über
je einen Stelleingang 61 bzw. 71 für die Registereinrichtungen 6 bzw. 7 gesteuert.
Die Ausgänge
der Registereinrichtungen 6 und 7 sind an eine Multiplexereinheit 8 angeschlossen.
Die Einheit 8 stellt einen Schalter dar, der abhängig von
einem Steuersignal an seinem Steuereingang 81 einen seinen
beiden Eingänge 82 bzw. 83 mit
seinem Ausgang 84 verbindet. Der Ausgang 84 der
Multiplexereinheit 8 ist an den Datenausgang 42 der
Schnittstellenvorrichtung 4 angeschlossen.
-
Die
Schnittstellenvorrichtung 4 umfasst weiterhin ein Synchronisationsmittel
bzw. eine Synchronisationseinrichtung 5. Das Synchronisationsmittel 5 weist
zwei Eingänge 51 und 52 auf.
Der erste Eingang 51 ist mit dem ersten Takteingang 43 und
der zweite Eingang 52 mit dem zweiten Takteingang 44 verbunden.
Die Einrichtung 5 enthält
ein Auswahl- oder Selektionsmittel bzw. Selektor 56. Das
Selektionsmittel 56 erzeugt aus dem Taktsignal am Eingang 43 ein
Selektionssignal. Das Selektionssignal wird als Auswahlsignal entweder
am Ausgang 53 bzw. 54 abgegeben. Über das
Signal selektiert das Selektionsmittel 56 die Registereinrichtung 6 bzw. 7,
so dass die ausgewählte
Registereinrichtung das nächste
am Dateneingang 41 anliegende Datenwort DW zwischenspeichert.
-
Beispielsweise
erzeugt das Selektionsmittel 56 ein Auswahlsignal und gibt
dieses am Datenausgang 53 ab. Mit der nächsten steigenden Taktflanke des
ersten Taktsignals am Takteingang 43 wird das Auswahlsignal
am Ausgang 53 abgegeben. Die steigende Taktflanke des ersten
Taktsignals bewirkt zudem, dass am Dateneingang 41 ein
vom Schaltungsblock 1 abgegebenes Datenwort DW anliegt.
Durch das Auswahlsignal am Ausgang 53 wird die Registereinrichtung 6 angesteuert,
so dass sie das am Dateneingang 41 anliegende Datenwort
DW zwischenspeichert. Mit der nächsten
steigenden Taktflanke des ersten Taktsignals am Takteingang 43 erzeugt das
Selektionsmittel ein Auswahlsignal am Ausgang 54, so dass
die Registereinrichtung 7 angesteuert wird. Da mit dieser
Taktflanke ein neues Datenwort am Dateneingang 41 anliegt,
wird dieses nun in die Registereinrichtung 7 übernommen.
-
Gleichzeitig
gibt das Auswahl- bzw. Selektionsmittel 56 das Selektionssignal
an eine Abtastvorrichtung 57 ab. Die Abtastvorrichtung
ist mit dem zweiten Eingang 52 und damit mit dem zweiten
Takteingang 44 für
das zweite Taktsignal verbunden. Die Abtastvorrichtung 57 ist
so ausgebildet, dass sie anhand des Selektionssignals erkennt, in
welcher Registereinrichtung 6 bzw. 7 das am Dateneingang 41 anliegende
Datenwort DW gespeichert wird. Dies erfolgt beispielsweise dadurch,
dass ein Übergang
eines Pegels vom Selektionssignal von einem ersten Pegel auf einen
zweiten Pegel stattfindet, wobei der Übergang den Zeitpunkt für eine Übernahme
des Datenwortes in die entsprechend ausgewählte Registereinrichtung anzeigt.
Sobald die Abtastvorrichtung 57 somit einen Übergang
registriert, wird am Datenausgang der ausgewählten Registereinrichtung das übernommene
Datenwort abgegeben. Ab diesem Zeitpunkt kann daher das Datenwort
an den Datenausgang 42 der Schnittstellenvorrichtung 4 weitergereicht
werden.
-
Dazu
erzeugt die Abtastvorrichtung 57 aus dem zweiten Taktsignal
am zweiten Takteingang 44 und dem Übergang des Auswahlsignals
ein Stellsignal MUX am Stellausgang 55. Der Stellausgang 55 ist
an den Stelleingang 81 des Datenmultiplexers 8 angeschlossen.
Der Multiplexer 8 schaltet so in Abhängigkeit des Stellsignals MUX
am Eingang 81 immer zu dem Zeitpunkt, an dem sichergestellt
ist, dass am entsprechenden Eingang 82 bzw. 83 ein
gültiges Datenwort
anliegt. Durch das Selektionsmittel 56 und die Abtastvorrichtung 57 wird
eine Phasenverschiebung der beiden Taktsignale gegeneinander in
positiver als auch in negativer Richtung registriert und das Umschalten
der Multiplexereinheit 8 so gesteuert, dass die am Dateneingang 41 der
Synchronisationsschaltung 4 anliegenden Datenworte takt-
und phasensynchron zu dem zweiten Taktsignal am zweiten Takteingang 44 am
Datenausgang 42 der Schnittstellenvorrichtung 4 abgegeben
werden. Dadurch erfolgt ein Datenaustausch synchron zu den Takten
der beiden Schaltungsblöcke 1 und 2.
-
Ein
detailliertes Ausführungsbeispiel
der Schnittstellenvorrichtung 4 zeigt 2.
Gleiche Bauelemente tragen dabei gleiche Bezugszeichen. Die in 4 gezeigte
erfindungsgemäße Schnittstellenvorrichtung
ist positiv Taktflanken gesteuert. Eine positive Taktflanke bezeichnet
eine steigende Taktflanke, eine negative Taktflanke ist gleichbedeutend
mit einer fallenden Taktflanke.
-
Die
in 2 gezeigte Schnittstellenvorrichtung ist zum synchronen
Austausch eines Datenwortes aus mehreren parallelen Daten zwischen
zwei Schaltungsblöcken
ausgebildet. Im vorliegenden Beispiel bilden jeweils sechs parallele
Daten ein Datenwort. Die hier dargestellte Schnittstellenvorrichtung lässt sich
jedoch auch zur Synchronisation von Datenwörtern mit deutlich mehr parallelen
Daten verwenden. Dazu ist lediglich die Anzahl der parallelen Flip-Flop-Schaltungen
in den einzelnen Bauelementen des durch eine dicke Linie markierten
Datenpfades zu erhöhen.
-
Der
Dateneingang 41 für
das Datenwort DW ist an einen Eingang D einer Pufferschaltung 9 aus mehreren
parallel geschalteten Flip-Flop-Schaltungen angeschlossen. Die Ausgänge der
parallel geschalteten Flip-Flop-Schaltungen bilden den Ausgang Q
des Datenpuffers 9 und sind jeweils an den Eingang D der
Registereinrichtungen 6 und 7 angeschlossen. Die
Registereinrichtungen 6 und 7, die auch als Registerbänke 6 und 7 bezeichnet
werden, umfassen ebenfalls mehrere parallel geschaltete Flip-Flop-Schaltungen.
Eine Flip-Flop-Schaltung ist dabei für die Speicherung eines Datums
des Datenworts vorgesehen. Die Ausgänge Q der Registereinrichtungen 6 und 7 sind
mit einer Multiplexereinheit mit den Eingängen 82 bzw. 83 verbunden.
-
Der
Ausgang 84 der Multiplexereinheit 8 ist wiederum
an einen Dateneingang D einer zweiten Pufferschaltung 9A angeschlossen.
Die Pufferschaltung 9A umfasst wie die Pufferschaltung 9 die
gleiche Anzahl an parallel geschalteten Flip-Flops, die an ihren
jeweiligen Ausgängen
Q ihre Daten an den Datenaus gang 42 abgeben. Der Eingangspuffer 9 wie auch
der Ausgangspuffer 9A sind optionale Bestandteile der erfindungsgemäßen Schnittstellenvorrichtung 4,
die eine zusätzliche
Sicherheit in der Bereitstellung der Daten ermöglichen. Durch die beiden Pufferschaltungen
wird ein Schreib- bzw. Lesefehler in den Registereinrichtungen verhindert.
-
Der
Taktsignaleingang der Pufferschaltung 9 ist über einen
Inverter 561 an den ersten Takteingang 43 für das erste
Taktsignal T1 angeschlossen. Bei einer fallenden oder negativen
Taktflanke des ersten Taktsignals T1 liest die Pufferschaltung 9 ein
am Eingang 41 anliegendes Datenwort und gibt dieses an ihren
Datenausgang Q wieder ab.
-
Das
mit dem Inverter 561 invertierte Taktsignal T1 wird außerdem einem
Taktsignaleingang eines D-Toggle-Flip-Flops 60 zugeführt. Der
Dateneingang D des D-Toggle-Flip-Flops 60 ist dabei über einen
Inverter 601 an den Datenausgang Q des D-Toggle-Flip-Flops 60 angeschlossen.
Der Ausgang des D-Toggle-Flip-Flops 60 ist
an seinen Eingang rückgekoppelt
und invertiert so bei jeder fallenden Taktflanke des ersten Taktsignals
T1 seinen Ausgang Q. Es wirkt daher auch als Frequenzteiler. Das
an seinem Ausgang abgegebene Signal ist das Selektionssignal SEL
für die
Auswahl der Registereinrichtung 6 oder 7, die
als nächstes
ein Datenwort übernimmt.
-
Der
Ausgang Q des D-Toggle-Flip-Flops 60 ist weiterhin an einen
ersten Eingang eines logischen UND-Gatters 607 angeschlossen,
dessen zweiter Eingang mit dem ersten Takteingang 43 verbunden ist.
Der Dateneingang des D-Toggle-Flip-Flops 60, der an den
Ausgang des Inverters 601 angeschlossen ist, ist zudem
auch mit einem ersten Eingang eines zweiten logischen UND-Gatters 606 verbunden. Der
zweite Eingang des logi schen UND-Gatters 606 ist an den
ersten Takteingang 43 angeschlossen. Die Ausgänge der
logischen UND-Gatter 606 bzw. 607 führen zu
jeweils einem Inverter 605 bzw. 604. Der Ausgang
des Inverters 605 bildet den Ausgang 53 für das Auswahlsignal
R0. Der Ausgang des Inverters 604 bildet den Ausgang 54 für das Signal
R1 und ist an den Taktsignaleingang der Registereinrichtung 7 angeschlossen.
Das Auswahlsignal R0 wie auch das Auswahlsignal R1 bilden somit
ein Taktsignal für
die Registereinrichtung 6 und 7. Bei einer steigenden oder
positiven Taktflanke der jeweiligen Ausgangssignale R0 bzw. R1 übernehmen
diese ein an ihrem Dateneingang D anliegendes Datenwort DW in ihren Zwischenspeicher
und geben dies am Ausgang Q ab. Die Takteingänge der beiden Registereinrichtungen 6 bzw. 7 stellen
somit die beiden Auswahleingänge 61 bzw. 71 gemäß 1 dar.
Das Flip-Flop 60 und die logischen Gatter 606 und 607 bilden
das Auswahl- bzw. Selektionsmittel 56.
-
Die
Logikgatter 606 und 607 erzeugen aus dem Selektionssignal
SEL und dem ersten Taktsignal T1 die Auswahlsignale R0 und R1, welche
jeweils ein Tastverhältnis
von 1:3 aufweisen. Die Taktperiode der beiden Signale R0 und R1
ist doppelt so groß wie die
Taktperiode des ersten Taktsignals T1. Zusätzlich sind die beiden Signale
R0 und R1 zueinander um jeweils eine halbe Periode ihres Taktes
phasenverschoben. Dadurch übernimmt
die erste Registereinrichtung 6 bei einer steigenden Taktflanke
des ersten Taktsignals T1 das an ihrem Dateneingang anliegende Datenwort
und gibt dieses am Ausgang Q ab. Bei der nächsten steigenden Taktflanke
des ersten Taktsignals T1 übernimmt
die zweite Registereinrichtung 7 das an ihrem Dateneingang
D anliegende Datenwort DW. Somit wird immer abwechselnd bei jeder Taktperiode
das am Eingang anliegende Datenwort von der Registereinrichtung 6 bzw. 7 übernommen und
an ihren jeweiligen Ausgang weitergereicht.
-
Die
Information, in welche der beiden Registereinrichtungen 6 bzw. 7 das
Datenwort als nächstes übernommen
wird, ist wichtig für
den synchronen Datenaustausch. Dazu dient die Flip-Flop-Schaltung 61, die
mit ihrem Dateneingang an den Datenausgang Q des Toggle-Flip-Flops 60 angeschlossen
ist. Der Takteingang des Flip-Flops 61 ist mit dem ersten
Takteingang verbunden. Mit jeder steigenden Taktflanke des ersten
Taktsignals T1 wird so die Information, in welcher der beiden Registereinrichtungen 6 bzw. 7 gerade
aktuelle Daten anliegen, an den Ausgang Q der Flip-Flop-Schaltung 61 in
Form des Selektionssignals SEL' weitergereicht.
Die Flip-Flop-Schaltung 61 bildet gleichzeitig die Schnittstelle,
die das erste Taktsignals T1 und das zweite Taktsignal T2 logisch
verknüpft,
um so den fehlerfreien Datenaustausch zu gewährleisten.
-
Nun
soll der Auswahlschalter 8 so geschaltet werden, dass er
die Registereinrichtung, an der neue Daten anliegen, mit der Pufferschaltung 9A verbindet.
In dem dargestellten Ausführungsbeispiel
ist vorgesehen, dass dies mit der steigenden Flanke des Ausgangstaktes
T2 erfolgt, so dass die am Dateneingang D der Pufferschaltung 9A anliegenden
Daten synchron mit der fallenden Ausgangsflanke des zweiten Taktsignals
in die Pufferschaltung 9A übernommen und am Datenausgang 42 der
Schnittstellenvorrichtung 4 abgegeben werden können.
-
Dazu
ist der Ausgang Q der Flip-Flop-Schaltung 61 mit jeweils
einem Dateneingang eines ersten, zweiten und dritten Abtast-Flip-Flops 63, 64, 65 verbunden.
Der Taktsignaleingang des ersten Abtast-Flip-Flops 63 ist
an den zweiten Takteingang 44 der erfindungsgemäßen Schnittstellenvorrichtung angeschlossen.
Der Taktsignaleingang des zweiten Abtast-Flip-Flops 64 ist über ein
Verzögerungsglied 71 mit
dem zweiten Takteingang verbunden. Der Takteingang für das dritte
Abtast-Flip-Flop 65 ist seinerseits über das Verzögerungsglied 72 und
das Verzögerungsglied 71 an
den zweiten Takteingang 44 gekoppelt. Durch die beiden
Verzögerungsglieder 71 und 72 wird
das zweite Taktsignal T2 verzögert
und gelangt zu unterschiedlichen Zeiten an die Takteingänge der
Abtast-Flip-Flops 63, 64 bzw. 65. Eine
Abtastung des Selektionssignals SEL', welches vom Ausgang Q des Flip-Flops 61 abgegeben
wird, wird zu drei verschiedenen Zeitpunkten durchgeführt. Erfolgt
während
dieses Zeitraums ein Übergang
im Selektionssignal SEL' von
einem hohen Pegel auf einen niedrigen Pegel oder umgekehrt, so wird
dies von zumindest einem der drei Abtast-Flip-Flops 63, 64 bzw. 65 registriert.
-
Beispielsweise
erfolgt ein Umschalten der Registereinrichtung 6 auf die
Registereinrichtung 7 durch das Selektionssignal SEL. Dadurch
wird mit einer steigenden Taktflanke des ersten Taktsignals T1 das
am Dateneingang 41 anliegende Datenwort DW in die Registerbank 7 übernommen
und gleichzeitig eine positive Flanke des Selektionssignals SEL' am Ausgang Q des
Flip-Flops 61 erzeugt.
Die positive Flanke am Ausgang des Flip-Flops 61 erfolgt beispielsweise
zu einem Zeitpunkt, der geringfügig
später
ist als die steigende Taktflanke des zweiten Taktsignals T2. Dadurch
registriert der erste Abtast-Flip-Flop 63 an seinem Dateneingang
bei der steigenden Taktflanke des zweiten Taktsignals T2 noch einen
niedrigen Pegel des Selektionssignals SEL' und gibt diesen invertiert an seinem
Ausgang QN ab.
-
Durch
das Verzögerungsglied 71 wird
die steigende Taktflanke des zweiten Taktsignals T2 verzögert. Wechselt
während
dieser Verzögerungszeit das
Selektionssignal SEL' auf
den anderen Pegel, so wird dies vom Abtast-Flip-Flop 64 und
auch vom Ab tast-Flip-Flop 65 registriert und ein entsprechend
invertiertes Signal an ihren Ausgängen QN abgegeben. Dadurch
wird angezeigt, dass nun die Registereinrichtung 7 das
nächste
Datenwort enthält
und ihr Ausgang mit dem Ausgang 42 der Schnittstellenvorrichtung 4 zu
koppeln ist.
-
Ein
Umschalten der Registerbänke
von Bank 6 auf Bank 7 ist durch eine positive
Flanke im Selektionssignal SEL bzw. SEL' gekennzeichnet, während ein Umschalten der Registereinrichtung
von Einrichtung 7 auf Einrichtung 6 durch die
entsprechend negative Flanke repräsentiert wird. Die Abtast-Flip-Flops 63, 64 bzw. 65 detektieren
aufgrund der an ihren Takteingängen
angeschlossenen Verzögerungsglieder
diesen Übergang
im Selektionssignal zu verschiedenen Zeitpunkten. Dabei kennzeichnen die
logischen Pegel 0-0-1 bzw. 0-1-1 für die invertierenden Ausgänge QN der
Abtast-Flip-Flops 63, 64 und 65 eine
negative Taktflanke des Selektionssignals SEL' und damit einen Übergang der Registriereinrichtung
von 7 nach 6. Die Reihenfolge 1-0-0 und 1-1-0
der Ausgangspegel kennzeichnen einen positiven Übergang des Selektionssignals
SEL' und damit einen Übergang
der Registereinrichtung von 6 auf 7.
-
Der
Ausgang des ersten Abtast-Flip-Flops 63 ist an einen Inverter 81 und
an einen ersten Eingang eines Nicht-UND-Gatters 82 angeschlossen. Der
invertierende Ausgang QN des Abtast-Flip-Flops 64 ist mit einem
zweiten Eingang des Gatters 82 verbunden. Der invertierte
Ausgang QN des Flip-Flops 65 ist an einen Inverter 83 sowie
an einen dritten Eingang des Nicht-UND-Gatters 82 angeschlossen.
Die Ausgänge
der Inverter 81 und 83 sind mit den Eingängen eines
Nicht-UND-Gatters 84 verbunden. Der Ausgang des Nicht-UND-Gatters 82 ist
an den ersten Eingang eines Nicht-UND-Gatters 85 angeschlossen.
Die Ausgänge
der beiden Nicht-UND-Gatter 84 und 85 sind mit
einem weiteren Nicht-UND-Gatter 86 verbunden. Dessen Ausgang
ist an einen Dateneingang einer Selektions-Flip-Flop-Schaltung 90 angeschlossen.
-
Der
Takteingang der Selektions-Flip-Flop-Schaltung 90 ist über ein
weiteres Verzögerungsglied 73 mit
dem zweiten Verzögerungsglied 72 verbunden.
Der invertierte Ausgang QN des Selektions-Flip-Flops 90 ist
an den zweiten Eingang des logischen Nicht-UND-Gatters 85 rückgeführt. Zudem
ist er über
einen Inverter 91, welcher den Ausgang 55 für das Stellsignal
MUX bildet, an den Stelleingang 81 des Auswahlmittels 8 angeschlossen. Die
komplette Logikschaltung aus den logischen Gattern 81 bis 86 sowie
des Selektions-Flip-Flops 90 erzeugt aus den von den Abtast-Flip-Flops
abgegebenen Informationsdaten das Stellsignal MUX.
-
Das
Stellsignal MUX schaltet den Auswahlschalter 8 auf den
Eingang, an dem das nächste
am Datenausgang 42 abzugebene Datenwort anliegt. Das Toggle-Flip-Flop 90,
welches mit einer durch die Verzögerungseinrichtungen 71, 72 und 73 verzögerten positiven
Taktflanke des zweiten Taktsignals T2 angesteuert wird, gibt so
ein Stellsignal MUX an den Stelleingang 81 des Auswahlmittels 8 ab.
Die von der Registereinrichtung 6 bzw. 7 abgegebenen
Daten werden sicher mit der nächsten
fallenden Taktflanke des zweiten Taktsignals T2 von der Pufferschaltung 9A übernommen
und an den Datenausgang 42 abgegeben.
-
Das
Verzögerungsglied 73 ist
dabei in der zeitlichen Verzögerung
des zweiten Taktsignals hinreichend groß. Die Logikschaltung aus den
Gattern 81 bis 86 ist bereits vollständig umgeschaltet,
bevor die steigende Taktflanke des Taktsignals T2 den Ausgang QN
des Toggle-Flip-Flops 90 umschaltet. Weiterhin bleibt ausreichend
Zeit, bis zur fallenden Taktflanke des zweiten Taktsignals T2, die
das vom Multiplexer 8 abgegebene Datenwort an den Ausgang 42 der
Schnittstellenvorrichtung 4 anlegt. Das Selektions-Flip-Flop 90,
der Inverter 91 sowie das Auswahlmittel haben dann bereits
umgeschaltet. Die dadurch notwendigen Verzögerungen legen die maximale
Abtastfrequenz des ersten und des zweiten Taktsignals fest.
-
Einen
zeitlichen Verlauf verschiedener Signale zeigt 3.
Die erste Kurve zeigt das erste Taktsignal T1 mit einer bestimmten
Frequenz. Nach einer ersten Taktperiode ΔT1 schaltet das Selektionssignal SEL
von dem logischen niedrigen Pegel 0 in den logisch hohen Pegel 1.
Nach einer weiteren Taktperiode ΔT2
wird das Selektionssignal SEL vom Toggle-Flip-Flop 60 wieder
invertiert. Wie zu erkennen, wirkt das Toggle-Flip-Flop als Frequenzteiler
für das erste
Taktsignal T1. Das Selektionssignal SEL wird zusammen mit dem ersten
Taktsignal den logischen Gattern 606 bzw. 607 zugeführt.
-
Aus
der logischen Verknüpfung
und der daran angeschlossenen Invertierung durch die Inverter 605 bzw. 604 ergeben
sich die Ausgangssignale R1 und R0. Deutlich zu erkennen ist das
Taktverhältnis von
1:3, wobei der logisch hohe Pegel für das jeweilige Auswahlsignal
R1 bzw. R0 nur eine halbe Taktperiode des ersten Taktsignals T1
lang ist. Weiterhin sind die beiden Signale R1 und R0 zueinander
um eine halbe Periode ihrer Taktperiode phasenverschoben. Die jeweilige
steigende Flanke des Signals R1 bzw. R0 tritt immer zu dem Zeitpunkt
einer steigenden Flanke des ersten Taktsignals auf.
-
Mit
jeder steigenden Taktflanke des Signals R1 übernimmt die Registereinrichtung 7 ein
am Eingang anliegendes Datenwort DW. Gleiches gilt für die Registereinrichtung 6.
Auch diese übernimmt
mit jeder steigenden Taktflanke ihres Taktsignals R0 ein am Eingang
anliegende Datenwort. Somit wird abwechselnd bei jeder steigenden
Taktflanke des ersten Taktsignals T1 ein am Dateneingang anliegendes Datenwort
in die jeweilige Registereinrichtung übernommen.
-
Zum
Zeitpunkt Tx erzeugt das Selektionssignal SEL einen Übergang
vom logisch niedrigen auf logisch hohen Pegel, der anzeigt, dass
bei der nächsten
steigenden Taktflanke des ersten Taktsignals T1 das am Eingang anliegende
Datenwort in die Registereinrichtung 7 übernommen werden soll.
-
Das
Selektionssignal SEL wird durch das Flip-Flop 61 aber erst
mit der darauf folgenden steigenden Taktflanke des Taktsignals T1 übernommen und
als Selektionssignal SEL' an
seinem Ausgang Q abgegeben. Es ist also gegenüber dem vom D-Toggle-Flip-Flop 60 erzeugten
Selektionssignal SEL um eine halbe Periode phasenverschoben. Das
Selektionssignal SEL' besitzt
eine steigende Flanke zu dem Zeitpunkt einer steigenden Flanke des
Signals R1, eine fallenden Flanke bei einer steigenden Flanke des
Signals R0. Zu dem Zeitpunkt, in dem die Registereinrichtung 7 ein
Datenwort übernimmt,
liegt so an den jeweiligen Dateneingängen der Abtast-Flip-Flops 63 bis 65 das
Selektionssignal SEL' mit
logisch hohem Pegel an. Dieser ist der Registereinrichtung 7 auch
zugeordnet.
-
Der
Ausgangstakt, gegeben durch das zweite Taktsignal T2 ist gegenüber dem
ersten Taktsignal T1 um 90° phasenverschoben.
Zum Zeitpunkt Tz, bei dem das Selektionssignal SEL' noch nicht gewechselt
ist, tritt eine steigende Flanke im zweiten Taktsignals T2 auf.
Der Abtast-Flip-Flop 63 registriert somit noch keinen Pegelwechsel
des Selektionssignals SEL'.
Durch die Verzögerungsglieder 71 bzw. 72 wird die
steigende Taktflanke des zweiten Taktsignals T2 aber verzögert und
gelangt zu späteren
Zeitpunkten an die jeweiligen Takteingänge. Die Abtast-Flip-Flops registrieren
einen Pegelwechsel, die sie an ihren Ausgängen abgeben. Die neuen an
den Eingängen der
Logikgatter 81, 82 und 83 anliegenden
logischen Pegel 1-0-0 werden von ihnen verarbeitet und daraus ein
Signal mit einem logisch hohen Pegel erzeugt, der dem Selektions-Flip-Flop 90 an
seinem Dateneingang D zugeführt
wird. Nach einer weiteren Verzögerung
durch die Verzögerungseinheit 73 erreicht
die steigende Flanke des Taktsignals T2 den Takteingang des Flip-Flops 90 und
erzeugt an seinem invertierten Ausgang einen logisch niedrigen Pegel.
Mit dem Selektions-Flip-Flop 90 werden so die Information,
in welche Registerbank gerade Geschrieben wurde als auch die bisherige
Stellung des Multiplexers 8 ausgewertet. Die erste Information
ergibt sich aus dem Selektionssignal SEL', die zweite aus dem Ausgang des Selektions-Flip-Flops 90 selbst.
Eine Änderung
des Ausgangspegels des Selektions-Flip-Flops 90 erfolgt
nur dann, wenn sich das Selektionssignal SEL' ändert.
-
In
diesem Ausführungsbeispiel
schaltet zum annähernd
gleichen Zeitpunkt die Registereinrichtung 7 aufgrund einer
steigenden Taktflanke im Signal R1 das an ihrem Dateneingang D anliegende
Datenwort auf ihren Ausgang Q. Es liegt somit am Ausgang 83 der
Multiplexereinheit 8 an. Das vom Flip-Flop 90 abgegeben
und vom Inverter 91 invertierte Stellsignal MUX wird an
den Stelleingang 81 der Schalteinrichtung 8 angelegt.
Die Schalteinrichtung 8 schaltet daraufhin den Eingang 83 auf
ihren Ausgang und führt
so das von der Registereinrichtung 7 abgegebene Datenwort
dem Eingang D der Ausgangspufferschaltung 9A zu. Bei der
nächsten fallenden
Taktflanke des Taktsignals T2 wird das Datenwort von der Ausgangspufferschaltung 9A an
den Datenausgang 42 der Schnittstellenvorrichtung 4 abgegeben.
-
Zum
Zeitpunkt Ty wechselt das Selektionssignal SEL' auf den logisch niedrigen Pegel und
zeigt damit an, dass die Registereinrichtung 6 das nächste Datenwort übernommen
hat. Bei der nächsten
steigenden Taktflanke des zweiten Taktsignals T2 wird dieser Wechsel
des Selektionssignals SEL' erneut registriert,
worauf das Selektions-Flip-Flop 90 ein Stellsignal zum
Umschalten des Auswahlschalters 8 erzeugt.
-
Grundlage
der Erfindung sind somit zwei Registereinrichtungen, die abwechselnd
mit Daten beschrieben werden, wobei immer aus der jeweils anderen
Registereinrichtung gelesen wird. Dadurch ist sichergestellt, dass
die Daten nicht fehlerhaft sind. Die Synchronisation zwischen den
beiden Schaltungsblöcken
oder zwischen den beiden Taktsignalen mit gleicher Frequenz, aber
unterschiedlicher Phase findet an der Stelle statt, die eine Auswahl
für das
Auslesen der Registereinrichtungen festlegt. Dies ist das Flip-Flop 61,
das die Registereinrichtung angibt, an der bereits neue Daten anliegen.
Die Synchronisation erfolgt durch einen zeitlichen Vergleich des
Pegelwechsels des Selektionssignals mit dem zweiten Taktsignal.
Das Auslesen kann daher mit einer neuen Flanke des zweiten Taktsignals
T2 erfolgen, die den Auswahlschalter 8 auf die entsprechende
Registerbank schaltet. Mit der anschließenden fallenden Taktflanke
des zweiten Taktsignals werden die Daten in die Ausgangspuffer 9 übernommen.
Auf zusätzliche
Flip-Flop-Schaltungen für
die Registereinrichtungen in einer herkömmlichen Synchronisationsschaltung
kann daher verzichtet werden.
-
Das
hier dargestellte Ausführungsbeispiel
ist mit positiv Taktflanken gesteuerten Flip-Flop-Schaltungen realisiert.
Natürlich
ist die Erfindung nicht darauf beschränkt. Sie kann auch mit negativ
Taktflanken gesteuerten Flip-Flops implementiert werden. Anstatt
der Abtast-Flip-Flops ist eine andere Vergleichslogik denkbar, die
einen zeitlichen Zusammenhang zwischen ersten und zweiten Taktsignal herstellt.
Auf invertierenden Ausgänge
QN der Abtast-Flip-Flops kann bei geeigneter Ausbildung der nachgeschalteten
Logik verzichtet werden. Die Logik, die das Selektionssignal SEL
mit dem Signal MUX verknüpft,
kann auch in beliebig anderer Form realisiert werden. Dabei invertiert
die Logik das Signal MUX, welches das Auswahlmittel umschaltet,
immer dann, wenn ein Pegelwechsel im Signals SEL' erfolgt ist. Die logischen Gatter lassen
sich nicht nur als UND-Gatter, sondern auch als NAND-Gatter mit Invertern
realisieren. Die gesamte Schaltung ist sowohl in CMOS-Logik aber
auch reiner MOS-Logik implementierbar.
-
- 1,
2
- Schaltungsblöcke
- 3
- Synchronisationsschaltung
- 4
- Schnittstellenvorrichtung
- 6,
7, 32
- Registereinrichtungen
- 5
- Synchronisationsmittel
- 8,
33
- Auswahlschalter
- 43,
44
- Taktsignaleingänge
- 41
- Dateneingang
- 42
- Datenausgang
- 9,
9a
- Pufferschaltungen
- 8
- Auswahlschalter
- 82,
83
- Dateneingänge
- 81
- Stelleingang
- 55
- Stellausgang
- 56
- Auswahlmittel
- 57
- Abtastvorrichtung
- 53,
54
- Auswahlausgang
- 601,
604, 605, 81, 83, 91, 561
- Inverter
- 606,
607, 82, 84, 85, 86
- Nicht-UND-Gatter
- 63,
64, 65
- Abtast-Flip-Flops
- 71,
72, 73
- Verzögerungsglied
- 61
- Flip-Flop
- 62
- Toggle-Flip-Flop
- T1,
T2
- Taktsignale
- SEL,
SEL'
- Selektionssignale
- R1,
R2
- Auswahlsignal,
Taktsignal