-
TECHNISCHES GEBIET
-
Die
vorliegende Erfindung bezieht sich auf eine Multiplex-Vorrichtung,
welche Multimediadaten einer Mehrzahl von Typen, darunter digitalisierte
Videos, Audiodaten und Daten allgemeiner Verwendungszwecke empfängt, die
eingegebene Daten paketiert, resultierende Datenpaket multiplext
und einen resultierenden gemultiplexten Datenstrom überträgt und bezieht
sich auf eine Demultiplex-Vorrichtung zum Demultiplexen des gemultiplexten
Datenstroms.
-
STAND DER TECHNIK
-
1 zeigt
den Aufbau eines gemultiplexten Datenstroms 10, wie er
beispielsweise in der ITU-T-Empfehlung H.223 gezeigt ist. Unter
Bezugnahme auf 1 umfasst der Datenstrom eine
eingegebene Datenfolge 14 (A und B), ein Flag 11,
welches eine Trennung zwischen Datenpaketen kennzeichnet, einen
Header 12 zur Identifikation eines Datenpakettyps, zur
Fehlersteuerung und zur Anzeige der Kontinuität von Datenpaketen und Daten 13, welche
durch Auftrennen (Paketieren) der eingegebenen Datenfolge 14 in
eine geeignete Länge
erzeugt werden.
-
Nun
wird eine Beschreibung der Funktionsweise gemäß des Standes der Technik gegeben.
-
1 zeigt
ein Beispiel der Übertragung
eines gemultiplexten Datenstroms 10, welcher als ein Ergebnis
des Multiplexens der beiden eingegebenen Datenfolgen 14 erzeugt
wurde. In diesem Fall teilt die Multiplex-Vorrichtung die zwei eingegebenen Datenfolgen 14 (A
und B) um eine geeignete Länge
zum Erzeugen des Datenpakets 13 aufzuweisen. Das Flag 11 und
der Header 11, welcher den Datentyp des Datenpakets anzeigt,
werden an die Daten 13 zur Übertragung angehängt.
-
Die
Demultiplex-Vorrichtung, welche den gemultiplexten Datenstrom 10 empfängt, erfasst
das Flag 11 und analysiert den Header 12, welcher
dem Flag 11 folgt, um den Typ der Daten 13 zu
identifizieren. Die Demultiplex-Vorrichtung nimmt an, dass die Daten 13 so
lange empfangen werden, bis das nächste Flag 11 erfasst
wird. Die Daten 13 desselben Datentyps werden gesammelt,
um die ursprünglich eingegebene
Datenfolge 14 (A und B) wieder herzustellen.
-
Ein
Problem mit der Multiplex-Vorrichtung nach dem Stand der Technik
besteht darin, dass beim Auftreten einer Emulation des Flags 11 aufgrund
eines Musters, welches identisch mit dem Flag 11 ist und
welches in den Daten 13 eingemischt ist, das Muster irrtümlicherweise
als das Flag 11 identifiziert wird. Wenn dies auftritt
ist es unmöglich,
die eingegebenen Da ten 14 normal wieder herzustellen, bis das
nächste
Flag 11 korrekt erfasst wird.
-
Ein
Fehler in der Identifikation des Flags 11 tritt auch auf,
wenn ein Übertragungsfehler
in den gemultiplexten Datenstrom 10 eingeflossen ist. Als
ein Ergebnis dieses Fehlers ist es unmöglich, die eingegebene Datenfolge 14 normal
wieder herzustellen, bis das nächste
Flag 11 korrekt erfasst wird.
-
Auch
wenn das Flag 11 erfasst wird kann es sein, dass die eingegebene
Datenfolge 14 nicht normal wiederhergestellt werden kann,
wenn der Header 12 aufgrund eines Übertragungsfehlers oder Ähnlichem
nicht korrekt identifiziert wird.
-
Die
vorliegende Erfindung ist im Hinblick auf die Lösung der obigen Probleme entwickelt
worden und weist die Ziele auf, eine Multiplex-Vorrichtung zur Verfügung zu
stellen, welche einen gemultiplexten Datenstrom erzeugt, der korrekt
gedemultiplext wird, sogar wenn eine Flag-Emulation auftritt oder
wenn ein Fehler in der Übertragung
eines Flags oder eines Headers auftritt, und des Zurverfügungstellens
einer Demultiplex-Vorrichtung, welche fähig ist, den gemultiplexten
Datenstrom korrekt zu demultiplexen.
-
Die
Veröffentlichung "The SMPTE Data Coding
Prootocol and Dictionaries" by
Jim Wilkinson, SMPTE Journal, July 2000, pages 579–586, berichtet über das
Liefern von SMPTE Metadaten als Datenstrom unter Verwendung des
Schlüssel-Längen-Wert Datenkodierprotokolls
(engl. key-length-value (K-L-V) Data coding protocol).
-
OFFENBARUNG DER ERFINDUNG
-
Die
oben beschriebenen Probleme werden durch einen ersten Aspekt der
vorliegenden Erfindung gelöst,
welcher eine Multiplex-Vorrichtung zum Paketieren von eingegebenen
Daten einer Mehrzahl von Datentypen und zum Multiplexen von resultierenden
Datenpaketen zur Übertragung
zur Verfügung stellt,
worin Identifikationsinformation, welche den Datentyp anzeigt, an
jedes der Datenpakete angehängt
wird und eine Paketlänge
sich von Datentyp zu Datentyp unterscheidet und zwischen der Multiplex-Vorrichtung
und einer Demultiplex-Vorrichtung ausgehandelt wird.
-
Gemäß einem
zweiten Aspekt der Erfindung wird, wenn ein Datenpaket variabler
Länge,
welches nicht mit einer festen Länge übereinstimmt,
als ein Ergebnis einer Paketierung mit fester Länge zum Paketieren der eingegebenen
Daten in Datenpakete der festen Länge, welche von dem Datentyp
abhängt,
erzeugt wird, die Identifikationsinformation an das Datenpaket mit
variabler Länge
angehängt,
um anzuzeigen, dass die Datenpaketlänge kürzer ist als die feste Länge.
-
Gemäß einem
dritten Aspekt der Erfindung resultiert eine Paketisierung zum Paketieren
der eingegebenen Daten in Datenpakete der Datenpaketlänge, welche
von dem Datentyp abhängt,
in einer Mehrzahl von Datenpaketen variabler Länge anstelle von Datenpaketen
mit festgelegter Länge,
die Identifikationsinformation wird an die Datenpakete mit variabler
Länge angehängt, um
anzuzeigen, dass eine maximale Länge
für die
Datenpakete mit variabler Länge
definiert ist.
-
Gemäß eines
vierten Aspekts der Erfindung identifiziert die Identifikationsinformation
das Datenpaket als ein Datenpaket mit variabler Länge und zeigt
einen Bereich an, in welchem sich die Länge des Datenpaketes mit variabler
Länge befindet.
-
Gemäß eines
fünften
Aspekts der Erfindung identifiziert die Identifikationsinformation
das Datenpaket als ein Datenpaket mit variabler Länge und zeigt
einen Bereich an, in welchem sich die Länge des Datenpakets mit variabler
Länge befindet.
-
Gemäß eines
sechsten Aspekts der Erfindung ist die Anzahl von Flags, welche
eine Trennung zwischen Datenpaketen anzeigen und welche nach dem
Multiplexen des Datenpakets mit variabler Länge zur Verfügung gestellt
werden größer, als
die Anzahl von Flags, welche nach dem Datenpaket mit festgelegter
Länge zur
Verfügung
gestellt werden.
-
Gemäß eines
siebenten Aspekts der Erfindung wird die Anzahl von Kombinationen
von gesetzten Bits in der Identifikationsinformation minimiert und
ein Hamming-Abstand
zwischen den Kombinationen wird maximiert.
-
Gemäß eines
achten Aspekts der Erfindung wird jedem der gemultiplexten Datenpakete
Längeninformation
angehängt.
-
Ein
neunter Aspekt der vorliegenden Erfindung stellt eine Demultiplex-Vorrichtung
zur Verfügung
zum Empfangen von gemultiplexten Daten, in welchen Identifikationsinformation,
welche einen Datentyp anzeigt, an jedes der Datenpakete angehängt ist
und in welchen eingegebene Datenpakete einer Mehrzahl von Datentypen
und einer Länge,
welche von dem Datentyp abhängt,
gemultiplext sind, zum Wiederherstellen der individuellen Datenpaket
basierend auf einem Flag, welches eine Trennung zwischen den Paketen
anzeigt und zum Ausgeben der Datenpakete für jeden der Datentypen basierend
auf der Identifikationsinformation, worin die Datenpaketlänge jedes
Medientyps zwischen einer Multiplex-Vorrichtung und der Demultiplex-Vorrichtung
verhandelt wird.
-
Gemäß eines
zehnten Aspekts der Erfindung zeigt die Identifikationsinformation,
welche an ein Datenpaket mit variabler Länge angehängt ist, einen Bereich an,
in welchem sich die Länge
befindet, eine erwartete Position des Flags wird basierend auf der Identifikationsinformation,
welche der variablen Länge
angehängt
ist, zum Wiederherstellen eines nachfolgenden Datenpakets basierend
auf dem erfassten Flag identifiziert und die wiederhergestellten
Datenpakete für
jeden der Datentypen werden ausgegeben.
-
Gemäß eines
elften Aspekts der Erfindung wird, wenn das Datenpaket, welches
Längeninformation
angehängt
hat, empfangen wird, eine erwartete Position des Flags basierend
auf der Längeninformation
identifiziert zur Wiederherstellung von nachfolgenden Datenpaketen,
welche auf dem erfassten Flag basiert und die wiederhergestellten
Datenpakete werden für
jeden der Datentypen ausgegeben.
-
Gemäß eines
zwölften
Aspekts der Erfindung wird, wenn das Flag nicht identifiziert werden kann,
eine erwartete Position des Flags identifiziert, indem die Länge des
Datenpakets, welches dem vermissten Flag vorausgeht, basierend auf
entweder der Identifikationsinformation, welche dem vorhergehenden
Datenpaket angehängt
ist, welche die festgelegte Länge
anzeigt, oder der Längeninformation,
welche an das vorhergehende Datenpaket angehängt ist, identifiziert wird.
-
Gemäß eines
dreizehnten Aspekts der Erfindung wird, wenn das Flag nicht identifiziert
werden kann, eine erwartete Position des Flags identifiziert, indem
die Länge
des Datenpakets, welches dem vermissten vorangeht, identifiziert
wird, basierend auf der Identifikationsinformation, welche dem vorhergehenden
Datenpaket angehängt
ist und welche die variable Länge
anzeigt.
-
Gemäß eines
vierzehnten Aspekts der Erfindung, wird, wenn die Identifikationsinformation
nicht erfolgreich identifiziert werden kann, der Datentyp basierend
auf der Datenpaketlänge
abgeschätzt.
-
Gemäß eines
fünfzehnten
Aspekts der Erfindung wird, wenn ein Fehler in die Identifikationsinformation
eingeführt
ist, ein Wert, welcher nächstliegend
zu der Information im Fehler in dem Hamming-Abstand ist, als die
Identifikationsinformation identifiziert.
-
Gemäß eines
sechzehnten Aspekts der Erfindung wird, wenn die Länge eines
Datenpakets oder ein Bereich davon basierend auf entweder der Identifikationsinformation
oder der Längeninformation
identifiziert wird, keine Suche nach dem Flag durchgeführt bis
die Nachbarschaft der identifizierten Länge oder des Bereichs erreicht
ist.
-
Gemäß eines
siebzehnten Aspekts der Erfindung wird das Flag in den empfangenen
gemultiplexten Daten erfasst und die nachfolgende Identifikationsinformation
wird analysiert, um zu bestimmen, ob ein Datenpaket mit festgelegter
Länge oder
ein Datenpaket mit variabler Länge
folgt; wenn bestimmt wird, dass das Datenpaket mit festgelegter
Länge folgt
und wenn das Flag basierend auf der festgelegten Länge an einer
erwarteten Position identifiziert wird, werden die bereits empfangenen
Daten basierend auf der Identifikationsinformation wiederhergestellt,
und wenn bestimmt wird, dass das Datenpaket mit variabler Länge folgt,
und das Flag in dem erwarteten Bereich von der variablen Länge identifiziert wird,
werden die bereits empfangenen Daten basierend auf der Identifikationsinformation
wiederhergestellt.
-
Gemäß eines
achtzehnten Aspekts der Erfindung wird, wenn das Flag erfasst ist,
eine Bestimmung durchgeführt,
ob die Identifikationsinformation dem erfassten Flag folgt; wenn
bestimmt wird, dass die Identifikationsinformation folgt, wird das
erfasste Flag als ein normales Flag identifiziert, und wenn festgestellt
wird, dass die Identifikationsinformation nicht folgt, wird das
erfasste Flag nicht als ein normales Flag identifiziert.
-
Gemäß eines
neunzehnten Aspekts der Erfindung wird, wenn ein Muster, welches
nicht identisch mit dem Flag ist, an einer Position, an der das Flag
erwartet wird, detektiert wird, das Muster als ein Flag für nachfolgende
Demultiplexschritte identifiziert unter der Bedingung, dass die
nachfolgenden Daten als die Identifikationsinformation identifiziert
werden und es wird bestimmt, dass das Muster an der erwarteten Position
durch einen Fehler in dem Flagwert erzeugt wird.
-
Gemäß einem
zwanzigsten Aspekt der Erfindung werden die Daten als Daten mit
der Identifikationsinformation, welche vergleichsweise häufig auftritt,
wiederhergestellt, wenn die Identifikationsinformation nicht identifiziert
werden kann und der Datentyp nicht aus der Paketlänge abgeschätzt werden kann.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 zeigt
eine Konstruktion eines gemultiplexten Datenstroms 10 wie
er in der ITU-T-Empfehlung
H.233 gezeigt ist.
-
2 zeigt
eine Verbindung zwischen einer Multiplex-Vorrichtung und einer Demultiplex-Vorrichtung gemäß der Erfindung.
-
3 zeigt
einen gemultiplexten Datenstrom 5, welcher von einer Multiplex-Vorrichtung
A gemäß einer
ersten Ausführungsform übertragen
wurde und welcher durch eine Demultiplex-Vorrichtung B gemäß der ersten
Ausführungsform
empfangen wurde.
-
4 zeigt
einen gemultiplexten Datenstrom, welcher von einer Multiplex-Vorrichtung
A gemäß einer
zweiten Ausführungsform übertragen
wurde und welcher durch eine Demultiplex-Vorrichtung B gemäß der zweiten
Ausführungsform
empfangen wurde.
-
5 zeigt
einen gemultiplexten Datenstrom, welcher durch eine Multiplex-Vorrichtung
A gemäß einer
dritten Ausführungsform übertragen wurde,
und welcher durch eine Demultiplex-Vorrichtung B gemäß der dritten
Ausführungsform
empfangen wurde.
-
6 zeigt
Bits, welche einen Header in einem gemultiplexten Datenstrom, welcher
durch eine Multiplex-Vorrichtung A gemäß einer vierten Ausführungsform übertragen
wurde und welcher durch eine Demultiplex-Vorrichtung B gemäß der vierten
Ausführungsform
empfangen wurde, ausformen.
-
7 zeigt
einen Ablauf eines Prozesses der Datenwiederherstellung in einer
Demultiplex-Vorrichtung
B gemäß einer
fünften
Ausführungsform.
-
8 zeigt
ein Beispiel eines gemultiplexten Datenstroms, welcher durch eine
Multiplex-Vorrichtung
A gemäß einer
sechsten Ausführungsform übertragen
wurde, welcher einen Fehler, welcher darin eingeführt ist,
aufweist, und welcher durch eine Demultiplex-Vorrichtung B gemäß der sechsten Ausführungsform
empfangen wurde.
-
BESTE AUSFÜHRUNGSFORM FÜR DIE ERFINDUNG
-
Die
beste Ausführungsform
für die
Erfindung wird nun unter Bezugnahme auf die angehängten Zeichnungen
beschrieben, um eine detaillierte Erklärung der Erfindung vorzustellen.
-
Erste Ausführungsform
-
2 zeigt
eine Verbindung zwischen einer Multiplex-Vorrichtung und einer Demultiplex-Vorrichtung
gemäß der Erfindung.
Bezug nehmend auf 2 sind eine Multiplex-Vorrichtung
A und eine Demultiplex-Vorrichtung B untereinander mittels eines Netzwerks,
wie beispielsweise mittels des Internets (nicht gezeigt), verbunden.
Die Multiplex-Vorrichtung A überträgt an die
Demultiplex-Vorrichtung B einen gemultiplexten Datenstrom 5,
welcher als ein Ergebnis des Multiplexens der eingegebenen Datenfolgen a
und b erzeugt wurde. Die Demultiplex-Vorrichtung B empfängt den
gemultiplexten Datenstrom von der Multiplex-Vorrichtung A und stellt
die eingegebene Datenfolge a und b wieder her und gibt sie aus.
Die Konstruktion der Multiplex-Vorrichtung A und der Demultiplex-Vorrichtung
B ist insbesondere nicht neu, so dass die Beschreibung davon ausgelassen
wird.
-
3 zeigt
einen gemultiplexten Datenstrom 5, welcher durch die Multiplex-Vorrichtung
A gemäß der ersten
Ausführungsform übertragen
wird und durch die Demultiplex-Vorrichtung B gemäß der ersten Ausführungsform
empfangen wird.
-
Unter
Bezugnahme auf 3 umfasst der gemultiplexte
Datenstrom 5 ein Flag 1, welches eine Trennung
zwischen Datenpaketen markiert, Header 2a und 2b,
welche als Identifikationsinformation zur Anzeige eines Datentyps
a oder b der eingegebenen Datenfolge, welche gemultiplext wird,
zur Verfügung gestellt
werden und Datenpakete 3a und 3b, die durch Paketieren
der eingegebenen Datenfolge a und b erzeugt werden, um jeweils eine
geeignete Länge
aufzuweisen. Bei der Beschreibung der Ausführungsformen der vorliegenden
Erfindung wird angenommen, dass zwei Typen von Daten a und b gemultiplext
werden. Jedoch kann jede Anzahl von Datentypen gemultiplext werden.
Die eingegebenen Daten können
in Video-, Audio-, Mitteilungsdaten und Ähnliches kategorisiert werden,
indem der Medientyp als Kriterium verwendet wird. Daten desselben
Medientyps, beispielsweise Video, können darüber hinaus gemäß des Typs
der Informationsquelle, wie beispielsweise einem Encoder, gemäß des Typs
des verwendeten Codierschemas oder gemäß des Typs von Programm, einer
Kategorie oberhalb des Medientyps in der Hierarchie von Kategorien,
in welchem die Videodaten verwendet werden, kategorisiert werden.
-
Nachfolgend
wird eine Beschreibung der Arbeitsweise gemäß der ersten Ausführungsform
gegeben.
-
Wie
in 3 gezeigt, paketiert die Multiplex-Vorrichtung A, welche
die eingegebenen Daten der Datentypen a und b empfängt, die
Daten um jeweils festgelegte Längen
La und Lb zu haben und erzeugt so die Datenpakete 3a und 3b.
Das Flag 1, welches eine Trennung zwischen den Datenpaketen
und den Headern 2a und 2b, welche als Identifikationsinformation,
die die Datentypen a und b anzeigt, zur Verfügung gestellt werden, werden
an die Datenpakete 3a und 3b vor der Übertragung
angehängt.
Der resultierende gemultiplexte Datenstrom 5 ist in 3 gezeigt.
-
Die
Demultiplex-Vorrichtung B, welche den gemultiplexten Datenstrom 5 empfängt, erfasst
das Flag 1 und analysiert dann den Header 2, welcher dem
Flag 1 folgt, um den Datentyp des Datenpakets, das dem
Header 2 folgt, zu identifizieren. Die Demultiplex-Vorrichtung
B stellt das Datenpaket korrekt wieder her, indem sie annimmt, dass
dasselbe Datenpaket empfangen wird, bis das nächste Flag erfasst wird.
-
Wenn
der Header 2 aufgrund eines Übertragungsfehlers oder Ähnlichem
nicht korrekt identifiziert werden kann, kann die Demultiplex-Vorrichtung B
den Datentyp des nachfolgenden Datenpakets nicht identifizieren.
Wenn die Daten einer Länge
La vor dem nächsten
Flag 1 auftreten, wird angenommen, dass die eingegebene
Datenfolge a empfangen wird. Wenn die Datenlänge Lb vor dem nächsten Flag 1 identifiziert
wird, wird angenommen, dass die eingegebene Datenfolge b empfangen
wird.
-
Die
Demultiplex-Vorrichtung B gemäß der ersten
Ausführungsform
kann vor der Übertragung mit
der Multiplex-Vorrichtung A den Typ der eingegebenen Daten, welche
von der Multiplex-Vorrichtung A gemultiplext werden, die festgelegte
Länge,
in welche die eingegebenen Daten von jedem Datentyp aufgetrennt
werden, die Anzahl von Bits, welche das Flag 1 und den
Header 2 konstruieren, und so weiter verhandeln, so dass
die Länge
der Datenpakete 3a und 3b identifiziert wird,
indem die Header 2a und 2b in dem gemultiplexten
Datenstrom 5 identifiziert werden. Alternativ dazu kann
die Multiplex-Vorrichtung A verbundene Information durch ein Verhandeln,
welches vor dem Empfang des gemultiplexten Datenstroms 5 auftritt, übertragen,
so dass die Demultiplex-Vorrichtung B entsprechend informiert wird.
Derselbe Ansatz wie er oben beschrieben ist, wird auch in der Demultiplex-Vorrichtung
B der anderen Ausführungsformen,
welche in dem nachfolgenden Abschnitt beschrieben werden, eingesetzt.
-
Demgemäß paketiert
gemäß der ersten
Ausführungsform
die Multiplex-Vorrichtung A die eingegebenen Daten in Datenpakete
einer festgelegten Länge,
welche von dem Datentyp abhängt.
Die resultierenden Datenpakete werden zur Übertragung gemultiplext. Demgemäß ist es,
sogar wenn die Demultiplex-Vorrichtung B daran scheitert, den Header 2 korrekt
zu analysieren, möglich,
den Datentyp des Datenpakets zu identifizieren, indem auf die Datenlänge des
Datenpakets zwischen den Flags für
eine erfolgreiche Wiederherstellung der Daten Bezug genommen wird.
-
Die
Demultiplex-Vorrichtung B kann aufgrund eines Übertragungsfehlers oder ähnlichem
daran scheitern, das Flag 1 zu identifizieren. Ein Scheitern
der korrekten Identifikation des Flags 1 kann beispielsweise
auftreten, wenn das Flag aufgrund eines Übertragungsfehlers korrumpiert
ist oder wenn ein Code, der identisch mit dem Flag ist, in den übertragenen
Daten enthalten ist, d. h., wenn eine so genannte Flagemulation
auftritt. Um das Flag 1 in dieser Situation korrekt zu
identifizieren, sollten der Header 2 und die Länge auch
zusätzlich
zu dem Flag 1 selbst benutzt werden.
-
Die
Demultiplex-Vorrichtung B gemäß der ersten
Ausführungsform
ist so konfiguriert, dass, wenn das Flag 1 aufgrund eines Übertragungsfehlers oder ähnlichem
nicht richtig identifiziert werden kann, nachfolgende Demultiplexschritte
fortgeführt
werden können,
indem angenommen wird, dass das fehlende Flag 1 in einem
Abstand einer Länge
La von dem vorhergehenden Header 2 auftritt, wenn der vorangehende
Header 2, die Identifikationsinformation, die Datenfolge
a anzeigt. Gleichermaßen
wird, wenn der Header 2 die eingegebene Datenfolge b anzeigt,
zum Zwecke der nachfolgenden Demultiplexschritte angenommen, dass
das fehlende Flag 1 in einem Abstand einer Länge Lb von
dem Header 2 auftritt.
-
Demgemäß paketiert
gemäß der ersten
Ausführungsform
die Multiplex-Vorrichtung A die eingegebenen Daten in Datenpakete
einer festgelegten Länge,
die von dem Datentyp abhängt.
Die Datenpakete werden zur Übertragung
gemultiplext. Demgemäß wird,
auch wenn die Demultiplex-Vorrichtung B daran scheitert, das Flag 1 korrekt
zu erfassen, der Typ des Datenpakets identifiziert und die Datenpaketlänge wird
ebenso identifi ziert, indem auf den vorhergehenden Header 2 Bezug
genommen wird. Demgemäß ist es
möglich,
die Position, an welcher das nachfolgende Flag 1 auftritt,
für eine
erfolgreiche Datenwiederherstellung zu kennen.
-
Beim
Beschreiben der ersten Ausführungsform
wird angekommen, dass die eingegebenen Daten in Datenpakete einer
festgelegten Länge,
welche von dem Datentyp abhängt,
aufgetrennt werden. Alternativ dazu kann, wenn ein Datenpaket, welches kürzer ist
als die festgelegte Länge,
als ein Ergebnis einer erfolgreichen Paketierung der eingegebenen Daten
in Datenpakete mit festgelegter Länge erzeugt wird, das Datenpaket
als ein Datenpaket mit variabler Länge zum Demultiplexen verbleiben,
wie es in der zweiten Ausführungsform
beschrieben werden wird. Alternativ dazu kann das Datenpaket auch
in ein Datenpaket mit einer festgelegten Länge, welche durch den eingegebenen
Datentyp bestimmt ist, umgewandelt werden, indem ein Nullpaket an
ein Datenpaket, welches kürzer
als die festgelegte Länge
ist, angehängt
wird, so dass die resultierende Länge dieselbe ist wie diejenige
des anderen Datenpakets mit festgelegter Länge.
-
Zweite Ausführungsform
-
Bei
der Beschreibung der ersten Ausführungsform
wurde angenommen, dass die eingegebenen Daten in Datenpakete einer
festgelegten Länge, welche
durch den Datentyp bestimmt ist, zum Multiplexen und zum Demultiplexen
aufgetrennt werden. Nun wird eine Beschreibung der zweiten Ausführungsform
gegeben, wo die eingegebenen Daten desselben Typs zum Multiplexen
und zum Übertragen
in Datenpakete mit variabler Länge
aufgetrennt werden.
-
4 zeigt
einen gemultiplexten Datenstrom, welcher von der Multiplex-Vorrichtung
gemäß der zweiten
Ausführungsform übertragen
wird, und welcher durch die Demultiplex-Vorrichtung gemäß der zweiten
Ausführungsform
empfangen wird.
-
Unter
Bezugnahme auf 4 werden die Header 2a, 2a0 und 2b als
Identifikationsinformation zur Verfügung gestellt, welche den Datentyp
der gemultiplexten Datentypen anzeigt, und welche indirekt, durch
Ausweisen eines Bereichs, die Länge
des Datenpakets mit variabler Länge
anzeigt. Die Daten, die dem Header 2a folgen, werden als
eine Länge
La aufweisend gekennzeichnet, die Daten, die dem Header 2a0 folgen,
werden als eine Länge
La0 aufweisend gekennzeichnet und die Daten, welche dem Header 2b folgen,
werden als eine Länge
Lb aufweisend gekennzeichnet. Die anderen Aspekte der Figur sind
dieselben wie die entsprechenden Aspekte von 3, so dass
die Beschreibung davon übergangen wird.
Der Header 2a0 ist ein Header für Datenpakete mit variabler
Länge und
die Header 2a und 2b sind für Datenpakete mit festgelegter
Länge.
Durch Austausch der festgelegten Länge abhängig von dem Datentyp, zeigen
die Header 2a und 2b nicht nur den eingegebenen
Datentyp an, sondern identifizieren auch die Länge des Datenpakets mit festgelegter Länge für den entsprechenden
Datentyp.
-
Nachfolgend
wird eine Beschreibung der Arbeitsweise gemäß der zweiten Ausführungsform
gegeben.
-
Die
Multiplex-Vorrichtung A paketiert die eingegebenen Datenfolgen a
und b, damit diese jeweils die festgelegten Längen La und Lb aufweisen. Das Flag 1 und
die Header 2a und 2b, die den Datentyp des Daten pakets
anzeigen, werden an die resultierenden Datenpakete 3a und 3b zur Übertragung
angehängt.
-
Ein
Datenpaket 3a',
welches kürzer
als die festgelegte Länge
La ist, kann als ein Ergebnis eines erfolgreichen Auftrennens der
eingegebenen Datenfolge a in die Datenpakete 3a der festgelegten
Länge La
erzeugt werden. Wie in 4 gezeigt, kann das Datenpaket 3a' eine Länge La0,
welche kürzer
als die festgelegte Länge
La des normalen Datenpakets 3a ist, das als ein Ergebnis
des Paketierens der eingegebenen Daten a erzeugt wurde, aufweisen.
In diesem Fall hängt
die Multiplex-Vorrichtung A gemäß der zweiten
Ausführungsform
dem Header 2a0 das Datenpaket 3a' zum Multiplexen an, um anzuzeigen, dass
das Datenpaket 3a' von
demselben Datentyp wie das Datenpaket 3a ist und dass die
Länge 3a0 davon
sich von der Länge
La des Datenpakets 3a unterschreitet.
-
In
der Multiplex-Vorrichtung A gemäß der zweiten
Ausführungsform
wird der Header 2, der dem Datenpaket als die Identifikationsinformation
angehängt
ist, nicht nur verwendet, um den Datentyp anzuzeigen, sondern auch
dafür,
die Datenpaketlänge zu
identifizieren. Demgemäß können Datenpakete, die
durch Auftrennen der eingegebenen Daten desselben Typs erzeugt wurden,
als Datenpakete mit variabler Länge
gemultiplext werden.
-
Die
Demultiplex-Vorrichtung B gemäß der zweiten
Ausführungsform,
welche den gemultiplexten Datenstrom 5 empfängt, erfasst
das Flag 1 in dem empfangenen gemultiplexten Datenstrom 5, analysiert
den Header 2, der dem Flag 1 folgt, um den Datentyp
der nachfolgenden Daten zu identifizieren und um auch die Datenpaketlänge zu identifizieren.
-
In
einer ähnlichen
Konfiguration wie bei der ersten Ausführungsform identifiziert die
die Header 2a und 2b analysierende Demultiplex-Vorrichtung
B gemäß der zweiten
Ausführungsform
jeweils die Längen
La und Lb für
die Datentypen a und b des Paketes 3a und 3b.
Beim Analysieren des Headers 2a0 bestimmt die Demultiplex-Vorrichtung
B gemäß der zweiten
Ausführungsform,
dass das Datenpaket, das dem Header 2a0 folgt, von demselben
Datentypen ist wie das Datenpaket 3a, aber die Länge La0
aufweist, welche sich von der Länge
La des Datenpaketes 3a unterscheidet. Es ist demgemäß für die Demultiplex-Vorrichtung
B möglich
zu erwarten, dass das Datenpaket 3a' zu Ende sein wird, bevor die Länge La erreicht
wird, und das Flag 1 wird nachfolgend erfasst werden.
-
Demgemäß ist, sogar
wenn die Erfassung des Flags 1, welches dem Header 2a0 folgt,
nicht erfolgreich ist, die Demultiplex-Vorrichtung B gemäß der zweiten
Ausführungsform
fähig,
mit den Demultiplexschritten fortzufahren, indem folgend auf die
Erfassung des Headers 2a0 ein Muster, das dem Flag 1 gleicht,
vor dem Erreichen der Länge
La erfasst wird und indem das Muster als das Flag 1 interpretiert wird.
-
Die
Multiplex-Vorrichtung A gemäß der zweiten
Ausführungsform
paketiert grundsätzlich
die eingegebenen Daten desselben Datentyps in Datenpakete mit festgelegter
Länge.
Es wird sichergestellt, dass die maximale Länge des Datenpaketes mit variabler
Länge,
das nicht mit der festgelegten Länge übereinstimmt
und das am Ende der Paketierung auftritt, kürzer ist als die Länge des
Datenpaketes mit festgelegter Länge.
Darüber
hinaus wird zusätzlich zum
an das Datenpaket mit festgelegter Länge angehängten Header der Header 2a0,
der den Datenpaketen mit variabler Länge gewidmet ist und fähig ist, den
Datentyp und die Länge
zu identifizieren, an das Paket, das nicht mit der festgelegten
Länge übereinstimmt,
angehängt.
Als ein Ergebnis ermöglicht,
sogar wenn die Erfassung des Flags 1 nicht erfolgreich ist,
der Header 2a0, der dem Flag 1 unmittelbar vorausgeht,
eine erfolgreiche Wiederherstellung der Daten durch Bezeichnen eines
Bereiches, in welchem das nachfolgende Flag 1 erfasst werden
sollte, und durch Ermöglichen,
dass ein Muster, das dem Flag 1 gleicht, als das Flag verarbeitet
wird.
-
Es
gibt Fälle,
in denen die Multiplex-Vorrichtung A nicht fähig ist, die Länge der
eingegebenen Daten zu bestimmen, oder in denen die Datenlänge variabel
ist. Aus diesen Gründen
können
die eingegebenen Daten regelmäßig in Datenpakete
mit variabler Länge
zur Übertragung
aufgetrennt werden, anstatt sie in die Datenpakete mit festgelegter
Länge aufzutrennen.
In diesen Fällen
kann die maximale Länge
der Datenpakete mit variabler Länge
definiert werden. Auf diese Art und Weise kann, sogar wenn die Erfassung
des dem Header 2 nachfolgenden Flags 1 aufgrund
eines Übertragungsfehlers
oder Ähnlichem
nicht erfolgreich ist, die Demultiplex-Vorrichtung B gemäß der zweiten
Ausführungsform
weiter mit den Demultiplexschritten fortfahren, indem ein dem Flag
gleichendes Muster in einem Abstand der definierten Maximallänge von
dem Header 2 erfasst wird und indem das Muster als das
Flag interpretiert wird.
-
Mit
anderen Worten kann die maximale Länge Lmax für die Datenpakete mit variabler
Länge,
die aus den eingegebenen Daten, die durch die Multiplex-Vorrichtung
A paketiert werden, resultieren, definiert werden, so dass jedes
der resultierenden Datenpakete mit variabler Länge eine Länge aufweist, die kürzer ist
als Lmax, und derselbe Header 2 kann jedem der Datenpakete
mit variabler Länge
mit einer Länge
kürzer
als Lmax angehängt
werden. Eine minimale Länge
kann auch zusätzlich
zu der maximalen Länge
definiert werden, so dass die Länge
der Datenpakete mit variabler Länge
sich in einem Bereich zwischen der minimalen Länge und der maximalen Länge befindet.
-
Demgemäß ist gemäß der Multiplex-Vorrichtung
A der zweiten Ausführungsform
die maximale Länge
durch die Multiplex-Vorrichtung A zur gemultiplexten Übertragung
definiert für
die Datenpakete mit variabler Länge,
die aus den eingegebenen Daten desselben Datentyps, die paketiert
werden, resultieren, und der festgelegte Header wird durchweg an die
Datenpakete mit variabler Länge
angehängt.
Damit wird, sogar wenn das Flag nicht korrekt erfasst werden kann,
sichergestellt, dass ein Bereich, in dem erwartet wird, dass das
nachfolgende Flag auftritt, bekannt ist, indem der Header des unmittelbar
vorausgehenden Datenpaketes untersucht wird. Indem ein dem Flag
gleichendes Muster als das Flag verarbeitet wird, können Daten
korrekt wiederhergestellt werden.
-
In
einer alternativen Konfiguration kann die Multiplex-Vorrichtung
A ein Datenpaket mit variabler Länge
(mit der Maximallänge
La) in eine Gesamtheit von n Datenpaketen mit variabler Länge aufweisend die
Längen
La1, La2, ... und Lan aufgetrennt werden, wobei La1 gleich oder
größer als
0 und kleiner La × 1/n
ist, La2 gleich oder größer als
La × 1/n
und kleiner als La × 2/n
ist, ... Lan gleich oder größer als
La × (n – 1)/n und
kleiner als La ist. Header 2a1, 2a2, ... 2an können an
die Datenpakete der jeweiligen Länge
angehängt werden.
Damit ist der Bereich, in dem sich die Länge der Datenpakete 3a mit
variabler Länge mit
einer Länge
kleiner als die Länge
La befindet, auf eine verfeinerte Art und Weise bekannt, indem die
n Header 2a1, 2a2, ... und 2an untersucht
werden.
-
Demgemäß ist es,
sogar wenn die Demultiplex-Vorrichtung B daran scheitert, das dem
Header 2ax nachfolgende Flag 1, wobei x einen
Wert aus 1 bis N annimmt, zu erfassen, möglich, mit den Demultiplexschritten
fortzufahren, indem ein dem Flag 1 gleichendes Muster in
einem Bereich, der durch die Länge
zwischen La × (x – 1)/n und
La × x/n
definiert ist, erfasst wird und indem das Muster als das Flag 1 interpretiert
wird.
-
Indem
die Länge
des Datenpaketes mit variabler Länge
eingestuft wird, ermöglicht
die zweite Ausführungsform
dem Bereich der Länge
des Datenpaketes mit variabler Länge
identifiziert zu werden, indem der Header 2 untersucht
wird. Demgemäß ist es,
sogar wenn das Flag 1 nicht korrekt erfasst werden kann,
möglich,
mit den Demultiplexschritten fortzufahren, indem ein Bereich, in
welchem erwartet wird, dass das Flag auftritt, bestimmt wird, indem
der Header für
jede eingeteilte Länge
des Datenpaketes mit variabler Länge
untersucht wird und indem Daten, die einem Flag gleichen, als ein
Flag interpretiert werden.
-
Indem
sowohl dem Datentyp a als auch der Länge La0 des Datenpaketes 3' erlaubt wird,
mittels Untersuchung des an das Datenpaket als Identifikationsinformation
angehängten
Headers 2a0 identifiziert zu werden, ist es möglich, zwischen
Datenpaketen von unterschiedlichen Datentypen und derselben Länge zu unterscheiden.
Unter Bezugnahme auf 4 ist es beispielsweise, sogar
wenn die Länge
Lb des Datenpaketes 3b und die Länge La0 des Datenpaketes 3a' identisch sind,
möglich,
den Datentyp des Datenpaketes 3a' zu identifizieren, da der Header 2b und
der Header 2a0 sich unterscheiden.
-
Gemäß dem oben
beschriebenen Aspekt der zweiten Ausführungsform erlaubt der Header 2a0, der
dem Datenpaket als Identifikationsinformation angehängt ist,
nicht nur, den Datentyp, sondern auch die Länge La0 des Datenpaketes 3a' zu identifizieren.
Demgemäß ist es,
indem die Länge
des dem Header nachfolgenden Datenpaketes so konfiguriert wird,
dass sie sich von Header zu Header unterscheidet, möglich, sowohl
den Datentyp als auch die Datenpaketlänge zu identifizieren, indem
der Header untersucht wird, auch wenn Datenpakete mit variablen
Längen
für denselben
Datentyp verwendet werden. Darüber
hinaus kann, sogar wenn der Header aufgrund eines Übertragungsfehlers
oder Ähnlichem nicht
erkannt werden kann, der Datentyp durch Identifizierung der Länge des
Datenpaketes identifiziert werden. Unter Bezugnahme auf 4 kann
es vorkommen, dass der Header 2a0 des Datenpaketes 3a' nicht erkannt
werden kann, so dass der Datentyp des Datenpaketes 3a' nicht erkannt
werden kann, aber die Länge
La0 des Datenpaketes 3a' kann
durch Erfassen des Flags 1 identifiziert werden. In diesem
Fall wird basierend auf der Länge
La0 bestimmt, dass der Header für
das Datenpaket 3a' der
Header 2a0 ist. Demgemäß wird der
Datentyp des Datenpaketes durch das Bekanntsein der Länge des
Datenpaketes erkannt.
-
In
der oben gegebenen Beschreibung wird angenommen, dass der Header
für Datenpakete
mit variabler Länge
als Identifikationsinformation, die einen Bereich von Datenlängen ebenso
anzeigt wie den Datentyp des Datenpaketes, verwendet wird. Alternativ
dazu kann der Header unmittelbar die Länge ebenso wie den Datentyp
anzeigen. Nimmt man genauer gesagt an, dass die Multiplex-Vorrichtung
A das Datenpaket einer Maximallänge
La in variable Längen
La1, La2, ... Lan auftrennt, können
die einzelnen Header 2a1, 2a2, ... 2an,
die den Datenpaketen mit variabler Länge, die die jeweiligen Längen aufweisen,
angehängt
sind, die Länge
des Datenpaketes mit variabler Länge
unmittelbar anzeigen, so dass das Datenpaket mit variabler Länge, welches
den Header 2a1 aufweist, die Länge La1 hat, dass das Datenpaket
mit variabler Länge,
welches den Header 2a2 aufweist, die Länge La2 hat, ... und dass das
Datenpaket mit variabler Länge,
welches den Header 2an aufweist, die Länge Lan hat.
-
Damit
ist die Demultiplex-Vorrichtung B dazu fähig, die erwartete Position
des nachfolgenden Flags zu identifizieren, indem der Header 2,
der unmittelbar die Länge
des Datenpaketes mit variabler Länge
anzeigt, auf eine genauere Art und Weise untersucht wird als beim
Untersuchen des Headers 2, der einen Bereich der Länge des
Datenpaketes mit variabler Länge
anzeigt.
-
Wie
oben beschrieben ist gemäß der zweiten Ausführungsform
die Demultiplex-Vorrichtung B fähig,
die Länge
des Datenpaketes oder den Bereich davon ebenso wie den Datentyp
zu erkennen, indem Datentypinformation und Längeninformation, die in den
Header 2 eingearbeitet ist, verwendet wird. Demgemäß wird,
sogar wenn das Flag 1 nicht korrekt erfasst werden kann,
die erwartete Position des nachfolgenden Flags genau bestimmt, indem
die Länge des
Datenpaketes oder der Bereich davon erkannt wird, indem der vorhergehend
auftauchende Datenpaketheader verwendet wird. Indem Daten, die einem
Flag gleichen, als ein Flag verar beitet werden, können Daten
korrekt wiederhergestellt werden.
-
In Übereinstimmung
mit einem anderen Aspekt der zweiten Ausführungsform kann eine Suche nach
einem Flag verhindert werden, bis die Nachbarschaft der erwarteten
Position des nachfolgenden Flags 1 erreicht wird, wenn
die erwartete Position des nachfolgenden Flags 1 oder der
Bereich davon identifiziert wird, indem die Länge des Datenpaketes oder der
Bereich davon unter Verwendung des Headers 2 erkannt wird.
-
Damit
ist der Bereich für
eine Suche begrenzt, und die Last, welche für die Erfassung des oder für die Suche
nach dem Flag aufgewendet wird, wird reduziert, indem die erwartete
Position des Flags 1 oder der Bereich davon identifiziert
wird.
-
Dritte Ausführungsform
-
In
der ersten und der zweiten Ausführungsform
wird ein Flag, welches eine Trennung markiert, zwischen Datenpaketen,
die gemultiplext werden, eingefügt.
Nun wird eine Beschreibung einer Ausführungsform gegeben, in der
die Anzahl von Flags zwischen Datenpaketen, die gemultiplext werden,
gesteuert wird.
-
5 zeigt
einen gemultiplexten Datenstrom, der durch die Multiplex-Vorrichtung
A gemäß der dritten
Ausführungsform übertragen
wird und der durch die Demultiplex-Vorrichtung B gemäß der dritten
Ausführungsform
empfangen wird.
-
Unter
Bezugnahme auf 5 bezeichnen identische Bezugszeichen
wie in 4 entsprechende Teile aus 4, so dass
die zugehörige
detaillierte Beschreibung davon übergangen
wird.
-
Nun
wird eine Beschreibung der Arbeitsweise gemäß der dritten Ausführungsform
gegeben.
-
In
einer ähnlichen
Konfiguration wie bei der zweiten Ausführungsform überträgt die Multiplex-Vorrichtung
A den gemultiplexten Datenstrom 5, der die Flags 1,
die Header 2 und die Datenpakete 3 beinhaltet.
Die Demultiplex-Vorrichtung B erfasst eine Trennung zwischen den
Datenpaketen 3, indem das Flag 1 in dem empfangenen
gemultiplexten Datenstrom 5 erfasst wird.
-
Indem
Datenpakete mit variabler Länge übertragen
werden, hängt
die Multiplex-Vorrichtung A gemäß der dritten
Ausführungsform
eine größere Anzahl
von Flags unmittelbar nach dem Datenpaket mit variabler Länge als
nach dem Datenpaket mit festgelegter Länge an (in dem Fall von 5 werden zwei
Flags 1 für
das Datenpaket mit festgelegter Länge angehängt), bevor die nächsten Daten
für das Multiplexen
verarbeitet werden. 5 zeigt, dass zwei Flags 1 nach
dem Datenpaket 3a' mit
variabler Länge
angehängt
werden, da das Datenpaket 3a' mit variabler
Länge nach
dem Header 2a0 auftritt. Nachfolgend werden der nächste Header 2a und
das Datenpaket 3a übertragen.
Es können
drei oder mehr Flags anstelle von zwei Flags unmittelbar nach dem Datenpaket
mit variabler Länge
angehängt
werden, die einzige Voraussetzung dafür ist, dass die Anzahl von
Flags, die nach dem Datenpaket mit variabler Länge eingefügt werden, größer ist
als die Anzahl von Flags, welche nach dem Datenpaket mit festgelegter
Länge eingefügt werden.
Grundsätzlich
stellen mehrere Flags kein Problem für die Demul tiplex-Vorrichtung
B bei der Wiederherstellung von Daten dar.
-
Wenn
die Demultplex-Vorrichtung B den Header 2a, der den Daten
mit festgelegter Länge
vorausgeht, erfasst, ist die Demultiplex-Vorrichtung B fähig, die
erwartete Position des nachfolgenden Flags 1 genau zu identifizieren.
Wenn jedoch der Header 2a0, der dem Datenpaket 3a' mit variabler Länge vorangeht,
erfasst wird, kann es sein, dass die Demultiplex-Vorrichtung B nicht
fähig ist,
die erwartete Position des Flags 1 zu identifizieren. Genauer
gesagt kann die erwartete Position des nachfolgenden Flags 1 nicht
genau bestimmt werden, wenn es dem Header 2 erlaubt ist,
lediglich einen Bereich der Länge
des Datenpaketes mit variabler Länge
anzuzeigen, und der Bereich relativ ausgedehnt ist. Wenn die Erfassung
des Flags 1 in dieser Situation aufgrund eines Übertragungsfehlers
oder dergleichen nicht erfolgreich ist, können nachfolgende Datenpakete
nicht korrekt wiederhergestellt werden.
-
Die
Multiplex-Vorrichtung A gemäß der dritten
Ausführungsform
stellt eine Lösung
darin zur Verfügung,
dass sichergestellt wird, dass die Anzahl von Flags 1,
die nach dem Datenpaket 3a' mit
variabler Länge
angehängt
werden, größer ist
als die Anzahl von Flags, die nach dem Datenpaket mit festgelegter Länge angehängt werden.
Beispielsweise werden zwei Flags eingefügt. Demgemäß wird die Möglichkeit
der Demultiplex-Vorrichtung B gemäß der dritten Ausführungsform
zur Erfassung des Flags im Vergleich mit einem Fall, bei dem ein
Flag 1 nach dem Datenpaket 3a' mit variabler Länge angehängt wird, erhöht. Demgemäß wird auch
die Möglichkeit,
dass Daten korrekt wiederhergestellt werden, erhöht.
-
Demgemäß wird gemäß der dritten
Ausführungsform
die Möglichkeit
der Demultiplex-Vorrichtung B zum Erfassen des Flags des Datenpaketes mit
variabler Länge
gemäß der dritten
Ausführungsform
erhöht,
indem sichergestellt wird, dass eine größere Anzahl von Flags nach
dem Datenpaket mit variabler Länge
angehängt
wird als nach dem Datenpaket mit festgelegter Länge, so dass das Datenpaket mit
variabler Länge
korrekt wiederhergestellt wird.
-
Vierte Ausführungsform
-
Die
vierte Ausführungsform,
die unten beschrieben wird, betrifft eine Auswahl eines Codes für den Header 2,
der einem Fehler widersteht.
-
Eine
Multiplex-Vorrichtung A gemäß der vierten
Ausführungsform
ist gekennzeichnet durch eine Auswahl von Bits zum Aufbau von Identifikationsinformation,
welche in dem Header 2 gesetzt ist, worin sichergestellt
ist, dass die Anzahl von Kombinationen von in dem Header 2 gesetzten
Bits minimiert ist und dass ein Hammingabstand zwischen den Kombinationen
maximiert ist.
-
6 zeigt
Bits, die einen Header in einem gemultiplexten Datenstrom, der durch
die Multiplex-Vorrichtung
A gemäß der vierten
Ausführungsform übertragen
wird und der durch die Demultiplex-Vorrichtung B gemäß der vierten
Ausführungsform
empfangen wird, ausformen.
-
Genauer
gesagt zeigt 6 einen Fall, in dem der Header
drei Bits umfasst. In diesem Fall wählt die Multiplex-Vorrichtung
A (0, 0, 0) und (1, 1, 1) als drei Bits aus, die den Header konstruieren,
um zwischen zwei Typen von Headern zu unterscheiden. In diesem Fall
beträgt
der Hammingabstand 3.
-
Demgemäß ist die
Demultiplex-Vorrichtung B gemäß der vierten
Ausführungsform,
die diesen Header empfängt,
fähig zu
bestimmen, dass eine der beiden Mengen (0, 0, 0) und (1, 1, 1),
welche einen geringeren Abstand aufweist, empfangen wird, wenn ein
Ein-Bit-Fehler in dem Header vorliegt. 6 zeigt,
dass (0, 0, 1), (0, 1, 0) oder (1, 0, 0) auftretend als ein Ergebnis
eines Ein-Bit-Fehlers in (0, 0, 0) eine Abschätzung garantiert, dass der
Header (0, 0, 0) ist, und dass (0, 1, 1), (1, 0, 1) oder (1, 1,
0) auftretend als ein Ergebnis eines Ein-Bit-Fehlers in (1, 1, 1)
eine Abschätzung
garantiert, dass der Header (1, 1, 1) ist.
-
Durch
Sicherstellung, dass der Hammingabstand zwischen Bits, die tatsächlich in
der Konstruktion eines n-Bit-Headers verwendet werden, groß ist, ist
es möglich,
den Header geeignet zu identifizieren, sogar wenn ein Fehler in
dem Header vorliegt.
-
Demgemäß wird gemäß der vierten
Ausführungsform
sichergestellt, dass die Vielfalt von Headerbit-Kombinationen minimiert wird und dass
der Hammingabstand zwischen den Kombinationen groß ist. Demgemäß ist eine
genaue Headerabschätzung und
eine genaue Datenwiederherstellung möglich, sogar wenn ein Fehler
in dem Header 2 als Identifikationsinformation vorliegt.
-
Fünfte Ausführungsform
-
Die
fünfte
Ausführungsform
betrifft ein detailliertes Verfahren zur Datenwiederherstellung
in der Demultiplex-Vorrichtung B.
-
7 zeigt
ein Flussdiagramm zur Datenwiederherstellung in der Demultiplex-Vorrichtung
B gemäß der fünften Ausführungsform.
-
Zuerst
wird ein Flagerfassungsverfahren beschrieben.
-
Wenn
die Demultiplex-Vorrichtung B Daten in dem gemultiplexten Datenstrom 5 empfängt (Schritt
ST100) wird ein Flagerfassungsschritt durchgeführt, d. h. es wird bestimmt,
ob die empfangenen Daten das Flag 1 darstellen (ST110).
Wenn festgestellt wird, dass die empfangenen Daten nicht mit dem
Flag 1 identifiziert werden können ("NEIN" im Schritt
ST110), wird die Steuerung an den Schritt ST100 zurückgegeben,
wo die nächsten
Daten empfangen werden. Der Flagerfassungsschritt von 7 kann
so fortfahren, dass die erwartete Position des nachfolgenden Flags
identifiziert wird, indem die Länge
des Datenpaketes oder der Bereich davon bekannt ist, indem der Header,
der gemäß einer
Ausführungsform
aus der ersten bis vierten Ausführungsform
konstruiert wurde, verwendet wird. Wenn bestimmt wird, dass die
empfangenen Daten dem Flag 1 entsprechen und dass die Integrität des Flags 1 bestätigt ist
("JA" in Schritt ST110),
wird ein Schritt zum Analysieren des Headers 2 durchgeführt (Schritt ST120),
d. h. es wird bestimmt, ob die dem Header 2 nachfolgende
Datenfolge ein Datenpaket mit festgelegter Länge oder ein Datenpaket mit
variabler Länge ist.
Dieser Schritt wird zur Verfügung
gestellt, da nachfolgende Schritte davon abhängen, ob die nachfolgende Datenfolge
ein Datenpaket mit festgelegter Länge oder ein Datenpaket mit
variabler Länge
ist. Wenn ein unregistrierter Header in dem Headeranalyseschritt
ST120 identifiziert wird oder wenn der Header nicht korrekt erkannt
werden kann, wird bestimmt, dass das in Schritt ST110 erfasste Flag
kein normales Flag ist oder dass der in Schritt ST120 analysierte
Header kein authentischer Header ist. Die Steuerung wird dann an
Schritt ST100 zurückgegeben,
wo die Flagerfassung erneut durchgeführt wird.
-
Nun
wird eine Beschreibung eines Schrittes gegeben, der durchgeführt wird,
wenn festgestellt wird, dass die nachfolgende Datenfolge ein Datenpaket
mit festgelegter Länge
ist.
-
Wenn
als ein Ergebnis der Headeranalyse festgestellt wird, dass die nachfolgende
Datenfolge ein Datenpaket mit festgelegter Länge ist, ist die Demultiplex-Vorrichtung B fähig, die
Länge des
Datenpaketes mit festgelegter Länge
durch Analyse des Headers zu kennen, da die Länge des Datenpaketes mit festgelegter
Länge sich
von Datentyp zu Datentyp, d. h. von Header zu Header unterscheidet.
Die Demultiplex-Vorrichtung B wiederholt einen Datenempfangsschritt
ST130 ("NEIN" in Schritt ST140
=> Schritt ST130),
bis die basierend auf dem Header festgelegte Länge erreicht wird ("JA" in Schritt ST140).
-
Nachdem
die festgelegte Länge
erreicht ist, führt
die Demultiplex-Vorrichtung B einen ähnlichen Schritt wie Schritt
ST110 zum Erfassen des Flags durch. Daraufhin wird eine Bestimmung
durchgeführt,
ob das erfasste Flag normal ist (Schritt ST150). Wenn festgestellt
wird, dass das erfasste Flag nicht normal ist ("NEIN" in
Schritt ST150), führt
die Demultiplex-Vorrichtung B den Datenempfangsschritt ST100 und
den Flagerfassungsschritt ST110 durch.
-
Wenn
festgestellt wird, dass das erfasste Flag normal ist ("JA" in Schritt ST150),
unterwirft die Demultiplex-Vorrichtung B die empfangenen Datenpaketdaten
bis zur Erfassung des Flags dem Demultiplexen (Schritt ST160). Die
Steuerung wird dann an Schritt ST120 zurückgegeben, wo der Header, der dem
Flag nachfolgt, analysiert wird, so dass die nachfolgenden Schritte
wiederholt werden.
-
Nun
wird eine Beschreibung eines Verfahrens gegeben, welches durchgeführt wird,
wenn in dem Headeranalyseschritt von Schritt ST120 bestimmt wird,
dass die nachfolgende Datenfolge ein Datenpaket mit variabler Länge ist.
-
Wenn
als Ergebnis der Headeranalyse bestimmt wird, dass die nachfolgenden
Daten ein Datenpaket mit variabler Länge sind, ist die Demultiplex-Vorrichtung
B fähig,
die Länge
des Datenpaketes mit variabler Länge
oder des Bereiches davon basierend auf dem Header zu erkennen. Die
Demultiplex-Vorrichtung B wiederholt den Datenempfangsschritt ("NEIN" in Schritt ST180
=> Schritt ST170),
bis die Länge,
die durch Analyse des Headers oder des Bereiches davon bestimmt
wurde, erreicht wird (ST180 "JA").
-
Wenn
die Länge
oder der Bereich erreicht wird, während die Daten empfangen werden
("JA" in Schritt ST180),
führt die
Demultiplex-Vorrichtung B einen dem Schritt ST110 gleichenden Schritt
zur Erfassung des Flags durch. Dann wird eine Bestimmung durchgeführt, um
festzustellen, ob das erfasste Flag normal ist (Schritt ST190).
Wenn festgestellt wird, dass das er fasste Flag normal ist ("JA" in Schritt ST190),
unterwirft die Demultiplex-Vorrichtung B die empfangenen Datenpaketdaten,
die bis zur Erfassung des Flags empfangen wurden, dem Demultiplexen
(Schritt ST160). Die Steuerung wird dann an den Headeranalyseschritt
ST120 zurückgegeben,
so dass die nachfolgenden Schritte wiederholt werden.
-
Wenn
bestimmt wird, dass das erfasste Flag nicht normal ist ("NEIN" in Schritt ST190),
und wenn die Länge
des Datenpaketes mit variabler Länge durch
einen Bereich angezeigt wird, wird eine Bestimmung durchgeführt, um
festzustellen, ob die Länge
der empfangenen Daten eine Maximallänge in dem Bereich der basierend
auf dem Header bestimmten variablen Länge überschreitet (Schritt ST200).
Wenn die empfangene Länge
die maximale Länge
nicht übersteigt
("NEIN" in Schritt ST200),
wird die Steuerung an den Datenempfangsschritt ST170 gegeben, um
damit fortzufahren, das Flag zu identifizieren. Wenn die empfangene
Länge das
Maximum der variablen Länge überschreitet
("JA" in Schritt ST200),
führt die
Demultiplex-Vorrichtung B den Datenempfangsschritt ST100 und den
Flagerfassungsschritt ST110 durch. Wenn der Header die Länge des Datenpaketes
mit variabler Länge
unmittelbar anzeigt, wird der Bestimmungsschritt ST200 unnötig.
-
Demgemäß ist es
gemäß der fünften Ausführungsform
möglich,
Daten geeignet wiederherzustellen, sogar wenn ein Muster, welches
identisch mit dem Flag ist, in den Daten auftritt, indem die Flagerfassungsfähigkeiten
und die Headeranalysefähigkeiten
gemäß der ersten
bis zur vierten Ausführungsform
kombiniert werden.
-
Um
die Demultiplex-Vorrichtung B daran zu hindern, das Flag falsch
zu identifizieren, kann die Integrität des Flags erkannt werden,
indem sowohl das Flag als auch der Header untersucht wird. Beispielsweise
tritt eine falsche Identfizierung auf, wenn ein Code, welcher identisch
mit dem Flag ist, in den Daten enthalten ist. Insbesondere können Flagemulationen
in Datenpaketen mit variabler Länge
häufig
auftreten, da die Position des Flags, welches auf das Datenpaket
mit variabler Länge
folgend auftritt, urivorhersagbar sein kann. Indem sichergestellt
wird, dass lediglich begrenzte Bitmuster für einen Header, welcher dem
Flag nachfolgt, verfügbar
sind, wird bestimmt, dass eine Flagemulation auftritt, wenn Bits, die
auf keines der Muster passen, dem, was ursprünglich als ein Flag identifiziert
wurde, folgen. Damit werden Flags korrekt erfasst.
-
Demgemäß stellt
die fünfte
Ausführungsform einen
Vorteil darin zur Verfügung,
dass Daten korrekt wiederhergestellt werden, sogar wenn ein Muster, das
identisch mit dem Flag ist, in den Daten auftritt, indem die Flagerfassungs-
und die Headeranalysefähigkeiten
kombiniert werden.
-
Die
Demultiplex-Vorrichtung B kann ausgebildet sein, um eine Toleranz
für Flagfehler
und für Headerfehler
zur Verfügung
zu stellen, so dass sie nicht daran scheitert, Flags aufgrund von Übertragungsfehlern
zu erfassen. Beispielsweise kann die erwartete Position des Flags
für ein
Datenpaket basierend auf dem Header für das vorangegangene Datenpaket
identifiziert werden, so dass, sogar wenn ein Muster mit einem Ein-Bit-Fehler von dem
Flagmuster an der erwarteten Position erfasst wird, dieses Muster
korrekt als ein Flag identifiziert wird, wodurch eine fehlertolerante Flagerfassung
zur Verfügung
gestellt wird. Während
ein Fehler nicht nur in dem Flag, sondern auch in dem Header vorhanden sein
kann, kann der korrekte Header immer noch durch Abschätzung bekannt
sein, so dass eine Datenwiederherstellung korrekt durchgeführt wird,
indem die abgeschätzten
Headerbits verwendet werden.
-
Wie
oben beschrieben werden gemäß der fünften Ausführungsform
Daten korrekt wiederhergestellt, sogar wenn ein Fehler in dem Flag
oder dem Header vorhanden ist, indem den Flagerfassungsschritten
und den Headeranalyseschritten erlaubt wird fortzufahren, sogar
wenn kein genaues Bitmuster erfasst wird.
-
Sechste Ausführungsform
-
Nun
wird eine Beschreibung einer sechsten Ausführungsform gegeben, welche
auf ein Datenwiederherstellungsverfahren, das durchgeführt wird, wenn
der Header nicht korrekt erkannt werden kann, gerichtet ist.
-
In
der nachfolgenden Beschreibung wird wie in der ersten Ausführungsform
angenommen, dass ein Übertragungsfehler
oder Ähnliches
in dem Header, welcher in die Daten, die durch die Multiplex-Vorrichtung
A übertragen
werden, gemultiplext ist, vorhanden ist.
-
8 zeigt
ein Beispiel eines gemultiplexten Datenstromes, der durch die Multiplex-Vorrichtung
A gemäß der sechsten
Ausführungsform übertragen wird,
in welchem ein Fehler vorhanden ist und der durch die Demultiplex-Vorrichtung
B gemäß der sechsten
Ausführungsform
empfangen wird.
-
Genauer
gesagt wird, unter Bezugnahme auf 8, der Header 2a aufgrund
eines Übertragungsfehlers
oder Ähnliches
in einen Header 2z eines Wertes, der nicht als ein Header
erlaubt ist, umgewandelt. Als ein Ergebnis kann der Datentyp des
Datenpaketes 3a nicht identifiziert werden, so dass das
Datenpaket 3a als ein Datenpaket 3z, dessen Länge unbekannt
ist, erkannt wird.
-
Es
ist jedoch für
die Demultiplex-Vorrichtung B gemäß der sechsten Ausführungsform
möglich
zu bestimmen, dass die Länge
des Datenpaketes 3z gleich La ist, indem das Flag 1 und
der Header 2b nachfolgend zu dem Datenpaket 3z erfasst
werden. Demgemäß wird der
eingegebene Datentyp basierend auf der Paketlänge eindeutig identifiziert.
Da ein mit der Länge
La verknüpfter
Header der Header 2a sein muss, wird der Header 2z als
der Header 2a identifiziert, in welchem ein Fehler vorhanden
ist. Das Datenpaket 3z wird als das Datenpaket 3a,
das hergestellt wurde, indem die Daten a paketiert wurden, verarbeitet.
-
Indem
eine eindeutige Beziehung zwischen der Datenpaketlänge und
dem Datentyp, d. h. zwischen der Datenpaketlänge und dem Header als Identifikationsinformation,
die den Datentyp anzeigt, hergestellt wird, wird die Datenwiederherstellung
korrekt durchgeführt,
auch wenn ein Fehler in dem Header vorhanden ist, indem das einem
fehlerbehafteten Header nachfolgende Flag erfasst wird, indem die Länge des
Datenpaketes eines unbekannten Datentyps berechnet wird, indem der
Header basierend auf der berechneten Datenpaketlänge identifiziert wird und
indem der Datentyp, der durch den Header angezeigt wird, erkannt
wird.
-
Das
oben beschriebene Verfahren kann in dem Flagerfassungsverfahren
und dem Headeranalyseverfahren, welche in der fünften Ausführungsform beschrieben wurden,
eingesetzt werden. Damit werden Daten korrekt wiederhergestellt,
sogar wenn ein Übertragungsfehler
in das Flag oder den Header eingeführt wird.
-
Die
Demultiplex-Vorrichtung B gemäß der sechsten
Ausführungsform
kann so konfiguriert sein, dass, wenn der Header basierend auf der
Länge durch
Verwendung des oben beschriebenen Verfahrens nicht identifiziert
werden kann, die bereits mittels des Demultiplexens wiederaufgefundenen
Daten als Daten eines Typs, der relativ häufig auftritt, verarbeitet
werden können.
-
Da
beispielsweise Videodaten in der audiovisuellen Kommunikation überreich
vorhanden sind, ist die Wahrscheinlichkeit einer korrekten Wiederherstellung
hoch, indem Daten eines unbekannten Datentyps als Videodaten mittels
Demultiplexens wiederhergestellt werden. Mit anderen Worten werden Daten,
in denen der Datentyp aufgrund einer Unfähigkeit zur Analyse des Headers
unbekannt ist, am korrektesten als Daten, die häufig auftreten, wiederhergestellt.
-
Gemäß der oben
beschriebenen sechsten Ausführungsform
wird ein Vorteil darin realisiert, dass es möglich ist, die Wahrscheinlichkeit,
dass Daten eines unbekannten Datentyps korrekt wiederhergestellt
werden, zu erhöhen,
indem die unbekannten Daten als Daten eines Typs, der häufig auftritt,
wiederaufgefunden werden.
-
Beim
vorstehenden Beschreiben der Ausführungsformen 1–6 wurden
die einzelnen Eigenschaften so hervorgehoben, dass die Beschreibung
einer einzelnen Ausfüh rungsform
nicht in die Beschreibung einer anderen Ausführungsform einbezogen wurde.
Jedoch sind beliebige Kombinationen von Ausführungsformen möglich, ohne
einen Widerspruch zwischen den Ausführungsformen zu erzeugen. Beispielsweise
kann die dritte Ausführungsform, in
welcher die Anzahl von Flags, die nach dem Datenpaket mit variabler
Länge zur
Verfügung
gestellt werden, größer ist
als diejenige der Flags, die nach dem Datenpaket mit festgelegter
Länge zur
Verfügung
gestellt werden, geeignet in Kombination mit der zweiten Ausführungsform
und den vierten bis sechsten Ausführungsformen eingesetzt werden. Damit
ist es nicht nur möglich,
die Länge
eines Datenpaketes mit variabler Länge oder eines Bereichs davon
aus dem Header 2 zu identifizieren, sondern auch, sicherzustellen,
dass die Flags 1 effizienter erfasst werden, da eine relativ
große
Anzahl von ihnen nach dem Datenpaket mit variabler Länge zur
Verfügung
gestellt werden. Die vierte Ausführungsform,
in der der Header 2 unter Verwendung von Codes, die resistent
gegen einen Fehler sind, codiert wird, kann in Kombination mit den
ersten bis dritten Ausführungsformen
und der fünften
und der sechsten Ausführungsform
geeignet eingesetzt werden. Damit ist eine genaue Headerabschätzung und
Datenwiederherstellung für
ein Datenpaket mit variabler Länge ebenso
möglich
wie für
ein Datenpaket mit festgelegter Länge, sogar wenn ein Fehler
in den Header 2 als Identifikationsinformation eingeführt ist.
Andere Kombinationen von Ausführungsformen
sind natürlich möglich.
-
INDUSTRIELLE ANWENDBARKEIT
-
Wie
oben beschrieben werden die Multiplex-Vorrichtung und die Demultiplex-Vorrichtung
gemäß der Erfindung
geeignet verwendet, um Multimediadaten einer Mehrzahl von Datentypen
wie beispielsweise digitalisierte Videodaten, Audiodaten und Daten
für allgemeine
Zwecke zu empfangen, die eingegebenen Daten zu paketieren, die Datenpakete zu
multiplexen und einen daraus hervorgehenden gemultiplexten Datenstrom
zu übertragen,
so dass der gemultiplexte Datenstrom korrekt gedemultiplext wird,
auch wenn eine Flagemulation oder ein Fehler in einem Flag oder
einem Header auftritt.