-
Die
vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung
zur Erzeugung eines Referenzereignisses aus einem bestimmten Datum
in einem Informationsrahmen.
-
Auf
dem Telekommunikationsgebiet werden Daten von einem Sender zu einem
Empfänger
durch Informationsrahmen übertragen.
Ein Informationsrahmen ist in zwei Abschnitte unterteilt, einen
ersten, Präambel
oder Header genannten Teil, und einen zweiten, Datenrahmen genannten
Teil, der zu sendende Daten enthält.
-
Im
Allgemeinen ist es für
den Empfänger wichtig,
ein Referenzereignis aus einem bestimmten Datum in einem Informationsrahmen
mit einer gewissen Genauigkeit erfassen zu können.
-
Beispielsweise
kann dieser Referenzmoment zum Synchronisieren des Empfängers auf
den Sender oder zum Aktivieren mehrere Vorgänge auf der Empfängerseite
verwendet werden, die gleichzeitig ausgeführt werden müssen.
-
In
der noch nicht veröffentlichten
französischen
Patentanmeldung Nr. 9906029 betrifft diese Anwendung die Steuerung
der Synchronisation der Frequenz zwischen zumindest zwei Knoten
A, B eines Kommunikationsnetzes, die jeweils einen Takt mit gegebener
Frequenz aufweisen.
-
Die
vorliegende Beschreibung offenbart ein Verfahren der Synchronisation
zwischen Kommunikationsnetzen, die Informationen anhand von Informationsrahmen
austauschen, wobei jedes Kommunikationsnetz einen Takt aufweist,
und die Anzahl der Taktimpulse durch einen Zähler überwacht werden. Die Synchronisation
wird durch Lesen von Informationen, die die gezählten Taktimpulse des Takts
des ersten Netzes beim Auftreten eines Referenzereignisses darstellen,
Einfügen
zumindest dieser Informationen oder berechneter Informationen auf
der Grundlage der Informationen in den Informationsrahmen als Synchronisationsinformationen, Übertragen des
Informationsrahmens vom ersten und zweiten Netz, Lesen von Informationen,
die die Anzahl gezählter
Taktimpulse des Takts des zweiten Netzes beim Auftreten des Referenzereignisses
darstellen, Lesen von in den vom ersten Netz empfangenen Informationsrahmen
eingefügten
Synchronisationsinformationen, Berechnen einer Differenz zwischen
Informationen und Synchronisieren des zweiten Netzes durchgeführt.
-
Insbesondere
ist der Moment des Auftretens des Referenzereignisses auf die durch
den Empfangsknoten B empfangenen Daten bezogen, die vom Knoten A
gesendet werden, wobei dieser Moment auch Referenzmoment genannt
wird.
-
In
der vorstehend angeführten
Patentanmeldung wird ein Verfahren zur Bestimmung dieses Referenzmoments
vorgeschlagen, das auf einem Verfahren einer Autokorrelation beruht,
die bei einer bekannten Datensequenz ausgeführt wird, die zu Beginn eines
Datenrahmens hinzugefügt
ist, um den Beginn dieses Datenrahmens zu erfassen. Ein derartiges
Autokorrelationsverfahren ist allerdings störanfällig.
-
In
der US-A-5,444,697 sowie im Artikel von Warner WD et al. mit dem
Titel „OFDM/FM
Frame Synchronisation for mobile radio data communication", IEEE Transactions
on vehicular technology, US, IEEE Inc. New York, Band 42, Nummer
3, 1. August 1993 (1993-08-01), Seiten 302-313 ist ein Verfahren zum
Synchronisieren jedes OFDM-Datenrahmens unabhängig von den anderen Datenrahmen,
Erzeugen einer Referenz aus einem Datenrahmen offenbart, um die
OFDM-Symbole genau
zu dekodieren.
-
In
der US-A-5,128,971 sind ein Verfahren und eine Vorrichtung zum Synchronisieren
eines Empfängeroszillators
mit einem Senderoszillator über
die Verwendung bestimmter Synchronisationssignale, das heißt, eines
Startsynchronisationssignals und eines Stoppsynchronisationssignals
offenbart.
-
In
der EP-A-0 722 233 ist auch ein Verfahren zum Synchronisieren von
Knoten in einem Netz offenbart, wobei bestimmte Pakete, „Zeitpunktpakete", verwendet werden,
sowie Synchronisationsnachrichten: Synchronisationsnachrichten mit
einer Erfassungszeit von „Zeitpunktpaketen" werden von einem Senderknoten
zu einem Empfängerknoten
gesendet, wobei Zeitunterschiede berechnet werden und der Takt des
Empfängerknotens
entsprechend angepasst wird.
-
Allerdings
erscheint keines der vorstehend angeführten Verfahren zufrieden stellend.
-
Ziel
der Erfindung ist die Beseitigung dieses Problems durch ein Verfahren
der Erzeugung eines Referenzereignisses in einem Empfangsknoten,
der Informationsrahmen empfängt,
wie es in Anspruch 1 definiert ist.
-
Entsprechend
schlägt
die Erfindung eine Vorrichtung zur Erzeugung eines Referenzereignisses
in einem Empfangsknoten, der Informationsrahmen empfängt, gemäß Patentanspruch
16 vor.
-
Auf
diese Weise haben verloren gegangene oder stark beschädigte Daten
in der Präambel
keinen Einfluss auf die Erzeugung eines Referenzereignisses, wodurch
dieses Referenzereignis genau ist.
-
Gemäß einem
bevorzugten Ausführungsbeispiel
umfasst das Verfahren ferner einen Schritt der Erzeugung eines Referenzereignisses
mit den weiteren Schritten:
Addieren der Anzahl überwachter
verarbeiteter Abtastdaten zu einem vorbestimmten Wert,
Erzeugen
eines Referenzereignisses, wenn der gezählte Abtasttakt gleich dem
Ergebnis des Additionsschritts ist.
-
Entsprechend
schlägt
die Erfindung eine Vorrichtung vor, die ferner eine Zähleinrichtung
zum Zählen
eines Abtasttakts umfasst, und wenn einmal ein bestimmtes Datum
erfasst ist, die Einrichtung zur Erzeugung eines Referenzereignisses
ferner umfasst
eine Additionseinrichtung zum Addieren der Anzahl überwachter
verarbeiteter Abtastdaten zu einem vorbestimmten Wert,
eine
Erzeugungseinrichtung für
ein Referenzereignis, wenn der gezählte Abtasttakt gleich dem
Ergebnis der Additonseinrichtung ist.
-
Auf
diese Weise hat eine lange Verarbeitungszeit zur Erfassung eines
bestimmten Datums keinen Einfluss auf die Genauigkeit des Moments
der Erzeugung des Referenzereignisses. Dieses Referenzereignis wird
so schnell als möglich
erzeugt, wodurch die Größe des verwendeten
Puffers verringert wird.
-
Die
Erfindung schlägt
auch ein Verfahren einer Synchronisation zwischen Kommunikationsnetzen
vor, die Informationen anhand von Informationsrahmen austauschen,
wobei jedes Kommunikationsnetz einen Takt aufweist, und die Anzahl
der Taktimpulse durch einen Zähler überwacht
wird, wobei das Verfahren die folgenden Schritte umfasst
Lesen
von die gezählten
Taktimpulse des Takts des ersten Netzes darstellenden Informationen
beim Auftreten eines Referenzereignisses,
Einfügen zumindest
der Informationen oder berechneter Informationen auf der Grundlage
der Informationen in den Informationsrahmen als Synchronisationsinformationen,
Übertragen
des Informationsrahmens vom ersten zum zweiten Netz,
Abtasten
des empfangenen Informationsrahmens zum Bilden von Abtastdaten,
Verarbeiten
der Abtastdaten zur Erfassung eines bestimmten Datums unter den
Abtastdaten,
Überwachen
der Anzahl verarbeiteter Abtastdaten, bis zur Erfassung eines bestimmten
Datums,
Erzeugen eines Referenzereignisses gemäß dem Ergebnis
der Überwachungsschritte,
Lesen
von die Anzahl gezählter
Taktimpulse des Takts des zweiten Netzes darstellenden Informationen
beim Auftreten des Referenzereignisses,
Lesen von in einen
empfangenen Informationsrahmen vom ersten Netz eingefügten Synchronisationsinformationen,
Berechnen
eines Unterschieds zwischen Informationen,
Synchronisieren
des zweiten Netzes.
-
Entsprechend
schlägt
die Erfindung ein System einer Synchronisation zwischen Kommunikationsnetzen
vor, die Informationen anhand von Informationsrahmen austauschen,
wobei jedes Kommunikationsnetz einen Takt aufweist, und die Anzahl
von Taktimpulsen durch einen Zähler
beobachtet werden, wobei das System umfasst
eine Leseeinrichtung
zum Lesen von die gezählten Taktimpulse
des Takts des ersten Netzes darstellenden Informationen beim Auftreten
eines Referenzereignisses,
eine Einfügeeinrichtung zum Einfügen zumindest
der Informationen oder berechneter Informationen auf der Grundlage
der Informationen in den Informationsrahmen als Synchronisationsinformationen,
eine Übertragungseinrichtung
zum Übertragen
des Informationsrahmens vom ersten zum zweiten Netz,
eine Abtasteinrichtung
zum Abtasten des empfangenen Informationsrahmens zum Bilden von
Abtastdaten,
eine Verarbeitungseinrichtung zur Verarbeitung
von Abtastdaten zum Erfassen eines bestimmten Datums unter den Abtastdaten,
eine Überwachungseinrichtung
zum Überwachen
der Anzahl verarbeiteter Abtastdaten bis zur Erfassung eines bestimmten
Datums,
eine Erzeugungseinrichtung zur Erzeugung eines Referenzereignisses
entsprechend dem Ergebnis der Überwachungseinrichtung,
eine
Leseeinrichtung zum Lesen von die Anzahl gezählter Taktimpulse des Takts
des zweiten Netzes darstellenden Informationen beim Auftreten eines Referenzereignisses,
Lesen
von in einen empfangenen Informationsrahmen vom ersten Netz eingefügten Synchronisationsinformationen,
eine
Berechnungseinrichtung zur Berechnung eines Unterschieds zwischen
gelesenen Informationen,
eine Synchronisationseinrichtung zum
Synchronisieren des zweiten Netzes.
-
Auf
diese Weise gehen keine Pakete zwischen den zwei Netzen verloren,
was wichtig für
den Transfer bestimmter Daten ist, und es ist kein großer Speicher
zur Pufferung von Daten erforderlich, wenn Netze nicht synchronisiert
sind. Durch Heranziehen der Anzahl gezählter Taktimpulse von zwei
Netzen kann ein Netz leicht auf das andere synchronisiert werden.
Das Referenzereignis erlaubt das Verfolgen des Moments, wann diese
Zahlen erhalten wurden, wodurch ein Problem vermieden wird, das
durch eine Verzögerung
durch Übertragung
und Verarbeitungszeit erzeugt wird. Eine Differenzberechnung ist
auch ein einfacher Weg zur Bewertung einer Nicht-Synchronisation
zwischen zwei Netzen. Das Einfügen von
Synchronisationsinformationen in Datenrahmen erfordert keine Erzeugung
bestimmter Synchronisationssignale im Netz und vereinfacht die Konfiguration verbundener
Netze. Die vorstehend angeführte
Verarbeitungszeit, die die Zeit zum Wiederherstellen der Synchronisationsinformationen
im Datenrahmen darstellt, hat keine Auswirkung auf die Genauigkeit
der Synchronisation der Netze.
-
Die
Erfindung bezieht sich auch auf ein Programm, das auf einem Speichermedium
in einer Vorrichtung zur Erzeugung eines Referenzereignisses in einem
Empfangsknoten gespeichert ist, der Informationsrahmen empfängt, wobei
das Programm umfasst
Kode zum Abtasten des Informationsrahmens
zum Bilden von Abtastdaten,
Kode zur Verarbeitung von Abtastdaten
zur Erfassung eines bestimmten Datums unter den Abtastdaten,
Kode
zur Überwachung
der Anzahl verarbeiteter Abtastdaten bis zur Erfassung eines bestimmten
Datums,
Kode zur Erzeugung eines Referenzereignisses entsprechend
dem Ergebnis des Überwachungskodes.
-
Die
Erfindung bezieht sich auch auf eine Vorrichtung zur Erzeugung eines
Referenzereignisses in einem Empfangsknoten, der Informationsrahmen empfängt, wobei
die Vorrichtung umfasst einen Prozessor zur Abtastung des Informationsrahmens
zur Bildung von Abtastdaten, Verarbeitung von Abtastdaten zur Erfassung
eines bestimmten Datums unter den Abtastdaten, Überwachung der Anzahl verarbeiteter
Abtastdaten bis zur Erfassung eines bestimmten Datums und Erzeugung
eines Referenzereignisses entsprechend dem Ergebnis der Überwachungsvorgänge.
-
Die
Erfindung bezieht sich ferner auf eine Informationsspeichereinrichtung
mit Anweisungen eines Computerprogramms, die von einem Computer oder
Prozessor lesbar ist und möglicherweise
insgesamt oder teilsweise entfernbar ist, dadurch gekennzeichnet,
dass sie die Implementierung des Verfahrens wie vorstehend kurz
beschrieben ermöglicht.
-
Die
Erfindung bezieht sich auch auf eine von einem Computer oder einem
Prozessor lesbare Informationsspeichereinrichtung, die Daten enthält, die sich
aus der Implementierung des Verfahrens wie vorstehend kurz beschrieben
ergeben.
-
Die
Erfindung bezieht sich auch auf ein Computerprogrammprodukt, das
in eine programmierbare Verarbeitungseinrichtung geladen werden
kann, das Softwarekodeabschnitte zur Durchführung der Schritte des Verfahrens
wie vorstehend kurz beschrieben umfasst, wenn das Computerprogrammprodukt
auf einer programmierbaren Einrichtung läuft.
-
Die
Erfindung bezieht sich auch auf eine Schnittstelle zum Empfangen
der Anweisungen eines Computerprogramms, dadurch gekennzeichnet, dass
sie die Implementierung des Verfahrens wie vorstehend kurz beschrieben
ermöglicht.
-
Weitere
Merkmale und Vorteile ergeben sich aus der folgenden Beschreibung
anhand eines nicht einschränkenden
Ausführungsbeispiels
unter Bezugnahme auf die beiliegende Zeichnung. Es zeigen:
-
1 eine
Darstellung eines Kommunikationsnetzes gemäß einem ersten Ausführungsbeispiel der
Erfindung, wobei eine Funkbrücke 13 aus
Knoten A und B angewendet wird,
-
2a den
Algorithmus des Synchronisationsüberprüfungsverfahrens
gemäß einem
ersten Ausführungsbeispiel
der Erfindung, das im Knoten A in 1 implementiert
ist,
-
2b einen
Algorithmus für
das Synchronisationsüberprüfungsverfahren
gemäß einem
ersten Ausführungsbeispiel
der Erfindung, das im Knoten B in 1 implementiert
ist,
-
3 eine
schematische Darstellung des im ersten Ausführungsbeispiel der Erfindung
implementierten Prinzips,
-
4 eine
schematische Darstellung der verschiedenen, zur Synchronisation
eines Taktsignals H2 hinsichtlich eines Taktsignals H1 verwendeten
Funktionsblöcke,
-
5 eine
allgemeine schematische Darstellung eines Kommunikationsnetzes gemäß einem zweiten
Ausführungsbeispiel
der Erfindung, wobei eine Funkbrücke 92 aus
Knoten A und B verwendet wird,
-
6a einen
Algorithmus des Synchronisationsüberprüfungsverfahrens
gemäß einem
zweiten Ausführungsbeispiel
der Erfindung, das im Knoten A in 5 implementiert
ist,
-
6b einen
Algorithmus des Synchronisationsüberprüfungsverfahrens
gemäß einem
zweiten Ausführungsbeispiel
der Erfindung, das im Knoten B in 5 implementiert
ist,
-
7 eine
Tabelle der verschiedenen Referenzzeiten bei den Knoten A und B
in 5 und der entsprechenden Referenzperiode,
-
8 eine
ausführliche
schematische Darstellung des in den 1 und 5 gezeigten
Modems 46,
-
9 eine
ausführliche
schematische Darstellung einer Einrichtung zur Bestimmung eines
Referenzmoments gemäß 8,
-
10 ein
Ablaufdiagramm des von der Einrichtung in 9 verwendeten
Algorithmus zum Realisieren der Erfindung,
-
11a, 11b, 11c erfindungsgemäße Zeitablaufdiagramme,
-
12a und 12b ein
zweites erfindungsgemäßes Ausführungsbeispiel.
-
Die
Erfindung ist insbesondere in Netzen mit seriellen Kommunikationsbussen
entsprechend dem IEEE 1394-Standard von Vorteil.
-
Die
Erfindung ermöglicht
insbesondere die Verbindung von zwei seriellen Kommunikationsbussen
entsprechend dem IEEE 1394-Standard über eine Funkbrücke.
-
IEEE
1394 definiert eine sehr schnelle serielle Verbindung, die eine
Verbindung einer Einrichtung mit einem Bus entsprechend diesem Standard
ermöglicht,
um asynchronen und isochronen Verkehr auf dem Bus zu führen.
-
Die Übertragung
von isochronem Verkehr auf einem seriellen 1394-Kommunikationsbus
beruht auf einem Netztakt von 8 kHz, der Zyklen mit einer Dauer
von 125 μs
definiert.
-
Jeder
Knoten bzw. jede Station verwendet einen internen Takt zur Erzeugung
dieser Zyklen, und kann Daten über
den Bus während
des Zyklus übertragen.
Unter allen mit den Bus verbundenen Knoten wird einer von diesen
als Referenz für
alle anderen betrachtet, und wird als „Zyklusmaster" bezeichnet.
-
Dieser
Knoten oder diese Station, die CM genannt wird, synchronisiert alle
Takte der anderen Knoten oder Stationen hinsichtlich seines eigenen Takts.
-
In
einem Kommunikationsnetz aus zwei oder mehr seriellen Kommunikationsbussen
entsprechend IEEE 1394 wird einer der Knoten oder Stationen CM unter
allen diesen Bussen als Referenz für das gesamte Netz ausgewählt, wenn
mehrere Busse mittels Brücken
verbunden sind.
-
Das
heißt,
dass der Takt des Referenzknotens oder Station, der „Netzzyklusmaster" genannt wird, einen
Referenztakt für
das gesamte Netz erzeugt, wobei die Takte der Knoten oder Stationen
CM der anderen Busse im Netz sich selbst hinsichtlich des Takts
des Netzzyklusmasters synchronisieren müssen.
-
Zum
besseren Verständnis
der Erfindung wird lediglich die Verbindung von zwei seriellen Kommunikationsbussen
entsprechend IEEE 1394 betrachtet, die in 1 mit 10 und 12 bezeichnet
sind. Eine derartige Verbindung wird durch zwei Knoten oder Stationen
A und B hergestellt, die miteinander durch eine Funkverbindung verbunden
sind.
-
Die
Knoten A und B können
weit voneinander entfernt sein. Es kann sich bei ihnen um zwei verschiedene
Datenverarbeitungsgeräte
aus den folgenden Geräten
handeln: Drucker, Server, Computer, Faxgerät, Scanner, Videorecorder,
Dekoder (oder Digitalempfänger),
Fernsehempfänger,
Telefon, Audio/Videoplayer, Camcorder, Digitalkamera oder digitaler
Fotoapparat.
-
Diese
zwei Knoten oder Stationen bilden, was Funkbrücke genannt wird, und mit dem
Bezugszeichen 13 bezeichnet ist, und verbinden die zwei Busse,
die einen Teil eines Kommunikationsnetzes gemäß der Erfindung bilden, und
mit 11 bezeichnet sind.
-
Die
Brücke 13 stellt
eine Schnittstelle zwischen den Bussen 10 und 12 bereit.
-
Die
Knoten A und B können
als Alternative über
eine optische Verbindung, Kabelverbindung, usw. miteinander verbunden
sein. Bei dem ersten Ausführungsbeispiel
der Erfindung sind die Knoten und Stationen A und B die Zyklusmaster
der jeweiligen Busse 10 und 12.
-
Auch
eine der Vorrichtungen 70 oder 74, die jeweils
mit ihren jeweiligen Bussen 10 und 12 verbunden
sind, könnten
die Zyklusmaster der jeweiligen Busse 10 und 12 sein.
-
In
diesem Beispiel ist der mit 10 bezeichnete Bus der „Master-Bus", während der
mit 12 bezeichnete Bus der „Slave-Bus" ist.
-
Ein
interner Oszillator oder Takt, der mit CLK1 bezeichnet ist, erzeugt
ein mit H1 bezeichnetes Taktsignal am Master-Bus, und ein interner
Oszillator oder Takt CLK2 erzeugt am Slave-Bus ein Taktsignal H2.
-
Jeder
interne Oszillator bzw. jedes interne Taktsystem kann eine Frequenz
gleich 24,576 MHz mit einer Toleranz von 100 ppm liefern.
-
In 1 ist
der als Funksender betrachtete Knoten A mit dem seriellen Kommunikationsbus 10 durch
Verbindungseinrichtungen 14 verbunden.
-
Der
als Funkempfänger
betrachtete Knoten B ist mit dem seriellen Kommunikationsbus 12 durch Verbindungseinrichtungen 16 verbunden.
-
Der
Knoten A weist eine physikalische 1394-Stationenschaltung 18 sowie
eine Schaltung auf, die die Funktionen der 1394-Verbindungsschicht 20 erfüllt.
-
Diese
Schaltungen umfassen beispielsweise eine Komponente PHY TSB21LV03A
und eine Komponente LINK TSB12LV01R von Texas Instruments.
-
Der
Knoten A weist auch eine Berechnungseinheit 22, eine temporäre Speichereinrichtung
vom RAM-Typ 24 mit mehreren Registern 24a bis 24c und eine
Permanentspeichereinrichtung 26 auf.
-
Wie
in 1 gezeigt umfasst der Knoten A ein Funkmodem 28,
das mit einer Funkeinheit 30 verbunden ist, die eine Funkantenne 32 aufweist.
-
Ein
lokaler Bus 34 ist mit den verschiedenen Elementen des
Knotens A verbunden.
-
Auf ähnliche
Weise wie für
den Knoten A beschrieben weist der Knoten B eine physikalische 1394-Schnittstellenschaltung 38,
eine Schaltung, die die Funktionen der physikalischen 1394-Schicht 38 erfüllt, eine
Berechnungseinheit CPU 40, eine temporäre Speichereinrichtung vom
RAM-Typ 42 mit mehreren Registern 42a bis 42e,
eine Permanentspeichereinrichtung 44 mit einem Register 44a und
das das Verfahren der Synchronisation von zwei Netzen implementierende
Programm auf. Der Knoten B umfasst auch ein Funkmodem 46,
das mit einer Funkeinheit 48 verbunden ist, das eine Funkantenne 50 aufweist.
-
Ein
lokaler Bus 52 verbindet all diese Elemente.
-
Wie
in 1 gezeigt, arbeitet jede physikalische Schnittstellenschaltung 18 für den Knoten
A und 36 für
den B mit einem Takt oder internen Oszillator CLK1 für den Knoten
A und CLK2 für
den Knoten B.
-
Die 2a und 2b beschreiben
jeweils die verschiedenen Schritte des Verfahrens gemäß dem ersten
Ausführungsbeispiel
der Erfindung, die jeweils im Sendeknoten A und Empfängerknoten
B implementiert sind. Diese Figuren zeigen verschiedene Anweisungen
eines Computerprogramms, das für den
Algorithmus in 2a in der Speichereinrichtung 26 des
Knotens A und für
den Algorithmus in 2b in der Speichereinrichtung 44 des
Knotens B gespeichert sind.
-
Das
Synchronisationsverfahren gemäß dem ersten
Ausführungsbeispiel
der Erfindung wird nachstehend anhand der 1, 2a und 2b beschrieben.
-
Dieses
Verfahren beruht auf der Bestimmung eines Referenzmoments zur Erzeugung
eines Referenzereignisses anhand eines empfangenen Informationsrahmens
an einem Empfangsknoten, was nachstehend unter Bezugnahme auf die 8 bis 10 beschrieben
wird.
-
Im
Knoten und insbesondere in der Schaltung 18 in 1 wird
ein Zähler
kontinuierlich mit dem internen Oszillator oder Takt CLK1 inkrementiert.
-
Die
Größe dieses
Zählers
beträgt
K Bits und seine Periode ist daher 2K.
-
Die
vorliegende Erfindung verwendet das Konzept des Referenzmoments
und des Referenzereignisses, wobei der Referenzmoment das Auftreten eines
Referenzereignisses an einem der Knoten A und B identifiziert. Das
betrachtete Referenzereignis ist beispielsweise der Beginn eines
zwischen den Knoten A und B gesendeten Datenrahmens, und der Referenzmoment
entspricht der Zeit, wann dieser Rahmen beginnt.
-
Genauer
gesagt markiert der Referenzmoment am Knoten A die Zeit des Beginns
der Sendung des Datenrahmens, während
der Referenzmoment des Knotens B die Zeit der Erzeugung eines Referenzereignisses
durch das Modem beruhend auf dem Empfang dieses selben Datenrahmens
markiert.
-
Die
Bestimmung eines Referenzmoments im Sender kann einfach realisiert
werden, da der Sender selbst die Erzeugung des Informationsrahmens
verwaltet.
-
Für den Empfänger ist
die Bestimmung eines Referenzmoments komplizierter, und wird nachstehend
unter Bezugnahme auf die 8 bis 10 beschrieben.
-
Allerdings
kann der Referenzmoment für
den Sender und den Empfänger
unterschiedlich sein. Der Beginn des Datenrahmens kann ein Referenzereignis
für den
Sender sein, und das Referenzereignis kann für den Empfänger der Beginn des Datenrahmens
verzögert
um eine bestimmte Zeit sein. Die Beschreibung der Bestimmung des
Referenzereignisses und der Erzeugung einer Referenzzeit wird nachstehend
anhand der 8 bis 10 beschrieben.
-
Sind
die Takte CLK1 und CLK2 synchronisiert (selbe Frequenz), stellen
die Inhalte der Zähler, die
die zwei Referenzmomente bestimmen, eine Verschiebung dar, die über die
Zeit konstant bleibt.
-
Sind
andererseits die Takte nicht synchron, ist die Verschiebung zwischen
den Inhalten der vorstehend angeführten Zähler nicht länger konstant, und
die Erfindung beruht auf einer Schwankung dieser Verschiebung zum
Messen der Abweichung zwischen den Takten CLK1 und CLK2.
-
Natürlich kann
der Referenzmoment einem anderen Ereignis entsprechen, auf das sich
der Sender und der Empfänger
synchronisieren müssen.
-
Das
Auftreten der Referenzereignisse ist nicht unbedingt periodisch.
-
Zur
Erfassung des Beginns eines Datenrahmens verwenden die Funkmodems
jedes Knotens sowohl im Knoten A als auch im Knoten B, die jeweils mit 28 und 46 bezeichnet
sind, geeignete Synchronisationssequenzen. Beispielsweise ist eine
dem Sender und dem Empfänger
bekannte Sequenz an den Beginn jedes Rahmens hinzugefügt. Wird
der Beginn eines Rahmens an jedem Knoten erfasst, wird ein Signal 62 (Knoten
A), 64 (Knoten B) zur Berechnungseinheit CPU 22 (Knoten
A), 40 (Knoten B) gesendet, wobei dieses Signal einen Referenzmoment
angibt (1).
-
Jedes
Mal dann, wenn ein Referenzmoment beispielsweise am Knoten A bestimmt
wird (Schritt S1), wobei der Referenzmoment
mit tA bezeichnet ist, wird der Inhalt des Zählers in einem Register 24a der temporären Speichereinrichtung 24 gemäß 1 gesichert.
-
Der
vorstehend angeführte
Inhalt dieses Registers 24a wird in ein zweites Register 24b der
Speichereinrichtung 24 transferiert (Schritt S3).
-
Die
zwei Register ermöglichen
somit die Sicherung des Werts des Zählers zu den letzten zwei Referenzmomenten,
die beispielsweise mit tA und tA' bezeichnet
sind, die beide der Zeit des Beginns der Übertragung von zwei aufeinanderfolgenden
Datenrahmen entsprechen.
-
An
jedem Referenzmoment wird ein Wert, der den Referenzmoment darstellt,
in einem der Register 24a, 24b der temporären Speichereinrichtung 24 in 1 gespeichert.
-
Jeder
in den Registern 24a und 24b gespeicherte Referenzwert
entspricht beispielsweise einer Anzahl von Taktimpulsen, die durch
den Takt CLK1 erzeugt werden, berechnet durch modulo 2K.
-
Alle
Operationen (Addition, Subtraktion, Zählen) werden modulo 2 hoch
der Größe der entsprechenden
Register oder Zähler
durchgeführt.
Außerdem
wird angenommen, dass das Ergebnis der Subtraktion ein Vorzeichenbit
enthält.
-
Nach
der Übertragung
des Inhalts des Registers 24a in das Register 24b (Schritt
S3) und des Inhalts des Zählers in
das Register 24a (Schritt S4) wird die
Differenz zwischen den in diesen zwei Registern gespeicherten Referenzwerten
durch die CPU 22 berechnet (Schritt S5).
Diese Differenz entspricht einem ersten Informationselement, das
einen abgelaufenen Zeitabschnitt am Knoten A zwischen den Referenzmomenten
tA und tA' darstellt.
-
Dieses
erste Informationselement wird im Register 24c in 1 gespeichert.
Dieses Register enthält
daher die Dauer einer in Anzahlen von Impulsen des Takts oder internen
Oszillators CLK1 gezählten
Referenzperiode.
-
Das
erste Informationselement, das die zwischen zwei Referenzmomenten
tA und tA' vergangene
Zeit darstellt und im Register 24c gespeichert ist, wird
vom Knoten A (Sender) zum Knoten B (Empfänger) unter Verwendung des
Datenrahmens gesendet, wie er im Referenzmoment tA' gesendet wird (Schritt S6).
-
Der
Sendeschritt wird durch die Funkeinrichtung mit den Elementen 28, 30 und 32 des
Knotens A durchgeführt,
während
der Empfangsschritt am Knoten B die Elemente 46, 48 und 50 des
Knotens B verwendet.
-
Auf ähnliche
Weise wie für
den Knoten A (den Sender) beschrieben wird dann ein zweites Informationselement
am Knoten B (dem Empfänger) berechnet,
das eine zwischen zwei Referenzmomenten tB und tB' abgelaufene Zeit
darstellt.
-
Diese
zwei Referenzmomente tB und tB' entsprechen
dem Referenzmoment der Erzeugung eines Referenzereignisses beruhend
auf dem Beginn des durch den Knoten A gesendeten Datenrahmens, für das die
Referenzmomente tA und tA' am
Knoten A bestimmt wurden.
-
In
der im Knoten B enthaltenen Einrichtung 36 wird ein Zähler kontinuierlich
mit dem internen Oszillator oder Takt CLK2 inkrementiert.
-
Die
Größe dieses
Zählers
beträgt
K Bits und seine Periode ist daher gleich 2K.
-
Bei
jeder Bestimmung eines Referenzmoments tB oder tB' (Schritt T2, 2b) wie
vorstehend angegeben wird ein diesen Referenzmoment darstellender
Referenzwert im Register 42a der temporären Speichereinrichtung 42 in 1 gespeichert.
-
Somit
wird der dem Referenzmoment tB entsprechende Referenzwert im Register 42a gespeichert
und dann in das Register 42b transferiert (Schritt T3), wenn der zweite Referenzmoment tB' bestimmt wird (Schritt
T2), und wenn der entsprechende Referenzwert
vom Zähler
der Einrichtung 36 in das Register 42a übertragen
wird (Schritt T4).
-
Das
zweite Informationselement, das die zwischen den zwei Referenzmomenten
tB und tB' abgelaufene
Zeit darstellt, wird durch die CPU 40 berechnet (Schritt
T5), und die Differenz, die zwischen den
zwei in den Registern 42a und 42b gespeicherten
Referenzwerten, die die zwei Referenzmomente tB und tB' identifizieren,
gebildet ist, wird dann in einem Register 42c der Permanentspeichereinrichtung 42 in 1 gespeichert.
-
Jeder
in einem vorhergehenden Register enthaltene Referenzwert entspricht
einer Anzahl sogenannter Taktimpulse, die durch den Takt oder internen
Oszillator CLK2 des Knotens B emittiert werden.
-
Das
Referenzereignis, das mit einem durch den Knoten B (Empfänger) empfangenen
Datenrahmen verbunden ist, entspricht an diesem Knoten einem Signal,
das durch das Modem beruhend auf dem Beginn des Empfangs des Datenrahmens
erzeugt wird.
-
Das
erste im Register 24c gespeicherte Informationselement
wird durch den Knoten B empfangen (Schritt T6).
-
Werden
andererseits keine Informationen durch den Knoten B empfangen, trifft
das erfindungsgemäße Verfahren
eine Vorbereitung zum nochmaligen Starten des Wartens auf einen
Empfang von Informationen, die vom Knoten A mit einem Datenrahmen
gesendet werden.
-
Ein
Vergleich zwischen dem ersten und zweiten Informationselement wird
durch die CPU 40 in Schritt T7 durchgeführt.
-
Ist
die Anzahl der Taktpulse N, ergeben sich das erste und das zweite
Informationselement jeweils zu N(tA') – N(tA)
und N(tB') – N(tB).
-
Jede
Differenz, die zwischen diesen zwei Werten erfasst werden kann,
stellt die Anzahl der Abweichungstaktimpulse zwischen den Oszillatoren oder
Takten CLK1 oder CLK2 während
der betrachteten Referenzperiode dar.
-
Mit
dem Wissen um die Abweichung zwischen den Takten CLK1 und CLK2 während der
Referenzperiode ist es somit möglich,
die Frequenz des Signals H2 zum Synchronisieren von H2 mit H1 zu korrigieren.
-
Wird
eine Differenz zwischen diesem ersten und zweiten Informationselement
erfasst, wird das erhaltene Ergebnis (die Abweichung) zum Inhalt
eines Registers 42d der temporären Speichereinrichtung 42 in 1 hinzugefügt (Schritt
T8).
-
Dieses
Register 42d enthält
die Gesamtheit der verschiedenen Abweichungen, die während aller Referenzperioden
gemessen werden, die berücksichtigt
wurden.
-
Wie
in 3 gezeigt zeigen zwei Achsen jeweils für den Knoten
A und für
den Knoten B die Referenzmomente an, die den zwei vom Knoten A zum Knoten
B gesendeten Datenrahmen entsprechen und mit Pfeilen 1 und 2 in
der Figur angegeben sind.
-
Somit
ist das erste Informationselement am Knoten A, das die zwischen
den ersten zwei Referenzmomenten tA und tA' abgelaufene Zeit darstellt, mit den
Buchstaben tA bezeichnet, während
das zweite Informationselement am Knoten B, das die zwischen den
anderen zwei Referenzmomenten tB und tB' abgelaufene Zeit darstellt, mit den
Buchstaben tB bezeichnet ist.
-
Als
Variante wäre
es auch möglich,
den zweiten Wert tB vom Knoten B zum Knoten A anstelle der Übertragung
des ersten Werts tA vom Knoten A zum Knoten B zu senden.
-
In
diesem Fall bildet der Knoten B die Referenz (Master) für den Knoten
A (Slave).
-
Werden
zwei Informationselemente, die jeweils den Takt des betrachteten
Knotens darstellen, miteinander verglichen, wie es vorstehend beschrieben
ist, hängt
die Anzahl signifikanter Bits der Differenz zwischen diesen von
der Abweichung zwischen den zwei Takten und der Dauer der Referenzperiode ab.
-
Beispielsweise
werden zwei Oszillatoren betrachtet, deren Taktfrequenzen jeweils
24,576 MHz – 100
ppm und 24,576 MHz + 100 ppm sind, wobei eine Referenzperiode 1
ms ist, wobei die zwischen den zwei Referenzperioden erfasste Differenz
ungefähr
fünf Taktimpulse
ist, die unter Verwendung von drei Bits kodiert werden kann.
-
Die
Größe der Register
mit einem Byte, wobei 1 Bit für
das Vorzeichen reserviert ist, scheint daher eine ausreichende Wahl
zu sein.
-
Die
Größe der Register
betrifft die Register 24c, 42c und 42d in 1.
-
Die
Optimierung der Größe dieser
Register und insbesondere des Registers 42d ist wichtig, wenn
es die zur Übertragung
der Daten erforderliche Bandbreite über die Funkverbindung zwischen
den Knoten A und B definiert.
-
Ist
keine Abweichung zwischen den internen Takten CLK1 und CLK2 vorhanden,
sind das erste und das zweite Informationselement, die jeweils die zwischen
den zwei Referenzmomenten tA, tA' und tB,
tB' abgelaufene
Zeit darstellen, gleich.
-
Ist
aber eine Abweichung vorhanden und im Register 42d gespeichert,
ist eine Synchronisation erforderlich.
-
In
diesem Fall bildet das Taktsignal H1 die Referenz. Das Signal H2
kann natürlich
auch die Referenz bilden, hinsichtlich der das Taktsignal H1 korrigiert
werden würde.
-
Das
erfindungsgemäße Verfahren
trifft im Fall einer Korrektur für
eine Synchronisation Vorkehrungen zur Verkürzung oder Verlängerung
einer mehrerer Perioden des Taktsignals H2 um eine Periode gleich
der Anzahl der Taktimpulse, die im Register 42d vorhanden
sind, und die die Abweichung zwischen CLK1 und CLK2 darstellen.
-
Die
Verteilung der Korrektur über
mehrere Perioden kann vorgegeben sein, beispielsweise durch technische
Einschränkungen:
die Unmöglichkeit
der Korrektur von mehr als einem Taktimpuls pro Periode oder das
Erfordernis der Vermeidung einer abrupten Schwankung in einer gegebenen
Periode.
-
Vor
der Korrektur kann auch gewartet werden, beispielsweise um einen
Vorteil aus einer automatischen Kompensation auf bestimmten Bussen
im Netz gegenüber
den Änderungen
zu ziehen.
-
4 zeigt
eine schematische Darstellung der Korrektur des Taktsignals H2 hinsichtlich
des Taktsignals H1, wenn eine Abweichung zwischen den Takten oder
Oszillatoren CLK1 oder CLK2 erfasst wird.
-
Wie
in 4 gezeigt wird das erfindungsgemäß korrigierte
oder synchronisierte Taktsignal H2 anhand des Takts oder Oszillators
CLK2 unter Verwendung eines Zählers 80 in
der Einheit 36 erzeugt.
-
Die
Periode dieses Zählers
ist fest durch Laden eines Werts M' in einem Register 42 der temporären Speichereinrichtung 42 in 1.
-
Dieser
Wert M' ist eine
ganze Zahl, die dem Teilungsfaktor der Frequenz des Takts CLK2 entspricht,
um die Frequenz des korrigierten oder synchronisierten Taktssignals
H2 zu erhalten.
-
Des
Weiteren enthält
ein weiteres Register 82 den nominellen Teilungsfaktor
M zwischen den Frequenzen des Takts CLK2 und dem Taktsignal H2 vor
der Korrektur.
-
Außerdem enthält das Register 42d links
in 4 die totale Abweichung Δc zwischen
den Takten oder Oszillatoren CLK1 und CLK2.
-
Somit
wird die Periode des Zählers 80 mit der
Gesamtabweichung Δc, die vom Register 42d zugeführt wird,
mittels der folgenden Formel: M' =
M + Δc korrigiert.
-
Diese
Abweichung Δc kann ein positives oder negatives Vorzeichen
haben. Hat die Abweichung ein positives Vorzeichen, ist M' gleich M plus dem
Absolutwert von Δc. Die Periode des Zählers 80 wird dann erhöht, und
die Frequenz von H2 wird verringert.
-
Hat
die Abweichung ein negatives Vorzeichen, ist M' gleich M minus dem Absolutwert von Δc. Die
Periode des Zählers 80 wird
dann verringert und die Frequenz von H2 wird erhöht.
-
Für die gesamte
bei der Korrektur der Periode des Zählers zu berücksichtigende
Abweichung Δc ist es erforderlich, dass diese Abweichung
im Register 42d bis zum Ende der aktuellen Periode des
Zählers
gehalten wird. Das Register 42d muss dann während der
folgenden Periode und vor dem Ende der folgenden Periode auf null
rückgesetzt
werden, um eine zweimalige Korrektur derselben Abweichung zu vermeiden.
-
Muss
die Korrektur der Abweichung über mehrere
Perioden verteilt werden, ist ein Zwischenregister zum Aufnehmen
der für
jede Periode durchzuführenden
Korrektur erforderlich. Nach jeder Korrektur wird das Register 42d mit
der Gesamtabweichung entsprechend erniedrigt. Die Korrekturen werden
dann durchgeführt,
bis der Inhalt des Registers 42d aufgehoben ist.
-
5 zeigt
ein zweites Ausführungsbeispiel der
Erfindung.
-
In
dieser Figur haben gegenüber 1 nicht modifizierte
Elemente dasselbe Bezugszeichen.
-
Wie
in 5 gezeigt weist das erfindungsgemäße Kommunikationsnetz 90 eine
Funkbrücke 92 auf,
die mit den seriellen Kommunikationsbussen entsprechend IEEE 1394
10 und 12 verbunden ist, und die Funkbrücke wird als Schnittstelle
zwischen diesen verwendet.
-
Die
Brücke 92 hat
zwei Stationen oder Knoten A und B, die jeweils einen Funksender
(Knoten A) und einen Funkempfänger
(Knoten B) darstellen.
-
Diese
Knoten A und B unterscheiden sich von jenen in 1 in
ihren Permanent- und temporären
Speichereinrichtungen.
-
Der
Knoten A weist eine temporäre
Speichereinrichtung RAM 94 mit einem Register 94a und
eine Permanentspeichereinrichtung ROM 96 auf.
-
Die
Permanentspeichereinrichtung 96 enthält das Computerprogramm, dessen
verschiedene Anweisungen den Schritten des Verfahrens gemäß dem zweiten
Ausführungsbeispiel
entsprechen, und das im Sender (Knoten A) implementiert ist.
-
Der
diesem Computerprogramm entsprechende Algorithmus ist in 6a gezeigt.
-
Außerdem weist
der Knoten B eine temporäre
Speichereinrichtung 98 mit den Registern 98a bis 98e und
eine Permanentspeichereinrichtung ROM 100 mit einem Register 100a auf.
-
Die
Speichereinrichtung 100 enthält auch die verschiedenen Anweisungen
des Computerprogramms, die die Implementierung des Verfahrens gemäß dem zweiten
Ausführungsbeispiel
im Empfänger
(Knoten B) ermöglichen.
-
Der
diesem Computerprogramm entsprechende Algorithmus ist in 6b gezeigt.
-
Wie
vorstehend angeführt
weist jeder der Knoten A und B eine physikalische 1394-Schnittstellenschaltung,
eine die Funktionen der 1394-Verbindungsschicht erfüllende Schaltung,
eine Berechnungseinheit, ein Funkmodem, das mit einer Funkeinheit
verbunden ist, die mit einer Funkantenne ausgerüstet ist, und einen die verschiedenen
Elemente des Knotens verbindenden lokalen Bus auf.
-
Das
Verfahren gemäß einem
zweiten Ausführungsbeispiel
der Erfindung wird nachstehend anhand der 5, 6a bis 6b und 7 beschrieben.
-
Im
Knoten A in 5 wird ein in der physikalischen
1394-Schnittstelleneinheit 18 enthaltener Zähler kontinuierlich
mit dem internen Oszillator oder Takt CLK1 inkrementiert.
-
Die
Größe dieses
Zählers
beträgt
K Bits und seine Periode ist daher 2K.
-
Alles
zuvor hinsichtlich der 1 bis 4 beschriebene,
was die Referenzmomente, die Referenzereignisse und die Referenzwerte
betrifft, gilt auch für
dieses zweite Ausführungsbeispiel.
-
Die
Referenzmomente werden auf die gleiche Weise wie zuvor unter Bezugnahme
auf 1 beschrieben bestimmt.
-
Somit
wird während
Schritt U1 die Initialisierung der Variable i auf den Wert 0 durchgeführt.
-
Bei
jeder Bestimmung eines Referenzmoments am Knoten A (Schritt U2, 6a), wobei
der Referenzmoment mit tA bezeichnet ist, wird der Inhalt des Zählers in
der physikalischen Schnittstellenschaltung 18 im Register 94a der
temporären
Speichereinrichtung 94 gesichert.
-
Jedem
gegebenen Referenzmoment entspricht ein gegebener Referenzwert,
der den Referenzmoment darstellt, und beispielsweise gleich einer
Anzahl von Taktimpulsen N ist, die durch den Takt oder internen
Oszillator CLK1 emittiert werden.
-
Nach
der Speicherung des im Zähler
in der physikalischen Schnittstellenschaltung 18 enthaltenen
Referenzwerts im Register 94a (Schritt U3)
enthält
das Verfahren einen Schritt der Übertragung
eines Datenrahmens mit dem im Register gespeicherten Referenzwert
(Schritt U4).
-
Der
Referenzwert N(tA) wird mit dem Datenrahmen übertragen, dessen Übertragungsstart
dem Referenzmoment tA entspricht.
-
Entsprechend
Schritt U5 wird die Variable i um eine Einheit
inkrementiert, und der Sendeknoten A wartet dann auf einen neuen
Referenzmoment tA' (Schritt
U2).
-
Auf ähnliche
Weise wie unter Bezugnahme auf 1 beschrieben
wird der Sendeschritt durch die Funkausrüstung aus den Elementen 28, 30 und 32 des
Knotens A bewirkt, während
der Empfangsschritt am Knoten B die Elemente 46, 48 und 50 des Knotens
B verwendet.
-
Im
Knoten B wird ein Zähler
in der physikalischen Schnittstellenschaltung 36 kontinuierlich
mit dem Taktsignal H2 inkrementiert, das aus dem internen Oszillator
oder Takt CLK2 ausgegeben wird.
-
Die
Größe dieses
Zählers
beträgt
K Bits und seine Periode ist daher gleich 2K.
-
Nach
Schritt V1 der Initialisierung einer Variable
i auf 0 (6b) wird bei jeder Bestimmung
eines Referenzmoments (Schritt V2) und der
Erzeugung eines Referenzereignisses wie vorstehend beschrieben ein
dieses Referenzereignis darstellender Referenzwert im Register 98a der
temporären
Speichereinrichtung 98 in 5 gespeichert
(Schritt V3).
-
Das
im Empfänger
(Knoten B) implementierte erfindungsgemäße Verfahren trifft entsprechend V4 (6b) Vorkehrungen
für einen
Vorgang der Verifizierung des Empfangs des Inhalts des Registers 94a durch
den Knoten B.
-
Unter
der Annahme, dass der Knoten B den Inhalt dieses Registers 94a empfängt, wird
Schritt V4 von einem Schritt V5 gefolgt,
währenddessen
die Differenz Δ(i)
zwischen den Referenzwerten oder Anzahlen von Taktimpulsen in den
Registern 94a in 6a gebildet
wird.
-
Diese
Differenz bildet ein Informationselement, das die Differenz zwischen
den Referenzmomenten tA, was den Beginn der Übertragung des Rahmens i am
Knoten A identifiziert, und dem Referenzmoment tB darstellt, der
den Moment der Erzeugung eines Referenzereignisses beruhend auf
dem Beginn des Empfangs des Rahmens i am Knoten B identifiziert.
-
Diese
Informationen bilden ein Informationselement im Sinn der Erfindung.
-
Dieses
Informationselement stellt eine Verschiebung zwischen den Takten
CLK1 und CLK2 dar, die im Register 98b der temporären Speichereinrichtung 98 gespeichert
wird.
-
Wurde
zuvor keine Verschiebung berechnet, ist die Variable i gleich null
(Schritt V6) und diese Verschiebung bildet
eine Referenzverschiebung Δ(0), die
nachfolgend zum Zeitpunkt der Bestimmung der zur Synchronisation
der Takte untereinander erforderlichen Korrektur verwendet wird.
-
Entsprechend
Schritt V7 des Verfahrens (6b)
wird die Verschiebung Δ(0)
im Register 98c der temporären Speichereinrichtung 98 gespeichert.
-
Schritt
V7 wird dann von Schritt V8 gefolgt, währenddessen
die Variable i inkrementiert wird und der Empfangsknoten B auf ein
neues Referenzereignis entsprechend V2 wartet.
-
Handelt
es sich aber nicht um den Fall einer ersten berechneten Verschiebung
(i ist von null verschieden), wird die gerade berechnete Verschiebung Δ(i) mit der
Referenzverschiebung Δ(0)
verglichen (Schritt V9).
-
Gemäß diesem
Fall bildet die Differenz Δ(0) (N(tB) – N(tA))
ein erstes Informationselement im Sinn der Erfindung und die Differenz Δ(i) (N(tB (i)) – N(tA (i))) bildet ein
zweites Informationselement.
-
Die
Differenz zwischen dem ersten und dem zweiten Informationselement
(Δ(0) und Δ(i)) wird durch
die CPU 40 des Knotens B hergestellt und ermöglicht die
Erfassung einer beliebigen Abweichung zwischen den internen Oszillatoren
oder Takten CLK1 und CLK2.
-
Diese
Differenz zwischen dem ersten und dem zweiten Informationselement
führt die
Anzahl von Abweichungstaktimpulsen zwischen den internen Oszillatoren
oder Takten CLK1 und CLK2 zwischen den zwei Referenzmomenten zu.
-
Dieser
Wert der Abweichung wird dann zu dem im Register 98d der
temporären
Speichereinrichtung 98 enthaltenen Wert addiert (Schritt
V10). Dieses Register enthält die Gesamtheit
der Abweichungen, die zuvor zwischen den zwei Takten CLK1 und CLK2
gemessen wurden.
-
Der
Inhalt des Registers 98d stellt die Korrektur dar, die
bei dem Taktsignal H2 durchgeführt werden
muss, um es hinsichtlich des Taktsignals H1 zu synchronisieren.
-
Schritt
V10 folgt dann Schritt V8,
während
dessen die Variable i inkrementiert wird und der Empfänger (Knoten
B) entsprechend dem vorstehend beschriebenen auf einen neuen Referenzmoment
wartet (Schritt V2).
-
Zeigt
der in Schritt V4 ausgeführte Test, dass der Knoten
B den Inhalt des Registers 94a nicht empfangen hat, bedeutet
dies beispielsweise, dass der entsprechende Datenrahmen i verloren
gegangen ist oder nicht korrekt empfangen wurde.
-
In
diesem Fall wartet der Empfänger
(Knoten B) auf das folgende Referenzereignis (Schritt V11 und V12) zur Speicherung eines neuen Referenzwerts
im Zähler
in der physikalischen Schnittstellenschaltung 36, der dem
folgenden Referenzmoment entspricht (Schritt V3).
-
7 zeigt
eine Tabelle, die für
verschiedene Datenrahmen i, die vom Knoten A zum Knoten B gesendet
werden, mit i = 0, 1, ..., 7, ..., die verschiedenen Referenzmomente
tA, tB(tA (0), tB (0)), tA', tB' ..., tA (7), tB (7),
... und die hinsichtlich der gegebenen Referenzmomente betrachteten
Referenzperioden angibt.
-
Ein
Vorteil dieses zweiten Ausführungsbeispiels
der Erfindung besteht darin, dass der Verlust eines Datenrahmens,
oder die Tatsache, dass dieser nicht korrekt empfangene wurde, die
Erfassung der Abweichung zwischen den Takten CLK1 und CLK2 nicht
verhindert, wie es bei dem ersten Ausführungsbeispiel der Fall ist.
-
Dies
geschieht deshalb, da die Tabelle in 7 angibt,
dass die Referenzperioden für
Rahmen i = 0 und i = 1 zwischen den Referenzmomenten tA und
tA' (Knoten
A), tB und tB' (Knoten B), für Rahmen i
= 1 und i = 2 zwischen den Referenzmomenten tA' und tA'' (Knoten A) , tB' und tB'' (Knoten B) berücksichtigt werden.
-
Andererseits
wird der Referenzwert N(tA (3)), der
dem Referenzmoment tA (3) entspricht,
vom Knoten B nicht empfangen, wobei das entsprechende Feld des Rahmens
i = 4 beispielsweise von einem Übertragungsfehler
beeinflusst ist.
-
Um
dies zu korrigieren kann die berücksichtigte
Referenzperiode nicht diesen Referenzmoment sondern den folgenden
berücksichtigen:
tA (4).
-
Somit
ist die berücksichtige
Referenzperiode zwischen denn Zeiten tA'' und tA (4) (Knoten A) und zwischen den Zeiten tB'' und tB (4) (Knoten B) definiert.
-
In
diesem Fall sind die miteinander für diese Referenzperiode verglichenen
Informationselemente N(tB'') – N(tA'') und N(tB (4)) – N(tA (4)).
-
Dies
trägt zur
Erhöhung
der Referenzperiode zum Berücksichtigen
aller Abweichungen bei, die zwischen den Referenzmomenten tA'' und tA (4) aufgetreten sind.
-
So
wird die auf den Referenzmoment tA (3) bezogene Korrektur automatisch bei der
nächsten
Berechnung berücksichtigt,
selbst wenn der zu i = 4 gesendete Datenrahmen Fehler enthalten
hat.
-
Mittels
des zweiten Ausführungsbeispiels der
Erfindung gehen keine Informationen über die Abweichung zwischen
den Takten CLK1 und CLK2 verloren.
-
Geht
gemäß der Tabelle
in 7 der Referenzmoment tB (5) verloren, und kann der Knoten B die den
Referenzmomenten tA (5) und
tA (6) entsprechenden Referenzwerte
nicht dekodieren, wird die berücksichtige
Referenzperiode verlängert
und zwischen den Zeiten tA (4) und
tA (7) (Knoten A)
und tB (4) und tB (7) (Knoten B) definiert.
-
Als
Abwandlung kann die Tatsache der Übertragung eines ersten Informationselements
N(tA') – N(tA), das die Periode zwischen den Referenzmomenten
tA und tA' darstellt, nicht
wie in den 1 bis 4 angegeben
vom Knoten A zum Knoten B sondern allein der Referenzwerte N(tA) und N(tA') vom Knoten A zum
Knoten B durchgeführt
werden, was am Knoten B auch die Bestimmung der Informationen N(tA') – N(tA) am Knoten B und Vergleich dieser mit den
anderen Informationen, die auch am Knoten B bestimmt werden, N(tB') – N(tB) möglich,
um die selben Schlussfolgerungen wie in der Beschreibung des ersten
Ausführungsbeispiels
der Erfindung zu ziehen.
-
N(tB') – N(tA') – (N(tB) – N(tA)) ist gleich N(tB') – N(tB) – (N(tA') – N(tA)), was zeigt, dass die zwei Ausführungsbeispiele
zur gleichen Abweichungsberechnung führen.
-
Unter
Verwendung der in Tabelle von 7 enthaltenen
Ergebnisse, die somit auch am Knoten B verfügbar sind, können alle
möglichen
Berechnungen zwischen den in dieser Tabelle enthaltenen verschiedenen
Referenzwerten in Betracht gezogen werden.
-
Des
Weiteren ermöglicht
die Erfindung die Überprüfung der
Synchronisation zwischen den Takten der Knoten A und B selbst dann,
wenn die Datenrahmen eine variable Dauer haben.
-
Hinsichtlich
der Optimierung der Größe der verschiedenen
Register, insbesondere der Register 98a, 98b, 98d,
bleibt die Beschreibung des ersten Ausführungsbeispiels auch für dieses
zweite Ausführungsbeispiel
gültig.
-
Die
Optimierung der Größe dieser
Register und insbesondere des Registers 94a ist wichtig,
da es die Bandbreite definiert, die für die Funkübertragung erforderlich ist.
-
Die
Darstellung in 4 hinsichtlich des Korrekturverfahrens,
das bei dem Taktsignal H2 angewendet wird, um es hinsichtlich des
Taktsignals H1 zu synchronisieren, bleibt für das zweite Ausführungsbeispiel
gültig
und wird nicht noch einmal beschrieben.
-
Die
Erfindung ermöglicht
die Überprüfung der
Synchronisation mehrerer mit verschiedenen seriellen Verbindungsbussen
verbundenen Knoten hinsichtlich eines „Master-Knotens", wobei dieser zum Rundsenden
von Informationen zu den zu synchronisierenden Knoten eingerichtet
ist.
-
Dies
gilt insbesondere dann, wenn die Knoten miteinander über Funk
oder eine optische Verbindung kommunizieren.
-
In
einem erfindungsgemäßen Kommunikationsnetz
ist es möglich,
einen Netzknoten bereitzustellen, der ein allen Knoten gemeinsames
Referenzereignis erzeugen kann. Das Vorhandensein dieses Knotens
ermöglicht
die Verwendung der Erfindung, wenn die zu synchronisierenden zwei
Knoten selbst keine Referenzereignisse erzeugen können.
-
Unter
Bezugnahme auf die 8, 9, 10, 11a, 11b und 11c wird die Erzeugung des Referenzereignisses
zu einem Referenzmoment auf der Empfängerseite im Sinn der Erfindung
beschrieben, die sich auf den Empfang von vom Knoten A der 1 und 5 gesendeten
Daten bezieht.
-
8 zeigt
eine ausführliche
Darstellung des Modems 46 der 1 und 5 des
Empfangsknotens bzw. der Einrichtung des Empfangs B in 1.
Hinsichtlich 8 wird das Signal nach seiner Verstärkung, Filterung
und Frequenzübersetzung durch
die Funkeinheit 48 der 1 und 5 zum Digital-Analog-Wandler 301 übertragen.
Das Funksignal ist ein bekanntes OFDM-Signal, das OFDM-Symbole trägt. Ein
derartiges Signal beruht auf einer Verteilung des zu sendenden Signals
auf eine große
Anzahl von Trägern
parallel, die individuell mit niedriger Bitrate moduliert sind.
Da die Bitrate niedrig ist, ist die für jeden Träger erforderliche Bandbreite klein,
und somit ist es wahrscheinlicher, dass die Kennlinien von Amplitude
und Phase für
alle dieses Band bildenden Frequenzen identisch sind. Dieses Verfahren
ist unter dem Namen orthogonaler Frequenzmultiplex (Orthogonal Frequency
Division Multiplexing) bekannt. Tatsächlich überlappen die Spektren der
den Träger
modulierenden Signale derart, dass sie die Bedingung der Orthogonalität bestätigen, was
eine Beseitigung der Interferenzen zwischen modulierten Unterträgern und
den Erhalt einer viel größeren spektralen
Ausbeute ermöglicht.
-
Der
Abstand zwischen zwei angrenzenden Unterträgern entspricht dem Kehrwert
der Dauer eines Symbols.
-
Die
Modulation gemäß OFDM wird
allgemein als Fourier Transformation verstanden, so dass für ihre Implementierung
die Algorithmen der Fast Fourier Transformationen verwendet werden.
-
Nachstehend
werden die grundlegenden Schritte während der Ausgabe einer Nachricht
unter Verwendung einer OFDM-Modulation
beschrieben.
-
Zuerst
werden die binären
Daten der Nachricht zum Senden in Datenblöcken gruppiert. Jeder dieser
Blöcke
wird unabhängig übertragen
und bildet nach der Modulation im Basisband ein OFDM-Symbol.
-
Jeder
Datenblock gruppiert auch die binären Zeichen durch eine Untergruppe,
wobei jede Untergruppe auf bijektive Weise auf einen diskreten Satz von
Punkten im Fresnel-Raum
abgebildet wird, wobei jeder dieser Punkte eine mögliche Phase
und Amplitude darstellt. Wird beispielsweise eine Nachricht aus
der folgenden Bitsequenz berücksichtigt: {00001110010001111000...},
kann ein Block daraus aus 16 Bits 0000111001000111 extrahiert werden, dem
durch die Abbildung der folgende Satz an Punkten des komplexen Modells
zugewiesen wird: 1 + j, 1 + j, –1 – j, 1 – j, –1 + j,
1 + j, –1
+ j, 1 – j.
Somit gibt es einen Satz von acht komplexen Elementen, die einen Vektor
V definieren.
-
Dann
wird bei den so aus der ursprünglichen Nachricht
erhaltenen Vektoren V eine diskrete inverse Fast Fourier Transformation
der Matrix A durchgeführt,
was ein OFDM-Symbol
liefert, das aus einer Aufeinanderfolge komplexer Amplituden besteht.
-
Jedes
gesendete Symbol wird nach einem Durchlauf im Übertragungskanal von einem
Demodulator empfangen, aus dem ein Vektor V' mit komplexen Elementen durch Multiplikation
der dieses Symbol bildenden Amplituden mit einer diskreten direkten
Fourier Transformationsmatrix A' extrahiert wird,
wie A.A' = I, wobei
I die Identitätsmatrix
angibt.
-
Die
Anwendung eines Entscheidungskriteriums beruhend auf der maximalen
Wahrscheinlichkeit wird beim Realteil und Imaginärteil jedes Vektors V' durchgeführt. Dies
ermöglicht
das Herausfinden der Anfangssequenz der Symbole und dann die Wiederherstellung
der damit verbundenen binären
Zeichen.
-
Die
verschiedenen Symbole jedes Blocks hängen voneinander dank der Linearkombination
ab, die durch Multiplizieren der Elemente eines zu sendenden Vektors
V mit der diskreten inversen Fourier Transformationsmatrix A erhalten
wird. Diese Linearkombination garantiert eine gewisse Robustheit
und schützt
die Symbole vor der Interferenz zwischen komplexen Symbolen im selben
OFDM-Symbol.
-
Allerdings
erstreckt sich dieser Schutzeffekt nicht von einem OFDM-Symbol (das
heißt
einem Blocks komplexer Symbole) zum anderen.
-
Zum
Vermeiden der Interferenz in Zwischenblöcken ist die Verwendung eines
Verfahrens bekannt, das aus der Einstellung einer Stummdauer oder
Nicht-Ausgabe oder Neu-Ausgabe
bereits gesendeter Symbole, die auch Schutzzeit genannt wird, zwischen
zwei aufeinanderfolgenden Symbolen besteht.
-
Dieses
analoge OFDM-Signal, das zu dem Modem 46 gesendet wird,
umfasst Intervalle des Schutzes, einen Pilotunterträger und
einen durch Daten modulierten Träger.
Das Schutzintervall jedes OFDM-Symbols wird üblicherweise bei der Ausgabe durch
die Kopie einer bestimmten Anzahl von Abtastungen an das Ende eines
OFDM-Symbols gebildet, die
sich am Anfang des angeführten
OFDM-Symbols befinden.
-
Bei
diesem Ausführungsbeispiel
hat das Funksignal einen Aufbau von Funkrahmen mit Header-Daten
oder einer Präambel
und Daten, die als Nutz-Daten bekannt sind bzw. einem durch OFDM-Symbole
dargestellten Datenrahmen.
-
Der
Analog-Digitalwandler 301 in 8 wandelt
das empfangene Signal in ein digitales Signal mit der Abtastrate
des Takts 314 um. Die so erhaltenen digitalen Abtastdaten
werden zu einer Rahmenbeginn-Erfassungseinheit 302 durch
einen Bus 311 und zu einem Pufferspeicher MEM_TAMPON 304 übertragen,
der beispielsweise ein Schieberegister ist, auf den eine Synchronisationseinheit 303 zugreift.
-
Die
Rahmenbeginnerfassungseinheit 302, die durch einen Takt 314 getaktet
wird, erfasst das Vorhandensein oder Fehlen eines Rahmens durch die
Erfassung des Vorhandenseins oder Fehlens eines bestimmten Datums
F, in diesem Fall den Beginn des Informationsrahmens unter den abgetasteten Daten.
Diese Einheit erfasst eine Korrelationsspitze entsprechend einem
bekannten Korrelationsverfahren nicht in Echtzeit, die dem effektiven
Beginn des Rahmens entspricht, und insbesondere den Beginn der Präambel mit
einer Verzögerung Δs. Diese
Verzögerung Δs ist aufgrund
der Ungenauigkeit dieser Erfassung für bestimmte Funkkanäle nicht
konstant.
-
Der
Korrelationsschritt wird anhand der zuvor in den Puffer MEM_TAMPON 304 geschriebenen Abtastungen
ausgeführt.
Die Rahmenbeginn-Erfassungseinheit 302 liest somit diese
Abtastwerte mittels des Bus 311 in diesen Speicher MEM_TAMPON 304,
beginnend an einer Adresse 0 bis zu einer Adresse Ne – 1. Diese
Korrelation wird jedes Mal dann realisiert, wenn ein neuer Abtastwert
in den MEM_TAMPON 304 geladen wird. Jeder neue Abtastwert
wird an die Adresse 0 dieses Speichers geschrieben. Wird ein neuer
Abtastwert in den Speicher MEM_TAMPON 304 geschrieben,
werden alle anderen Abtastwerte an die folgende Adresse geschrieben
(Inkrement von 1 der Adresse), und ist der Speicher MEM_TAMPON 304 voll,
geht der älteste
Abtastwert verloren.
-
Das
Ergebnis der Korrelation wird mit einem vorbestimmten Schwellenwert
zur Ausführung
eines guten Kompromisses zwischen der Wahrscheinlichkeit eines falschen
Alarms und dem Verfehlen einer Erfassung eines vorhandenen Rahmens
ausgeführt. Der
letzte bei der Berechnung der Korrelation berücksichtigte Abtastwert, für den der
Schwellenwert überschritten
wurde, wird als Moment der Erfassung des Beginns der Präambel genommen,
und ein Rahmenbeginn-Signal 309 wird
in diesem Moment zu einer Einheit der Synchronisation von OFDM-Symbolen 303 gesendet.
-
Dieser
letzte Abtastwert bildet im Sinn der Erfindung ein bestimmtes Datum
F unter den Abtastdaten.
-
Der
Moment der Erfassung des Beginns des Rahmens entspricht tatsächlich dem
Moment des Auftretens des bestimmten Datums F und identifiziert die
Position dieses unter den anderen Daten.
-
Die
Erfassung des Moments des Auftretens dieses bestimmten Datums (Rahmenbeginn)
ist nicht so präzise
wie gewünscht,
und dies ist der Fall, wenn ein Signal „Aufwachen" den Analog-Digitalwandler 301 und
die Einheit zur Erfassung des Beginns des Rahmens bzw. Rahmenbeginn-Erfassungseinheit 302 aktiviert
und initialisiert. Auf gleiche Weise deaktiviert ein Signal „Schlafen" den Analog-Digitalwandler 301 und
die Rahmenbeginn-Erfassungseinheit 302.
Diese Signale können
von einer oberen Steuerschicht oder einer Schaltung im Modem bereitgestellt werden.
-
Somit
sind der Analog-Digitalwandler 301 und die Rahmenbeginn-Erfassungseinheit 302 während eines
begrenzten Zeitintervalls entsprechend einer Anzahl von Abtastwerten
Nlisten pro Nburst-Abtastwerten aktiv, so dass der Empfangsknoten
B auf zyklische Weise hören
kann, wenn der Sendeknoten A ein weiteres Signal zu senden versucht.
Dies soll zum Einsparen von Energie an der Empfängerstufe dienen. Die Anzahl
der Abtastwerte Nburst und Nlisten entsprechen den Erfordernissen
des Kommunikationssystems. Solang jeder Empfangsknoten Daten eines
Rahmens empfängt,
die für
ihn gedacht sind, wird das Schlafen-Signal nicht berücksichtigt. Empfängt der
Empfangsknoten andererseits keine weiteren Daten, die zu dem Rahmen
gehören,
werden der Analog-Digitalwandler 301 und die Rahmenbeginn-Erfassungseinheit 302 am
Ende einer bestimmten Zeit TL deaktiviert, die entsprechend den Erfordernissen
des Systems bestimmt ist.
-
Reicht
die Energieversorgung aus, kann überlegt
werden, den Analog-Digitalwandler 301 und die Rahmenbeginn-Erfassungseinheit 302 permanent
aktiv zu halten.
-
Die
Einheit zur Synchronisation der OFDM-Symbole 303 wird beim
Empfang des Signals des Beginns der Rahmenerfassung 309 aktiviert.
Die Einheit 303 sendet einen Index der Synchronisation IS 313 zum
Speicher MEM_TAMPON 304, der auf eine Adresse im Speicher 304 zeigt.
Die Einheit 303 sendet auch ein Signal des Beginns der
Feinsynchronisation 310 und ein Signal mit den vorbestimmten Parametern
der Entzerrung 315 zur Einheit der Feinsynchronisation 305.
Ferner liefert die Einheit 303 ein Signal der Referenz 46,
das auf sehr genaue Weise die Bereitstellung eines Referenzmoments
für die obere
Schicht (CPU 40) ermöglicht.
-
Die
Einheit der Synchronisation der OFDM-Symbole wird nachstehend unter
Bezugnahme auf 9 beschrieben.
-
Die
Einheit der Synchronisation der OFDM-Symbole 303 empfängt ein
Abtasttaktsignal 319 vom Abtasttakt 314.
-
Empfängt der
Speicher MEM_TAMPON 304 ein neues Indexsignal IS 313,
macht er die N Abtastwerte von der Adresse IS mit IS + N – 1 zum
Lesen für
die Einheit der Feinsynchronisation 305 verfügbar.
-
Die
Einheit 303 ermöglicht
den Erhalt der Position eines Synchronisationspunkts im ersten OFDM-Symbol
des Rahmens, das höchstens
eine halbe Periode des Abtasttakts 314 vom Idealpunkt der
Synchronisation entfernt ist.
-
In
dieser Einheit der Synchronisation der OFDM-Symbole 303 wird
innerhalb des Schutzbereichs der Erfindung auf die Erfassung eines
Moments des Auftretens zumindest eines bestimmten Datums E unter
den Abtastdaten übergegangen,
das in diesem Fall dem letzten Abtastwert der Daten des ersten OFDM-Symbols
der im Rahmen gesendeten Daten entspricht. Dieser Moment folgt dem
Moment des Beginns des Rahmens (Moment des Auftretens der anderen
bestimmten Daten F) und bringt einen höheren Genauigkeitsgrad in der
Erfassung des Moments des Auftretens des bestimmten Datums E, als
die während
der Auswahl des Moments des Auftretens des bestimmten Datums F erhaltene
Präzision.
Die Erfassung dieses Referenzmoments ist das dem Beginn des Datenrahmens
in einem Informationsrahmen aus einem Präambelteil und einem Datenrahmen
entsprechende Referenzereignis. Dies ermöglicht die Verfeinerung der
Präzision,
mit der das Referenzereignis im Sinn der Erfindung erhalten wird.
-
Der
Moment des Auftretens dieses Abtastwerts identifiziert seine Position
unter allen Abtastwerten des Rahmens.
-
Diese
Einheit 303 implementiert im Sinn der Erfindung eine Korrelation
der im Frequenzbereich abgetasteten Daten, nachdem bei diesen Daten
eine Fast Fourier Transformation ausgeführt wurde.
-
Die
Korrelation könnte
auch im Zeitbereich ausgeführt
werden.
-
Die
Einheit der Feinsynchronisation 305 führt auch eine Fast Fourier
Transformation FFT der Größe N bei
den empfangenen Abtastwerten aus und korrigiert schließlich das
Ausgangssignal ihrer FFT durch die Verwendung des vorstehend beschriebenen
Signals, das vorbestimmte Entzerrungsparameter 315 enthält. Dieser
Entzerrungstyp ist klassisch und dem Fachmann bekannt. Die Abtastwerte
sind dann als entzerrte Abtastwerte bekannt. Die Feinsynchronisation
umfasst die Berechnung einer Bruchteilzeit τ*, die
die Korrelation zwischen der Referenzsequenz des Pilotunterträgers und
der entzerrten Abtastwerte, die den Pilotunterträgern entsprechen, maximiert.
-
Eine
Implementierung des Verfahrens ist im US-Patent 5,444,697 beschrieben.
-
Eine
Phase gleich ωiτ* wird zur Phase jedes entzerrten Abtastwerts
hinzugefügt,
wobei ωi das Pulsieren des i-ten Unterträgers ist.
-
Die
Einheit der Feinsynchronisation implementiert im Sinn der Erfindung
eine Korrelation, die die Präzision verfeinert,
die mit der Einheit 303 bei der Erfassung des Moments des
Auftretens des bestimmten Datums E (Position eines Abtastwerts eines
OFDM-Symbols) erhalten wird.
-
Dann
werden die entzerrten und synchronisierten Abtastwerte einer Einheit 306 zugeführt, die komplexe
Symbole in binäre
Daten umwandelt. Die binären
Daten werden dann entschachtelt und in Blöcken 307 und 308 dekodiert,
wenn die Daten bei ihrer Ausgabe kodiert und verschachtelt waren.
Schließlich
stellt das Modem 46 korrekt demodulierte, entschachtelte
und dekodierte Daten auf dem Bus 52 (1 und 5)
bereit.
-
Wie
vorstehend beschrieben ist 9 eine detaillierte
Darstellung der Einheit der Synchronisation der OFDM-Symbole 303 des
Modems 46 des Empfangsknotens oder der Einrichtung B.
-
Die
Einheit der Synchronisation der OFDM-Symbole 303 umfasst
ein Modul zur Fast Fourier Transformation FFT 321. Das
FFT-Modul 321 führt eine
Fast Fourier Transformation bei einer Anzahl von N bereitgestellten
Abtastwerten durch. Die Ausgangssignale des FFT-Moduls 321 sind
komplexe Symbole. N ist die Anzahl aufeinanderfolgender Abtastwerte
von OFDM-Symbolen ohne Schutzintervalle und stellt auch die Anzahl
von Unterträgern
eines OFDM-Symbols dar.
-
Die
Einheit der Synchronisation der OFDM-Symbole 303 umfasst
einen Abtastwertezähler 320.
Der Abtastewertezähler 320 zählt ab seiner
Aktivierung die Impulse oder Abtastwerte des Abtasttakts 314.
Dieser Zähler 302 wird
auf einen Wert 0 initialisiert.
-
Er
wird zum Überwachen
der Menge an Abtastwerten zwischen dem Beginn der Rahmenerfassung
und dem Moment verwendet, wenn das Referenzereignis für die oberen
Schichten erzeugt wird. Die Einheit der Synchronisation der OFDM-Symbole 303 umfasst
eine Verarbeitungseinheit 318, beispielsweise einen Mikroprozessor.
Diese Verarbeitungseinheit 318 implementiert einen Algorithmus, dessen
Ablaufdiagramm in 10 gezeigt ist, in dem die verschiedenen
Signale, Speicher und Einheiten verwendet werden, die auf der Stufe
der Einheit der Synchronisation der Symbole 303 verfügbar sind.
-
Die
Einheit der Synchronisation der OFDM-Symbole 303 umfasst
eine Einheit von Eingängen/Ausgängen E/S 322,
die einen Zugriff auf den Bus 311, das Lesen des Signals
des Beginns der Rahmenerfassung 309, die Erzeugung des
Signals des Beginns der Feinsynchronisation 310, die Erzeugung
des Index der Synchronisation 313, die Erzeugung des Referenzsignals 64,
die Übertragung
eines Signals mit den vorbestimmten Parametern der Entzerrung 315 und
den Empfang des Abtasttaktsignals 319 ermöglicht.
-
Die
Einheit der Synchronisation der OFDM-Symbole 303 umfasst
einen Nur-Lesespeicher 316 mit Speicherbereichen MEM_Δ, MEM_N, MEM_G,
MEM_P, MEM_offset, MEM_X, MEM_k, MEM_SEQ, MEM_EGA.
-
MEM_EGA
ist ein Speicherbereich aus N Zonen, die jeweils einen vorbestimmten
Parameter zur Korrektur von Phase und Amplitude enthalten, der Entzerrungsparameter
genannt wird. Jeder dieser N Entzerrungsparameter soll die Amplitude
und Phase jedes unterschiedlichen Unterträgers des OFDM-Symbols, das
N Unterträger
umfasst, korrigieren.
-
Jeder
Unterträger
entspricht einem komplexen Symbol eines der Ausgaben des FFT-Moduls 321.
Ein komplexes Symbol stellt einen Wert von Amplitude und Phase dar.
-
Die
N Entzerrungsparameter des Speicherbereichs MEM_EGA sind Entzerrungsdaten
zum Kompensieren der bekannten Verzerrungen, die durch die Schaltungen
des Sendeknotens A und des Empfangsknotens B verursacht werden.
Die Verwendung dieser Entzerrungsparameter ist bekannt.
-
MEM_SEQ
ist ein Speicherbereich mit P Registern, die jeweils ein komplexes
Symbol vorbestimmter Phase und Amplitude entsprechend einem Pilotunterträger enthalten.
MEM_SEQ enthält
somit eine Referenzsequenz von Pilotunterträgern in der Form komplexer
Werte. Jedes der P Register des Speicherbereichs MEM_SEQ stellt
somit die Amplitude und die Phase des komplexen Symbols dar, das bei
der Ausgabe eines Pilotunterträgers
für die
Modulation verwendet wird, die unter den P Pilotunterträgern unterschiedlich
ist, die das OFDM-Symbol
enthält.
-
MEM_Δ entspricht
einer vorbestimmten Verzögerung
zwischen dem Moment des Auftretens des ersten OFDM-Symbols von Daten
(aufgrund des Schreibens des letzten Abtastwerts dieses ersten Symbols
in den Speicher) und dem Senden des Referenzsignals 64.
Diese Verzögerung
ist größer als die
maximale theoretische Zeit, die für die Erfassung des Moments
des Auftretens des bestimmten Datums E, das heißt, des letzten Abtastwerts
des ersten OFDM-Symbols unter den abgetasteten Daten des ersten
OFDM-Symbols erforderlich ist.
-
Der
Nur-Lesespeicher 16 umfasst auch einen Speicherbereich
PROG, in dem die verschiedenen Anweisungen oder Schritte des Datenverarbeitungsprogramms
beruhend auf dem vorstehend beschriebenen Algorithmus enthalten
sind.
-
Die
Einheit der Synchronisation der OFDM-Symbole 303 umfasst
auch einen RAM-Speicher 317 mit Speicherzonen MEM_CORR,
MEM_SYNC, MEM_EGP, MEM_m, MEM_p, MEM_I, MEM_MAX, MEM_iMAX, MEM_ind.
-
MEM_CORR
ist eine Zweispaltentabelle mit den Ergebnissen der durch die Verarbeitungseinheit 318 ausgeführten Korrelation
sowie deren verbundenem Index. Dieser Index stellt die Anzahl neuer
Abtastwerte aus der ersten während
der Synchronisation des betreffenden OFDM-Symbols ausgeführten Korrelation
dar.
-
MEM_SYNC
ist eine Zweispaltentabelle mit den Indizes der Korrelationsspitze
jedes OFDM-Symbols sowie des entsprechenden Index jedes OFDM-Symbols.
Das zuerst empfangene OFDM-Symbol hat einen Index 0 und das s-te
empfangene OFDM-Symbol hat einen Index s – 1.
-
Die
Einheit der Synchronisation der OFDM-Symbole 303 umfasst
außerdem
einen Datenbus 323, der die Eingabe-Ausgabe-Einheit 322, den Nur-Lesespeicher 316,
den RAM-Speicher 317,
das FFT-Modul 321, den Abtastwertezähler 320 und die Verarbeitungseinheit 318 untereinander
verbindet. Der Abtastwertezähler 320 dient
zum Überwachen der
zwischen dem Beginn der Rahmenerfassung und der Erfassung eines
vorbestimmten Ereignisses abgelaufenen Zeit.
-
10 zeigt
ein ausführliches
Ablaufdiagramm der durch die Einheit der Synchronisation der OFDM-Symbole 303 des
Modems 46 im Empfangsknoten oder der Einrichtung B und schließlich der Rahmenbeginn-Erfassungseinheit 302 ausgeführten Anweisungen
oder Schritte entsprechend dem Vorgang der Bestimmung der Referenz
hinsichtlich des Empfangs von Daten gemäß der Erfindung.
-
Die
Einheit der Synchronisation der OFDM-Symbole 303 bildet
im Sinn der Erfindung eine Einrichtung zur Erzeugung eines Referenzmoments hinsichtlich
des Empfangs von Daten.
-
Die
Einheit der Bestimmung des Referenzmoments hinsichtlich des Empfangs
von Daten kann auch gemäß einem
anderen Ausführungsbeispiel
die Rahmenbeginn-Erfassungseinheit 302 umfassen und
durch den Block 340 in 8 dargestellt
sein, wenn die Erfindung auch den Schritt der Erfassung des Moments
des Auftretens des Signals des Beginns des Rahmens enthält.
-
Die
Verarbeitungseinheit 318 führt die verschiedenen Anweisungen
des Algorithmus aus. In Schritt E200 wird die Einheit der Synchronisation
der OFDM-Symbole 303 aktiviert, wenn sie ein Signal des
Starts der Rahmenerfassung 309 empfängt, und geht zu Schritt E201 über.
-
In
Schritt E201 wartet die Verarbeitungseinheit 318 auf eine
vorbestimmte Anzahl X von Taktimpulsen, die vom Abtasttakt 314 kommen,
und geht dann zum folgenden Schritt E203 über.
-
Die
vorbestimmte Anzahl X ist eine dem System und insbesondere dem Aufbau
des empfangenen Datenrahmens entsprechende Anzahl. X ist ein im
Nur-Lesespeicher an der Adresse MEM_X durch die Verarbeitungseinheit 318 gelesener
Wert.
-
Zwischen
dem Moment der Erfassung des Beginns des Rahmens und dem Moment,
wenn der Speicher MEM_TAMPON 304 alle Abtastwerte des zu
synchronisierenden ersten OFDM-Symbols enthält, kann es eine große Menge
an Taktimpulsen 314 geben, und es ist nicht erforderlich,
den Ablauf der Synchronisation der OFDM-Symbole unmittelbar zu beginnen.
Dies erklärt
das Interesse daran, eine Anzahl X von Taktimpulsen des Abtasttakts 314 lang
zu warten.
-
Während der
Wartezeit gleich einer Anzahl X von Taktimpulsen könnten einige
Empfängerparameter
zum Verbessern der Empfangsqualität modifiziert werden.
-
Beruhend
auf Informationen, die durch die zwischen dem erfassten Rahmenbeginn
und dem Ende der Wartezeit empfangenen Abtastwerte getragen werden,
könnte
eine Hardwareschaltung oder ein Softwarealgorithmus beispielsweise
einen lokalen Empfängeroszillator
auf die richtige Frequenz abstimmen. Die zwischen dem erfassten
Rahmenbeginn und dem Ende der Wartezeit erhaltenen Abtastwerte sind
Abtastwerte, die ein Teil davon sind, was allgemein als Präambel bekannt
ist. Dies stellt einen zweiten Vorteil der Wartezeit dar, die einer
Anzahl X von Taktimpulsen des Abtasttakts 314 entspricht.
-
Mit „Synchronisation" ist die Tatsache
gemeint, dass das Lesen lediglich der N Abtastwerte für die Feinsynchronisationseinheit 305 verfügbar gemacht
wird, die zum OFDM-Symbol gehören.
Dies wird durch Bereitstellung eines Index der Synchronisation IS313
im MEM_TAMPON 304 ausgeführt.
-
In
Schritt E203 wird der Abtastwertezähler 320 aktiviert
und der aktuelle Wert „Nc" dieses Zählers 320 wird
zu null initialisiert.
-
Die
Variablen m, p, i, max, imax, ind, sync corr in MEM_m, MEM_p, MEM_i,
MEM_MAX, MEM_iMAX, MEM_ind, MEM_SYNC, MEM_CORR werden auch zu null
initialisiert. Mit jedem durch den Takt des Abtasttakts 314 bereitgestellten
Impuls wird der Wert „Nc" des Abtastwertezählers 320 in
Einheiten von 1 inkrementiert.
-
In
Schritt E204 des Algorithmus liest die Verarbeitungseinheit 318 die
Variable m im RAM-Speicher 317, wobei m die Anzahl der
Abtastwerte in einem Symbol darstellt, i und den Wert Nc am Ausgang des
Zählers 320 und
führt eine
Berechnung Nc – m aus.
-
Ist
das Ergebnis dieser Berechnung Nc – m positiv oder null, und
ist i null, geht die Verarbeitungseinheit 318 zu Schritt
E205 über.
-
Ist
das Ergebnis Nc – m
streng negativ, oder ist i nicht null, führt die Verarbeitungseinheit 318 die Tests
wiederum zum Zeitpunkt des nächsten
Taktimpulses des Abtasttakts 314 aus.
-
Der
Algorithmus umfasst einen Schritt E205, in dem die Verarbeitungseinheit
die Berechnung Nc – m – i ausführt und
das Ergebnis „ind" in den RAM-Speicher
mit der MEM_ind-Adresse
schreibt.
-
Diese
Einheit beginnt im folgenden Schritt E206 mit dem Lesen und Verarbeiten
von N Abtastwerten von Daten beginnend an der Adresse ind bis ind
+ N – 1
im Speicher MEM_TAMPON 304 durch das Modul der Fourier
Transformation 321 mittels des Bus 323, der Eingangs-/Ausgangseinheit 322 und
des Bus 311, wobei m im ROM-Speicher gespeichert ist.
-
Die
Verarbeitungseinheit 318 liest im Nur-Lesespeicher in MEM_P
die Anzahl und die Position der Pilotsignale des OFDM-Symbols unter
den N Unterträgern.
Somit liest die Verarbeitungseinheit 318 eine Anzahl P
vorbestimmter Ausgabeergebnisse aus dem FFT Modul 321 unter
den N Ausgabeergebnissen.
-
Die
Anzahl P ist die Anzahl von Pilotunterträgern des OFDM-Symbols. Ein
Pilotunterträger
ist zuerst ein Unterträger,
für den
der Empfänger
die Position im Frequenzfeld verglichen mit allen anderen Unterträgern des
OFDM-Symbols kennt, und zum zweiten ein Unterträger, der bei der Ausgabe mit
einem komplexen Symbol der Amplitude und Phase moduliert wurde,
das der Empfänger
kennt.
-
Die
P vorbestimmten Ausgabeergebnisse des Moduls 321 sind die
Ausgabeergebnisse, in denen die jenen der Pilotunterträger entsprechenden komplexen
Symbole sein sollten, wenn in der Eingabe des FFT-Moduls 321 die
gelesenen N Abtastwerte jene desselben OFDM-Symbols sind.
-
Die
Verarbeitungseinheit 318 liest die Entzerrungsparameter
im Speicherbereich MEM_EGA mit den P Registern entsprechend den
Pilotunterträgern.
Die Einheit 318 wendet diese letzten Entzerrungsparameter
bei den P vorbestimmten Ausgangsergebnissen des FFT-Moduls 321 entsprechend
einem bekannten Verfahren zum Erhalten einer Anzahl P komplexer
entzerrter Symbole an, deren Amplitude und Phase nicht durch Verzerrungen
beeinflusst sind, die durch den Übertragungskanal
erzeugt werden.
-
Die
Verarbeitungseinheit 318 schreibt die Werte der P entzerrten
komplexen Symbole in eine Zone MEM_EGP des RAM-Speichers 317.
Dann die geht die Verarbeitungseinheit 318 zu Schritt E207 über.
-
In
Schritt E207 führt
die Verarbeitungseinheit 318 mit der Folge von P komplexen
Symbolen im Speicherregister MEM_SEQ und der Sequenz von P entzerrten
komplexen Symbolen im RAM-Speicher einen Vorgang der klassischen
Korrelation zwischen diesen zwei letzten Sequenzen aus und schreibt
das Ergebnis dieser Korrelation in die Zwei-Spaltentabelle MEM_CORR des RAM-Speichers
sowie die verbundene Variable i in die gleiche Zeile. Die Verarbeitungseinheit 318 geht
dann zu Schritt E208 über.
-
In
Schritt E208 liest die Verarbeitungseinheit 318 eine Variable
i im Speicher, den Wert Maxcorr in einem Speicherbereich MEM_MAX
und liest in der Tabelle MEM_CORR den Wert der Korrelation entsprechend
der Variablen i Corr(i). Ist der Wert Corr(i) größer oder gleich Maxcorr, geht
die Verarbeitungseinheit 318 zu Schritt E209 und ansonsten
zu Schritt E211 über.
-
In
Schritt E209 wird der Wert von Korrelation Corr(i) im Speicherbereich
MEM_MAX und i in der Zone MEM_iMAX im Speicher gespeichert, und
der Ablauf geht dann zu Schritt E210 über.
-
In
Schritt E210 inkrementiert die Verarbeitungseinheit 318i in
der Einheit von 1 und geht dann zu Schritt E205 über.
-
Ist
der Wert von Corr(i) nicht größer oder gleich
MAX_CORR, folgt Schritt E211 auf E208.
-
In
Schritt E211 liest die Verarbeitungseinheit 318 in der
Tabelle MEM_Corr den Wert von Corr(i) entsprechend der Variable
i und liest im Nur-Lesespeicher an der Adresse MEM_k den Wert einer
bezeichneten Variable k, wobei k die Anzahl von Abtastwerten definiert,
die zur Bestimmung untersucht werden, ob das erfasste Maximum ein
lokales oder wahres Maximum ist.
-
Wird
einmal eine Faltungsspitze erreicht, muss sich das Faltungsergebnis
der folgenden Abtastwerte verringern. Wenn nicht, bedeutet dies,
dass ein lokaler Spitzenwert gefunden wurde, der nicht berücksichtigt
wurde. Beispielsweise kann k mit einem Wert von 5 ein guter Kompromiss
zwischen Genauigkeit und Berechnungsgeschwindigkeit sein. Auch werden
die k ersten Abtastwerte als zu rauschbehaftet betrachtet, also
muss ein Maximum bei diesen Abtastwerten nicht berücksichtigt
werden.
-
Ist
k streng größer als
i, geht die Verarbeitungseinheit 318 zu Schritt 212 über, was
bedeutet, dass es nicht ausreichend Abtastwerte zu analysieren gibt
und es sich um den Beginn der Analyse handelt.
-
Ist
k kleiner oder gleich i, liest die Verarbeitungseinheit in der Tabelle
MEM_CORR auf iterative Weise den Wert der Korrelation entsprechend
dem Index von i nach k. Ist für
alle Werte von j Corr(i – j) streng
kleiner als Corr(i), geht die Verarbeitungseinheit zu Schritt E215 über, und
andererseits zu Schritt E212. Wie vorstehend angeführt besteht
der Zweck dieses Schritts in der Überprüfung, ob es sich um ein lokales
Maximum handelt oder nicht, was Fehler erzeugen kann.
-
In
Schritt E212 inkrementiert die Verarbeitungseinheit 318i mit
einer Einheit von 1, und geht dann zu Schritt E205 über, der
bereits beschrieben wurde, und die Korrelation beginnt erneut.
-
Die
Schritte E205 bis E212 bilden eine Datenverarbeitungsschleife und
entsprechen der Suche nach einem Maximum unter den abgetasteten
Daten. Diese Schleife entspricht tatsächlich der Erfassung des Moments
des Auftretens der Position des bestimmten Datums E wie vorstehend
beschrieben unter den abgetasteten Daten (dem letzten Abtastwert des
ersten OFDM-Symbols).
-
In
Schritt E215 liest die Verarbeitungseinheit 318 den nachstehend
S(p) genannten Index, der dem Spitzenwert der Korrelation des p
+ 1-ten OFDM-Symbols entspricht, m und p im Speicher. p stellt den
Index oder die Reihenfolge des OFDM-Symbols im Rahmen dar. Das erste
Symbol, bei dem die Suche nach dem Spitzenwert der Korrelation ausgeführt wird,
hat einen Index 0. Dann entspricht S(p) dem Wert i am Korrelationsmaximum
des betreffenden Symbols.
-
Die
Verarbeitungseinheit 318 schreibt das Ergebnis der Berechnung
m + S(p) in den RAM-Speicher an MEM_SYNC sowie den damit verbundenen Index
p in dieselbe Zeile.
-
Die
Verarbeitungseinheit 318 liest den aktuellen Wert Nc des
Abtastwertezählers 220,
berechnet die Differenz Nc – m – s(p) und
sendet dann einen Index der Synchronisation IS 313 zum
Speicher MEM_TAMPON 304, der auf die Adresse mit dem Wert
des Ergebnisses dieser Berechnung zeigt. Diese Berechnung bildet
die Differenz zwischen dem Betrag Nc der gezählten Taktimpulse durch den
Zähler 320,
den Betrag, der die Zeit darstellt, die während des Beginns der Prozedur
und dem effektiven Ort des Ereignisses unter den Abtastwerten abgelaufen ist.
-
Die
Verarbeitungseinheit 318 sendet auch ein Signal des Beginns
einer Feinsynchronisation 310 zur Einheit der Feinsynchronisation 305 in 8.
-
Ist
p = 0, liest die Verarbeitungseinheit 318 einen Wert Δ im Nur-Lesespeicher
und berechnet die Summe Δ +
S(0), und ein dem Referenzereignis entsprechendes Signal wird gesendet,
wenn der Wert des Abtastwertezählers
Nc gleich dem Ergebnis der Berechnung Δ + S(0) ist. Dieses Signal 64,
das auch Referenzereignis genannt wird, wird beispielsweise in den 1 und 2 verwendet, wie es aus der Beschreibung
der Figuren ersichtlich ist.
-
Der
Wert Δ entspricht
einer Dauer, die derart gewählt
wird, dass sie länger
als die maximale theoretische Zeit ist, die zur Erfassung des Moments
des Auftretens der Position des bestimmten Datums E bzw. des letzten
Abtastwerts des ersten OFDM-Symbols unter den Abtastdaten ist.
-
Dieser
Wert Δ wird
so gewählt,
dass das Referenzereignis tB, tB',
das sich daraus ergibt, zu dem Zeitpunkt nicht überschritten wird, wenn der
Referenzwert N(tB), N(tB')
aufzuzeichnen ist, der diesem Referenzmoment entspricht, der das
Auftreten eines Referenzereignisses unter den empfangenen Abtastdaten
identifiziert.
-
Somit
sind durch einen ungenauen Start der Rahmenerfassung erzeugte Fehler
beseitigt. Ein genaues Signal wird mit einer festen Verzögerung bereitgestellt.
-
Das
Referenzereignis wird somit aus dem bestimmten Datum E wie vorstehend
beschrieben bestimmt.
-
Die
folgenden Schritte führen
eine normale Funktion von 303 durch und sind nicht auf
die Erfassung des Referenzereignisses am ersten Datensymbol im Rahmen
sondern auf die Verarbeitung anderer OFDM-Symbole der Daten im Rahmen
bezogen.
-
Die
Verarbeitungseinheit 318 geht dann zu Schritt E213 über, in
dem diese Einheit den Wert p um 1 inkrementiert, was bedeutet, dass
das nächste Symbol
analysiert wird, und geht dann zu Schritt E214 über.
-
In
Schritt E214 initialisiert die Verarbeitungseinheit 318 die
Variable i auf Null und initialisiert die Inhalte der Tabelle MEM_CORR
zu 0. Die Verarbeitungseinheit 318 berechnet dann p*(N
+ G) + S(0) – offset
und schreibt das Ergebnis dieser Berechnung an die MEM_m-Adresse
im Rahmenspeicher. G, das im ROM-Speicher an MEM_G gespeichert ist,
ist die Anzahl von Abtastwerten, die dem Schutzintervall eines OFDM-Symbols
entspricht. „offset" ist ein kleiner Wert,
der die Berechnung zuverlässiger
machen soll, indem ein Weg zum Modifizieren des m-Werts bereitgestellt
wird.
-
Dann
wird Schritt E204 wiederholt wie vorstehend beschrieben ausgeführt.
-
Die
Ausführung
mehrerer Schritte der Erfassung des Moments des Auftretens mehrerer
aufeinander folgender OFDM-Symbole unter den abgetasteten Daten
könnte
wichtig sein.
-
Somit
identifiziert jeder Moment des Auftretens eines bestimmten Datums
eine Position (beispielsweise den letzten Abtastwert) eines Abtastwerts
von Daten unter allen Abtastwerten der Daten eines OFDM-Symbols,
und diese Position ist die gleiche in anderen OFDM-Symbolen des
Rahmens.
-
Diese
Position wird mit mehr oder weniger Präzision aus einem OFDM-Symbol
erhalten.
-
Somit
ist die Bestimmung der relativen Position dieser bestimmten Daten,
die einen verglichen mit den anderen, hinsichtlich der Struktur
des ausgegebenen Datenrahmens möglich,
wodurch insbesondere die Bewertung der den Kommunikationsfunkkanal
beeinflussenden Störungen
ermöglicht
wird.
-
Unter
Bezugnahme auf die 11a bis 11c werden
anhand von Zeitablaufdiagrammen die Erfassung und die Erzeugung
des Referenzereignisses im Empfänger
entsprechend den 8 bis 10 beschrieben.
-
Die 11a bis 11c zeigen
Beispiele einer derartigen Erfassung, die durch die Einheit der Synchronisation
der OFDM-Symbole 303 durchgeführt wird. In diesen Figuren
stellen 910a, 910b, 910c die am Sender
erzeugten Rahmen dar. Der Index S im Rahmen entspricht dem Beginn
des Informationsrahmens und der Index E ist das erste Datum des
Datenrahmens, die Informationen zwischen S und E werden Präambel genannt.
-
Diese
Rahmen werden über
eine Funkverbindung zum Empfänger
gesendet.
-
Die
Darstellung 920a ist ein Beispiel eines empfangenen Rahmens
durch den Empfänger.
Aufgrund von Dämpfungen
des Funkkanals oder der Kennlinie des Demodulators 48 wurden
einige Informationen zu stark verzerrt, und der Beginn des Informationsrahmens
wird als Abtastdaten erkannt.
-
Die
Darstellungen 920b und 920c sind Beispiele anderer
vom Empfänger
empfangener Rahmen. In diesem Fall sind keine Informationen in der Präambel zu
stark verzerrt und S-Symbole in den Rahmen 910b und 910c entsprechen
S-Symbolen der Rahmen 910b und 910c.
Es ist leicht ersichtlich, dass die Verwendung des Beginns des Informationsrahmens
für die
Synchronisation der Netze nicht genau genug ist.
-
Wurde
einmal der Beginn des Rahmens erfasst (Schritt E200 in 10),
tritt die Einheit der Synchronisation der OFDM-Symbole 303 in
einen Wartezustand ein (Schritt E201 in 10), wo
keine Korrelation ausgeführt
wird. Dieser Wartezustand ist in 902a, 902b, 902c in
den 11a bis 11c dargestellt.
-
Nach
Ausführung
dieses Schritts wird der Zähler 320 initialisiert
und aktiviert. Der Wert des Zählers
ist beispielsweise in 930a, 930b, 930c in
den 11a bis 11c gezeigt.
Dieser Ablauf entspricht Schritt E203 in 10.
-
Zu
diesem Zeitpunkt wird jedes Abtastdatum im Speicher 304 des
Modems 46 bis zur Erfassung des bestimmten Datums E korreliert,
das dem Beginn des Datenrahmens entspricht. Diese Korrelation wird in
den Schritten E205 bis E212 ausgeführt.
-
940a, 940b und 940c entsprechen
der Erfassung des bestimmten Datums E und stellen den Inhalt S(0)
zu diesem Zeitpunkt dar.
-
Korrelationsschritte
für einen
Abtastwert können
unterschiedliche Verarbeitungszeiten erfordern. In den 11a bis 11c ist
die Verarbeitungszeit unter den Abtastwerten unterschiedlich. Beispielsweise
erfordert der erste korrelierte Abtastwert lediglich einen Abtastwert
eines Abtasttakts, jedoch dauert für den siebten in 11a die Korrelation in diesem Beispiel drei Abtasttakte
lang.
-
Wurde
das bestimmte Datum E einmal gefunden, fügt die CPU 31a den
Wert S(0) zu einer bestimmten Verzögerung hinzu, die in diesem
Beispiel gleich 20 ist.
-
Hat
der Zähler 320 in 9 diesen
Wert erreicht, wird das Referenzereignis 950a, 950b, 950c erzeugt.
-
Diese
Abläufe
werden in Schritt E215 in 9 ausgeführt.
-
Wie
vorstehend beschrieben ist die Erfindung hinsichtlich eines ungenauen
Starts einer Informationsrahmenerfassung wie in den 11a und 11b gezeigt
nicht empfindlich.
-
Die
Erfindung ist auch gegenüber
Verarbeitungszeitschwankungen für
die Korrelation wie aus 11b und 11c ersichtlich unempfindlich.
-
Die
Erfindung vermeidet auch ein Problem, das durch eine zu lange Rechenzeit
erzeugt wird, indem ein verzögertes
Referenzereignissignal erzeugt wird.
-
Gemäß einem
anderen Ausführungsbeispiel der
Erfindung, das in 12 gezeigt ist,
kann die Einheit der Synchronisation der OFDM-Symbole bzw. die OFDM-Symbolsynchronisationseinheit 303 die Erzeugung
eines Referenzereignisses auf vereinfachte Art und Weise durchführen, wie
es im Ablaufdiagramm in 10 gezeigt
ist.
-
In
den 12a und 12b gibt
es zwei Beispiele gesendeter Rahmen 1000a und 1000b und zwei
empfangene Rahmen 1020a und 1020b.
-
Bei
der Erfassung des Beginns eines Rahmens, der in beiden empfangenen
Rahmen 1020a und 1020b mit S bezeichnet ist, wird
die Einheit der Synchronisation der OFDM-Symbole 303 aktiviert, wenn
sie einmal ein Signal des Beginns der Rahmenerfassung 309 empfangen
hat, und geht zu Schritt E201 über.
-
In
Schritt E201 wartet die Verarbeitungseinheit 318 eine vorbestimmte
Anzahl X von Taktimpulsen vom Abtasttakt 314 lang, wie
es in 12a und 12b anhand
von 1025a und 1025b gezeigt ist, und geht dann
zum folgenden Schritt E203 über.
-
Ist
diese Warteperiode einmal abgeschlossen, beginnt die Suche nach
dem bestimmten Datum E. Zuerst wird in Schritt E203 der Abtastwertezähler 320 aktiviert
und der aktuelle Wert „Nc" dieses Zählers 320 wird
zu 0 initialisiert.
-
In
diesem Ausführungsbeispiel
wird angenommen, dass der Empfänger
und insbesondere die Einheit der Synchronisation der OFDM-Symbole
die theoretische Anzahl der Abtastdaten des Präambelteils des Rahmens kennt.
-
Die
Variablen m, p, i, max, imax, ind, sync corr in MEM_m, MEM_p, MEM_i,
MEM_MAX, MEM_IMAX, MEM_ind, MEM_SYNC, MEM_CORR werden auch zu 0
initialisiert. Mit jedem durch den Abtasttakt 314 bereitgestellten
Impuls wird der Wert „Nc" des Abtastwertezählers 320 um
1 inkrementiert.
-
In
Schritt E204 des Algorithmus liest die Verarbeitungseinheit 318 im
RAM-Speicher 317 die Variable m, wobei m die Anzahl von
Abtastwerten in einem Symbol darstellt, i und den Wert Nc am Ausgang des
Zählers 320 und
führt die
Berechnung Nc – m aus.
-
Ist
das Ergebnis dieser Berechnung Nc – m positiv oder Null, und
ist i Null, geht die Verarbeitungseinheit 318 zu Schritt
E205 über.
-
Ist
das Ergebnis Nc – m
streng negativ, oder ist E nicht Null, führt die Verarbeitungseinheit 318 wiederum
die Tests zum Zeitpunkt des nächstes
Impulses des Abtasttakts 214 aus.
-
Der
Algorithmus umfasst einen Schritt E205, in dem die Verarbeitungseinheit
eine Berechnung Nc – m – i ausführt und
das Ergebnis „ind" in den RAM-Speicher
an die MEM_ind-Adresse
schreibt.
-
Die
Einheit beginnt im folgenden Schritt E206 mit dem Lesen und der
Verarbeitung von N Abtastwerten von Daten, die beginnend von der
Adresse ind bis zu ind + N – 1
im Speicher MEM_TAMPON 304 gelesen werden, durch das Modul
der Fourier Transformation 321 mittels des Bus 323,
der Eingabe-/Ausgabeeinheit 322 und des Bus 311,
wobei N im ROM-Speicher gespeichert ist. Dies entspricht dem ersten zu
verarbeitenden Symbol. In den 12a und 12b entspricht dies den mit 1 markierten Symbolen.
-
Die
Verarbeitungseinheit 318 liest die Anzahl und die Position
der Pilotsignale des OFDM-Symbols unter den N Unterträgern im
Nur-Lesespeicher an MEM_P. Somit liest die Verarbeitungseinheit 318 eine
Anzahl P vorbestimmter Ausgabeergebnisse aus dem FFT-Modul 321 unter
den N Ausgabe- bzw. Ausgangsergebnissen.
-
Die
Anzahl P ist die Anzahl von Pilotunterträgern des OFDM-Symbols. Die
P vorbestimmten Ausgabeergebnisse des Moduls 321 sind die
Ausgabeergebnisse, bei denen die komplexen Symbole jenen der Pilotunterträger entsprechen
sollten, wenn in der Eingabe des FFT-Moduls 321 die gelesenen
N Abtastwerte jene desselben OFDM-Symbols sind.
-
Die
Verarbeitungseinheit 318 schreibt die Werte der P entzerrten
komplexen Symbole in eine Zone MEM_EGP des RAM-Speichers 317.
Dann geht die Verarbeitungseinheit 318 zu Schritt E207 über.
-
In
Schritt E207 führt
die Verarbeitungseinheit 318 mit der Sequenz von P komplexen
Symbolen im Speicherregister MEM_SEQ und der Sequenz von P entzerrten
komplexen Symbolen im RAM-Speicher eine Operation einer klassischen
Korrelation zwischen diesen zwei letzten Sequenzen aus und schreibt
das Ergebnis dieser Korrelation in die Zweispaltentabelle MEM_CORR
des RAM-Speichers sowie die damit verbundene Variable i in dieselbe
Zeile. Die Verarbeitungseinheit 318 geht dann zu Schritt E208 über.
-
In
Schritt E208 liest die Verarbeitungseinheit 318 eine Variable
i im Speicher, den Wert Maxcorr in einem Speicherbereich MEM_MAX
und liest in der Tabelle MEM_CORR den Wert der Korrelation entsprechend
der Variablen i Corr(i). Ist der Wert Corr(i) größer oder gleich Maxcorr, geht
die Verarbeitungseinheit 318 zu Schritt E209 über, und
ansonsten zu Schritt E211.
-
In
Schritt E209 wird der Wert der Korrelation Corr(i) im Speicherbereich
MEM_MAX und i in der Zone MEM_iMAX im Speicher gespeichert, und
der Ablauf geht dann zu Schritt E210 über.
-
In
Schritt E210 inkrementiert die Verarbeitungseinheit 318i um
1. Entsprechend diesem zweiten Ausführungsbeispiel liest die CPU 318 den
Wert des Zählers 320 und
berechnet die Anzahl von während
der Verarbeitung des ersten Symbols auftretenden Taktabtastwerten.
Ist diese Anzahl geringer als ein vorbestimmter Wert, wartet die
CPU 318, bis der Zähler 320 eine
Anzahl von Taktabtastwerten gleich dem vorbestimmten Wert angibt.
Auf diese Weise ist die Verarbeitung des Symbols immer konstant.
Wie in den 12a und 12b gezeigt,
ist die Verarbeitungszeit für
jedes Datum gleich, und schwankt nicht wie im vorhergehenden Ausführungsbeispiel.
Der vorbestimmte Wert der Taktabtastwerte wird durch Wählen der
längsten
Verarbeitung für
ein Symbol eingestellt. Mit der Ausführung dieses Vorgangs geht
die CPU 318 zu Schritt E205 über.
-
Ist
der Wert Corr(i) nicht größer oder
gleich Maxcorr, dann folgt Schritt E211 auf Schritt E208.
-
In
Schritt E211 liest die Verarbeitungseinheit 318 den Wert
Corr(i) entsprechend der Variablen i in der Tabelle MEM_CORR und
liest im Nur-Lesespeicher an der Adresse MEM_k den Wert einer bezeichneten
Variable k. k definiert die Anzahl der Abtastwerte, die zur Bestimmung
untersucht werden, ob das erfasste Maximum ein lokales oder wahres
Maximum war.
-
Ist
k streng größer als
i, dann geht die Verarbeitungseinheit 318 zu Schritt 212 über, was
bedeutet, dass es nicht ausreichend Abtastwerte zum Analysieren
gibt und es sich um den Beginn der Analyse handelt.
-
Ist
k kleiner oder gleich i, liest die Verarbeitungseinheit auf iterative
Weise in der Tabelle MEM_CORR den Wert der Korrelation entsprechend dem
Index von 1 nach k. Ist für
alle Werte von j Corr(i – j)
streng kleiner als Corr(i), geht die Verarbeitungseinheit zu Schritt
E215 über,
und andererseits zu Schritt E212. Wie vorstehend beschrieben besteht der
Zweck dieses Schritts in der Überprüfung, ob
es sich um ein lokales Maximum handelt, das Fehler verursachen kann.
-
In
Schritt E212 inkrementiert die Verarbeitungseinheit 318i um
1, geht dann zu Schritt E205 wie vorstehend beschrieben über und
die Korrelation beginnt erneut. Gemäß diesem zweiten Ausführungsbeispiel
liest die CPU 318 den Wert des Zählers 320 und berechnet
die Anzahl von Taktabtastwerten, die während der Verarbeitung des
ersten Symbols aufgetreten ist. Ist diese Anzahl kleiner als ein
vorbestimmter Wert, wartet die CPU 318, bis der Zähler 320 eine
Anzahl von Taktabtastwerten gleich dem vorbestimmten Wert anzeigt.
Auf diese Weise ist die Verarbeitung des Symbols immer konstant.
Wie in den 12a und 12b beschrieben,
ist die Verarbeitungszeit für
jedes Datum gleich, und schwankt nicht wie in dem vorhergehenden
Ausführungsbeispiel.
Der vorbestimmte Wert der Taktabtastwerte wird durch Wählen der
längsten
Verarbeitung für
ein Symbol eingestellt.
-
In
Schritt E215 vergleicht die Verarbeitungseinheit 318i mit
der theoretischen Anzahl von Abtastwerten und erzeugt ein Referenzereignis
beruhend auf der Anzahl verarbeiteter Abtastwerte. In 12a wurden 6 Daten behandelt, und die theoretische
Anzahl von Daten in der Präambel
ist 9. In den 12a und 12b ist
die maximale Anzahl von Abtastwerten auf 2 eingestellt (für eine bessere Übersichtlichkeit
der Figuren), und so wird ein Referenzereignis (9 – 6)·(2 – 1) Taktabtastwerte
nach der Erfassung des bestimmten Datums erzeugt. Dies entspricht
der theoretischen Anzahl der Abtastwerte in der Präambel minus
der Anzahl verarbeiteter Abtastwerte, das Ganze multipliziert mit
der vorbestimmten Anzahl von Taktzyklen für den Prozess eines Symbols
minus 1. In 12b gehen keine Abtastwerte
verloren, und die Referenzereigniserzeugung geschieht unmittelbar.
Auf diese Weise wird die Erzeugung eines Referenzereignisses immer
im geeigneten Referenzmoment ausgeführt.
-
Somit
sind Fehler beseitigt, die durch einen ungenauen Start der Rahmenerfassung
erzeugt werden. Ein genaues Signal wird dann mit einer festen Verzögerung bereitgestellt.
-
Das
Referenzereignis wird somit aus dem bestimmten Datum E wie vorstehend
beschrieben bestimmt.