DE60117078T2 - Vorrichtung zur Überwachung der Synchronisierung - Google Patents

Vorrichtung zur Überwachung der Synchronisierung Download PDF

Info

Publication number
DE60117078T2
DE60117078T2 DE2001617078 DE60117078T DE60117078T2 DE 60117078 T2 DE60117078 T2 DE 60117078T2 DE 2001617078 DE2001617078 DE 2001617078 DE 60117078 T DE60117078 T DE 60117078T DE 60117078 T2 DE60117078 T2 DE 60117078T2
Authority
DE
Germany
Prior art keywords
synchronization
data
synchronization point
control means
point information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE2001617078
Other languages
English (en)
Other versions
DE60117078D1 (de
Inventor
Masafumi Hamamatsu-shi Toshitani
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2000273279A external-priority patent/JP3417392B2/ja
Application filed by Yamaha Corp filed Critical Yamaha Corp
Publication of DE60117078D1 publication Critical patent/DE60117078D1/de
Application granted granted Critical
Publication of DE60117078T2 publication Critical patent/DE60117078T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf eine Synchronisationssteuereinrichtung, die geeignet ist für den Empfang von gleichzeitig übermittelten Datenpaketen, um eine synchronisierte Reproduktion der empfangen Datenpakete durchzuführen.
  • Der USB (Abkürzung für Universal Serial Bus) wird heute weitläufig verwendet als eine Art von Kabel zur Verbindung von digitaler Ausrüstung. In den letzten Jahren wurde eine große Vielfalt von digitalem Zubehör bereitgestellt, das über USB mit anderem Zubehör verbunden werden kann und damit sind die Anwendungen von USB immer breiter geworden. Unter mehreren bekannten Arten des Datentransfers ist die Verwendung von USB der gleichzeitige Transfer, der den Datenpakettransfer von einem Übertragungsende zu einem Empfangende als Antwort auf Bustaktpulse, die im Zyklus einer Millisekunde erzeugt werden, wiederholt (im weiteren "USB-Frames" genannt).
  • Der Anmelder der vorliegenden Veröffentlichung hat Leistungsstudien zu einem Audiokommunikationssystem vorgeschlagen und durchgeführt, das das USB-basierte, gleichzeitige Transferschema verwendet, um verschlüsselte Daten zu übertragen, wie AC3-Daten (Audiocode 3). 7 ist ein Blockdiagramm, das schematisch eine allgemeine Organisation des Audiokommunikationssystems zeigt, wie es durch den Anmelder der vorliegenden Veröffentlichung vorgeschlagen wurde. Wie gezeigt, umfasst das Audiokommunikationssystemen einen Computer 1 und eine Audioreproduktionseinrichtung 2, die über einen USB 3 verbunden sind. Der Computer 1 umfasst ein DVD (Digital Versatile Disk)-Laufwerk (nicht gezeigt) für den Empfang und Betrieb einer DVD, die AC 3-codierte Daten gespeichert hat. Der Computer 1 umfasst auch einen AC 3-Datenreproduktionsabschnitt 101 und eine USB-Schnittstelleneinheit 102.
  • Die Funktionen des AC 3-Datenreproduktionsabschnitts 101 und von USB-Schnittstelleneinheit 102 werden in Bezug auf die Abschnitte (a) bis (c) von 8 beschrieben. Der AC 3-Datenreproduktionsabschnitt 101 funktioniert in der Art, dass er wiederholbar AC 3-codierte Daten von einer nicht gezeigten DVD liest. Die AC 3-kodierten Daten, die auf der DVD gespeichert sind, sind Daten, die durch Sampeln von Audiosignalen mit 48 kHz-Samplingtaktpulsen erhalten wurden, um PCM-Samples vorzusehen und dann eine Kompressionskodierung für jede Gruppe der 1536 PCM-Samples durchzuführen (siehe Abschnitt (a) von 8). Für jedes synchronisierte Frame einer Periode von 32 ms (32 = 1536/48 kHz) liest und gibt der AC3-Datenreproduktionsabschnitt 101 die AC 3-kodierten Daten entsprechend den 1536 PCM-Samples aus (siehe Abschnitt (b) von 8).
  • Die USB-Schnittstelleneinheit 102 vereinbart die AC3-kodierten Daten, die von dem AC3-Datenreproduktionsabschnitt 101 für jedes synchronisierte Frame in einem oder mehreren Datenpaketen ausgegeben wurden und übermittelt ein solches Datenpaket pro USB-Frame mit einer Periode von einer Millisekunde an die Audioreproduktionseinrichtung 2 über den USB 3. Weil die Ausgabe von AC3-kodierten Daten durch den AC3-Datenreproduktionsabschnitt 101 in das synchronisierte Frame einer Kompressionskodierung unterzogen wurde, könnten die AC3-kodierten Daten, die als Paket übermittelt werden sollen, in einem der 32 USB-Frames innerhalb des synchronisierten Frames ausgehen oder aufhören. In solch einem Fall übergibt die USB-Schnittstelleneinheit 102 "0(null)"-Daten an jedes der verbleibenden USB-Frames innerhalb des synchronisierten Frames. Das oben genannte ist ein Überblick der Funktionen des AC3-Datenreproduktionsabschnitts 101 und der USB-Schnittstelleneinheit 102.
  • Die Audioreproduktionseinrichtung 2, die in 7 gezeigt wird, sollte die Audiosignale wie zuvor reproduzieren können durch den Empfang und die Dekodierung der AC3-kodierten Datenpakete, die von Computer 1 über den USB 3 gesendet wurden.
  • Es ist jedoch für die Audioreproduktionseinrichtung 2 schwierig, mit dem obigen Audiokommunikationssystem die AC3-kodierten Daten ohne Qualitätsverlust der reproduzierten Daten auf synchronisierte Weise zu reproduzieren. Die Gründe für den Reproduktionsqualitätsverlust werden im folgenden gemäß 9 erläutert.
  • Die USB-Schnittstelleneinheit 102 arbeitet synchron zu Taktpulsen, die getrennt sind von zeitgesteuerten Taktpulsen des AC3-Datenreproduktionsabschnitts 101. Deshalb stimmt die Frequenz der Bustaktpulse in der USB-Schnittstelleneinheit 102 nicht unbedingt mit dem 32-fachen der Frequenz der synchronisierten Frames überein und würde so permanent oder vorläufig etwas geringer oder größer als das 32-fache der Frequenz der synchronisierten Frames werden. Wenn die Frequenz der Bustaktpulse in der USB-Schnittstelleneinheit geringer als das 32-fache der Frequenz der synchronisierten Frames ist, können die 32 USB-Pakete eines gegebenen, synchronisierten Frames SyncF-1 zum passenden Zeitpunkt gemäß den Bustaktpulsen übergeben werden, aber danach würde die Phase der Bustaktpulse mit fortschreitender Zeit nach und nach der Phase der synchronisierten Frames hinterherhinken, wie es in Abschnitt (a) von 9 anschaulich gezeigt ist. Folglich würde bei einem nachfolgenden synchronisierten Frame SyncF-M1 eine Situation auftreten, in der, sogar wenn der Zeitpunkt zur Übertragung des ersten oder führenden Pakets der AC3-kodierten Datenausgabe in dem synchronisierten Frame SyncF-M1 gekommen ist, die Übertragung des letzten (32.) Pakets in dem unmittelbar vorangehenden synchronisierten Frame noch nicht beendet ist.
  • Wenn auf der anderen Seite die Frequenz der Bustaktpulse in der USB-Schnittstelleneinheit 102 größer ist als das 32-fache der Frequenz der synchronisierten Frames, würde mit fortschreitender Zeit die Phase der Bustaktpulse nach und nach der Phase der synchronisierten Frames vorauseilen, wie anschaulich in Abschnitt (b) von 9 gezeigt wird. Somit würde, wie es in Abschnitt (b) von 9 veranschaulicht wird, eine Situation auftreten, in der, sogar wenn der Zeitpunkt nach der Übertragung des letzten (32.) Pakets in einem gegebenen, synchronisierten Frame SyncF-M2 gekommen ist, das erste oder führende Paket der AC 3-kodierten Daten zu übermitteln, um in dem nächsten synchronisierten Frame ausgegeben zu werden, das erste oder führende Paket nicht rechtzeitig erzeugt werden kann.
  • Um solche Situationen zu bewältigen, führt die USB-Schnittstelleneinheit 102 die folgende Steuerung durch. Im Falle des Abschnitts (a) von 9 führt die USB Schnittstelleneinheit 102 die Steuerung der Beendigung der Paketübergabe nach Abschluss der Übertragung des 31. Pakets in dem synchronisierten Frame durch, das dem Frame SyncF-M1 vorausgeht. Im Fall von Abschnitt (b) von 9 führt die USB-Schnittstelleneinheit 102 nach Abschluss der Übertragung des 32. Pakets die Steuerung der Übertragung eines zusätzlichen, 33. Pakets (bestehend aus "0"-Daten) in dem synchronisierten Frame SyncF-M2 synchron zu den nachfolgenden Bustaktpulsen durch. Auch wenn die Frequenz der Bustaktpulse in der USB-Schnittstelleneinheit 102 nicht genau mit dem 32-fachen der Frequenz der synchronisierten Frames übereinstimmt, gestattet diese Übertragungssteuerung von Paketen, dass die gesamte AC3-kodierte Datenausgabe aus dem AC3-Datenreproduktionsabschnitt 101 ohne Verzögerung an jedes synchronisierte Frame übergeben werden kann. Jedoch würden als Folge der Übertragungssteuerung der Pakete ungewollte Fluktuationen (Jitter), die in ihrer zeitlichen Länge mit einem USB-Frame übereinstimmen, zu den Empfangszeitpunkten der AC3-kodierten Daten in der Audioreproduktionseinrichtung 2 aus 7 produziert werden, wie anschaulich in den Abschnitten (c) und (d) von 9 gezeigt wird.
  • In dem veranschaulichten Beispiel im Abschnitt (c) von 9 werden die 32 USB-Pakete in fast allen synchronisierten Frames passend übertragen; jedoch werden in seltenen Fällen nur 31 USB-Pakete in einem gegebenen, synchronisierten Frame übertragen. Idealerweise sollten die AC3-kodierten Daten, die von der Audioreproduktionseinrichtung 2 in dem synchronisierten Frame empfangen werden, welches sofort auf ein gegebenes, synchronisiertes Frame folgt, nur ein USB-Frame später empfangen werden. Weiterhin werden in dem veranschaulichten Beispiel in Abschnitt (d) von 9 die 32 USB-Pakete in fast allen synchronisierten Frames passend übertragen; jedoch werden in seltenen Fällen 33 USB-Pakete in einem gegebenen, synchronisierten Frame übertragen. Idealerweise sollten die AC3-kodierten Daten, die von der Audioreproduktionseinrichtung 2 in dem synchronisierten Frame empfangen werden, welches sofort auf ein gegebenes, synchronisiertes Frame folgt, nur ein USB-Frame früher empfangen werden.
  • Hier führt die Audioreproduktionseinrichtung 2 eine synchronisierte Reproduktion der AC3-kodierten Daten synchron zu jedem 32 ms synchronisierten Frame (das asynchron zu dem synchronisierten Frame des AC3-Datenreproduktionsabschnitts 101 in dem Computer 1 ist) durch. Genauer wird die synchronisierte Reproduktion der AC3-kodierten Daten durchgeführt durch ein sequenzielles Speichern von Datenpaketen AC3-kodierter Daten in einem FIFO-(first in first out)Puffer und dann die Durchführung eines sogenannten Synchronisierungstests oder -auswertung, um die Lesefrequenz der Pakete in dem FIFO-Puffer in Übereinstimmung mit dem Ergebnis der Synchronisationsauswertung zu steuern. Wenn somit Fluktuationen, die ihrer zeitlichen Länge nach einem USB-Frame entsprechen, zur Empfangszeit der AC3-kodierten Daten in der Audioreproduktionseinrichtung 2 erzeugt werden, würden die Fluktuationen die Synchronisationsauswertung nachteilig beeinflussen und dabei das Problem aufwerten, dass die synchronisierte Reproduktion der AC3-kodierten Daten nicht angemessen durchgeführt werden kann.
  • EP-A-0 503 657 bezieht sich auf eine Taktfüllungseinrichtung und -methode und umfasst folgendes: Wenn sich die Datensignale niedriger Ordnung für die Anzahl von N Kanälen (N: positive, ganze Zahl) in ihrer Bitrate leicht voneinander unterscheiden, wird ein Multiplexer zur Taktfüllung verwendet, um ein Multiplexen dieser Signale auszuführen. Das Datensignal niedriger Ordnung für einen einzelnen Kanal wird in einem M-bit-Speicher abgelegt in Übereinstimmung mit einem Taktsignal, das erhalten wird durch Demultiplikation des Taktsignals niedriger Ordnung dieses Kanals zu 1/m, um es als das Datensignal hoher Ordnung von einem Taktsignal auszulesen, das erhalten wird durch Demultiplikation zu 1/m eines gemeinsamen Taktsignals hoher Ordnung, das nicht geringer ist als alle Taktsignale geringer Ordnung. Wenn das Datensignal hoher Ordnung aus diesem Speicher ausgelesen wird, wird das S-te (S ≤ m) beider Taktsignale überwacht und, wenn die Phasendifferenz dabei innerhalb der vorbestimmten k-Bits fällt (k ≤ m), werden beide Demultiplikatoren an die Kopfposition des nächsten Frames für beide Taktsignale zurückgesetzt, um an einer vorbestimmten Position initialisiert zu werden. Zusätzlich werden die Zahlen des Taktes niedriger Ordnung und des Taktes hoher Ordnung für jedes Frame gezählt und, wenn dabei die Differenz ein Bit übersteigt, wird das Taktsignal hoher Ordnung an dem hinteren Ende des Frames unterdrückt. Wenn der oben beschriebene Vorgang für alle Kanäle erfolgt ist, kann jeder Kanal an entsprechender Position eingefügt werden mit einer angemessenen Anzahl von Füllungsbits zur Synchronisation, so dass es möglich wird, leicht durch Verwendung eines Multiplexers ein Multiplexsignal zu erreichen.
  • EP-A-0 558 136 bezieht sich auf ein Übertragungssystem mit einem Schaltkreis zur Korrektur von Frequenz- und/oder Phasenfluktuationen zwischen eingehendem und ausgehendem Signal. Dieses Signal beinhaltet Daten und Datenlücken. Der Schaltkreis beinhaltet einen Hauptpuffer und einen Vorpuffer zur Pufferung der Daten des eingehenden Signals und einen Steuerschaltkreis, der vorgesehen ist, um positive Fülldaten in das Signal einzufügen, das aus der Vorpuffer kommt und um Füllinformationen zu liefern, wenn ein vorbestimmtes, niedrigeres Füllniveau des Vorpuffers erreicht wird.
  • Schließlich umfasst US-A-6,092,142 eine Methode und eine Einrichtung, um eine programmierbare Verzögerung während der Wiedergabe von zeitgleichen Datenpaketen einzuführen. Die Methode umfasst die Bestimmung eines anfänglichen Verzögerungspunktes. Im besonderen wird der anfängliche Verzögerungspunkt bestimmt durch die Übertragungsrate, die Wiedergaberate und die gewünschte Pufferspeichergröße. Die Methode umfasst auch die Einführung einer programmierbaren Verzögerung, um die Wiedergabe von mehreren Datenströmen über mehrere Zieleinrichtungen zu synchronisieren.
  • Die Einrichtung umfasst einen Puffer, eine Schalteinrichtung, einen Zähler und eine Steuerungslogik, um die programmierbare Verzögerung einzufügen.
  • In Anbetracht der obigen Ausführungen ist es ein Ziel der vorliegenden Erfindung, eine Synchronisationssteuereinrichtung vorzusehen, welche die genaue, synchronisierte Reproduktion von Audiodaten gestattet, die zeitgleich über USB übertragen werden, während wirksam nachteilige Effekte auf den Arbeitsgang der Synchronisierungsauswertung vermieden werden.
  • Gemäß einem Aspekt der vorliegenden Erfindung ist eine Synchronisationssteuereinrichtung vorgesehen, um nacheinander Datenpakete synchron zu periodischen Bustaktpulsen zu empfangen und eine Vielzahl von empfangenen Datenpaketen kollektiv als einen Datenzug für jedes Synchronisationsframe auszugeben, dessen Periode länger ist als eine Periode der Bustaktpulse, wie in Anspruch 1 dargelegt. Gemäß einem anderen Aspekt der vorliegenden Erfindung ist eine Synchronisationssteuereinrichtung vorgesehen, um nacheinander Datenpakete synchron zu periodischen Bustaktpulsen zu empfangen und eine Vielzahl von empfangenen Datenpaketen kollektiv als einen Datenzug für jedes Synchronisationsframe auszugeben, dessen Periode länger ist als eine Periode der Bustaktpulse, wie in Anspruch 5 dargelegt.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung können den abhängigen Ansprüchen entnommen werden.
  • Um das Ziel und andere Merkmale der vorliegenden Erfindung besser verstehen zu können, werden ihre bevorzugten Ausführungsbeispiele im folgenden in Bezug auf die begleitenden Zeichnungen detaillierter beschrieben.
  • 1 ist ein Blockdiagramm, das einen beispielhaften, allgemeinen Aufbau eines Synchronisationssteuerkreises gemäß einem Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 2 ist ein Diagramm, das eine Vielzahl von USB-Paketen, die nacheinander an dem Synchronisationssteuerkreis von 1 ankommen, und AC3-Daten zeigt, die in ein Format gemäß dem IEC-958-Standard konvertiert werden, um von dem Synchronisationssteuerkreis ausgegeben zu werden;
  • 3 ist ein Flussdiagramm, das erklärt, wie das Ausführungsbeispiel von 1 arbeitet;
  • 4 ist ein Diagramm, dass die Art und Weise erklärt, in der die Synchronisationspunktsteuerung in dem Ausführungsbeispiel ausgeführt wird;
  • 5 ist ein Diagramm, das auch die Synchronisationspunktsteuerung in dem Ausführungsbeispiel erklärt;
  • 6 ist ein Diagramm, das auch die Synchronisationspunktsteuerung in dem Ausführungsbeispiel erklärt;
  • 7 ist ein Blockdiagramm, das schematisch eine allgemeine Organisation eines Audiokommunikationssystems zeigt, auf das die vorliegende Erfindung angewandt wird;
  • 8 ist eine Zeittabelle, die das Verhalten eines AC-3-Datenreproduktionsabschnitts und einer USB-Schnittstelleneinheit in dem Audiokommunikationssystem von 7 erklärt; und
  • 9 ist eine Zeittabelle, die die Fluktuationen erklärt, die während dem zeitgleichen Transfer von AC3-kodierten Daten über USB erzeugt werden.
  • Im Folgenden werden die Ausführungsbeispiele der vorliegenden Erfindung erklärt, aber man sollte erkennen, dass die vorliegende Erfindung nicht auf die beschriebenen Ausführungsbeispiele alleine beschränkt ist und zahlreiche Modifikationen der Erfindung möglich sind, ohne sich von den grundlegenden Prinzipien der Erfindung zu entfernen. Der Umfang der vorliegenden Erfindung soll deshalb allein durch die begleitenden Ansprüche bestimmt werden.
  • 1 ist ein Blockdiagramm, das die allgemeine Organisation eines Audioreproduktionsabschnitts 24 und eines Synchronisationssteuerschaltkreises 20 in Übereinstimmung mit einem Ausführungsbeispiel der vorliegenden Erfindung zeigt. Jedes der hier veranschaulichten Elemente ist vorzugsweise in einer Audioreproduktionseinrichtung vorgesehen, wie es in 7 gezeigt wird. Der Synchronisationssteuerschaltkreis 20 umfasst eine CPU 21, einen Oszillator 22, der sich außerhalb der CPU 21 befindet, einen Vorpuffer 23P und einen FIFO-(first in first out)Puffer 23, der durch einen Dual-Port-RAM oder ähnlichem implementiert ist. Mithilfe des Vorpuffers 23P und des FIFO-Puffers 23 puffert die CPU 21 USB-Pakete, die zeitgleich über den USB 3 übertragen werden. So erzeugt die CPU 21 AC3-Daten, die in ein Format konvertiert sind, das dem IEC-958-Standard entspricht und liefert die erzeugten AC-3-Daten an einen Audioreproduktionsabschnitt 24.
  • Abschnitt (a) von 2 zeigt eine Vielzahl von USB-Paketen, die nacheinander an dem Synchronisationssteuerschaltkreis 20 ankommen und Abschnitt (b) von 2 zeigt die AC3-Daten, die in ein Format konvertiert sind, das dem IEC-958-Standard entspricht. In Abschnitt (a) von 2 wird ein USB-Paket pro Millisekunde an den Steuerschaltkreis 20 übertragen. Somit empfängt der Synchronisationssteuerschaltkreis 20 in dem synchronisierten Frame 32 USB-Pakete, wenn jedes synchronisierte Frame eine Zeitdauer oder Periode von 32 ms besitzt. Jedes USB-Paket umfasst als Inhalt 192 Bytes AC-3-kodierter Daten oder "0(null)"-Daten. Die USB-Pakete, die nacheinander an dem Synchronisationssteuerschaltkreis 20 ankommen, werden alle zuerst vorübergehend in dem Vorpuffer 23P abgelegt und dann an den FIFO-Puffer 23 weitergegeben, nachdem sie um eine Zeitdauer aufgehalten wurden, die einer vorbestimmten Anzahl von USB-Frames entspricht. Weiterhin, wie in Abschnitt (b) von 2 gezeigt wird, umfassen die AC-3-Daten, die in ein Format konvertiert sind, das dem IEC-958-Standard entspricht, eine Einleitung, einen Datenzug, der erhalten wird, indem die AC-3-kodierten Daten, die innerhalb eines synchronisierten Frames empfangen werden, in der Reihenfolge ihres Empfangs durch den Steuerschaltkreis 20 angeordnet werden und einen Datenzug von "0"-Daten. Der Synchronisations steuerschaltkreis 20 liest die AC-3-Daten, die in ein Format konvertiert sind, das dem IEC-958-Standard entspricht, aus dem FIFO-Puffer 23 aus, während jedes synchronisierte Frame, das durch das AC-3-Schema festgelegt ist (d.h. während jedes synchronisierten Frames, das dem IEC 958 Standard entspricht), gemäß den Auslesetaktpulsen (zum Beispiel Pulse mit einer Samplefrequenz von 48 kHz), die durch frequenzteilende Referenztaktpulse erhalten werden, die durch den Oszillator 22 erzeugt werden.
  • Mit erneutem Bezug auf 1 umfasst die CPU 21 einen Schreibsteuerabschnitt 201, einen Lesesteuerabschnitt 202, einen Einleitungserzeugungsabschnitt 203, einen Synchronisationsauswertungsabschnitt 204 und einen Synchronisationspunktsteuerabschnitt 205. Diese Abschnitte stellen mehrere Funktionen als virtuelle Hardwaremodule dar, die durch die CPU 21 ausgeführt werden, die vordefinierte Software betreibt; natürlich können diese Abschnitte oder Module durch Hardware implementiert werden.
  • Jedesmal, wenn das USB-Paket über den USB 3 empfangen und in dem Vorpuffer 23P abgelegt wird, führt der Schreibsteuerabschnitt 201 eine Steuerung durch, um nacheinander ansteigende Schreibadressen an den FIFO-Puffer 23 zu liefern, den Inhalt des USB-Pakets, AC-3-kodierter Daten oder "Null"-Daten aus dem Vorpuffer 23P auszulesen und dann die so aus gelesenen Daten in den FIFO-Puffer 23 zu schreiben.
  • Der Lesesteuerabschnitt 202 liest die AC-3-kodierten Daten oder "0"-Daten aus den FIFO-Puffer 23 in chronologischer Reihenfolge aus (das heißt, in der Reihenfolge, in der die Daten in dem FIFO-Puffer 23 abgelegt wurden) versorgt dann den Audioreproduktionsabschnitt 24 mit den so ausgelesenen Daten als AC-3-Daten, die in das Format gemäß dem IEC-958-Standard konvertiert sind. Obwohl dies nicht im Detail gezeigt wird, umfasst den Lesesteuerabschnitt 202 einen Frequenzteiler mit einem variablen Frequenzteilungsverhäitnis für die Ausgabe von frequenzteilenden Referenztaktpulsen von dem Oszillator 22 oder ähnlichem, einen Zähler, um die Ausgabe von Taktpulsen aus dem Frequenzteiler zu zählen, um den FIFO-Puffer 23 mit einem vorbestimmten gezählten Wert der Pulse als eine Leseadresse RADR zu versorgen und einen Schaltkreis, um zwangsweise die Ausgabe des gezählten Wertes aus dem Zähler zu manipulieren.
  • Der Einleitungserzeugungsabschnitt 203 erzeugt eine Einleitung von AC-3-Daten, die in das Format gemäß dem IEC-958-Standard konvertiert sind, auf der Basis von AC-3-kodierten Daten innerhalb des USB-Pakets, das in dem ersten USB-Frame des synchronisierten Frames empfangen und in dem FIFO-Puffer 23 abgelegt wurde. Die Einleitung, die so durch den Einleitungserzeugungsabschnitt 203 erzeugt wurde, wird über den Schreibsteuerabschnitt 201 in ein vorbestimmtes Gebiet innerhalb des FIFO-Puffers 23 geschrieben.
  • Jedes Mal, wenn der Synchronisationsauswertungsabschnitt 204 (einen Startzeitpunkt SOF) des USB-Frames erfasst, nimmt der Abschnitt 204 die Schreibadresse WAD und Leseadresse RADR auf, die aktuell an den FIFO-Puffer 23 gesendet wurden, berechnet dann auf der Basis einer Differenz dieser beiden Adressen eine bestimmte Datenmenge, die verbleibt, um aus dem FIFO-Puffer 23 ausgelesen zu werden (das heißt, noch auszulesende Daten in dem FIFO-Puffer 23) und bestimmt dadurch, ob es eine Wahrscheinlichkeit für einen Überlauf oder Unterlauf in dem FIFO-Puffer 23 gibt oder nicht. Wenn es solch eine Wahrscheinlichkeit für einen Überlauf oder Unterlauf in dem FIFO-Puffer 23 gibt, wird eine Frequenzsteueranweisung an den Lesesteuerabschnitt 202 übergeben, um eine Veränderung der Sendegeschwindigkeit der Leseadressen RADR (Datenauslesegeschwindigkeit) festzulegen. Wenn nämlich die Geschwindigkeit der ausgelesenen Daten aus dem FIFO-Puffer 23 größer ist als die Geschwindigkeit des Schreibens der Daten in den FIFO-Puffer 23 und es eine Wahrscheinlichkeit für einen Unterlauf gibt, gibt der Synchronisationsauswertungsabschnitt 204 dem Lesesteuerabschnitt 202 eine Frequenzsteueranweisung, um die Sendegeschwindigkeit der Leseadressen RADR zu senken. Wenn umgekehrt die Geschwindigkeit der ausgelesenen Daten aus dem FIFO-Puffer 23 geringer ist als die Geschwindigkeit des Schreibens der Daten in den FIFO-Puffer 23 und es eine Wahrscheinlichkeit für einen Überlauf gibt, gibt der Synchronisationsauswertungsabschnitt 204 dem Lesesteuerabschnitt 202 eine Frequenzsteueranweisung, um die Sendegeschwindigkeit der Leseadressen RADR zu erhöhen.
  • Hier wird die Wahrscheinlichkeit für einen Überlauf oder Unterlauf bestimmt auf der Grundlage eines Synchronisationspunktes (ein Wert, der durch Synchronisationsinformation dargestellt wird), der durch den Synchronisationspunktsteuerabschnitt 205 ausgezeichnet wird. Der Synchronisationspunkt ist eine Leseadresse RADR des FIFO-Puffers 23 an dem USB-Frame-Startzeitpunkt SOF aufgrund der Annahme, dass die AC-3-kodierten Daten oder "0"-Daten aus dem FIFO-Puffer 23 ausgelesen werden mit einer idealen Datenauslesegeschwindigkeit, die zu der Geschwindigkeit des Schreibens der Daten in den FIFO-Puffer 23 passt. Der Synchronisationsauswertungsabschnitt 204 bestimmt, ob die Ausgabe einer Frequenzsteueranweisung nötig ist oder nicht, was davon abhängt, ob der mathematische Ausdruck (1) unten erfüllt ist oder nicht. |(Puffergröße – leere Kapazität des Puffers) – Synchronisationspunkt| < erlaubter Wert α; Mathematischer Ausdruck (1)
  • In dem obigen mathematischen Ausdruck (1) repräsentiert der erste Term auf der linken Seite "(Puffergröße – leere Kapazität des Puffers)" die Menge an Daten, die in den FIFO-Puffer 23 geschrieben wurden, aber verbleiben, um aus dem FIFO-Puffer 23 ausgelesen zu werden (das heißt, noch zu lesende Daten in dem Puffer 23), was berechnet werden kann mit der Schreibadresse WADR und Leseadresse RADR.
  • Jedes Mal, wenn der USB-Frame-Startzeitpunkt SOF erfasst wird, berechnet der Synchronisationspunktsteuerabschnitt 205 den Synchronisationspunkt und liefert den berechneten Synchronisationspunkt an der Synchronisationsauswertungsabschnitt 204. Normalerweise wird ein Adresswert als Synchronisationspunkt festgelegt, der berechnet wird, indem man den vorbestimmten Offset von der Schreibadresse WADR an dem Erfassungszeitpunkt des USB-Frame-Startzeitpunkts SOF subtrahiert. In diesem Ausführungsbeispiel jedoch werden Operationen ausgeführt zu einem Zeitpunkt des Wechsels des synchronisierten Frames und in mehreren abfolgenden USB-Frames zur Modifizierung des normalen Synchronisationspunktes, der für den Synchronisationsauswertungsabschnitt 204 ausgewiesen wird oder zur allmählichen Wiederherstellung des anfänglichen oder normalen Synchronisationspunktes aus dem modifizierten Synchronisationspunkt, wie später in einer Beschreibung des Verhaltens des Ausführungsbeispiels detailliert dargelegt wird.
  • 3 ist ein Flussdiagramm, das erklärt, wie sich die CPU 21 in dem Ausführungsbeispiel verhält und 4 bis 6 sind Diagramme, die erklären, wie der Synchronisationspunktsteuerabschnitt 205 in dem Ausführungsbeispiel arbeitet. Jetzt wird die Arbeitsweise des Ausführungsbeispiels mit Bezug zu diesen Figuren beschrieben.
  • Jedes Mal, wenn ein Wechsel von einem USB-Frame zu einem anderen auftritt, zählt die CPU 21 in dem Synchronisationssteuerschaltkreis 20 die Anzahl der USB-Frames und führt einen Unterbrechungsvorgang aus, wie in dem Flussdiagramm 3 dargestellt ist. In diesem Unterbrechungs- oder Interruptvorgang bestimmt die CPU 21 bei dem Schritt S1, ob der Inhalt des USB-Pakets, der an den FIFO-Puffer 23 gesendet werden soll, "0"-Daten ist. Mit einer bestätigenden Bestimmung (Ja) bei dem Schritt S1 schreitet der Unterbrechungsvorgang fort zu Schritt S2.
  • Bei dem Schritt S2 bestimmt die CPU 21, ob die Zählung der USB-Frames "33" erreicht oder überschritten hat. Mit einer negativen Bestimmung (nein) bei dem Schritt S2 führt die CPU 21 bei dem Schritt S3 eine weitere Bestimmung durch, ob die "0"-Daten, die an den FIFO-Puffer 23 gesendet werden sollen, die letzten "0"-Daten in dem betreffenden synchronisierten Frame sind. Im besonderen wird die Bestimmung bei Schritt S3 wie folgt durchgeführt. In einer Situation nämlich, in der der empfangene Inhalt des USB-Pakets, das auf die "0"-Daten folgt, AC-3-kodierten Daten enthält, wird entschieden, dass die AC-3-kodierten Daten die ersten AC-3-kodierten Daten des neuen synchronisierten Frames sind und die "0"-Daten, die an den FIFO-Puffer 23 gesendet werden sollen, die letzten "0"-Daten in dem synchronisierten Frame sind, dass sofort dem neuen synchronisierten Frame unmittelbar vorhergeht. Wenn eine negative Bestimmung in dem Schritt S3 erfolgt ist, werden die betreffenden "0"-Daten an den FIFO-Puffer 23 bei Schritt S5 übermittelt. Nach Beendigung der Operationen bei Schritt S5, geht die CPU 21 zu Schritt S20 über, um zu bestimmen, ob der Synchronisationspunkt von dem normalen Wert abweicht. Wenn die CPU 21 von Schritt S3 bis Schritt S20 über Schritt S5 vorangeschritten ist, bedeutet das, dass keine Operation ausgeführt wurde, um den Synchronisationspunkt gegenüber dem normalen Wert zu verändern und somit wird eine negative Bestimmung bei Schritt S20 vorgenommen, so dass der Unterbrechungsvorgang beendet wird.
  • Die folgenden Abschnitte beschreiben Operationen, die ausgeführt werden, wenn eine bestätigende Bestimmung bei Schritt S3 gemacht wird, das heißt, wenn die "0"-Daten, die an den FIFO-Puffer 23 gesendet werden sollen, die letzten "0"-Daten in dem betreffenden synchronisierten Frame sind und die Anzahl der USB-Frames in dem synchronisierten Frame "32" ist.
  • In diesem Fall geht die CPU 21 über Schritt S3 zu Schritt S4, wo eine Operation ausgeführt wird, wie mit Bezug auf 4 unten detailliert beschrieben wird. 4 zeigt Variationen des Datenspeicherzustandes und Synchronisationspunktes in dem FIFO-Puffer 23. Man beachte, dass, um eine unnötige Verkomplizierung der Darstellung zu vermeiden (das heißt, für die Einfachheit der Darstellung), hier nur die Datenspeicherzustände der beiden 384-Byte-Gruppen gezeigt werden, die dem betreffenden Synchronisationspunkt in mehreren Speichergebieten des FIFO-Puffers 23 vorangehen und nachfolgen; eine ähnliche Darstellung der Datenspeicherzustände wird in 5 und 6 gegeben und wird später beschrieben.
  • Man nehme hier an, dass das 32. USB-Paket eines bestimmten synchronisierten Frames in dem letzten Abschnitt des Vorpuffers 23P abgelegt wird (das heißt, ein Gebiet zur Speicherung des USB-Pakets, dass als nächstes an den FIFO-Puffer 23 übertragen werden soll). Zu diesem Zeitpunkt ist der Inhalt von bis zu dem 31. empfangenen USB-Paket in dem FIFO-Puffer 23 gespeichert worden und der Synchronisationspunkt ist an den Endpunkt des Inhalts („0"-Daten) des 31. USB-Pakets gesetzt worden, wie in Abschnitt (a) von 4 gezeigt wird. Der Synchronisationsauswertungsabschnitt 204 in 1 benützt diesen Synchronisationspunkt, um die Bestimmung durchzuführen, die auf dem mathematischen Ausdruck (1) basiert.
  • Bei Schritt S4 legt die CPU 21 eine Position als Synchronisationspunkt des nächsten USB-Frames fest, die, von dem vorigen Synchronisationspunkt aus gesehen, 184 Bytes nach vorne verschoben ist (das heißt, in eine Richtung zu Adressen, auf die später zugegriffen wird, um Daten auszulesen), eine Position nämlich, die gegenüber dem normalen Synchronisationspunkt des nächsten USB-Frames um einen Betrag zurückverschoben ist, der der Datenlänge der Einleitung (8 Bytes) entspricht (siehe (c) und (d) von 4). Bei Schritt S5 überträgt die CPU 21 dann 184 Bytes "0"-Daten von 192 Bytes "0"-Daten, die zu dem Inhalt des 32. empfangenen USB-Paket gehören, von dem Vorpuffer 23P zu dem FIFO-Puffer 23.
  • Durch den obigen Vorgang ändert sich der Datenspeicherzustand des FIFO-Puffers 23 zu dem Zustand, der in Abschnitt (b) von 4 gezeigt wird. Der Grund dafür, dass die 184 Bytes "0"-Daten, d.h. 8 Bytes weniger als die 192 Bytes, als die "0"-Daten bis 32. USB-Pakets in den FIFO-Puffer 23 geschrieben werden, ist die Vorabsicherung eines Gebiets in dem FIFO-Puffer 23, um eine 8-Byte-lange Einleitung in das nächste USB-Frame zu schreiben. Nach Beendigung des Vorgangs bei Schritt S5 geht die CPU 21 zu Schritt S20 von 3 über. Auch in diesem Fall kommt es zu einer negativen Feststellung (nein) bei Schritt S20, weil der Synchronisationspunkt nicht aus seinem normalen Wert heraus geändert worden ist, so dass der Unterbrechungsvorgang beendet wird.
  • Man nehme einen Fall an, in dem das USB-Frame zu einem anderen wechselt und die ersten oder führenden AC3-kodierten Daten eines anderen oder neu synchronisierten Frames von dem Vorpuffer 23P an den FIFO-Puffer 23 in ein anderes USB-Frame übertragen werden. In diesem Fall kommt es zu einer negativen Feststellung (nein) bei Schritt S1 in dem Unterbrechungsvorgang und die CPU 21 geht zu Schritt S11 über. Nach Schritt S11 wird festgestellt, ob die an den FIFO-Puffer 23 zu übertragenden Daten die ersten AC 3-kodierten Daten sind. In diesem Fall wird eine bestätigende Feststellung vorgenommen (ja) bei Schritt S11 und die CPU 21 speichert die aktuelle Anzahl von USB-Frames als die Anzahl von USB-Frames in dem unmittelbar vorangehenden, synchronisierten Frame ab, initialisiert den gezählten Wert von USB-Frames mit "1" und geht dann über zu Schritt S12. Bei Schritt S12 bestimmt die CPU 21, ob die Anzahl an USB-Frames in dem unmittelbar vorangehenden, synchronisierten Frame "31" ist oder nicht. Wird dies bei Schritt S12 verneint, geht die CPU 21 von Schritt S12 zu Schritt S13 über.
  • Zu diesem Zeitpunkt wurde der Inhalt des 32. empfangenen USB-Pakets in dem FIFO-Puffer 23 gespeichert wie in Abschnitt (c) von 4 gezeigt wird. Der Inhalt des 32. empfangenen USB-Pakets hat 184 Bytes, um die Länge der Einleitung weniger als die normale Anzahl an Bytes (das heißt, 8 Bytes weniger als die normale Anzahl). Der Synchronisationspunkt des aktuellen USB-Frames ist jedoch festgelegt durch den Vorgang bei Schritt S4, der ein USB-Frame früher ausgeführt wurde, an einer Position, die gegenüber dem normalen Synchronisationspunkt um einen Betrag gemäß der Länge der Einleitung verschoben ist, das heißt, an den Endpunkt der 184-Byte-"0"-Daten. Dann verwendet der Synchronisationsauswertungsabschnitt 204 von 1 diesen Synchronisationspunkt, um die Feststellung vorzunehmen, die auf dem obigen mathematischen Ausdruck (1) basiert. Diese Anordnung kann eine fehlerhafte Feststellung bezüglich eines Überlaufs oder Unterlaufs in dem FIFO-Puffer 23 verlässlich verhindern, auch wenn nur "0"-Daten-Bytes, um 8 Bytes weniger als normal, an das Ende des unmittelbar vorangehenden, synchronisierten Frames geschrieben wurden.
  • Nachdem die Synchronisation festgestellt oder ausgewertet wurde durch den Synchronisationsauswertungsabschnitt 204 erzeugt die CPU 21 eine Einleitung, indem sie die 192 Bytes AC 3-kodierten Daten des ehesten USB-Pakets liest, das in dem Vorpuffer 23P gespeichert ist, schreibt dann die so erzeugte Einleitung in den FIFO-Puffer 23 und stellt dann den Synchronisationspunkt an der normalen Position wieder her, indem sie den Synchronisationspunkt um 8 Bytes verschiebt (Schritt S13). Danach schreibt die CPU 21 bei Schritt S15 die ersten AC 3-kodierten Daten des synchronisierten Frames in den FIFO-Puffer 23, wobei sie der Stelle folgt, an der die Einleitung geschrieben wurde. Durch diesen Vorgang ändert sich der Datenspeicherzustand des FIFO-Puffers 23 zu einem Zustand, wie er in Abschnitt (d) von 4 gezeigt wird. Nach Beendigung des Vorgangs bei Schritt S. 15 geht die CPU 21 zu Schritt S. 20 über, wo eine negative Feststellung (nein) erfolgt und somit wird der Unterbrechungsvorgang beendet.
  • Im Folgenden werden die Operationen erklärt, die ausgeführt werden, wenn die "0"-Daten, die an den FIFO-Puffer 23 zu Beginn des Unterbrechungsvorgangs gesendet werden sollen, die letzten "0"-Daten in dem synchronisierten Frame sind und die Anzahl an USB-Frames in dem synchronisierten Frame "31" ist.
  • In diesem Fall werden die ersten AC 3-kodierten Daten des nächsten synchronisierten Frames bei Schritt S1 erfasst, bevor die letzten "0"-Daten in dem betreffenden synchronisierten Frame bei Schritt S3 erfasst sind (nämlich wenn die Anzahl an USB-Frames kleiner als "31" ist.) Somit erfolgt eine bestätigende Feststellung bei den Schritten S11 und S12, so dass die CPU 21 zu Schritt S14 übergeht. Bei Schritt S. 14 wird eine Operation ausgeführt, um sowohl "0"-Daten als auch Einleitung hinzuzufügen und auch den Synchronisationspunkt gemäß dem Zusatz zu verändern. Die Operation in Schritt S14 wird im folgenden detailliert ausgeführt mit Bezug auf 5.
  • Man nehme hier an, dass das erste USB-Paket des neuen synchronisierten Frames empfangen worden ist und in dem Vorpuffer 23P gespeichert wurde. Zu diesem Zeitpunkt ist der Inhalt von bis zu 31 empfangenen USB-Paketen des unmittelbar vorangehenden synchronisierten Frames in dem FIFO-Puffer 23 gespeichert worden, wie in Abschnitt (a) von 5 gezeigt wird. Da die CPU 21 bei Schritt S. 11 erfasst hat, dass die ersten AC 3-kodierten Daten des neuen synchronisierten Frames empfangen worden sind, erzeugt die CPU 21 eine 8-Byte-Einleitung, die den ersten AC 3-kodierten Daten (192 Bytes) zugefügt wird. Dann werden die 184 Bytes "0"-Daten und die 8-Byte-Einleitung in den FIFO-Puffer 23 geschrieben. Dadurch ändert sich der Datenspeicherzustand des FIFO-Puffers 23 zu einem Zustand, wie er in Abschnitt (b) von 5 gezeigt wird. Danach schreibt die CPU 21 die ersten AC3-kodierten Daten (192 Bytes), die aus dem Vorpuffer 23P gelesen wurden, in den FIFO-Puffer 23. Dadurch ändert sich der Datenspeicherzustand des FIFO Puffers 23 zu einem Zustand, wie er in Abschnitt (c) von 5 gezeigt wird. Der obige Datenspeichervorgang entspricht der Speicherung einer Datenmenge in einem USB-Frame, die die normale Datenmenge um 192 Bytes übertrifft, so dass die CPU 21 den Synchronisationspunkt des nächsten USB-Frames um einen Betrag verschiebt, der den 192 Bytes entspricht. Im obigen wurde der Vorgang von Schritt S14 beschrieben.
  • Nach Beendigung eines solchen Vorgangs bei Schritt S14 werden die ersten AC3-kodierten Daten des neuen synchronisierten Frames bei Schritt S. 15 von dem Vorpuffer 23P an den FIFO-Puffer 23 übermittelt, so dass sich der Datenspeicherzustand des FIFO-Puffers 23 zu einem Zustand ändert, wie er in Abschnitt (d) von 5 gezeigt wird. Nach Beendigung von Schritt S. 15 geht die CPU 21 zu Schritt S. 20 über, um festzustellen, ob der Synchronisationspunkt von dem Anfangswert abweicht. Nach Ausführung von Schritt S14 wurde der Synchronisationspunkt gegenüber dem normalen Wert um 192 Bytes nach vorne verschoben (das heißt, in Richtung der Adressen, die später zum Auslesen von Daten benützt werden). Somit erfolgt eine bestätigende Feststellung bei Schritt S20, so dass die CPU 21 eine Operation von Schritt S21 ausführt. Bei Schritt S21 nämlich ändert die CPU 21 den aktuellen Synchronisationspunkt, der von dem normalen Wert abweicht, wieder auf den normalen Wert, indem sie ihn fortschreitend nach hinten schiebt, zum Beispiel um eine vorbestimmte Anzahl von Bytes pro USB-Frame. Nach Beendigung von Schritt S21 wird der Unterbrechungsvorgang beendet.
  • Die folgenden Abschnitte beschreiben Operationen, die ausgeführt werden, wenn "0"-Daten, die an den FIFO-Puffer 23 zu Beginn eines Unterbrechungsvorganges gesendet werden sollen, die letzten "0"-Daten in dem synchronisierten Frame sind und die Anzahl an USB-Frames in dem synchronisierten Frame "33" erreicht hat.
  • In diesem Fall erfolgt eine bestätigende Feststellung bei den Schritten S1 und S2 in dem Unterbrechungsvorgang, so dass die CPU 21 zu Schritt S6 übergeht. Bei Schritt S6 verschiebt die CPU 21 den Synchronisationspunkt um einen Betrag nach hinten, der der Datenmenge der Einleitung entspricht (zum Beispiel 8 Bytes) (siehe Abschnitt (a) von 6) und verschiebt den Synchronisationspunkt um einen Betrag weiter nach hinten, der 192 Bytes entspricht (siehe Abschnitt (b) von 6). Somit wird der Unterbrechungsvorgang ohne Ausführung von Schritt S5 beendet, der zur Übertragung von "0"-Daten an den FIFO-Puffer 23 führt.
  • Wenn das USB-Frame zu dem nächsten wechselt und die ersten AC 3-kodierten Daten des synchronisierten Frames an den FIFO-Puffer 23 übermittelt werden sollen, erfolgt eine negative Feststellung bei Schritt S1 und es erfolgt eine bestätigende Feststellung bei den Schritten S11 und S12, so dass die CPU 21 zu Schritt S13 übergeht. Bei Schritt S13 erzeugt die CPU 21 eine Einleitung auf der Basis der ersten AC 3-kodierten Daten, die jetzt in dem Vorpuffer 23P gespeichert sind, und schreibt dann die so erzeugte Einleitung in den FIFO-Puffer 23. Danach übermittelt die CPU 21 bei Schritt S15 die ausgelesenen ersten AC 3-kodierten Daten an den FIFO-Puffer 23. Somit ändert sich der Datenspeicherzustand des FIFO-Puffers 23 zu einem Zustand, wie er in Abschnitt (b) von 6 gezeigt wird.
  • Nach Beendigung von Schritt S15 geht die CPU 21 zu Schritt S20 über, um zu bestimmen, ob der Synchronisationspunkt von dem normalen Wert abweicht. In diesem Fall erfolgt eine bestätigende Feststellung bei Schritt S20, so dass die CPU 21 den aktuellen Synchronisationspunkt, der von dem normalen Wert abweicht, auf den normalen Wert wiederherstellt, indem sie ihn fortschreitend nach vorne schiebt, zum Beispiel um eine vorbestimmte Anzahl von Bytes pro USB-Frame. Nach Beendigung von Schritt S21 wird der Unterbrechungsvorgang beendet.
  • Wenn die zweiten oder andere nachfolgende AC 3-kodierten Daten an den FIFO-Puffer 23 übermittelt werden sollen, geht die CPU 21 zu Schritt S. 15 über, wobei sie die Schritte S1 und S11 ausführt, wo die AC 3-kodierten Daten an den FIFO-Puffer 23 übermittelt werden. Wenn hier der Synchronisationspunkt von dem Anfangswert abweicht, wird der Synchronisationspunkt fortschreitend zu seinem Anfangswert bei Schritt S. 21 verschoben.
  • Zusammenfassend ist die vorliegende Erfindung dadurch charakterisiert, dass in einem Fall, wenn Daten, die gleichzeitig von einem Übertragungsende gesendet werden, über einen FIFO-Puffer gepuffert und dann aus dem FIFO-Puffer kollektiv pro einer vorbestimmten Periode ausgegeben werden sollen und es wahrscheinlich ist, dass die Gleichförmigkeit zwischen einer Datenschreibgeschwindigkeit in den FIFO-Puffer und einer Datenlesegeschwindigkeit aus den FIFO-Puffer verloren geht, die Erfindung einen Synchronisationspunkt manipuliert, der verwendet werden sollen, um die Synchronisierung zwischen dem Schreiben und dem Lesen von Daten auszuwerten und zu testen und somit Fehler hinsichtlich eines Unterlaufs oder Überlaufs in dem FIFO-Puffer zu verhindern. Mit solchen Anordnungen gestattet die vorliegende Erfindung eine passende synchronisierte Reproduktion von empfangenen Daten ohne negative Auswirkungen auf die Synchronisationsauswertung.

Claims (5)

  1. Eine Synchronisationssteuereinrichtung (20) zum sequenziellen Empfangen von Datenpaketen synchron zu periodischen Bustaktpulsen und zum gesammelten Ausgeben einer Vielzahl von empfangenen Datenpaketen als Datenfolge für jeden Synchronisationsrahmen, der eine längere Periodendauer besitzt als eine Periode des Bustaktpulses, wobei die Synchronisationssteuereinrichtung folgendes aufweist: First-In-First-Out- bzw. FIFO-Puffermittel (23); Schreibsteuermittel (201) für das Schreiben der empfangenen Datenpakete oder Nulldaten in die First-In-First-Out-Puffermittel synchron zu den Bustaktpulsen: Lesesteuermittel (202) für das Auslesen von noch zu lesenden Daten aus den First-In-First-Out-Puffermitteln; Synchronisationsauswertungsmittel (204) zum Steuern einer Datenauslesegeschwindigkeit der Lesesteuermittel, falls sich eine Abweichung zwischen einer Menge von noch zu lesenden Daten in den First-In-First-Out-Puffermitteln und einem Wert von Synchronisationspunktinformation außerhalb eines erlaubten Bereichs befindet, in einer Weise, dass die Abweichung in den erlaubten Bereich fällt; und Synchronisationspunktsteuermittel (205) zur Lieferung der Synchronisationspunktinformation an die Synchronisationsauswertungsmittel, wobei die Synchronisationspunktsteuermittel das erste Datenpaket aus einer Vielzahl von aufeinanderfolgenden Datenpaketen erfasst, die nacheinander, synchron zu den Bustaktpulsen ankommen, wobei, wenn eine Periode von dem detektierten ersten Datenpaket bis zu dem nächsten detektierten ersten Datenpaket kürzer geworden ist als die Periode des Synchronisationsrahmens, die Synchronisationspunktsteuermittel eine vorbestimmte Menge an Nulldaten unmittelbar vor dem nächsten detektierten ersten Datenpaket in die First-In-First-Out-Puffermittel einfügen und den Wert der Synchronisationspunktinformation um einen vorbestimmten Betrag vermindern.
  2. Synchronisationssteuereinrichtung gemäß Anspruch 1, wobei die Synchronisationspunktsteuermittel eine Steuerung durchführt, im den Wert der Synchronisationspunktinformation um einen vorbestimmten Betrag zu vermindern und dann fortschreitend die Synchronisationspunktinformation auf einen Anfangswert wiederherzustellen.
  3. Synchronisationssteuereinrichtung gemäß Anspruch 1, wobei, wenn eine Periode von dem detektierten ersten Datenpaket bis zu dem nächsten detektierten ersten Datenpaket länger geworden ist als die Periode des Synchronisationsrahmens, die Synchronisationspunktsteuermittel (205) den Wert der Synchronisationspunktinformation um einen vorbestimmten Betrag erhöhen.
  4. Synchronisationssteuereinrichtung gemäß Anspruch 3, wobei die Synchronisationspunktsteuermittel (205) eine Steuerung durchführt, um fortschreitend die Synchronisationspunktinformation auf einen Anfangswert wiederherzustellen, nachdem sie den Wert der Synchronisationspunktinformation um einen vorbestimmten Betrag erhöht hat.
  5. Synchronisationssteuereinrichtung (20) zum sequenziellen Empfangen von Datenpaketen synchron zu Bustaktpulsen und zum gesammelten Ausgeben einer Vielzahl von empfangenen Datenpaketen als Datenfolge für jeden Synchronisationsrahmen, der eine längere Periodendauer besitzt als eine Periode der Bustaktpulse, wobei die Synchronisationssteuereinrichtung folgendes ausfweist: First-In-First-Out- bzw. FIFO-Puffermittel (23); Schreibsteuermittel (201) zum Schreiben der empfangenen Datenpakete oder Nulldaten in die First-In-First-Out-Puffermittel synchron zu den Bustaktpulsen; eine Lesesteuermittel (202) für das Auslesen von noch zu lesenden Daten aus den First-In-First-Out-Puffermitteln; Synchronisationsauswertungsmittel (204) zum Steuern einer Datenauslesegeschwindigkeit der Lesesteuermittel, falls sich eine Abweichung zwischen einer Menge von noch zu lesenden Daten in den First-In-First-Out-Puffermitteln und einem Wert von Synchronisationspunktinformation außerhalb eines erlaubten Bereichs befindet, in einer Weise, dass die Abweichung in den erlaubten Bereich fällt; Einleitungserzeugungsmittel (203) zur Erzeugung einer Einleitung oder Präambel auf der Grundlage des ersten Datenpaketes aus einer Vielzahl von aufeinanderfolgenden Datenpaketen, die synchron mit den Bustaktpulsen ankommen; und Synchronisationspunktsteuermittel (205) zum Liefern der Synchronisationspunktinformation an die Synchronisationsauswertungsmittel, wobei, wenn die Synchronisationspunktsteuermittel das erste Datenpaket aus einer Vielzahl von aufeinanderfolgenden Datenpaketen, die nacheinander synchron zu den Bustaktpulsen ankommen, detektieren, die Synchronisationspunktsteuermittel den Wert der Synchronisationspunktinformation um einen Betrag entsprechend einer Datenlänge der Einleitung verschieben, um dadurch den verschobenen Wert der Synchronisationspunktinformation an die Synchronisationsauswertungsmittel zu liefern, und dann nach der Synchronisationsauswertung durch die Synchronisationsauswertungsmittel die Synchronisationspunktinformation auf einen Anfangswert wiederherstellen.
DE2001617078 2000-09-08 2001-09-07 Vorrichtung zur Überwachung der Synchronisierung Expired - Lifetime DE60117078T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000273279A JP3417392B2 (ja) 2000-09-08 2000-09-08 同期制御装置
JP2000273279 2000-09-08

Publications (2)

Publication Number Publication Date
DE60117078D1 DE60117078D1 (de) 2006-04-20
DE60117078T2 true DE60117078T2 (de) 2006-09-14

Family

ID=36120885

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2001617078 Expired - Lifetime DE60117078T2 (de) 2000-09-08 2001-09-07 Vorrichtung zur Überwachung der Synchronisierung

Country Status (1)

Country Link
DE (1) DE60117078T2 (de)

Also Published As

Publication number Publication date
DE60117078D1 (de) 2006-04-20

Similar Documents

Publication Publication Date Title
EP0429888B1 (de) Verfahren zur Übertragung eines digitalen Breitbandsignals in einer Untersystemeinheitenkette über ein Netz einer Synchron-Digital-Multiplexhierarchie
DE19512811B4 (de) Telekonferenzkonsole
DE4227451B4 (de) Datenmultiplexanordnung und Datendemultiplexanordnung
DE69836157T2 (de) Verfahren und Vorrichtung zum Demultiplexen digitaler Signalströme
EP0503732B1 (de) Übertragungsverfahren und -system für die digitale Synchron-Hierarchie
AT407319B (de) Verfahren und vorrichtung zum umwandeln virtuell verketteter datenströme in kontingent verkettete
EP0475498B1 (de) Schaltungsanordnung zur Bitratenanpassung zweier digitaler Signale
DE3333379A1 (de) Verfahren zur einstellung von kanaleinfuegungszeitsteuerungen
EP0507385A2 (de) Übertragungssystem für die synchrone digitale Hierarchie
DE4243682A1 (de)
EP0639903A2 (de) Übertragungssystem
DE19644238A1 (de) Verfahren zur Synchronisation von Übertragungen mit konstanter Bitrate in ATM-Netzen und Schaltungsanordnung zur Durchführung des Verfahrens
DE2918539C2 (de) Paket-Übertragungssystem für Ton- und Datensignale
DE2825954C2 (de) Digitale Zeitmultiplexanlage
EP0416291A2 (de) Verfahren zur Zwischenverstärkung von digitalen Signalen sowie Zwischenverstärker für digitale Signale
EP0777351B1 (de) Synchrones digitales Übertragungssystem
DE69531320T2 (de) System zur Verminderung von Jitter in einem digitalen Demultiplexer
EP0598455B1 (de) Übertragungssystem der synchronen digitalen Hierarchie
DE69727047T2 (de) Entpaketierer und rahmenausgleicher damit
DE60037393T2 (de) Nachrichtenübertragungssystem
EP0515376B1 (de) Verfahren und anordnung zur taktrückgewinnung
DE60117078T2 (de) Vorrichtung zur Überwachung der Synchronisierung
DE69825241T2 (de) Bild-Paketkommunikationssystem
DE69917639T2 (de) Anordnung zur verarbeitung von sonet- oder SDH-DS0-Rahmen zur Kanalzurordnung
EP1147632A1 (de) VERFAHREN ZUM UMSETZEN VON NxSTM-1 SIGNALEN IN STM-N SIGNALE

Legal Events

Date Code Title Description
8364 No opposition during term of opposition