-
Technischer Bereich
-
Die
vorliegende Erfindung bezieht sich auf eine Datenpaketzugriffssteuerungsvorrichtung,
welche mit einem Transportstrom versorgt wird, der aus einer Vielzahl
von Datenpaketbereichen zusammengesetzt ist, die Vorrichtungen zur
Echtzeitbestimmung, ob jedes Datenpaket Gegenstand eines vorgegebenen
Prozesses ist (Zieldaten) und, wenn die Daten die Zieldaten sind,
das Ermöglichen
des vorgegebenen Prozesses. Genauer ist die Datenpaketzugriffssteuerungsvorrichtung
in einen Transportstromdecoder eingebaut, um es verschiedenen Anwendungen
zu ermöglichen,
ihre entsprechenden Prozesse an jedem Datenpaket auszuführen.
-
Stand der Technik
-
Das
Verarbeiten und Editieren digitaler Inhalte für Hilfsanwendungen ist nur
durch Inhaltserzeuger- oder -verteiler, wie z.B. Sendestationen,
möglich gewesen.
Durch Fortschritte in neuen digitalen Technologien ändert sich
die Situation jedoch zunehmend. In den letzten Jahren hat die Qualität und Quantität digitaler
Verteilungssysteme zugenommen, was wesentliche Fortschritte im Transportstrom
zum Verteilen von digitalen Inhalten, Verbesserungen in der Leistung
der Hardware, welche für
den Anwenderbetrieb erforderlich ist, und eine Reduzierung der Betriebskosten
mit sich gebracht hat. Als Ergebnis wird eine Verarbeitung, die
nur für
Sendestationen, etc. verfügbar
war, sowie Editieren eines Transportstroms und den Transportstrom
bildender Datenpaketen, schrittweise für Anwender verfügbar.
-
Um
es dem Anwender zu ermöglichen,
einen gewünschten
Prozess an jedem digitalen Inhalt auszuführen, ist ein Mittel erforderlich,
welches in der Lage ist, Datenpakete auf Echtzeitbasis auszuwählen, die
einen sequenziell gelieferten Transportstrom bilden und den Zugriff
von Verarbeitungsmitteln erlauben, um den spezifischen Prozess am
ausgewählten
Datenpaket auszuführen.
-
Beispielhafte
Mittel und Vorrichtungen, welche in der Lage sind, entsprechende
einen Transportstrom bildende Datenpakete wahlweise zu extrahieren,
sind in 34 dargestellt. Ein Transportstromdecoder,
welcher in dieser Zeichnung gezeigt ist, extrahiert nur eine Datenpaketgruppe,
welche ein spezifisches Programm aus einem einzelnen Transportstrom
bildet, welcher aus einer Vielzahl von Programmen bildenden Datenpaketsträngen zusammengesetzt
ist, und gibt die extrahierte Datenpaketgruppe an einem AV Decoder
aus. Mit anderen Worten ist der Transportstromdecoder, wie später beschrieben,
mit einem Mittel versehen, um selektiv spezifische Datenpakete aus
einer Vielzahl von Datenpaketen zu extrahieren, die einen einzelnen Transportstrom
bilden.
-
Der
Transportstromdecoder TDAc enthält eine
Stromeingabeeinheit 500 zum Empfangen eines von einer extern
gelieferten Transportstromquelle (nicht gezeigt) gelieferten Transportstroms
TS, einen Programmpaketfilter PCF, einen Hauptspeichercontroller 700C,
einen Hauptspeicher 900C, und einen TD Controller TDCc
zum Steuern des gesamten Betriebs des Transportstromdecoders TDAc.
-
Vor
der Beschreibung dieser Komponenten wird der einzelne Transportstrom
TS, der an den Transportstromdecoder TDAc geliefert wird, mit Bezug
auf 7 beschrieben. Der Transportstrom TS wird aus
einer Vielzahl von Datenpaketen P gebildet, wobei jedes in 7 durch
ein Rechteck dargestellt ist. Jedes Datenpaket ist zur Identifizierung
mit einer eindeutigen Paketidentifikation (Paket ID) PID versehen.
-
Diese
Datenpakete sind in drei Typen gruppiert: Programminhaltsdatenpakete
Pc (im Folgenden als PC Datenpakete bezeichnet), welche eine Komponente
von α-Typen
von Programminhalten sind (α ist
eine ganze Zahl, welche nicht kleiner als 2 ist); eine Programmabbildungstabelle
PMT, welche die Paketidentifikationen PID der Vielzahl von PC Datenpaketen
Pc für
die entsprechenden Programme zum Verwalten der PC Datenpakete Pc
enthält;
und eine Programmzuordnungstabelle PAT, welche die Paketidentifikationen
PID der Programmabbildungstabellen PMT für die entsprechenden Programme zum
Verwalten der Programminhalte enthält.
-
Die
Programmabbildungstabelle PAT und die Programmzuordnungstabelle
PMT, welche Information zum Verwalten der PC Datenpakete Pc enthalten, werden
insgesamt Verwaltungsdatenpaket PcA genannt. In 7 ist
eine Beispielstruktur des Transportstroms TS gezeigt, wenn zumindest
drei verschiedene Programme 1, 2 und 3 zur Verfügung gestellt sind (α ≥ 3).
-
Die
PC Datenpakete Pc101_1, Pc101_2, ... sind Videodaten für das Programm
1 und die PC Datenpakete Pc111_1, Pc111_2, ... sind Audiodaten für das Programm
1. Ähnlich
sind die PC Datenpakete Pc201_1, Pc201_2, ... Videodaten für das Programm 2,
und die PC Datenpakete Pc211_1, Pc211_2, ... sind Audiodaten für das Programm
2.
-
Des
Weiteren sind die PC Datenpakete Pc301_1, Pc301_2, ... Videodaten
für das
Programm 3 und die PC Datenpakete Pc311_1, Pc311_2, ... sind Audiodaten
für das
Programm 3. Die PC Datenpakete, welche Videodaten enthalten, werden
generell Programminhaltsvideodatenpakete PcV genannt (im Folgenden
Videodatenpakete), und die PC Datenpakete, welche Audiodaten enthal ten,
werden generell Programminhaltaudiodatenpakete PcS genannt (im Folgenden
Audiodatenpakete).
-
Die
Anzahl der verteilten Programme (α)
ist nicht auf drei beschränkt.
Der Transportstrom TS enthält
so viele PC Datenpakete Pc wie erforderlich, entsprechend der Anzahl
der verteilten Programme. Des Weiteren können die PC Datenpakete Pc
in Abhängigkeit
vom Programm andere Informationen als Audio enthalten (z.B. Teletextinformation).
-
Genauer
ist der Transportstrom TS so strukturiert, dass die Programmzuordnungstabelle
PAT und die Programmabbildungstabellen PMT unter den PC Datenpaketen
Pc mit einer vom Übertragungspfad
und den Verarbeitungsfaktoren bestimmten Häufigkeit angeordnet sind. In 7 sind
die Programmabbildungstabellen PMT1, PMT2 und PMT3 und die Programmzuordnungstabelle
PAT vor der Vielzahl von PC Datenpaketen Pc101_1, Pc111_1, Pc201_1,
Pc211_1, Pc_301 und Pc311_1 angeordnet, welche die drei Programmtypen
1, 2 und 3 bilden. Die Programmabbildungstabellen PMT1 PMT2 und
PMT3 beschreiben jeweils die Paketidentifikationen PID der PC Datenpakete
Pc für
die jeweiligen Programme. Die Programmzuordnungstabelle PAT zeigt
eine Übereinstimmung
unter den Paketidentifikationen PID dieser Programmabbildungstabellen PMTs
an.
-
Festzuhalten
ist, dass in der Beschreibung die gleichen Komponenten oder Signale
mit einem gemeinsamen Bezugszeichen oder einer Bezugszahl zur Identifikation
versehen sind. Um die entsprechenden Komponenten oder Signale zu
identifizieren, ist das Bezugszeichen oder die Bezugszahl des Weiteren
mit einem numerischen oder alphabetischen Vorzeichen versehen. Genauer
ist das PC Datenpaket Pc101 ein gemeinsamer Name für PC Datenpakete
Pc101_1, Pc101_2, Pc101_β (β ist eine beliebige
natürliche
Zahl). Das gleiche gilt für
die PC Datenpakete Pc111, Pc201, Pc211, Pc301 und Pc401.
-
Die
Programmzuordnungstabelle PAT beschreibt die Paketidentifikationen
PID der Programmabbildungstabellen PMT für alle Programme, die in dem
Transportstrom TS enthalten sind. Das heißt, die Paketidentifikation
PID der Programmabbildungstabelle PMT für das Programm 1 ist 100, diejenige für das Programm
2 ist 200, diejenige für
das Programm 3 ist 300, ... und diejenige für das Programm α ist α00.
-
Des
Weiteren wird vor den PC Datenpaketen Pc101_2, Pc111_2, Pc201_2,
Pc211_2, Pc301_2 und Pc311_2 das aus den Programmabbildungstabellen
PMT1 PMT2, PMT3 und der Programmzuordnungstabelle PAT zusammengesetzte
Verwaltungsdatenpaket angeordnet. Anzumerken ist, dass, wenn der
Transportstrom TS vier oder mehr Programme enthält (α ≥ 4), obwohl nicht gezeigt, das
Verwaltungsdatenpaket PcA des Weiteren Programmabbildungstabellen
2MT4 bis PMTα enthält, und
der Transportstrom TS des Weiteren PC Datenpakete Pc enthält, welche
zu diesen Programmen korrespondieren.
-
Wie
häufig
das Verwaltungsdatenpaket PcA auftritt, ist in Abhängigkeit
vom Typ der Datenpakete P sehr unterschiedlich, welche im Transportstrom
TS enthalten sind. Des Weiteren muss das Verwaltungsdatenpaket PcA
nicht, wie üblicherweise
in 7 dargestellt, als erstes einer Ansammlung von
Datenpaketen P platziert werden. In einigen Fällen können die Programmzuordnungstabelle
PAT und die Programmabbildungstabellen PMT, welche das Verwaltungsdatenpaket
bilden, und die PC Datenpakete Pc einige andere eingefügte Datenpakete
P aufweisen.
-
Mit
Rückbezug
auf 34 werden die Komponenten des
Transportstromdecoders TDAc beschrieben. Die Stromeingabeeinheit 500C enthält zeitweise
in einem darin enthaltenen Eingabepuffer den Transportstrom TS,
der von einer externen Transportstromquelle geliefert wird (nicht
gezeigt), und überträgt den Transportstrom
TS durch eine Übertragungseinheit
TSd an den Programmpaketfilter PCF.
-
Der
Programmpaketfilter PCF enthält
zumindest drei Paketfilter: einen Paketfilter 1100_00,
um wahlweise nur das Verwaltungsdatenpaket PcA auszugeben; einen
Paketfilter 1100_01, um wahlweise nur die Videodatenpakete
PcV eines spezifischen Programms auszugeben; und einen Paketfilter 1100_02,
um wahlweise nur die Audiodatenpakete PcS des spezifischen Programms
auszugeben. Diese Paketfilter geben basierend auf den Paketidentifikationen
PID, welche den betreffenden PC Datenpaketen Pc geliefert werden,
die durch die Übertragungseinheit
TSd von der Stromeingabeeinheit 500C übertragen werden, Daten aus.
Hier ist anzumerken, dass das Verwaltungsdatenpaket PcA und die
PC Datenpakete Pc (PcV, PcS), die ein spezifisches Programm bilden
und aus den gesamten Datenpaketen P extrahiert werden, welche in
dem eingehenden Transportstrom TS enthalten sind, insgesamt als
einzelner Programmdatenpaketstrang Pes bezeichnet werden.
-
Wie
oben angeführt,
wenn drei Paketfiltertypen, welche in den Programmpaketfiltern PCF
enthalten sind, jeweils zum Extrahieren des Verwaltungsdatenpakets
PcA, der Videodatenpakete PcV und der Audiodatenpakete PcS identifiziert
werden müssen,
werden sie als der Paketverwaltungsfilter 1100_00, der
Videopaketfilter 1100_01 und der Audiopaketfilter 1100_02 bezeichnet.
Wenn sie nicht besonders identifiziert werden müssen, werden sie einfach als
der Paketfilter 1100 bezeichnet.
-
Die
Programmpaketfilter PCF werden gemäß der Anzahl von Inhaltstypen γ (γ ist eine
natürliche
Zahl) geliefert, welche ein zu extrahierendes Programm bilden. Das
heißt,
basierend auf der Anzahl von Typen der zu extrahierenden PC Datenpakete Pc,
werden Datenpaketfilter 1100_01 bis 1100_0γ und
ein Paketverwaltungsfilter 1100_00 zum Extrahieren des
Verwaltungs datenpakets PcA aus dem Transportstrom TS geliefert.
Kurz gesagt, werden γ + 1
Paketfilter 1100_00 bis 1100_0γ geliefert. Zur Vereinfachung
der Beschreibung wollen wir hier annehmen, dass nur drei Paketfiltertypen
geliefert werden: der Paketverwaltungsfilter 1100_00, der
Videopaketfilter 1100_01 und der Audiopaketfilter 1100_02.
-
Von
den PC Datenpaketen Pc, welche eine Vielzahl von Programmen bilden,
die in dem Transportstrom TS enthalten sind, werden die Verwaltungsdatenpakete
PcA (PAT, PMT1, PMT2 und PMT3), und Videodatenpakete PcV (Pc101_1, Pc101_2,
...) und Audiodatenpakete PcS (Pc111_1, Pc111_2, ...), welche das
Programm 1 bilden, jeweils durch den Paketverwaltungsfilter 1100_00,
den Videopaketfilter 1100_01 und den Audiopaketfilter 1100_02 in
der Reihenfolge, in der sie bei dem Transportstromdecoder TDAc angekommen
sind, sequenziell extrahiert.
-
Die
extrahierte Programmzuordnungstabelle PAT, die Programmabbildungstabellen
PMT1, PMT2 und PMT3, und die Datenpakete Pc101_1, Pc111_1, Pc101_2,
Pc111_2 ... werden sequenziell am Hauptspeichercontroller 700C als
ein ausgewählter
einzelner Programmdatenpaketstrang Pes in der Reihenfolge ausgegeben,
in der sie beim Transportstromdecoder TDAc angekommen sind.
-
Als
solches kann der Programmpaketfilter PCF die Datenpakete des eingehenden
Transportstroms TS individuell auf Echtzeitbasis für die selektive
Extrahierung identifizieren.
-
Der
Hauptspeichercontroller 700C hält zeitweise durch die Übertragungseinheit
TSd den von dem Programmpaketfilter PCF gelieferten ausgewählten einzelnen
Programmdatenpaketstrang Pes. Der Hauptspeichercontroller 700C steuert
auch den Hauptspeicher 900C, so dass das Verwaltungsdatenpaket
PcA und der ausgewählte
einzelne Programmdatenpaketstrang Pes in vorgege benen Bereichen gespeichert
werden, wie das Verwaltungsdatenpaket PcA, ein einzelner Programmvideoinhaltsdatenpaketstrang
PssV (im Folgenden SP Videodatenpaketstrang) und ein einzelner Programmaudioinhaltsdatenpaketstrang
PssS (im Folgenden SP Audiodatenpaketstrang) PssS.
-
Mit
anderen Worten identifiziert der Hauptspeicher 900C jedes
im ausgewählten
einzelnen Programmdatenpaketstrang Pes enthaltene Datenpaket P,
das vom Programmpaketfilter PCF durch den Hauptspeichercontroller 700C entweder
als Verwaltungsdatenpaket PcA, Videodatenpaket PcV oder Audiodatenpaket
PcS kommt. Das als Verwaltungsdatenpaket PcA identifizierte Datenpaket
P wird im Hauptspeicher 900C als das Verwaltungsdatenpaket PcA
gespeichert, das als Videodatenpaket PcV identifizierte wird darin
als der SP Videodatenpaketstrang PssV gespeichert, das als Audiodatenpaket
PcV identifizierte wird darin als der SP Audiodatenpaketstrang PssS
gespeichert.
-
Des
Weiteren liest der Hauptspeichercontroller 700C den SP
Videodatenpaketstrang PssV und den SP Audiodatenpaketstrang PssS
aus dem Hauptspeicher 900C, hält sie zeitweise durch die Übertragungseinheit
TSd, und gibt sie dann als einen einzelnen Programmdatenpaketstrang
Pss an eine von einem AV Decoder 2000C typisierte externe
Vorrichtung aus.
-
Der
Transportstromdecoder TDAc erzeugt ein Zustandssignal SrWc, welches
den Betriebszustand jeder der oben beschriebenen Komponenten zur
Ausgabe an den TD Controller TDCc anzeigt. Basierend auf dem Zustandssignal
SrWc erzeugt der TD Controller TDCc ein Steuersignal ScWc zur Steuerung
des Betriebs jeder Komponente im Transportstromdecoder TDAc zur
Ausgabe an den Transportstromdecoder TDAc.
-
So
gesehen steuert der TD Controller TDCc den gesamten Betrieb des
Transportstromdecoders TDAc zum sequenziellen Ex trahieren lediglich
der PC Datenpakete Pc eines einzelnen Programms aus dem einzelnen
Transportstrom TS, welcher an den Transportstromdecoder in der Reihenfolge
TDAc geliefert wird, in welcher sie angekommen sind, und zum Ausgeben
der extrahierten Daten als einzelnen Programmdatenpaketstrang Pss
an die externe Vorrichtung, wie den AV Decoder 2000C. Der
AV Decoder 2000C decodiert die im eingegebenen einzelnen Programmdatenpaketstrang
Pss enthaltenen Videodatenpakete PcV und Audiodatenpakete PcS sequenziell,
um ein Video-/Audiosignal Sav zur Betrachtung durch Anwender zu
erzeugen.
-
In 35 ist ein Beispiel des ausgewählten einzelnen Programmdatenstrangs
Pes, welcher aus den PC Datenpaketen Pc (den Videodatenpaketen PcV
und den Audiodatenpaketen PcS) gebildet ist, und des Verwaltungsdatenpakets
PcA (PAT und PMT), welches aus drei Programmen extrahiert wird, die
in dem einzeln Transportstrom TS mit der in 7 gezeigten
Paketstruktur enthalten sind, gezeigt. In diesem Beispiel werden
nur die PC Datenpakete Pc101_1, Pc111_1, Pc101_2, Pc111_2, ... für das Programm
1 und ihre Programmzuordnungstabellen PAT und die Programmverwaltungstabelle PMT1
als der extrahierte Datenpaketstrang Pse extrahiert, und vom Programmpaketfilter
PCF an den Hauptspeichercontroller 700C ausgegeben.
-
In
einigen Fällen
können
die Programmverwaltungstabellen für die Programme, die der Anwender
nicht spezifiziert hat, extrahiert werden, wie z.B. die Programmverwaltungstabellen
PMT2 und PMT3 des Programms 2 und des Programms 3. So gesehen werden
von der Vielzahl der Datenpakete P, die auf dem Eingabetransportstrom
TS sequenziell angeordnet sind, nur die Datenpakete P, die dem spezifizierten
Programm entsprechen, diskret extrahiert.
-
In 36 ist ein Beispiel gezeigt, wie die PC Datenpakete
Pc, die in dem ausgewählten
einzelnen Programmdatenpaket strang Pes enthalten sind, im Hauptspeicher 900C gespeichert
werden. Der Hauptspeicher 900C hat einen Videopaketspeicherbereich A
(Video) zum Speichern von PC Datenpaketen (Videodatenpakete PcV)
Pc101_1, Pc101_2, Pc101_3, Pc101_4, ... und einen Audiopaketspeicherbereich
A (Audio) zum Speichern von PC Datenpaketen (Audiodatenpakete PcS)
Pc111_1, Pc111_2, Pc111_3, Pc111_4, .... Des Weiteren hat der Hauptspeicher 900C für das Verwaltungsdatenpaket
PcA einen PAT Speicherbereich A (PAT) zum Speichern von Information über die
Programmzuordnungstabelle PAT und einen PMT Speicherbereich A (PMTα) zum Speichern
von Information über
die Programmverwaltungstabellen PMT. Spezifisch ist die Programmverwaltungstabelle
PMT1 des Programms 1 in einem PMT Speicherbereich A(PMT1) gespeichert.
-
Die
PC Datenpakete (Videodatenpakete PcV) Pc101_1, Pc101_2, Pc101_3,
Pc101_4, ... sind sequenziell im Videopaketspeicherbereich A (Video) gespeichert,
um einen SP Videodatenpaketstrang PssV zu bilden. Ähnlich sind
die PC Datenpakete Pc (Audiodatenpakete PcS) Pc111_1, Pc111_2, Pc111_3,
Pc111_4, ... sequenziell im Audiopaketspeicherbereich A (Audio)
gespeichert, um den SP Audiodatenpaketstrang PssS zu bilden.
-
Der
SP Videodatenpaketstrang PssV und der SP Audiodatenpaketstrang PssS,
die so im Hauptspeicher 900C gebildet werden, werden von dem
Hauptspeichercontroller 700C als ein SP Datenpaketstrang
Pss gelesen, wie in 37 beispielhaft dargestellt,
und dann an den AV Decoder 2000C ausgegeben.
-
Der
oben gebildete konventionelle Transportstromdecoder arbeitet ausreichend
zur Reproduktion nur eines einzelnen Programms aus einem einzelnen
Eingabetransportstrom und auch bei dessen Darstellung für Anwender.
Dies ist der Fall, da der AV Decoder sequenziell nur die Vielzahl
von Datenpaketen P dekodieren muss, die im SP Datenpaketstrang Pss
enthalten sind, der das einzelne Programm in der Reihenfolge bildet,
in welcher diese eintrafen. Jedoch kann der obige Transportstromdecoder
die folgenden drei Reproduktionstypen nicht unterstützen, ganz
gleich ob das reproduzierte Programm Anwendern präsentiert
wird.
-
(Reproduktionstyp 1)
-
Nur
ein einzelner Transportstrom ist zur Eingabe zugelassen, das heißt, nur
ein einzelner Stromeingabeabschnitt wird zur Verfügung gestellt. Aus
dem Transportstrom soll eine Vielzahl von Programmen reproduziert
werden.
-
(Reproduktionstyp 2)
-
Eine
Vielzahl von Transportströmen
ist zur Eingabe zugelassen, das heißt, eine Vielzahl von Stromeingabeabschnitten
wird zur Verfügung
gestellt. Dieser Reproduktionstyp wird des Weiteren in die folgenden
sechs Typen 2-1 bis 2-6 klassifiziert.
-
- Typ 2-1: nur ein einzelnes Programm soll von jedem Transportstrom
reproduziert werden.
- Typ 2-2: eine Vielzahl von Programmen soll simultan von jedem
der Transportströme
reproduziert werden.
- Typ 2-3: nur ein einzelnes Programm soll von einem spezifischen
der Transportströme
reproduziert werden.
- Typ 2-4: eine Vielzahl von Programmen soll simultan von einem
spezifischen der Transportströme
reproduziert werden.
- Typ 2-5: eine Vielzahl von Programmen soll simultan von mehreren
spezifischen der Transportströme
reproduziert werden.
- Typ 2-6: nur ein einzelnes Programm soll von mehreren spezifischen
der Transportströme
reproduziert werden.
-
(Reproduktionstyp 3)
-
Eine
Datenverarbeitung wird von einer Einheit der Datenpakete P (Pc,
PAT, PMT) ausgeführt, die
im ausgewählten
einzelnen Programmdatenpaketstrang Pes enthalten sind, der vom Transportstrom
extrahiert wird. Eine solche Datenverarbeitung beinhaltet das Verarbeiten
der PC Datenpakete Pc, der Programmzuordnungstabelle PAT oder der
Programmabbildungsdaten PMT selbst und führt verschiedene Prozesse an
den entsprechenden Datenpaketen P aus.
-
Im
Folgenden werden im Detail Gründe
beschrieben, warum der konventionelle Transportstromdecoder nicht
auf die obigen Reproduktionstypen angewendet werden kann.
-
Beim
Reproduktionstyp 1 muss dem Anwender aus einer Vielzahl von simultan
vom einzelnen Transportstrom TS reproduzierten Programmen ein gewünschtes
spezifisches Programm auf eine vom Anwender gewünschte Weise dargestellt werden.
In diesem Fall muss es identifizierbar und steuerbar sein, welche
PC Datenpakete Pc, die in dem ausgewählten einzelnen Programmdatenpaketstrang
Pes oder dem einzelnen Programmdatenpaketstrang PsS eingemischt
sind, zu welchem Programm korrespondieren, und die Identifikations-/Verwaltungsergebnisse
können
so präsentiert
werden, dass sie als Information brauchbar sind.
-
Wie
oben dargestellt, kann der konventionelle Transportstromdecoder
die Programmabbildungstabellen PMT der Vielzahl der Programme extrahieren.
Damit ist es möglich,
zu wissen, aus welchem Programm der einzelne Transportstrom TS welche PC
Datenpakete Pc enthält.
Jedoch filtert der Programmpaketfilter PCF die empfangene Vielzahl
der PC Datenpakete Pc, welche ein einzelnes spezifisches Programm
lediglich durch ihre Paketidentifikationen PID bilden. Damit können die
PC Datenpakete Pc der anderen Programme als dem spezifischen Programm
nicht in dem ausgewählten
einzelnen Programmdatenpaketstrang Pes existieren. Demgemäß können die
Programme, die zu den entsprechenden PC Datenpaketen Pc korrespondieren,
die Identifikations-/Verwaltungsergebnisse nicht erfassen.
-
Beim
Reproduktionstyp 2 kann eine Vielzahl von Transportströmen TS simultan
geliefert werden. Das heißt,
die entsprechenden Stromeingabeabschnitte können mit σ Typen (σ ist eine positive ganze Zahl,
nicht kleiner als 2) von Transportströmen TS_1 bis TS_σ beliefert
werden, welche sich nach Typ, Schema und Zulieferer unterscheiden.
Unter solchen Umständen
muss bei jedem Typ 2-1 (ein einzelnes Programm soll von den Transportströmen TS_1
bis TS_σ reproduziert
werden), Typ 2-3 (ein einzelnes Programm soll von einem spezifischen
der Transportströme
TS_1 bis TS_σ reproduziert
werden) und Typ 2-6 (ein einzelnes Programm soll von mehreren der
Transportströme
TS_1 bis TS_σ reproduziert werden),
der Transportstrom TS, welcher das zu reproduzierende Programm enthält, identifiziert
werden, und es muss auch identifizierbar sein, welche PC Datenpakete
Pc im ausgewählten
einzelnen Programmdatenpaketstrang Pes oder dem einzelnen Programmdatenpaketstrang
Pss zu welchem Transportdatenstrom TS korrespondieren. Eine solche Identifikation
kann nicht durch den konventionellen Transportstromdecoder, wie
oben beschrieben, erfolgen.
-
Des
Weiteren muss bei jedem Typ 2-2 (eine Vielzahl von Programmen muss
simultan aus den Transportströmen
TS_1 bis TS_σ reproduziert
werden), Typ 2-4 (eine Vielzahl von Programmen muss simultan aus
einem spezifischen der Transportströme TS_1 bis TS_σ reproduziert
werden), und Typ 2-5 (eine Vielzahl von Programmen muss simultan
von mehreren spezifischen der Trans portströme TS_1 bis TS_σ reproduziert
werden), identifizierbar sein, welche Datenpakete P, die in dem
ausgewählten
Signalprogrammdatenpaketstrang Pes enthalten sind, zu welchem der
Transportströme
TS_1 bis TS_σ und welchem
Programm korrespondieren. Eine solche Identifikation kann auch nicht
durch den konventionellen Transportstromdecoder, wie oben beschrieben,
gemacht werden.
-
Beim
Reproduktionstyp 3 müssen,
wie vom Anwender angefragt, verschiedene Prozesse an den entsprechenden
Datenpaketen P ausgeführt
werden (Pc, PAT, PMT), welche zu den Programmen korrespondieren,
die im Transportstrom TS enthalten sind. Beispielhaft ist ein Fall
zu sehen, wo der Anwender ein Programm betrachten und ein anderes
Programm in einer Speichervorrichtung speichern möchte. In
diesem Fall werden die PC Datenpakete Pc, die zum einen Programm
korrespondieren, einfach sequenziell ausgegeben und vom AV Decoder 2000C zur
Ausgabe an einem Monitor dekodiert, während die PC Datenpakete Pc,
die zum anderem Programm korrespondieren, so verarbeitet werden,
dass ein neuer Transportstrom TSr (nicht gezeigt), der die PC Datenpakete
Pc enthält,
gemäß der Übertragungsanfragen
für die
Speichervorrichtungen und Peripherievorrichtungen erzeugt wird.
Für die
letzteren muss die oben genannte Identifikations-/Verwaltungsinformation
zum Zweck der Erzeugung eines neuen Transportstroms TSr aus dem
PC Datenpaket Pc erforderlich sein. Diese Identifikations-/Verwaltungsinformation
ist auch erforderlich, wenn die Datenpakete P selbst wie gefordert
verarbeitet werden müssen, um
Datenpakete P zu spezifizieren, die verarbeitet werden sollen, und
um die verarbeiteten Datenpakete richtig zu verwalten. Jedoch kann
eine solche Identifikation und Verwaltung nicht durch den konventionellen
Transportstromdecoder durchgeführt
werden, wie oben beschrieben.
-
Wie
beschrieben worden ist, ist der konventionelle Transportstromdecoder
geeignet, um ein einzelnes Programm für einen einzelnen Transportstrom zu
reproduzieren. Jedoch kann der konventionelle Decoder die PC Datenpakete
Pc der Vielzahl der in einem einzelnen Transportstrom enthaltenen
Programme nicht durch ein Programm identifizieren.
-
Wenn
eine Vielzahl von Transportströmen geliefert
wird, können
zusätzlich
zur Tatsache, dass die PC Datenpakete Pc nicht durch ein Programm identifiziert
werden können,
auch die Transportströme
nicht unterschieden werden, und auch, welche PC Datenpakete Pc vom
zu reproduzierenden Programm zu welchem Transportstrom korrespondieren, kann
nicht identifiziert werden.
-
So
gesehen kann der konventionelle Transportstromdecoder nicht verwendet
werden, um eine Vielzahl von Programmen zu reproduzieren, gleichgültig ob
der Transportstrom einzeln oder vielfach ist. Wenn eine Vielzahl
von Transportströmen
geliefert wird, kann der konventionelle Decoder nicht einmal zum
Reproduzieren eines einzelnen Programms verwendet werden.
-
Des
Weiteren muss bei einem beliebigen der obigen Reproduktionstypen,
ganz gleich ob der Transportstrom einzeln oder vielfach ist, um
Prozesse an den entsprechenden vom Transportstrom(Strömen) TS
reproduzierten Programmen auszuführen, eine
zu jedem Prozess korrespondierende Schnittstelle für jeden
Paketfilter geliefert werden. Daher entstehen solche Probleme, wie
Größenzustand
und Herstellungsschwierigkeiten der Vorrichtung, Verarbeitungsbelastungszunahme,
Flexibilität
zum Wechsel der Spezifikation oder des angefragten Prozesses und
Kostenzunahme.
-
Die
U.S. 5,966,385 offenbart
einen Decoder für
komprimierte und Multiplex Video- und Audiodaten. Durch diesen Decoder wird
ein einzelner Transportstrom, der in einen Demodulator eingegeben wird,
dekodiert.
-
EP 0 785 675 A2 offenbart
einen digitalen Signalempfänger
zum Aufzeichnen einer Vielzahl von Programmströmen während des selben Zeitraums mit
einem einzelnen Speichermedium. Die Transportströme können durch einen Multiplexer
gemultiplext werden und dann durch eine Datenbusschnittstelle an
einen Bus und von dort an eine Datenbusschnittstelle und zu einem
Formatkonvertierer übertragen werden.
Durch den Formatkonvertierer wird das Programm, welches ein Anwender
auf einem Speichermedium aufzeichnen möchte, vom Multiplexer extrahiert.
Wo mehrere Programme aufgezeichnet werden sollen, können sie
zur gleichen Zeit aufgezeichnet werden. Um dies zu erreichen, fügen die
Datenbusschnittstellen Informationen hinzu, welche die verschiedenen
Ursprünge
der Daten identifizieren, und damit die verschiedenen Transportströme.
-
Es
ist ein Ziel der vorliegenden Erfindung, eine Transportstromverarbeitungsvorrichtung
und einen entsprechenden Prozess zur Verarbeitung einer Vielzahl
von Transportströmen
zur Verfügung
zu stellen, um auf Echtzeitbasis festzustellen, ob Transportstrom
bildende Datenpakete einem spezifischen Prozess unterworfen werden
sollen, und den auf jedes Datenpaket anzuwendenden spezifischen
Prozess anzuzeigen.
-
Offenlegung der Erfindung
-
Diese
Aufgabe wird durch die Merkmale der Ansprüche 1 und 3 gelöst. Eine
Ausführungsform
der Erfindung wird durch die Merkmale des Anspruchs 2 beschrieben.
-
Dadurch
wird es ermöglicht,
dass jedes Datenpaket im sequenziell eingegebenen Transportstrom
zeitweise gespeichert wird, und dann wird ermittelt, welcher vorher
spezifizierte Prozess an den gespeicherten Datenpaketen ausgeführt werden
soll. Damit kann der vorher spezifizierte Prozess von einer Datenpaketeinheit
angewendet werden.
-
Es
ist des Weiteren möglich,
dass jedes Datenpaket der eingegebenen Vielzahl von Transportströmen richtig
identifiziert werden kann.
-
Gemäß einer
Ausführungsform
verbietet das Zugriffsbeschränkungsmittel
dem gespeicherten Datenpaketidentifikationsmittel, auf die Pufferzelle
zuzugreifen, die von einem Zugriffszielpufferzellenanzeiger angezeigt
wird, während
ein Speicherpufferzellenanzeiger eine Pufferzelle anzeigt, die sich
von der Pufferzelle unterscheidet, die vom Zugriffszielpufferzellenzeiger
und auch vom Fehlermarkierungsabschnitt angezeigt wird, und ein
Pufferzellenfreigabeabschnitt legt die Pufferzelle frei.
-
Durch
Begrenzung des Prozesses an der Pufferzelle, der die Datenpakete
mit Datenfehlern speichert, ist es möglich, ein Versagen der Verarbeitung
zu vermeiden und die Effizienz der Verarbeitung sicherzustellen.
-
Die
vorliegende Erfindung richtet sich des Weiteren auf einen Prozess
gemäß der Merkmale des
Anspruchs 3.
-
Wie
oben beschrieben, wird jedes Datenpaket im sequenziell eingegebenen
Transportstrom zeitweise gespeichert, und dann wird ermittelt, welcher
vorher spezifizierte Prozess an den gespeicherten Datenpaketen ausgeführt werden
soll. Damit kann der vorher spezifizierte Prozess durch eine Datenpaketeinheit
angewandt werden.
-
Gemäß dem Prozess
wird insbesondere ein Schritt des Erfassens von im eingehenden Transportdatenstrom
enthaltenen Datenfeh lern und des Erzeugens eines Fehlererfassungssignals
zur Verfügung gestellt;
ein Datenfehlerpufferzellenanzeigeschritt des auf dem Fehlererfassungssignal
basierenden Anzeigers der Pufferzelle, welche die Datenpakete mit
dem Datenfehler speichert; und ein zweiter Zugriffsbeschränkungsschritt
des Beschränkens
der Ausführung
des Speicherdatenpaketidentifikationsschritts an der Pufferzelle,
welche im Datenfehlerpufferzellenanzeigeschritt angezeigt wird.
-
Wie
oben beschrieben, ist es im dritten Aspekt durch Beschränkung des
Prozesses auf die Pufferzelle, die die Datenpakete mit Datenfehler
speichert, möglich,
ein Versagen bei der Verarbeitung zu verhindern und die Verarbeitungseffizienz
sicherzustellen.
-
Kurzbeschreibung der Zeichnungen
-
1 ist
ein Blockdiagramm, welches den Aufbau eines Transportstromdecoders
zeigt, der darin einen Datenpuffer gemäß einer ersten Ausführungsform
der vorliegenden Erfindung aufweist;
-
2 ist
eine Darstellung zur Demonstration einer Korrelation zwischen einem
Pufferzellenzuweisungsspeicher, einem Paketpuffer und einem Speichervollendungspufferzellennummernspeicher;
-
3 ist
ein Wellenformdiagramm, welches verschiedene Signale im in 1 gezeigten
Transportstromdecoder zeigt;
-
4 ist
ein Flussdiagramm, welches den Hauptbetrieb des in 1 gezeigten
Transportstromdecoders zeigt;
-
5 ist
ein Flussdiagramm, welches den detaillierten Betrieb in einer Subroutine
zum Speichern der Datenpakete P eines einzelnen in 4 gezeigten
Transportstroms TS zeigt;
-
6 ist
ein Flussdiagramm, welches den detaillierten Betrieb in der Subroutine
zum Speichern von Datenpaketen P des einzelnen in 4 gezeigten
Transportstroms TS zeigt;
-
7 ist
eine Darstellung, um die Struktur eines Transportstroms aufzuzeigen,
der an den in 1 gezeigten Transportstromdecoder
geliefert wird;
-
8 ist
eine schematische Darstellung, die einen beispielhaften Datenpaketstrang
zeigt, der zum in 1 gezeigten Hauptspeicher geliefert
oder von diesem ausgegeben wird;
-
9 ist
eine Darstellung, um die Struktur eines Transportstroms zu beschreiben,
der in ISO/IEC 13818-1 (MPEG2 System) an den in 1 gezeigten Transportstromdecoder
geliefert wird;
-
10 ist ein Blockdiagramm, welches die Struktur
zeigt, die hauptsächlich
durch Hardware erreicht wird, und in der Funktion dem in 1 gezeigten
Transportstromdecoder ähnlich
ist;
-
11 ist eine Darstellung zur Demonstration eines
ausgewählten
vielfachen Programmdatenpaketstrangs, der von dem in 10 gezeigten Transportstromdecoder erhalten wird,
welcher Programminhaltsdatenpakete und Verwaltungsdatenpakete von
zwei Programmen aus einem einzelnen Transportstrom extrahiert, welcher
die in 7 gezeigte Paketstruktur aufweist;
-
12 ist eine Darstellung zur Demonstration einer
Beziehung zwischen einer Subroutine zur Auswahl von Zieldatenpake ten
P des einzelnen in 4 gezeigten Transportstroms
TS, und einer Subroutine zur Ausführung eines Prozesses der Anfrage an
die Datenpakete P des einzelnen Transportstroms TS;
-
13 ist eine beispielhafte Darstellung, welche
zeigt, wie Datenpakete im Hauptspeicher gespeichert werden, wobei
die Datenpakete in einem komplexen ausgewählten vielfachen Programmdatenpaketstrang
enthalten sind, der aus einem Transportstrom extrahiert wird, der
an den in 10 gezeigten Transportstromdecoder
geliefert wird;
-
14 ist eine Darstellung zur Demonstration der
Struktur des komplexen ausgewählten
vielfachen Programmdatenpaketstrangs, der an den in 10 gezeigten Hauptspeicher geliefert oder von ihm
ausgegeben wird;
-
15 ist ein Blockdiagramm, welches den Aufbau eines
Transportstromdecoders zeigt, welcher darin einen Datenpuffer gemäß einer
zweiten Ausführungsform
der vorliegenden Erfindung eingebaut hat;
-
16 ist ein Wellenformdiagramm, welches verschiedene
Signale im in 15 gezeigten Transportstromdecoder
zeigt;
-
17 ist ein Flussdiagramm, welches den Hauptbetrieb
des in 15 gezeigten Transportstromdecoders
zeigt;
-
18 ist ein Flussdiagramm, welches den detaillierten
Betrieb in einem detaillierten Subroutinenbetrieb in einer Subroutine
zum Speichern von Datenpaketen P eines einzelnen in 4 gezeigten Transportstrom
TS zeigt;
-
19 ist ein Flussdiagramm, welches den detaillierten
Betrieb in der Subroutine zum Speichern von Datenpaketen P von vielen
in 17 gezeigten Transportströmen TS1 bis TSε zeigt;
-
20 ist eine Darstellung zur Demonstration der
Struktur von zwei Transportströmen,
die an den in 15 gezeigten Transportstromdecoder
geliefert werden;
-
21 ist eine Darstellung zur Demonstration eines
ausgewählten
vielfachen Programmdatenpaketstrangs, der von dem in 15 gezeigten Transportstromdecoder erhalten wurde,
welcher die Programminhaltsdatenpakete und die Verwaltungsdatenpakete
von vier Programmen aus zwei einzelnen Transportströmen extrahiert,
welche die in 20 gezeigte Paketstruktur haben;
-
22 ist eine schematische Darstellung, welche beispielhaft
zeigt, wie Datenpakete im in 15 gezeigten
Hauptspeicher gespeichert werden;
-
23 ist eine Darstellung zum Demonstrieren der
Struktur von zwei Transportströmen,
wie in ISO/IEC 13818-1 (MPEG2 System) gefordert, die an den in 15 gezeigten Transportstromdecoder geliefert werden;
-
24 ist ein Blockdiagramm, welches die Struktur
zeigt, die hauptsächlich
mit Hardware erreicht wird und der Funktion des in 15 gezeigten Transportstromdecoders ähnlich ist;
-
25 ist eine Darstellung zur Demonstration eines
komplexen vielfachen Programmdatenpaketstrangs, welcher vom in 24 gezeigten Transportstromdecoder erhalten wird,
welcher die Programminhaltsdatenpakete und die Verwaltungsdatenpakete
von vier Programmen aus zwei einzelnen Transportströmen mit
der in 23 gezeigten Paketstruktur
extrahiert;
-
26 ist eine schematische Darstellung, welche zeigt,
wie der komplexe vielfache Programmdatenpaketstrang im in 24 gezeigten Hauptspeicher gespeichert wird;
-
27 ist ein Blockdiagramm, welches den Aufbau eines
Transportstromdecoders zeigt, welcher einen hierin eingebauten Datenpuffer
gemäß einer dritten
Ausführungsform
der vorliegenden Erfindung aufweist;
-
28 ist ein Wellenformdiagramm, welches verschiedene
Signale im in 27 gezeigten Transportstromdecoder
zeigt;
-
29 ist ein Blockdiagramm, welches den detaillierten
Aufbau des in 27 gezeigten Speichervollendungspufferzellennummernspeichers zeigt;
-
30 ist ein Blockdiagramm, welches den detaillierten
Aufbau eines modifizierten Beispiels des in 29 gezeigten
Speichervollendungspufferzellennummernspeichers zeigt;
-
31 ist ein Flussdiagramm, welches den Hauptbetrieb
des in 27 gezeigten Transportstromdecoders
zeigt;
-
32 ist ein Flussdiagramm, welches den detaillierten
Betrieb in einer Subroutine zum Speichern von Datenpaketen P eines
vielfachen Transportstroms TS1 bis TSε zeigt, welcher in 27 gezeigte Datenfehler aufweist;
-
33 ist eine Subroutine zur Ausführung eines
Prozesses der Anfrage an die Datenpakete P des vielfachen Transportstroms
TS1 bis TSε;
-
34 ist ein Blockdiagramm, welches den Aufbau eines
konventionellen Transportstromdecoders zeigt, welcher hauptsächlich durch
Hardware realisiert ist, wobei der Decoder zur Verwendung in der
Lieferung einer Vielzahl von Teilen von Programminhaltsdatenpaketen
aus einem Signaltransportstrom gedacht ist;
-
35 ist eine Darstellung zur Demonstration eines
ausgewählten
Signalprogrammdatenpaketstrangs, der vom in 34 gezeigten
Transportstromdecoder strukturiert wird, welcher aus einem Signaltransportstrom
extrahiert;
-
36 ist ein schematisches Diagramm, welches zeigt,
wie ausgewählte
Programmdatenpaketstränge
im in 34 gezeigten Hauptspeicher
gespeichert werden; und
-
37 ist eine Darstellung zur Demonstration der
Struktur eines Signalprogrammdatenpaketstrangs, der an den in 34 gezeigten Hauptspeicher geliefert oder von
ihm ausgegeben wird.
-
Beste Ausführungsform der Erfindung
-
(Erste Ausführungsform)
-
Mit
Bezug auf 1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13 und 14 wird
im Folgenden eine Datenpaketidentifikationsvorrichtung gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung beschrieben. Festzuhalten ist, dass die
Datenpaketidentifikationsvorrichtung gemäß der vorliegenden Ausführungsform
als eine Datenpuffervorrichtung zur Verwendung in einem Transportstromdecoder
aufgebaut ist, um wahlweise Inhaltsdaten einer Vielzahl von Programmen
zu extrahieren, die in einem einzelnen Transportstrom TS enthalten
sind.
-
Mit
Bezug auf 10, 11, 13 und 14 wird
zuerst ein Grundkonzept des Transportstromdecoders beschrieben,
welcher einen Datenpaketverarbeitungsermittlungsabschnitt gemäß der vorliegenden
Erfindung aufweist.
-
In 10 ist ein erstes Verbesserungsbeispiel des konventionellen
Transportstromdecoders TDAc dargestellt, der in 34 gezeigt ist, wobei die Verbesserung angepasst
ist, um eine Vielzahl von Programmen aus einem einzelnen Transportstrom TS
gemäß der vorliegenden
Ausführungsform
zu extrahieren. Ein Transportstromdecoder TDAA1 des ersten Verbesserungsbeispiels
wird durch Ersetzen des Programmpaketfilters PCF in dem Transportstromdecoder
TDAc von 34 durch einen erweiterten
Programmpaketfilter EPCF aufgebaut.
-
Vor
der Beschreibung des erweiterten Programmpaketfilters EPCF wird
der Betrieb des Transportstromdecoders TDAA1 mit Bezug auf die oben beschriebenen 1, 13, 14 und 7 beschrieben.
Der Transportstromdecoder TDAA1 extrahiert wahlweise PC Datenpakete
Pc, welche spezifische Programme aus PC Datenpaketen Pc einer Vielzahl
von Programmen aufbauen, die in einem einzelnen Transportstrom TS
enthalten sind, der die mit Bezug auf 7 beschriebene
Datenstruktur aufweist. Der Transportstromdecoder TDAA1 gibt dann die
extrahierten PC Datenpakete Pc an den AV Decoder 2000C als
einen vielfachen Programmdatenpaketstrang Pms aus.
-
In 11 ist ein Beispiel eines ausgewählten vielfachen
Programmdatenpaketstrangs Per dargestellt, welcher durch den Transportstromdecoder TDAA1
aufgebaut ist, und nur die PC Datenpakete Pc (die Videodatenpakete
PcV und die Audiodatenpaket PcS) von zwei Programmen oder von drei
Programmen extrahiert, welche im einzelnen Transportstrom TS mit
der Paketstruktur enthalten sind.
-
In
diesem Beispiel werden die PC Datenpakete Pc101_1, Pc111_1, Pc101_2,
Pc111_2, ..., welche das Programm 1 bilden, PC Datenpakete Pc201_1,
Pc211_1, Pc201_2, Pc211_2, ..., welche das Programm 2 bilden, und
ihre Programmzuordnungstabellen PAT und Programmabbildungstabellen
PMT1 und PMT2 extrahiert. Dann werden die extrahierten Daten und
Tabellen als der ausgewählte vielfache
Programmdatenpaketstrang Per vom erweiterten Programmpaketfilter
EPCF an den Hauptspeichercontroller 700C ausgegeben.
-
Festzustellen
ist, dass eine Programmabbildungstabelle des Programms q3, welche
nicht spezifiziert ist, extrahiert werden kann. Als solche werden nur
die Datenpakete P, welche zum spezifizierten Programm korrespondieren,
diskret aus den Datenpaketen P extrahiert, welche sequenziell auf
dem Transportstrom TS angeordnet sind, und werden dann in der Reihenfolge
ausgegeben, in der sie bei dem Transportstromdecoder TDAA2 angekommen sind.
-
In 13 ist ein Beispiel dargestellt, wie die Datenpakete
P, die in einem gemischten ausgewählten vielfachen Programmdatenpaketstrang
Pems enthalten sind, aus dem Transportstrom TS extrahiert werden,
der an den Transportstromdecoder TDAA1 durch einen extern gelieferten
Vorderendabschnitt geliefert wird. Festzustellen ist, dass in der
Zeichnung der Stromeingabeabschnitt 500C, der erweiterte
Programmpaketfilter EPCF, der Hauptspeichercontroller 700C und
der TD Controller 1000C gemeinsam als ein Transportstromeditierungsabschnitt TDAA1r
dargestellt sind.
-
In 14 ist ein Beispiel dargestellt, wie die PC Datenpakete
Pc, die in dem gemischten ausgewählten
vielfachen Programmdatenpaketstrang Pems enthalten sind, im Hauptspeicher 900C gespeichert
werden. Der Hauptspeicher 900C enthält die PC Datenpakete (Videodatenpakete)
Pc101_1, Pc201_1, Pc101_2, Pc201_2, ... der Programme 1 und 2, die
im Videodatenpaketspeicherbereich A (Video) gespeichert sind. Der
Hauptspeicher 900C enthält
auch die PC Datenpakete (Audiodatenpakete) Pc111_1, Pc211_1, Pc111_2,
Pc211_2, ... der Programme 1 und 2, die im Audiopaketspeicherbereich A
(Audio) gespeichert sind.
-
Der
Hauptspeicher 900C hat auch einen PAT Speicherbereich A
(PAT) zum Speichern von Information über die Programmzuordnungstabelle
PAT, der Information, welche das Verwaltungsdatenpaket PcA bildet.
Der Hauptspeicher 900C hat des Weiteren einen PMT Speicherbereich
A (PMTα)
zum Speichern von Information über
die Programmzuordnungstabellen PMT1 und PMT2. Genauer ist die Programmverwaltungstabelle
PMT1 in einem PMT Speicherbereich A(PMT1) gespeichert, und die Programmverwaltungstabelle
2 ist einem PMT Speicherbereich A (PMT2) gespeichert.
-
Die
PC Datenpakete Pc101_1, Pc201_1, Pc101_2, Pc201_2, ..., die die
Videodatenpakete PcV der Programme 1 und 2 sind, werden sequenziell
im Videopaketspeicherbereich A (Video) gespeichert, um einen vielfachen
Programmvideodatenpaketstrang PmsV (im Folgenden PP) zu bilden.
Gleichermaßen
werden die PC Datenpakete Pc111_1, Pc211_1, Pc111_2, Pc211_2, ...,
welche die Audiodatenpakete PcV der Programme 1 und 2 sind, sequenziell
im Audiopaketspeicherbereich A (Audio) gespeichert, um einen vielfachen
Programmaudiodatenpaketstrang PmsS (im Folgenden PP) zu bilden.
-
Der
PP Videodatenpaketstrang PmsV und der PP Audiodatenpaketstrang PmsS,
die im Hauptspeicher 900C gebildet werden, werden in obiger Weise
durch den Hauptspeichercontroller 700C als die vielfachen
Programmdatenpaketstränge
Pms gelesen, wie beispielhaft in 14 dargestellt
ist, und an den AV Decoder 200C ausgegeben. Anzumerken ist,
dass, wie oben beschrieben, der PMT Speicherbereich A (PMT) so oft
vorgesehen ist, wie die Anzahl von Programmabbildungstabellen PMT
(Programme), die im Transportstrom TS enthalten sind.
-
Wie
in 10 dargestellt, enthält der erweiterte Programmpaketfilter
EPCF einen Paketverwaltungsfilter PCF_0, um die Verwaltungsdatenpakete PcA
wahlweise zu extrahieren, einen ersten Programmpaketfilter PCF_1,
um die PC Datenpakete Pc des Programms 1 wahlweise zu extrahieren,
und einen zweiten Programmpaketfilter PCF_2, um die PC Datenpakete
Pc des Programms 2 wahlweise zu extrahieren. Eine Extraktion, die
in diesen Filtern ausgeführt
wird, basiert auf den Paketidentifikationen PID, welche den entsprechenden
Datenpaketen P zur Verfügung
gestellt werden, welche von der Übertragungseinheit
TSd von dem Stromeingabeabschnitt 500C übertragen werden.
-
Der
Paketverwaltungsfilter PCF_0 wird von einem Paketverwaltungsfilter 1100_00 gebildet,
wie in 34 dargestellt. Der erste Programmpaketfilter PCF_1
enthält
einen ersten Videopaketfilter 1100_11 zum Extrahieren der
Videodatenpakete PcV des Programms 1 von allen PC Datenpaketen Pc,
die im Transportstrom TS enthalten sind, und zum Ausgeben der extrahierten
Daten als erstes Videodatenpaket PcV_1, und einen ersten Audiopaketfilter 1100_12 zum
Extrahieren der Audiodatenpakete PcS des Programms 1 von allen PC
Datenpaketen Pc und zum Ausgeben der extrahierten Daten als erstes
Audiodatenpaket PcS_1. Festzuhalten ist, dass der erste Videopaketfilter 1100_11 und
der erste Audiopaketfilter 1100_12 im Grunde in der Struktur ähnlich sind,
wie der Videopaketfilter 1100_01 und der Audiopaketfilter 1100_2,
welche den Programmpaketfilter PCF bilden, der in 34 dargestellt ist, obwohl die in jedem Filter
eingestellten Filterwerte verschieden sind.
-
In ähnlicher
Weise enthält
der zweite Programmpaketfilter PCF_2 einen zweiten Videopaketfilter 1100_21,
um die Videodatenpakete PcV des Programms 2 von allen PC Datenpaketen
Pc zu extrahieren, die im Transportstrom TS enthalten sind, und
die extrahierten Daten als zweites Videodatenpaket PcV_2 auszuge ben
und einen zweiten Audiopaketfilter 1100_22, um die Audiodatenpakete
PcS des Programms 2 von allen PC Datenpaketen Pc zu extrahieren,
und die extrahierten Daten als zweites Audiodatenpaket Ps_2 auszugeben.
Festzustellen ist, dass der zweite Videopaketfilter 1100_21 und
der erste Audiopaketfilter 1100_22 im Grunde eine ähnliche
Struktur aufweisen, wie der Videopaketfilter 1100_01 und
der Audiopaketfilter 1100_02, welche den Programmpaketfilter
PCF bilden, obwohl die in jedem Filter eingestellten Filterwerte
verschieden sind.
-
Das
heißt,
der erweiterte Programmpaketfilter EPCF in der vorliegenden Ausführungsform
hat die Struktur des Programmpaketfilters PCF, der in 34 dargestellt ist, und ist des Weiteren mit dem Videopaketfilter 1100_21,
um die Videodatenpakete PcV des Programms 2 zu extrahieren und dem
Audiopaketfilter 1100_22, um die Audiodatenpakete PcS des
Programms 2 zu extrahieren, versehen.
-
In
diesem Sinn kann man sagen, dass der erweiterte Programmpaketfilter
EPCF maximal durch Programmpaketfilter PCF_1 bis PCF_α gemäß der Anzahl
von Programmen α,
die in einem einzelnen Transportstrom TS enthalten sind, und einen
Paketverwaltungsfilter PCF_0, um die Verwaltungsdatenpakete PcA
zu extrahieren, welche eine Beziehung unter der Vielzahl der PC
Datenpaket Pc zu zeigen, die im einzelnen Transportstrom TS enthalten
sind, gebildet wird. Des Weiteren enthält jeder der Programmpaketfilter
PCF_1 bis PCF_α maximal γ Paketfilter
1000_α'1 bis 1000_α'γ' (α' ist eine natürliche Zahl,
wobei 1 ≤ α' ≤ α).
-
Wie
oben angeführt,
wird, wenn drei Paketfiltertypen einzeln identifiziert werden müssen, derjenige
zum Extrahieren der Verwaltungsdatenpakete PcA als der Paketverwaltungsfilter 1100_00 dargestellt,
derjenige zum Extrahieren der Videodatenpakete PcV als der Videopaketfilter
1100_1γ' dargestellt (γ' ist eine natürliche Zahl,
wobei 1 ≤ γ' ≤ γ) und derjenige zum Extrahieren
der Audiodatenpakete PcS als der Audiopaketfilter 1100_2γ' dargestellt. Wenn die
Paketfilter individuell identifiziert werden müssen oder allgemein auf sie
Bezug genommen werden muss, werden sie einfach als Paketfilter 1100_α'γ' dargestellt.
-
Von
den PC Datenpaketen, welche α Typen von
Programmen bilden, die im Transportstrom TS enthalten sind, werden
die Verwaltungsdatenpakete PcA (PAT, PMT1, PMT2, PMT3) vom Paketverwaltungsfilter 1100_00 extrahiert.
Die ersten Videodatenpakete PcV_1 (Pc101_1, Pc101_2, ...) und die ersten
Audiodatenpakete PcS_1 (Pc111_1, Pc111_2, ...) des Programms 1 werden
jeweils durch den ersten Videopaketfilter 1100_11 und den
ersten Audiopaketfilter 1100_12 extrahiert. Das Extrahieren
wird in diesen Filtern in der Reihenfolge ausgeführt, in der die Datenpakete
beim Transportstromdecoder TDAA1 angekommen sind.
-
In ähnlicher
Weise werden die zweiten Videodatenpakete PcV_2 (Pc201_1, Pc201_2,
...) und die zweiten Audiodatenpakete PcS_2 (Pc211_1, Pc211_2, ...)
des Programms 2 jeweils durch den zweiten Videopaketfilter 1100_21 und
den zweiten Audiopaketfilter 1100_22 in der Reihenfolge
extrahiert, in der die Datenpakete beim Transportstromdecoder TDAA1
angekommen sind.
-
Dann
werden die extrahierte Programmzuordnungstabelle PAT, die Programmabbildungstabellen
PMT1, PMT2, PMT3 und die PC Datenpakete Pc101_1, Pc111_1, Pc201_1,
Pc211_1, Pc101_2, Pc111_2, Pc201_2, Pc211_2, ... an den Hauptspeichercontroller 700C,
wie der ausgewählte
vielfache Programmdatenpaketstrang Per, in der Reihenfolge ausgegeben,
in der die Datenpakete beim Transportstromdecoder TDAA1 angekommen
sind.
-
Der
Hauptspeichercontroller 700C hält zeitweise durch die Übertragungseinheit
TSd den ausgewählten
vielfachen Programm datenpaketstrang Per, der vom Programmpaketfilter
PCF geliefert wird. Der Hauptspeichercontroller 700C steuert
auch den Hauptspeicher 900C, so dass der Datenstrang Per
so gespeichert wird, wie die Verwaltungsdatenpaket PcA, der PP Videodatenpaketstrang
PmsV, und der PP Audiodatenpaketstrang PmsS, jeweils in vorgegebenen
verschiedenen Bereichen auf dem Hauptspeicher 900C gespeichert
werden.
-
Des
Weiteren liest der Hauptspeichercontroller 700C auf Anfrage
von einer externen Vorrichtung, die durch den AV Decoder 2000C typisiert
ist, den PP Videodatenpaketstrang PmsV und den PP Audiodatenpaketstrang
PmsS aus dem Hauptspeicher 900C und gibt die Lesestränge als
den vielfachen Programmdatenpaketstrang Pms am AV Decoder 2000C aus.
-
In
diesem Fall muss der Transportstromdecoder TDAA1, wenn der Anwender
einen gewünschten
Prozess (z.B. Anzeige auf einem Monitor) auf einem der Programme
1 und 2 anfordert, zumindest Zustände identifizieren, welche
im Folgenden beschrieben werden, und die Identifikationsergebnisse erzeugen
und halten. Die zu identifizierenden Zustände sind zuallererst, wie die Übertragungseinheit TSd,
welche von der Stromeingabeeinheit 500C an den erweiterten
Programmpaketfilter EPCF geliefert wird, zu den PC Datenpaketen
Pc korrespondierend, und welche PC Datenpakete Pc zu welcher Paketidentifikation
korrespondieren.
-
Die
zu identifizierenden Zustände
enthalten des Weiteren die Paketidentifikationen PID der PC Datenpakete
Pc, die von den entsprechenden Programmpaketfiltern PCF_1 bis PCF_α ausgegeben werden,
die im erweiterten Programmpaketfilter EPCF enthalten sind, und
die Reihenfolge der PC Datenpakete Pc. Solche Zustände enthalten
auch Informationen darüber,
welcher Prozess vom Anwender gewünscht
wird, verschiedene Verarbeitungsschemata und Vorrichtungen, um den
Prozess auszuführen, und
welche Programm- und Datenpakete den Schemata unterworfen werden.
Die identifizierten Zustände
werden als Identifikations-/Verwaltungsdaten zur Verwendung in einem
nachfolgenden Prozess dargestellt und im Transportstromdecoder TDAA1
gehalten.
-
Dann,
wenn eine Anfrage zur Ausführung
eines Prozesses auf einem spezifischen Programm von der externen
Vorrichtung, wie dem AV Decoder 2000C, kommt, liest der
Hauptspeicher 700C aus den ausgewählten vielfachen Programmdatenpaketsträngen Per,
welche im Hauptspeicher 900C gespeichert sind, die PC Datenpakete
Pc des spezifischen Programms, basierend auf den Identifikations-/Verwaltungsdaten.
Dieses Lesen wird in der Reihenfolge ausgeführt, in der die PC Datenpakete
Pc dem Anwender dargestellt werden. Dieser Leseprozess kann nicht
durch Steuerung des Datenflusses vor und nach dem erweiterten Programmpaketfilter
EPCF ausgeführt
werden.
-
Des
Weiteren ist der Programmpaketfilter PCF so oft erforderlich, wie
die Anzahl (α') der zu reproduzierenden
Programme. Ebenso sind die Paketfilter 1100 so oft erforderlich,
wie die Anzahl der zu identifizierenden Datenpakettypen P. Des Weiteren muss
ein Verarbeitungsmittel zur Ausführung
eines für
die identifizierten Datenpakete P eindeutigen Prozesses erforderlich
sein. Folglich werden solche Probleme, wie ein immenser Anstieg
der Vorrichtungsgröße und der
Herstellungskosten, auftreten.
-
Um
die obigen Probleme zu umgehen, wird in der vorliegenden Ausführungsform
eine Datenpuffervorrichtung vorgeschlagen, die individuell alle
Datenpakete P puffern kann, welche den sequenziell eingegebenen
Transportstrom TS bilden, jedes gepufferte Datenpaket P identifizieren
kann, um festzustellen, ob die Datenpakete P einem vom Anwender gewünschten
Prozess unterworfen sind und einen Zugriff auf und einen Prozess
an den Datenpaketen P auf einer Echtzeitbasis steuern kann. Des
Weiteren wird in der vorliegenden Ausführungsform eine Datenpaketverarbeitungsermittlungsvorrichtung
vorgeschlagen. In dieser Vorrichtung wird, um einen Zugriff oder
eine Verarbeitungszeit innerhalb einer Echtzeitverarbeitungszeit
sicherzustellen, das Halten von zu verarbeitenden Datenpaketen (im
Folgenden Zieldatenpakete) innerhalb einer vorgegebenen Zeitspanne
durch Softwaresteuerung sichergestellt. Andere passive Prozesse
werden unter Hardwaresteuerung durchgeführt. Folglich kann die Identifikation und
Verwaltung durch jedes Datenpaket P flexibler sein und leichter
angepasst werden, wenn ein eindeutiger Prozess an den identifizierten
Datenpaketen P ausgeführt
werden soll.
-
In 1 ist
ein Transportstromdecoder TD1 dargestellt, welcher eine Datenpuffervorrichtung DBA1
gemäß dem vorliegenden
Beispiel enthält.
Der Transportstromdecoder TD1 enthält einen Stromeingabeabschnitt
TSR, um den Transportstrom TS zu empfangen, der durch eine Paketeinheit
von einer externen Transportstromquelle (nicht gezeigt) geliefert
wird, die Datenpuffervorrichtung DBA1, einen Hauptspeichercontroller 700,
einen Hauptspeicher 900, einen TD Controller TDC1 und einen
Subprozessanfrageeingabeabschnitt APR.
-
Vor
der Beschreibung dieser Komponenten mit Bezug auf 8, 12 und 14 und 7 und 11,
welche oben beschrieben sind, wird ein Grundkonzept des Transportstromdecoders
TD1 in der vorliegenden Ausführungsform
beschrieben. Der Transportstromdecoder TD1 wird nur mit einem einzelnen
Transportstrom TS beliefert, der die Datenstruktur zum Präsentieren
von drei verschiedenen Programmen 1, 2 und 3 aufweist, die mit Bezug
auf 7 beschrieben worden sind.
-
Im
Transportstromdecoder TD1, wie mit Bezug auf 11 beschrieben,
werden nur die PC Datenpakete Pc der Programme 1 und 2 aus dem einzelnen
Transportstrom TS extrahiert, um einen ausgewählten vielfachen Programmdatenpaketstrang Pem
zu bilden. Dann wird der gebildete ausgewählte vielfache Programmdatenpaketstrang
Pem durch den Hauptspeichercontroller 700 an den Hauptspeicher 900 ausgegeben.
Das Konzept, die PC Datenpakete Pc der Programme 1 und 2 aus dem
Transportstrom TS zu extrahieren, ist im Grunde das Gleiche wie
das mit Bezug auf 11 Beschriebene. In der vorliegenden
Ausführungsform
wird jedoch nicht der erweiterte Programmfilter EPCF sondern die
Datenpuffervorrichtung DBA1 verwendet. Details hiervon werden später mit
Bezug auf 4, 5 und 6 beschrieben.
-
In 8 wird
dargestellt, wie die PC Datenpakete Pc, welche im gewünschten
Programmdatenpaketstrang Per enthalten sind, welcher aus dem Transportstrom
TS extrahiert wird, welcher durch einen extern gelieferten Vorderendabschnitt
an den Transportstromdecoder TD1 geliefert wird, im Hauptspeicher 900 gespeichert
werden. Festzustellen ist, dass in der Zeichnung der Stromeingabe
TSR, die Datenpuffervorrichtung DBA1, der Hauptspeichercontroller 700,
der TD Controller TDC1 und der Subprozessanfrageeingabeabschnitt
APR insgesamt als Transportstromeditierungsabschnitt TD1r dargestellt sind.
-
Der
Hauptspeicher 900 der vorliegenden Ausführungsform ist im Grunde von
der Struktur her der Gleiche wie der Hauptspeicher 900C,
welcher in 13 dargestellt ist. Der Hauptspeicher 900 hat
einen Videopaketspeicherbereich A (Video), wo die Datenpakete Pc101_1,
Pc201_1, Pc101_2, Pc201_2, ... der Programme 1 und 2 sequenziell
gespeichert sind, um einen PP Videodatenpaketstrang PmsV zu bilden.
-
Der
Hauptspeicher 900 hat auch einen Audiopaketspeicherbereich
A (Audio), wo die PC Datenpakete Pc111_1, Pc211_1, Pc111_2, Pc211_2,
... der Programme 1 und 2 sequenziell gespeichert sind, um einen
PP Audiodatenpaketstrang PmsS zu bilden. Des Weiteren hat der Hauptspeicher 900 einen
PAT Speicherbereich A (PAT), wo Information über die Programmzuordnungstabelle
PAT, welche die Verwaltungsdatenpakete PcA bildet, gespeichert ist.
Der Hauptspeicher 900 hat PMT Speicherbereiche A (PMTα), wo Information über die
Programmabbildungstabellen PMT1 und PMT2 gespeichert ist. Festzustellen
ist, dass der PMT Speicherbereich A (PMT) so oft wie die Anzahl
der Typen von Programmabbildungstabellen PMT (Programme) zur Vefügung gestellt
wird, wie oben beschrieben. Die Programmzuordnungstabelle PAT beschreibt
Informationen über alle
Programmabbildungstabellen PMT1 bis PMTα, die im Transportstrom TS enthalten
sind, wie auch oben beschrieben ist.
-
So
gesehen werden der PP Videodatenpaketstrang PmsV und der PP Audiodatenpaketstrang PmsS,
die auf dem Hauptspeicher 900 gebildet sind, vom Hauptspeichercontroller 700 als
der vielfache Programmdatenpaketstrang PMS gelesen, wie beispielhaft
in 14 dargestellt ist, und an die Aussenseite des
Transportstromdecoders TD1 ausgegeben.
-
Mit
Rückbezug
auf 1 werden unten entsprechende Komponenten des Transportstromdecoders
TD1 beschrieben. Der Stromeingabeabschnitt TRS hat einen darin eingebauten
Eingabepuffer, um zeitweise den Transportstrom TS zu halten, der durch
eine Paketeinheit von einer externen Transportstromquelle (nicht
gezeigt) geliefert wird, und dann den Transportstrom TS durch eine
vorgegebene Übertragungseinheit
TSd an die Datenpuffervorrichtung DBA1 zu übertragen.
-
Festzustellen
ist, dass im vorliegenden Beispiel die Übertragungsrate TSd auf 8 Byte
eingestellt ist. Dies ist nicht ein schränkend und kann wahlweise unter
Berücksichtigung
der Vermittlungsbelastung und der Übertragungseffizienz in der
Datenpuffervorrichtung DBA1 eingestellt werden.
-
Die
Datenpuffervorrichtung DBA1 verwaltet und speichert durch eine Datenpaketeinheit
P den Transportstrom TS, welcher sequenziell durch die Übertragungseinheit
TSd vom Stromeingabeabschnitt TSR geliefert wird. Die Datenpuffervorrichtung DBA1
gibt auch die PC Datenpakete Pc, die im Transportstrom enthalten
sind, auf einer Echtzeitbasis aus. Festzuhalten ist, dass eine Beschreibung
in der vorliegenden Ausführungsform
für einen
beispielhaften Fall gemacht werden soll, wo die PC Datenpakete Pc
von zwei Programmen vom Transportstrom TS, der drei Programme enthält, extrahiert
werden und als der ausgewählte
vielfache Programmdatenpaketstrang Per ausgegeben werden.
-
Die
vorliegende Erfindung richtet sich auf eine Vorrichtung, um die
Datenpakete P, die im Transportstrom TS in einer Pufferzelle Bc
enthalten sind, individuell zu speichern und zum Identifizieren der
gespeicherten Datenpakete P, um zu sehen, ob der Zugriff auf und
die Verarbeitung an den identifizierten Datenpaketen ermöglicht werden
soll. Zum einfachen Vergleich mit dem oben beschriebenen Stand der
Technik wird als ein Beispielprozess des Zugreifens auf und Verarbeitens
an den Datenpaketen P ein Prozess des wahlweisen Extrahierens der PC
Datenpakete Pc beschrieben, welche ein spezifisches Programm zum
Editieren des Transportstroms TS bilden.
-
Der
Hauptspeicher 900 speichert den ausgewählten vielfachen Programmdatenpaketstrang
Per, der von der Datenpuffervorrichtung DBA1 durch den Hauptspeichercontroller 700 kommt.
Ebenso gibt der Hauptspeicher 900 einen vielfachen Programmdatenpaketstrang
Pms (im Folgenden PP), den PP Videodatenpaketstrang PmsV und den
PP Audiodatenpaketstrang PmsS an eine externe Vorrichtung (nicht gezeigt)
aus, die durch einen AV Decoder typisiert ist.
-
Der
Hauptspeichercontroller 700 hält zeitweise durch die Übertragungseinheit
TSd den ausgewählten
vielfachen Programmdatenpaketstrang Fern, der von der Datenpuffervorrichtung
DBA1 geliefert wird. Der Hauptspeichercontroller 700 steuert des
Weiteren den Betrieb des Hauptspeichers 900, welcher den
zeitweise gehaltenen ausgewählten Programmdatenpaketstrang
Fern durch die Übertragungseinheit
TSd an den Hauptspeicher 900 ausgibt und veranlasst den
Hauptspeicher 900, den vielfachen Programm-(PP)videodatenpaketstrang
PmsV und den vielfachen Programm-(PP)audiodatenpaketstrang PmsS
zu bilden.
-
Der
TD Controller TDC1 speichert Information über die Datenstruktur für jeden
Transportstromtyp TS, der an den Transportstromdecoder TD1 zu liefern
ist. Der TD Controller TDC1 erzeugt ein Transportstromstruktursignal
Sts, welches die Datenstruktur des tatsächlich gelieferten Transportstroms
TS zur Ausgabe dem Stromeingabeabschnitt TSR anzeigt, und steuert
dabei den Stromeingabeschnitt TSR so, dass er gemäß dem eingehenden
Transportstrom TS angemessen betrieben wird.
-
Anstatt
die Datenstrukturinformation des Transportstroms TS eines jeden
Typs im TD Controller TDC1 zu speichern, kann der Anwender den Subprozessanfrageeingabeabschnitt
APR oder dergleichen verwenden, um den TD Controller TDC1 über die
Strukturinformation des tatsächlich
gelieferten Transportstroms TS zu informieren. Des Weiteren ist der
Transportstromdecoder TD1 so aufgebaut, dass er den tatsächlich gelieferten
Transportstrom TS liest und dessen Datenstruktur ermittelt.
-
Der
TD Controller TDC1 steuert den gesamten Betrieb des Transportstromdecoders
TD1. Festzuhalten ist, dass der Transportstromdecoder TD1 ein Zustandssignal
SrW1 erzeugt, welches die Betriebszustände der entsprechenden Komponenten zur
Ausgabe dem TD Controller TDC1 anzeigt. Basierend auf dem Zustandssignal
SrW1 erzeugt der TD Controller TDC1 ein Steuerungssignal ScW1, um den
Betrieb der entsprechenden Komponenten des Transportstromdecoders
TD1 zu steuern, und gibt das Steuerungssignal ScW1 an den Transportstromdecoder
TD1 aus. Festzustellen ist, dass die Erzeugung des Zustandssignals
SrW1 und des Steuerungssignals ScW1 und die Steuerung des Transportstromdecoders
TD1 Stand der Technik sind, und deshalb hier nicht beschrieben werden.
-
Die
Datenpuffervorrichtung DBA1 enthält
einen Vermittlungspuffer PBA1, um durch eine Datenpaketeinheit P
den Transportstrom TS zu identifizieren und zu Puffern, der von
der Übertragungseinheit TSd,
vom Stromeingabeabschnitt TSR geliefert wird; einen Paketermittler 400,
um zu ermitteln, ob die gepufferten Datenpakete P gewünschte Datenpakete sind;
und einen Controller PBAC1, um den Betrieb des Paketpuffervermittlers
PBa1 basierend auf der Bestimmung des Paketermittlers 400 zu
steuern.
-
Der
Paketpuffervermittler PBA enthält
einen DMA Busvermittler 210, einen TSd Eingabestarterfasser 220,
ein Pufferzellenzuweiser (im Folgenden BC Zuweiser) 230,
einen Pufferzellenzuweisungsinformationsspeicher (im Folgenden BC
Zuweisungsinformationsspeicher) 240, einen Schreibzielortpufferzellenspezifizierer
(im Folgenden Zielort BC Spezifizierer) 250, einen Paketpuffercontroller 260,
einen Paketpuffer 270, ein Speichervollendungspufferzellennummernspeichercontroller
(im Folgenden Speichervollendungs BC Nummernspeichercontroller) 280,
und einen Speichervollendungspufferzellennummerspeicher (im Folgenden
ein Speichervollendung BC Nummernspeicher) 290 und einen
Paketzugriffsabschnitt 300.
-
Der
DMA Busvermittler 210 vermittelt durch die Übertragungseinheit
TSd Eingänge
und Ausgänge
der Datenpakete P des Transportstroms TS, hauptsächlich zwischen der Stromeingabeeinheit TSR
und dem Paketpuffercontroller 260. Das heißt, basierend
auf einem Paketkopferfassungssignal Sps, einem Anfragesignal Srq
und der Übertragungseinheit
TSd, welche von der Stromeingabeeinheit TSR beliefert wird, liefert
der DMA Busvermittler 210 das Paketkopferfassungssignal
Sps und die Übertragungseinheit
TSd an den TSd Eingabestarterfasser 220. Des Weiteren gibt
der DMA Busvermittler 210 den ausgewählten vielfachen Programmdatenpaketstrang
Pem, der vom Paketpuffercontroller 260 geliefert wurde,
an den Hauptspeichercontroller 700 aus.
-
Der
TSd Eingabestarterfasser 220 erfasst, basierend auf dem
Paketkopferfassungssignal Sps und der Übertragungseinheit TSd, dass
die Eingabe der Übertragungseinheit
TSd vom Datenpaket P begonnen wird, und liefert die eingegebene Übertragungseinheit
TSd an den Paketpuffercontroller 260. Der TSd Eingabestarterfasser 220 erzeugt
dann ein Pufferzellen-(BC)anfragesignal
Sba, um die Zuweisung von einer der Pufferzellen anzufordern, welche den
Paketpuffer 270 zum Speichern der Datenpakete P erstellt,
mit deren Eingabe von der Übertragungseinheit
TSd begonnen wurde, und gibt das BC Anfragesignal Sba am BC Zuweiser 230 aus.
Wenn einmal eine Pufferzelle BC zugewiesen ist, erzeugt der TSd Eingangsstarterfasser 220 ein
Schreibermöglichungssignal
Sw, welches anzeigt, dass mit dem Schreiben der PC Datenpakete Pc
in die zugewiesene Pufferzelle begonnen werden kann, und gibt das Schreibermöglichungssignal
an den Zielort BC Spezifizierer 250 aus.
-
In
Antwort auf das BC Anfragesignal Sba weist der BC Zuweiser 230 eine
Pufferzelle zum Speichern der eingehenden Datenpakete P, basierend
auf einer zugewiesenen Pufferzellen (BC) Information Iab, zu. Der
BC Zuweiser 230 erzeugt dann Puffer zellen (BC) Zuweisungsinformation
Iba, welche die zugewiesene Pufferzelle anzeigt, und gibt die BC Zuweisungsinformation
Iba an den BC Zuweisungsinformationsspeicher 240 aus.
-
Der
BC Zuweisungsinformationsspeicher 240 speichert die BC
Zuweisungsinformation Iba, welche vom BC Zuweiser 230 geliefert
wird. Der BC Zuweisungsinformationsspeicher 240 liefert
auch die BC Zuweisungsinformation Iba an den Zielort BC Spezifizer 250 und
dann den Speichervollendungen BC Nummernspeichercontroller 280.
Des Weiteren erzeugt der BC Informationsspeicher 240, basierend auf
der BC Zuweisungsinformation Iba, die zugewiesene Pufferzellen (BC)
Information Iab, welche den Zuweisungszustand der entsprechenden
Pufferzellen BC anzeigt, welche den Paketpuffer 270 bilden, und
führt die
Information Iab an den BC Zuweiser 230 zurück.
-
In
Antwort auf das vom TSd Eingabestarterfasser 220 gelieferte
Schreibermöglichungssignal
Sw erzeugt der Zielort BC Spezifizierer 250 ein Schreibanfragesignal
Swd, um ein Schreiben der Übertragungseinheit
TSd in der zugewiesenen Pufferzelle anzuweisen, die von der vom
BC Zuweisungsinformationsspeicher 240 gelieferten BC Zuweisungsinformation
Iba angezeigt wird, und gibt das Schreibanfragesignal Swd an den
Paketpuffercontroller 260 aus.
-
In
Antwort auf das Schreibanfragesignal Swd schreibt der Paketpuffercontroller 260 die Übertragungseinheit
TSd, die von dem TSd Eingabestarterfasser 220 geliefert
wurde, in die zugewiesene Pufferzelle des Paketpuffers 270.
Der Paketpuffercontroller 260 zählt auch die Anzahl von Datenbyte,
die in die zugewiesene Pufferzelle geschrieben wurden, um zu erfassen,
dass die Übertragungseinheiten
TSd für
ein Datenpaket P geschrieben worden sind. Dann erzeugt der Paketpuffercontroller 260 ein Übertragungsvollendungssignal
Stf, welches anzeigt, dass die Übertragung
eines Datenpakets P vom DMA Bus vermittler 210 vollendet
worden ist, und gibt das Übertragungsvollendungssignal
Stf an den Speichervollendungs BC Nummernspeichercontroller 280 aus.
Festzustellen ist, dass die Datengröße eines Datenpakets P des
Transportstroms TS vorher in der Datenstrukturinformation definiert
ist, welche im oben beschriebenen Transportstromdecoder TD1 gespeichert
ist.
-
Basierend
auf der vom BC Zuweisungsinformationsspeicher 240 gelieferten
BC Zuweisungsinformation Iba und dem vom Paketpuffercontroller 260 gelieferten Übertragungsvollendungssignal
Stf erzeugt der Speichervollendungs BC Nummernspeichercontroller 280 ein
Pufferzellennummernsignal (im Folgenden BC Nummernsignal) Sbn, welches
anzeigt, dass in die Pufferzelle ein Datenpaket P geschrieben ist
und ein Schreibanzeigeaktualisierungssignal Swp, um einen Schreibzeiger,
welcher anzeigt, in welchen Speicherbereich eine Pufferzellen (BC) Nummer
Nbc geschrieben werden muss, um eine Stelle vor zu bewegen. Dann
gibt der Speichervollendungs BC Nummernspeichercontroller 280 die
erzeugten Signale Sbn und Swp an den Speichervollendungs BC Nummerspeicher 290 aus.
-
Der
Speichervollendungs BC Nummernspeicher 290 zeichnet die
BC Nummer Nbc, die vom BC Nummernsignal Sbn durch den Schreibzeiger
WP angezeigt wird, im Speicherbereich auf, welcher vom Schreibzeiger
WP angezeigt wird, und stellt dann den Schreibzeiger um eine Stelle
vor, so dass der Schreibzeiger WP den Bereich anzeigt, welcher nahe demjenigen
liegt, in welchen die BC Nummer Nbc geschrieben worden ist. In der
vorliegenden Ausführungsform
wird der Speichervollendungs BC Nummernspeicher 290 vorzugsweise
durch einen Ringspeicher implementiert, wie später mit Bezug auf 2 beschrieben
wird. Daher kann die die BC Nummer Nbc, welche im Speichervollendungs
BC Nummernspeicher 290 gespeichert ist, jedes Mal durch Weiterstellen
des Schreibzeigers WP um eine Stelle, wenn das Schreiben in die
Pufferzelle abgeschlossen ist, entsprechend aktualisiert werden.
-
Der
Paketzugriffsabschnitt 300 greift wahlweise durch den Paketpuffercontroller 260 und
den DMA Busvermittler 210 auf die Datenpakete P zu, unmittelbar
nachdem Sie in der Pufferzelle des Paketpuffers 270 gespeichert
werden, um daran einen Prozess, wie Lesen, Bezugnehmen, Editieren,
etc., auszuführen.
Der Paketzugriffsabschnitt 300 überschreibt und aktualisiert
dann die ursprünglichen
Datenpakete P durch den DMA Busvermittler 210 und den Paketpuffercontroller 260.
-
Zum
Zweck der Ermöglichung
des obigen Zugriffs durch den Paketzugriffsabschnitt 300,
liest der Paketpuffercontroller 260 die Paketidentifikation PID
der Datenpakete P, die in der Pufferzelle gespeichert sind, die
von einem Lesezeiger RP (wird später beschrieben)
angezeigt wird, um die Paketpufferidentifikationsinformation PIDe
zu extrahieren, und gibt dann die Paketleseidentifikation PID an
den DMA Busvermittler 210 aus.
-
Der
Paketpuffervermittler PBA1 erzeugt ein Zustandssignal Sri, welches
den Zustand jeder der obigen Komponenten zur Ausgabe dem Controller PBAC1
anzeigt. Basierend auf dem Zustandssignal Sri erzeugt der Controller
PBAC1 ein Steuersignal Sc1, um den Betrieb einer jeden Komponente
des Paketpuffervermittlers PBA1 zur Ausgabe am Paketpuffervermittler
PBA1 zu steuern. Die Steuerung durch den Controller PBAC1 mit dem
Zustandssignal Sri und das Steuersignal Sc1 sind Stand der Technik und
werden deshalb hier nicht beschrieben.
-
Als
nächstes
wird mit Bezug auf 2 kurz die Relation zwischen
dem BC Zuweisungsinformationsspeicher 240, dem Paketpufferspeicher 270 und dem
Speichervollendungs BC Nummernspeicher 290 beschrieben.
Der Paketpuffer 270 enthält N (N ist eine natürliche Zahl
nicht kleiner als 2) Pufferzellen Bc1 bis BcN, um die Datenpakete
P zeitweise zu speichern, die von der Übertragungseinheit TSd über den
TSd Eingabestarterfasser 220 kommen. Dies ist der Fall,
da zumindest zwei verschiedene Pufferzellen erforderlich sind, eine
zum Speichern der Datenpakete P und die andere zum Lesen der gespeicherten
Datenpakete P.
-
Jede
Pufferzelle kann zeitweise Daten einer bestimmten Größe speichern
(d.h. puffern). Die Kapazität
der Pufferzellen Bc, welche erforderlich ist, um Daten mit einem
bestimmten Umfang zu speichern, wird im Folgenden als minimale Pufferkapazität MBU bezeichnet.
Die minimale Pufferkapazität wird
entsprechend eingestellt, basierend auf der Größe des Pakets. Wenn die minimale
Pufferkapazität MBU
kleiner eingestellt ist als die Paketgrösse, ist es möglich, die
Extrahierung von PC Datenpaketen Pc spezifischer und genauer zu
steuern. Jedoch muss der DMA Busvermittler 210 Eingangs-/Ausgangsvermittlungen
häufiger
ausführen,
und verursacht dabei einen Anstieg der Steuerung und eine Ineffizienz
bei der Verarbeitung.
-
Andererseits
kann eine einzelne Pufferzelle Bc eine Vielzahl von Datenpaketen
speichern, falls die minimale Pufferkapazität größer als die Paketgröße festgelegt
ist (z. B. mehrere Male). In diesem Fall kann die Vielzahl von Datenpaketen
P, welche in der einzelnen Pufferzelle Bc gespeichert sind, jedoch nicht
von einander unterschieden werden, und kann deshalb nicht individuell
gesteuert oder darauf zugegriffen werden. Deshalb sollte die minimale
Pufferkapazität
MBU entsprechend eingestellt werden, basierend auf der internen
Verarbeitungsgeschwindigkeit des Transportstromdecoders, der Eingaberate
der Datenpakete P, der Paketgrösse
und der Häufigkeit des
Zugriffs auf die Datenpaket P.
-
Im
vorliegenden Beispiel ist die minimale Pufferkapazität MBU so
eingestellt, dass die Pufferzelle ein einzelnes Datenpaket P speichern
kann, genauer gesagt 188 Byte. Alternativ kann jedes Datenpaket
P, wie gefordert, mit Hilfsdaten von (a) vorgegebenen Bytes zur
Identifizierung oder Verwaltung der Datenpakete P vorgesehen sein,
und beide Daten können
zusammen in der Pufferzelle BC gespeichert werden.
-
Des
Weiteren kann die minimale Pufferkapazität MBU, wie gefordert, kleiner
eingestellt werden als die oben beschriebene Paketgröße. Das
heißt, das
einzelne Paket kann, aufgeteilt in einer Vielzahl von Pufferzellen
BC, gespeichert werden. In diesem Fall entspricht die minimale Pufferkapazität MBU der gesamten
Maximalgröße der aufgeteilten
Datenpakete P und Verwaltungsbytes von Verwaltungsinformation zum
Aufzeichnen und Verwalten der Aufteilungsinformation, welche den
Zustand der Aufteilung anzeigt. Ebenso wird ein Minimalwert N durch
Multiplizieren von 2 mit der Anzahl von Aufteilungen erhalten.
-
Der
BC Zuweisungsinformationsspeicher 240 hat BC Zuweisungsinformationsbereiche
Ac1 bis AcN, welche zu den Pufferzellen Bc1 bis BcN des Paketpuffers 270 korrespondieren.
Im BC Zuweisungsinformationsbereich Acn (n ist eine natürliche Zahl, wobei
1 ≤ n ≤ N ist) schreibt
der BC Zuweisungsinformationsspeicher 240 Zuweisungsidentifikationsdaten,
welche anzeigen, ob die entsprechende Pufferzelle Bcn zugeordnet
worden ist oder nicht. Das heißt,
der BC Zuweisungsinformationsspeicher 240 hat genauso viele
BC Zuweisungsinformationsbereiche Ad1 bis AcN wie die Anzahl von
Pufferzellen Bc1 bis BcN des Paketpuffers 270.
-
Zum
Beispiel sind die Zuweisungsidentifikationsdaten Binärdaten,
welche durch 1 und 0 dargestellt werden, und ihr Anfangswert ist
0. In diesem Beispiel wird die 1 entsprechend der Pufferzelle Bc1 in
den BC Zuweisungsinformationsbereich Ac1 geschrieben, wenn die Pufferzelle
Bc1 zugewiesen ist. Andererseits wird die 0 basierend auf dem Steuersignal
Sc1, welches von dem Controller PBAC1 geliefert wird, in den BC
Zuweisungsbereich Ac1 geschrieben, nachdem die in die Pufferzelle
Bc1 geschriebenen Daten gelesen werden, wodurch die Pufferzelle
Bc1 freigemacht wird. So gesehen werden die Zuweisungszustände der
entsprechenden Pufferzellen Bc1 bis BcN des Paketpuffers 270 durch eine
Ansammlung von Werten repräsentiert,
die im BC Zuweisungsinformationsbereich Ac1 bis AcN dargestellt
sind. Diese Werte werden an den BC Zuweiser 230 als die
zugewiesene BC Information Iab geliefert.
-
Der
Speichervollendungs BC Nummerspeicher 290 hat Pufferzellen
spezifizierende Bereiche Rc (Rc1 bis RcM), welche eine BC Nummer
NbcN speichern, die von den Pufferzellen Bc1 bis BcN des Paketpuffers 270 (M
ist eine natürliche
Zahl, wobei 2 ≤ M ≤ N ist) spezifiziert
sind. Der Speichervollendungs BC Nummernspeicher 290 ist
vorzugsweise durch einen Ringspeicher ausgeführt, wobei das Einlesen in
die BC spezifizierenden Bereiche Rc1 bis RcM sequenziell und im
Kreis ausgeführt
wird. Folglich muss der BC spezifizierende Bereich Rc im Unterschied
zum BC Zuweisungsinformationsspeicher 240 nicht so oft
geliefert werden wie die Anzahl der Pufferzellen Bc1 bis BcN, sondern
nur M BC spezifizierende Bereiche Rc1 bis RcM genügen.
-
Der
BC spezifizierende Bereich Rcm (m ist eine natürliche Zahl, wobei 1 ≤ m ≤ M ist), in
welchem die BC Nummer Nbcn geschrieben ist, wird vom Schreibzeiger
WP angezeigt. Der BC spezifizierende Bereich Rcm, aus dem die geschriebene
BC Nummer Nbcn gelesen wird, wird vom Lesezeiger RP angezeigt. Der
Lesezeiger WP zeigt den BC spezifizierenden Bereich Rcm an, welcher
der Gleiche oder nahe an dem Ort ist, welcher vom Lesezeiger RP
angezeigt wird. Wie oben beschrieben, wird der Schreibzeiger WP
vorgestellt, basierend auf dem Schreibanzei geaktualisierungssignal
Swp, welches vom Schreibvollendungs BC Nummernspeichercontroller
ausgegeben wird. Andererseits wird der Lesezeiger RP vorgestellt,
basierend auf dem Steuersignal Sc1, welches vom Controller PBAC1
ausgegeben wird.
-
Wenn
der Schreibzeiger WP um eine Stelle weiter vorgestellt wird als
der Ort, welcher vom Lesezeiger RP angezeigt wird, hat die Pufferzelle
Bcn, welche vom Lesezeiger RP in dem BC spezifizierenden Bereich
Rcm angezeigt wird, werden die vollständigen Datenpakete darin in
einem daraus lesbaren Zustand gespeichert. Wenn der Schreibzeiger und
der Lesezeiger denselben Ort anzeigen, dann heißt dies, dass es keine Pufferzelle
Bcn gibt, von der die Daten lesbar sind.
-
Mit
Bezug auf ein Wellenformdiagramm, welches in 3 gezeigt
ist, werden im Folgenden die Betriebe des Stromeingabeabschnitts
TSR, des DMA Busvermittlers 210 und des Paketpuffercontrollers 260 beschrieben.
Wie in 3 gezeigt, wird der Transportstrom
TS, der aus einer Vielzahl von 188 Byte Datenpaketen P zusammengesetzt
ist, sequenziell von einem Byte von der externen Transportstromquelle
an den Stromeingabeabschnitt TSR in Synchronisation mit einem Eingabeübertragungstakt Ck
geliefert. Obwohl der Transportstrom TS von einem Bit anstatt einem
Byte geliefert werden könnte, ist
der Prozess im Grunde der Gleiche, unabhängig von der Eingabedateneinheit.
Deshalb wird im Folgenden der Fall beschrieben, wo der Transportstrom von
einem Byte geliefert wird.
-
Der
Stromeingabeabschnitt TSR erfasst den Paketkopf von jedem Datenpaket
P zur Zeit des Erfassens der synchronen Daten des ersten einen Byte.
Immer wenn der Paketkopf erfasst wird, erzeugt der Stromeingabeabschnitt
TSR ein Paketkopferfassungssignal SPs zur Ausgabe an den DMA Busvermittler 210.
-
Der
Stromeingabeabschnitt TSR erzeugt für jedes achte Byte vom Paketkopf
ein Anfragesignal Srq, um den DMA Busvermittler 210 aufzufordern, eine
Eingabe der Übertragungseinheit
TSd zu akzeptieren, und gibt das Anfragesignal Srq an den DMA Busvermittler 210 aus.
Mit anderen Worten wird die Übertragungseinheit
TSd und das Anfragesignal Srq zur Übertragung durch die Übertragungseinheit
TSd für
jedes Paket (188 Byte) ausgegeben.
-
In
Antwort auf das Anfragesignal Srq vermittelt der DMA Busvermittler 210 Eingabe-/Ausgabe, um
eine Eingabe der Übertragungseinheit
TSd vom Stromeingabeabschnitt TSR vorzubereiten. Nach der Vorbereitung,
das heißt,
wenn eine vorgegebene Zeit Ta abgelaufen ist, nachdem das Anfragesignal
Srq ankommt, erzeugt der DMA Busvermittler 210 ein effektives
Datensignal Sde zur Ausgabe an den Stromeingabeabschnitt TSR. Die
Zeit Ta wird im Wesentlichen basierend auf der internen Verarbeitungszeit
ermittelt, welche vom DMA Busvermittler 210 und auch der
Datenpuffervorrichtung DBA1 in Anspruch genommen wird, und kann
basierend auf dem Zustand der Datenpuffervorrichtung DBA1 variabel sein.
-
In
Antwort auf das effektive Datensignal Sde gibt der Stromeingabeabschnitt
TSR die Übertragungseinheit
TSd der Datenpakete P, welche im internen Puffer zur Ausgabe an
den DMA Busvermittler 210 gespeichert sind, aus.
-
Basierend
auf dem Schreibanfragesignal Swd schreibt der Paketpuffercontroller 260 die Übertragungseinheit
TSd, welche durch den DMA Busvermittler 210 geliefert wird,
und den TSd Eingabestarterfasser 220 in die zugewiesene
Pufferzelle des Paketpuffers 270. Beim Schreiben der Übertragungseinheit
TSd für
ein Datenpaket P erzeugt der Paketpuffercontroller 260 ein Übertragungsvollendungssignal
Stf zur Ausgabe an den Speichervollendungs BC Nummernspeicher 280.
-
Mit
Bezug auf 4, 5 und 6 wird als
nächstes
im Detail der Betrieb des Transportstromdecoders TD1 beschrieben.
Wie im Hauptfluss in 4 gezeigt, wird der Transportstromdecoder TD1
eingeschaltet, um den Betrieb zu beginnen.
-
Als
erstes werden im Subroutinenschritt #100 zur Initialisierung Werte
auf 0 gesetzt, welche vom Schreibzeiger WP und vom Lesezeiger WP
des Speichervollendungsnummernspeichers 290 angezeigt werden.
-
Im
Subroutinenschritt #200 zur Darstellung verteilter Programme und
möglicher
Prozesse auf dem einzelnen Transportstrom TS, werden dem Anwender
die verteilten Programme und die darin möglichen Prozesse dargestellt.
Wie im Detail später
beschrieben wird, liest der TD Controller TDC1 die zuvor im PAT
Speicherbereich A (PAT) des Hauptspeichers 900 gespeicherte
Programmzuordnungstabelle PAT zum Erzeugen eines Programmdarstellungssignals
Sp1, welches die verteilten Programme und die Verarbeitungsfunktionen
anzeigt, welche vom Transportstromdecoder TD1 an den Anwender zur Ausgabe
an den Subprozessanfrageeingabeabschnitt APR geliefert werden können. Basierend
auf dem Programmdarstellungssignal Sp1 stellt der Subprozessanfrageeingabeabschnitt
APR dem Anwender eine Liste der verteilten Programme und Darstellungsfunktionen
zur Verfügung.
Der Anwender betreibt den Subprozessanfrageeingabeabschnitt APR zum
Auswählen
eines gewünschten
Programms und darin enthaltener Prozesse aus den dargestellten Programmen
und Prozessen.
-
Im
Subroutinenschritt #300 zum Erfassen einer Anfrage für einen
Prozess auf dem einzelnen Transportstrom TS ermittelt der Subprozessanfrageeingabeabschnitt
APR die Prozessanfrage vom Anwender. Genauer, erzeugt der Subprozessanfrageeingabeabschnitt
APR basierend auf dem Betrieb durch den Anwender ein Prozessanfragesignal
Se1, welches die Auswahl des Anwenders zur Ausgabe an den TD Controller
TDC1 anzeigt.
-
Im
Subroutinenschritt #400 zur Ermittlung eines Prozesses auf dem einzelnen
Transportstrom TS wird ein spezifischer Prozess bestimmt, welcher durch
die Transportstromdecoderseite TD1 in Antwort auf die Prozessanfrage
durch den Anwender ausgeführt
werden soll. Spezifisch erzeugt der TD Controller TDC1, basierend
auf dem Prozessanfragesignal Se1, welches von dem Subprozessanfrageeingabeabschnitt
APR geliefert wird, Prozessinformation, welche durch ein zu verarbeitendes
Programm, ein Verarbeitungsschema und eine Verarbeitungsvorrichtung,
welche für
den Prozess erforderlich sind, typisiert ist.
-
Im
Subroutinenschritt #500 zum Erzeugen der Zieldatenpaketidentifikations-(ID)
Information PIDd, wird die Zieldatenpaket-ID Information PIDd, welche
die Datenpakete P anzeigt, welche verarbeitet werden sollen, erzeugt.
Spezifisch spezifiziert der TD Controller TDC1, basierend auf der
Prozessinformation, welche im Schritt #400 ermittelt werden soll, die
Paketindetifikation PID der Datenpakete P, welche tatsächlich unter
den Datenpaketen P verarbeitet werden sollen, welche das ausgewählte Programm zum
Erzeugen der Zieldatenpaket-ID Information PIDd bilden.
-
Im
Subroutinenschritt #600 zum Speichern der Datenpakete P des einzelnen
Transportstroms TS wird damit begonnen, die Vielzahl der Datenpakete
P, die im einzelnen Transportstrom TS enthalten ist, der sequenziell
an den Transportstromdecoder TD1 geliefert wird, an die Datenpuffervorrichtung DBA1
zu Puffern. Es ist festzuhalten, dass die Vielzahl der Datenpakete
P von einer Einheit der Datenpakete P/n (n ist eine natürliche Zahl)
in den entsprechenden Pufferzellen Bc der Datenpuffervorrichtung DBA1
gespeichert werden. Der Prozess in diesem Schritt wird später im Detail
mit Bezug auf 5 beschrieben. Wenn einmal
eine vorgegebene Anzahl von Datenpaketen P in den Pufferzellen gespeichert ist,
beginnt der nächste
Schritt #700. Mit anderen Worten beginnt der Prozess im Schritt
#700 mit der vorgegebenen Anzahl von Pufferzellen Bc, wobei in jeder
die Datenpakete der Datenpuffervorrichtung DBA1 gespeichert sind.
-
Im
Subroutinenschritt #700 zur Auswahl der Zieldatenpakete P des einzelnen
Transportstroms TS wird das Datenpaket P, das verarbeitet werden
soll (Zieldatenpakete P), aus der Vielzahl von Datenpaketen P ausgewählt, welche
sequenziell in den Pufferzellen Bc der Datenpuffervorrichtung DBA1
gespeichert werden. Spezifisch wird ermittelt, ob das Datenpaket
P, welches in der Pufferzelle Bc gespeichert wird, das im Schritt
#400 spezifiziert ist, basierend darauf, ob das Datenpaket P die
im Schritt #500 spezifizierte Paketidentifikation PID hat, wobei
die Zieldatenpakete P ausgewählt
werden. Der Prozess in diesem Schritt wird später im Detail mit Bezug auf 6 beschrieben.
-
Im
Subroutinenschritt #800 zum Ausführen des
angefragten Prozesses an den Datenpaketen P des einzelnen Transportstroms
TS wird der vom Anwender angefragte Prozess, welcher im Schritt
#400 ermittelt wird, an den Datenpaketen P ausgeführt, welche
im Schritt #700 ausgewählt
werden. In der vorliegenden Ausführungsform
werden aus der Vielzahl von Datenpaketen P des einzelnen Transportstroms
TS, welcher sequentiell in den Pufferzellen Bc gespeichert wird,
nur die PC Datenpakete Pc, welche im Schritt #700 ausgewählt werden,
für ein
spezifisches Programm ausgewählt,
wobei der vielfache Programmdatenpaketstrang Per ausgewählt wird, welcher
später
mit Bezug auf 7 beschrieben wird. Festzustellen
ist, dass der angefragte Prozess nicht auf die Auswahl und Extraktion
der PC Datenpakete Pc beschränkt
ist, welche die spezifischen Pro gramme bilden, sondern es sich auch
um andere digitale Prozesse handeln kann.
-
Im
Subroutinenschritt #900 zum Speichern der verarbeiteten Datenpakete
P des einzelnen Transportstroms TS wird der ausgewählte vielfache Programmdatenpaketstrang
Per, welcher im Schritt #800 ausgewählt wird, an den Hauptspeichercontroller 700 ausgegeben,
wo der vielfache Programmdatenpaketstrang Pms erzeugt wird.
-
Festzustellen
ist, dass der Schritt #600 ein passiver Prozess ist, welcher hauptsächlich durch Hardware
ausgeführt
wird, während
die Schritte #700 bis #900 positive Prozesse sind, welche hauptsächlich durch
Software ausgeführt
werden. Deshalb werden der Schritt #600 und die Schritte #700 bis
#900 vorzugsweise als zeitgleiche Verarbeitung angelegt. Für die zeitgleiche
Verarbeitung ist es vorzuziehen, dass eine angemessene Anzahl von
Pufferzellen Bc die Datenpakete P im Schritt #600 speichert, bevor die
Zieldatenpaket P Auswahlsubroutine mit Schritt #700 beginnt. Dies
wird später
mit Bezug auf 6 beschrieben.
-
In
der Zeichnung werden jedoch die Schritte #600, #700, #800 und #900
als eine Reihe von wiederholten Verarbeitungen angelegt. Der Betrieb
einer so angelegten Verarbeitung wird im Folgenden kurz beschrieben.
Bei Ausführung
des Subroutinenschritts #600 zum erstmaligen Speichern der Datenpakete
P des einzelnen Transportstroms TS wartet der Transportstromdecoder
TD1, bis eine vorgegebene Anzahl von Pufferzellen Bc in den Datenpaketen P
gespeichert ist, und führt
dann die Schritte #700, #800 und #900 aus. Bei Ausführung von
Schritt #600 wartet der Transportstromdecoder TD1 im Folgenden und
danach, bis eine Pufferzelle Bc (nicht deren vorgegebene Anzahl)
die Datenpakete P gespeichert hat und führt dann die Schritte #700
bis #900 aus.
-
In
diesem Fall wird die vorgegebene Anzahl, basierend auf der Verarbeitungsgeschwindigkeit
des gesamten Datenpufferapparats DBA1, so ermittelt, dass ein nicht
zulässiger
Unterlauf oder Überlauf
verhindert wird, wenn die Schritte #700 bis #900 durch die Software
ausgeführt
werden. Daher ist ein Minimalwert der vorgegebenen Anzahl 1. In
der Praxis wird die Sicherstellung, dass die vorgegebene Anzahl
von Pufferzellen Bc die Datenpakete P gespeichert hat, basierend
auf der Zeit, wenn Schritt #600 beginnt, bis zu der Zeit, wenn Schritt
#700 beginnt, durchgeführt.
-
In 12 ist eine Beziehung zwischen dem Subroutinenschritt
#700 zur Auswahl der Zieldatenpakete P des einzelnen Transportstroms
TS und dem Subroutinenschritts #800 zum Ausführen des angefragten Prozesses
mit den Datenpaketen P des einzelnen Transportstroms TS schematisch
dargestellt. 12 ist ähnlich wie die bereits beschriebene 11 mit einer Darstellung versehen, welche anzeigt,
wie die Schritte #700 und #800 darauf bezogen sind. Das heißt, es wird
im Schritt #700 für
alle entsprechenden Datenpakete P des an den Transportstromdecoder
TD1 gelieferten Transportstroms TS ermittelt, ob die Datenpakete
P verarbeitet werden sollen. Dann werden nur die Datenpakete P,
die verarbeitet werden sollen (in 12 mit
fettgedruckten Pfeilen dargestellt), dem vom Anwender angefragten Prozess
im Schritt #800 unterzogen.
-
Wie
oben in der vorliegenden Ausführungsform
beschrieben, ist der vom Anwender angefragte Prozess eine Extraktion
aus den Programmen 1 und 2. Daher werden von allen Datenpaketen
P, die in den Pufferzellen Bc gespeichert sind, nur die PC Datenpakete
Pc, welche die Paketidentifikationen PID der Hunderter und der Zweihunderter
haben, und die Verwaltungsdatenpakete PcA im Schritt #700 ausgewählt. Dann
werden im Schritt #800 die ausgewählten PC Datenpakete Pc und
die Verwaltungs datenpakete PcA ausgegeben, wie sie von den Pufferzellen
Bc an die Aussenseite der Datenpuffervorrichtung DBA1 als der ausgewählte vielfache
Programmdatenpaketstrang Pem ausgegeben werden.
-
Wenn
der vom Anwender angefragte Prozess ein Prozess der PC Datenpakete
Pc eines spezifischen Programms ist, werden die Verwaltungsdatenpakete
PcA und die PC Datenpakete Pc in der obigen Art ausgewählt, und
dann werden nur die PC Datenpakete Pc, welche das spezifische Programm
bilden, verarbeitet. Dies wird später mit Bezug auf 6 kurz
beschrieben.
-
Mit
Bezug auf 5 wird im Folgenden im Detail
der Betrieb durch den Paketpuffer 270 im Schritt #600 zum
Speichern der Datenpakete P des einzelnen Transportstroms TS beschrieben.
Als erstes wird im Schritt S602 der Transportstrom TS von der externen
Transportstromlieferquelle an den Transportstromeingabeabschnitt
TSR geliefert. Der Prozess geht dann zu Schritt S604 über.
-
Im
Schritt S604 erfasst der Stromeingabeabschnitt TSR den Paketkopf
des empfangenen Transportstroms TS. Insbesondere erfasst der Transportstromeingabeabschnitt
TSR den Kopf der empfangenen Datenpakete P in Anbetracht der Struktur
des empfangenen Transportstroms TS, basierend auf einem Transportstromstruktursignal
Sts, welches vom TD Controller TDC1 geliefert wird. Der Prozess
geht dann zu Schritt S606 über.
-
Im
Schritt S606 gibt der Stromeingabeabschnitt TSR das Paketkopferfassungssignal
Sps an den DMA Busvermittler 210 aus. Das Paketkopferfassungssignal
Sps geht durch den DMA Busvermittler 210 an den TSd Eingabestarterfasser 220.
Der Prozess geht dann zum nächsten
Schritt S605 über.
-
Im
Schritt S605 speichert der Stromeingabeabschnitt TSR in seinem eingebauten
Eingangspuffer die dem Paketkopf nachfol genden Datenpakete. Nachdem
das Speichern der Übertragungseinheit TSd
abgeschlossen ist, geht der Prozess zum nächsten Schritt S607 über. Festzustellen
ist, dass die Kapazität
des im Stromeingabeabschnitt eingebauten Eingabepuffers, basierend
auf der Übertragungsrate des
Eingangsstroms, etc., angemessen ermittelt werden muss, um nicht
beim Speichern der Paketeingabedaten zu versagen, zumindest größer als
die Übertragungseinheit
TSd sein muss.
-
Im
Schritt S607 gibt der Stromeingabeabschnitt TSR das Anfragesignal
Srq an den DMA Busvermittler 210 weiter. Der Prozess geht
dann zum nächsten
Schritt S608 über.
-
Im
Schritt S608 führt
der DMA Busvermittler 210, der DMA Busvermittler 210 basierend
auf dem Anfragesignal Srq zum Vorbereiten einer Eingabe der Datenpakete
P durch die Übertragungseinheit TSd
eine Vermittlung aus. Der Prozess geht dann zum nächsten Schritt
S610 über.
-
Im
Schritt S612 wird die Übertragung
der Datenpakete P durch die Übertragungseinheit
TSd von dem Stromeingabeabschnitt TSR an den DMA Busvermittler 210 in
Antwort auf das effektive Datensignal Sde begonnen. Die Übertragungseinheit
TSd geht durch den DMA Busvermittler 210 an den TSd Eingabestarterfasser 220.
Der Prozess geht dann zum nächsten
Schritt S614 über.
-
Im
Schritt S614 erfasst der TSd Eingabestarterfasser 220 basierend
auf dem Paketkopferfassungssignal Sps, welches im Schritt S606 geliefert wird,
dass mit der Eingabe der Übertragungseinheit TSd
begonnen worden ist. Das heißt,
Daten für
ein Paket werden wiederholt durch die Übertragungseinheit TSd von
dem Stromeingabeabschnitt TSR übertragen.
Daher kann der Beginn der Eingabe der Datenpakete P durch Erfassen
der Übertragungseinheit TSd,
welche zuerst nach der Eingabe des Pa ketkopferfassungssignals Sps
kommt, ermittelt werden. Der Prozess geht dann zum nächsten Schritt
S615 über.
-
Im
Schritt S615 ermittelt der TSd Eingabestarterfasser 220,
ob der Paketkopf eingegeben worden ist. Das heißt, wie oben beschrieben, der
TSd Eingabestarterfasser 220 ermittelt, dass der Paketkopf
eingegeben worden ist, wenn die Übertragungseinheit
TSd zuerst nach dem Paketkopferfassungssignal Sps kommt. Der Prozess
geht dann zum nächsten
Schritt S616 über.
Bei Nein, das heißt,
wenn ermittelt wird, dass die dem Paketkopf nachfolgende Übertragungseinheit
TSd eingegeben worden ist, geht in diesem Schritt der Prozess auf
Schritt S630 über,
welcher später
beschrieben wird.
-
Im
Schritt S616 erzeugt der TSd Eingabestarterfasser 220 ein
BC Anfragesignal Sba zur Ausgabe an den BC Zuweiser 230 und
erzeugt auch ein Schreibermöglichungssignal
Sw zur Ausgabe an den Zielort BC Spezifizierer 250. Der
Prozess geht dann zum nächsten
Schritt S618 über.
-
Im
Schritt S618 weist der BC Zuweiser 230, basierend auf der
zugewiesenen BC Information Iab, welche von dem BC Zuweisungsinformationsspeicher 240 geliefert
wird, eine Pufferzelle Bc zu, welche mit der Übertragungseinheit TSd beschrieben
werden soll, welche im Schritt S612 übertragen wird. Der Prozess
geht dann zum nächsten
Schritt S620 über.
-
Im
Schritt S620 erzeugt der BC Zuweiser 230 die BC Zuweisungsinformation
Iba, welche die Pufferzelle Bc anzeigt, die im Schritt S612 zur
Ausgabe an den BC Zuweisungsinformationsspeicher 240 zugewiesen
wird. Der Prozess geht dann zum nächsten Schritt S622 über.
-
Im
Schritt S622 erzeugt der BC Zuweisungsinformationsspeicher 240 die
zugewiesene BC Information Iab und speichert die zu gewiesene BC
Information Iab basierend auf der BC Zuweisungsinformation Iba.
Der Prozess geht dann zum nächsten Schritt
S624 über.
-
Im
Schritt S624 gibt der Zuweisungsinformationsspeicher 240 die
BC Zuweisungsinformation Iba, welche von dem BC Zuweiser 230 geliefert
wurde, an den Zielort BC Spezifizierer 250 und den Speichervollendungs
BC Nummernspeichercontroller 280 aus. Der Prozess geht
dann zum nächsten
Schritt S626 über.
-
Im
Schritt S626 erzeugt der TSd Eingabestarterfasser 220 ein
Schreibermöglichungssignal Sw
zur Ermöglichung
des Schreibens der Übertragungseinheit
TSd in die Pufferzelle Bc des Paketpuffers 270 und gibt
dann das erzeugte Schreibermöglichungssignal
Sw an den Zielort BC Spezifizierer 250 weiter. Der Prozess
geht dann zum nächsten
Schritt S628 über.
-
Im
Schritt S630 schreibt (speichert) der Paketpuffercontroller 260 die Übertragungseinheit
TSd der Datenpakete P, welche durch den TSd Eingabestarterfasser 220 kommen,
in die Pufferzelle Bc, welche durch das Schreibanfragesignal Swd
(BC Zuweisungsinformation Iba) spezifiziert ist. Der Prozess geht
dann zum Schritt S632 über.
-
Festzuhalten
ist, dass sich der Prozess im Schritt S630 leicht in der Bedeutung
in Abhängigkeit davon
unterscheidet, ob der unmittelbar vorhergehende Prozessschritt S628
oder S615 ist. Das heißt, zuerst
ist ein Fall zu betrachten, wo die Übertragungsrate TSd beliebiger
Datenpakete P zuerst in einer beliebigen Pufferzelle Bc gespeichert
ist. In diesem Fall geht der Prozess durch die oben beschriebenen
Schritte S615, S616, S618, S620, S622, S624, S626 und S628, wobei
eine Zielpufferzelle zur Verwendung zugewiesen und vorbereitet wird.
Dann wird im Schritt S630 die erste Übertragungseinheit TSd der
Datenpakete P im vorbereiteten Pufferzellenspeicher Bc gespeichert.
Spezifisch antwortet im Schritt S628 der Zielortpufferzellenspezifizierer 250 auf
das Schreibermöglichungssignal
Sw, um das Schreibanfragesignal Swd zu erzeugen, um anzufragen,
in die zugewiesene durch die BC Zuweisungsinformation spezifizierte
Pufferzelle Bc zu speichern, und gibt das Schreibanfragesignal Swd
an den Paketpuffercontroller 260 aus. In Antwort auf das Schreibanfragesignal
Swd gibt der Paketpuffercontroller 260 die Übertragungseinheit
TSd aus, welche durch den TSd Eingabestarterfasser 220 an
den Paketpuffer 270 geliefert wird. Folglich wird die erste Übertragungseinheit
TSd der Datenpakete P in der zugewiesenen Pufferzelle Bc gespeichert.
Dann geht der Prozess zum nächsten
Schritt S632 über.
-
Als
Nächstes
wird der andere Fall betrachtet, wo die Übertragungseinheit TSd, welche
auf die erste Übertragungseinheit
TSd der Datenpakete folgt, auch in derselben Pufferzelle Bc gespeichert
ist. In diesem Fall überspringt
der Prozess die oben beschriebenen Schritte S616, S618, S620, S622,
S624, S626 und S628, wobei eine Zielpufferzelle zugewiesen und zur
Verwendung vorbereitet wird. Das heißt, der Prozess springt vom
Schritt S615 direkt zum Schritt S630. Im Schritt S630 wird die nachfolgende Übertragungseinheit
TSd in der derzeit verwendeten Pufferzelle Bc gespeichert. Dann
geht der Prozess zum nächsten
Schritt S632 über.
-
Im
Schritt S632 wird ermittelt, ob die zugewiesene Pufferzelle Bc darin
einen Datensatz P gespeichert hat. Wenn keiner gespeichert ist,
wird Nein ermittelt, und der Prozess kehrt zu dem oben beschriebenen
Schritt S605 zurück
und wiederholt die Schritte S605 bis S630, um damit fortzufahren,
die Übertragungseinheit
TSd der Datenpakete P zu speichern. Das heißt, die Anfrage Srq wird für jede Übertragung
TSd vom Stromeingabeabschnitt TSr an den DMA Busvermittler 210 (Schritt
S607) ausgegeben. In Antwort auf das Anfragesignal Srq führt der
DMA Busvermittler 210 eine Vermittlung durch (Schritt S608)
und gibt das effektive Datensignal Sde an den Stromeingabeabschnitt
TSR (Schritt 610) aus. In Antwort auf das effektive Datensignal
Sde beginnt der Stromeingabeabschnitt TSR mit dem Übertragen
der nachfolgenden Übertragungseinheit
TSd der Datenpakete (Schritt S612) und speichert damit fortlaufend die
folgende Übertragungsrate
TSd in der zugewiesenen Pufferzelle Bc (Schritte S615, S630). So
wird der Prozess wiederholt ausgeführt.
-
Während des
obigen Prozesses zählt
der Paketpuffercontroller 260 die Anzahl der Bytes, die
in die Pufferzelle Bc geschrieben werden, um zu ermitteln, ob die Übertragungsbereiche
TSd eines Datenpakets P gespeichert worden sind. Der Paketpuffercontroller 260 erzeugt
ein Übertragungsvollendungssignal
Stf zur Ausgabe an den Speichervollendungs BC Nummernspeichercontroller 280.
Die Zählnummer
wird von der Datengröße der Datenpakete
P des Eingabetransportstroms TS erhalten, der Datengröße, welche
von der vorher im TD Controller TDC1 gespeicherten Transportstromstrukturinformation
angezeigt wird. Zur Zeit der Speichervollendung eines Datenpakets
P wird in diesem Schritt S632 Ja ermittelt und der Prozess geht
zum nächsten
Schritt S634 über.
-
Im
Schritt S634 erzeugt der Speichervollendungs BC Nummernspeichercontroller 280,
basierend auf dem Übertragungsvollendungssignal
Stf und der BC Zuweisungsinformation, ein BC Nummernsignal Sbn,
welches die Pufferzelle Bc anzeigt, welche darin die Speicherung
eines Datenpakets P vollendet hat. Das heißt, das BC Nummernsignal Sbn zeigt
die BC Nummer Nbc der Pufferzelle Bc an, welche von der BC Zuweisungsinformation
Iba angezeigt wird, wenn das Speichervollendungssignal Stf geliefert
wird. Der Prozess geht dann zum nächsten Schritt S636 über.
-
Im
Schritt S636 speichert der Speichervollendungs BC Nummernspeicher 290 die
BC Nummer Nbc, welche vom BC Nummernsignal Sbn angezeigt wird, in
einem Bereich, welcher vom Schreibzeiger WP angezeigt wird. Der
Prozess geht dann zum nächsten
Schritt S638 über.
-
Im
Schritt S638 gibt der Speichervollendungs BC Nummernspeichercontroller 280 das Schreibanzeigeaktualisierungssignal
Swp an den Speichervollendungs BC Nummernspeichercontroller 280 zum
Vorstellen des Schreibzeigers P des Speichervollendungs BC Nummernspeichercontrollers 280 um
eine Stelle aus. Der Prozess kehrt dann zum obigen Schritt S604
zur Vorbereitung der Speicherung des nachfolgenden Datenpakets P
zurück.
-
Mit
Bezug auf ein in 6 gezeigtes Flussdiagramm wird
als nächstes
der Prozess im obigen Schritt #800 beschrieben, welcher von der
Datenpuffervorrichtung DBA1 zur Ausführung des angefragten Prozesses
ausgeführt
wird. Festzuhalten ist, dass der in der Zeichnung gezeigte Prozess
sowohl auf das simultane Verarbeiten des Schritts #600 und der Schritte
#700 bis #900 als auch auf das sequenzielle Verarbeiten dieser Schritte
angewendet werden kann.
-
Zuerst
liest der TD Controller TDC1 im Schritt S802 Werte des Schreibzeigers
WP und des Lesezeigers RP aus dem Speichervollendungs BC Nummernspeicher 290.
Der Schreibzeiger WP ist ein Parameter, welcher die Pufferzelle
Bc alternativ anzeigt, in welche die sequenziell gelieferten Datenpakete
des Transportstroms TS geschrieben werden. Der Lesezeiger RP ist
ein Parameter, welcher eine Pufferzelle anzeigt, von welcher die
Daten gelesen werden.
-
Im
Schritt S804 ermittelt der TD Controller TDC1, ob die Werte des
Schreibzeigers WP und des Lesezeigers RP, welche im Schritt S802
gelesen werden, gleich sind. Falls sie gleich sind, wird Ja ermittelt,
das heißt,
es wird ermittelt, dass eine spezifische Pufferzelle Bc verwendet
wird. Der Prozess kehrt dann zum obigen Schritt S804 zurück. Der
Prozess im Schritt S804 dient dazu, den Zugriff auf die Datenpakete
P zu verhindern, die noch nicht vollständig in der Pufferzelle gespeichert
sind.
-
Andererseits
wird im Schritt S804 Nein ermittelt, falls keine Gleichheit vorliegt,
das heißt,
es wird ermittelt, dass keine Pufferzelle verwendet wird. Dies heißt, dass
es eine Pufferzelle gibt, welche das vollständige Datenpaket speichert.
Mit anderen Worten wird im Paketpuffer 270 zumindest ein
Datenpaket P, welches auf Anfrage von dem Anwender verarbeitet werden
soll, gespeichert. Der Prozess geht dann zum nächsten Schritt S806 über.
-
Wenn
die Schritte S804 und S806 wie oben strukturiert sind, kann der
Prozess sowohl auf das simultane Verarbeiten von Schritt #600 und
der Schritte #700 bis #900 als auch das sequenzielle Verarbeiten
dieser Schritte angewendet werden. Das heißt, dass es bei der simultanen
Verarbeitung möglich
ist, den vom Anwender angefragten Prozess an der Ausführung zu
hindern, falls die angemessene Anzahl von Datenpaketen nicht im
Paketpuffer 270 gespeichert worden ist (im schlimmsten
Fall speichern keine Pufferzellen das vollständige Datenpaket P). Bei der sequenziellen
Verarbeitung kann die Vollendung der Speicherung in der vorgegebenen
Anzahl von Pufferzellen Bc durch Differenzierung der Startzeit von Schritt
#600 von derjenigen von Schritt #700 sichergestellt werden. Sogar
bei dieser Vorgehensweise kann jedoch eine Abweichung bei der Speicherung des
Datenpakets aus bestimmten Gründen
auf dem Übertragungspfad
des Transportstroms TS oder anderweitig auftreten. Sogar in solchen
Fällen
kann der in 6 gezeigte Prozess Abweichungen
bei der Verarbeitung durch einen Unterlauf verhindern.
-
Im
Schritt S806 wird die Pufferzelle Bc, auf die zugegriffen werden
soll, ermittelt, um zu prüfen, ob
die zur Verarbeitung gespeicherten Datenpakete tatsächlich verarbeitet
werden sollen. Spezifisch liest der TD Controller TDC1 die BC Nummer
Nbcn aus dem BC spezifizierenden Bereich Rc, welcher vom Lesezeiger
RP angezeigt wird. Wenn im Schritt S810 (wird später beschrieben) ermittelt
wird, dass das Datenpaket P verarbeitet werden soll, wird wieder
auf die im Schritt S806 ermittelte Pufferzelle Bc im Schritt S814
(wird später
beschrieben) zugegriffen, um den vom Anwender angefragten Prozess
mit dem Datenpaket P auszuführen.
Nach Schritt S806 geht der Prozess zum nächsten Schritt S808 über.
-
Im
Schritt S808 wird aus dem Datenpaket P, welches in der zur im Schritt
S806 gelesenen BC Nummer Nbcn korrespondierenden Pufferzelle Bon (der
Paketpuffer 270) gespeichert ist, die Paketidentifikation
PID des Datenpakets P gelesen, und dann wird die Pufferpaket ID
Information PIDe erzeugt. Der Prozess geht dann zum Schritt S810 über.
-
Im
Schritt S810 wird ermittelt, ob die Pufferpaket ID Information PIDe,
welche im Schritt S808 erzeugt wurde, mit der Zieldatenpaket ID
Information PIDd übereinstimmt,
welche im obigen Schritt #500 erzeugt wurde. Spezifisch wird ermittelt,
ob die Paketidentifikation PID, welche von der Pufferpaket ID Information
PIDe angezeigt wird, in der Zieldatenpaket ID Information PIDd enthalten
ist. Wenn Ja, das heißt,
wenn das Datenpaket, auf welches gerade zugegriffen wird, Gegenstand
eines vom Anwender angefragten Prozesses sein soll, geht der Prozess
zum nächsten
Schritt S812 über.
Zu dieser Zeit wird das Datenpaket, welches in der Pufferzelle Bc
gespeichert ist, als das Zieldatenpaket ermittelt.
-
Im
Schritt S812 wird der im obigen Schritt #400 ermittelte Prozess
an dem Datenpaket ausgeführt,
auf welches gerade zugegriffen wird. In der vorliegenden Ausführungsform
ist der vom Anwender angefragte Prozess lediglich die Extraktion
der Programme 1 und 2 aus dem Transportstrom TS. Daher ist der im
Schritt S812 auszuführende
Prozess insbesondere die Ermittlung, ob das Datenpaket die von der
Programmabbildungstabelle PMT1 oder PMT2 definierte Paketidentifikation
PID hat. Dieser Prozess ist jedoch im Schritt S810 ausgeführt worden.
Daher wird das Datenpaket P in der vorliegenden Ausführungsform
im Wesentlichen keinem anderen Prozess im Schritt S812 unterworfen.
Der Prozess geht dann zum nächsten
Schritt S814 über.
-
Im
Schritt S814 werden die Datenpakete P, welche in den Schritten S810
und S812 in Antwort auf die Anfrage des Anwenders angemessen verarbeitet
wurden, von der Pufferzelle BcN durch die Übertragungseinheit TSd gelesen.
Dann wird die Übertragung
der Datenpakete P durch den Paketpuffercontroller 260 an
den DMA Busvermittler 210 begonnen. Der Prozess geht dann
zum nächsten
Schritt S816 über.
-
Im
Schritt S816 zählt
der TD Controller TDC1 die Anzahl von Bits einer jeden Übertragungseinheit TSd,
deren Übertragung
im Schritt S814 begonnen wurde, um wiederholt zu ermitteln, ob die
Datenübertragung
an den DMA Busvermittler 210 vollendet worden ist. Wenn
ermittelt wird, dass die Datenübertragung
vollendet worden ist, geht der Prozess zum nächsten Schritt S818 über. So
wird die Ausführung des
vom Anwender angefragten Prozesses an einem Datenpaket durch die
Schritte S802 bis S816 vollendet. Der Prozess geht dann zum nächsten Schritt S818 über.
-
Andererseits,
wenn Schritt S810 Nein ist, das heißt, falls ermittelt wird, dass
das Datenpaket, auf welches gerade zugegriffen wird, nicht Gegenstand eines
vom Anwender angefragten Prozesses ist, überspringt der Prozess die
obigen Schritte S814 und S816 und geht direkt zum Schritt S818 über. So
wird im Schritt S810, basierend darauf, ob die Pufferpaket ID Information
PIDe mit der Zieldatenpaket ID Information PIDd übereinstimmt, für jedes
im sequenziellen Eingabetransportstrom TS enthaltene Datenpaket
P ermittelt, ob das Datenpaket P Gegenstand des Prozesses ist. Dann
werden nur die Datenpakete, die verarbeitet werden sollen (Zieldatenpakete),
ausgewählt,
um dem vom Anwender angefragten Prozess im Schritt S812 unterworfen
zu werden. Dann werden in den Schritten S814 und S816 die verarbeiteten
Datenpakete P außerhalb
der Datenpuffervorrichtung DBA1 ausgegeben.
-
Im
Schritt S818 wird die Pufferzelle freigegeben, welche zur BC Nummer
Nbcn korrespondiert, welche vom Lesezeiger RP angezeigt wird. Spezifisch
werden Zuweisungsidentifikationsdaten, welche in der BC Zuweisungsinformation
Acn geschrieben werden, welche zur im Schritt S806 gelesenen BC Nummer
Nbcn korrespondiert, als "nicht
zugewiesen" überschrieben.
Der Prozess geht dann zum nächsten
Schritt S820 über.
-
Im
Schritt S820 stellt der TD Controller TDC1 den Lesezeiger RP im
Speichervollendungs BC Nummernspeicher 290 um eine Stelle
vor. Damit wird das nachfolgende Datenpaket als das Zieldatenpaket für den vom
Anwender angefragten Prozess eingestellt.
-
Wie
oben beschrieben, werden zur wahlweisen Ausführung des vom Anwender gewünschten Prozesses
mit einer Vielzahl von Programmen, welche in einem sequenziell gelieferten
einzelnen Transportstrom TS enthalten sind, lediglich das Datenpaket
P, welches zu den Programmen korrespondiert, dem Prozess unterworfen.
Zu diesem Zweck sollte sichergestellt werden, dass die sequenziell
gelieferte Vielzahl von Datenpaketen P für eine vorgegebene Zeitspanne
verarbeitet werden.
-
Daher
wird in der vorliegenden Ausführungsform
jedes Datenpaket P in einer vorgegebenen Pufferzelle Bc für die vorgegebene
Zeitspanne eingeschränkt,
und dieser Prozess wird vom Schreibzeiger WP verwaltet. Dann wird
ermittelt, ob die eingeschränkten
Datenpakete P die Zieldatenpakete sind, und wenn es die Zieldatenpakete
sind, werden die Datenpakete P verarbeitet und dann ausgegeben. Dieser
Prozess wird vom Lesezeiger RP verwaltet. Diese Reihe von Prozessen
wird durch eine hybride Zusammenstellung von Hardware und Software
gesteuert und überwacht.
-
In
der ersten Ausführungsform
der vorliegenden Erfindung, wie oben mit Bezug auf 7 beschrieben,
wird der Transportstrom TS durch eine Vielzahl von Datenpaketen
P gebildet, von denen jedes mit einer eindeutigen Paketidentifikation
PID versehen ist. Ein solcher Transportstrom TS kann so durch den
Transportstromdecoder TD1 gemäß der vorliegenden
Erfindung verarbeitet werden, so dass alle Datenpakete P, welche
den Transportstrom TS bilden, verschieden verarbeitet werden.
-
Jedoch
ist im in ISO/IEC 13818-1 (MPEG2 System) typischerweise festgelegten
Transportstrom TS nicht jedes Datenpaket P mit der eindeutigen Paketidentifikation
PID versehen. Die eindeutige Paketidentifikation PID ist für jede Datenpaketgruppe
mit einem unterschiedlichen Inhalt der Datenpakete P vorgesehen.
-
In 9 ist
eine beispielhafte Paketstruktur des Transportstroms TS gezeigt,
welcher für
jede Datenpaketgruppe mit der Paketidentifikation PID geliefert
ist. Wie beim in 7 dargestellten Beispiel ist
jedes Datenpaket P, welches den Transportstrom TS bildet, als ein
Rechteck dargestellt. Diese Datenpakete P können in eine Vielzahl von Programminhalts-(PC) Datenpaketen
Pc klassifiziert werden, welche einen Pro gramminhalt für jedes
der α Programme,
eine Programmverwaltungstabelle PMT, welche die Paketidentifikationen
der PC Datenpakete für
jedes Programm beschreibt, und eine Programmzuordnungstabelle PAT,
um die Programmverwaltungstabellen PMT zu beschreiben, die zu den
Programmen korrespondieren, bilden.
-
In 9 ist
die Beispielstruktur des Transportstroms TS dargestellt, wenn zumindest
drei verschiedene Programme 1, 2 und 3 verteilt sind (α ≥ 3). Alle
Datenpakete P, deren Paketidentifikation PID 101 ist, sind
als Programminhalts-(PC) Datenpakete Pc101 definiert, welche Videodaten
für das
Programm 1 sind. Alle Datenpakete P, deren Paketidentifikation PID 111 ist,
sind als PC Datenpakete Pc111 definiert, welche Audiodaten für das Programm
1 sind.
-
Ähnlich sind
alle Datenpakete P, deren Paketidentifikation PID 201 ist,
als PC Datenpakete Pc201 definiert, welche Videodaten für das Programm
2 sind. Alle Datenpakete P, deren Paketidentifikation PID 211 ist,
sind als PC Datenpakete Pc211 definiert, welche Audiodaten für das Programm
2 sind.
-
Des
Weiteren sind alle Datenpakete P, deren Paketidentifikation PID 301 ist,
als PC Datenpakete Pc301 definiert, welche Videodaten für das Programm
3 sind. Alle Datenpakete P, deren Paketidentifikation PID 311 ist,
sind als PC Datenpakete Pc311 definiert, welche Audiodaten für das Programm
3 sind.
-
So
ist der Transportstrom TS, welcher in 9 dargestellt
ist, von der Struktur her ähnlich
zu dem in 7, mit der Ausnahme, dass die
eindeutige Paketidentifikation PID nicht für jedes Datenpaket P geliefert
ist, welches den Transportstrom bildet, sondern für jeden
Datenpakettyp P. Im Prinzip wird die Vielzahl der Datenpakete, welche
die gleiche Paketidentifikation PID haben, in der Reihenfolge angeordnet,
in der sie vorgelegt werden, um den Strom zu bilden. Deshalb führt die
Empfangsseite mit den entsprechenden Datenpaketen P des sequenziell
gelieferten Transportstroms in der Reihenfolge einen vorgegebenen
Prozess aus, in welcher sie eintreffen, wodurch die Information
extrahiert wird.
-
Als
Nächstes
ist der Betrieb beschrieben, bei dem der Transportstrom TS, welcher
die obige Paketstruktur hat, an den Transportstromdecoder TD1 gemäß der ersten
Ausführungsform
der vorliegenden Erfindung geliefert wird. Das Vorsehen der eindeutigen
Paketidentifikation PID an jeder Datenpaketgruppe durch jeden Inhalt
der Datenpakete P ist im Wesentlichen gleichwertig mit dem Vorsehen
nur der oberen drei Ziffern der Paketidentifikation PID der Datenpakete
P am Transportstrom TS, welcher in 7 dargestellt
ist. Das heißt,
auch im vorliegenden Beispiel ist es möglich, durch Extrahieren der
PC Datenpakete Pc101 und Pc201 vielfache Programm (PP) Videodatenpaketstränge zu erzeugen,
welche im Wesentlichen die gleiche Paketstruktur wie die Videodatenpakete
PcV haben, welche in 8 dargestellt sind. Ähnlich ist
es durch Extrahieren der PC Datenpakete Pc111 und Pc211 möglich, vielfache Programm-(PP)
Audiodatenpaketstränge
zu erzeugen, welche im Wesentlichen die gleiche Paketstruktur wie
die Audiodatenpakete PcS, welche in 8 dargestellt
sind, haben.
-
Jedoch
zeigen das im TD Controller TDC1 erzeugte Zieldatenpaket ID Information
PIDd und die aus dem in der Pufferzelle Bc gespeicherten Datenpaket
P gelesene Pufferpaket ID Information PIDe beide eine Datenpaketgruppe
an. Daher werden, wenn der Paketermittler 400 ermittelt,
dass die Pufferpaket ID Information PIDe mit der Zieldatenpaket ID
Information PIDd übereinstimmt,
alle Datenpakete P, die zu der Datenpaketgruppe gehören, welche
die Paketidentifikation PID aufweisen, bei der ermittelt wird, dass
sie übereinstimmt,
dem gleichen Prozess unterworfen. Dieser Prozess ist im Wesentlichen
der gleiche wie der Prozess, bei dem durch Spezifizieren der einigen
oberen Ziffern der Paketidentifikationen PID aller Datenpakete P
des Transportstroms TS, welche in 7 dargestellt
sind, die Datenpakete P, welche die Paketidentifikation PID mit
den gleichen oberen Ziffern haben, dem eindeutigen Prozess gemeinsam
als eine Gruppe unterworfen werden.
-
(Zweite Ausführungsform)
-
Mit
Bezug auf 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
und 26 wird im Folgenden eine Datenpuffervorrichtung
gemäß einer
zweiten Ausführungsform
der vorliegenden Erfindung beschrieben. In der vorliegenden Ausführungsform
wird eine Datenpaketverarbeitungsermittlungsvorrichtung gemäß der vorliegenden
Erfindung als Datenpuffervorrichtung beschrieben, welche in einem
Transportstromdecoder verwendet wird, um wahlweise Inhaltsdaten
einer Vielzahl von Programmen zu extrahieren, die in einer Vielzahl
von Transportströmen
TS enthalten ist.
-
Zuerst
wird ein Grundkonzept des Transportstromdecoders beschrieben, welcher
die Datenpaketverarbeitungsermittlungsvorrichtung gemäß der vorliegenden
Ausführungsform
eingebaut hat. In 24 ist ein zweites Verbesserungsbeispiel des
herkömmlichen
Transportstromdecoders TDAc beschrieben (zum Extrahieren eines einzelnen
Programms aus einem einzelnen Transportstrom TS), welcher in 33 gezeigt ist, wobei die Verbesserung angepasst
wird, um eine Vielzahl von Programmen von einer Vielzahl von Transportströmen TS1 bis
TSε (ε ist eine
beliebige ganze Zahl nicht kleiner als 2) gemäß der vorliegenden Ausführungsform
zu extrahieren.
-
Ein
Transportstromdecoder TDAA2 des zweiten Verbesserungsbeispiels ist
im Grunde vom Aufbau her ähnlich,
wie der Transportstromdecoder TDAA1 des ersten Verbesserungsbeispiels, welches in 10 dargestellt ist, mit der Ausnahme, dass der erweiterte
Programmpaketfilter EPCF durch eine Programmpaketfiltergruppe GPCF
ersetzt ist, der Hauptspeichercontroller 700C durch einen
Hauptspeichercontroller 700Cr ersetzt ist, welcher zusätzlich einen
Vermittler aufweist, der Hauptspeicher 900C durch einen
Hauptspeicher 900Cr ersetzt ist und ein Stromeingabeabschnitt 600 zusätzlich geliefert
ist.
-
Vor
der Beschreibung der Programmpaketfiltergruppe GPCF des zusätzlich mit
einem Vermittler versehenen Hauptspeichercontrollers 700Cr und
des Stromeingabeabschnitts 600, wird der Betrieb des Transportstromdecoders
TDAA2 mit Bezug auf die 20, 25 und 26 beschrieben.
-
Mit
Bezug auf 20 wird die Struktur von zwei
Transportströmen
beschrieben, welche in den Transportstromdecoder TDAA2 eingegeben
werden, wobei diese Transportströme
jeweils eine Vielzahl von Programmströmen zur Verfügung stellen.
In 20 ist eine beispielhafte Struktur eines ersten Transportstroms
TS1, welcher zumindest drei verschiedene Programme 1, 2, 3, α1 vorsieht,
und eine beispielhafte Struktur eines zweiten Transportstroms TS2
dargestellt, welcher zumindest sechs verschiedene Programme 1, 2,
3, 4, 5, 6, ..., α2
vorsieht.
-
Festzustellen
ist, dass sich die Programme 1, 2 und 3 in der vorliegenden Ausführungsform
im zweiten Transportstrom TS2 von denjenigen im ersten Transportstrom
TS1 unterscheiden, aber auch gleich sein können. Festzustellen ist auch,
dass die Programme 1, 2 und 3 im zweiten Transportstrom TS2 nicht
in der Zeichnung dargestellt sind, da der Platz dies nicht zulässt.
-
Als
solches bewirken die Vielzahl der Transportströme TS, die in den Transportstromdecoder TDAA2
eingegeben werden, dass das gleiche Programm die gleiche Programmnummer
hat. Des Weiteren werden die Datenpakete P mit einer Paketidentifikation
PID für
jeden Transportstrom TS bereitgestellt. Daher hat die Vielzahl der
Transportströme
TS die gleichen Datenpakete P, welche die gleiche Paketidentifikation
PID aufweisen.
-
Im
ersten Transportstrom TS1 sind die Programminhalts (PC) Datenpakete
Pc101_1, Pc101_2, ... Videodaten, welche das Programm 1 bilden,
und die PC Datenpakete Pc111_1, Pc111_2, ... sind Audiodaten, welche
das Programm 1 bilden. Gleichsam sind die PC Datenpakete Pc201_1,
Pc201_2, ... Videodaten, welche das Programm 2 bilden, und die PC
Datenpakete Pc211_1, Pc211_2, ... sind Audiodaten, welche das Programm
2 bilden. Des Weiteren sind die PC Datenpakete Pc301_1, Pc301_2,
... Videodaten, welche das Programm 3 bilden, und die PC Datenpakete
Pc311_1, Pc311_2, ... sind Audiodaten, welche das Programm 3 bilden.
-
Im
zweiten Transportstrom TS2 sind die PC Datenpakete Pc401_1, Pc401_2,
... Videodaten, welche das Programm 4 bilden, und die PC Datenpakete Pc411_1,
Pc411_2, ... sind Audiodaten, welche das Programm 4 bilden. Gleichsam
sind die PC Datenpakete Pc501_1, Pc501_2, ... Videodaten, welche
das Programm 5 bilden, und die PC Datenpakete Pc511_1, Pc511_2,
... sind Audiodaten, welche das Programm 5 bilden. Des Weiteren
sind die PC Datenpakete Pc 601_1, Pc601_2, ... Videodaten, welche das
Programm 6 bilden, und die PC Datenpakete Pc611_1, Pc611_2, ...
sind Audiodaten, welche das Programm 6 bilden.
-
Festzuhalten
ist, dass die Anzahl der Transportströme TS, welche in den Transportstromdecoder
TDAA2 eingegeben werden, drei oder mehr sein kann, und die Anzahl
der Programme, die von jedem Transportstrom geliefert wird, drei
oder mehr sein kann. Der Transportstrom TS enthält PC Datenpakete Pc, welche
zum gelieferten Programm korrespondieren. In Abhängigkeit von dem Programm kann
der Transportstrom TS PC Datenpakete Pc enthalten, welche zu anderen
Daten als Video und Audio (z.B. Teletextinformation) korrespondieren.
-
Festzuhalten
ist, dass die ersten und zweiten Transportströme TS1 und TS2 jeweils die
Programmzuordnungstabellen PAT und die Programmabbildungstabelle
PMT enthalten, die unter den PC Datenpaketen Pc mit einer Häufigkeit
angeordnet sind, die durch den Übertragungspfad
und Verarbeitungsfaktoren ermittelt wird.
-
Im
ersten Transportstrom TS1 sind vor den PC Datenpaketen Pc101_1,
Pc111_1, Pc201_1, Pc211_1, Pc301_1 und Pc311_1 der Programme 1,
2 und 3 die Programmabbildungstabellen PMT1, PMT2 und PMT3, welche
die Paketidentifikationen PID von allen Programmen beschreiben,
und die Programmzuordnungstabelle PAT, welche die Beziehung zwischen
den entsprechenden Paketidentifikationen PID in den Programmabbildungstabellen
PMT und den korrespondierenden Programmen anzeigt, angeordnet.
-
Die
Programmzuordnungstabelle PAT beschreibt, dass die Paketidentifikation
PID der Paketabbildungstabelle PMT für das Programm 1_100 ist, diejenige
für das
Programm 2_200 ist und diejenige für das Programm 3_300 ist, ...,
diejenige für
das Programm α1 α100 ist.
-
Im
zweiten Transportstrom TS2 sind vor den PC Datenpaketen Pc401_1,
Pc411_1, Pc501_1, Pc511_1, Pc601, Pc611 der Programme 4, 5, und
6 die Programmabbildungstabellen PMT4, PMT5 und PMT6, welche die
Paketidentifikationen PID von allen Programmen beschreiben, und
eine Programmzuordnungstabelle PAT, welche die Beziehung zwischen
den entsprechenden Paketidentifikationen PID in den Programmabbildungstabellen
PMT und den korrespondierenden Programmen anzeigt, angeordnet.
-
Die
Programmzuordnungstabelle PAT beschreibt, dass die Paketidentifikation
PID der Paketabbildungstabelle PMT für das Programm 4 400 ist, diejenige
für das
Programm 5 500 ist und diejenige für das Programm 6 600 ist, ...,
diejenige für
das Programm α2 α200 ist.
-
Wie
häufig
die Datenpakete P ankommen, welche im Transportstrom TS enthalten
sind, variiert sehr stark in Abhängigkeit
von ihrem Typ. Daher können
die Programmzuordnungstabelle PAT, die Programmabbildungstabelle
PMT, die PC Datenpakete Pc und andere Pakete in verschiedener Weise
im Transportstrom TS angeordnet werden, wie in dem Fall, wo ein
einzelner Transportstrom TS geliefert wird.
-
In 20 erscheinen zur Vereinfachung der Darstellung
der erste und der zweite Transportstrom TS1 als miteinander durch
eine Paketeinheit synchronisiert. In der Praxis sind sie jedoch
nicht miteinander synchronisiert. Daher können die PC Datenpakete Pc
im ersten Transportstrom TS1 zur gleichen Zeit in den Transportstromdecoder
TDAA2 eingegeben werden, wenn die PC Datenpakete Pc im zweiten Transportstrom
TS2 eingegeben werden oder nicht.
-
In 21 ist dargestellt, wie der Transportstromdecoder
TDAA2 einen ersten ausgewählten vielfachen
Programm (im Folgenden PP) Datenpaketstrang Pem1 aus dem ersten
Transportstrom TS1, welcher die Paketstruktur aufweist, die in 20 gezeigt ist, und einen zweiten ausgewählten PP
Datenpaketstrang Pem2 aus dem Transportstrom TS2 extrahiert. In
diesem Beispiel enthält
der erste ausgewählte
PP Datenpaketstrang Pem1 die Datenpakete P der Programme 1 und 2,
und der zweite ausgewählte
PP Datenpaketstrang Pem2 enthält
die Datenpakete P der Programme 3 und 4. Die ersten und zweiten
ausgewählten
PP Datenpaketstränge
Pem1 und Pem2 werden gemischt und als ein gemischter ausgewählter PP
Datenpaketstrang Pems an den zusätzlich
mit einem Vermittler bereitgestellten Hauptspeichercontroller 700Cr ausgegeben.
-
Der
zusätzlich
mit einem Vermittler bereitgestellte Hauptspeichercontroller 700Cr vermittelt
die PC Datenpakete Pc, die in der Vielzahl der Transportströme TS enthalten
sind, die im eingegebenen gemischten PP Datenpaketstrang Pems enthalten
sind, und gibt die resultierenden Daten an den Hauptspeichercontroller 900Cr aus,
wo ein vielfacher TS PP Datenpaketstrang Pmsm gebildet wird. Dieser
Betrieb wird ausgeführt,
um einer möglichen
Situation gerecht zu werden, wo eine Vielzahl von Datenpaketen P,
welche in verschiedenen Transportströmen TS enthalten sind, simultan
beim Transportstromdecoder TDAA2 ankommen. Diese Situation kann
auftreten, da sich die Vielzahl der Datenpakete, die in verschiedenen
Transportströmen
TS enthalten sind, in der Paketgröße, den Übertragungsraten, den Ankunftszeiten,
etc. unterscheiden.
-
Im
in 20 und 21 dargestellten
Beispiel werden Programme, welche verschiedene Programmnummern haben,
für jeden
Transportstrom TS extrahiert. Daher scheint im gemischten ausgewählten PP
Datenpaketstrang Pems keine Vielzahl von Datenpaketen P zu existieren,
welche die gleiche Programmnummer und Paketidentifikation PID haben.
Jedoch kann, wenn das Programm, welches die gleiche Programmnummer
hat, sowohl aus dem ersten als auch dem zweiten Transportstrom TS1
und TS2 extrahiert wird, eine Vielzahl von verschiedenen Datenpaketen
P existieren, welche die gleiche Programmnummer innerhalb des gemischten
ausgewählten
PP Datenpaketstrang Pems aufweisen. Des Weiteren kann diese mit
Bezug auf die Paketidentifikation PID dem Datenpaket P für jeden
Transportstrom TS unabhängig
von der Programmnummer geliefert werden. Daher kann eine Vielzahl
von verschiedenen Datenpaketen, welche die gleiche Paketidentifikation
PID aufweisen, im gemischten ausgewählten PP Datenpaketstrang Pems
existieren.
-
In
einigen Fällen,
außer
den spezifizierten Programmen, kann die Programmabbildungstabelle PMT3
für das
Programm 3, welches im Transportstrom TS1 enthalten ist, und die
Programmabbildungstabelle PMT6 für
das Programm 6, welches im Transportstrom TS2 enthalten ist, extrahiert
werden. So gesehen werden von den Datenpaketen P, welche im eingegebenen
Transportstrom TS sequenziell angeordnet sind, nur die Datenpakete
P, welche zu einer vorgegebenen Vielzahl von Programmen korrespondieren,
diskret extrahiert, und in der Reihenfolge ausgegeben, in welcher
sie bei dem Transportstromdecoder TDAA2 angekommen sind.
-
In 25 ist eine beispielhafte Struktur des vielfachen
TS PP Datenpaketstrangs Pmsm dargestellt, der aus dem gemischten
ausgewählten
PP Datenpaketstrang Pems erzeugt wird. In diesem Beispiel werden
aus dem ersten Transportstrom TS1 die PC Datenpakete Pc101_1, Pc101_2,
... der Videodatenpakete PcV für
das Programm 1 und die PC Datenpakete Pc201_1, Pc201_2, ... der
Videodatenpakete PcV für
das Programm 2 extrahiert. Des Weiteren werden aus dem zweiten Transportstrom
TS2 die PC Datenpakete Pc401_1, Pc401_2, ... der Videodatenpakete
PcV für
das Programm 4 und die PC Datenpakete Pc501_1, Pc501_2, ... der
Videodatenpakete PcV für
das Programm 5 extrahiert. Dann wird die extrahierte Vielzahl von
Datenpaketen als ein vielfacher TS PP Videodatenpaketstrang PmsmV
in einer solchen Reihenfolge wie die PC Datenpakete Pc101_1, Pc401_1,
Pc201_1, Pc501_1, Pc101_2, Pc401_2, Pc201_2, Pc501_2, ... ausgegeben.
-
Ähnlich werden
aus dem ersten Transportstrom TS1 die PC Datenpakete Pc111_1, Pc111_2,
... der Audiodatenpakete PcS für
das Programm 1 und die PC Datenpakete Pc211_1, Pc211_2, ... der
Audiodatenpakete PcS für
das Programm 2 extrahiert. Des Weiteren werden aus dem zweiten Transportstrom
TS2 die PC Datenpakete Pc411_1, Pc411_2, ... der Audiodatenpakete
PcS für
das Programm 4 und die PC Datenpakete Pc511_1, Pc511_2, ... der Audiodatenpakete
PcS für
das Programm 5 extrahiert. Dann wird die extrahierte Vielzahl von
Datenpaketen an den Hauptspeicher 900Cr als vielfacher
TS PP Audiodatenpaketstrang Pmsms in einer solchen Reihenfolge wie
die PC Datenpakete Pc111_1, Pc411_1, Pc211_1, Pc511_1, Pc111_2,
Pc411_2, Pc211_2, Pc511_2, ... ausgegeben.
-
In 26 ist ein Beispiel dargestellt, wie die Datenpakete
P des gemischten ausgewählten
PP Datenpaketstrangs Pems im Hauptspeicher 900Cr gespeichert
werden. Der Hauptspeicher 900Cr ist ähnlich aufgebaut wie der mit
Bezug auf 13 beschriebene Hauptspeicher 900C.
In diesem Beispiel werden jedoch im Videopaketspeicherbereich A
(Video) die PC Datenpakete Pc101_1, Pc401_1, Pc201_1, Pc501_1, ...
gespeichert, welche den vielfachen TS PP Videodatenpaketstrang PmsmV
bilden, und im Audiopaketspeicherbereich A (Audio) werden die PC
Datenpakete Pc111_1, Pc411_1, Pc211_1, Pc511_1, ... gespeichert,
welche den vielfachen TS PP Audiodatenpaketstrang PmsmS bilden.
Des Weiteren werden die α des
PMT Speicherbereichs A (PMT1) bis A (PMTα) zum Speichern der in den Transportströmen TS1
bis TSε enthaltenen Programmabbildungstabelle
PMT bereitgestellt.
-
Mit
Bezug auf 24 werden nun die Programmpaketfiltergruppe
GPCF, der mit dem Vermittler hinzugefügte Hauptspeichercontroller
und der Stromeingabeabschnitt 600C beschrieben. Die Programmpaketfiltergruppe
GPCF enthält
eine Vielzahl von erweiterten Programmpaketfiltern EPC, welche in 10 gezeigt sind, das heißt, einen für jeden eingegeben Transportstrom
TS. Im vorliegenden Beispiel enthält die Programmpaketfiltergruppe
GPCF einen ersten erweiterten Programmpaketfilter EPCF1, welcher
mit dem Stromeingabeabschnitt 500C verbunden ist, um den
ersten Transportstrom TS1 durch eine erste Übertragungseinheit TSd1 zu erhalten,
und einen zweiten er weiterten Programmpaketfilter EPCF2, welcher
mit dem Stromeingabeabschnitt 600C verbunden ist, um den
zweiten Transportstrom TS2 durch eine zweite Übertragungseinheit TSd2 zu
erhalten.
-
Der
erweiterte Programmpaketfilter EPCF1 erzeugt den ersten ausgewählten PP
Datenpaketstrang Pem1 aus dem ersten Transportstrom TS1 zur Ausgabe
an den mit dem Vermittler hinzugefügten Hauptspeichercontroller 700Cr.
In ähnlicher
Weise erzeugt der erweiterte Programmpaketfilter EPCF2 den zweiten
ausgewählten
PP Datenpaketstrang Pem2 aus dem zweiten Transportstrom TS2 zur
Ausgabe an den mit dem Vermittler hinzugefügten Hauptspeichercontroller 700Cr.
-
Der
mit dem Vermittler hinzugefügte
Hauptspeichercontroller 700Cr wird durch Hinzufügen eines
Vermittlers an den Hauptspeicher 700C erstellt, welcher
in 10 dargestellt ist. Wenn der erste und zweite
ausgewählte
PP Datenpaketstrang Pem1 und Pem2 simultan von der Programmpaketfiltergruppe GPCF
geliefert werden, bestimmt dieser Vermittler die Reihenfolge zur
Ausgabe dieser Stränge
an den Hauptspeichercontroller 900Cr als den gemischten ausgewählten PP
Datenpaketstrang Pems, welcher die Eingabe an den Hauptspeichercontroller 700Cr vermittelt,
sowie die Ausgabe an den Hauptspeicher 900r.
-
Der
Hauptspeicher 900Cr speichert ähnlich zu demjenigen in dem
Transportstromdecoder TDAA1, den gemischten ausgewählten PP
Datenpaketstrang Pems, welcher von der Programmpaketfiltergruppe
GPCF durch den Hauptspeichercontroller 700Cr kommt, und
bildet dabei den vielfachen TS PP Datenpaketstrang Pmsm. Auf Anfrage
von einer durch einen AV Decoder 2000C typisierten externen Vorrichtung
liest der vom Vermittler hinzugefügte Hauptspeichercontroller 700Cr den
vielfachen TS PP Datenpaketstrang Pmsm aus dem Hauptspeicher 900Cr zur
Ausgabe.
-
In
diesem Fall, um die Anfrage des Anwenders zur Auswahl eines oder
mehrerer Programme aus der Vielzahl von Programmen zu erfüllen, die
im unterschieldichenen Transportstrom TS enthalten sind, und zum
Ausführen
von verschiedenen Prozessen mit ihnen (Anzeigen des Programms 1
auf einem Monitor und Aufzeichnen des Programms 4, z.B.), muss der
Transportstromdecoder TDAA2 Informationen über die Situationen, die im
Transportstromdecoder TDAA1 identifiziert werden sollen, erzeugen
und festhalten, und auch die folgende Situation: eine Vielzahl von
verschiedenen Datenpaketen P, welche die gleiche Paketidentifikation
PID haben, können
ausgewählt
werden, da die Programme aus der Vielzahl von Transportströmen TS ausgewählt werden.
In dieser Situation muss Information unabhängig von der Paketidentifikation
PID über
die Beziehung zwischen jedem Datenpaket P und den ausgewählten Programmen
gefordert werden.
-
Des
Weiteren, wenn eine Vielzahl von Programmen aus einem einzelnen
Transportstrom TS ausgewählt
wird, unterscheiden sich dann alle entsprechenden mehreren Datenpakete
P in Bezug auf ihre Ankunftszeit. Daher können die Datenpakete P in der
Reihenfolge ausgegeben werden, in welcher sie als der ausgewählte PP
Datenpaketstrang Per und der PP Datenpaketstrang Pms angekommen sind.
Aus verschiedenen Transportströmen
TS kann jedoch eine Vielzahl von Datenpaketen, welche zur gleichen
Zeit ankommt, ausgewählt
werden. Solche Datenpakete P sollten in einer richtigen Verarbeitungsreihenfolge
an den Hauptspeicher 900Cr als der gemischte ausgewählte PP
Datenpaketstrang Pems ausgegeben werden, unabhängig von der jeweiligen Ankunftszeit.
Folglich ist es nicht möglich, die
richtige zeitliche Reihenfolge durch die Ankunftsreihenfolge sicher
zu stellen, um den vielfachen PP Datenpaketstrang Pmsm im Hauptspeicher 900C zu bilden.
-
Des
Weiteren unterscheiden sich unterschiedliche Transportströme TS durch
den Umfang der Datenpakete P und die Übertragungsgeschwindigkeit.
Zum Beispiel soll ein Fall betrachtet werden, bei dem, in Bezug
auf die Datenpakete P, der erste Transportstrom TS1 kleiner ist
als der zweite Transportstrom TS2, und schneller ist als dieser
in Bezug auf die Übertragungsgeschwindigkeit.
Anzunehmen ist, dass die Datenpakete P (TS1 – 1) des ersten Transportstroms
TS2 unmittelbar nach den Datenpaketen P (TS2 – 1) des zweiten Transportstroms
TS2 ankommen. Unter dieser Annahme werden die Datenpakete P (TS2 – 1) zuerst
vom zweiten erweiterten Programmfilter PECF2 an den vom Vermittlungsmittel
hinzugefügten
Hauptspeichercontroller 700Cr zu der zweiten Übertragungseinheit
TSd2 übertragen. Unmittelbar
danach werden die Datenpakete P (TS1 – 1) vom ersten erweiterten
Programmpaketfilter EPCF1 an den vom Vermittlungsmittel hinzugefügten Hauptspeichercontroller 700Cr an
der ersten Übertragungseinheit
TSd1 übertragen.
-
Jedoch
sind die Datenpakete P (TS1 – 1) vom
Umfang her kleiner als die Datenpakete P (TS2 – 1), und die Übertragungsgeschwindigkeit
des ersten Transportstroms TS1 ist schneller als diejenige des zweiten
Transportstroms TS2. Daher wird die Übertragung der Datenpakete
P (TS1 – 1)
des ersten Transportstroms TS1 abgeschlossen, während die Datenpakete P (TS2 – 1) des
zweiten Transportstroms TS2 übertragen
werden. Im schlimmsten Fall wird die Übertragung der folgenden Datenpakete
P (TS2 – 2)
begonnen.
-
Das
heißt,
von der Vielzahl von Datenpaketen P von verschiedenen Transportströmen TS können die
Datenpakete P, die später
angekommen sind, vor den Datenpaketen P. die früher angekommen sind, an den
Hauptspeichercontroller 900Cr ausgegeben werden. In diesem
Fall ist es unmöglich,
den vielfachen TS PP Datenpaketstrang Pmsm im Hauptspeicher 900Cr richtig
durch Ausgabe der Datenpakete in der Ankunftsreihenfolge als ge mischte
ausgewählte
PP Datenpaketstränge
Pems zu bilden. Um den vielfachen TS PP Datenpaketstrang Pmsm zu bilden,
ist es sogar in der oben genannten Zeitreiheninformation der Datenpakete
P im Transportstrom TS unentbehrlich, die Datenpakete P, welche
aus verschiedenen Transportströmen
extrahiert wurden, richtig wiederzugeben.
-
Daher
wird in der vorliegenden Ausführungsform
eine Datenpuffervorrichtung vorgeschlagen, die in der Lage ist,
alle Datenpakete P individuell zu Puffern, welche den sequenziell
eingebenden Transportstrom TS bilden, und dann festzustellen, ob
die Datenpakete P das Ziel eines vom Anwender gewünschten
Prozesses sind, wodurch sie den Zugriff und den Prozess an den Datenpaketen
P auf Echtzeitbasis steuern. Des Weiteren wird in der vorliegenden
Ausführungsform
eine Vorrichtung zur Feststellung der Verarbeitung von Datenpaketen
geliefert. Um bei dieser Vorrichtung den Zugriff oder die Verarbeitungszeit
innerhalb einer Echtzeitverarbeitung sicherzustellen, wird das Puffern
der Datenpakete (im Folgenden Zieldatenpakete) in einer Pufferzelle
innerhalb einer vorgegebenen Zeitspanne durch Softwaresteuerung
sicher gestellt. Andere passive Prozesse werden unter Hardwaresteuerung
ausgeführt. Folglich
kann die Identifikation und die Verwaltung durch jedes Datenpaket
P flexibler gehandhabt werden, und der Zeitpunkt, zu dem ein bestimmter
Prozess mit dem identifizierten Datenpaket ausgeführt werden
soll, kann einfach angepasst werden.
-
Für die obigen
Zwecke wird in der vorliegenden Ausführungsform die Puffervorrichtung
geliefert, in der ersten Ausführungsform
mit der Vorrichtung zur Feststellung der Verarbeitung der Datenpakete, welche
in der Lage ist, den Transportstrom TS durch die Einheit von Datenpaketen
P zu identifizieren, und des Weiteren, die Datenpakete P auf der
Zeitreihe zu identifizieren.
-
In 15 wird ein Transportstromdecoder TD2 dargestellt,
der eine Datenpuffervorrichtung DBA2 gemäß der vorliegenden Ausführungsform enthält. Der
Transportstromdecoder TD2 ist vom Aufbau her ähnlich wie der Transportstromdecoder
TD1, der in 1 gezeigt wird, mit Ausnahme,
dass die Datenpuffervorrichtung DBA1 durch die Datenpuffervorrichtung
DBA2 ersetzt wird, der Stromeingabeabschnitt TSR durch einen ersten
Stromeingabeabschnitt TSR_1 und einen zweiten Stromeingabeabschnitt
TSR_2 ersetzt wird, der Hauptspeicher 900 durch einen Hauptspeicher 900r ersetzt
wird, und der TD Controller TDC1 durch einen TD Controller TDC2 ersetzt
wird. Die Stromeingabeabschnitte TSR_1 bis TSR_N werden in der gleichen
Anzahl wie die Anzahl der Transportströme TSN geliefert, die simultan
an den Transportstromdecoder TD2 geliefert werden. Festzuhalten
ist, dass in der vorliegenden Ausführungsform insbesondere ein
Fall beschrieben wird, in dem zwei Transportströme TS geliefert werden.
-
Des
Weiteren ist die Datenpuffervorrichtung DBA2 vom Aufbau her ähnlich wie
die Datenpuffervorrichtung DBA1, welche in 1 gezeigt
wird, mit der Ausnahme, dass die Paketpuffervorrichtung PBA1 durch
ein Paketpuffervermittlungsmittel PBA2 ersetzt wird, der Controller
PBAC1 durch einen Controller PBAC2 ersetzt wird, und das Paketvermittlungsmittel 400 durch
ein Paketvermittlungsmittel 400r ersetzt wird.
-
Ebenso
ist das Paketpuffervermittlungsmittel PBA2 vom Aufbau her ähnlich wie
das Paketpuffervermittlungsmittel PBA1, welches in 1 gezeigt wird,
mit der Ausnahme, dass das DMA Busvermittlungsmittel 210 durch
ein DMA Busvermittlungsmittel 210r ersetzt wird, der BC
Zuweisungsinformationsspeicher 240 durch einen BC Zuweisungsinformationsspeicher 240r ersetzt
wird, der Paketpuffer 279 durch einen Paketpuffer 279r ersetzt
wird, und der Speichervollendungs BC Nummernspeicher 290 durch
einen Speichervollendungs BC Nummernspeicher 290r ersetzt
wird.
-
Vor
der Beschreibung dieser neu gelieferten Komponenten wird ein Grundkonzept
des Transportstromdecoders TD2 in der vorliegenden Ausführungsform
mit Bezug auf 22 und 20 und 21,
welche oben beschrieben sind, beschrieben. Der Transportstromdecoder
TD wird zumindest mit zwei Transportströmen geliefert, welche die Datenstruktur
aufweisen, die bereits mit Bezug auf 20 beschrieben
wurde, das heißt,
den ersten und zweiten Transportstrom TS1 und TS2.
-
Als
die ausgewählten
vielfachen TS PP Datenpaketstränge
Pemm werden die Datenpakete P für
die Programme 1, welche zum ersten ausgewählten PP Datenpaketstrang Pem1
(21) korrespondieren, welcher im ersten Transportstrom
TS1 enthalten ist, und die Datenpakete P für die Programme 4 und 52 ausgewählt, welche
dem zweiten ausgewählten
PP Datenpaketstrang Pem2 (21)
entsprechen, der im zweiten Transportstrom TS2 enthalten ist. Der
ausgewählte
vielfache TS PP Datenpaketstrang Pemm wird dann im Hauptspeicher 900r gespeichert,
wobei der vielfache TS PP Datenpaketstrang Pmsm gebildet wird, welcher
mit Bezug auf 25 beschrieben worden ist.
-
In 22 wird ein Beispiel beschrieben, wie die Datenpakete
P, die im ausgewählten
vielfachen TS PP Datenpaketstrang Pemm enthalten sind, im Hauptspeicher 900r gespeichert
werden, wobei der Datenstrang Pemm, welcher aus den Transportströmen TS1
und TS2 extrahiert wird, extern an den Transportstromdecoder TD2
durch einen Vorderendabschnitt geliefert wird. Festzuhalten ist,
dass in der Zeichnung die Stromeingabeabschnitte TSR_1 bis TSR_N,
die Datenpuffervorrichtung DBA2, der Hauptspeichercontroller 700,
der TD Controller TDC2 und der Unterprozessesanfragesabschnitt APR
gemeinsam als Transportstromeditierungsabschnitt TD2r dargestellt
werden.
-
Mit
Bezug auf den Hauptspeichercontroller 900Cr, welcher in 26 dargestellt ist, hat der Hauptspeicher 900r,
wie am besten in 22 gezeigt, das Videopaketspeicherbereich
A (Video) zum Speichern der PC Datenpakete Pc101_1, Pc401_1, Pc201_1,
Pc501_1, ..., welche den vielfachen TS PP Videodatenpaketstrang
PmsmV bilden, und das Audiopaketspeicherbereich A (Audio) zum Speichern der
PC Datenpakete Pc111_1, Pc411_1, Pc211_1, Pc511_1, ..., welche den
vielfachen TS PP Audiodatenpaketstrang PmsmS bilden.
-
Des
Weiteren hat der Hauptspeicher 900r einen PAT Speicherbereich
Ar (PAT) zum Speichern von Information über die Programmzuordnungstabelle
PAT, den PMT Speicherbereich Ar (PMT1) bis Ar (PMTα), um Information über die
Programmverwaltungstabellen PMT zu speichern. Jedoch sind der PAT
Speicherbereich Ar (PAT) und der PMT Speicherbereich Ar (PMT1) bis
Ar(PMTα)
des Hauptspeichers 900r insofern verschieden von denjenigen des
Hauptspeichers 900Cr, dass der PAT Speicherbereich Ar (PAT)
und der PMT Speicherbereich Ar (PMT1) bis Ar (PMTα) in Bereiche
aufgeteilt sind, die jeweils zu den eingegebenen Transportströmen TS1 bis
TSε zur
Speicherung zugeordnet sind. In einer solchen Struktur hat der Hauptspeicher 900r den
PAT Speicherbereich Ar (PAT), um die Programmzuordnungstabelle PAT
wahlweise für
jeden Transportstrom TS zu speichern, und die PMT Speicherbereiche
Ar (PMT1) bis Ar (PMTα),
um wahlweise die Information über
die Programmzuordnungstabellen PMT für jeden Transportstrom TS zu
speichern.
-
Natürlich wird
der PMT Speicherbereich Ar von PMT so oft zur Verfügung gestellt,
wie es der Anzahl von Typen α der
Programmabbildungstabelle PMT (Programme), die im Transportstrom
TS enthalten sind, entspricht. Mit einer solchen Struktur ist es möglich, die
Leseverwaltungsdatenpakete PcA für
jeden eingegebenen Transportstrom TS zu identifizieren und zu verwal ten.
Daher kann die Information über
die verteilten Programme für
jeden Transportstrom TS leicht bekannt sein.
-
Wie
oben beschrieben, können
alle Datenpakete P, die im Transportstrom TS enthalten sind, einzeln
mit ihrer Paketidentifikation PID identifiziert werden. Allerdings,
wenn zwei oder mehrere Transportströme TS geliefert werden, können verschiedene
Transportströme
verschiedene Datenpakete P haben, welche die gleiche Paketidentifikation
PID aufweisen. Um jedes Datenpaket P zu identifizieren, das in den
Transportstromdecoder TD2 eingegeben wurde, ist in der vorliegenden
Ausführungsform
jedes Datenpakt P mit einer Transportstromidentifikationsinformation
TSi zur Identifizierung des Transportstroms TS zur Verwaltung ausgestattet.
Dies wird später
im Detail beschrieben.
-
Mit
Bezug auf 15 werden im Folgenden im Detail
die Komponenten beschrieben, die für den Transportstromdecoder
TD2 kennzeichnend sind. Der erste Stromeingabeabschnitt TSR_1 und
der zweite Stromeingabeabschnitt TSR_2 liefern eine Transportstromidentifikationsinformation
(im Folgenden TS Identifikationsinformation) TS1, welche eine Identifikation
ist, um den eingegebenen Transportstrom jeweils als den ersten und
zweiten Transportstrom TS1 und TS2 zu identifizieren, und den Transportstrom
jeweils durch die Transporteinheit TSd1 und die Transporteinheit
TSd2 auszugeben. Diese Transportbereiche TSd1 und TSd2 werden später mit Bezug
auf 16 beschrieben. In der vorliegenden Ausführungsform
werden beide als acht Bytes festgesetzt. Dies ist nicht einschränkend und
kann in Anbetracht der Vermittlungsbelastung und der Übertragungseffizienz
in der Datenpuffervorrichtung DBA2 beliebig festgesetzt werden.
-
Die
Datenpuffervorrichtung DBA2 verwaltet und speichert durch die Einheit
der Datenpakete P den ersten und zweiten Trans portstrom TS1 und TS2,
der jeweils durch die Übertragungbereiche TSd1
und TSd2 von den ersten und zweiten Stromeingabeabschnitten TSR_1
und TSR_2 geliefert wird, und gibt den ausgewählten vielfachen TS PP Datenpaketstrang
Pemm aus.
-
Der
Hauptspeicher 900r speichert den ausgewählten vielfachen TS PP Datenpaketstrang Pemm,
der vom ersten und zweiten Transportstrom TS1 und TS2 extrahiert
wurde, die von der Datenpuffervorrichtung DBA2 ausgegeben wurde,
und gibt den vielfachen TS PP Datenpaketstrang Pmsm an eine externe
Vorrichtung (nicht gezeigt) aus, die durch einen AV Decoder typisiert
wird.
-
Der
Hauptspeichercontroller 700 hält zeitweise den vielfachen
ausgewählten
TS PP Datenpaketstrang Pemm und den vielfachen TS PP Datenpaketstrang
Pmsm durch die Übertragungseinheit
TSd, und steuert den Betrieb des Hauptspeichers 900r.
-
Der
TD Controller TDC2 steuert den gesamten Betrieb des Transportstromdecoders
TD2. Der Transportstromdecoder TD2 erzeugt ein Zustandssignal SrW2,
welches den Betriebszustand jeder der obigen Komponenten zur Ausgabe
an den TD Controller TDC2 ausgibt. Basierend auf dem Zustandssignal
SrW2 erzeugt der TD Controller TDC2 ein Steuersignal ScW2 zum Steuern
des gesamten Transportstromdecoder TD2, um den Betrieb von jeder
der obigen Komponenten zu steuern. Festzuhalten ist, dass die Erzeugung
des Zustandssignals SrW2 und des Steuersignals ScW2 und die Steuerung über den Transportstromdecoder
TD2 Stand der Technik sind, und deshalb hier nicht beschrieben werden.
-
Zum
Puffern identifiziert und verwaltet das Paketpuffervermittlungsmittel
PBA2 durch die Einheit der Datenpakete den Transportstrom TS1, der
von der Übertragungseinheit
TSd1 vom ersten Stromeingabeabschnitt TSR_1 geliefert wird, und
den Transportstrom TS1, welcher von der Übertragungseinheit TSd2 vom
zweiten Stromeingabeabschnitt TSR_2 geliefert wird. Der Controller
PBAC2 steuert den Betrieb des Paketpuffervermittlungsmittels PBA2.
-
Das
Paketpuffervermittlungsmittel PBA2 enthält ein DMA Busvermittlungsmittel 210r,
einen TSD Eingabestarterfasser 220, ein Pufferzellen (BC)
Zuweiser 230, ein BC Zuweisungsinformationsspeichermittel 240,
ein BC Zielortspezifikationsmittel 250, einen Paketpuffercontroller 260,
einen Paketpuffer 270, einen Speichervollendungs BC Nummernspeichercontroller 280,
einen Speichervollendungs BC Nummernspeicher 290 und einen
Paketzugriffsabschnitt 300.
-
Das
DMA Busvermittlungsmittel 210r hat eine erste Eingabekanalgruppe,
um Eingaben eines ersten Paketkopffeststellungssignals Sps1, eines ersten
Anfragessignal Srq1, und die erste Übertragungseinheit TSd1 zu
empfangen, welche aus dem ersten Stromeingabeabschnitt TSR_1 ausgegeben wird,
und eine zweite Eingabekanalgruppe, um Eingaben von einem zweiten
Paketkopffeststellungssignal Sps2, einem zweites Anfragessignal
Srq2, und die zweite Übertragungseinheit
TSd2 zu empfangen, welche vom zweiten Stromeingabeabschnitt TSR_2 ausgegeben
wird.
-
Natürlich wird
das DMA Busvermittlungsmittel 210r mit der Eingangskanalgruppe
so häufig
zur Verfügung
gestellt, wie die Anzahl der Stromeingabeabschnitte TSR gemäß der Anzahl
von simultan eingegeben Transportströmen TS geliefert wird. Als
solches wird der Transportstrom TS mit der Eingangsstromgruppe,
die für
jeden eingegeben Transportstrom TS geliefert wird, in den Transportstromdecoder
TD2 eingegeben, und kann von jeder der Eingabekanalgruppen identifiziert
werden.
-
Des
Weiteren hat das DMA Busvermittlungsmittel 210r einen ersten
Ausgabekanal zum Ausgeben eines ersten Dateneffizienzsignals Sde1
an den ersten Stromeingabeabschnitt TSR_1, und ei nen zweiten Ausgabekanal
zur Ausgabe eines zweiten Dateneffizienzsignals Sde2 an den zweiten Stromeingabeabschnitt
TSR_2. Natürlich
wird das DMA Busvermittlungsmittel 210r mit einer Ausgangskanalgruppe
so häufig
wie die Anzahl von Stromeingabeabschnitten TSR, welche gemäß der Anzahl
von simultan eingegeben Transportströmen TS geliefert wird, zur
Verfügung
gestellt.
-
Das
DMA Busvermittlungsmittel 210r entscheidet hauptsächlich jeweils
Eingaben und Ausgaben der Übertragungbereiche
TSd1 und TSd2 des ersten und zweiten Transportstroms TS1 und TS2 zwischen
den ersten und zweiten Stromeingabeabschnitten TSR_1 und TSR_2 und
dem Paketpuffercontroller 260. Das heißt, das DMA Busvermittlungsmittel 210r das
erste Paketkopferfassungssignal Sps1 und das erste Übertragungseinheitssignal TSd1
an den TSd Eingabestarterfasser 220 ausgibt, basierend
auf dem ersten Paketkopffeststellungssignal Sps1, dem ersten Anfragessignal
Srq1, und dem ersten Übertragungssignal
TSd1. Als Antwort auf das erste Dateneffizienzsignal Sde1, welches
vom DMA Busvermittlungsmittel 210r geliefert wird, liefert
der erste Stromeingabeabschnitt TSR_1 die erste Übertragungseinheit TSd1.
-
In ähnlicher
Weise gibt das DMA Busvermittlungsmittel 210r das zweite
Paketkopferfassungssignal Sps2 und die zweite Übertragungseinheit TSd2 an
den TSd Eingabestarterfasser 220 aus, basierend auf dem
zweiten Paketkopferfassungssignal Sps2, dem zweiten Anfragessignal
Srq2 und der zweiten Übertragungseinheit
TSd2.
-
Der
TSd Eingabestarterfasser 220 erzeugt, wann immer der Start
der Eingabe der ersten Übertragungseinheit
TSd1 oder TSd2 für
jedes Datenpaket festgestellt wird, ein Pufferzellenanfragesignal SbA,
um die Zuweisung einer Pufferzelle Bc im Paketpuffer 270r anzufordern,
um die Datenpakete P zu speichern, die geliefert werden. Des Weiteren
erzeugt der TSd Eingabestarterfasser 220 ein Schreibermöglichungssignal
Sw, welches anzeigt, dass mit dem Schreiben in die zugewiesene Pufferzelle
begonnen werden kann, und gibt das erzeugte Schreibermöglichungssignal
Sw an die Zielpufferzelle 250 aus. Das BC Zuweiser 230,
das BC Zuweisungsinformationsspeichermittel 240, und das
Ziel BC Spezifikationsmittel 250 arbeiten ähnlich wie
die der ersten Ausführungsform.
-
Als
Antwort auf das Schreibanfragessignal Swd schreibt der Paketpuffercontroller 260 die Übertragungseinheit
TSd1 oder TSd2, welche vom TSd Eingabestarterfasser 220 wurde,
in die zugewiesenen Pufferzelle des Paketpuffers 270r.
Zu diesem Zeitpunkt berichtet der DMA Buszuweiser 210r an den
Paketpuffercontroller 260, dass die Daten vom ersten Stromeingabeabschnitt
TSR_1 (das heißt
die Übertragungseinheit
TSd1) oder TSR_2 (das heißt die Übertragungseinheit
TSD2) stammt. Wie später beschrieben
wird, wird jeder der Übertragungbereiche
TSd1 und TSd2 vorab mit einer Markierung ausgestattet, welche den
entsprechenden Transportstrom TS1 oder TS2 anzeigt. Der Paketpuffercontroller 260 vergleicht
die gelieferte Information mit den Daten, welche in der Pufferzelle
gespeichert sind, mit der Information, welche vom DMA Busvermittlungsmittel 210r berichtet
wird, wobei die Daten gespeichert werden, so dass sie die richtige
Strominformation unterscheiden. Des Weiteren zählt der Paketpuffercontroller
die Anzahl von Bytes der Daten, die in die zugewiesene Pufferzellen
geschrieben werden, um festzustellen, dass die Übertragungseinheit TSd1 oder
TSd2 für
ein Datenpaket P geschrieben worden ist. Der Paketpuffercontroller 260 erzeugt
dann ein Übertragungvollständigkeitssignal
Stf, welches anzeigt, dass die Datenübertragung eines Datenpakets P
vom DMA Busvermittlungsmittel 210r vollendet ist, und gibt
das erzeugte Übertragungvollständigkeitssignal
Stf an den Speichervollendung BC Nummerncontroller 280 aus.
-
Basierend
auf der BC Zuweisungsinformation Iba, welche vom BC Zuweisungsinformationsspeichermittel 240r geliefert
wurde, und dem Übertragungvollständigkeitssignal
Stf, welches von dem Paketpuffercontroller 260 geliefert
wurde, erzeugt der Speichervollendungs BC Nummernspeichercontroller 280 ein
BC Nummernsignal Sbn, welches die Pufferzelle Bc anzeigt, welche
ein darin geschriebenes Datenpaket P aufweist, und ein Schreibanzeigeaktualisierungssignal
Swp zur Voranstellung um eine Stelle, wobei der Schreibzeiger WP
einen Speicherbereich anzeigt, in den die BC Nummer Nbc geschrieben
werden soll, und das erzeugte Signal an den Speichervollendungs
BC Nummernspeicher 290r ausgibt.
-
Der
Speichervollendungs BC Nummernspeicher 290 zeichnet die
BC Nummer Nbc auf, welche das BC Nummernsignal Sbn im Speicherbereich
anzeigt, welches derzeit vom Schreibzeiger WP angezeigt wird. Ebenso
stellt der Speichervollendungs BC Nummernspeicher 290 als
Antwort auf das BC Nummernsignal Sbn den Schreibzeiger WP um eine
Stelle vor, um den Schreibzeiger WP zu veranlassen, einen Bereich
in der Nähe
des Bereichs anzuzeigen, in den die BC Nummer Nbc geschrieben wurde.
Festzustellen ist, dass in der vorliegenden Ausführungsform der Speichervollendungs
BC Nummernspeicher 290r vorzugsweise durch einen Ringspeicher
ausgeführt wird,
wie mit Bezug auf 2 beschrieben. Daher kann durch
Voranstellen des Schreibzeigers WP um eine Stelle die BC Nummer
Nbc, die im Speicherbereich des Speichervollendungs BC Nummernspeichers 290r gespeichert
ist, immer dann entsprechend aktualisiert werden, wenn das Schreiben
in die Pufferzelle abgeschlossen ist.
-
Festzuhalten
ist, dass der Paketzugriffsabschnitt 300 dann wahlweise
durch das DMA Busvermittlungsmittel 210r den Paketpuffercontroller 260 und
die Übertragungseinheit
TSd der Da tenpakete P ausliest, welche in der Pufferzelle Bc des
Paketpuffers 270 gespeichert ist. Nachdem die in Bezug
genommenen Datenpakete P editiert werden oder einer anderen Verarbeitung
unterworfen werden, gibt der Paketzugriffsabschnitt 300 die
Prozessdatenpakete durch das DMA Busvermittlungsmittel 210r und
dann den Paketpuffercontroller 260 an den Paketpuffer 270 zum Überschreiben
der originalen Datenpakete P aus, welche in der Pufferzelle Bc gespeichert
sind.
-
Das
Paketpuffervermittlungsmittel PBA2 erzeugt ein Zustandssignal Sr2,
welches den Status des Betriebs jeder der obigen Komponenten zur
Ausgabe an den Controller PBAC2 anzeigt. Basierend auf dem Zustandssignal
Sr2 erzeugt der Controller PBAC2 ein Steuersignal Sc2 zur Steuerung
des Betriebs jeder der Komponenten des Paketpuffervermittlungsmittels
PBA2 zur Ausgabe an das Paketpuffervermittlungsmittel PBA2. Festzuhalten
ist, dass der Betrieb des Controllers PBA2 zum Erzeugen des Zustandssignals
Sr2 und des Steuersignals Sc2 Stand der Technik sind, und deshalb
hier nicht beschrieben werden.
-
Das
BC Zuweisungsinformationsspeichermittel 240r, der Paketpuffer 270r und
der Speichervollendungs BC Nummernspeicher 290r haben im Grunde
den gleichen Aufbau wie jeweils das BC Zuweisungsinformationsspeichermittel 240,
der Paketpuffer 270 und der Speichervollendungs BC Nummerspeicher 290,
welche mit Bezug auf 2 beschrieben sind. Jedoch
ist im Paketpuffer 270r die Anzahl von Pufferzellen Bc
eine ganze Zahl, die nicht kleiner als 2ε ist.
-
Dies
ist der Fall, da zumindest zwei verschiedene Pufferzellen Bc für jeden
eingegebenen Transportstrom TS erforderlich sind, die eine zum Speichern
der Datenpakete P, und die andere zum Lesen der gespeicherten Datenpakete
P. Festzustellen ist, dass in der vorliegenden Ausführungsform
zwei Transportströme
TS geliefert werden (ε =
2), das heißt,
der erste und der zweite Transportstrom TS1 und TS2. Daher ist die
Anzahl der Pufferzellen Bon eine ganze Zahl, die nicht kleiner als
vier (2 × 2)
ist.
-
Die
minimale Pufferkapazität
MBU ist gleich dem Umfang der Daten, die gespeichert werden sollen,
und der Verwaltungsbytes, die der Verwaltungsinformation entsprechen,
unabhängig
von der Aufteilung. Die Verwaltungsinformation enthält zumindest Transportstromidentifikationsinformation,
welche anzeigt, in welchem Transportstrom TS die geteilten/ungeteilten
Daten enthalten sind, welche gespeichert werden sollen.
-
Wenn
die Datenpakete P zur Speicherung aufgeteilt werden, dann ist die
minimale Pufferkapazität
MBU eine Summe des maximalen Umfangs der Daten nach der Aufteilung
und des Umfangs der Verwaltungsdaten, welche die Transportstrompaketidentifikation
enthalten. In diesem Fall wird eine minimale Anzahl von Pufferzellen
Nmin, welche der Minimalwert der Anzahl der Pufferzellen Bc N ist,
durch Multiplikation von 2ε × der Anzahl
von Aufteilungen D (die minimale Anzahl von Pufferzellen Nmin ist
2εD) erlangt.
Das heißt,
dass in der vorliegenden Ausführungsform
die minimale Anzahl von Pufferzellen Nmin als 4D dargestellt ist.
-
Des
Weiteren wird als nächstes
der Unterschied in der Eingaberate zwischen einer Vielzahl von verschiedenen
Datenpaketen P beschrieben. Das heißt, die Eingaberate des Datenpakets
P, welches in einer Vielzahl von Transportströmen TS enthalten ist, die an
den Transportstromdecoder TD2 geliefert werden, kann sich für jeden
Transportstrom TS unterscheiden. Nun soll ein Fall betrachtet werden,
wo die PC Datenpakete Pc101 und Pc111 des Programms 1, welche im
ersten Transportstrom TS1 enthalten sind, und die PC Datenpakete
Pc401 und Pc411 des Programms 4, welche im zweiten Transportstrom
TS2 enthalten sind, gepuffert sind, und dann ist die Eingaberate
der PC Da tenpakete Pc401 bei weitem höher als diejenige der PC Datenpakete Pc101.
-
In
diesem Fall, sogar wenn die PC Datenpakete Pc101 und Pc401 simultan
beim Transportstromdecoder TD2 ankommen, führt das DMA Busvermittlungsmittel 210r eine
Vermittlung aus, um eine Pufferung (die PC Datenpakete P0101, z.B.)
früher als
die anderen (die PC Datenpakete Pc401) zu beginnen. Nach dem Start
der Pufferung der PC Datenpakete Pc101 beginnt die Pufferung der
PC Datenpakete Pc401. Jedoch, da die Eingaberate der PC Datenpakete
Pc401 wesentlich höher
ist als diejenige der PC Datenpakete Pc101, wird die Eingabe der
PC Datenpakete Pc101 abgeschlossen, während die PC Datenpakete Pc401
gepuffert werden.
-
Um
diese Situation zu berücksichtigen,
ist es erforderlich, die Pufferzellen Bc zum Puffern der PC Datenpakete
Pc401 mit einer höheren
Rate zur Verfügung
zu stellen, die geliefert werden, während die PC Datenpaket Pc101
gepuffert werden. In diesem Fall wird die minimale Anzahl von Pufferzellen
Nmin bestimmt, basierend auf den Eingaberaten der PC Datenpakete
Pc des gelieferten Transportstroms TS. Wenn die minimale Pufferkapazität MBU konstant
ist, dann ist die minimale Anzahl von Pufferzellen Nmin üblicherweise
proportional zu den eingegebenen Transportströmen TS, welche gemäß der Anzahl
von PC Datenpaketen Pc ansteigen, deren eingegebene Transportströme sich
in Bezug auf die Eingaberate stark unterscheiden.
-
In
der vorliegenden Ausführungsform
ist die minimale Pufferkapazität
MBU in der Lage, ein Datenpaket P mit vorgegebenen hinzugefügten Verwaltungsdaten
zu speichern. Genauer ist die minimale Pufferkapazität MBU mit
192 Byte festgelegt, um ein Datenpaket P mit 188 Byte und die Verwaltungsdaten mit
4 Byte zu speichern. Die Verwaltungsdaten von 4 Byte enthalten die
oben beschriebene Transportstromidentifikationsinformation, und
auch Zeitstempelinformation, welche die Ankunftszeit der Datenpakete P
anzeigt, welche später
mit Bezug auf 16 beschrieben werden.
-
Der
BC Zuweisungsinformationsspeicher 240r hat BC Zuweisungsinformationsbereiche
Ac1 bis AcN, welche jeweils den Pufferzellen Bc1 bis BcN des Paketpuffers 270r entsprechen,
wie oben beschrieben. Ebenso muss der Speichervollendungs BC Nummernspeicher 290 nicht
so viele Bereiche wie die Anzahl von Pufferzellen Bc1 bis BcN im
Paketpuffer 270r haben. Lediglich M BC spezifizierende Bereiche
Rc1 bis RcN ausreichend.
-
Mit
Bezug auf ein Wellenformdiagramm, welches in 16 dargestellt
ist, werden im Folgenden die Vorgänge im ersten Stromeingabeabschnitt TSR_1,
der zweite Stromeingabeabschnitt TSR_2, das DMA Busvermittlungsmittel 210r und
der Paketpuffercontroller 260 kurz beschrieben. In der
Zeichnung wird der Einfachheit halber nur eine typische Wellenform
dargestellt, entweder eine aus dem ersten oder zweiten Transportstrom
TS1 und TS2, entweder eine aus dem ersten und zweiten Paketkopffeststellungssignal
Sps1 und Sps2, eines der ersten und zweiten Anfragessignale Srq1
und Srq2, eines der ersten und zweiten Dateneffizienzssignal Sde1 und
Sde2, und eine der ersten und zweiten Übertragungbereiche TSd1 und
TSd2. Jedoch können
sich diese Signale natürlich
etwas in Bezug auf ihren zeitlichen Ablauf und auf die Wellenform
unterscheiden. Insbesondere wird im Folgenden nur der erste Transportstrom
TS1 beschrieben, und der zweite Transportstrom TS2 wird nicht beschrieben,
um eine Verdoppelung zu vermeiden.
-
Wie
in 16 dargestellt, wird der erste Transportstrom
TS1, welcher aus einer Vielzahl von Datenpaketen P aufgebaut ist,
wobei jedes aus Daten mit 188 Byte besteht, sequenziell von der
externen Transportstromquelle an den ersten Stromeingabeabschnitt
TSR_1 durch ein Byte in Synchronisierung mit einem Eingabeübertragungtakt
Ck geliefert. Der erste Transportstrom TSi kann nicht nur durch ein
Byte geliefert werden, sondern auch durch ein Bit.
-
Der
erste Stromeingabeabschnitt TSR_1 stellt den Paketkopf der Datenpakete
P durch Einstellen des ersten eines Bytes von jedem Synchronisationsdatenpaket
P fest. Immer wenn der Paketkopf festgestellt wird, erzeugt der
erste Stromeingabeabschnitt TSR_1 ein erstes Paketkopferfassungssignal Sps1
zur Ausgabe an das DMA Busvermittlungsmittel 210r.
-
Darüber hinaus,
wenn der Paketkopf erkannt wird, erzeugt der erste Stromeingabeabschnitt TSR_1
einen Zeitstempel St, welcher die Zeit anzeigt, wenn die Datenpakete
angekommen sind, und eine Transportstromidentifikationsinformation
TSi, welche anzeigt, dass die Datenpakete P zum ersten Transportstrom
TS1 gehören.
Mit anderen Worten zeigt die Transportstromidentifikationsinformation TSi
an, dass der erste Transportstrom TS1 vom ersten Stromeingabeabschnitt
TSR_1 an die erste Eingangskanalgruppe des DMA Busvermittlungsmittels 210r geliefert
wird.
-
Die
Anzahl der Bytes des Zeitstempels St kann beliebig festgelegt werden,
basierend auf der Verarbeitungsgenauigkeit im Transportstromdecoder TD.
In der vorliegenden Ausführungsform
wird der Zeitstempel St vorzugsweise durch drei Bytes dargestellt.
Ebenso erfordert die Transportstromkennzeichnung TSi genug Bytes,
um alle Transportströme
zu identifizieren, die in den Transportstromdecoder TD eingegeben
wurden. Deshalb wird das Transportstromidentifikationsmittel TSi
von einem Byte in der vorliegenden Ausführungsform dargestellt. Der
erste Stromeingabeabschnitt TSR_1 erzeugt den Zeitstempel St und
das Transportstromidentifikationsmittel TSi, um die Verwaltungsinformation
IM zu erzeugen, und fügt
die Verwaltungs information IM zum Kopf der eingegebenen Datenpakete
P hinzu, um die erste Übertragungseinheit
TSd1 zu erzeugen.
-
So
gesehen ist es durch Liefern der Datenpakete P mit dem Zeitstempel
St und dem Transportstromidentifikationsmittel TSi als Verwaltungsinformation
IM möglich,
die entsprechenden Datenpaket richtig zu identifizieren, die in
den verschiedenen Transportströmen
enthalten sind. Jedoch ist es sogar möglich, wie oben dargestellt,
diese Pakete basierend auf der Verwaltungsinformation IM in der
richtigen Reihenfolge zu verarbeiten, falls das Problem des so genannten überholenden
Pakets auftritt (Eingabe von Datenpaketen P, die später angekommen sind,
wird vor der Eingabe der Datenpakete P abgeschlossen, die vorher
angekommen sind).
-
Wie
in der ersten Ausführungsform
wird die erste Übertragungseinheit
TSd1 auf acht Bytes in der vorliegenden Ausführungsform festgesetzt. Der
erste Stromeingabeabschnitt TSR_1 erzeugt für alle acht Bytes der übertragenen
Daten ein erstes Anfragessignal Srq1 zum Anfordern des DMA Busvermittlungsmittels 210r,
um eine Eingabe der ersten Übertragungseinheit
TSd1 zu erhalten, und gibt das erste Anfragessignal Srq1 an das
DMA Busvermittlungsmittel 210r aus.
-
Das
heißt,
wenn ein Synchronisierungsbyte Bsync, welches den Kopf des Datenpakets
des ersten Transportstroms TS1 bildet, festgestellt wird, dann wird
die Verwaltungsinformation IM von vier Bytes, welche aus dem Zeitstempel
St von drei Bytes und dem Transportstromidentifikationsmittel TSi
mit einem Byte zusammengesetzt ist, erzeugt. Wenn daher das vierte
Byte vom Synchronisationsbyte Bsync am Kopf eingegeben wird, dann
erzeugt der erste Stromeingabeabschnitt TSR_1 das erste Anfragessignal
Srq1. Mit Bezug auf das fünfte
Byte und die Folgenden wird das erste Anfragessignal Srq1 für alle acht
Bytes erzeugt. Das heißt,
die ersten vier Bytes der Übertragungs einheit
TSd, welche zuerst ausgegeben werden, stellen die Verwaltungsinformation, welche
vom Transportstromdecoder TD2 erzeugt wird, und nicht die Datenpakete
P selbst dar.
-
Wenn
die Vielzahl der Transportströme
TS jeweils identifiziert werden müssen, dann wird der Zeitstempel
als Stε bezeichnet,
der Transportstromspezifizerer als TSiε, und die Verwaltungsinformation als
IMε, wobei ε eine natürliche Zahl
ist, welche jede der Vielzahl von Transportströmen TS identifiziert, welche
in die entsprechenden Stromeingabeabschnitte TSR eingegeben werden.
Spezifisch werden hier Komponenten mit Bezug auf den ersten Transportstrom
TS1 als das erstes Paketkopffestsellungssignal Sps1, das erste Anfragessignal
Srq1, das erste Dateneffizienzssignal Sde1, die erste Übertragungseinheit
TSd1, der Zeitstempel St1, die Transportstromidentifikationsinformation
TSi1, und der erste Transportstromeingabeabschnitt TSR_1 gekennzeichnet.
In ähnlicher
Weise werden hier Komponenten mit Bezug auf den zweiten Transportstrom
TS2 als das zweite Paketkopffeststellungssignal Sps2, zweites Anfragessignal
Srq2, das zweite Dateneffizienzssignal Sde2, die zweite Übertragungseinheit
TSd2, ein Zeitstempel St2, eine Transportstromidentifikationsinformation
TSi2, und der zweite Transportstromeingabeabschnitt TSR_2 gekennzeichnet.
-
Als
Antwort auf das erste Anfragessignal Srq1 entscheidet das DMA Busvermittlungsmittel 210r Eingabe
und Ausgabe, um eine Eingabe der ersten Übertragungseinheit TSd1 aus
dem ersten Stromeingabeabschnitt TSR_1 vorzubereiten. Dann, wenn
dieser vorbereitet ist, (wenn die vorgegebene Zeit Ta abgelaufen
ist, nachdem das Anfragessignal Srq1 kommt) erzeugt das DMA Busvermittlungsmittel 210 das
erste Dateneffizienzssignal Sde1 zur Ausgabe an den Stromeingabeabschnitt
TSR_1.
-
Als
Antwort auf das erste Dateneffizienzssignal Sde1 gibt der erste
Stromeingabeabschnitt TSR_1 die Datenpakete P aus, die im internen
Puffer für
das DMA Busvermittlungsmittel 210r durch alle acht Bytes
als erste Übertragungseinheit
TSd1 gespeichert sind.
-
Auf
eine Weise, welche ähnlich
ist wie diejenige, welche für
den ersten Stromeingabeabschnitt TSR_1 und für das DMA Busvermittlungsmittel 210r beschrieben
ist, erzeugt der zweite Stromeingabeabschnitt TSR_2 das zweite Paketkopffeststellungssignal
Sps2 und das zweite Anfragessignal Srq2 zur Ausgabe an das DMA Busvermittlungsmittel 210r. Als
Antwort auf das zweite Anfragessignal Srq2 gibt das DMA Busvermittlungsmittel 210r das
zweite Dateneffizienzssignal Sde2 an den zweiten Stromeingabeabschnitt
TSR_2 aus.
-
Der
zweite Stromeingabeabschnitt TSR_2 erzeugt die zweite Übertragungseinheit
TSd2, und als Antwort auf das zweite Dateneffizienzssignal Sde2
gibt er die zweite erzeugte Übertragungseinheit TSd2
an das DMA Busvermittlungsmittel 210r weiter.
-
Das
DMA Busvermittlungsmittel 210r gibt das erste Paketkopffeststellungssignal
Sps1, das zweite Paketkopffeststellungssignal Sps2, die erste Übertragungseinheit
TSd1, und die zweite Übertragungseinheit
TSd2 an den TSd Eingabestarterfasser 220 aus.
-
Basierend
auf dem ersten Paketkopffeststellungssignal Sps1 und der ersten Übertragungseinheit TSd1
stellt der TSd Eingabestarterfasser 220 den Start der Eingabe
der ersten Übertragungseinheit TSd1
durch eine Einheit von Datenpaketen P fest, und liefert die erste Übertragungseinheit
TSd1 an den Paketpuffercontroller 260.
-
Ähnlich,
basierend auf dem zweiten Paketkopffeststellungssignal Sps2 und
der zweiten Übertragungseinheit
TSd2, stellt der TSd Eingabestarterfasser 220 den Start
der Eingabe der zweiten Übertragungseinheit
TSd2 durch eine Einheit von Datenpaketen P fest, und liefert die
zweite Übertragungseinheit
TSd2 an den Paketpuffercontroller 260.
-
Wenn
der Beginn der Eingabe der ersten oder zweiten Übertragungseinheit TSd1 oder
TSd2 auf die oben beschriebene Weise erkannt wird, erzeugt der TSd
Eingabestarterfasser 220 ein Pufferzellen (BC) Anfragesignal
Sba zum Anfordern der Zuweisung einer Pufferzelle Bc im Paketpuffer 270 zur Speicherung
der Datenpakete P, welche derzeit eingegeben werden, und gibt das
erzeugte BC Anfragessignal Sba an den BC Zuweiser 230 aus.
Des Weiteren erzeugt der TSd Eingabestarterfasser 220 ein Schreibermöglichungssignal
Sw, welches anzeigt, dass das Schreiben in der zugewiesenen Pufferzelle begonnen
werden kann, und gibt das erzeugte Schreibermöglichungssignal Sw an das Zielort
BC Spezifikationsmittel 250 weiter.
-
Basierend
auf einem Schreibanfragessignal Swd, welches vom Zielort BC Spezifikationsmittel 250 geliefert
wurde, schreibt der Paketpuffercontroller 260 die erste
und zweite Übertragungseinheit TSd1
und TSd2, welche durch das DMA Busvermittlungsmittel 210r kommt,
und den TSd Eingabestarterfasser 220 in die zugewiesene
Pufferzelle Bc des Paketpuffers 270r. Dann, wenn die ersten
oder zweiten Übertragungbereiche
TSd1 oder TSd2 eines Datenpakets geschrieben worden sind, erzeugt
der Paketpuffercontroller 260 ein Übertragungsvollständigkeitssignal
Stf zur Ausgabe an den Speichervollendungs BC Nummernspeichercontroller 280.
-
Mit
Bezug auf 17, 18 und 19 wird
im Folgenden der Betrieb des Transportstromdecoders TD2 beschrieben.
Wie in 17 beschrieben, ist der Betrieb
des Transportstromdecoders TD2 ähnlich
zu demjenigen des Transportstromdecoders TD1. Jedoch werden die
Prozesse der folgenden acht Subroutinen wie folgt verändert, um
die Datenpakete P der Vielzahl von Transportströmen TS1 bis TSε zu verarbeiten.
-
Das
heißt,
der Subroutinenschritt #200 zum Darstellen verteilter Programme
und möglicher
Prozesse auf dem einzelnen Transportstrom TS wird durch den Subroutinenschritt
#200R zum Präsentieren
von verteilten Programmen und möglicher
Prozesse bei der Vielzahl von Transportströmen TS bis TSε ersetzt.
-
Der
Subroutinenschritt #300 zum Einstellen einer Anfrage für einen
Prozess auf dem einzelnen Transportstrom Ts wird durch den Subroutinenschritt #300r
zum Einstellen einer Anfrage für
einen Prozess auf der Vielzahl der Transportströme TS bis TSε ersetzt.
-
Der
Subroutinenschritt #400 zum Bestimmen eines Prozesses auf dem einzelnen
Transportstrom TS wird durch den Subroutinenschritt #400r zum Einstellen
eines Prozesses auf der Vielzahl der Transportströme TS bis
TSε ersetzt.
-
Der
Subroutinenschritt #500 zum Erzeugen der Zieldatenpaket ID Information
PIDd wird durch den Subroutinenschritt #500R zum Erzeugen von Zieldatenpaket
ID Informationen PIDd und Zieltransportstrom ID Informationen Tsid
ersetzt.
-
Der
Subroutinenschritt #600 zum Speichern der Datenpakete P des einzelnen
Transportstroms TS wird durch den Subroutinenschritt #600R zum Speichern
der Datenpakete P der Vielzahl der Transportströme TS bis TSε ersetzt.
-
Der
Subroutinenschritt #700 zum Auswählen der
Zieldatenpakete P des einzelnen Transportstroms TS wird durch den
Subroutinenschritt #700r zum Auswählen der Zieldatenpakete P
der Vielzahl von Transportströmen
TS bis TSε ersetzt.
-
Der
Subroutinenschritt #800 zum Ausführen des
gewünschten
Prozesses mit den Datenpaketen P des einzelnen Transportstroms TS
wird durch den Subroutinenschritt #800R zum Ausführen des gewünschten
Prozesses mit den Datenpaketen P der Vielzahl der Transportströme TS bis
TS ε ersetzt.
-
Der
Subroutinenschritt #900 zum Speichern der verarbeiteten Datenpakete
P des einzelnen Transportstroms TS wird durch den Subroutinenschritt
#900R zum Speichern der verarbeiteten Datenpakete P der Vielzahl
der Transportströme
TS bis TSε ersetzt.
-
Im
Folgenden werden hauptsächlich
die Schritte #200R bis #900r und der Betrieb beschrieben, welcher
kennzeichnend für
den wie oben aufgebauten Transportstromdecoder ist. Die gleichen
Operationen wie diejenigen im Transportstromdecoder TD1 werden hier
nicht beschrieben, um Wiederholungen zu vermeiden.
-
Im
Subroutinenschritt #200R zum Präsentieren
von verteilten Programmen und möglicher
Prozesse auf der Vielzahl von Transportströmen TS bis TSε erzeugt
der TD Controller TDC2 ein Programminhaltspräsentationssignal Sp2 zur Ausgabe an
den Subprozessesanfrageeingabeabschnitt APR. Das Programminhaltspräsentationssignal
Sp2 zeigt verteilte Programme, welche von den Programmabbildungstabellen
PAT1 bist PATε gelesen
werden, und die Programmabbildungstabellen PMT1 bis PMTε an, die
in den PAT Speicherbereichen Ar (PAT) und im PMT Speicherbereich
Ar (PMT) des Hauptspeichers 900r für jeden der Transportströme TS1 bis
TSε gespeichert
sind.
-
Im
Subroutinenschritt #300R zum Einstellen einer Anfrage für einen
Prozess auf der Vielzahl von Transportströmen TS bis TSε stellt der
Subprozessesanfrageeingabeabschnitt APR, basierend auf dem Programminhaltspräsentationssignal
Sp2, eine Anwenderanfrage zum Ausführen des Prozesses auf der
Vielzahl von Transportströmen
TS1 bis TSε fest, und
erzeugt ein Prozessanfragesignal Se2 zur Ausgabe an den TD Controller
TDC2.
-
Im
Subroutinenschritt #400R zum Bestimmen eines Prozesses mit der Vielzahl
von Transportströmen
TS bis TSε bestimmt
der TD Controller TDC2, basierend auf dem Prozessanfragesignal Se2,
einen spezifischen Prozess auf der Seite des Transportstromdecoders
TD2, welcher ausgeführt werden
soll, und erzeugt Prozessinformation.
-
Im
Subroutinenschritt #500R zum Erzeugen der Zieldatenpaket ID Information
PIDd und der Zieltransportstrom ID Information TSid erzeugt der
TD Controller TDC2 Zieldatenpaket ID Information PIDd, welche die
Datenpakete P repräsentieren,
die dargestellt werden sollen, und die Zieltransportstrom ID Information
TSid, welche den Transportstrom TS repräsentiert, zu welchen die Zieldatenpakete
P gehören. Diese
Erzeugung wird basierend auf der Prozessinformation durchgeführt, welche
im Schritt #400R bestimmt wurde. Dann gibt der TD Controller TDC2
die erzeugten Informationen an das Paketbestimmungsmittel 400R aus.
-
Mit
Bezug auf 18 wird im Folgenden im Detail
der Betrieb im Subroutinenschritt #600R beschrieben, um die Datenpakete
P der Vielzahl von Transportströmen
TS bis TSε zu
speichern. In der vorliegenden Ausführungsform, um Pakete nicht
einer einzelnen, sondern einer Vielzahl von Transportströmen zu speichern,
werden die Schritte S602 bis S638, die in 5 dargestellt
sind, in der Anzahl wie die eingegebenen Transportströme (ε) geliefert,
mit Ausnahme von Schritt S608. Festzuhalten ist, dass in der vorliegenden
Ausführungsform
der Fall beispielhaft beschrieben wird, wo zwei Transportströme TS1 und
TS2 (ε =
2) eingegeben werden. Jedoch ist es offensichtlich, dass die Beschreibung
auch auf einen Fall angewandt werden kann, wo zwei oder mehr (ε = 2) Transportströme TS eingegeben
werden. Des Weiteren wird Schritt S605A neu zwischen den Schritten
S606 und S605 hinzugefügt.
Des Weiteren wird in der vorliegenden Ausführungsform Schritt S608 (5)
zur Vermittlung über
die Eingabe der Datenpakete P, welche im einzelnen Transportstrom TS
durch die Übertragungseinheit
TSd enthalten sind, durch Schritt S608R zur Vermittlung über Eingabe/Ausgabe
der Datenpakete P, welche in der Vielzahl von Transportströmen TS bis
TSε durch
die Übertragungseinheit
TSd enthalten sind, ersetzt.
-
Um
die Beziehung zwischen den Schritten und den entsprechenden Transportströmen TS1
bis TSε anzuzeigen,
werden Schritte für
einen spezifischen Transportstrom TS, die verarbeitet werden sollen,
mit einem Vorzeichen versehen, welches dem Vorzeichen des spezifischen
Transportstroms TS entspricht. Schritte, welche für alle Transportströme TS1 bis
TSε gemeinsam
sind, werden nicht mit einem Vorzeichen versehen. Wie oben dargestellt,
wird in der vorliegenden Ausführungsform
der Fall beschrieben, wo zwei Transportströme TS1 und TS2 (ε = 2) eingegeben
werden. Daher werden Schritte für
den ersten Transportstrom TS1 mit einem Vorzeichen 1 und die für den zweiten
Transportstrom TS2 mit einem Vorzeichen 2 versehen, um den Zieltransportstrom
TS anzuzeigen.
-
Im
Folgenden wird im Detail der Betrieb, welcher für den Transportstromdecoder
TD2 kennzeichnend ist, und der Betrieb im Schritt #400R beschrieben.
Der Transportstromdecoder TD2 wird simultan mit dem ersten Transportstrom
TS1 und dem zweiten Transportstromdecoder TS2 ausgestattet. Dann
werden die simultan gelieferten Transportströme TS1 bis TSε (ε = 2) simultan
den obigen Schritten S602 bis S638 unterworfen. Jedoch werden in
der vorliegenden Ausführungsform,
falls nicht anders vermerkt, die Prozesse für den ersten Transportstrom
TS1 zuerst beschrieben, und dann werden die für den zweiten Transportstrom
TS2 zur Vereinfachung der Darstellung beschrieben.
-
Zuerst
wird im Schritt S602_1 der erste Transportstrom TS1 von der externen
Transportstromversorgungsquelle an den ersten Stromeingabeabschnitt
TSR_1, zum Beginn der Eingabe des Prozesses auf dem ersten Transportstrom
TS1 geliefert. Der Prozess schreitet dann zu dem nächsten Schritt
S604_1 fort.
-
Im
Schritt S604_1 stellt der erste Stromeingabeabschnitt TSR_1 den
Kopf des Pakets des Transportstroms TS1 fest, welcher geliefert
wird, um ein erstes Paketkopffeststellungssignal Sps1 zu erzeugen.
Der Prozess geht dann auf den nächsten Schritt
S606_1 über.
-
Im
Schritt S606_1 gibt der erste Stromeingabeabschnitt TSR_1 das erste
Paketkopferfassungssignal Sps1 an das DMA Busvermittlungsmittel 210 aus.
Das erste Paketkopffeststellungssignal Sps1 geht durch das DMA Busvermittlungsmittel 210 an den
TSd Eingabestarterfasser 220. Der Prozess geht dann auf
den nächsten
Schritt S605A_1 über.
-
Im
Schritt S605A_1 erzeugt der erste Stromeingabeabschnitt TSR_1 einen
Zeitstempel St1, basierend auf der Zeit, wenn das Erfassen des Kopfbytes
des ersten Transportstroms TS1 und einer Transportstromkennzeichnungsinformation
TSi1 mit Bezug auf die Eingangskanalgruppe des DMA Busvermittlungsmittels 210r zum
Erzeugen der Verwaltungsinformation IM1 festgestellt wird. Der Prozess geht
dann auf den nächsten
Schritt S605_1 über.
-
Im
Schritt S605_1 speichert der Stromeingabeabschnitt TSR_1 im internen
Eingabepuffer die Datenpakete nach dem Paketkopf. Wenn das Speichern
der Übertragungseinheit
TSd abgeschlossen ist, dann geht der Prozess auf den nächsten Schritt S607_1 über.
-
Im
Schritt S607_1, gibt der Stromeingabeabschnitt TSR_1 ein Anfragessignal
Srq1 an das DMA BusVermittlungsmittel 210 weiter. Der Prozess
geht dann auf den nächsten
Schritt S608R über.
-
Simultan
mit dem Prozesse in den obigen Schritten S602_1 bis S607_1 für den ersten
Transportstrom TS1 werden Prozesse in den Schritten S602_2 bis S607_2
für den
zweiten Transportstrom TS2 ausgeführt. Basierend auf den Anfragessignalen Srq1
und Srq2, die jeweils in den Schritten S607_1 und S607_2 ausgegeben
werden, entscheidet das DMA Busvermittlungsmittel 210 im
Schritt S608 und gibt jeweils Eingaben der ersten und zweiten Übertragungbereiche
TSd1 und TSd2 des ersten und zweiten Transportstroms TS1 und TS2
aus.
-
Mit
anderen Worten entscheidet im Schritt S608R, basierend auf den Anfragesignale
Srq1 und Srq2, das DMA Busvermittlungsmittel 210r über eine Eingabe
der ersten Übertragungseinheit
TSd1 an den ersten Stromeingabeabschnitt TSR_1 und eine Eingabe
der zweiten Übertragungseinheit
TSd2 an den zweiten Stromeingabeabschnitt TSR_2s, um die Eingabe
vom ersten oder zweiten Übertragungbereich
TSd1 und TSd2 zu ermöglichen.
Der Prozess geht dann entweder auf einen der nächsten Schritte S610_1 und
S610_2 der zur Eingabe zugelassenen Übertragungseinheit TSd über. Im
Folgenden wird ein Fall beschrieben, wo die erste Übertragungseinheit
TSd1 zugelassen ist.
-
Im
Schritt S610_1, basierend auf dem Vermittlungsergebnis im Schritt
S608, gibt das DMA Busvermittlungsmittel 210r ein erstes
Dateneffizienzssignal Sde1 an den ersten Stromeingabeabschnitt TSR_1
aus, um die Eingabe der zur Eingabe zugelasse nen Übertragungseinheit
TSd1 zu ermöglichen. Der
Prozess geht dann auf den nächsten
Schritt S612_1 über.
-
Im
Schritt S612_1 wird als Antwort auf das erste Dateneffizienzssignal
Sde1, welches im Schritt S610 ausgegeben wird, die Übertragung
der ersten Übertragungseinheit
TSd1 auf den ersten Stromeingabeabschnitt TSR_1 an das DMA Busvermittlungsmittel 210r begonnen.
Die erste Übertragungseinheit TSd1
geht durch das DMA Busvermittlungsmittel 210r an den TSd
Eingabestarterfasser 220. Der Prozess geht dann zu dem
nächsten
Schritt S614_1 über.
-
Im
Schritt S614_1, basierend auf einem ersten Paketkopferfassungssignal
Sps1, welches im Schritt S606_1 ausgegeben wird, erkennt der TSd Eingabestarterfasser 220,
dass die Eingabe der ersten Übertragungseinheit
TSd1 begonnen hat.
-
Das
heißt,
basierend auf dem ersten Dateneffizienzssignal Sde1, welches im
Schritt S610_1 ausgegeben wurde, dass der TSd Eingabestarterfasser 220 die
erste Starteingabe der ersten Übertragungseinheit
TSd1 feststellt, wenn die erste Übertragungseinheit
TSd1 festgestellt wird, die zuerst von einem der Datenpakete P kommt.
Wenn das erste Dateneffizienzsignal Sde1 ausgegeben wird, dann wird der
Beginn der Eingabe der ersten Übertragungseinheit
TSd1 festgestellt.
-
Wenn
die erste Übertragungseinheit
TSd1, die zuerst nach dem ersten Paketkopferfassungssignal Sps1
kommt, als Ergebnis der Vermittlung im Schritt S608r geliefert wird,
dann stellt der TSd Eingabestarterfasser 220 den Start
der Eingabe des Kopfes des Pakets fest, der vom ersten Stromeingabeabschnitt
TSR_1 kommt. Ähnlich
wird Sp2 als Ergebnis der Vermittlung im Schritt S608R geliefert, wenn
die zweite Übertragungseinheit
TSd2 zuerst nach dem zweiten Paketkopferfassungssignal kommt, wobei
der TSd Eingabestarterfasser 220 den Beginn der Eingabe des
Paketkopfs erkennt, welcher vom zweiten Stromeingabeabschnitt TSR_2
kommt. Der Prozess geht dann auf den nächsten Schritt S615_1 über.
-
Im
Schritt S615_1 bestimmt der TSd Eingabestarterfasser 220,
ob die erste Übertragungseinheit
TSd1 der Kopf der Datenpakete P ist, basierend darauf, ob die erste Übertragungseinheit
TSd1 die erste ist, die nach dem ersten Paketkopffeststellungssignal
Sps1 kommt. Wenn festgestellt wird, dass die Übertragungseinheit TSd1 der
Kopf der Datenpakete P ist, geht der Prozess auf Schritt S6161 über. Wenn
festgestellt wird, dass die Übertragungseinheit
TSd1 nicht der Kopf der Datenpakete P ist, dann überspringt der Prozess die
Schritte S616_1, S618_1, S620_1, S622_1, S626_1 und S628_1, und springt
zu Schritt S630_1. So gesehen wird die Pufferzelle, die mit der
ersten Übertragungseinheit
TSd1 des ersten Transportstroms TS1 beschrieben wird, zur Verwendung
zugewiesen und vorbereitet.
-
Genauso
wie mit dem ersten Transportstrom TS1 werden die Prozesse im Schritt
S610_2 bis S638_2 auf dem zweiten Transportstrom TS2 basierend auf
der Vermittlung im Schritt S608R ausgeführt. Die Datenpakete des zweiten
Transportstroms TS2 werden in einer vorgegebenen Pufferzelle Bc
durch die zweite Übertragungseinheit
TSd2 gespeichert.
-
Mit
den obigen Schritten kann die Speicherung sequenziell auf Echtzeitbasis
im Schritt #600r mit der Information (IM) über die Beziehung zwischen den
Datenpaketen P und den Transportströmen TS1 bis TSε, welche
die Datenpakete P enthalten, ausgeführt werden, und an den Transportstromdecoder TD2
und über
die Beziehung in Bezug auf die Zeit zwischen den verschiedenen Transportströmen TS geliefert
werden.
-
Mit
Bezug auf 19 wird als nächstes im Detail
der Betrieb im Subroutinenschritt #800R zum Ausführen des angefragten Prozesses
an den Datenpaketen P auf der Vielzahl der Transportströme TS bis
TSε beschrieben.
In der vorliegenden Ausführungsform
zum Speichern der Pakete von nicht nur einem einzelnen Transportstrom,
sondern einer Vielzahl von Transportströmen, werden die Schritte S808 und
S810, welche in 6 gezeigt werden, jeweils durch
die Schritte S808 und S810R ersetzt. Im Folgenden wird im Detail
der Betrieb, der für
den Transportstromdecoder TD2 charakteristisch ist, und der Betrieb
im Schritt #800R beschrieben.
-
Wie
mit der ersten Ausführungsform
(6) wird in 19 der
Betrieb dargestellt, der sowohl auf simultane als auch auf sequenzielle
Verarbeitung des Schritts #600R und der Schritte #700R bis #900R
anwebdbar ist. Zuerst wird durch eine Reihe von Prozessen in den
Schritten S802, S804 und S806 die Pufferzelle Bcn bestimmt, welche
die Datenpakete speichert, die auf Anfrage des Anwenders verarbeitet werden
sollen. Der Prozess geht dann zu dem nächsten Schritt S808R über.
-
Im
Schritt S808R wird die Verwaltungsinformation IM von den Datenpaketen
P gelesen, die in der Pufferzelle Bcn gespeichert sind (Paketpuffer 270r),
welche im Schritt S806 bestimmt wird. Basierend auf der Leseverwaltungsinformation
IM werden die Pufferpaket ID Information PIDe und die Transportstrom
ID Information TSie zur Ausgabe an die Paketfeststellungsmittel 400r erzeugt.
Der Prozess geht dann zum nächsten
Schritt S810R über.
-
Im
Schritt S810R bestimmt das Paketfeststellungsmittel 400r,
ob die Pufferpaket ID Information PIDe mit den Zieldatenpaket ID
Informationen PIDd übereinstimmt,
und ebenso, ob die Transportstrom ID Information TSIE mit der Zieltransportstrom ID
Information TSid übereinstimmt.
Als solches ist es durch Prüfen,
ob eine Abstimmung simultan mit Bezug auf beide Paketidentifikationen
PID und die Transportstromidentifikationsinformation Tsi auftritt, möglich, die
Vielzahl der Datenpakete P zu identifizieren, die die gleiche Paketidentifikation
PID haben, aber in verschiedenen Transportströmen TS enthalten sind. Wenn
Schritt S810 mit Ja ausgeführt
wird, d.h. wenn die Datenpakete, auf die derzeit zugegriffen wird,
das Ziel eines vom Anwender angefragten Prozesses sind, dann geht
der Prozess auf den nächsten
Schritt S812 über.
-
Die
folgenden Prozesse in den Schritten S812 bis S820 wurden mit Bezug
auf 6 beschrieben und werden deshalb hier nicht beschrieben.
-
Wie
oben ausgeführt,
um den vom Anwender gewünschten
Prozess mit einer Vielzahl von Programmen auszuführen, die in sequenziell eingegebenen
Transportströmen
TS enthalten sind, werden nur die entsprechenden Datenpakete P,
welche aus allen Datenpaketen P ausgewählt werden, die in den verschiedenen
Transportströmen
TS enthalten sind, dem Prozess unterworfen. Jedoch können die
verschiedenen Transportströme,
die simultan geliefert werden, eine Vielzahl von Datenpaketen haben,
die sich in der Eingaberate unterscheiden oder die gleiche Paketidentifizierungsinformation
PID. Daher ist es nicht möglich,
sicherzustellen, dass die sequenziell gelieferte Vielzahl von Datenpaketen
P innerhalb einer bestimmten Zeitspanne verarbeitet wird.
-
Um
das obige Problem in der vorliegenden Ausführungsform zu umgehen, werden
alle Datenpakete, die in der eingegebenen Vielzahl von Transportströmen TS1
bis TSε enthalten
sind, mit der Transportstromidentifikationsinformation TSi und dem
Zeitstempel St versehen, und ermöglichen
es damit jedem Datenpaket P mit einer Kombination der Paketidentifikation
PID, sicher identifiziert zu werden. Dann ist, wie in der ersten
Ausführungsform,
die Vielzahl der identifizierbaren Datenpakete P des Transportstroms
TS1 bis TSε in
der Reihenfolge, wie sie kommen, wobei jedes in einer vorgegebenen
Pufferzelle Bc für
eine vorgegebene Zeitperiode beschränkt ist, und dieser Prozess
wird vom Schreibzeiger WP verwaltet. Dann wird festgestellt, ob
die eingeschränkten
Datenpakete P die Zieldatenpakete sind, und wenn sie die Zieldatenpakete
sind, werden die Datenpakete P verarbeitet und dann ausgegeben.
Dieser Prozess wird vom Lesezeiger RP verwaltet. Diese Reihe von
Operationen wird durch einen Hybrid aus Software und Hardware gesteuert
und abgesichert.
-
Wie
oben mit Bezug auf 20 beschrieben, ist in der
zweiten Ausführungsform
der vorliegenden Erfindung die eingegebene Vielzahl von Transportströmen TS1
bis TSε jeweils
aus einer Vielzahl von Datenpaketen P zusammengesetzt, wobei alle
mit einer eindeutigen Paketidentifikation PID versehen sind. Auch
kann mit Bezug auf 9 die eingegebene Vielzahl
von Transportströmen
TS1 bis TSε beschrieben
werden, die jeweils aus einer Vielzahl von Datenpaketen P zusammengesetzt
werden, welche mit einer Paketidentifikation versehen sind, die
in Bezug auf jede Datenpaketgruppe, zu der das Datenpaket P gehört, so wie
auf den Transportstrom TS, welcher die wie in ISO/IEC 13818-1 (MPEG2
System) geforderte Paketstruktur aufweist, eindeutig sind.
-
In 23 wird eine beispielhafte Paketstruktur von den
zwei Transportströmen
TS1 und TS2 gezeigt, die mit der Paketidentifikation PID für jede Datenpaketgruppe
geliefert werden. Wie mit Bezug auf das in 20 beschriebene
Beispiel dargestellt, wird in 23 eine
beispielhafte Struktur des ersten Transportstroms TS1 beschrieben,
welcher zumindest drei verschiedene Programme 1, 2, 3, ..., α1 zur Verfügung stellt,
und eine beispielhafte Struktur des zweiten Transportstroms TS2,
welcher zumindest sechs verschiedene Programme 1, 2, 3, 4, 5, 6,
..., α2 zur
Verfügung
stellt.
-
Der
erste Transportstrom TS1 wurde mit Bezug auf 9 beschrieben
und wird deshalb hier nicht beschrieben. Ebenso werden der zweite
Transportstrom TS2 sowie der erste Transportstrom TS1 Videodaten
für das
Programm 4 als Programminhalt (PC Datenpakete Pc401) beschrieben,
und Audiodaten werden dafür
als Datenpakete Pc411 definiert. Videodaten für das Programm 5 werden als
PC Datenpakete Pc501 und Audiodaten dafür als PC Datenpakete Pc511
definiert. Videodaten für
das Programm 6 werden als PC Datenpakete Pc601 und Audiodaten dafür als PC
Datenpakete Pc611 definiert.
-
So
gesehen sind die Transportströme
TS, welche in 23 dargestellt sind, von der
Struktur her ähnlich
wie die, welche mit Bezug auf 9 beschrieben
worden sind, mit Ausnahme der Tatsache, dass die Datenpakete P mit
einer eindeutigen Identifikationsinformation für jeden Typ von Datenpaketen geliefert
werden, im Gegensatz dazu hat jedes Datenpaket, welches den Transportstrom
TS bildet, eine eindeutige Paketidentifikationsinformation.
-
Als
nächstes
wird der Betrieb beschrieben, bei dem die Vielzahl von Transportströmen TS1
bis TSε,
welche die obige Paketstruktur haben, an den Transportstromdecoder
TD2 gemäß der zweiten Ausführungsform
der vorliegenden Erfindung geliefert wird. Das Liefern der eindeutigen
Paketidentifikation PID an jede Datenpaketgruppe durch jeden Inhalt
der Datenpakete P ist im Grunde das Gleiche wie das Liefern von
lediglich der oberen drei Zahlen der Paketidentifikation PID der
Datenpakete P an den Transportstrom TS, der in 20 dargestellt ist. Das heißt, auch in der vorliegenden
Ausführungsform durch
Entnehmen der PC Datenpakete Pc101 und Pc201 aus dem ersten Transportstrom
TS1 und Entnehmen der Datenpakete Pc401 und Pc501 aus dem zweiten
Transportstrom TS2, dass es möglich
ist, einen Vielfachprogramm (PP) Videodatenpaketstrang zu ererzeugen,
der im Wesentlichen die gleiche Paketstruktur wie die Videodatenpakete
PcV aufweist, welche in 22 dargestellt
sind.
-
In ähnlicher
Weise ist es durch Extrahieren der PC Datenpakete Pc111 und Pc211
aus dem ersten Transportstrom TS1 und Extrahieren der PC Datenpakete
Pc411 und Pc511 aus dem zweiten TransporTSrom TS2 möglich, einen
Vielfachprogramm (PP) Audiodatenpaketstrang zu erzeugen, welcher im
Wesentlichen die gleiche Paketstruktur wie die Audiodatenpakete
PcS aufweist, welche in 22 dargestellt
sind.
-
Jedoch
zeigen beide, die Zieldatenpaket ID Information PIDd, welche im
TD Controller TDC2 erzeugt wird, und die Pufferpaket ID Information
PIDe, welche aus den Datenpaketen P gelesen wird, welche in der
Pufferzelle Bc gespeichert sind, eine Datenpaketgruppe an. Wenn
daher das Paketvermittlungsmittel 400r feststellt, dass
die Pufferpaket ID Information PIDe mit der Zieldatenpaket ID Information PIDd
von allen Datenpaketen P übereinstimmt,
die zur Datenpaketgruppe gehören,
bei der die Paketidentifikation als abgestimmt festgestellt wurde,
werden nur die Datenpakete P, die zum gleichen Transportstrom TS
gehören,
dem gleichen Prozess unterworfen. Dieser Prozess ist im Wesentlichen
der Gleiche wie der Prozess, bei dem durch Spezifizieren der oberen
Ziffern der Paketidentifikation PID von allen Datenpaketen P des
Transportstroms TS, welcher in 20 dargestellt
wird, und der Transportstrom TS, bei dem die Datenpakete P eine
Paketidentifikation PID der gleichen oberen Zahlen aufweisen, und
diese gemeinsam dem eindeutigen Prozess als Gruppe unterzogen werden.
-
(Dritte Ausführungsform)
-
Mit
Bezug auf 27, 28, 29, 30, 31, 32 und 33 wird
im Folgenden eine Datenpuffervorrichtung gemäß einer dritten Ausführungsform
der vorliegenden Erfindung beschrieben. In 27 wird
ein Transportstromdecoder TD3 dargestellt, der eine Datenpuffervorrichtung DBA3
gemäß der vorliegenden
Ausführungsform aufweist.
In der vorliegenden Ausführungsform,
genauso wie in der zweiten Ausführungsform,
wird sichergestellt, dass die Vielzahl der eingegebenen Transportströme TS1 bis
TSε jeweils
ihren spezifischen Prozessen unterzogen werden. Des Weiteren ergreift
in der vorliegenden Ausführungsform
der Transportstromdecoder TD3 Massnahmen gegen einen Fall, wo der
eingegebene Transportstrom TS einen Datenfehler aufweist. Daher
ist der Transportstromdecoder TD3 im Grunde vom Aufbau her der Gleiche
wie der Transportstromdecoder TD2, der in 15 dargestellt
ist.
-
Das
heißt,
der Transportstromdecoder TD3 ist vom Aufbau her ähnlich wie
der Transportstromdecoder TD2, welcher in 15 dargestellt
ist, mit der Ausnahme, dass die Datenpuffervorrichtung DBA2 von
einer Datenpuffervorrichtung DBA3 des Stromeingabeabschnitts TSR
durch einen ersten Stromeingabeabschnitt TSR_1r ersetzt wird, und
ein zweiter Stromeingabeabschnitt TSR_2r und der TD Controller TDC2
durch einen TD Controller TDC3 ersetzt wird. Die Stromeingabeabschnitte
TSR_1r bis TSR_εr
werden genauso oft wie die Anzahl von Transportströmen TS simultan
an den Transportstromdecoder TD3 geliefert. In der vorliegenden
Ausführungsform
wird insbesondere ein Fall beschrieben, wo zwei Transportströme TS geliefert
werden.
-
Gleichsam
ist die Datenpuffervorrichtung DBA3 vom Aufbau her ähnlich wie
die Datenpuffervorrichtung DBA2, welche in 15 dargestellt
ist, mit der Ausnahme, dass das Paketpuffer vermittlungsmittel PBA2
durch ein Paketpuffervermittlungsmittel PBA3 und der Controller
PBAC2 durch einen Controller PBAC3 ersetzt wird.
-
Des
Weiteren ist die Paketpuffervorrichtung PBA3 vom Aufbau her ähnlich wie
das Paketpuffervermittlungsmittel PBA2, welches in 15 dargestellt ist, mit der Ausnahme, dass der
Speichervollendungs BC Nummernspeicher 290r von einem Speichervollendungs
BC Nummernspeicher 290r ersetzt wird, und ein Fehlermarkierungssetzungsmittel 295 neu
zur Verfügung
gestellt wird.
-
Vor
der Beschreibung dieser neu gelieferten Komponenten wird im Folgenden
ein Grundkonzept des Transportstromdecoders TD3 in der vorliegenden
Ausführungsform
beschrieben. Wie bei der zweiten Ausführungsform wird beispielhaft
in der vorliegenden Ausführungsform
der Fall beschrieben, bei dem ein vorgegebener Prozess mit den gewünschten Datenpaketen
P ausgeführt
werden soll, welche einer Vielzahl von Programmen entsprechen, die
in einer Vielzahl von Transportströmen enthalten sind, welche
eine Extraktion einer Vielzahl von Programmen aus der Vielzahl von
Transportströmen
TS1 bis TSε sind.
Des Weiteren ist es ein Ziel der vorliegenden Ausführungsform,
den Paketpuffer 270r wirksam zu steuern, sogar wenn der
eingegebene Transportstrom TS einen Datenfehler aufweist.
-
Das
heißt,
dass der Transportstrom TS, welcher an den Transportstromdecoder
TD übergegeben
wird, einen Fehler in einer Paketeinheit oder einer kleineren Einheit
wegen verschiedener Verarbeitungen auf einem Übertragungspfad aufweisen kann. Wenn
ein solcher Transportstrom TS mit einem Fehler vom Transportstromdecoder
TD1 oder TD2 in einer ähnlichen
Weise gepufft wird, welche bei der Pufferung normaler Daten angewandt
wird, dann wird die Reihe der Verarbeitung der Datenpakete P fortgesetzt,
nachdem das Puffern versagt hat. Auch wenn dies nicht versagt, dann
ist die Verarbeitung von solchen Fehlerdaten bedeutungslos, wobei
die Betriebseffizienz des gesamten Transportstromdecoders TD behindert
wird. Ein Ziel der vorliegenden Ausführungsform ist es, die Pufferzelle
Bc zu verwalten und zu freizulegen, welche die Datenpakete speichert, welche
Datenfehler in der Software aufweisen, und dabei das obige Problem
verhindern.
-
Ein
Prozess zur Freigabe der Pufferzelle Bc ist das Zurücksetzen
der Pufferzelle Bc durch Hardware, wenn Datenfehler im eingehenden
Transportstrom TS erkannt werden. Jedoch hat dieser Prozess entscheidende
Probleme bei der Anpassung der Taktung mit verschiedenen Datenverarbeitungen
nach dem Puffern durch eine Einheit der Pufferzelle Bc. Daher wird
bei der vorliegenden Erfindung der Datenfehler im Transportstrom
durch Hardware erkannt, und dann wird die entsprechende Pufferzelle
Bc durch Software freigelegt. In der vorliegenden Ausführungsform,
genauso wie bei der zweiten Ausführungsform,
wird beispielhaft der Fall beschrieben, wo eine Vielzahl von Transportströmen TS eingegeben wird.
Dies ist nicht einschränkend,
und natürlich
kann die Beschreibung auf einen Fall angewandt werden, wo ein einzelner
Transportstrom TS eingegeben wird.
-
Mit
Rückbezug
auf 27 werden unten die Komponenten
im Detail beschrieben, die kennzeichnend für den Transportstromdecoder
TD3 sind. Der Betrieb der gleichen Komponenten wie der im Transportstromdecoder
TD2 ist im Grunde hier nicht beschrieben, um eine Wiederholung zu
vermeiden.
-
Der
erste Stromeingabeabschnitt TSR_1r und der zweite Stromeingabeabschnitt
TSR_2r stellen jeweils Irrtümer
im eingehenden ersten Transportstrom TS1 und im eingehenden zweiten
Transportstrom TS2 dar, und geben jeweils ein erstes Fehlersignal
E1 und ein zweites Fehlersignal E2 an das Fehlermar kierungssetzungsmittel 295 in
der Datenpuffervorrichtung DBA3 aus. Der Betrieb der ersten und
zweiten Stromeingabeabschnitte TSR_1r und TSR_2r ist ähnlich wie
der der ersten und zweiten Stromeingabeschnitte TSR_1 und TSR_2,
mit der Ausnahme, dass sie jeweils erste und zweite Fehlersignale
E1 und E2 ausgeben können.
-
Basierend
auf dem ersten Fehlersignal E1, welches vom ersten Stromeingabeabschnitt
TSR_1 ausgegeben wird, oder dem zweiten Fehlersignal E2, welches
vom zweiten Stromeingabeabschnitt TSR2r ausgegeben wird, und auch
basierend auf dem Übertragungsvollständigkeitssignal,
welches vom Paketpuffercontroller 260 geliefert wird, erzeugt
das Fehlermarkierungssetzungsmittel 295 ein Fehlermarkierungssignal
Fe. Das Fehlermarkierungssignal Fe dient dem Setzen einer Fehlermarkierung
in einem Flagspeicherbereich Fc in einem Speichervollendungs BC
Nummernspeicher 290ra, welcher die Pufferzelle Bc anzeigt,
die die Datenpakete speichert, welche einen Datenfehler aufweisen.
Das Fehlermarkierungssetzungsmittel 295 gibt dann das erzeugte Fehlermarkierungssignal
Fe an den Speichervollendungs BC Nummernspeicher 290ra aus.
-
Mit
Bezug auf 29 wird spezifisch die Struktur
des Speichervollendungs BC Nummernspeichers 290ra beschrieben.
Der Speichervollendungs BC Nummernspeicher 290ra ist vom
Aufbau her ähnlich
zum Speichervollendungs BC Nummernspeicher 290, der in 2 dargestellt
ist, mit der Ausnahme, dass der Fehlermarkierungsspeicher 290A hinzugefügt wird.
-
Der
Fehlermarkierungsspeicher 290A hat Markierungsspeicherbereiche
Fc (Fc1 bis FcM), welche jeweils den BC spezifizierenden Bereichen
Rc1 bis RcM des Speichervollendungs BC Nummernspeichers 290 entsprechen.
Mit Bezug auf den Speichervollendungs BC Nummernspeicher 290 wird
der Fehlermarkierungsspeicher 290A vorzugsweise durch einen
Ringspeicher implemen tiert, der sequenziell und im Kreis Markierungswerte
im Markierungsspeicherbereich Fc1 bis FcM aufzeichnet, basierend auf
dem Fehlermarkierungssignal Fe, welches vom Fehlermarkierungssetzungsmittel 295 zur
Verfügung gestellt
wird.
-
Der
BC spezifizierte Bereich RcM, welcher die BC Nummer Nbcn darin eingeschrieben
bekommen soll, und der Markierungsspeicherbereich FcM, welcher den
Markierungswert darin eingeschrieben bekommen soll, werden basierend
auf dem Fehlermarkierungssignal Fe mit dem gleichen Schreibzeiger
WP angezeigt. Der BC spezifizierte Bereich RcM, aus dem die geschriebene
BC Nummer Nbcn gelesen werden soll, und der Markierungsspeicherbereich
FcM, aus dem der Markierungswert gelesen werden soll, werden vom
gleichen Lesezeiger RP angezeigt. Der Lesezeiger RP wird basierend
auf einem Steuersignal Sc3 vorangestellt, welches von einem Controller
PBAC3 ausgegeben wird.
-
Des
Weiteren wird mit Bezug auf 30 eine
beispielhafte Modifikation eines Speichervollendungs BC Nummernspeichers 290ra beschrieben. Um
es kurz zu beschreiben, werden im gegenwärtigen Beispiel im Speichervollendungs
BC Nummernspeicher 290rb die BC spezifizierenden Bereiche
Rc des Speichervollendungs BC Nummernspeichers 290 und
der Fehlermarkierungsspeicher 290A des Speichervollendungs
BC Nummernspeichers 290ra integral erstellt, um Pufferzellen
(BC) Attributspeicherbereiche RcP (RcP1 bis RcPM) zu bilden. Des
Weiteren werden das BC Nummernsignal Sbn und das Fehlermarkierungssignal
integral gekoppelt und im BC Attributspeicherbereich RcP als Attributdaten
Pbc gespeichert, welche den Status der Pufferzellen Bc anzeigen,
die Daten speichern. Durch Verwalten des Statuses der Pufferzellen
BC, die mit einem Typ von Daten verwaltet werden, ist es möglich, die
Pufferzellen Bc effizienter zuzuweisen und freizulegen.
-
Der
TD Controller TDC3 steuert den Betrieb des gesamten Transportstromdecoders
TD3. Der Transportstromdecoder TD3 erzeugt ein Zustandssignal Srw3,
welches den Status des Betriebs von jeder der Komponenten für die Ausgabe
an einen TD Controller TDC3 anzeigt. Basierend auf dem Zustandssignal
Srw3 erzeugt der TD Controller TDC3 ein Steuersignal Scw3, um den
Betrieb einer jeden der Komponenten des Transportstromdecoders TD3 zu
steuern, und gibt das Steuersignal Scw3 an den Transportstromdecoder
TD3 aus. Die Erzeugung des Zustandssignals Srw3 und des Steuersignals
Scw3, und die Steuerung des Transportstromdecoders TD3 sind Stand
der Technik und werden deshalb hier nicht beschrieben.
-
Mit
Bezug auf ein Wellenformdiagramm, das in 28 dargestellt
ist, wird als nächstes
der Betrieb des ersten Stromeingabeabschnitts TSR_1, des zweiten
Stromeingabeabschnitts TSR_2, des DMA Busvermittlungsmittels 210r,
des Paketpuffercontrollers 260ra, und das Fehlermarkierungssetzungsmittel 295 beschrieben.
In der Zeichnung wird nur eine typische Wellenform zur Vereinfachung
dargestellt, entweder der ersten und zweiten Transportströme TS1 und
TS2, oder der ersten und zweiten Paketkopffeststellungssignale Sps1
und Sps2, oder der ersten und zweiten Anfragessignale Srq1 und Srq2, oder
der ersten und zweiten Dateneffizienzssignale Sde1 und Sde2, oder
einer der ersten und zweiten Übertragungbereiche
TSd1 und TSd2, oder eines der ersten und zweiten Fehlersignale E1
und E2, und eines der ersten und zweiten Signalspeicherfehlersignale
LE1 und LE2. Jedoch können
sich diese Signale tatsächlich
in Bezug auf die Taktung und auf die Wellenform etwas unterscheiden.
Im Detail wird im Folgenden nur der erste Transportstrom TS1 beschrieben,
und der zweite Transportstrom TS2 wird hier nicht beschrieben, um
eine Wiederholung zu vermeiden.
-
Wie
mit Bezug auf 27 beschrieben wurde, geben
der erste und der zweite Eingabeabschnitt TSR_1r und TSR_2r acht
Bytes der eingehenden Datenpakete P jeweils als die ersten und zweiten Übertragungbereiche
TSd1 und TSd2 an das DMA Busvermittlungsmittel 210r aus.
-
Basierend
auf dem ersten Paketkopffeststellungssignal Sps1 und der ersten Übertragungseinheit TSd1,
welche vom DMA Busvermittlungsmittel 210r zur Verfügung gestellt
wurde, stellt der TSd Eingabestarterfasser 220 fest, dass
die Eingabe der ersten Übertragungseinheit
TSd1 durch die Einheit von Datenpaketen P begonnen wurde. Der TSd
Eingabestarterfasser 220 liefert auch die erste Übertragungseinheit
TSd1 an den Paketpuffercontroller 260.
-
In ähnlicher
Weise, basierend auf dem zweiten Paketkopffeststellungssignal Sps2
und der zweiten Übertragungseinheit
TSd2, welche vom DMA Busvermittlungsmittel 210r zur Verfügung gestellt wurde,
stellt der TSd Eingabestarterfasser 220 fest, dass die
Eingabe der zweiten Übertragungseinheit TSd2
durch die Einheit von Datenpaketen P begonnen wurde. Der TSd Eingabestarterfasser 220 liefert auch
die zweite Übertragungseinheit
TSd2 an den Paketpuffercontroller 260.
-
Immer
wenn der Start der Eingabe der ersten oder zweiten Übertragungseinheit
TSd1 oder TSd2 in der oben beschriebenen Weise festgestellt wird,
erzeugt der TSd Eingabestarterfasser 220 ein BC Anfragessignal
Sba, um den BC Zuweiser 230 aufzufordern, eine der Pufferzellen
Bc des Paketpuffers 270r zuzuweisen, um die eingehenden
Datenpakete P zu speichern, und gibt das BC Anfragessignal Sba an den
BC Zuweiser 230 aus. Des Weiteren erzeugt der TSd Eingabestarterfasser 220 ein
Schreibermöglichungssignal
Sw, welches anzeigt, dass das Schreiben in der zugewiesenen Pufferzelle
begonnen werden kann, und gibt das Schreibermöglichungssignal Sw an das Zielortspezifikationsmittel 250 aus.
-
Basierend
auf dem Schreibaufforderungssignal Swd, welches vom Zielortspezifikationsmittel 250 geliefert
wurde, schreibt der Paketpuffercontroller 260 die zugewiesene
Pufferzelle Bc des Paketpuffers 270r, die erste und zweite Übertragungseinheit
TSd1 und TSd2, welche durch das DMA Busvermittlungsmittel 210r kommen
und den TSd Eingabestarterfasser 220.
-
Nachdem
die Datenpakete P in die zugewiesenen Pufferzellen Bc in der oben
beschriebenen Weise geschrieben wurden, wenn das elfte Byte des ersten
Transportstroms TS2 einen Datenfehler aufweist, dann erzeugt der
Stromeingabeabschnitt TSR1r ein erstes Fehlersignal E1 zur Ausgabe
an das Fehlermarkierungssetzungsmittel 295.
-
Das
Fehlermarkierungssetzungsmittel 295 erzeugt ein erstes
Signalspeicherfehlersignal Le1, welches ein binäres Signal ist, welches HIGH
wird, wenn das Fehlermarkierungssetzungsmittel 295 das erste
Fehlersignal E1 erhält,
und welches LOW wird, wenn das Fehlermarkierungssetzungsmittel 295 das Übertragungsvollständigkeitssignal
Stf erhält.
In ähnlicher
Weise erzeugt das Fehlermarkierungssetzungssignal 295 ein
zweites Signalspeicherfehlersignal Le2, welches ein binäres Signal
ist, welches HIGH wird, wenn das Fehlermarkierungssetzungsmittel 295 das
zweite Fehlersignal E2 erhält,
und LOW wird, wenn das Fehlermarkierungssetzungsmittel 295 das Übertragungvollständigkeitssignal
Stf erhält.
Diese ersten und zweiten Signalspeicherfehlersignale Le1 und Le2
werden als das Fehlermarkierungssignal Fe an den Speicherungsvollständigkeits BC
Nummernspeicher 290ra ausgegeben.
-
Mit
Bezug auf 31 und 32 wird
als nächstes
im Detail der Betrieb des Transportstromdecoders TD3 beschrieben.
Wie in
-
31 dargestellt, ist der Betrieb des Transportstromdecoders
TD3 ähnlich
zu dem des Transportstromdecoders TD2. Jedoch werden die Prozesse
der folgenden vier Subroutinen wie folgt zum Zweck der Ermöglichung
der Steuerung durch die Datenpuffervorrichtung DBA3 verändert, wenn
irgendeiner der Vielzahl der Transportströme TS1 bis TSε einen Datenfehler
aufweist.
-
Das
heißt,
dass der Subroutineschritt #600R zum Speichern der Datenpakete P
der Vielzahl von Transportströmen
TS bis TSε durch
den Subroutinenschritt #600RR zum Speichern der Datenpakete P der
Vielzahl von Transportströme
TS bis TSε,
welche einen Datenfehler enthalten, ersetzt wird.
-
Der
Subroutinenschritt #700R zum Auswählen der Ziel Datenpakete P
der Vielzahl von Transportströmen
TS bis TSε wird
durch den Subroutinenschritt #700RR zum Auswählen der Zieldatenpakete P
der Vielzahl der Transportströme
TS bis TSε,
welche einen Datenirrtum enthalten, ersetzt.
-
Der
Subroutinenschritt #800R zum Ausführen des angefragten Prozesses
an den Datenpaketen P der Vielzahl der Transportströme TS bis
TSε wird
durch den Subroutinenschritt #800RR zum Ausführen des angefragten Prozesses
mit den Datenpaketen der Vielzahl der Transportströme TS bis
TSε, welche
den Datenfehler enthalten, ersetzt.
-
Der
Subroutinenschritt #900 zum Speichern der verarbeiteten Datenpakete
P des Einzeltransportstroms TS wird durch den Subroutinenschritt #900RR
zum Speichern der verarbeiteten Datenpakete P der Vielzahl von Transportströmen TS bis
TSε, welche
einen Datenfehler enthalten, ersetzt.
-
Im
Folgenden werden die Schritte #600RR bis #900RR und hauptsächlich der
Betrieb beschrieben, welcher für
den oben er stellten Transportstromdecoder TD3 kennzeichnend ist.
Der gleiche Betrieb wie der im Transportstromdecoder TD2 wird hier nicht
beschrieben, um eine Wiederholung zu vermeiden.
-
Mit
Bezug auf 32 wird im Folgenden der Subroutinenschritt
#600RR zum Speichern der Datenpakete P der Vielzahl von Transportströmen TS bis
TSε, welche
einen Datenfehler enthalten, beschrieben. Wie in 32 dargestellt, ist der Betrieb von Schritt #600RR ähnlich dem
von Schritt #600R, der vom Transportstromdecoder TD2 ausgeführt wird,
der in 18 dargestellt ist. Um jedoch
die Steuerung durch die Datenpuffersteuerungsvorrichtung DBA3 zu
ermöglichen,
wenn eine beliebige der Vielzahl von Transportströmen TS1
bis TSε einen Fehler
aufweist, wird ein Schritt verändert,
und drei neue Schritte werden für
jeden Transportstrom TS wie folgt zur Verfügung gestellt.
-
Das
heißt,
dass zwischen den Schritten S604_1 und S606_1 ein neuer Schritt
S604A_1 zum Beginn der Feststellung von Datenfehlern (bezeichnet
als „Start
D.E.D") in 32 für
den ersten Transportstrom TS1 zur Verfügung gestellt wird. Ähnlich wird
zwischen den Schritten S604_2 und S606_2 ein neuer Schritt S604A_2
zum Beginn der Datenfehlererkennung für den Transportstrom TS2 zur
Verfügung
gestellt.
-
Des
Weiteren wird zwischen den Schritten S632_1 und S634_1 ein neuer
Schritt S633_1 zum Setzen der Fehlermarkierung auf On/Off und der neue
Schritt S633A_1 zum Beenden der Datenfehlerfeststellung für den ersten
Transportstrom TS1 zur Verfügung
gestellt. Ähnlich
wird zwischen den Schritten S632_2 und S634_2 ein neuer Schritt
S633_2 zum Setzen der Fehlermarkierung auf On/Off und einer neuer
Schritt S633A_2 zur Beendigung der Datenfehlerfeststellung für den zweiten
Transportstrom TS2 zur Verfügung
gestellt.
-
Des
Weiteren wird der Schritt S636_1 zum Speichern der Speichervollendungs
BC Nummer für den
ersten Transportstrom in den Schritt S636R_1 zum Speichern der Speichervollendungs
BC Nummer und der Fehlermarkierung umgeändert. Ähnlich wird Schritt S636_2
zum Speichern der Speichervollendungs BC Nummer für den zweiten
Transportstrom TS2 in den Schritt S636R_2 zum Speichern der Speichervollendungs
BC Nummer und der Fehlermarkierung umgeändert. Im Folgenden werden Details
des Betriebs, welche für
den Transportstromdecoder TD3 kennzeichnend sind, und eine Zusammenfassung
des Betriebs des gesamten Schritts #400RR beschrieben. Festzustellen
ist, dass auch in der vorliegenden Ausführungsform zwei Transportströme TS (ε = 2), der
erste und zweite Transportstrom TS1 und TS2, simultan verarbeitet
werden. Daher wird der Prozess in jedem Schritt spezifisch nur für den ersten
Transportstrom TS1 beschrieben. Für den zweiten Transportstrom
TS2 sind die entsprechenden Schrittnummern und Komponenten in Klammern
enthalten, und zu diesen für
den ersten Transportstrom TS1 hinzugefügt.
-
Der
Paketkopf des eingehenden Transportstroms TS wird, wie für den Transportstromdecoder TD2,
durch die Schritte S602_1 (S602_2) und S604_1 (S604_2) festgestellt.
Der Prozess geht dann auf den nächsten
Schritt S604A_1 (S604A_2) über.
-
Im
Schritt S604A_1 (S604A_2) beginnt der Stromeingabeabschnitt TSR_1r
(TSR_2r) mit Datenfehlerfeststellung im eingehenden Datenpaket P.
Die Datenfehlerfeststellung, welche in diesem Schritt beginnt, wird
kontinuierlich ausgeführt,
bis sie im Schritt S633A_1(S633A_2) simultan mit anderen Schritten S605_1
bis S632_1 (S605_2 bis S632_2) endet. Wenn ein Datenfehler festgestellt
wird, wird ein Fehlersignal E, welches anzeigt, dass der Transportstrom
TS einen Datenfehler aufweist, zur Ausgabe erzeugt.
-
Nach
den Schritten S606_1 bis S630_1 (S606_2 bis S630_2), wenn Nein im
Schritt S632_1 (S632_2) steht, wird das Anfragessignal Srq1 (Srq2) durch
die erste Übertragungseinheit
TSd1 (die zweite Übertragungseinheit
TSd2) vom ersten Stromeingabeabschnitt TSR_1 (der zweite Stromeingabeabschnitt
TSR_2r) an das DMA Busvermittlungsmittel 210r im Schritt
S607_1 (S607_2) ausgegeben. Das DMA Busvermittlungsmittel 210r antwortet
auf die Anfragesignale und Srq2 zum Ausführen der Vermittlung im Schritt
S608R. Das DMA Busvermittlungsmittel 210 gibt ein Dateneffizienzssignal
Sde1 oder Sde2 an den entsprechenden Stromeingabeabschnitt TSR_1
oder TSR_2 im Schritt S610_1 oder S610_2 aus. Im Schritt S614_1
antwortet der Stromeingabeabschnitt TSR_1 auf das Dateneffizienzsignal
Sde1, um mit der Übertragung
der nächsten Übertragungseinheit
TSd1 der Datenpakete P zu beginnen. Im Schritt S614_2 antwortet
der Stromeingabeabschnitt TSR_2 auf das Dateneffizienzsignal Sde2,
um die Übertragung
der nächsten Übertragungseinheit TSd2
der Datenpakete P zu beginnen. Als solches wird Schritt S606_1 bis
S630_1 (S606_2 bis S630_2) wiederholt, bis Ja im Schritt S632_1
(Schritt S632_2) festgestellt wird.
-
Während der
obigen Verarbeitung zählt
der Paketpuffercontroller 260 die Anzahl von Bytes, die
in der Pufferzelle Bc für
jede Übertragungseinheit
TSd1 und jede Übertragungseinheit
TSd2 geschrieben werden, wobei er feststellt, dass das Speichern
der Übertragungseinheit
TSd für
ein Datenpaket in der Pufferzelle abgeschlossen wurde. Des Weiteren
erzeugt der Paketpuffercontroller 260 ein Übertragungvollständigkeitssignal
Stf zur Ausgabe an den Speicherungsvollständigkeitsspeichercontroller 280 und
an das Fehlermarkierungssetzungsmittel 295. Die Zählnummer
kann durch die Datengröße der Datenpakete
P des eingehenden Transportstroms TS und die Datengröße, welche
durch die Transportstromstrukturinformation angezeigt wird, welche
vorher im TD Controller TDC3 gespeichert wurde, erhalten werden.
Dann geht der Prozess auf den nächsten Schritt
S633_1 (S633_2) über.
-
Im
Schritt S633_1 (S633_2) antwortet das Fehlermarkierungssetzungsmittel 295 auf
das Übertragungvollständigkeitssignal
Stf1 (Stf2), welches vom Paketpuffercontroller 260 ausgegeben
wurde, um den Fehlermarkierungswert in den Markierungsspeicherbereich
Fcm zu schreiben, welcher basierend auf dem Fehlersignal Eε (ε = 1 oder
2 in der vorliegenden Ausführungsform)
vom Schreibzeiger WP angezeigt wurde, welches vom Stromeingabeabschnitt
TSR_ε während der
Schritte S604_1 bis S632_1 (S604_2 bis S632_2) ausgegeben wurde. Das
heißt,
wenn ein Datenfehler in den Datenpaketen P festgestellt wird, die
in der Pufferzelle Bc während
der Schritte S604_1 bis S632_1 (S604_2 bis S632_2) gespeichert werden,
wird ein gleichwertiges Element zur „Fehlermarkierung Ein" in den Markierungsspeicherbereich
Fcn geschrieben, wenn das Übertragungvollständigkeitssignal
Stf geliefert wird.
-
Wenn
andererseits die Datenpakete P in der Pufferzelle Bc ohne jeden
Datenfehler während
der Schritte S604_1 bis S632_1 (S604_2 bis S632_2) gespeichert werden,
wird ein Wert äquivalent
zu „Fehlermarkierung
Aus" im Schritt
S633_1 (S633_2) in den Markierungsspeicherbereich Fcn geschrieben, wenn
das Übertragungvollständigkeitssignal
Stf geliefert wird. Festzustellen ist, dass, wenn der Anfangswert
des Fehlerspeicherbereichs Fcn auf „Fehlermarkierung Aus" gesetzt wird, nichts
in den Fehlerspeicherbereich Ecn im Schritt S633_1 (S633_2) geschrieben
wird. In diesem Fall wird später
mit Bezug auf 33 beschrieben, wie der Fehlerspeicherbereich
Fc mit „Fehlermarkierung
Ein" zurückgestellt wird.
Der Prozess geht dann auf den nächsten
Schritt S633A_1 (S633A_2) über.
-
Im
Schritt S633A_1 (S633A_2) endet die Datenfehlerfeststellung im eingehenden
Transportstrom TS durch den Stromeingabe abschnitt TSR_1r (TSR_2r).
Der Prozess schreitet dann durch die obigen Schritte S634_1 (S634_2)
zu Schritt S636R_1 (S636 R) fort.
-
Im
Schritt S636R_1 (S636R_2) speichert der Speichervollendung BC Nummernspeicher 290ra die BC
Nummer Nbc in einem Bereich, welcher vom Schreibzeiger WP angezeigt
wird. In ähnlicher
Weise schreibt der Speichervollendung BC Nummernspeicher 290ra den
Fehlermarkierungswert in den Fehlerspeicherbereich Fcm, welcher
vom Fehlermarkierungssignal Fe angegeben wurde. Der Prozess geht dann
auf den nächsten
Schritt S638_1 (S638_2) über.
-
Nachdem
der Schreibzeiger WP um einen Schritt S638_1 (S638_2) in der oben
beschriebenen Art und Weise vorangestellt wird, kehrt der Prozess zum
Schritt S604_1 (S604_2) zurück.
Als solches wird der Subroutinenschritt #600RR ausgeführt, um die
Datenpakete P der Vielzahl von Transportströmen TS bis TSε einschliesslich
des Datenfehlers zu speichern.
-
Mit
Bezug auf ein Wellenformdiagramm, welches in 28 dargestellt
ist, wird im Folgenden der Betrieb der entsprechenden Komponenten
zum Schreiben des Fehlermarkierungswerts im obigen Schritt S633A_1
(S633A_2) beschrieben. In einem in 28 dargestellten
Beispiel, wenn das zweite Byte des ersten Datenpakets P des Transportstroms
TS1 (TS2) dem dritten Bytes des zweiten Datenpakets entspricht,
entspricht eine Zeitspanne einer Zeitspanne während der Schritte S604_1 (S604_2)
bis S632_1 (S632_2) in 32.
Der Stromeingabeabschnitt TSR stellt einen Datenfehler im elften
Byte des ersten Datenpakets P fest, und gibt dann das Fehlersignal
E an das Fehlermarkierungssetzungsmittel 295 aus. Da die
Vermittlungsperiode Ta variiert, kann die obige Periode innerhalb
eines Bereichs variieren, der von den Pulsen von Sps und Stf bestimmt wird.
-
Das
Fehlermarkierungssetzungsmittel 295 hängt das Fehlersignal E zum
Erzeugen und Halten des Verbindungsfehlersignals LE an. Dann, wenn das
Verbindungsfehlersignal LE und das Übertragungvollständigkeitssignal
Stf HIGH sind, wenn das Übertragungsvollständigkeitssignal
Stf geliefert wird, erzeugt das Fehlersetzungssignal 295 das
Fehlerflagsignal Fe zum Schreiben von „Fehlermarkierung Ein" in den Markierungsspeicherbereich
Fc des Speichervollendungs BC Nummernspeichers 290ra.
-
Falls
andererseits kein Fehler im eingehenden Transportstrom festgestellt
wird, ist das Verbindungsfehlersignal LE LOW, wenn das Übertragungvollständigkeitssignal
Stf geliefert wird. Daher erzeugt das Fehlermarkierungssetzungsmittel
nicht das Fehlermarkierungssignal Fe zum Schreiben von „Fehlermarkierung
Ein" in das Flagspeicherbereich Fc
des Speichervollendungs BC Nummernspeichers 290ra.
-
Als
solches, sogar wenn jede einer beliebigen Zahl von simultan gelieferten
Transportströmen TS
vorliegt, ist es möglich,
festzustellen und zu verwalten, ob ein Datenfehler durch eine Einheit
von Datenpaketen P vorliegt, die in der Pufferzelle Bcn des Paketpuffers 270 gespeichert
werden. Folglich kann durch Fallenlassen oder durch Wiedererfassen
eines fehlerhaften Datenteils, der im eingehenden Transportstrom
TS enthalten ist, Information richtig aufgenommen werden, die im
Transportstrom TS enthalten ist.
-
Des
Weiteren wird das Schreiben des Fehlermarkierungswerts als Antwort
auf das Übertragungvollständigkeitssignal
Stf in einem Fall ausgeführt,
wo die Vielzahl von Transportströmen
TS1 bis TSε simultan
wie in der vorliegenden Ausführungsform
geliefert werden. Ein solches Schreiben als Antwort auf das Übertragungsvollständigkeitssignal
Stf wird ausgeführt,
um das folgende mögliche
Problem zu vermeiden. Das heißt,
dass wegen Unterschieden bei der Eingaberate zwischen verschiedenen
Transportströmen
TS das Puffern von einem Datenpaket P, welches später ankam,
früher
als das Puffern eines anderen Datenpakets, welches früher ankam,
abgeschlossen werden kann. Sogar wenn ein Datenfehler in dem Paket
erkannt wird, welches früher
ankam, kann in diesem Fall „Fehlermarkierung
Ein" falsch in den
Markierungsspeicherbereich Fc geschrieben werden, welcher dem Pufferzellenspeicher
Bc entspricht, welcher die Datenpakete speichert, welche später angekommen
sind, aber vorher gepuffert worden sind. Dieses mögliche Problem
kann durch Ausführen
des Schreibens als Antwort auf das Übertragungvollständigkeitssignal
Stf verhindert werden.
-
Mit
Bezug auf ein Flussdiagramm in 33 wird
im Folgenden im Detail ein Subroutinenschritt #800RR zum Ausführen des
gewünschten
Prozesses an den Datenpaketen P mit der Vielzahl von Transportströmen TS bis
TSε einschliesslich
des Datenfehlers beschrieben. Wie in 22 dargestellt,
ist der Betrieb im Schritt #800RR ähnlich dem im Schritt #800R,
welcher durch den Transportstromdecoder TD2 in 19 ausgeführt
wird. Jedoch, zum Zweck der Ermöglichung
der Steuerung durch die Datenpuffersteuervorrichtung DBA3, wenn
ein beliebiger der Vielzahl von Transportströmen TS1 bis TSε einen Datenfehler
aufweist, werden die Prozesse der folgenden drei Schritte wie folgt
ausgeführt.
-
Das
heißt,
dass zwischen den Schritten S808R und S810R der neue Schritt S809R
zur Verfügung
gestellt wird, um den Fehlermarkierungswert zu lesen, ebenso wird
ein neuer Schritt S809B zur Verfügung
gestellt, um festzustellen, ob die Fehlermarkierung auf EIN steht.
Des Weiteren wird zwischen den Schritten S818 und S820 der neue
Schritt S819 zur Verfügung
gestellt, um die Fehlermarkierung neu zu setzen. Im Folgenden wird
kurz der Ablauf des gesamten Schritts #800RR und haupt sächlich der
Ablauf beschrieben, der für
diese Ausführungsform
charakteristisch ist.
-
Durch
die obigen Schritte S802 bis S808R wird die Verwaltungsinformation
IM aus der Pufferzelle Bc gelesen, von welcher festgestellt wird,
dass sie die Datenpakete P speichert, die verarbeitet werden sollen
(Zieldatenpakete). Dann wird die Pufferpaket ID Information PIDe
und die Transportstrom ID Information TSie der gespeicherten Datenpakete
P gelesen. Der Prozess geht dann auf den nächsten Schritt S809A über.
-
Im
Schritt S809A wird der Fehlermarkierungswert aus dem Markierungsspeicherbereich
Fc gelesen, welcher durch den Schreibzeiger RP angezeigt wird. Der
Prozess geht dann auf den nächsten Schritt
S8093 über.
-
Im
Schritt S8093 wird, basierend auf dem Fehlermarkierungswert, festgestellt,
dass sich die Fehlermarkierung auf EIN befindet. Wenn Ja, das heißt, wenn
festgestellt wird, dass die Zieldatenpakete P Fehler enthalten,
dann überspringt
der Prozess die obigen Schritte S810R, S812, S814 und S816 bis Schritt
S818, bei dem die Pufferzelle Bc freigegeben wird, um die folgenden
Datenpakete P zu Puffern.
-
Wenn
Nein im Schritt S809B steht, das heißt, wenn festgestellt wird,
dass die Zieldatenpakete P keinen Fehler enthalten, dann schreitet
der Prozess durch die obigen Schritte S810R, S812, S814, und S816
bis Schritt S818 fort. Mit anderen Worten) wird der im Schritt #400R
bestimmte Prozess im Schritt S812 ausgeführt, wenn die Zieldatenpakete
P tatsächlich
verarbeitet werden sollen (Ja in S810R). Dann werden die verarbeiteten
Datenpakete P von der Datenpuffervorrichtung DBA3 im Schritt S816 ausgegeben.
Dann wird die entsprechende Pufferzelle Bc im Schritt S818 freigegeben.
Wenn die Zieldatenpakete P nicht verarbeitet werden sollen (Nein im
Schritt S818R), dann wird die entsprechende Pufferzelle Bc sofort
im Schritt S818 freigegeben.
-
Im
Schritt S819 setzt der TD Controller TDC3 den Fehlermarkierungswert
des Markierungsspeicherbereichs Fc, welcher vom Schreibzeiger RP als
LOW angezeigt wird, wodurch die Fehlermarkierung (Setzen der Fehlermarkierung
auf AUS) neu gesetzt wird. Dann stellt der TD Controller TDC3 im Schritt
S820 den Wert, welcher vom Schreibzeiger RP angezeigt wird, um eins
im Speichervollendungs BC Nummernspeicher 290 weiter. Der
Prozess kehrt dann zum oben beschriebenen Schritt S802 zurück.
-
Wie
in der zweiten Ausführungsform
werden alle Datenpakete, welche in der eingegebenen Vielzahl von
Transportströmen
TS1 bis TSε enthalten sind,
mit der Transportstromidentifikationsinformation und dem Zeitstempel
St versehen, wobei sie es ermöglichen,
dass alle Datenpakete P sicher mit einer Kombination der Paketidentifikation
PID identifiziert werden. Dadurch ist es möglich, wahlweise den vom Anwender
gewünschten
Prozess mit der Vielzahl von Programmen auszuführen, die in der sequenziell
eingegebenen Vielzahl von Transportströmen enthalten ist. Falls jedoch
irgendein Transportstrom TS einen Fehler aufweist, können solche
Probleme auftreten, wie dass die Verarbeitung nach dem Puffern der
Datenpakete P versagen kann oder die Betriebseffizienz des gesamten
Transportstromdecoders TD verringert werden kann. Daher wird in
der vorliegenden Ausführungsform
die Pufferzelle Bc, welche die Datenpakete P speichert, welche einen Datenfehler
aufweisen, durch Software verwaltet und freigegeben, wodurch die
obigen Probleme vermieden werden.
-
Ebenso
ist es in der vorliegenden Ausführungsform
klar sichtbar, dass der Transportstromdecoder TD3 auf die Vielzahl
von Transportströmen TS1
bis TSε angewendet
werden kann, welche die Paketstruktur aufweisen, wie in ISO/IEC
13818-1 (MPEG2 System) gefordert ist.
-
Industrielle Anwendung
-
Wie
oben beschrieben, wird ein Transportstromdecoder mit einer Vielzahl
von Transportströmen
beliefert, wobei jeder mit Programminhalten der Vielzahl von Kanälen gemultiplext
wird, und jeder aus einer Vielzahl von Typen von Datenpaketen zusammengesetzt
ist. In einem solchen Transportstromdecoder gemäß der vorliegenden Erfindung
können
beliebige Datenpakete wahlweise aus dem beliebigen Transportstrom
extrahiert werden. Folglich ist es möglich, eine Schnittstelle zur
Verfügung
zu stellen, welche in der Lage ist, einen vom Anwender gewünschten
Prozess in einem Transportstrom an einer Einheit von Datenpaketen
auszuführen.