DE69614495T2 - Demultiplexeinrichtung für ein digitales Fernsehsystem - Google Patents

Demultiplexeinrichtung für ein digitales Fernsehsystem

Info

Publication number
DE69614495T2
DE69614495T2 DE69614495T DE69614495T DE69614495T2 DE 69614495 T2 DE69614495 T2 DE 69614495T2 DE 69614495 T DE69614495 T DE 69614495T DE 69614495 T DE69614495 T DE 69614495T DE 69614495 T2 DE69614495 T2 DE 69614495T2
Authority
DE
Germany
Prior art keywords
data
stream
processor
layer
multiplexed
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
DE69614495T
Other languages
English (en)
Other versions
DE69614495D1 (de
Inventor
Etienne Cochon
Albert Dorner
Charaf Hanna
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.)
Vantiva SA
Original Assignee
Thomson Multimedia SA
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 Thomson Multimedia SA filed Critical Thomson Multimedia SA
Publication of DE69614495D1 publication Critical patent/DE69614495D1/de
Application granted granted Critical
Publication of DE69614495T2 publication Critical patent/DE69614495T2/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/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
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation
    • H04N7/52Systems for transmission of a pulse code modulated video signal with one or more other pulse code modulated signals, e.g. an audio signal or a synchronizing signal

Landscapes

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

