DE60220153T2 - Vorrichtung zur paketdatenverarbeitung - Google Patents

Vorrichtung zur paketdatenverarbeitung Download PDF

Info

Publication number
DE60220153T2
DE60220153T2 DE60220153T DE60220153T DE60220153T2 DE 60220153 T2 DE60220153 T2 DE 60220153T2 DE 60220153 T DE60220153 T DE 60220153T DE 60220153 T DE60220153 T DE 60220153T DE 60220153 T2 DE60220153 T2 DE 60220153T2
Authority
DE
Germany
Prior art keywords
data packets
data
packet
transport stream
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60220153T
Other languages
English (en)
Other versions
DE60220153D1 (de
Inventor
Mikihiko Ibaraki-shi YAMADA
Shouichi Ibaraki-shi GOTOH
Norihiko Habikino-shi MIZOBATA
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of DE60220153D1 publication Critical patent/DE60220153D1/de
Application granted granted Critical
Publication of DE60220153T2 publication Critical patent/DE60220153T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23608Remultiplexing multiplex streams, e.g. involving modifying time stamps or remapping the packet identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4344Remultiplexing of multiplex streams, e.g. by modifying time stamps or remapping the packet identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing of several video streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Television Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

  • 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.

Claims (3)

  1. Transportstromverarbeitungsvorrichtung (TD2) zum Ausführen eines vorgegebenen Prozesses auf einer Vielzahl von eingehenden Transportströmen (TS1, TS2), welche aus einer Vielzahl, jeweils mit Identifikationsinformation (PID) versehener sequenzieller Datenpakete (P) zusammengesetzt sind, wobei die Vorrichtung eine Datenpaketverarbeitungsermittlungsvorrichtung zum einzelnen Ermitteln, ob jedes den Transportstrom (TS1, TS2) zusammensetzende Datenpaket einem vorher festgelegten Prozess unterworfen werden soll, umfasst, so dass die Transportstromverarbeitungsvorrichtung (TD2) den vorgegebenen Prozess durch eine Datenpaketeinheit ausführen kann, wobei die Datenpaketverarbeitungsermittlungsvorrichtung umfasst: Identifikationsinformationseingabemittel (APR) zum Eingeben von Zieldatenpaketidentifikationsinformation (PIDd) zum Identifizieren eines zu verarbeitenden Datenpakets (P); Datenpaketspeichermittel (270, Bc, #600) zum Speichern der Datenpakete (P) für eine vorgegebene Zeitspanne in einer Reihenfolge, in der die Datenpakete ankommen; Identifizierungsmittel gespeicherter Datenpakete (270, 260) zum Lesen der Identifikationsinformation (PIDe), mit der die im Datenpaketspeichermittel (270, Bc, #600) gespeicherten Datenpakete (P) versehen sind; Zieldatenpaketermittlungsmittel (400, TDC1) zum Vergleichen der gelesenen Identifikationsinformation (PIDe) mit der Zieldatenpaketidentifikationsinformation (PIDd) und Erzeugen eines Prozesszielermittlungssignals (Sjm), welches anzeigt, ob das gespeicherte Datenpaket (P) dem vorher festgelegten Prozess unterworfen werden soll, des Weiteren umfassend Datenpaketverwaltungsinformationserzeugungsmittel (TS ∈) zum Erzeugen von Verwaltungsinformation (IM) zum eindeutigen Identifizieren jedes der Vielzahl der Datenpakete (P), welche eine Vielzahl (r) der eingehenden Transportströme (TS ∈) bilden, und Bereitstellen der erzeugten Verwaltungsinformation den Datenpaketen; Datenfehlererfassungsmittel (TSR) zum Erfassen von in irgendeinem der eingehenden Transportströme (TS_∈) enthaltenen Datenfehlern, und Erzeugen eines Fehlererfassungssignals (E); Fehlermarkierungsmittel (295, Fe) zum Anzeigen, gestützt auf das Fehlererfassungssignal (E), der die Datenpakete mit den Datenfehlern speichernden Speicherzelle (Bc); und Zugriffsbeschränkungsmittel (S809B) zum Beschränken, gestützt auf die Anzeige der Fehlermarkierungsmittel (295, Fe), des Zugriffs auf die Speicherzelle (Bc) durch die Identifizierungsmittel gespeicherter Datenpakete (260, 270); wobei es gestützt auf der Identifikationsinformation (PID) und der Verwaltungsinformation (IM) ermittelt wird, ob jedes der Vielzahl der Datenpakete (P), welche dieselbe Identifikationsinformation (PID), aber verschiedene Transportströme (TS1, TS2) bilden, dem vorher festgelegten Prozess unterworfen werden soll.
  2. Transportstromverarbeitungsvorrichtung (DBA3, TDC3, APR) nach Anspruch 1, wobei das Zugriffsbeschränkungsmittel (S809B) es dem Identifizierungssmittel gespeicherter Datenpakete (260, 270) verbietet, auf die durch einen Zugriffszielspeicherzellenzeiger (RP) angezeigte Speicherzelle (Bc) zuzugreifen, während ein speichernder Speicherzellenzeiger (WP) eine andere Speicherzelle (Bc) als die durch den Zugriffszielspeicherzellenzeiger (RP) und ebenso durch das Fehlermarkierungsmittel (295, Fe) angezeigte Speicherzelle (Bc) anzeigt, und ein Speicherzellenfreigabemittel (S814) die Speicherzelle (Bcβ) freigibt.
  3. Verfahren zum Verarbeiten einer Vielzahl von Transportströmen, welche aus einer Vielzahl von eingehenden Transport strömen (TS1, TS2) zusammengesetzt sind, welche aus einer Vielzahl, jeweils mit Identifikationsinformation (PID) versehener sequenzieller Datenpakete (P) zusammengesetzt sind, wobei das Verfahren ein Datenpaketverarbeitungsermittlungsverfahren zum einzelnen Ermitteln, ob jedes den Transportstrom (TS1, TS2) zusammensetzende Datenpaket einem vorher festgelegten Prozess unterworfen werden soll, umfasst, so dass das Verfahren zum Verarbeiten einer Vielzahl von Transportströmen den vorgegebenen Prozess durch eine Datenpaketeinheit ausführen kann, wobei das Datenpaketverarbeitungsermittlungsverfahren umfasst: einen Schritt (#600, S602) des Eingebens von Zieldatenpaketidentifikationsinformation (PIDd) zum Identifizieren von zu verarbeitenden Datenpaketen (P); einen Schritt (#600, S604 bis S638) des Speicherns der Datenpakete (P) in Datenpaketspeichermitteln (270) für eine vorgegebene Zeitspanne in einer Reihenfolge, in der die Datenpakete ankommen; einen Identifizierungsschritt gespeicherter Datenpakete (#700, #800, S806 bis S808) zum Lesen von Identifikationsinformation (PIDe), mit der die gespeicherten Datenpakete (P) versehen sind; einen Zieldatenpaketermittlungsschritt (#800, S810) des Vergleichens der gelesenen Identifikationsinformation (PIDe) mit der Zieldatenpaketidentifikationsinformation (PIDd) und des Erzeugens eines Prozesszielermittlungssignals (Sjm), welches anzeigt, ob das gespeicherte Datenpaket (P) dem vorher festgelegten Prozess unterworfen werden soll, des Weiteren umfassend einen Schritt (S605) des Erzeugens von Verwaltungsinformation (IM) zum eindeutigen Identifizieren jedes der Vielzahl der Datenpakete (P), welche eine Vielzahl (r) der eingehenden Transportströme (TS ∈) bilden, und des Bereitstellens der erzeugten Verwaltungsinformation (IM) den Datenpaketen (P); einen Schritt (S604R+ bis S633B) des Erfassens von in den eingehenden Transportströmen (TS_∈) enthaltenen Datenfehlern, und des Erzeugens eines Fehlererfassungssignals (E); einen Datenfehlerspeicherzeilenanzeigeschritt (S633A) des Anzeigens, gestützt auf das Fehlererfassungssignal (E), der die Datenpakete mit den Datenfehlern speichernden Speicherzelle (Bc); und einen Zugriffsbeschränkungsschritt (S809B) des Beschränkens des Ausführens des Identifizierungsschritts gespeicherter Datenpakete (#700, #800, S806 bis S808) auf der Speicherzelle (Be), welche im Datenfehlerspeicherzellenanzeigeschritt (S633A) angezeigt ist; wobei es gestützt auf der Identifikationsinformation (PID) und der Verwaltungsinformation (IM) ermittelt wird, ob jedes der Vielzahl der Datenpakete (P), welche dieselbe Identifikationsinformation (PID), aber verschiedene Transportströme (TS1, TS2) bilden, dem vorher festgelegten Prozess unterworfen werden soll.
DE60220153T 2001-03-30 2002-03-27 Vorrichtung zur paketdatenverarbeitung Expired - Lifetime DE60220153T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001099730 2001-03-30
JP2001099730A JP3636307B2 (ja) 2001-03-30 2001-03-30 パケットデータ処理決定装置
PCT/JP2002/002953 WO2002082721A2 (en) 2001-03-30 2002-03-27 Packet data processing apparatus

Publications (2)

Publication Number Publication Date
DE60220153D1 DE60220153D1 (de) 2007-06-28
DE60220153T2 true DE60220153T2 (de) 2008-01-17

Family

ID=18953240

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60220153T Expired - Lifetime DE60220153T2 (de) 2001-03-30 2002-03-27 Vorrichtung zur paketdatenverarbeitung

Country Status (5)

Country Link
US (1) US7359441B2 (de)
EP (1) EP1374482B1 (de)
JP (1) JP3636307B2 (de)
DE (1) DE60220153T2 (de)
WO (1) WO2002082721A2 (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4788081B2 (ja) * 2001-08-07 2011-10-05 パナソニック株式会社 パケットデータ出力装置
US8413155B2 (en) * 2004-03-13 2013-04-02 Adaptive Computing Enterprises, Inc. System and method for a self-optimizing reservation in time of compute resources
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
WO2006053093A2 (en) 2004-11-08 2006-05-18 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
WO2006107531A2 (en) 2005-03-16 2006-10-12 Cluster Resources, Inc. Simple integration of an on-demand compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
CA2603577A1 (en) 2005-04-07 2006-10-12 Cluster Resources, Inc. On-demand access to compute resources
US20080313240A1 (en) * 2007-06-18 2008-12-18 Freking Ronald E Method for Creating Data Transfer Packets With Embedded Management Information
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8179887B1 (en) * 2008-02-01 2012-05-15 Tellabs Operations, Inc. Method and apparatus for improving performance of TDM sequencing for packet processing engines using a delay line
US8369413B2 (en) * 2009-04-23 2013-02-05 Mediatek Inc. Transport stream processing system and related method thereof
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
JP5593792B2 (ja) * 2010-03-31 2014-09-24 富士通株式会社 Raid装置、記憶制御方法、および、記憶制御プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0735776B1 (de) * 1995-03-29 2004-01-28 Hitachi, Ltd. Dekoder für komprimierte und multiplexierte Bild- und Audiodaten
JP3269768B2 (ja) 1996-01-16 2002-04-02 株式会社東芝 ディジタル信号受信装置
US5675654A (en) * 1996-03-29 1997-10-07 Matsushita Electric Corporation Of America System and method for interfacing a transport decoder to a national renewable security systems (NRSS) smart card
US5844478A (en) * 1996-05-31 1998-12-01 Thomson Consumer Electronics, Inc. Program specific information formation for digital data processing
US6226291B1 (en) * 1996-11-01 2001-05-01 Texas Instruments Incorporated Transport stream packet parser system
JP3356203B2 (ja) * 1997-06-09 2002-12-16 日本電気株式会社 Mpeg2トランスポートストリーム分離方法と回路
US6088357A (en) * 1997-09-26 2000-07-11 International Business Machines Corporation Auxiliary transport assist processor especially for an MPEG-2 compliant decoder
US6078594A (en) * 1997-09-26 2000-06-20 International Business Machines Corporation Protocol and procedure for automated channel change in an MPEG-2 compliant datastream

Also Published As

Publication number Publication date
US7359441B2 (en) 2008-04-15
JP3636307B2 (ja) 2005-04-06
US20040081148A1 (en) 2004-04-29
JP2002300201A (ja) 2002-10-11
DE60220153D1 (de) 2007-06-28
WO2002082721A2 (en) 2002-10-17
EP1374482B1 (de) 2007-05-16
EP1374482A2 (de) 2004-01-02
WO2002082721A3 (en) 2003-02-13

Similar Documents

Publication Publication Date Title
DE60220153T2 (de) Vorrichtung zur paketdatenverarbeitung
DE60029251T2 (de) Mpeg-ummultiplexer mit mehreren eingängen und mehreren ausgängen
DE69526327T2 (de) Umwandlungssystem für ein mpeg-informationssignal
DE69933721T2 (de) DMA-Steuereinheit
DE69736031T2 (de) Transportdekodierer für MPEG-2
DE69736886T2 (de) Vorrichtung zum Empfang digitaler Fernsehsignale und Empfangs- Aufnahme- Wiedergabeanlage dafür
KR100898690B1 (ko) 멀티포맷 트랜스포트 스트림 디코더
DE69637230T2 (de) Transportkodierer für einen Paketstrom und Verfahren zu dessen Betrieb
DE60312499T2 (de) Stream-datenverarbeitungseinrichtung, stream-datenverarbeitungsverfahren, programm und medium
DE69614495T2 (de) Demultiplexeinrichtung für ein digitales Fernsehsystem
DE69735379T2 (de) Schnelle abtrennung von programmspezifischer information aus mehreren transportströmen
DE69319327T2 (de) Videoserver
DE69833166T2 (de) Digitales Kommunikationssystem und -verfahren
DE69732262T2 (de) Maschine für Programmempfang und -ausführung, die auch bei teilweisem Empfang des Programms die Maschinenprogrammausführung starten kann.
DE69926689T2 (de) Vorrichtung und Methode zur Übertragung von Information, Vorrichtung und Methode zum Empfang von Information, Vorrichtung zur Bereitstellung eines computerlesbaren Programms und Fernsehübertragungssystem
DE60034415T2 (de) System und Verfahren zur Identifizierung der Anschlussbeziehungen
DE19805799C2 (de) Datensendeapparat und Datenempfangsapparat
EP0946056A1 (de) Verfahren zum Erhöhen der Speicherkapazität für Serviceinformation in einem Empfäger für digitale TV-Sendungen
DE2341549A1 (de) Einrichtung zur ueberwachung und registrierung von betriebsvorgaengen in einer datenverarbeitungsanlage
DE3685894T2 (de) Uebertragungssystem fuer vielfachelementnachrichten.
DE69635544T2 (de) Optimierung der Leistung in einem Paket-Transportsystem mit Paketschlitzpriorität
DE3718472C2 (de)
DE69315613T2 (de) Verfahren zur Verwaltung von Rundfunkübertragungen
DE3856364T2 (de) Verarbeitungssystem zur Fehlerinformationssammlung
DE60027975T2 (de) Kommunikationssystem in Audio- und Musikdatenübertragung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: PANASONIC CORP., KADOMA, OSAKA, JP