-
Technisches Gebiet
-
Die
Erfindung betrifft ein Verfahren zur Synchronisation eines Empfängers und
eines Senders in einem Kommunikationssystem in dem Sender und Empfänger Daten über eine Übertragungsstrecke austauschen.
Die Erfindung betrifft ferner eine Sendestation sowie eine Empfangsstation
adaptiert zur Verwendung in dem erfindungsgemäßen Verfahren.
-
Hintergrund der Erfindung
-
Bedarf
an Verfahren zur Taktsynchronisation einzelner Datenquellen über paketorientierte
Protokolle besteht beispielsweise mit Blick auf das Filmgeschäft, wo ein
typisches Szenario darin besteht, eine Anzahl von verschiedenen
Quellen digitaler Daten, wie zum Beispiel Kameras, Mikrophone oder
andere Speichermedien für
Echtzeitströme,
zufällig
zu verwenden.
-
Unter
dem Aspekt der Postproduktion/Nachbearbeitung sollten alle Kameras
die gleiche lokale Zeit aufweisen. Falls ein Netzwerkübertragungsprotokoll
verwendet wird, kann ein mögliches
Verfahren, um die korrekte Zeit mit angemessener Genauigkeit auszutauschen
realisiert werden, wie im IEEE-1588-Standard
beschrieben (IEEE = Institute of Electrical and Electronic Engineers).
Wenn jedoch Daten verschiedener Datenquellen von einem zentralen
Server verarbeitet und übertragen
werden, so müssen
die Datenströme
in Form eines Zeitmultiplex behandelt werden. Um Datenverluste zu
verhindern, muss jede der Datenquellen nicht nur mit der genauen
Zeit synchronisiert werden, sondern auch mit Frequenzinformationen,
um in jeder Datenquelle annähernd
die gleiche Taktfrequenz wie im Server zu erreichen. Das heißt, die
Quellen müssen
auf die Taktfrequenz und/oder Zeit des zentralen Servers synchronisiert
werden.
-
Die
Synchronisation mehrerer Quellen, wie etwa Kameras in einem Filmstudio,
wird bisher durch ein Genlock-(Generator Lock)-Signal realisiert.
Genlock stellt ein Verfahren dar, das eine Extraleitung benötigt und
das nicht für
paketorientierte Protokolle wie Ethernet oder Infiniband anwendbar
ist.
-
Eine
weitere Schwierigkeit besteht bei einem paketorientierten Protokoll
darin, dass die Taktfrequenz (fprot) des Übertragungssystems
asynchron zur ursprünglichen
Referenzfrequenz (fB) der Quelle oder (fA) des zentralen Servers ist.
-
Dabei
gehen die genauen Taktfrequenzinformationen infolge eines Wechsels
der Taktdomänen verloren,
wenn eingebettete Daten via Protokoll übertragen werden, was heißt, dass
die Frequenzinformationen nicht direkt zwischen dem Sender und der Mehrzahl
von Empfängerseiten
ausgetauscht werden können.
-
Die
Aufgabe der vorliegenden Erfindung besteht nun darin, ein neues
Verfahren zur Taktsynchronisierung und in Erweiterung zur Zeitsynchronisierung
vorzuschlagen, mit dem es möglich
ist die zuvor beschriebenen Nachteile zu überwinden. Entsprechend ausgebildete
Empfangs- und Sendestationen liegen auch im Blickpunkt der Erfindung.
-
Erfindung
-
Diese
Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs
1 und durch eine Sendestation mit den Merkmalen nach Anspruch 9 sowie
eine Empfangsstation mit den Merkmalen des Anspruchs 14 gelöst. Vorteilhafte
Ausführungsformen
der Erfindung sind in weiteren Ansprüchen definiert.
-
Das
Verfahren dient zur Taktsynchronisation zwischen einer Sendestation
und einer Empfangsstation in einem Kommunikationssystem, in dem Sender
und Empfänger
Daten über
eine Übertragungsstrecke
austauschen. Dabei werden die Daten jeweils während von Pausen unterbrochenen Übertragungsphasen über jeweils
eine wenigstens abschnittsweise durch eine Protokolltaktdomäne führende Übertragungsstrecke
von der Sendestation zu der Empfangsstation bzw. in umgekehrter
Richtung übertragen.
Die Sendestation arbeitet mit einer ersten Taktfrequenz. Die Datenübertragung
geschieht mit einer zweiten Taktfrequenz, auch Protokolltaktfrequenz
genannt. Die Empfangsstation arbeitet mit einer dritten Taktfrequenz.
Es wird ein Ausgleichsverfahren zum Ausgleichen des Frequenzunterschiedes zwischen
den Arbeitstakten der beiden Kommunikationspartner durchgeführt. Im
Rahmen des Ausgleichsverfahrens wird in einem Sendepfad und in einem
Empfängerpfad
jeweils ein Taktzyklen-Zählverfahren
durchgeführt,
das die folgenden Schritte umfasst:
- – Ermitteln
der Dauer eines eine bestimmte Datenübertragungsphase anzeigenden FRAME_VALID-Signals
(FV) in Taktzyklen der ersten oder der zweiten Taktfrequenz mit
einem ersten Zähler
(Z1, Z2) im Sendepfad;
- – Ermitteln
der Dauer des eine bestimmte Datenübertragungsphase anzeigenden FRAME_VALID-Signals
(FV) in Taktzyklen der dritten oder der zweiten Taktfrequenz mit
einem zweiten Zähler
(Z1', Z2') im Empfängerpfad;
- – Vergleichen
der von den beiden Zählern
jeweils ermittelten Taktzykluszahlen (ΔTX, ΔRX);
- – Ausgleichen
des Frequenzunterschiedes zwischen dem Arbeitstakt des Senders (1)
und dem Arbeitstakt des Empfängers
(2) auf der Grundlage des Vergleichsergebnisses.
-
Dabei
werden die von den beiden Zählern
jeweils gezählten
Taktzykluszahlen miteinander verglichen und auf der Grundlage des
Vergleichsergebnisses wird das Ausgleichen des Frequenzunterschiedes
veranlasst.
-
Das
FRAME_VALID-Signal wird z. B. intern in jeder Ethernet-Schnittstelle und
darin im MAC-Layer zur Verfügung
gestellt. Ein Pegelniveau kann beispielsweise bezogen auf ein Bezugspotential
auf einen höheren
Wert („High”) gesetzt
sein, um dadurch anzuzeigen, dass Daten übertragen werden, während das
Pegelniveau entsprechend auf einen geringeren Wert („Low”) gesetzt
wird, um dadurch anzuzeigen, dass keine Daten gesendet werden. Selbstverständlich ist
auch der umgekehrte Fall denkbar, d. h. dass das Pegelniveau auf
einen niedrigeren Wert gesetzt wird, um dadurch anzuzeigen, dass
Daten übertragen
werden. Unter dem Begriff „Übergangsflanke
des „FRAME_VALID”-Signals” sind in
diesem Text die Begriffe „positive
Flanke des „FRAME_VALID”-Signals” und „negative
Flanke des „FRAME_VALID”-Signals” subsumiert.
-
Die
Bezeichnung des Signals ist nicht limitierend gemeint. Grundsätzlich kann
auch jedes andere geeignete Übertragungsphasenanzeigesignal,
das eine Information über
die Dauer einer echten/gültigen Übertragungsphase
im Unterschied zu einer Phase in der keine oder sogenannte Fülldaten übertragen werden
trägt,
anstelle des „FRAME_VALID”-Signals verwendet
werden. Die Phase in der keine oder Fülldaten übertragen werden, wird auch
als Leerlauf- oder Idle-Zustand bezeichnet. Wichtig ist in diesem Zusammenhang,
dass während
dieses Übertragungsphasenanzeigesignals
im Sender bzw. Empfänger
die Taktfrequenz (fprot) des Übertragungssystems
nicht modifiziert bzw. korrigiert wird. Dies erfolgt nur während des
Leerlauf- oder Idle-Zustands. Damit stellt die Dauer des Übertragungsphasenanzeigesignal
eine Referenzzeit in Sender und Empfänger dar. Daher wird nur diese
Zeit verwendet, um einen möglichen
Taktversatz zwischen der Quelle oder des zentralen Servers zu messen.
-
Dadurch,
dass das Verfahren auf Ausnutzung des Taktes des Übertragungsprotokolls
beruht und eines in jeder Kommunikationsschnittstelle vorhandenen
Signals entlang des Übertragungspfades, kann
eine Synchronisation zweier Stationen erreicht werden, die weit
entfernt sind, selbst wenn zwischen ihnen noch weitere Zwischenstationen
befindlich sind.
-
Verschiedene
Ausführungsformen
des erfindungsgemäßen Verfahrens
sind in der Patentanmeldung offenbart. Einmal werden zur Ermittlung
der Dauer des FRAME_VALID-Signals Taktflanken des Taktsignals der
ersten Taktfrequenz erfasst und ein entsprechendes Taktflankensignal
wird in eine Übertragungsprotokoll-Taktdomäne überführt, wobei
das überführte Taktflankensignal
als Freigabesignal für einen
in Abhängigkeit
der zweiten Taktfrequenz (fprot) getakteten
Zähler
verwendet wird und die Zählerstände des
Zählers
bei Erkennen der Übergangsflanken
des FRAME_VALID-Signals erfasst werden und aus der Differenz die
Dauer des FRAME_VALID-Signals bestimmt wird. Dies wird im Sendepfad
gemacht. Im Empfangspfad wird Entsprechendes gemacht, nur, dass
die Taktflanken des Taktsignals der dritten Taktfrequenz erfasst
werden.
-
Eine
weitere Ausgestaltung betrifft die Lösung, dass im Sendepfad zur
Ermittlung der Dauer das FRAME_VALID-Signal in die Taktdomäne für die erste
Taktfrequenz überführt wird,
wobei das überführte FRAME_VALID-Signal
als Freigabesignal für den
in Abhängigkeit
der ersten Taktfrequenz getakteten Zähler verwendet wird und die
Zählerstände des Zählers bei
Erkennen der Übergangsflanken
des FRAME_VALID-Signals erfasst werden und aus der Differenz die
Dauer des FRAME_VALID-Signals bestimmt wird; und wobei im Empfangspfad
zur Ermittlung der Dauer das FRAME_VALID-Signal in die Taktdomäne für die dritte
Taktfrequenz überführt wird,
wobei das überführte FRAME_VALID-Signal
als Freigabesignal für
den in Abhängigkeit
der dritten Taktfrequenz getakteten Zähler verwendet wird und die
Zählerstände des
Zählers
bei Erkennen der Übergangsflanken
des FRAME_VALID-Signals erfasst werden und aus der Differenz die
Dauer des FRAME_VALID-Signals bestimmt wird. Eine Implementierung
basierend auf dieser Lösung
bietet den Vorteil, das die Zähler
mit einem kontinuierlichen Enable-Signal betrieben werden und der
Arbeitstakt der Station verwendet wird und nicht der Takt des Übertragungsprotokolls.
Sie können
deshalb langsamer laufen, was auch Vorteile hinsichtlich Ganggenauigkeit
bringt.
-
Bei
einer Ausgestaltung des erfindungsgemäßen Verfahrens wird das Ausgleichsverfahren
für jedes
Kommunikationspartnerpaar in einem Kommunikationssystem durchgeführt. So
können
Frequenzunterschiede zwischen mehreren Stationen ausgeglichen werden,
die gemeinsam auf eine zentrale Taktfrequenz synchronisiert werden.
Wenn die Stationen Daten für
ein- und dasselbe Projekt liefern, dann beziehen sich alle Stationen
auf die gleiche Taktfrequenz und es entstehen keine Fehler hinsichtlich
verschiedener Zeitbasen. Das ist insbesondere bei der Videonachbearbeitung
in Videostudios von Vorteil.
-
Wenn
zusätzlich
auch noch eine Zeitsynchronisierung z. B. gemäß des IEEE 1588 Standards durchgeführt wird,
stimmt auch der Zeitcode der Videodaten in den verschiedenen Stationen
und es ist so, dass die Schnittbearbeitung basierend auf dem Zeitcode
und von beliebigen Bearbeitungsplätzen durchgeführt werden
kann.
-
Der
zuvor genannte Schritt der Zeitsynchronisierung der wenigstens einen
dezentralen Einheit auf die Zeit der zentralen Einheit wird insbesondere bei
jeder Wiederinbetriebnahme der betreffenden dezentralen Einheit
einmal durchgeführt.
-
Die
Erfindung ermöglicht
eine Regeneration von Frequenz- oder
Timinginformationen von einer Datenquelle auch auf eine Mehrzahl
von Endgeräten im
Falle von paketorientierten Protokollen.
-
Die
Erfindung kann – selbst,
wenn Änderungen
in der Taktdomäne
auftreten – auch
in Netzwerken oder für
einzelne direkte Verbindungen verwendet werden.
-
Die
Erfindung bietet eine hohe Genauigkeit, was bei der Übertragung
von Echtzeit-Daten, wie Video-, Audio- oder Hochgeschwindigkeitsmess-Daten von
entscheidender Bedeutung ist.
-
Die
Erfindung kommt ohne zusätzliche
Signalleitung aus.
-
Im
Folgenden werden weitere Vorteile und Einzelheiten der Erfindung
unter Bezugnahme auf die beigefügten
Zeichnungen beschrieben.
-
Kurzbeschreibung der Zeichnungen:
-
Es
zeigen:
-
1 eine
schematische Darstellung zur Veranschaulichung der grundsätzlichen
Konstellation eines Kommunikationssystems;
-
2 ein
Prinzip-Blockschaltbild mit einem Protokollrahmen zur Veranschaulichung
einer Datenübertragung
zwischen den Kommunikationspartnern eines Kommunikationspartnerpaares
des Kommunikationssystems von 1;
-
3 ein
Zeitdiagramm zur Veranschaulichung der Prozesse auf der physikalischen
Schicht;
-
4 ein
Blockschaltbild einer ersten elektronischen Einrichtung eines Sendepfades;
-
5a ein
Blockschaltbild einer ersten elektronischen Einrichtung eines Empfangspfades;
-
5b ein
Blockschaltbild einer Auswerteeinheit, die auch Steuersignale für die Nachstellung der
zu synchronisierenden Taktfrequenz erzeugt;
-
6 ein
Flussdiagramm eines in der Auswerteeinheit ablaufenden Vergleichsverfahrens.
-
7 ein
Blockschaltbild einer zweiten elektronischen Einrichtung eines Sendepfades;
und
-
8 ein
Blockschaltbild einer zweiten elektronischen Einrichtung eines Empfangspfades.
-
Ausführliche
Beschreibung der Erfindung
-
1 zeigt
eine schematische Darstellung zur Veranschaulichung der grundsätzlichen
Konstellation eines Kommunikationssystems KS, das zum Beispiel zur
technischen Ausstattung eines Filmstudios gehört und einen bezüglich des
Kommunikationssystems KS zentralen Server 1 und bezüglich des Kommunikationssystems
dezentrale Kameras K0, K1, ...
Kn-1 umfasst.
-
Der
zentrale Server 1 wird mit einer zentralen Taktfrequenz
fA betrieben, während die einzelnen Kameras
K0, K1, ... Kn-1 jeweils mit einer unterschiedlichen dezentralen
Taktfrequenz betrieben werden.
-
Ein
Kommunikationspartnerpaar umfasst jeweils den zentralen Server 1 als
einen Kommunikationspartner und je eine der Kameras K0,
K1, ... Kn-1 als jeweils
anderen Kommunikationspartner, was bedeutet, dass die Anzahl der
Kommunikationspartnerpaare des Kommunikationssystems mit der Anzahl
der Kameras K0, K1,
... Kn-1 übereinstimmt.
-
Die
dezentralen Kameras K0, K1,
... Kn-1 erzeugen jeweils einen aus echtzeitkritischen
Kameradaten bestehenden Datenstrom, synchron zur ihnen jeweils zugeordneten
dezentralen Taktfrequenz. Die Nutzdaten werden in Übertragungsphasen über jeweils
durch eine Protokolltaktdomäne
führende Übertragungsstrecke
von den einzelnen Kameras zum zentralen Server 1 gesendet.
Die Übertragungsrate wird
als hoch angenommen, so dass auch Pausen zwischen den Übertragungsphasen
auftreten können,
in denen keine Nutzdaten übertragen
werden. Die Protokolltaktdomäne
weist eine Protokolltaktfrequenz auf. Im Allgemeinen ist die Protokolltaktfrequenz
fprot asynchron zur ursprünglichen
Referenzfrequenz der Datenquelle oder dem zentralen Server 1.
-
Die
einzelnen Kameras K0, K1,
... Kn-1 werden durch eine Zeitsynchronisierung
nach dem IEEE-1588-Standard auf die Zeit des zentralen Servers 1 synchronisiert.
Dieses Synchronisationsverfahren wird auch als Precision Time Protocol
PTP bezeichnet. Von den teilnehmenden Geräten wird über einen Algorithmus dasjenige
ermittelt, das angibt, die exakteste Zeit zu haben. Anschließend wird
von diesem Gerät
(Grandmaster Clock) die Zeit an die anderen Geräte (Slawe Clocks) verteilt,
wobei die Signallaufzeiten kompensiert werden. Die Kompensation stützt sich
auf die Annahme, in dem Netzwerk habe der Hin- und Rückweg von
Synchronisierungsnachrichten, über
mehrere Schritte gemittelt, die gleiche Laufzeit.
-
Die
Zeitsynchronisierung ist durchzuführen, um bei jedem Empfänger jeweils
den richtigen Zeitstempel zu bekommen.
-
Die
Synchronisationspfade SP0, SP1,
... SPn-1, entlang derer die Taktfrequenz-
und Zeitinformationen enthaltenden Synchronisationsdaten vom zentralen
Server 1 zu den einzelnen Kameras K0,
K1, ... Kn-1 übertragen
werden, sind in eine vom Server 1 zu den Kameras K0, K1, ... Kn-1 verlaufenden durch erste Pfeile P angezeigte
ersten Richtung gerichtet. Die Datenpfade DP0,
DP1, ... DPn-1 hingegen,
entlang derer die Kameradaten von den einzelnen Kameras K0, K1, ... Kn-1 zum zentralen Server 1 übertragen
werden, sind in eine zur ersten Richtung entgegen gesetzten zweiten
Richtung gerichtet, die durch Pfeile P' angezeigt ist. So können vorteilhaft Synchronisation
und Nutzdatentransport unabhängig
voneinander durchgeführt
werden, falls eine bidirektionale Verbindung eingerichtet ist, wie
etwa für
eine 10-Gigabit-Ethernet Verbindung.
-
Jede
Kamera K0, K1, ...
Kn-1 ist mit einer Takt-Steuereinrichtung versehen, mit der
der Arbeitstakt der jeweiligen Kamera K0,
K1, ... Kn-1 veränderbar ist.
-
Die
Takt-Steuereinrichtungen sind zum Beispiel jeweils als Phasenregelschleife
(Phase Locked Loop, PLL) oder als Verzögerungsregelschaltung (Delay
Locked Loop, DLL) ausgeführt.
-
Für jedes
der Kommunikationspartnerpaare wird ein gesondertes Ausgleichsverfahren
zum Ausgleichen des Frequenzunterschiedes zwischen den Arbeitstakten
der beiden Kommunikationspartner des jeweiligen Kommunikationspartnerpaares
durchgeführt.
-
Da
jedoch die für
jedes der Kommunikationspartnerpaare durchgeführten Ausgleichsverfahren hinsichtlich
des prinzipiellen Ablaufs miteinander übereinstimmen, genügt es, wenn
im Folgenden mit Bezug zu den 2 bis 6 zur
Vermeidung bloßer
Wiederholungen das Ausgleichsverfahren exemplarisch lediglich am
Beispiel des aus dem zentralen Server 1 und der ersten
Kamera K0 gebildeten ersten Kommunikationspartnerpaares
beschrieben wird.
-
2 zeigt
ein Prinzip-Blockschaltbild mit einem Protokollrahmen PF zur Veranschaulichung
einer Datenübertragung
im Synchronisations-Pfad zwischen dem zentralen Server 1 und
der ersten Kamera K0. Die in einem Protokollrahmen
PF verpackten Daten D0...Dn-1 werden
von dem zentralen Server 1 innerhalb einer ersten Taktdomäne DA zur
ersten Kamera K0 innerhalb einer dritten
Taktdomäne
DB über eine
paketorientierte Übertragungsstrecke
innerhalb einer zweiten Taktdomäne
DProt übertragen.
Ein Datenwort besteht aus den Datenbits D0...Dn-1 und besitzt die Datenwortbreite n. Ein
Datenpaket kann sich aus einem oder mehreren Datenworten zusammensetzen.
Wie beschrieben, betreffen die Datenpakete Daten zur Synchronisation,
insbesondere die Taktzykluszahlen, deren Gewinnung und Verwendung nachfolgend
genauer erläutert
werden. Auch Kamerafernsteuerdaten werden so übertragen. Weiterhin können auch
Intercom-Daten so zur Kamera übertragen
werden. Dabei handelt es sich um Audio-Daten z. B. für Regieanweisungen an den Kameramann.
-
Die Übertragung
des synchronen Datenstroms von dem zentralen Server 1 zu
der ersten Kamera K0 erfolgt über ein
paketorientiertes Protokoll, das eine wenigstens nahezu feste Datenrate
von 1 GBit/s oder 10 GBit/s aufweist, z. B. über das Ethernet- oder das
Infiniband-Protokoll. Im Hinblick auf eine Protokollschicht, zum
Beispiel der MAC-(Medium
Access Control)-Schicht, führt
die Verwendung einer festen Datenrate (z. B. 1 Gb/s or 10 Gb/s)
intern zu einer festen Datenwortbreite und Taktfrequenz. Beispielsweise
kann im Falle eines 10 Gb-Ethernet-Protokolls (XGE) nach dem IEEE
Standard 802.3ae eine Datenwortbreite von 64 Bit bei 156,25 Mhz
verwendet werden. Mehrere Datenworte können zu einem Paket variabler
Länge kombiniert
werden. Datenpakete werden in einem Protokollrahmen übertragen,
mit Headerinformationen, wie Präambel
und Adressinformationen und einem Trailer mit einer Fehlerprüfsumme am
Ende.
-
Die
erste Taktfrequenz fA der ersten Taktdomäne DA wird
von einer ersten Taktquelle CLK_SRC erzeugt. Die zweite Taktfrequenz
fprot der zweiten Taktdomäne wird
von einer zweiten Taktquelle CLK_PROT und die dritte Taktfrequenz
fB der dritten Taktdomäne wird von einer dritten Taktquelle CLK_DEST
erzeugt.
-
Die
erste Taktfrequenz fA und die dritte Taktfrequenz
fB sind nominell gleich. Jedoch resultieren aus
dem Einsatz zweier lokaler Oszillatoren geringe Abweichungen, die
beispielsweise bei einer 10-Gigabit-Ethernet Übertragung maximal +/–100 ppm
betragen darf.
-
Wie
bereits oben beschrieben, ist der von der Takt-Steuereinrichtung gesteuerte Arbeitstakt
der ersten Kamera K0 veränderbar.
-
Die
erste Kamera K0 erzeugt einen zur ersten Taktfrequenz
fB synchronen Datenstrom.
-
In
einem ersten Schritt des Synchronisationsverfahrens werden seitens
des Servers 1 neben herkömmlichen Daten neuartige Taktzykluszahlen
in den Protokollrahmen PF eingebettet.
-
Taktzykluszahlen
müssen
periodisch in gewissen Abständen
wiederholt werden. Taktzykluszahlen können gemultiplext mit anderen
Daten oder aber separat in einem Protokollrahmen übertragen werden.
-
Um
zu erreichen, dass der Wert der Taktfrequenz fB mit
dem Wert der ursprünglichen
Frequenz fA übereinstimmt, wird bei dem
erfindungsgemäßen Verfahren
ein weiter unten näher
beschriebenes Synchronisationsverfahren durchgeführt, um den Einfluss von Taktjitter
und Wandereffekten z. B. Temperatureffekten zu reduzieren.
-
Hinsichtlich
der in dem Zeitdiagramm gemäß 3 veranschaulichten,
bei der Übertragung
des von dem Server 1 erzeugten Datenstroms auf der Ethernet-MAC-Schicht
stattfindenden Prozesse, kann zwischen einerseits einem ”gültigen” Zeitabschnitt,
in dem eingebettete Daten (zum Beispiel die Datenworte mit den Bits
D0...Dn-1 bei jedem
Taktzyklus der zweiten Taktfrequenz fprot) übertragen
werden und folglich ein FRAME_VALID-Signal den Wert 1 (”FRAME_VALID” = 1) aufweist
und andererseits einem ”ungültigen” Zeitabschnitt
unterschieden werden, in dem keine zu transportierenden Daten bereitstehen
und folglich das FRAME_VALID-Signal den Wert 0 (”FRAME_VALID” = 0) hat.
Das FRAME_VALID-Signal ist synchron zur zweiten Taktdomäne bzw.
Taktfrequenz fprot. Beim Ethernet Busprotokoll
werden synchron zur Taktfrequenz fprot Datenpakete
von bis zu acht Byte pro Takt übertragen. Um
die Länge
eines Übertragungsrahmens
in Byte dem Sender vorzugeben, muss zusätzlich zu den Daten eine „Bytemaske” angegeben
werden. Bei acht Bytes werden z. B. acht Bit verwendet, wobei jedes Bit
ein Byte als gültig
oder ungültig
maskiert. Das FRAME_VALID-Signal kann direkt aus einem dieser Maskierungsbits
generiert werden, da es der zeitlichen Länge des Ethernet-Datenpakets
auf Sender- und Empfängerseite
entspricht.
-
Im
Empfänger
werden intern im MAC-Layer durch Auswertung der anliegenden Daten
die Maskierungsbits regeneriert. Das Empfänger-seitige FRAME_VALID-Signal
sollte aus dem gleichen Bit wie auf der Senderseite erzeugt werden.
Dann liegt auf Sender- und Empfängerseite
die gleiche Zeitreferenz vor. Wenn von der Applikation keine zu
transportierenden Daten geliefert werden, sind neben den Synchronisationsinformationen
beliebige Fülldaten bei
10 Gigabit Ethernet z. B. zwischen einer Präambel 0x”D5555555555555FB” bzw. einem
End-Byte 0x”FD” und ungültigen Datenbytes
0x”07” einzubetten.
Aus diesem gültigen
Frame kann das FRAME_VALID-Signal Empfänger-seitig rekonstruiert werden.
-
Während der Übertragung
der gültigen
Daten des Servers 1 wird die zweite Taktfrequenz fprot auch die Referenzfrequenz für die Quelldaten
von der Kamera K0 werden.
-
Die
im Folgenden beschriebene Erzeugung der spezifischen Taktzykluszahlen
erfolgt unter Verwendung einer in 4 als Blockschaltbild
dargestellten ersten elektronischen Einrichtung E1 eines Senderpfades
TXP, erster Variante. Ein erster Schaltkreis der ersten elektronischen
Einrichtung E1 untersucht die Dauer, während der der Wert des FRAME_VALID-Signals gleich 1
beträgt,
hinsichtlich Taktzyklen der ersten Taktfrequenz fA.
Hierzu werden mittels eines Flankenerfassungsdetektors FD die ansteigenden
(positiven) Flanken des Taktsignals der ersten Taktfrequenz fA erfasst und ein entsprechendes Flanken-Signal
in an sich bekannter Weise mit einem ersten und einem zweiten Flip-Flop
F1, F2 in die zweite Taktdomäne
des Referenztaktes mit der Taktfrequenz fprot transformiert.
Bei den Flip-Flops handelt es sich vorzugsweise um Flanken-getriggerte
D-Flip-Flops. Das zuvor genannte Flanken-Signal wird als Freigabesignal
für einen
Zähler
Z1 verwendet, der mit der zweiten Taktfrequenz fprot getaktet wird.
Getriggert durch einen Flankendetektor FDB für beide Flanken des in 2 gezeigten FRAME_VALID-Signals
FV erhält
man den Start- und den End-Zählerstand
des Zählers
Z1 am Ausgang des ersten Zählers
Z1.
-
Ein
dem Zähler
Z1 nachgeschalteter erster Akkumulator A ermittelt eine erste Taktzykluszahl ΔTX als Differenz
der erfassten Zählerstände zu dem Endpunkt
und dem Startpunkt des „FRAME_VALID”-Signals.
Dazu sind ein Subtrahierer SUB1 und ein drittes Flip-Flop F3 vorgesehen. Taktzykluszahl-Daten, die die erste
Taktzykluszahl ΔTX
kennzeichnen, werden in den Beginn oder das Ende eines der folgenden
Protokollrahmen, die auf den gegenwärtig übertragenen Protokollrahmen
folgen, eingebettet und zur Kamera K0 gesendet.
-
Hierzu
wird die erste Taktzykluszahl ΔTX
mit einem vierten Flip-Flop F4 mit dem nächsten gültigen Protokollrahmen registriert
(beispielsweise mit der nächsten
positiven Flanke des „FRAME_VALID”-Signals,
d. h. mit dem folgenden Protokollrahmen.
-
In
einem Empfängerpfad
RXP, erster Variante, wird unter Verwendung einer in 5a als
Blockschaltbild dargestellten zweiten elektronischen Einrichtung
E2 eine zweite Taktzykluszahl ΔRX
ermittelt, wenn gültige
Daten empfangen werden. Die zweite elektronische Einrichtung E2
stimmt dem grundsätzlichen
Aufbau und der prinzipiellen Funktionsweise nach mit der ersten
elektronischen Einrichtung E1 überein,
weshalb zur Vermeidung bloßer
Wiederholungen nachfolgend auf eine detaillierte Beschreibung der
zweiten elektronischen Einrichtung E2 verzichtet wird. Während die
Schaltung E1 für
die Frequenzsynchronisation sendeseitig im Server 1 integriert
ist, ist die Schaltung E2 im beschriebenen Ausführungsbeispiel in der Kamera
K0 untergebracht, also empfangsseitig. Mit
der Schaltung E2 wird die Länge
des im Ethernet-Interface zurückgewonnenen FRAME_VALID-Signals
in Takteinheiten des Kamera-Taktes mit der Frequenz fB bestimmt.
-
Die
zweite elektronische Einrichtung E2 umfasst wiederum mehrere Flip-Flops
F1', F2', F3', mehrere Flankenerfassungsdetektoren
FD', einen zweiten
Zähler
Z1', einen Akkumulator
A' und einen Flankendetektor
FDB'.
-
Die
Ermittlung der zweiten Taktzykluszahl ΔRX erfolgt in einer zur Ermittlung
der ersten Taktzykluszahl ΔTX
analogen Weise, weshalb zur Vermeidung bloßer Wiederholungen nachfolgend
auf eine detaillierte Beschreibung der Ermittlung von ΔRX verzichtet
wird.
-
5b zeigt
ein grobes Blockschaltbild für eine
Auswerteeinheit, in der die ermittelten Taktzykluszahlen ΔTX und ΔRX verglichen
werden und Steuersignale für
die Korrektur der zu synchronisierenden Taktfrequenz generiert werden.
Der dargestellte Block führt
ein Vergleichsverfahren durch, dessen Ablauf in 6 als
Flussdiagramm dargestellt ist.
-
Falls
das Ergebnis in Schritt S1 positiv ist, setzt die Vergleichs- und
Steuerelektronik das Vergleichsverfahren mit dem Schritt S2 fort.
Falls das Ergebnis in Schritt S1 hingegen negativ ist, kehrt die Vergleichs-
und Steuerelektronik zum Startpunkt SP des Vergleichsverfahrens
zurück.
Durch die Abfrage im Schritt S1 soll zum Ausdruck gebracht werden, dass
es wichtig ist, die Taktzykluszahlen-Differenz nicht während der Dauer des FRAME_VALID-Signals im
zentralen Server 1 zu ermitteln, weil in dieser Phase noch
keine konsistenten Messergebnisse für die Taktzykluszahlen vorliegen
können.
-
In
Schritt S2 berechnet die Vergleichs- und Steuerelektronik eine Taktzykluszahlen-Differenz,
in dem die erste Taktzykluszahl ΔTX
von der zweiten Taktzykluszahl ΔRX
subtrahiert wird.
-
In
Schritt S3 prüft
die Vergleichs- und Steuerelektronik, ob die in Schritt S2 berechnete
Taktzykluszahlen-Differenz gleich Null ist.
-
Ergibt
die Prüfung
in Schritt S3, dass die Taktzykluszahlen-Differenz gleich Null ist, kehrt die Vergleichs-
und Steuerelektronik zum Startpunkt SP des Vergleichsverfahrens
zurück.
-
Ergibt
die Prüfung
in Schritt S3 hingegen, dass die Taktzykluszahlen-Differenz ungleich
Null ist, geht die Vergleichs- und Steuerelektronik zu Schritt S4 über.
-
In
Schritt S4 prüft
die Vergleichs- und Steuerelektronik, ob die Taktzykluszahlen-Differenz
kleiner als Null ist.
-
Ergibt
die Prüfung
in Schritt S4, dass die Taktzykluszahlen-Differenz kleiner als Null ist, geht die
Vergleichs- und Steuerelektronik zu Schritt S5 über.
-
Falls
jedoch die Prüfung
in Schritt S4 ergibt, dass die Taktzykluszahlen-Differenz nicht
kleiner als Null ist, geht die Vergleichselektronik zu Schritt S6 über.
-
In
Schritt S5 wird durch die Vergleichs- und Steuerelektronik veranlasst,
dass unter Verwendung der Takt-Steuereinrichtung 3 die
dritte Taktfrequenz fB der dritten Taktdomäne DB erhöht wird.
-
In
Schritt S6 wird durch die Vergleichs- und Steuerelektronik veranlasst,
dass unter Verwendung der Takt-Steuereinrichtung 3 die
dritte Taktfrequenz fB der dritten Taktdomäne DB reduziert
wird.
-
Die 7 zeigt
ein Blockschaltbild einer zweiten elektronischen Einrichtung E3
eines Sendepfades. Die 8 zeigt ein Blockschaltbild
einer zweiten elektronischen Einrichtung E4 eines Empfangspfades.
Die dritte elektronische Einrichtung und die vierte elektronische
Einrichtung werden für
eine alternative Lösung
zu der zuvor beschriebenen Lösung
eingesetzt.
-
Die 7 ist
mit der 4 zu vergleichen. Dabei wurden
gleiche Bauteile in beiden Blockschaltbildern durchgängig mit
den gleichen Referenzzeichen bezeichnet. Ein wichtiger Unterschied
betrifft die Arbeitsweise des Zählers
Z2. Dieser wird mit dem Arbeitstakt CLK_SRC in der Sendestation
betrieben. Die Frequenz fA ist in diesem
Fall geringer als in 4. Z. B. beträgt die Protokolltaktfrequenz
bei 10 GBE 156.25 MHz. Demgegenüber
ist der Arbeitstakt in der Station typischerweise kleiner als die
Hälfte
der Protokollfrequenz. Das FRAME_VALID-Signal FV wird über die
beiden Flip-Flops F5 und F6 in die Taktdomäne mit der ersten Taktfrequenz
fA überführt. Dieses überführte FRAME_VALID-Signal
dient als Freischaltsignal für
den Zähler
Z2. Die Erfassung der Zählerstände geschieht
wie im Beispiel gemäss 4 mit
Auftreten der ansteigenden und abfallenden Flanke des FRAME_VALID-Signals
FV. Im Unterschied zur 4 wird die Taktzykluszahlenerfassung
nicht mit einem Akkumulator durchgeführt. Stattdessen werden zwei
Flip-Flops F7 und F8 benutzt, die die Zählerstände mit ansteigender Flanke des
FRAME_VALID-Signals und abfallender Flanke des FRAME_VALID-Signals zwischenzuspeichern. In
einer nachgeschalteten Subtrahierschaltung SUB2 wird die Differenz
zwischen beiden Zählerständen errechnet.
Diese Differenz wird einen Arbeitstakt später in das Flip-Flop F9 übernommen
und steht als Taktzykluszahl ΔTX
am Ausgang zur Verfügung.
Sämtliche
Komponenten hinter dem Zähler
Z2 werden mit dem Takt CLK_prot des Datenübertragungsprotokolls betrieben.
-
Die 8 zeigt
die zu 6 entsprechende Schaltung für den Empfangspfad RXP. Sie
ist mit 5a zu vergleichen. Die Struktur
ist im prinzipiellen Aufbau identisch. Am Eingang dieser Schaltung wird,
wie dargestellt, der Arbeitstakt CLK_DIST der Empfangstation mit
der Taktfrequenz fB benutzt.
-
Im
Hinblick auf eine Anwendung im Netzwerk kann die Datenübertragungsstrecke
von einer Datenquelle zu einer Datensinke durch eine Anzahl von Netzknoten
führen,
von denen jeder entweder als ein Sender oder als ein Empfänger betrachtet
werden kann. In dem jeweiligen Empfänger kann die Taktfrequenz
der Protokollschicht fprot korrigiert oder
resynchronisiert werden (Taktkorrektur), um synchrone Protokolle
zu empfangen. Dies geschieht nur in der Phase, wo das FRAME_VALID-Signal
FV den inaktiven Zustand anzeigt. So kann über die ganze Übertragungsstrecke
eine Synchronisierung erreicht werden.
-
Die
Frequenz fprot des Übertragungsprotokolls stellt
die Referenzfrequenz dar. Die Dauer des FRAME_VALID-Signals ist
die Referenzdauer, die in jedem Knoten zur Gewinnung der Taktzykluszahlen benutzt
wird. Dies trifft auch für
den Empfänger
am Endknoten zu, das heißt
das zuvor beschriebene Synchronisationsverfahren kann auch innerhalb
einer Netzarchitektur mit zahlreichen Netzknoten angewendet werden.
-
Die
Erfindung ist für
alle Arten von übertragenen
Daten anwendbar, wo normalerweise ein Takt zu betrachten ist, wie
beispielsweise Daten von verschiedenen Sensoren. Mittels der Erfindung
können Anwendungstakte
auf eine Mehrzahl von Empfängern
in paketorientierten Protokollen resynchronisiert werden, so lange
eine feste Datenrate für
die Bereitstellung der Anwendungsdaten und eine feste Übertragungsrate
verwendet wird.
-
Insbesondere
bringt der Einsatz der Erfindung dort Vorteile, wo Echtzeitdaten
zu übertragen sind,
also im Besonderen Multimediadaten wie Audio- oder Video-Datenströme.
-
Andere
Geräte,
zwischen denen die Synchronisierung in erfindungsgemäßer Weise
erfolgen kann, sind z. B. Encoder und Decoder für Audio und/oder Video-Datenströme. DSL-Router
und Personal Computer, Streaming Clients und Digital Empfänger, wie
Set Top Box oder sogenannte IRD Geräte (Integrated Receiver Decoder),
das sind digitale TV-Geräte
mit integrierter Set Top Box. Die Aufzählung ist nicht abschließend.
-
Um
die theoretisch auch denkbare Übertragungsphase
für die
Synchronisation auszunutzen, wo keine gültigen Daten übertragen
werden, müsste darin
ein Abschnitt definiert werden, in dem keine Taktkorrektur bzgl.
der Protokolltaktfrequenz fprot gestattet
ist. Auch könnte
ein bestimmter Signalabschnitt innerhalb der gültigen Datenübertragungsphase
als Referenz benutzt werden, also z. B. die Hälfte oder ein anderer Bruchteil
dieser Phase.