Description

  • Die Erfindung betrifft eine Demultiplexvorrichtung. Sie ist insbesondere anwendbar auf dem Gebiet des digitalen Fernsehempfangs.
  • Die Mittel für eine digitale Signalübertragung erfordern Empfangsschaltungen, die ihren Inhalt analysieren, um festzustellen, ob die übertragenen Informationen für eine bestimmte Anwendung von Interesse sind. Das ist zum Beispiel der Fall in digitalen komprimierten Fernsehsystemen vom Typ MPEG2. In diesem Systemtyp kann eine große Anzahl von Kanälen multiplexiert werden. Die Daten in jedem Kanal enthalten mehrere Schichten, die ebenfalls analysiert werden müssen.
  • Es ist erwünscht, eine flexible Demultiplexvorrichtung anzuwenden.
  • Die Patentanmeldung EP 0 651 584 beschreibt eine Dekodiereinheit eines Datenstroms für verschiedene Schichten mit einem Detektor für den Code des Beginns (start code). Die Detektion erfolgt durch Vergleich der Daten des empfangenen Stroms mit ausgewählten Codes. Die Auswahl ist abhängig von der Schicht, zu der die vorangehenden empfangenen Daten gehören. Ein Nachteil dieser Einheit besteht darin, daß sie wenig flexibel und von der Struktur in den vorbestimmten Schichten abhängig ist.
  • Gegenstand der Erfindung ist eine Demultiplexeinrichtung mit folgenden Merkmalen:
  • - Mittel zur Speicherung der Daten des gemultiplexten Stroms,
  • - programmierbare Mittel zur Speicherung der Filterungsdaten,
  • - Mittel zum Vergleich der Daten des gemultiplexten Stroms und der Filterungsdaten,
  • - Übertragungsmittel für die Daten des gemultiplexten Stroms zu den Speichermitteln in Abhängigkeit von den durchgeführten Vergleichen,
  • - wenigstens ein Prozessor, der gemäß einer Schicht unter den hierarchischen Schichten von Daten in dem gemultiplexten Strom organisiert ist, und
  • - programmierbare Mittel zur Speicherung von gefilterten Daten mit einem Speicher, der für jeden Prozessor Filterungswerte für die Schicht enthält, die diesem Prozessor entspricht.
  • Gemäß einer bevorzugten Ausführungsform ist die Schicht die Transportschicht MPEG2, und die Werte der Filterungsdaten enthalten wenigstens einen der folgenden Typen: PID, Kontinuitätszähler, Synchronisierdaten.
  • Gemäß einer besonderen Ausführungsform entsprechen die Werte der Filterungsdaten des Kontinuitätszählers dem nächsten, in dem gemultiplexten Datenstrom erwarteten Wert.
  • Gemäß einer besonderen Ausführungsform ist die Schicht die Schicht der Sektion MPEG2, und die Filterungswerte enthalten wenigstens einen der folgenden Typen: Tabellen-Identifizierer, Zeiger für den Beginn der Sektion, Sektionslänge.
  • Gemäß einer besonderen Ausführungsform ist die Schicht die Schicht mit elementaren Strompaketen MPEG2, und die Filterungswerte enthalten den Strom- Identifizierer.
  • Gemäß einer besonderen Ausführungsform enthält die Einrichtung unter anderem einen Multiplexer, von dem ein Eingang mit dem Ausgang der Mittel zum Speichern der Daten des gemultiplexten Stroms verbunden ist und von dem ein zweiter Eingang mit dem Ausgang eines Entwürfelers verbunden ist, und der Eingang des Entwürfelers ist gleichermaßen mit dem Ausgang der Mittel zur Speicherung der Daten des gemultiplexten Stroms verbunden, und der Multiplexer wird durch den oder die Prozessoren gesteuert.
  • Die Erfindung betrifft außerdem einen digitalen Fernsehdekoder, der dadurch gekennzeichnet ist, daß er die obige Demultiplexiereinheit enthält.
  • Weitere Vorteile und Merkmale der Erfindung ergeben sich aus der Beschreibung eines besonderen, nicht einschränkenden und in den beigefügten Figuren dargestellten Ausführungsbeispiels.
  • Fig. 1 zeigt ein Blockschaltbild eines Demultiplexers gemäß der Erfindung in einem digitalen Fernsehempfangssystem,
  • Fig. 2 ist ein Zustandsdiagramm des Transportprozessors TP des Demultiplexers in Fig. 1,
  • Fig. 3 ist ein Zustandsdiagramm des Prozessors für die Pakete mit dem elementaren Datenstrom PES des Demultiplexers von Fig. 1,
  • Fig. 4 ist ein Zustandsdiagramm des Sektionsprozessors (section processor) SEC des Demultiplexers von Fig. 1, und
  • Fig. 5 ist ein Zustandsdiagramm des Übertragungsprozessors XFER des Demultiplexers von Fig. 1.
  • Im folgenden geben die Ausdrücke in Fettdruck oder in Klammern und Anführungszeichen, soweit das für die Klarheit der Ausführungen notwendig ist, eine Bezeichnung aus der MPEG2-Spezifikation an. Für die Erläuterung der Computervorgänge wird in der Beschreibung und in den Figuren die international übliche englischsprachige Computer-Fachsprache verwendet.
  • Die Daten für einen elementaren Strom ("Elementarstrom") werden in Paketen übertragen, die mit PES (für "Packetized elementary stream") bezeichnet werden. Jedes PES enthält einen Stromidentifizierer ("stream_id"). Jeder Elementarstrom (Audio, Video oder andere) entspricht einer Programmkomponente. Die Elementarströme desselben Programms werden für die Übertragung gemultiplext. Eine zusätzliche Schicht, die Transportschicht, dient für diese Übertragung. Ein Transportpaket enthält einen Paket-Identifizierer (bezeichnet mit PID). Durch Korrespondenztabellen, auch Wahrheitstabellen genannt, werden die Zusammenhänge zwischen den PIDs und den Elementarströmen hergestellt. Die Korrespondenztabellen bilden einen Teil der programm-spezifischen Informationen ("PSI"), die ebenfalls in den Transportpaketen in der Form von Sektionen übertragen werden. Die Größe einer Sektion oder eines PES kann größer sein als die Nutzlast eines Transportpakets.
  • Für vollständige Details der Struktur und des Formats der Daten wird verwiesen auf die Norm MPEG2: ISO/IEC 13818 und insbesondere auf den Teil 1 "Systems".
  • Fig. 1 ist ein Blockschaltbild eines Demultiplexers gemäß dem vorliegenden Ausführungsbeispiel. Der Demultiplexer enthält zwei Teile: einen Daten-Verarbeitungsteil (1) und einen Verteil- oder Schaltteil (2) zu den Anwendungen und peripheren Einheiten.
  • Der Teil für die Verarbeitung der Daten empfängt einen gemultiplexten Strom von einer Schaltung 3 zur Demodulation und Fehlerkorrektur, die mit einem nicht dargestellten Tuner verbunden ist. Gemäß dem vorliegenden Ausführungsbeispiel extrahiert er bis zu neun Transportpakete entsprechend neun verschiedenen PIDs.
  • Der Datenverarbeitungsteil benutzt die sogenannten "Header" und Markierungen (flag) der Transportpakete und der PESs für den Zugriff zu den Nutzdaten. Bestimmte Felder werden über den Schaltteil 2 zu einem statischen RAM 5 geliefert, der als Zwischenspeicher durch den Dekoder dient. Wenn die Nutzdaten verwürfelt sind, werden sie zunächst zu einer Entwürfelungsschaltung 6 übertragen, bevor sie verarbeitet werden.
  • Ein FIFO-Speicher zwischen dem Verarbeitungsteil und dem Schaltteil macht es möglich, daß die beiden Einheiten bei verschiedenen Geschwindigkeiten arbeiten.
  • Die Daten des gemultiplexten Datenstroms werden in einem asynchronen Datenaufnahme-RAM gespeichert und so gelesen, wie sie benötigt werden.
  • Für die Analyse dar in dem RAM 4 gespeicherten Daten werden im allgemeinen zwei Schritte durchgeführt: ein Schritt zum Lesen eines Byte in das RAM, dann ein Vergleichsschritt durch einen Komparator 7, wobei ein Byte in einem Bestimmungsspeicher 8 gespeichert wird. Es werden nicht alle in dem RAM 4 gespeicherten Byte verglichen. Dieser Vergleich erfolgt nur für die Byte, für die dieser Vorgang notwendig ist. Der Verarbeitungsteil entscheidet, welche Byte zu vergleichen sind und entscheidet abhängig von dem Ergebnis der Vergleichsvorgänge außerdem, ob ein Transportpaket zurückgewiesen wird oder die Nutzdaten zu dem Schaltteil übertragen werden.
  • Der Vergleich erfolgt nur für Byte, die, wenn erforderlich, entwürfelt worden sind. Ein Multiplexer 19 bewirkt die Auswahl des Ausgangs des Datenaufnahme-RAM 4 und des Entwürfelers 6. Der Ausgang des Multiplexers 19 ist mit einem der beiden Eingänge des Komparators 7 verbunden. Der andere Eingang dieses Komparators ist mit dem Ausgang des Bestimmungsspeichers 8 verbunden. Vier von diesem Bestimmungsspeicher kommende Maskenbit werden durch den Komparator ebenfalls berücksichtigt, wenn die Vergleichsvorgänge erfolgen.
  • Das Lesen des Datenerfassungs-RAM 4 wird durch einen der Prozessoren (TP, PES und SEC bzw. 9, 10 und 11) ausgelöst. Dieses RAM ist als Stapel-FIFO organisiert.
  • Ein Mikroprozessor uC (13) steuert das Bestimmungs-RAM 8 und lädt dort die vorbestimmten Bestimmungs-Byte, nach denen in den Transportpaketen gesucht wird.
  • Die Prozessoren 9 bis 12 steuern das Lesen der Byte in dem Bestimmungs-RAM über die Steuereinheit dieses RAM.
  • Für jeden Vergleich werden ein Byte des RAM 8 und ein Byte des Datenerfassungs- RAM 4 zu dem Komparator 7 übertragen. Das Ergebnis des Vergleichs wird zu dem Prozessor übertragen, der ihn in der Form eines Bit mit "1" ausgelöst hat, wenn der Vergleich positiv ist.
  • Es werden vier Prozessoren in dem vorliegendem Ausführungsbeispiel angewendet:
  • (a) Der Prozessor TP (9) verarbeitet die Byte der Transportschicht.
  • (b) Der Prozessor PES (10) verarbeitet die Byte der Schicht der Pakete mit dem Elementarstrom.
  • (c) Der Prozessor SEC (11) verarbeitet die Byte der Sektionsschicht.
  • (d) Der Prozessor XFER (12) verarbeitet die Übertragung der Nutzdaten zu dem Schaltteil.
  • Jeder der Prozessoren 9 bis 12 enthält eine Zustandseinheit sowie Register und/oder Zähler. Bei einem gegebenen Zeitpunkt ist ein einziger Prozessor aktiv. Während seiner aktiven Phase führt ein Prozessor im allgemeinen die obengenannten Lese- und Vergleichsschritte durch, aktiviert dann einen anderen Prozessor, bevor dieser sich selbst deaktiviert. Die in den Transportpaketen empfangenen Schichten und Datenbyte bestimmen die Folge der Aktivierung und des Betriebs der Prozessoren.
  • Wenn ein Prozessor aktiviert wird, beginnt er, das nächste Datenbyte zu verarbeiten, das in dem Datenerfassungs-RAM 4 verfügbar ist. Der nächste Vergleich erfolgt mit dem in dem Bestimmungs-RAM gelesenen Byte, das durch einen speziell bei jedem Prozessor aufrechterhaltenen Zeigerwert angezeigt wird.
  • Vereinfacht angenommen: Wenn ein Prozessor Daten zu dem Schaltteil übertragen soll, aktiviert er den Prozessor XFER 12, bevor er sich selbst deaktiviert.
  • Der Multiplexer 19 wird entweder durch den Prozessor TP oder durch den Prozessor PES gesteuert. Das ist davon abhängig, bei welchem Wert (Transportpakete oder Pakete mit dem Elementarstrom) die Verwürfelung durchgeführt wird.
  • Ein Dekoder 20 steuert die Dekodierung der Adressen für den Bestimmungsspeicher, entweder von dem Mikroprozessor oder von einem der Prozessoren. Er steuert außerdem die Dekodierung der Adressen der Prozessorregister, wenn der Mikroprozessor einen Zugriff zu ihnen benötigt.
  • Der Dekoder enthält auch Register, in denen für jeden elementaren Datenstrom Parameter gespeichert werden, wie stream_id und stream_type. Alle Informationen für den in einem bestimmten Zeitpunkt verarbeiteten Datenstrom sind von dem Dekoder für die anderen Einheiten der Schaltung verfügbar. (Dieser Datenstrom ist bekannt durch den Parameter data_stream_id, der später anhand des Transportprozessors TP behandelt wird).
  • Die verschiedenen Prozessoren werden später detaillierter betrachtet.
  • Der Schaltteil des Demultiplexers empfängt gemultiplexte Daten von dem Verarbeitungsteil sowie einen Strom-Identifizierer (data-stream_id).
  • Gemäß einer besonderen Ausführungsform, die als gepufferter Modus bezeichnet wird, steuert der Schaltteil mehrere Pufferbereiche (Puffer) in dem statischen RAM 5, wobei diese Pufferbereiche dem Mikroprozessor 13 zugeordnet sind. Das Schaltteil speichert die Daten, die in den geeigneten Pufferbereichen empfangen werden, in Abhängigkeit von dem Strom-Identifizierer.
  • Mehrere Schnittstellen 17, 18 steuern die Kommunikation zwischen dem statischen RAM 5, dem Mikroprozessor und den externen Anwendungen 15 (Audio- Dekomprimierer, Video-Dekomprimierer, Videotext...) und 16 (Smart Card für die Zugriffssteuerung und die Bezahlung der Dienste). Jede Anwendung liest die sie betreffenden Daten in für sie reservierten Pufferbereichen.
  • Die Folgesteuereinheit 22 und der Datenpuffer 23 steuern jeweils die Folge der Zugriffe zu dem statischen Speicher 5 und die Adressierung der Pufferbereiche in diesem Speicher.
  • Die Mikroprozessor-Schnittstelle 17 schaltet insbesondere die Busadressen und die Daten zwischen dem Speicher 5, der Smart Card Schnittstelle, dem Mikroprozessor und den Anwendungen.
  • Der folgende Teil der Beschreibung betrifft insbesondere den Bestimmungsspeicher.
  • Gemäß dem vorliegenden Beispiel ist der Bestimmungsspeicher 8 ein RAM mit 128*12 Bit. Er dient zur Speicherung von Filterbytes. Jedes Byte hat eine Maske mit 4 Bit, die es ermöglicht, daß bestimmte Bit des Byte während des Vergleichs verdeckt werden. 12 Bit, davon 8 für das zu vergleichende Byte und 4 für die Verdeckung, werden bei jeder Adresse des Speichers 8 gespeichert und parallel durch den Komparator 7 benutzt. Die resultierenden sechzehn auswählbaren Bitmasken werden vorbestimmt und in dem Komparator 7 gespeichert.
  • Die Prozessoren TP, PES und SEC verwenden den Bestimmungsspeicher für die Filterung. Jeder Prozessor benutzt einen programmierbaren Teil des Bestimmungsspeichers.
  • Das erste Byte des Bestimmungsspeichers (Adresse 0) entspricht dem Paket PES und daher dem Prozessor PES. Dieses Byte identifiziert den Typ des Datenstroms ("stream_id").
  • Die Anzahl der Adressen des dem Prozessor TP entsprechenden Teils ist abhängig von der Anzahl der zu filternden Identifizierer PID. Für ein PID mit einer Länge von 13 Bit werden zwei Byte benötigt, was zwei Adressen je PID entspricht. Außerdem wird ein von dem Kontinuitätszähler (ECC) erwarteter Wert je PID gespeichert. Im letzten Fall ist es notwendig, diesem ein Synchronisierbyte hinzuzufügen, das für alle Transportpakete identisch ist und das daher nur einmal gespeichert wird, beginnend von dem dem Prozessor TP zugeordneten Teil des Speichers.
  • Die Anzahl der Adressen für diesen zweiten Teil ist somit:
  • (Anzahl der zu filternden PIDs *3)+1 Die Organisation dieses zweiten Teils ist:
  • Synchronisierbyte
  • PID H Datenstrom #0
  • [PID H Datenstrom #1]
  • [PID H Datenstrom #2]
  • ...
  • [PID H Datenstrom #n]
  • PID L Datenstrom #0
  • ...
  • [PID L Datenstrom #n]
  • ECC Datenstrom #0
  • ...
  • [ECC Datenstrom #n]
  • Gemäß dem vorliegendem Beispiel ist n immer kleiner als 9.
  • Was den für den Sektionsprozessor SEC reservierten Teil des Bestimmungsspeichers betrifft, ist die Anzahl der reservierten Adressen ebenfalls eine Funktion der Anzahl der PIDs. Der Speicher enthält so viele Felder oder Bereiche Sektion/Datenstrom ("Section/stream"), wie es verschiedene Datenströme gibt. Jeder Bereich hat seine eigene Startadresse (Section_TR_start_address).
  • Das erste Byte jedes Bereichs ist null: es ermöglicht die Überprüfung, daß der Zeiger für den Start der Sektion ("pointer_field") null ist.
  • Die folgenden Byte entsprechen den Tabellen-Identifizierern ("table_id"). Eine bestimmte Anzahl an Tabellen kann durch den Benutzer bestimmt werden, die Anzahl der Identifizierer ist variabel und gleich dem filter_nb für jeden Bereich.
  • Dann kommt ein Null-Halb-Byte, das mit den hohen Halb-Byte der Sektionslänge verglichen wird, um zu überprüfen, ob die Sektion das Transportpaket zum Überlaufen bringt.
  • Der letzte Teil jedes Bereichs enthält eine bestimmte Anzahl (filter_nb) von Gruppen von Byte mit einer Länge filter_length, die mit derselben Anzahl an Paketbyte zu vergleichen sind. Für jedes Paket-Byte werden Vergleiche filter_nb durchgeführt.
  • Start des Sektionszeigers
  • table_id #0
  • [table_id #1]
  • ...
  • [table_id #(n - 1)]
  • hohes Halb-Byte mit Sektionsfänge
  • adresse #0,0
  • [adresse #0,1].
  • ...
  • [adresse #0,(n-1)]
  • ...
  • [adresse #1,0]
  • [adresse #1,1]
  • ...
  • [adresse #(filter_length - 1), (filter_nb - 1)]
  • Die Gesamtzahl der Byte in jedem Bereich ist:
  • filter_nb * (filter_length + 1) + 2
  • Tabelle 1 zeigt ein Beispiel der Konfiguration des Bestimmungsspeichers für neun PIDs und ein Beispiel einer Sektionsfilterung für zwei verschiedene table_id und zwei Gruppen von Byte mit 16 Bit (das heißt filter_nb = 2 und filter_length = 2). TABELLE 1
  • Zum Beispiel ist ein Vergleich positiv, wenn die geeigneten Byte einer Sektion gleich dem Inhalt einer der Spalten der Tabelle 2 sind: TABELLE 2
  • Das Schreiben der Daten in dem Bestimmungsspeicher 8 erfolgt im allgemeinen durch den Mikroprozessor 13. Ein Spezialfall in diesem Zusammenhang ist hauptsächlich der Kontinuitätszähler, der durch den Prozessor TP (9) geschrieben wird.
  • Zum Schreiben des Bestimmungsspeichers verwendet der Mikroprozessor einen als trp bekannten Zeiger. Die Prozessoren haben Zugriff zu den sie interessierenden Daten durch Programmierung des Zeigers trp.
  • Der von dem Kontinuitätszähler ECC erwartete Wert entsprechend dem letzten Transportpaket, das für einen gegebenen elementaren Datenstrom aus dem gemultiplexten Datenstrom extrahiert wurde, wird bei geeigneten Adressen in dem Bestimmungsspeicher gespeichert. Dieser Wert entspricht dem Wert des Kontinuitätszählers, der aus dem letzten gefilterten Transportpaket extrahiert wurde, inkrementiert um eine Einheit. ECC wird während des Vergleichs mit dem Kontinuitätszähler ("continuity_counter") des nächsten Transportpaketes mit demselben PID benutzt.
  • Wenn der erste Wert des ECC nicht definiert ist, wird er zunächst vollständig verdeckt, und zwar durch Auswahl der geeigneten Bit-Verdeckungskonfiguration während des anfänglichen Schreibens in dem Bestimmungsspeicher durch den Mikroprozessor. Wenn der erste gültige Wert des ECC geschrieben wird, werden die Verdeckungs-Bit ebenfalls neu geschrieben.
  • Die Steuereinheit 14 des Bestimmungsspeichers bewirkt das Multiplexing zwischen den Zugriffsanforderungen zu diesem Speicher. Diese Anforderungen können von dem Mikroprozessor und den Prozessoren kommen.
  • Der folgende Teil der Beschreibung betrifft den Prozessor für die Transportschicht.
  • Der Prozessor TP ist der erste Prozessor, der für alle Transportpakete aktiv ist.
  • Gemäß dem vorliegendem Ausführungsbeispiel sind die durch diesen Prozessor gelesenen und verarbeiteten Byte die folgenden:
  • (a) sync_byte 8 bits
  • (b) transport_error_indicator 1 bit
  • payload_unit_start_indicator 1 bit
  • transport_priority 1 bit
  • PID_H 5 bits
  • (c) PID_L 8 bits
  • (d) transport_scrambling_control 2 bits
  • adaptation_field_control 2 bits
  • continuity_counter 4 bits
  • Alle diese Bezeichnungen entsprechen der MPEG2-Terminologie. Die Daten werden Byte für Byte gelesen. Bestimmte Variablen wie die transport_priority werden nicht berücksichtigt, sondern so gelesen, als wenn sie zu einem Byte mit Variablen gehören, die verarbeitet werden sollten.
  • Gemäß dem vorliegendem Ausführungsbeispiel können bis zu neun Datenströme extrahiert werden. Es handelt sich zum Beispiel um die Datenströme:
  • - Datenstrom der Assoziationstabelle der Programme (Pakete mit PID #1)
  • - Datenstrom der Tabelle für den bedingten Zugriff (Pakete mit PID #2)
  • - Datenstrom des Zuordnungssektion der Programme
  • - Video-Strom
  • - Audio-Strom
  • - Videotext-Strom
  • - Strom für Nachrichten für die Steuerung der Zugriffsrechte (EMM)
  • - Strom der Nachrichten für die Steuerung der Zugriffsrechte (ECM)
  • - Strom der Programmführer
  • Die neun PID-Werte sind nicht speziell durch den Demultiplexer zugeordnet. Der Mikroprozessor wählt die Datenströme durch Ladung der PIDs in dem Bestimmungsspeicher. Es werden nur die durch einen dieser neun PIDs identifizierten Transportpakete verarbeitet.
  • Der Mikroprozessor ordnet jedem Strom einen Typ eines Stroms zu (stream_type), der einen der folgenden Werte annehmen kann: Audio, Video, Sektion, andere.
  • Fig. 2 ist ein Zustandsdiagramm der Zustandseinheit des Prozessors TP. Der in Fettdruck angezeigte Zustand (w_first_TP) wird für die folgende Beschreibung als Ausgangszustand der Zustandseinheit angenommen. Wenn ein neues Paket erwartet wird, wartet der Prozessor TP auf ein Signal von dem Datenerfassungsspeicher, das anzeigt, daß dieser zum Schreiben bereit ist (état w_TP, signal ar_rdy1). Nun folgen drei Wartezustände für die physische Durchführung und die Verhältnisse der Schreib- und Lesetakte des Datenerfassungsspeichers.
  • Wenn das Synchronisierbyte sync_byte inkorrekt ist (das heißt von 0x47 abweicht), wird das Paket zurückgewiesen (état_sync_m), und es erfolgt eine Rückkehr zu dem Ausgangszustand.
  • Wenn die Markierung transport_error_indicator bei "1" liegt und anzeigt, daß die Daten des Transportpakets wenigstens einen unwiderruflichen Fehler enthalten, dann weist der Prozessor TP auch dieses Paket zurück (également état sync_m, condition TP_error).
  • Der Prozessor TP vergleicht die hohen Bit (_H) und die niedrigen Bit (_L) der PIDs mit neun in dem Bestimmungsspeicher 8 gespeicherten PIDs. Der Vergleich erfolgt zunächst mit den neun hohen Byte, dann mit den neun niedrigen Byte. Ein Neun-Bit- Register Dsid_reg des Prozessors TP wird mit dem Ergebnis geladen, bezeichnet mit data_stream_id. Ein Bit "1" zeigt an, daß eine Gleichheit zwischen dem PiD des verarbeiteten Pakets und einem der Bestimmungs-PIDs besteht. Die Lage des Bit zeigt das besondere PID an, um das es sich handelt.
  • Wenn kein Bit des Registers "1" ist, dann wird das Transportpaket zurückgewiesen. Dieser Test erfolgt bei dem Zustand cc_trp, der der Berechnungszustand des Zeigers des Bestimmungsspeichers ist, der die Adresse des erwarteten Kontinuitätszählers ECC für das gefilterte PID anzeigt. Wenn diese Adresse nicht gültig ist, wird der Fehler erkannt (no_ds).
  • Der Prozessor TP prüft, daß für ein einem gegebenen PID entsprechendes Paket der Kontinuitätszähler continuity_counter tatsächlich gleich dem erwarteten Wert ECC ist. Dafür wartet er auf das Ergebnis des durch den Komparator 7 durchgeführten Vergleichs (état wait_cc_match). Er schreibt dann den neuen, erwarteten ECC-Wert.
  • Als nächstes erfolgt ein Prüfschritt check_1. Es werden mehrere Fälle betrachtet:
  • (a) Wenn eine Nutzlast in dem Paket vorliegt (eine Nutzlast, die einem PES oder einer Sektion entspricht) und der Kontinuitätszähler den richtigen Wert hat, wird der Prozessor PES oder der Prozessor SEC aktiviert (état call_next_fsm). Es ist die Markierung payload_unit_start_indicator, die die Anwesenheit des des Starts einer PES oder einer Sektion in der Nutzlast des Transportpakets anzeigt. Diese Markierung wird in einem Register start_indic_reg gespeichert.
  • (b) Wenn das Paket in seiner Nutzlast einen Elementarstrom vom Videotyp enthält, wenn jedoch ein Fehler in der Kontinuität der Pakete vorliegt (Kontinuitätszähler weicht von dem erwarteten Wert ab), dann wird eine bestimmte Anzahl an Fehlerbyte in die Nutzlast eingefügt und zu dem Schaltteil übertragen (états error_state, e_x et call_xfer). Der Schaltteil speichert die Byte in dem geeigneten Pufferbereich des statischen RAM. Der Videodekoder, für den die Nutzlast bestimmt ist, erkennt diese Byte- Konfiguration und verarbeitet die Informationen dementsprechend.
  • (c) Wenn das Paar adaption_field_control die Anwesenheit eines Adaptionsfeldes in dem Transportpaket anzeigt, aktiviert der Prozessor TP den Prozessor XFER, um die Byte dieses Feldes zu dem Schaltteil zu übertragen.
  • (d) Wenn der Kontinuitätszähler keinen richtigen Wert hat und der Strom vom Sektionstyp ist, dann wird das Paket zurückgewiesen.
  • Während der aktiven Phase des Prozessors XFER befindet sich der Prozessor TP in einem Ruhe- oder Wartezustand und wartet darauf, von dem Prozessor XFER neu aktiviert zu werden. Wenn das Transportpaket zusätzlich zu dem Adaptionsfeld auch eine Nutzlast enthält und der Kontinuitätszähler einen richtigen Wert hat, aktiviert der Prozessor TP einen der Prozessoren SEC oder PES (état check_2, puis call_next_fsm).
  • Im entgegengesetztem Fall wird der Prozessor TP nur für das folgende Transportpaket aktiviert (état check_2).
  • Wenn einer der Prozessoren SEC oder PES aktiviert worden ist, geht der Prozessor TP in den Ruhe- oder Wartezustand (état sleep) und wartet darauf, durch diese Prozessoren neu aktiviert zu werden.
  • Das Paar transport_scrambling_control zeigt an, ob und in welcher Weise die Nutzlast des Transportpaketes verwürfelt ist. Diese Bit werden von dem Prozessor TP dafür benutzt, den Entwürfeler 6 zu konfigurieren und den Multiplexer 19 zu steuern.
  • Um ein Transportpaket zurückzuweisen, deaktiviert der Prozessor TP sich selbst, in dem er einfach auf ein Neuinitialisierungs-Signal wartet, das mit der Ankunft eines neuen Pakets Zusammenfällt.
  • Der Prozessor TP enthält drei Register. Das erste Register (DS_count_reg) enthält die Maximalzahl der verschiedenen, zu extrahierenden Pakete und wird von dem Mikroprozessor gesteuert. Das zweite (TP_count_reg) wird von dem Prozessor TP als Schleifenindex (Anzahl der Vergleiche, die für jedes in dem Datenerfassungsspeicher gelesene Byte zu erfolgen sind) benutzt. Das dritte Register wurde bereits erwähnt.
  • Der folgende Teil der Beschreibung betrifft den Prozessor PES für die Pakete mit dem Elementarstrom PES.
  • Gemäß dem vorliegendem Ausführungsbeispiel enthält dieser Prozessor eine (in Fig. 3 dargestellte) Zustandseinheit sowie neun Register jeweils für zwei Bit. Er wird durch einen der beiden Prozessoren TP oder XFER aktiviert.
  • Die folgenden Byte werden durch den Prozessor PES gelesen. Nur die mit einem Stern versehenen Daten werden tatsächlich durch den Prozessor geprüft. Die andern Daten werden während der Vergleiche verdeckt, was im übrigen auch für die anderen Prozessoren der Fall ist. Jedoch wird der gesamte sogenannte Header des Pakets PES gespeichert, um zu dem Schaltteil übertragen zu werden.
  • (a,b,c) packet_start_code_prefix 24 bits
  • (d) stream_id* 8 bits
  • (e) PES_packet_length_high 8 bits
  • (f) PES_packet_length_low 8 bits
  • (g) '10' 2 bits
  • PES_scrambling_control* 2 bits
  • PES_priority 1 bit
  • data_alignment_indicator 1 bit
  • copyright 1 bit
  • original_or_copy 1 bit
  • (h) PTS_DTS_flags 2 bits
  • ESCR_flag 1 bit
  • Es_rate_flag 1 bit
  • DSM_trick_mode_flag 1 bit
  • additional_copy_info_flag 1 bit
  • PES_CRC_flag 1 bit
  • PES_extension_flag 1 bit
  • Zunächst befindet sich der Prozessor PES im Ruhe- oder Wartezustand (Sleep). Er wird durch ein Signal awake_bus(PES) aktiviert, das von einem der Prozessoren TP oder XFER kommt. Der Prozessor wartet dann darauf, daß der Datenerfassungsspeicher für das Lesen des nächsten Byte des laufenden Transportpakets (état W_PES et signal ar_rdy) bereit ist. Wie für den Prozessor TP, ist eine bestimmte Anzahl an Wartezuständen erforderlich, um den Datenerfassungsspeicher und den Prozessor PES zu synchronisieren. Letzterer liest die drei Byte a, b und c, die dem packet_start_code_prefix (états scx_m) entsprechen, dann das Identifikations-Byte des Stroms stream_id (état sid_m1). Wenn der Strom ein privater Strom ist (siehe Tabelle 2-10 des Dokuments ISO/IEC 13818-1 oder ITU-T H.222.c, MPEG2 Systeme), dann wird der Prozessor XFER aktiviert (état call_xfer), um die Nutzlast des Pakets PES zu dem Schaltteil zu übertragen. In dem vorliegendem Ausführungsbeispiel wird angenommen, daß die abgeschlossenen oder sogenannten privaten Ströme durch die entsprechenden Anwendungen vollständig ausgenutzt sind und daß sie keine Entwürfelung durch den Entwürfeler 6 benötigen.
  • Im entgegengesetzten Fall werden die Byte e und f gelesen, dann das Byte g (scram state oder Scram-Zustand), von dem das Paar PES_scrambling_control abgeleitet wird, das die Anwesenheit einer Verschachtelung der Nutzlast des Pakets PES anzeigt. Diese Bit dienen wie vorher zur Steuerung des Entwürfelers 6 und des Multiplexers 19. Wenn die verwürfelte Nutzlast eines Pakets PES auf mehrere Transportpakete verteilt werden kann, jedoch nur das erste Transportpaket das Paar PES_scrambling_control enthält, werden diese Bit in einem Zwei-Bit-Register gespeichert. Der Prozessor PES enthält ein Register je Strom, das heißt in dem vorliegendem Ausführungsbeispiel neun. Die Register werden durch die Header der folgenden PES-Pakete aktualisiert.
  • Nach dem Lesen und der Verarbeitung des Byte g liest der Prozessor das Byte h. Dieses enthält eine bestimmte Anzahl an Markierungen. Abhängig von dem den Multiplexer enthaltenden Dekoder können diese Markierungen zu diesem Zeitpunkt auf einen mit diesen Möglichkeiten kompatiblen Wert gesetzt werden.
  • Die beiden folgenden Zustände haben die Aufgabe, den Header des PES-Paketes zu dem Schaltteil zu übertragen. Während dieser Zeit wird der Prozessor PES in den Ruhe- oder Wartezustand gesetzt. Wenn die Übertragung abgeschlossen ist, wird der Prozessor PES durch den Prozessor XFER neu aktiviert. Der Prozessor PES initiiert dann die Übertragung der Nutzlast des PES-Paketes (état call_xfer), wie vorher.
  • Wenn diese Übertragung initiiert worden ist, geht der Prozessor PES in den Ruhe- oder Warte-Modus.
  • Der folgende Teil der Beschreibung betrifft den Sektions-Prozessor SEC.
  • Der Prozessor SEC, der für die Verarbeitung der Daten der Sektionsschicht bestimmt ist enthält eine Zustandseinheit (dargestellt in Fig. 4) und vier Register. Er wird durch einen der Prozessoren TP oder XFER aktiviert. Die durch den Prozessor gelesenen Byte sind folgende:
  • (a) table_id
  • 8b
  • (b) section_syntax_indicator
  • 1b
  • private_indicator
  • 1b
  • reserved
  • 2b
  • section_length (Halb-Byte hoch)
  • 4b
  • (c) section_length (Byte niedrig)
  • 8b
  • (d) Erstes Byte, das mit den vorbestimmten Gruppen zu vergleichen ist
  • 8b
  • (e) Zweites Byte, das mit den vorbestimmten Gruppen zu vergleichen ist
  • 8b
  • ...
  • (...) Letztes Byte, das mit den vorbestimmten Gruppen zu vergleichen ist
  • 8b
  • (...) Nutzlast
  • 8b
  • Der Startzustand ist der Ruhe- oder Wartezustand (sleep). Bei der Aktivierung des Prozessor SEC können zwei Fälle auftreten:
  • - die Nutzlast des laufenden Transportpaketes enthält an ihrem Beginn den Start einer Sektion,
  • - die Nutzlast des Transportpaketes enthält Byte einer Sektion, deren Beginn in einem vorangehendem Transportpaket übertragen wurde.
  • In dem ersten Fall erfolgt ein Übergang zu dem Wartezustand w_sec, der aufrechterhalten wird, solange ein Signal ar_rdy, das anzeigt, daß der Datenerfassungsspeicher bereit ist und wenigstens 6 Byte enthält, den Prozessor SEC nicht erreicht hat.
  • Zunächst zeigt der Prozessor SEC auf einen Bereich Sektions-Strom des Bestimmungsspeichers. Dieser Zeiger wird durch den Mikroprozessor für jedes berechtigte PID bestimmt und wird in durch den Prozessor gelesenen Registern gespeichert.
  • Jeder Bereich Sektion/Strom mit mehreren Gruppen von vorbestimmten Byte für den Vergleich mit den Byte der Sektion des Transportpaketes kann eine Filterung von mehreren Parametern (EMM: ECM, Zuordnung der Programme usw....) für jeden Strom durchführen.
  • Das erste zu Beginn der Sektion aus dem Datenerfassungsspeicher zu lesende Byte ist das Identifizierungs-Byte für die Tabelle table_id. Es wird mit den entsprechenden filter_nb Byte des Bestimmungsspeichers verglichen. Dieser ist durch die Schleife um den Zustand F1_loop dargestellt.
  • Das zweite und das dritte zu lesende Byte sind die Byte für die Sektionslänge. Gemäß dem vorliegendem Ausführungsbeispiel erfolgt der einzige durchgeführte Vergleich mit dem hohen Halb-Byte des niedrigen Byte für die Sektionslänge, um zu prüfen, ob die Sektion das laufende Transportpaket überschreitet.
  • Es erfolgt dann ein Vergleich der Byte der Sektion mit den in dem Bestimmungsspeicher gespeicherten vorbestimmten Byte (Zustand F2_loop und entsprechender Schleife). Während des Vergleichs mit den Byte einer der Gruppen wird ein Bit eines Registers (filter_reg) durch den Prozessor für jeden positiven Vergleich auf 1 gesetzt. Diese Information wird von Transportpaket zu Transportpaket aufrechterhalten, wenn die Sektion mehr als ein Paket einnimmt, um die gesamte Sektion zu dem Schaltteil zu übertragen.
  • Wenn eine der Gruppen von vorbestimmten Byte in einer Sektion detektiert wird, wird die Sektion zu dem Schaltteil übertragen (état_call_next_fsm), wenn die Filterung beendet ist. Wenn das Ende einer Sektion übertragen worden ist, dann wird ein Unterbrechungssignal erzeugt, um dem Mikroprozessor anzuzeigen, daß die gesamte Sektion in dem SRAM gespeichert worden und dort verfügbar ist.
  • Wenn kein Vergleich mit einer Gruppe von Byte ein positives Ergebnis bringt, dann wird die Sektion zurückgewiesen, und die Steuerung wird zum Prozessor TP zurückgegeben.
  • In dem zweiten Fall wird der Prozessor SEC aktiviert, wenn eine Sektion bereits gestartet ist. Der Prozessor analysiert dann das Register suspend_reg, um festzustellen, ob das Ende des Bereichs beim Start der Nutzlast des Transportpaketes einer Sektion entspricht, für die der Vergleich positiv gewesen ist. In diesem Fall wird der Übertragungsprozessor bezeichnet mit: (état call_next_fsm). Im entgegengesetzten Fall berechnet der Prozessor SEC den Zeiger (w_ptr), der dem Start der folgenden Sektion in demselben Transportpaket entspricht. Das System kehrt dann zu den Zyklen mit Filterung/Vergleich zurück (état w_SEC).
  • Der Prozessor SEC enthält vier Register. Ein erstes Register (SECcount_reg) dient als Index in den anhand der Zustandseinheit beschriebenen beiden Schleifen. Ein zweites Register (filter_reg) dient zum Speichern der Vergleichsergebnisse. Dieses Register enthält filter_nb Bit, wobei jedes Bit das Ergebnis des Vergleichs für eine der Gruppen von vorbestimmten Byte anzeigt. Ein drittes Register (suspend_reg) speichert die Ergebnisse der Filterung für jeden Strom, für den der Inhalt einer Sektion, die mehrere Pakete einnimmt, zu dem Schaltteil übertragen werden kann. Die Unterbrechungen am Ende der Sektion werden auch von diesem Register erzeugt. Ein letztes Register (SEC_length_reg) dient zum Berechnen der Länge der Sektion.
  • Gemäß dem vorliegendem Ausführungsbeispiel wird angenommen, daß die zu vergleichenden Byte derselben Sektion in demselben Transportpaket übertragen werden. Die anderen Byte einer Sektion können auf andere Transportpakete verteilt werden.
  • Der folgende Teil der Beschreibung betrifft insbesondere den Übertragungsprozessor XFER.
  • Der Prozessor XFER wird durch jeden zweiten Prozessor aktiviert, der zu dem Schaltteil zu übertragende Daten enthält. Er enthält eine Zustandseinheit (Fig. 5), ein Register (packet_length_reg) und zwei Zähler: xfer_count_reg und ar_count. Der Prozessor XFER hat keinen Zugriff zu dem Bestimmungsspeicher:
  • Das Register packet_length_reg enthält die Länge des Paketes, das heißt 188 Byte in dem Fall von Transportpaketen MPEG2. Ein interner Zähler (packet_count_reg) wird zu Beginn des Transportpaketes durch den Mikroprozessor mit diesem Wert geladen und jedes Mal dekrementiert, wenn ein Byte in dem Datenerfassungsspeicher gelesen wird.
  • Der Zähler xfer_count_reg wird von dem Prozessor XFER dafür benutzt, die Zahl der zu übertragenden Byte zu speichern.
  • Der Zähler ar_count dient zum Erzeugen der Signale vom Typ ar_rdy (Datenerfassungsspeicher bereit). Er synchronisiert die Daten von dem Demodulator/Fehler- Korrektor und vergleicht die Lese- und Schreibzeiger des Datenerfassungsspeichers.
  • Der Startzustand ist wieder der Ruhe- oder Wartezustand (sleep).
  • Wenn ein Signal till_TP_end durch den Aufrufprozessor aktiviert worden ist, dann überträgt der Prozessor XFER alle übrigen Byte des Transportpaketes zu dem Schaltteil. Im entgegengesetzten Fall liest der Prozessor das erste Byte in dem Datenerfassungsspeicher und betrachtet dieses als die Anzahl der zu übertragenden Byte. Wenn das Signal drop_length_bus gültig ist, dann wird dieses erste Byte nicht zu dem Schaltteil übertragen. Diese Funktion ist auch abhängig von dem Prozessor, der den Prozessor XFER aktiviert hat, sowie von der Anzahl der in dem Datenerfassungsspeicher vorhandenen Byte.
  • Für jede Übertragungssession erwartet der Prozessor XFER, daß 6 Byte in dem Datenerfassungsspeicher oder in dem Entwürfeler verfügbar sind. Er öffnet dann eine Übertragungssession, indem er ein Signal DPP_reg (état w_ard) zu dem Schaltteil schickt und wartet auf die Rückkehr dieses Teils (état w_sram).
  • Wenn der DSP für den Empfang von Daten bereit ist, antwortet er mit einem Signal DSP_ack. Der Prozessor XFER liest dann die Byte in dem Datenerfassungsspeicher (état rd_byte) und überträgt sie zu dem Schaltteil. Nach der Übertragung eines Byte springt der Prozessor zurück, um das nächste Byte zu übertragen, bis zu einem Ende der Transportbedingung: Paketende, Sektionsende oder Übertragungsende (états w_0, w_1 und w_2).
  • Wenn keine Endbedingung erfüllt ist, dann wartet der Prozessor (état W_ar3) darauf, daß andere sechs Byte in dem Datenerfassungsspeicher verfügbar sind (ar_rdy = 1), um eine neue Anforderung für die Übertragungssession zu bilden.
  • Im Falle der Endbedingung reaktiviert der Prozessor XFER den Prozessor, der ihn aktiviert hat, und geht in den Ruhe- oder Wartemodus (états call_next_fsm und sleep).

Claims (7)

1. Demultipexeinrichtung für einen Strom von in hierarchischen Schichten angeordneten gemultiplexten Daten mit Mitteln (4) zur Speicherung der Daten des gemultiplexten Stroms, gekennzeichnet durch folgende Merkmale;
- wenigstens eine Zustandseinheit (9, 10, 11, 12) speziell für eine Schicht unter den hierarchischen Datenschichten in dem gemultiplexten Strom für die Verarbeitung der Daten der Schicht,
- programmierbare Mittel (8) zur Speicherung von Filterungsdaten, wobei jede Zustandseinheit (9, 10, 11, 12) das Lesen der gespeicherten Filterungsdaten steuert, die der Schicht entsprechen, für die die Zustandseinheit vorgesehen ist,
- Vergleichsmittel (7) zum Vergleichen der Daten des gemultiplexten Datenstroms und der gelesenen Filterungsdaten und
- Übertragungsmittel (12) für die Daten des gemultiplexten Stroms zu den Speichermitteln (5) in Abhängigkeit von den durchgeführten Vergleichen.
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Schicht die Transportschicht MPEG2 ist und die Werte der Filterungsdaten wenigstens einen der folgenden Typen enthalten: PID, Kontinuitätszähler, Synchronisierdaten.
3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Werte der Filterungsdaten des Kontinuitätszählers dem nächsten, in dem gemultiplexten Datenstrom erwarteten Wert entsprechen.
4. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Schicht die Schicht des Abschnitts MPEG2 ist, die Filterungsdaten wenigstens einen der folgenden Typen enthalten: Tabellen-Identifizierer, Start des Auswahlzeigers, Sektionslänge.
5. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Schicht die Schicht mit elementaren Strompaketen MPEG2 ist und die Filterungsdaten den Strom-Identifizierer enthalten.
6. Einrichtung nach einem der Ansprüche 2, 3 oder 4, dadurch gekennzeichnet, daß die Einrichtung unter anderem einen Multiplexer (19) enthält, von dem ein Eingang mit dem Ausgang der Mittel zum Speichern der Daten des gemuitiplexten Stroms verbunden ist und von dem ein zweiter Eingang mit dem Ausgang eines Entwürfelers (6) verbunden ist, und daß der Eingang des Entwürfelers gleichermaßen mit dem Ausgang der Mittel zur Speicherung der Daten des gemultiplexten Stroms verbunden ist und der Multiplexer durch den oder die Zustandseinheiten (9, 10) gesteuert wird.
7. Digitaler Fernsehdekoder, dadurch gekennzeichnet, daß er den Demultiplexer nach einem der vorangehenden Ansprüche enthält.
DE69614495T 1995-12-29 1996-12-26 Demultiplexeinrichtung für ein digitales Fernsehsystem Expired - Lifetime DE69614495T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9515767A FR2743245B1 (fr) 1995-12-29 1995-12-29 Dispositif de demultiplexage

Publications (2)

Publication Number Publication Date
DE69614495D1 DE69614495D1 (de) 2001-09-20
DE69614495T2 true DE69614495T2 (de) 2002-04-25

Family

ID=9486172

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69614495T Expired - Lifetime DE69614495T2 (de) 1995-12-29 1996-12-26 Demultiplexeinrichtung für ein digitales Fernsehsystem

Country Status (6)

Country Link
US (1) US5835591A (de)
EP (1) EP0782346B1 (de)
JP (1) JP3919860B2 (de)
CN (1) CN1092451C (de)
DE (1) DE69614495T2 (de)
FR (1) FR2743245B1 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6091772A (en) * 1997-09-26 2000-07-18 International Business Machines, Corporation Black based filtering of MPEG-2 compliant table sections
FR2771884B1 (fr) * 1997-12-02 1999-12-31 Thomson Multimedia Sa Procede de gestion d'informations de service dans un systeme de television numerique et recepteur mettant en oeuvre ce procede
GB9802093D0 (en) * 1998-01-30 1998-03-25 Sgs Thomson Microelectronics Digital receiver demultiplexer
DE19820936C1 (de) * 1998-05-09 1999-06-02 Grundig Ag Verfahren und Vorrichtung zur Auswertung eines digitalen Datenstromes
GB2383504A (en) * 1998-06-03 2003-06-25 Orange Personal Comm Serv Ltd A video telephone for conferencing
DE19908488A1 (de) 1999-02-26 2000-08-31 Thomson Brandt Gmbh Verfahren und Vorrichtung zur Wiedergabe von digitalen Datenströmen
US6826197B1 (en) * 1999-04-01 2004-11-30 Sedna Patent Services, Llc Data packet structure for digital information distribution
US6891862B1 (en) * 1999-04-26 2005-05-10 Nortel Networks Limited Multiplex hierarchy for high capacity transport systems
JP4075249B2 (ja) * 1999-10-05 2008-04-16 ソニー株式会社 分離装置
DE19960295B4 (de) * 1999-12-14 2012-06-21 Rohde & Schwarz Gmbh & Co. Kg Verfahren und Anordnung zum Ändern des Informationsinhaltes eines digitalen Video-Transportstromes in ausgewählten Regionen
US7028095B1 (en) 2000-03-23 2006-04-11 International Business Machines Corporation Block-based negative filtering of MPEG-2 compliant table sections
JP2001308921A (ja) * 2000-04-25 2001-11-02 Sony Corp デマルチプレクサ
EP1227666A1 (de) * 2001-01-18 2002-07-31 Sony Service Centre (Europe) N.V. Verfahren und Gerät zum Fernladen von Applikationsdaten
JP3769477B2 (ja) * 2001-07-18 2006-04-26 松下電器産業株式会社 多重分離回路
US7817721B2 (en) * 2003-05-15 2010-10-19 Lsi Corporation Posting status data in digital transport stream processing
EP1641127A4 (de) * 2003-06-16 2011-10-19 Panasonic Corp Paketverarbeitungseinrichtung und verfahren
US7882510B2 (en) * 2003-08-06 2011-02-01 Microsoft Corporation Demultiplexer application programming interface
US8199781B2 (en) * 2004-12-14 2012-06-12 Samsung Electronics Co., Ltd Device and method for demultiplexing received transport stream in digital broadcasting receiver
JP4667108B2 (ja) 2005-04-11 2011-04-06 パナソニック株式会社 データ処理装置
JP4828927B2 (ja) * 2005-12-16 2011-11-30 パナソニック株式会社 ストリーム制御装置
US9172629B1 (en) * 2005-12-29 2015-10-27 Alcatel Lucent Classifying packets
US7861012B2 (en) 2006-03-01 2010-12-28 Panasonic Corporation Data transmitting device and data transmitting method
KR100864715B1 (ko) * 2006-10-19 2008-10-23 삼성전자주식회사 디지털 방송 수신 장치 및 그의 스크램블 채널 판단 방법
US8370261B2 (en) * 2007-01-10 2013-02-05 Amnon Nissim System and a method for access management and billing
US7995575B2 (en) * 2008-01-02 2011-08-09 Cisco Technology, Inc. Packet error handling

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1207258B (it) * 1979-10-11 1989-05-17 Sits Soc It Telecom Siemens Disposizione circuitale atta a riconoscere la parola di allineamento, di particolare applicazione nella sezione ricevente di un multiplatore disegnali digitali.
FR2594615B1 (fr) * 1986-02-20 1988-06-17 France Etat Dispositif de demultiplexage de paquets d'un signal de radiodiffusion de type mac/paquets
DE69122634T2 (de) * 1990-02-06 1997-05-15 Alcatel Italia System, Packetaufbau und Einrichtung zur Verarbeitung der Ausgangsinformation eines Signalkodierers
US5220325A (en) * 1991-03-28 1993-06-15 At&T Bell Laboratories Hierarchical variable length decoder for digital video data
US5329179A (en) * 1992-10-05 1994-07-12 Lattice Semiconductor Corporation Arrangement for parallel programming of in-system programmable IC logical devices
JP3427416B2 (ja) * 1993-05-25 2003-07-14 ソニー株式会社 多重化データ分離装置および方法
JP2862064B2 (ja) * 1993-10-29 1999-02-24 三菱電機株式会社 データ復号装置及びデータ受信装置及びデータ受信方法
US5583562A (en) * 1993-12-03 1996-12-10 Scientific-Atlanta, Inc. System and method for transmitting a plurality of digital services including imaging services
JPH07264144A (ja) * 1994-03-16 1995-10-13 Toshiba Corp 信号圧縮符号化装置および圧縮信号復号装置
US5521979A (en) * 1994-04-22 1996-05-28 Thomson Consumer Electronics, Inc. Packet video signal inverse transport system
US5475754A (en) * 1994-04-22 1995-12-12 Thomson Consumer Electronics, Inc. Packet video signal inverse transport processor memory address circuitry
US5459789A (en) * 1994-04-22 1995-10-17 Thomson Consumer Electronics Packet TV program component detector
US5473609A (en) * 1994-05-26 1995-12-05 Thomson Consumer Electronics, Inc. Method and apparatus for processing a conditional access program guide as for a satellite TV service
CA2146801C (en) * 1994-05-27 1999-11-02 Barin Geoffry Haskell Timing recovery for variable bit-rate video on asynchronous transfer mode (atm) networks

Also Published As

Publication number Publication date
US5835591A (en) 1998-11-10
CN1162890A (zh) 1997-10-22
FR2743245A1 (fr) 1997-07-04
JP3919860B2 (ja) 2007-05-30
JPH09275381A (ja) 1997-10-21
EP0782346B1 (de) 2001-08-16
CN1092451C (zh) 2002-10-09
FR2743245B1 (fr) 1998-01-23
DE69614495D1 (de) 2001-09-20
EP0782346A1 (de) 1997-07-02

Similar Documents

Publication Publication Date Title
DE69614495T2 (de) Demultiplexeinrichtung für ein digitales Fernsehsystem
DE69505369T2 (de) Informationsanordnung für bedingten zugang
DE69933721T2 (de) DMA-Steuereinheit
DE69529001T2 (de) Prozessor für inverse Übertragung mit Speicheradressenschaltung
DE69637230T2 (de) Transportkodierer für einen Paketstrom und Verfahren zu dessen Betrieb
DE69422791T2 (de) Sendung und Empfang von Programminformation
DE69705948T2 (de) Verarbeitung von digitalen daten und programmführungsinformationen
DE69509897T2 (de) Verfahren und gerät zur bearbeitung einer progammübersicht mit bedingtem zugang für satelliten-fernsehdienst
DE69708867T2 (de) Adaptives Verfahren zur Ausgabe verschlüsselter Videoeingangsdaten wahlweise in ihrem verschlüsselten Format oder entschlüsselt
DE69523937T2 (de) Chipkarte, signalverarbeitungsgerät und verfahren zur signalverarbeitung
DE69523972T2 (de) Medienfehlerkode-Verarbeitung, zur Anwendung bei der Dekompression digitaler Videosignalpakete
DE69410489T2 (de) Verfahren und gerät für die synchronisation und den ablauf von mehreren datenströmen und echtzeitaufgaben
DE69531561T2 (de) Ausführungssteuerungsverfahren für ein interaktives audio/video Programm
DE69715559T2 (de) Parsersystem und Verfahren für MPEG-Transportstrom
DE60038509T2 (de) Verfahren zum bedingten zugang für digitales fernsehen und vorrichtung zur gleichzeitigen verarbeitung von mehreren fernsehprogrammen
DE69423177T2 (de) Transportvorrichtung für komprimiertes Bildsignal
DE60013624T2 (de) Trickwiedergabesignalerzeugung für einen digitalen videorekorder
DE69719503T2 (de) Dekodierung von digitalen daten mit programmspezifischer information
EP0946056A1 (de) Verfahren zum Erhöhen der Speicherkapazität für Serviceinformation in einem Empfäger für digitale TV-Sendungen
DE69808868T2 (de) Vorrichtung zur Erkennung von Datenübereinstimmung und Vorrichtung zur Datenauswahl
DE69716365T2 (de) Vorrichtung zur datenmultiplexierung
DE69902194T2 (de) Uebertragungssystem, Uebertragungseinrichtung, Aufzeichnungs- und Wiedergabegerät
DE60220153T2 (de) Vorrichtung zur paketdatenverarbeitung
DE68924764T2 (de) System zum Multiplexieren von Paketen bei der Übertragung von mittels des gleichen Algorithmus erzeugten Datenflüssen.
DE69620708T2 (de) Verfahren zur Hintereinanderschaltung von austauschbaren, bedingungsabhängigen Zugangsmodulen, Schaltung zur Eingabe einer vorbestimmten Reihenfolge und Schaltung zur Erkennung dieser Reihenfolge zum Starten dieses Verfahrens

Legal Events

Date Code Title Description
8320 Willingness to grant licences declared (paragraph 23)
8364 No opposition during term of opposition