DE69909608T2 - Paketprotokoll zur kodierung und dekodierung von videodaten und datenflusssignalen - Google Patents

Paketprotokoll zur kodierung und dekodierung von videodaten und datenflusssignalen Download PDF

Info

Publication number
DE69909608T2
DE69909608T2 DE69909608T DE69909608T DE69909608T2 DE 69909608 T2 DE69909608 T2 DE 69909608T2 DE 69909608 T DE69909608 T DE 69909608T DE 69909608 T DE69909608 T DE 69909608T DE 69909608 T2 DE69909608 T2 DE 69909608T2
Authority
DE
Germany
Prior art keywords
data
video processing
packet
processing device
request
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
DE69909608T
Other languages
English (en)
Other versions
DE69909608D1 (de
Inventor
R. Craig FRINK
V. Andrew HOAR
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.)
Avid Technology Inc
Original Assignee
Avid Technology Inc
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 Avid Technology Inc filed Critical Avid Technology Inc
Application granted granted Critical
Publication of DE69909608D1 publication Critical patent/DE69909608D1/de
Publication of DE69909608T2 publication Critical patent/DE69909608T2/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 MPEG packets from an IP network
    • H04N21/4381Recovering the multiplex stream from a specific network, e.g. recovering MPEG packets from ATM cells
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • H04N21/43632Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wired protocol, e.g. IEEE 1394

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft paketgestützte Protokolle zum Übertragen von Daten über Verbindungsleitungen. Die vorliegende Erfindung betrifft insbesondere Paketprotokolle zum Codieren und Decodieren von Videodaten und Datenfluss-Steuersignalen.
  • HINTERGRUND
  • Analoge Film-Videosignale, wie etwa jene, die in gewöhnlichen Fernsehgeräten, Videoband-Recordern und weiteren analogen Videosystemen verwendet werden, sind zeitlich kontinuierliche und synchrone Signale, die in einem Videosystem für die Synchronisation verschiedene Elemente erfordern, damit sie verwendet werden können. Mit anderen Worten, analoge Film-Videosignale besitzen eine vorgegebene und feststehende Rate, auf die alle Elemente in dem Videosystem synchronisiert sind. Jedes Element im Videosystem ist unter der Annahme konstruiert, dass eine konstante Rate für die Eingabe und Ausgabe von Film-Videoinformationen vorhanden ist.
  • In letzter Zeit war es möglich, digitale Film-Videosignale in Dateien in einem Computer zu speichern. Es gibt mehrere Verfahren, derartige Film-Videodaten wiederzugeben. Ein Verfahren wird als "Pushing" oder "Streaming" der Film-Videodaten bezeichnet. Streaming basiert auf der Annahme, dass ein System eine mittlere Datenströmungsrate schaffen kann, die gleich der ultimativen Datenströmungsrate ist, die erforderlich ist, um eine zeitlich kontinuierliche Ausgabe von analogen Film-Videosignalen an einen Betrachter sicherzustellen. Eine ausreichende Pufferung wird verwendet, um erwartete Latenzzeiten bei der Datenübertragung zwischen Elementen auszugleichen. In einigen Fällen kann es erforderlich sein, dass sowohl die zeitliche als auch die räumliche Auflösung der Film-Videoinformationen verringert wird. Derartige Systeme sind typischerweise unter der Annahme konstruiert, dass die Übertragung von Audio- und Videodaten von einer Quelle über verschiedene Verarbeitungselemente zu ihrem Endziel weder verzögert noch angehalten werden kann.
  • Wenn ein digitaler Universal-Computer verwendet wird, um Film-Videoinformatio nen zu verarbeiten, kann eine konstante Datenflussrate im Allgemeinen nicht aufrechterhalten werden. Es können Schwankungen der Datenflussrate infolge von verschiedenen Latenzzeiten im Computersystem vorhanden sein, z. B. infolge der Latenzzeit beim Platten- oder Speicherlesen, Unterbrechungen von anderen Verarbeitungselementen im Computer usw. Außerdem ist in einigen Systemen, etwa in Schneidsystemen, die Fähigkeit erwünscht, die Wiedergabe anzuhalten und neu zu starten. Um derartige Probleme zu bewältigen besteht ein verwendetes Verfahren darin, eine ausreichende Pufferung in Kombination mit einer Fähigkeit zum Anhalten der Datenübertragung zu schaffen, derart, wie im US-Patent Nr. 5.045.940 (Peters u. a.) gezeigt ist. Diese Prinzipien werden in einem Computernetz verwendet, wie in der veröffentlichten europäischen Patentanmeldung Nr. 0 674 414 A2 beschrieben ist. Eine Erweiterung dieser Kombination auf die Verarbeitung von Spezialeffekten ist in den PCT-Publikationen WO 94/24815 und WO 95/26100 offenbart. Bei diesem System gibt eine Daten-Dekompressionseinrichtung Daten an einen ersten Puffer aus, von dem sie an einen zweiten Puffer übertragen werden, der einem Spezialeffekt-Prozessor zugeordnet ist. Der erste Puffer gibt an, ob gültige Daten zur Verfügung stehen. Außerdem zeigt der Spezialeffekt-Prozessor einem der Dekompressionseinrichtung zugeordneten Controller anhand des Speichers im zweiten Puffer an, ob er Daten empfangen kann.
  • Ein Nachteil dieser Systeme besteht darin, dass sie einen bedeutenden Pufferumfang verwenden, um Verzögerungen bei der Datenübertragung zwischen Elementen aufzunehmen. Sie sind außerdem im Allgemeinen so konstruiert, dass sie ein einziges vorgegebenes Format der Medien verwenden. Die Steuerung des Datenflusses zwischen untereinander verbundenen Vorrichtungen ist außerdem in der US-Patentanmeldung Serien-Nr.08/879.981 beschrieben, die der am 30.12.1998 veröffentlichten Anmeldung WO-A-98/59494 entspricht. Eine Verbindungsleitung kann möglicherweise keinen ausreichenden Durchsatz oder keine ausreichende Anschlussmöglichkeiten besitzen, um einen Datenfluss von Steuerinformationen parallel mit Daten zu gewährleisten. Ein Protokoll zum Steuern des Datenflusses ist im Allgemeinen von dem Transportmedium der Verbindungsleitung abhängig.
  • ZUSAMMENFASSUNG
  • Ein paketgestütztes Protokoll enthält Datenfluss-Steuersignale für die effektive Übertragung von Daten auf verschiedenen Verbindungsleitungen, die schnelle parallele und serielle Verbindungsleitungen enthalten. Das Paketprotokoll ermöglicht außerdem das Leiten von Daten in großen Systemen oder über Standard-Video- und Rechennetze. Das Paketprotokoll ist datenunabhängig und ermöglicht die gleichzeitige Nutzung von verschiedenen Typen von Videodaten bei einem gemeinsamen Verbindungsleitungs- und Systemaufbau. Das Paketprotokoll bietet außerdem ein flexibles Verfahren zum Leiten von Daten zwischen Vorrichtungen. Es können außerdem unter Verwendung dieses Protokolls Befehlsdaten zwischen Vorrichtungen ausgetauscht werden. Unter Verwendung dieses Paketprotokolls kann außerdem jede Speicher- oder Datenverarbeitungsvorrichtung als eine Vermittlungseinrichtung arbeiten und kann über ihre Eingabe- und Ausgabe-Verbindungsleitungen die Datenfluss-Steuerung realisieren. Die flussgesteuerte Datenübertragung kann unter Verwendung dieses Protokolls in einer Weise implementiert werden, die vom Transportmedium der Verbindungsleitung unabhängig ist.
  • Gemäß der Erfindung werden ein Videoverarbeitungssystem, Videoverarbeitungsvorrichtungen und ein Sende-Empfangs-Gerät geschaffen, wie in den Ansprüchen dargestellt ist.
  • Es sollte klar sein, dass weitere Aspekte der Erfindung Systeme aus Vorrichtungen enthalten, die untereinander durch Vorrichtungen verbunden sind, die das Paketprotokoll unterstützen, wie etwa Sende-Empfangs-Geräte, Paketvermittlungseinrichtungen und Router. Weitere Aspekte der Erfindung enthalten Verfahren zum Verarbeiten von Videodaten unter Verwendung dieses Paketprotokolls und die Prozesse, die durch Videovorrichtungen und Sende-Empfangs-Geräte in den anderen Aspekten der Erfindung ausgeführt werden.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • In der Zeichnung ist:
  • 1 eine Darstellung des allgemeinen Aufbaus eines Pakets in einem Paketprotokoll;
  • 2 eine Darstellung, die den Aufbau eines Kopfabschnitts eines Pakets veranschaulicht;
  • 3 eine Darstellung, die den Aufbau eines Paket-Deskriptors veranschaulicht;
  • 4 eine Darstellung, die den Aufbau eines Adressen-Zusatz-Kopfabschnitts veranschaulicht;
  • 5 eine Darstellung eines Muster-Datenpakets;
  • 6 eine Darstellung eines Muster-Anforderungspakets;
  • 7 eine Darstellung eines Muster-Befehlspakets;
  • 8 eine Darstellung eines Muster-Unterbrechungspakets;
  • 9 ein Taktdiagramm, das die Übertragung eines Pakets über eine parallele Verbindungsleitung veranschaulicht;
  • 10A-C sind Blockschaltpläne eines Sende-Empfangs-Geräts, das mit zwischen Vorrichtungen geschaltet ist und in Übereinstimmung mit diesem Protokoll Eingaben und Ausgaben liefert;
  • 11 ein Blockschaltplan einer Mehrsystem-Verbindungstopologie, bei der das Paketprotokoll verwendet werden kann, um Videoinformationen zwischen den Systemen zu leiten; und
  • 12 ein Blockschaltplan, der Systeme veranschaulicht, die untereinander durch Video-Verbindungsleitungen verbunden sind, um unter Verwendung des Paketprotokolls zu kommunizieren.
  • GENAUE BESCHREIBUNG
  • Ein Paketprotokoll bettet Daten und Flusssteuerungsinformationen in Pakete ein, damit derartige Informationen über eine Vielzahl von Verbindungsleitungen zwischen Verarbeitungsvorrichtungen übertragen werden können. Ein Paketprotokoll ermöglicht außerdem das dynamische Leiten von Informationen durch das Einbetten von Zieladressen in ein Paket. Weitere Befehlsdaten, wie etwa Speicheradressen für eine Vorrichtung oder weitere Datenverarbeitungsparameter, können außerdem in ein Paket eingebettet sein. Ein Paket ermöglicht außerdem, dass Daten mit unterschiedlichen Wortlängen in ein Format gepackt werden können, das der Datenbreite eines Transportmediums entspricht.
  • Unter Bezugnahme auf 1 wird nun ein allgemeiner Paketaufbau beschrieben. Ein Paket 30 besitzt einen Kopfabschnitt 32, einen Datenabschnitt 34 und einen Endabschnitt 36. Die Breite und die Bits des Kopfabschnitts, der Daten und des Endabschnitts können jede Wortlänge aufweisen, obwohl eine byteorientierte Wortlänge die Verarbeitung sowohl durch Video- als auch durch Rechenvorrichtungen vereinfacht. Der Kopfabschnitt gibt einen Typ des Pakets und sein Ziel an. Der Datenabschnitt befördert Daten, die Befehlsdaten, Nachrichten, Videodaten, Audiodaten und weitere Datentypen enthalten können. Der Endabschnitt gibt das Ende des Pakets an und kann eine Prüfsumme und möglicherweise weitere Steuerinformationen enthalten. Da die Verwendung des Endabschnitts vom Typ des Pakets abhängt, werden die Paket-Endabschnitte in Verbindung mit den Typen der Pakete beschrieben.
  • 2 veranschaulicht die Daten genauer, die in einer Ausführungsform in einem Kopfabschnitt enthalten sein können. Der Kopfabschnitt 32 enthält ein Typenfeld 40, das den Typ des Pakets beschreibt. In einem System können mehrere Typen von Paketen vorhanden sein, wie etwa ein Befehlspaket, ein Anforderungspaket, ein Datenpaket und Unterbrechungspakete. Verschiedene Pakettypen werden später genauer beschrieben.
  • Der Kopfabschnitt 32 kann außerdem ein Größenfeld 42 aufweisen, das die Größe des Kopfabschnitts des Pakets angibt. Das Feld wird verwendet, wenn der Kopfabschnitt eine veränderliche Größe besitzt. Die Felder 44 werden verwendet, um Leitinformationen zum Übertragen des Pakets durch ein hierarchisches Leitnetz anzugeben. In einigen Ausführungsformen können diese Daten lediglich eine Zieladresse sein. In einer Ausführungsform, die in 2 gezeigt ist, enthalten die Leitinformationen ein Zielkennungsfeld 46, das die Anzahl von Ebenen in einer Verbindungsadressen-Hierarchie angibt, durch die das Paket gelenkt wird. Das Feld bezieht sich auf die Anzahl von Zielfeldern 48, die gültige Zieladressen enthalten. Das Zielfeld 48 gibt ein Ziel an, indem es einen Ausgangsanschluss an einer Vermittlungseinrichtung angibt, der die Daten zum Ziel lenkt. Ein Stromidentiflzierer-Feld 50 (SID-Feld) gibt einen Datenstrom an, der einer Untervorrichtung am Ziel entsprechen kann.
  • Es wird nun ein Beispiel gegeben, wie das Zielkennungsfeld und Zielfelder verwendet werden können. Bei einem Paket, das durch eine Vermittlungsvorrichtung empfangen wurde, wird das Zielkennungsfeld gelesen. Wenn das Zielkennungsfeld null ist, sind die Daten an ihrem Ziel und das Stromidentifizierer-Feld wird verwendet, um eine Untervorrichtungsadresse anzugeben. Wenn das Zielkennungsfeld nicht null ist, liest die Vorrichtung das erste Zielfeld 48, um den Ausgangsanschluss zu identifizieren, an den das Paket geleitet wird. Die Werte von den Zielfeldern werden zum benachbarten Zielfeld verschoben. Im Einzelnen werden die Inhalte von dem zweiten Zielfeld zum ersten Zielfeld verschoben. Die Inhalte vom dritten Zielfeld werden zum zweiten Zielfeld verschoben usw. Die nächste Vermittlungseinrichtung liest dann das Zielkennungsfeld und bei Bedarf das erste Zielfeld, um den Ausgangsanschluss zu bestimmen, an den das Paket geleitet wird. Schließlich werden die Zielfelder verschoben und das Zielkennungsfeld wird auf null verringert, wobei das SID-Feld an diesem Punkt das Endziel der Daten angibt.
  • Der Kopfabschnitt 32 kann außerdem durch einen hier als Zusatz-Kopfabschnitt bezeichneten Abschnitt zusätzliche Informationen enthalten. Der Zusatz-Kopfabschnitt ist als Teil des Kopfabschnitts enthalten und wird durch das Kopfabschnitt-Größenfeld 42 identifiziert. Der Zusatz-Kopfabschnitt kann außerdem ein Typenfeld enthalten, das den Typ des Zusatz-Kopfabschnitts angibt. Die Typen der Zusatz-Kopfabschnitte, die verwendet werden können, enthalten einen Paket-Deskriptor, eine höherwertige Adresse, eine niederwertige Adresse und eine Leseanforderungslänge, sind jedoch nicht auf diese beschränkt. Die Bedeutung dieser Typen wird nun genauer beschrieben.
  • Ein Zusatz-Kopfabschnitt des Typs Paket-Deskriptor ist in 3 gezeigt. Er enthält ein Typfeld 60, das den Kopfabschnitt als Paket-Deskriptor identifiziert, und ein Datengrößenfeld 62 gibt die Basisgröße oder Wortlänge des Datentransportmediums an. Die Basisgröße kann z. B. 8, 10 oder 12 Bits betragen. Ein Komponentengrößenfeld 64 gibt die Anzahl von Bits pro Komponente oder die Wortlänge der Komponentendaten an. Eine Komponente ist ein Abschnitt der Daten, die übertragen werden, wie etwa eine Luminanz-Komponente eines Bildelements von Videodaten. Wenn die Wortlänge der Komponente sich von der Wortlänge des Transportmediums unterscheidet, werden die Daten in dem Paket in Teilkomponenten und ganzzahlige Komponenten gepackt, um die Ausnutzung der Band breite und der Datenspeicherung zu verbessern. Ein Datenlängenfeld 66 beschreibt die Länge der gültigen Daten in Vielfachen der Datengröße.
  • Ein Statusfeld 65 wird außerdem bereitgestellt. Das Statusfeld 65 befördert Informationen über den Zustand des Videostroms. Die Statusinformationen können eine Angabe enthalten, dass das Paket mit der letzten Komponente der Daten endet. Mit anderen Worten, das Statusfeld enthält ein Grenzsignal. Das Statusfeld kann außerdem angeben, ob das Paket Daten des letzten Datensegments in einer angeforderten Folge enthält. Der Wert in diesem Feld kann z. B. das letzte Bild einer angeforderten Videofolge angeben. Dieses Signal wird eingeschaltet, wenn ein Bildfortschrittszähler (der in der US-Patenanmeldung Serien-Nr.08/879.981 beschrieben ist) abgelaufen ist. Die Verwendung des Bildfortschrittszählers in einem paketgestützten System wird später genauer beschrieben. Das Grenzsignal wird für ein einzelnes Paket eingeschaltet, wenn das Signal des letzten Bilds für mehrere Pakete eingeschaltet wird.
  • Ein Beispiel eines Zusatz-Kopfabschnitts, der Adressen enthält, wird nun in Verbindung mit 4 beschrieben. Als Beispiel liefert der Zusatz-Kopfabschnitt der niederwertigen Adresse 28 Bits der Adressinformationen, die durch das Bezugszeichen 70 angegeben sind. Wenn ein größerer Adressraum verwendet wird, kann der Zusatz-Kopfabschnitt der höherwertigen Adresse verwendet werden, der durch das Bezugszeichen 72 angegeben ist. Durch Kombinieren der höherwertigen und der niederwertigen Adressen kann z. B. durch Verwendung von 56 Bits eine größere Speichergröße adressiert werden. Der niederwertige Zusatz-Kopfabschnitt besitzt ein Typfeld 74; der Zusatz-Kopfabschnitt der höherwertigen Adresse besitzt außerdem ein Typfeld 76.
  • Der Zusatz-Kopfabschnitt der Leseanforderungslänge besitzt einen Aufbau, der dem des Zusatz-Kopfabschnitts der niederwertigen Adresse ähnlich ist, und besitzt ein eindeutiges Typfeld. Dieser Zusatz-Kopfabschnitt wird bei einem Leseanforderungspaket verwendet, das später genauer beschrieben wird. Dieser Zusatz-Kopfabschnitt gibt dem Empfänger des Pakets an, wie viele Datenbytes durch eine andere Vorrichtung, d. h. den Absender des Anforderungspakets angefordert werden.
  • Nach der Beschreibung des Paket-Kopfabschnitts wird nun der Paketkörper beschrieben. Der Paketdatenabschnitt wird im Allgemeinen für Befehlspakete und Datenpakete verwendet. Diese Arten von Paketen werden später genauer beschrieben. Die Paketdaten 34 (1) können jede Länge besitzen, sie können jedoch in einem System durch Hardware-Einschränkungen begrenzt sein. Der Datenabschnitt wird im Allgemeinen an Bytegrenzen beibehalten und Daten können aufgefüllt sein, damit diese Einschränkung der Ausrichtung erfüllt wird. Eine derartige Ausrichtung verringert die Komplexität in Datenleitvorrichtungen.
  • Es werden nun verschiedene Typen von Paketen genauer beschrieben.
  • Ein Muster-Datenpaket ist in 5 gezeigt. Dieses Datenpaket enthält einen Kopfabschnitt 80 mit einen Kopfabschnitt 82 und einem Zusatz-Kopfabschnitt 84. Daten sind durch das Bezugszeichen 86 angegeben. Ein Paket-Endabschnitt ist durch das Bezugszeichen 88 angegeben. Es sollte klar sein, dass dieses Muster-Paket einen kurzen Datenabschnitt 86 aufweist, da es ein Anschauungsbeispiel ist. In echten Systemen sind Pakete im Allgemeinen viel größer. Der Endabschnitt 88 enthält ein Reservefeld 90 und ein Prüfsummenfeld 92. Der Prüfsummenwert 92 im Endabschnitt 88 wird durch Addieren von Bytes des Kopfabschnitts, der Zusatz-Kopfabschnitte der Daten und des Reservefelds des Endabschnitts berechnet.
  • Das Datenfeld 86 enthält gepackte Daten mit ganzzahligen Abschnitten 90 und Teilabschnitten 92. Zwei Bytes sind zum Auffüllen vorgesehen, wie durch das Bezugszeichen 94 angegeben ist. Die Daten in dem Paket können unvollständige Daten enthalten, wenn unter den Paketen eine Reihenfolge eingehalten wird. Bei diesen Paketformaten können die Daten SMPTE-konform oder nicht SMPTEkonform sein. Bei SMPTE-konformen Daten können die Daten nicht 0 × 00 oder 0 × ff sein. Demzufolge besitzen 8 Bit-Daten auf einer 10 Bit-Verbindungsleitung die Bits "01" vor den Kopfabschnitt- und Endabschnitt-Daten und die Bits "00" nach den Komponenten- und Alpha-Daten. Nicht SMPTE-konformen Daten in einem Datenabschnitt eines Pakets ist "01" vorangestellt.
  • Der Fluss von Datenpaketen von einem Absender zu einem Empfänger wird in der Weise gesteuert, die dem Flusssteuerungsmechanismus ähnlich ist, der in der US-Patentanmeldung Serien-Nr. 08/879.981 enthalten ist. Mit anderen Worten, eine sendende Vorrichtung sendet Daten in Antwort auf eine Datenanforderung vom Empfänger. Beim Paketprotokoll wird ein Anforderungspaket verwendet, um die Datenanforderung vom Empfänger zu befördern. Das Anforderungspaket ist eine Anforderung von mehreren Paketen, die an einer festgelegten Adresse beginnen können. Das Anforderungspaket kann außerdem Daten zur Verwendung bei der Steuerung der Rate, bei der die Pakete gesendet werden, enthalten. Ein Muster-Anforderungspaket ist in 6 gezeigt.
  • In 6 enthält das Anforderungspaket einen Kopfabschnitt 100, der oben beschrieben wurde. Der Zusatz-Kopfabschnitt 102 der Leseanforderungslänge identifiziert die Anzahl der Bytes, die angefordert werden. Wenn eine Vorrichtung einen Speicher enthält, können Adressen-Zusatzfelder 104 und 106 verwendet werden, um Daten von einer bekannten Adresse in der Vorrichtung anzufordern. Ein Endabschnitt 108 eines Anforderungspakets enthält ein Paket-Ratenfeld 110 und ein Paket-Prüfsummenfeld 112. Das Prüfsummenfeld 112 ist eine Summe aller Komponenten des Pakets. Bei Systemen, in denen Daten bei veränderlichen Raten zwischen Absendern und Empfängern übertragen werden, z. B. Datenfluss-Systemen, besteht eine Möglichkeit der Auslastung der Verbindungsleitung durch eine einzelne Vorrichtung. Um dieses Problem zu bewältigen, wird das Paket-Ratenfeld 110 verwendet, um die Rate der Daten zu steuern, die zwischen den Vorrichtungen, die eine Verbindungsleitung gemeinsam verwenden, fließen, um deren Verwendung der Verbindungsleitung festzulegen. Ein Absender auf der gemeinsam verwendeten Verbindungsleitung empfängt ein Anforderungspaket von einem Empfänger, das eine Paketrate für diesen Absender festlegt. Ein Absender besitzt einen Zähler, der anfangs mit der Paketrate geladen wird. Dieser Zähler wird auf die Komponentenrate des Systems verringert, wie etwa auf 27 MHz für ein standardmäßig definiertes fernsehgestütztes System. Wenn der Zähler einen Endstand erreicht, wird ein Datenpaket durch den Absender gesendet. Der Zähler wird auf den letzten Wert der Paketrate erneut initialisiert, wenn kein neues Anforderungspaket mit einem neuen Wert der Paketrate empfangen wurde. Als Beispiel kann in einem System, das Pakete mit 128 Komponenten bei einer Datenrate von 27 MHz verwendet, das Paketratenfeld auf einen Wert von 128 gesetzt werden. Die Kombination aus Anforderungspaket und Datenpaket ermöglicht, dass der Datenfluss zwischen Vorrichtungen gesteuert werden kann. Bei einem paketgestützten Flusssteuerungsmechanismus löst das Anforderungspaket die Übertragung von Daten von einem Absender aus, diese Anforderung ist jedoch im Allgemeinen widerrufbar. Im Unterschied dazu kann bei einer Verbindungsleitung mit Flusssteuerung auf Hardwareebene das Abschalten eines Anforderungssignals die Fähigkeit eines Absenders zur Datenübertragung beenden, bevor Daten übertragen wurden.
  • Ein weiterer Typ des Pakets ist ein Befehlspaket, das in 7 gezeigt ist. Das Befehlspaket kann verwendet werden, um Befehlsdaten über das System zu übertragen, jedoch anders als Daten, die verarbeiten werden müssen. Der Inhalt eines Befehlspakets kann für alle Vorrichtungen, mit Ausnahme der empfangenden Vorrichtung, transparent oder irrelevant sein. Ein Befehlspaket 120 besitzt einen Kopfabschnitt 122, einen Zusatz-Kopfabschnitt 124, Befehlsdaten 126 und einen Endabschnitt 128. Die Kopfabschnitte sind in dem oben in Verbindung mit 2 beschriebenen Format. Ein Zusatz-Kopfabschnitt 124 der Art Paket-Deskriptor wird verwendet, um die Anzahl der Bytes der Befehlsdaten in dem Datenabschnitt 126 anzugeben. Der Paket-Endabschnitt 128 enthält ein Prüfsummenfeld 130. Das Prüfsummenfeld kann sich in der gleichen Position befinden und kann in den verschiedenen Typen von Paketen dieselbe Wortlänge besitzen, um die Verarbeitung der Pakettypen durch verschiedene Vorrichtungen zu vereinfachen. Die Wortlänge des Prüfsummenwerts ist durch die Wortlängen des Transportmediums definiert.
  • Ein weiterer Pakettyp ist ein Unterbrechungspaket. Unterbrechungstypen enthalten adressierte Unterbrechungen und Sendeunterbrechungen. Es werden nun Unterbrechungspakete in Verbindung mit 8 beschrieben. Ein adressiertes Unterbrechungspaket wird verwendet, um eine Unterbrechung an eine bestimmte Vorrichtung zu richten. Sendeunterbrechungspakete sind systemdefinierte globale Unterbrechungen, die an alle Vorrichtungen in einem System gesendet werden. Der Typ des Unterbrechungspakets ist durch das Typfeld 40 und seinen Kopfabschnitt 140 festgelegt. Das Unterbrechungspaket enthält außerdem einen Endabschnitt 142 und keinen Datenabschnitt. Der Kopfabschnitt leitet die Unterbrechung zum Ziel in der gleichen Weise wie bei anderen Typen von Paketen. Der Endabschnitt besitzt ein Unterbrechungsfeld 144, das eine Unterbrechungszahl festlegt. Ein Rückkehrweg zur Quelle des Unterbrechungspakets wird außerdem durch ein Quellenkennungsfeld 146, den Unterbrechungsidentifizierer 148 und Quellenfelder 150 bereitgestellt. Die Verwendung der Felder 146, 148 und 150 ist gleich der Verwendung der Felder 46, 48 und 50 eines Paket-Kopfabschnitts (siehe 2). Ein weiterer Unterschied zwischen adressierten Unterbrechungspaketen und Sendeunterbrechungspaketen ist die Bedeutung des Unterbrechungswerts 144. Eine adressierte Unterbrechung besitzt eine Signifikanz für den Absender und den Empfänger der Unterbrechung. Die Vorrichtung, die die Unterbrechung empfängt, identifiziert des Typ der Vorrichtung an der Rück sprungsadresse und interpretiert die Unterbrechung dementsprechend. Adressierte Unterbrechungen werden im Allgemeinen an Vorrichtungen gesendet, die Verarbeitungselemente enthalten, die sie interpretieren können. Im Unterschied dazu kann jede Leitvorrichtung im System eine Sende-Unterbrechung erkennen und an alle angeschlossenen Vorrichtungen übertragen. Die Zieladresse im Kopfabschnitt ist die Adresse der Vorrichtung, die den Hostrechner unterbrechen soll. Ein Quellenrücksprungweg ist in Bezug auf die Vorrichtung, die als Ziel adressiert ist, definiert. Beispielhafte Unterbrechungen des Sendetyps enthalten ein Unterbrechungsfreigabesignal, Halt-, Systemrücksetz-, Paketprüfsummen- und Formatfehler-, Paritätsfehler- und Neusynchronisationsbefehle. Weitere Unterbrechungen können außerdem definiert sein.
  • Das oben definierte Paketprotokoll und Variationen davon können über verschiedene Arten von Verbindungsleitungen übertragen werden, die komponentengestützte Flusssteuerungs-Verbindungsleitungen, zeitmultiplexierte komponentengestützte Verbindungsleitungen und verschiedene Computer-Verbindungsleitungen enthalten, die Verbindungsleitungen für periphere Komponenten (PCI), fortschrittliche Graphikanschlüsse (AGP), Faserkanäle, FireWire-Verbindungsleitungen nach IEEE-1394 sowie serielle Schnittstellen gemäß SMPTE-259M, SMPTE-291M und SMPTE-292M einschließen. Für jede dieser Arten der Schnittstellen kann ein Sende-Empfangs-Gerät vorgesehen sein. Ein Sende-Empfangs-Gerät empfängt Daten von einem Verarbeitungselement und erzeugt ein Paket in Übereinstimmung mit dem Paketprotokoll. In der umgekehrten Richtung werden die Paketprotokoll-Informationen erfasst und entfernt und die Daten werden an die Verarbeitungsvorrichtung geliefert. Die Funktionen von verschiedenen Arten der Sende-Empfangs-Geräte für die Verarbeitung von Paketen in diesem Protokoll werden nun beschrieben.
  • In 9 werden die Signale einer komponentengestützten parallelen Verbindungsleitung beschrieben. Diese Verbindungsleitung enthält einen Referenztakt 160, Daten 162, ein optionales Signal 164 "Daten gültig", ein Signal 166 "Befehl gültig", ein Anforderungssignal 168 und ein Grenzsignal 170. Die Bedeutung und die Verwendung dieser Signale sind in der US-Patentanmeldung Nr. 08/879.981 genauer beschrieben.
  • Unter Verwendung dieser Verbindungsleitung codiert ein Sende-Empfangs-Gerät ein Paket unter Verwendung des Signals 164 "Daten gültig" und des Signals 166 "Befehl gültig". Diese beiden Signale können in Kombination vier Zustände bezeichnen, die den Wartezustand der Verbindungsleitung und das Vorhandensein des Kopfabschnitts, der Daten und des Endabschnitts angeben. In dieser Ausführungsform könnte die Niederpegel-Verbindungsleitung ihre eigene Flusssteuerung besitzen, die durch das Anforderungssignal geschaffen wird, der Datenfluss zwischen Empfänger und Sender könnte jedoch außerdem durch die Anforderungspakete und die Datenpakete gesteuert werden, die zwischen ihnen ausgetauscht werden. Für diesen Zweck wären Duplex-Verbindungsleitungen vorgesehen. In dem in 9 gezeigten Beispiel stellen "Daten 0" und "Daten 1" einen Kopfabschnitt dar, "Daten 2" sind Paketdaten. "Daten 3" sind der Paket-Endabschnitt. Die restlichen Taktzyklen würden ungültige Daten auf dem Datenbus angeben.
  • Bei der Art der Codierung eines Pakets, die in 9 gezeigt ist, können Pakete in einfacher Weise über eine Signal-Verbindungsleitung zeitmultiplexiert werden. Die Zeitmultiplexierung kann paketweise ausgeführt werden, d. h. indem für jedes Paket ein Kanal vorhanden ist.
  • Bei jeder Verbindungsleitung kann von der Verbindungsleitung ein Grenzsignal weggelassen werden, da das Paket eine Anzeige der Grenze der Daten enthält. Außerdem können an Stelle eines verschachtelten Formats nacheinander zwei Pakete über die Verbindungsleitung gesendet werden.
  • Um die Echtzeit-Funktionsweise eines Systems, das Pakete verwendet, sicherzustellen, sollte die Schnittstelle bei einer Rate getaktet werden, die schneller als die Bandbreite einer Schnittstelle ist.
  • Paketdaten können außerdem an Stelle von flussgesteuerten Verbindungsleitungen über Standard-Computer- und Video-Verbindungsleitungen übertragen werden, wie oben erwähnt wurde. Bei paketgestützten Verbindungsleitungen, wie etwa FireWire nach IEEE-1394, Faserkanal oder Netze mit asynchronem Übertragungsmodus, sind die Pakete in diesem Paketprotokoll einfach Daten in Paketen des verwendeten Netzprotokolls. Bei weiteren Computerverbindungsleitungen, wie etwa ein Bus der Verbindungsleitung peripherer Komponenten (PCI), ein Bus des fortschrittlichen Graphikanschlusses (AGP) oder ein anderer Bus, sowie lokale Netze, die nicht paketgestützt sind, können die Pakete direkt durch die Verarbeitungselemente verarbeitet werden, die die Pakete senden und empfangen. Eine Verarbeitungsvorrichtung, die einer derartige Schnittstelle zugeordnet ist, liefert einen neuen Kopfabschnitt, der die Leitinformationen enthält, um einen verarbeiteten Videostrom zu seinem richtigen Ziel zu senden.
  • 10A veranschaulicht ein Paket-Sende-Empfangs-Gerät 300, das so geschaltet ist, dass es Daten von einer oder von mehreren Vorrichtungen 302 empfängt. Die Verbindung mit dem Bezugszeichen 304 kann eine direkte Datenverbindung sein, über die der Datenfluss durch ein Protokoll gesteuert wird. Das Sende-Empfangs-Gerät 300 ist außerdem über einen ähnlichen Anschluss 308 mit einer oder mit mehreren Vorrichtungen 306 verbunden. Das Sende-Empfangs-Gerät 300 sendet Daten an die Vorrichtungen 306. Die Anschlüsse 304 und 308 sind durch einen dynamisch konfigurierten Schalter 310 verbunden, der unter Verfahren der obenbeschriebenen Verfahren konfiguriert werden kann. Der Schalter 310 kann die Vorrichtungen 302 entweder mit den Vorrichtungen 306 oder mit dem Sende-Empfangs-Gerät 300 verbinden. Für jeden Anschluss des Sende-Empfangs-Geräts 300, der Daten von einer Vorrichtung 302 empfangen kann, besitzt das Sende-Empfangs-Gerät 300 einen Sendepuffer 312, der als ein FIFO-Puffer konfiguriert sein kann. Wenn der FIFO-Puffer 312 voll ist, wird ein Signal durch die Anforderungslogik 314 erzeugt, die ein Anforderungssignal an die Vorrichtung 302 ausgibt. Das Sende-Empfangs-Gerät 300 kann gleichfalls Daten an die Vorrichtung 306 senden, indem Daten von einem Empfangspuffer 316 gesendet werden, der als ein FIFO-Puffer implementiert sein kann. Ein Anforderungssignal von der Vorrichtung 306 wird durch die Anforderungslogik 314 verarbeitet, um einen Lesebefehl an den Empfangspuffer 316 auszugeben. Weitere ähnliche Sendepuffer und Empfangspuffer (die nicht gezeigt sind), die weiteren ähnlichen Vorrichtungen entsprechen, sind durch Schalter 320 bzw. 322 verbunden.
  • Der Datenfluss zwischen Vorrichtungen 306 und 302 und dem Sende-Empfangs-Gerät 300 wird durch den Zustand der FIFO-Puffer 312 und 316 geregelt. Das Sende-Empfangs-Gerät 300 versucht, einen konstanten Datenfluss zwischen den FIFO-Puffern 312 und 316 und den Vorrichtungen 302 und 306 aufrechtzuerhalten, indem an weitere Vorrichtungen Anforderungspakete ausgegeben werden oder indem Daten in Antwort auf Anforderungen von anderen Vorrichtungen gesendet werden, wenn Daten zur Verfügung stehen.
  • Um Daten von der Vorrichtung 302 über das Sende-Empfangs-Gerät 300 zu senden, wenn Daten im Puffer 312 verfügbar sind, wird ein Paketbereitsignal an die Paketsendelogik 324 gesendet. Die Paketsendelogik 324 liefert ein Datenbereitsignal 326 an die Schalterwähleinrichtung 328. Wenn eine Berechtigung für die Übertragung von Daten für diesen Kanal besteht, stellt die Schalterwähleinrichtung 328 den Zustand des Schalters 320 ein und sendet ein Sendedatensignal 330 an die Paketsendelogik 324. Die Paketsendelogik 324 weist wiederum den FIFO-Puffer 312 an, Daten zu lesen, die an eine Paketpackeinrichtung 332 übertragen werden. Die Paketpackeinrichtung 332 bildet die Daten zu einem Paket und liefert es an einen Puffer 334, der das Paket ausgibt. Der Paketpuffer 334 kann ein Doppelpuffer sein, um die Paketübertragung mit der Paketbildung zu überlappen. Jeder Anschluss, z. B. 304 und 308, besitzt einen eindeutigen Stromidentifizierer (SID), der ihm zugeordnet ist. Daten und Datenanforderungen werden an die Anschlüsse gerichtet, die durch den SID identifiziert sind. Der SID kann außerdem verwendet werden, um einen Paketkontext zu identifizieren, der für jeden Strom bereitgestellt wird und durch das Bezugszeichen 336 angegeben ist. Der Paketkontext 336 wird beim Aufbau der Paketkopfabschnitte, die die Zieladressierung, den Stromidentifizierer usw. enthalten, verwendet.
  • Die Übertragung von Daten von einer Vorrichtung 302 wird in Antwort auf ein Anforderungspaket, das durch das Sende-Empfangs-Gerät 300 empfangen wird, ausgeführt. Das Paket wird in einem Puffer 338 empfangen, der ebenfalls als ein Doppelpuffer implementiert sein kann. Der Stromidentifizierer in einem Paket wird durch die Stromauswahlschaltung 340 verwendet, um unter Verwendung des Schalters 322 eine Vorrichtung 306 auszuwählen. Die Paketentpackeinrichtung 342 wandelt den Kopfabschnitt und die Datenabschnitte des Pakets in ein Anforderungssignal 344 bzw. Daten 346 um. Das Anforderungssignal 344 wird an die Schalterwähleinrichtung 328 geliefert, um ein Sendedatensignal 330 an den angegebenen Kanal zu erzeugen. Wenn Daten empfangen werden, erzeugt die Paketanforderungslogik 348 eine Paketanforderung 350, wenn der FIFO-Puffer 316 nicht voll ist. Das Paketanforderungssignal 350 fordert die Schalterwähleinrichtung 328 auf, eine Sendepaketanforderung 352 an die Paketpackeinrichtung 332 auszugeben. Das Sende-Empfangs-Gerät 300 kann außerdem verwendet werden, um Befehlspakete in Antwort auf Befehlsdaten zu erzeugen.
  • Die Rate, bei der Daten durch das Sende-Empfangs-Gerät 300 gesendet werden, kann außerdem in Antwort auf einen Paketraten-Steuerwert, der in einer Anforderung für Daten identifiziert wird, gesteuert werden. Der Paketraten-Steuerwert kann durch das Anforderungssignal 344 an die Schalterwähleinrichtung 328 ge liefert werden. Die Schalterwähleinrichtung 328 enthält, wie oben beschrieben wurde, einen Zähler, der die Rate steuert, bei der Pakete durch die Paketpackeinrichtung 332 ausgegeben werden.
  • 10B veranschaulicht eine beispielhafte Verbindungsleitung der Vorrichtungen unter Verwendung von Sende-Empfangs-Geräten, wie etwa das Sende-Empfangs-Gerät 300 von 10A. In diesem Beispiel ist das System 400 mit dem System 402 durch eine Paketprotokoll-Verbindungsleitung 404 verbunden. Die Sende-Empfangs-Geräte 406 und 408 schaffen eine Verbindung zur Verbindungsleitung 404 und sind in der in 10A gezeigten Weise implementiert. Das System 402 enthält Vorrichtungen 410, 412, 414 und 416, die in derselben Weise mit dem Sende-Empfangs-Gerät 408 verbunden sind wie die Vorrichtungen 302 und 304 in 10A mit dem Sende-Empfangs-Gerät 300 verbunden sind. Die Vorrichtungen 418, 420, 422 und 424 sind in ähnlicher Weise mit dem Sende-Empfangs-Gerät 406 verbunden. Die Vorrichtung 420 ist eine zeitmultiplexierte Schnittstelle, die zwei Vorrichtungen 426 und 428 mit dem Sende-Empfangs-Gerät 406 verbindet. Datenströme in dem System können unter Verwendung der Sende-Empfangs-Geräte 406 und 408 zwischen Vorrichtungen und sogar zwischen Vorrichtungen in demselben System geleitet werden, da die Sende-Empfangs-Geräte 406 und 408 einen dynamisch konfigurierten Schalter 310 (10A) enthalten. Außer der Vermittlung zwischen Vorrichtungen ermöglicht dieser Sende-Empfangs-Geräteschalter die Erzeugung von mehreren Stromkopien aus einem einzelnen Datenstrom.
  • Ein weiteres beispielhaftes System ist in 10C gezeigt. In 10C sind die Systeme 450 und 452 durch eine Paketprotokoll-Schnittstelle 454 miteinander verbunden. Die Verbindung wird durch Sende-Empfangs-Geräte 456 und 458 geschaffen, die unter Verwendung des in 10A gezeigten Sende-Empfangs-Geräts implementiert sind. Das System 452 enthält eine erste Vorrichtung 460, die drei Datenkanäle verwendet, die mit dem Sende-Empfangs-Gerät 458 verbunden sind. Eine derartige Vorrichtung kann eine hochauflösende Fernsehvorrichtung (HDTV) sein, die einen 4 : 2 : 2-Videokanal und einen Alphakanal verwendet. Eine ähnliche Vorrichtung 462 ist im System 450 vorhanden. Die Vorrichtung 464 verwendet einen Kanal und kann ein Fernsehsignal mit Standardauflösung (SDTV) liefern, das einen 4 : 4 : 4 : 4-Videokanal und einen Alphakanal definiert. Eine ähnliche Vorrichtung 466 ist im System 450 gezeigt. In dieser Ausführungsform kombiniert das Sende-Empfangs-Gerät 456 mehrere Eingangsströme, z. B. von den Vorrichtungen 462 und 460 zu einer einzelnen schnellen Verbindung 454. Der einzelne Datenstrom von der Verbindung 454 wird in mehrere Ströme an die Vorrichtungen 460, 462, 464 und 466 unterteilt. Diese Möglichkeit ist nützlich, wenn Datenströme übertragen werden, die bei einer Rate betrieben werden, die über der Rate eines einzelnen Anschlusses liegt.
  • Bei diesen Ausführungsformen ermöglicht die Kombination einer FIFO-Puffers und Flusssteuerungsprotokollen für jeden Anschluss an dem Sende-Empfangs-Gerät, dass das Sende-Empfangs-Gerät den maximalen Datendurchsatz aufrechterhält, wenn Vorrichtungen über eine Paketprotokoll-Schnittstelle, z. B. die Schnittstelle 454 und das Sende-Empfangs-Gerät verbunden werden. Der hohe Durchsatz und eine effektive Verbindungsausnutzung werden bei einem flexiblen Leitverfahren geschaffen.
  • Ein Vorteil dieses Protokolls wird in Verbindung mit 11 veranschaulicht. In 11 enthält ein erstes Computersystem 200 eine Hostrechner-CPU 202, die an eine PCI-Hostrechner-Brücke 204 angeschlossen ist, die wiederum an zwei Hostrechner-Busse 206 und 208 angeschlossen ist. Die PCI-Brücke verbindet außerdem die Hostrechner-CPU 202 mit dem Hostrechner- und Systemspeicher 210 und über einen AGP-Bus mit einem graphischen Untersystem 212. An den ersten PCI-Bus 206 sind eine Plattenanordnung 214 und ein Videountersystem 216 angeschlossen. Eine Systemplatte 218 und eine LAN-Schnittstelle 220 (Lokalnetz-Schnittstelle) sind außerdem an den zweiten PCI-Bus 208 angeschlossen. Die LAN-Schnittstelle verbindet das System 200 mit anderen Computersystemen 222, 224 und 226. Das erste Computersystem 200 besitzt eine Schnittstelle 228 gemäß IEEE-1394, die mit ähnlichen Schnittstellen im System 224 und im System 226 verbindet. Die Systeme 224 und 226 sind an eine ähnliche Schnittstelle im System 222 angeschlossen. Bei diesem System ist das Computersystem 222 nicht direkt über eine Schnittstelle gemäß IEEE-1394 mit dem System 200 verbunden. Unter Verwendung eines Paketprotokolls kann jedoch das Computersystem 200 Daten über seine Schnittstelle 228 gemäß IEEE-1394 zum System 224 leiten, das wiederum die Daten an das System 222 senden kann. Das System 222 kann die Daten verarbeiten und die Daten über das System 226 oder 224 an das System 200 zurückgeben.
  • Das Schicken von Paketen über verschiedene Computerverbindungsleitungen mit diesem Paketprotokoll ermöglicht demzufolge, dass lenkbare Videoströme schnell in Standard-Computerumgebungen und aus diesen heraus geschickt werden können. Ein Videountersystem kann somit eine geeignete Umgebung besitzen, um mit Videoanwendungen, die auf dem Host-Verarbeitungscomputer und auf anderen Computern im System laufen, in Wechselwirkung zu treten. Somit kann nun ein Computer in einem Mehrcomputersystem in einer viel größeren Mehrsystemumgebung als ein Videoverarbeitungsknoten verwendet werden. Zum Beispiel können die Leitinformationen, die in dem Paket verfügbar sind, verwendet werden, um Videodaten an eine bestimmte Verarbeitungs- oder Hardwarekomponente in einem fernen Verarbeitungsknoten zu schicken. Ein Flusssteuerungskanal unter den Komponenten, der z. B. durch die LAN-Schnittstellen 220 bereitgestellt wird, ermöglicht, dass eine derartige Lenkung asynchron ausgeführt wird, so dass die zeitliche Beziehung zwischen den mehreren Strömen aufrechterhalten und in einem großen System durchgehend gesteuert werden kann.
  • Daten können außerdem über Standard-Videoverbindungsleitungen, wie etwa eine serielle Schnittstelle SMPTE-259M oder eine serielle Schnittstelle SMPTE-292M, übertragen werden. Eine serielle Standard-Schnittstelle kann außerdem verwendet werden. Wie in 12 gezeigt ist, kann z. B. ein erstes System 240 unter Verwendung von Videoverbindungsleitungen 244 und 246 mit einem zweiten System 242 verbunden sein. Diese Verbindungsleitungen können Daten über Schnittstellen 256, 258, 260 und 262 an Videovorrichtungen 248, 250, 252 und 254 liefern. Da diese Standard-Videoverbindungsleitungen Daten trunkieren können oder nach Markercodes suchen können, können Vorrichtungen an jedem Ende einer Schnittstelle so modifiziert werden, dass sie Pakete verarbeiten, bevor der Strom trunkiert oder gemäß dem Standard modifiziert wird. Bei diesen Ausführungsformen können die Pakete in diesem Protokoll in dem Datenformat, das durch die Standards verwendet wird, eingebettet sein. Im Einzelnen wird ein Bild aus Videodaten, die über die seriellen Verbindungsleitungen übertragen werden, durch den SMPTE-Standard 125M-1996 festgelegt. Es wird erwartet, dass Zusatz-Datenfelder dem SMPTE-Standard 291M-1996 entsprechen. Bei diesen Formaten gibt es ein vertikales Zusatz-Datenfeld, ein optionales vertikales Zusatzfeld, aktive Video- und horizontale Zusatz-Datenfelder für jedes Feld eines Bilds aus verschachtelten Videodaten. Für einen kontinuierlichen Transport des Videos werden die aktiven Videodaten und die Zusatzdaten dieses Paketprotokolls auf die aktiven Abschnitte und die Zusatzabschnitte des seriellen digitalen Schnittstellenprotokolls ausgerichtet. Für den gleichzeitigen Transport von Paketen können Daten ungeachtet des Datentyps sowohl in den aktiven Videoabschnitten als auch Zusatz-Datenabschnitten angeordnet werden. Die gleichzeitige Übertragung kann außerdem verwendet werden, um Daten mit höherer Auflösung bei Nicht-Echtzeit-Raten zu transportieren, wie etwa für HDTV oder für die Film-Editierung. Beide Verbindungsleitungen werden verwendet, um eine Flussteuerung zu schaffen, z. B. damit das System 242 Anforderungspakete an das System 240 sendet und Datenpakete vom System 240 empfängt.
  • Wenn kontinuierliche Daten gesendet werden, werden die aktiven Videokomponenten sowohl horizontal als auch vertikal auf das Videobild ausgerichtet. Die Videopakete sind eine Abtastzeile oder sind in 1440 Komponenten enthalten. Der Kopfabschnitt für das Videopaket wird für eine vorgegebene Zeile durch die letzten Daten in einem horizontalen Zusatz-Datenfeld (HANC) dargestellt. Der Endabschnitt für das Videopaket wird durch die ersten Daten in dem HANC-Datenfeld für die vorherige Zeile als Videodaten angegeben. Kleinere Pakete können zwischen die Zeile n und den Kopfabschnitt für die Zeile n + 1 im gleichen HANC-Datenfeld eingeschoben werden. Diese Pakete können entweder Befehlsdaten oder echte Zusatzdaten enthalten. Der Kopfabschnitt, der Endabschnitt und die dazwischenliegenden Pakete können sich in einem 291M-Paket befinden oder es können mehrere 291M-Pakete verwendet werden.
  • Zum Beispiel kann der HANC-Abschnitt einer Abtastzeile den Paket-Endabschnitt für das Paket, das in der vorherigen Abtastzeile gesendet wurde, und den Paket-Kopfabschnitt für die momentane Abtastzeile enthalten. Das gesamte HANC-Datenfeld ist durch ein einzelnes SMPTE 291M-Paket belegt.
  • Die Felder "Ende des aktiven Videos" (EAV) und "Beginn des aktiven Videos" (SAV) sind in SMPTE 294M festgelegt und enthalten vier Codeworte: ein Wort für alle Einsen (0 × 3ff), zwei Worte für alle Nullen (0 × 000) und ein Codewort, das F, V, H (Feld, Vertikal, Horizontal), P3, P2, P1 und P0 (Paritätsbits) enthält. Der Zusatzdaten-Kopfabschnitt ist in SMPTE 125M in den Abschnitten 3.6.1 und 3.6.2 definiert. Er ist als ein aus drei Worten bestehender Kopfabschnitt definiert, wobei das erste Wort alle Nullen darstellt und die nächsten beiden Worte alle Einsen darstellen. Dieser Kopfabschnitt wird verwendet, um die Erfassungsschaltung über das Vorhandensein von Zusatzdaten zu informieren.
  • Das Zusatzdaten-Paketprotokoll ist in SMPTE 291M definiert. Der Kopfabschnitt enthält drei Worte. Die oberen 8 Bits (9 : 2) jedes Worts definieren den Kopfabschnitt. Das erste Wort ist der Datenidentifizierer (DID). Der DID ist einer von zwei Typen. Typ 1 gibt an, dass das nächste Byte als eine Datenblocknummer (DBN) interpretiert werden sollte. Typ 2 gibt an, dass das nächste Wort eine Erweiterung des DID-Felds ist. Die DIDs von 0 × 00 bis 0 × ff werden verwendet, um den Typ 1 anzugeben. 0 × 01 bis 0 × 7f werden verwendet, um den Typ 2 anzugeben. 0 × 00 ist der nicht definierte Datenidentifizierer und kann verwendet werden. Das zweite Wort für einen Kopfabschnitt Typ 1 ist die DBN. Die DBN ist im Abschnitt 3.9 der 291 M-Spezifikation definiert und ist ein Paketzähler, der für jedes Feld bei null beginnt und erhöht wird, wenn ein Paket von diesem DID vorhanden ist. Die DBN schlägt um, wenn mehr als 255 Pakete in einem Bild vorhanden sind. Das dritte Feld ist der Datenzähler (DC). Er ist ein Zähler der Anzahl von Komponenten, die in den Zusatzdaten vorhanden sind. Da der Kopfabschnitt eine 8 Bit-Entität ist (mit 2 Paritätsbits bei 10 Bit-Anwendungen), beträgt die maximale Anzahl von Komponenten in einem Paket 255. Der DC ist im Abschnitt 3.10 der 291M-Spezifikation definiert.
  • 291M-Paketen folgt eine Prüfsumme. Diese Prüfsumme ist im Abschnitt 3.12 der 291M-Spezifikation definiert. Bei 10 Bit-Anwendungen ist sie als eine 9 Bit-Prüfsumme aller Komponenten des Pakets einschließlich Kopfabschnitt definiert. Die Bits 8 : 0 enthalten die Prüfsumme und Bit 9 ist die Umkehrung von Bit B. Diese Umkehrung verhindert, dass die Prüfsumme wie ein Markercode aussieht.
  • SMPTE 125M legt fest, dass alle Worte, die keine Zusatzdaten enthalten, auf 0 × 040 gesetzt werden müssen. Diese Fülldaten können entweder innerhalb oder außerhalb der Zusatzdaten-Pakete angeordnet werden. Wenigstens zehn Komponenten, die SMPTE 125M-Fülldaten darstellen, erscheinen nach dem Paket, da 291M-Pakete bis zu 255 Komponenten besitzen.
  • Der HANC-Abschnitt einer Abtastzeile kann einen Paket-Endabschnitt für das Paket, das in einer vorhergehenden Abtastzeile gesendet wurde, und den Paket-Kopfabschnitt für eine momentane Abtastzeile enthalten. Der Endabschnitt und der Kopfabschnitt befinden sich somit in verschiedenen 291M-Paketen. Ein Zusatzdaten-Kopfabschnitt wird vor einem Zusatzpaket-Kopfabschnitt verwendet. Die Fülldaten können bei Bedarf innerhalb der Pakete angeordnet sein.
  • Wenn echte Zusatzdaten vorhanden sind oder wenn Befehlspakete über die Verbindung gesendet werden, können kleinere Pakete in dem HANC-Feld oder größere Pakete in dem VANC-Feld angeordnet sein. Beispiele von echten Zusatzdaten sind Audioinformationen oder abgeschlossene Zwischentitelinformationen.
  • Ein Paket, das Zusatz- oder Befehlsdaten enthält, kann mit dem Kopfabschnitt und/oder dem Endabschnitt eines Pakets kombiniert sein. Obwohl das Paket in einem separaten Zusatzdaten-Paket gezeigt ist, kann das Paket entweder Teil des Pakets mit dem Kopfabschnitt oder Teil des Endabschnitts sein.
  • Sowohl SMPTE-konforme als auch nicht SMPTE-konforme Datenpakete können auf diese Weise gesendet werden. Befehlspakete sind nicht SMPTE-konform. Anforderungspakete und Unterbrechungspakete können außerdem über eine 295M-Verbindungsleitung gesendet werden.
  • Wenn die VANC-Felder für die Paketübertragung verwendet werden, sind 291M-Zusatzdaten-Pakete nicht länger als 255 Komponenten. Pakete könnten außerdem nicht mit 291M-Paketen eine Reihe bilden. Mehrere Pakete oder ein Teil eines einzelnen Pakets können in einem 291M-Paket enthalten sein. Das Videosystem kann die Paketlänge in diesen Abschnitten auswählen. Ein kürzeres Paket wird für die Übertragung während des HANC-Felds verwendet, um zu bewirken, dass es zwischen den Endabschnitt der vorherigen Zeile und den Kopfabschnitt der momentanen Zeile passt. Ein 291M-Zusatzdaten-Paket kann außerdem gemeinsam mit zehn Komponenten von 0 × 400-Fülldaten verwendet werden, um die Übertragung von vier weiteren Komponenten in dem Zusatzdaten- oder Befehlspaket zu ermöglichen.
  • Ein System kann von der Videotaktgebung in der 259M-Verbindungsleitung abweichen, solange beide Enden der Verbindungsleitung die unterschiedliche Verwendung erkennen, um die Zeilen 14 und 277 für die Datenübertragung zu nutzen. Diese Zeilen sind normalerweise für Taktdaten reserviert, die verwendet werden, um den Videostrom zu synchronisieren. Da isochrone Videodaten nicht zu einer echten Videovorrichtung gesendet werden, besteht keine Forderung nach Synchronisation der Übertragung. Für isochrone Videodaten können die Pakete jede Länge besitzen und werden durch EAV-Marker, SAV-Marker, Zusatzdaten-Kopfabschnitte, Zusatzdaten-Paketkopfabschnitte und Zusatzdaten-Paketprüfsummen unterbrochen. Diese Marker werden verwendet, um die Daten von seriellen Formaten in parallele Formate umzuwandeln.
  • Isochrone Pakete können zu den 291M-Feldern fehlausgerichtet sein. Ein Paket kann vor oder nach dem Anfang eines Felds beginnen. Ein Paket kann die Grenze zwischen dem aktiven Videofeld und dem HANC-Feld überbrücken. Wenn das gesamte HANC-Feld verwendet werden soll, werden wenigstens zwei 291M-Zusatzdatenpakete verwendet. Zehn Komponenten aus 0 × 040 können an Stelle eines zweiten Pakets als Fülldaten verwendet werden. Dieses Verfahren verringert den Umfang der Daten, die durch drei Komponenten übertragen werden.
  • Der Flusssteuerungsmechanismus für Videoverbindungsleitungen, wie etwa die 259M- und 292M-Verbindungsleitungen, ist das Anforderungspaket. Die Flusssteuerung verwendet eine bidirektionale Kommunikation. Mit anderen Worten, eine Verbindung wird verwendet, um Anforderungen an eine Videoquellenvorrichtung zu senden, und eine weitere Verbindung wird durch die Videoquellenvorrichtung verwendet, um Videodaten zu senden. Wenn zwei Systeme in einer Weise verwendet werden, bei der bidirektionaler Videoverkehr vorhanden ist, werden diese beiden Verbindungen außerdem verwendet, um Daten zu übertragen. Wenn die Flusssteuerung paketweise erfolgt, werden isochrone Videoübertragungen verwendet. Wenn die Flusssteuerung bildweise erfolgt, kann die Übertragung entweder in kontinuierlicher Form oder in isochroner Form erfolgen. Wenn die kontinuierliche Form verwendet wird, kann die Dauer eines vollständigen Bilds verloren gehen, wenn keine Daten angefordert werden.
  • Da das Paketprotokoll verwendet werden kann, um Daten und Datenfluss-Steuerungsinformationen über mehrere Verbindungsleitungen einzubetten, und Leitinformationen und Adressierungsinformationen enthalten kann, können verschiedene Mehrsystem-Topologien verwendet werden, um eine Videoverarbeitung flussgesteuert auszuführen. In dem in 10 gezeigten System kann der Videoausgang z. B. durch das System 200 geliefert werden, das auf der Verarbeitung basiert, die durch verschiedene Videoverarbeitungsvorrichtungen in den Systemen 200, 222, 224 und 226 flussgesteuert ist. Das Paketprotokoll bietet somit ein flexibles Verfahren zum Leiten von Daten zwischen Vorrichtungen. Jede Datenspeicher- und Datenverarbeitungsvorrichtung kann außerdem als eine Vermittlungseinrichtung arbeiten und kann eine Datenflusssteuerung über ihre Eingangs- und Ausgangsverbindungsleitungen implementieren.
  • Nachdem einige wenige Ausführungsformen beschrieben wurden, sollte einem Fachmann klar sein, dass das Voranstehende nur zur Veranschaulichung dient und nicht einschränkend ist und lediglich beispielhaft dargestellt wurde. Zahlreiche Modifikationen und weitere Ausführungsformen liegen im Anwendungsbereich eines Fachmanns und sollen in den Umfang der Erfindung fallen.

Claims (14)

  1. Videoverarbeitungssystem, das umfasst: eine erste Videoverarbeitungsvorrichtung umfassend: einen Eingang zum Empfangen von Anforderungspaketen, wobei ein Anforderungspaket einen Stromidentifizierer, der eine Quelle der Daten anzeigt, und einen Umfang an Daten enthält; und einen Ausgang zum Senden, in Antwort auf ein Anforderungspaket, von Datenpaketen von der Quelle der Daten zu einer zweiten Videoverarbeitungsvorrichtung, wenn Daten von der Quelle der Daten verfügbar sind, und zwar bei der ersten Videoverarbeitungsvorrichtung, und zwar gemäß dem Stromidentifizierer, und von Daten bis zu dem Umfang von Daten, der in dem Anforderungspaket enthalten ist, wobei ein Datenpaket den Stromidentifizierer enthält; wobei die zweite Videoverarbeitungsvorrichtung aufweist; einen Ausgang zum Senden eines Anforderungspakets, das den Stromidentifizierer und den Umfang an Daten enthält, zu der ersten Videoverarbeitungsvorrichtung, wenn die zweite Videoverarbeitungsvorrichtung einen Speicher hat, der für Daten für einen Strom verfügbar ist; und einen Eingang zum Empfangen von Datenpaketen von der ersten Videoverarbeitungsvorrichtung und zum Verarbeiten des Datenpakets, und zwar gemäß dem Stromidentifizierer in dem Datenpaket; und wobei die erste Videoverarbeitungsvorrichtung und die zweite Videoverarbeitungsvorrichtung durch ein Kommunikationsmedium mit einem Paketschalter verbunden sind, der Eingänge zum Empfangen von Paketen und Ausgänge zum Senden von Paketen hat, wobei Anforderungspakete von der zweiten Videoverarbeitungsvorrichtung zu der ersten Videoverarbeitungsvorrichtung geleitet werden und wobei Datenpakete von der ersten Videoverarbeitungsvorrichtung zu der zweiten Videoverarbeitungsvorrichtung geleitet werden.
  2. Videoverarbeitungssystem nach Anspruch 1, bei welchem ein Datenpaket weiter einen Grenzsignalabschnitt enthält, der ein Grenzsignal enthält, das ein Ende eines Datenabtastwerts bzw. eines Datensatzes in dem Datenpaket anzeigt.
  3. Videoverarbeitungssystem nach Anspruch 1, bei welchem die erste Videoverarbeitungsvorrichtung ein Mittel enthält, um eine Übertragung von Daten durch den Ausgang in einem Umfang zu erlauben, der kleiner oder gleich dem Umfang von Daten ist, der in dem Anforderungspaket angezeigt wird, und um Daten in einem Umfang zu halten, der größer als der Umfang von Daten ist, der in dem Anforderungspaket angezeigt wird.
  4. Videoverarbeitungsvorrichtung umfassend: einen Speicher; einen Eingang, um Anforderungspakete von einer anderen Videoverarbeitungsvorrichtung zu empfangen, wobei angezeigt wird, dass die andere Videoverarbeitungsvorrichtung dazu in der Lage ist, Daten zu empfangen, wobei ein Anforderungspaket einen Stromidentifizierer, der eine Quelle zum Lesen von Daten von dem Speicher in der Videoverarbeitungsvorrichtung anzeigt, und einen Umfang an Daten enthält; und einen Ausgang zum Senden, in Antwort eines Anforderungspakets, von Datenpaketen von der Quelle zu der anderen Videoverarbeitungsvorrichtung, wenn Daten von der Quelle verfügbar sind, wobei ein Datenpaket einen Stromidentifizierer für die andere Videoverarbeitungsvorrichtung und Daten bis zu dem Umfang an Daten enthält.
  5. Videoverarbeitungsvorrichtung nach Anspruch 4, bei welcher ein Datenpaket weiter einen Grenzsignalabschnitt enthält, der ein Grenzsignal enthält, das auf ein Ende eines Datenabtastwerts bzw. eines Datensatzes in dem Datenpaket hinweist.
  6. Videoverarbeitungsvorrichtung nach Anspruch 4, die weiter folgendes umfasst: ein Mittel, um eine Übertragung von Daten durch den Ausgang in einem Umfang zu erlauben, der weniger als oder gleich dem Umfang gültiger Daten ist, die in dem Anforderungspaket angezeigt werden, und um Daten in einem Umfang zu halten, der größer als der Umfang von gültigen Daten ist, die in dem Anforderungspaket angezeigt werden.
  7. Videoverarbeitungsvorrichtung, die folgendes umfasst: einen Speicher; einen Ausgang zum Senden eines Anforderungspakets zu einer anderen Videoverarbeitungsvorrichtung, das einen Stromidentifizierer, der wenigstens einen Abschnitt des Speichers anzeigt, und einen Umfang an Daten enthält, wenn die Videoverarbeitungsvorrichtung Raum in dem Speicher für Daten für einen Strom zur Verfügung hat; und einen Eingang zum Empfangen von Datenpaketen von der anderen Videoverarbeitungsvorrichtung und zum Verarbeiten der Datenpakete gemäß dem Stromidentifizierer in dem Datenpaket.
  8. Videoverarbeitungsvorrichtung nach Anspruch 7, bei welcher ein Datenpaket weiter einen Grenzsignalabschnitt enthält, das ein Grenzsignal enthält, das auf ein Ende eines Datenabtastwerts bzw. eines Datensatzes in dem Datenpaket hinweist.
  9. Videoverarbeitungsvorrichtung nach Anspruch 7, bei welcher ein Anforderungspaket einen Anforderungssignalabschnitt enthält, der ein Anforderungssignal von der anderen Videoverarbeitungsvorrichtung enthält, die einen Anforderung zur Übertragung eines Umfangs gültiger Daten enthält.
  10. Sende-Empfangs-Gerät zum Übertragen von Videodaten und einer Datenfluss-Steuerinformation, die ein Paketprotokoll verwendet, wobei der Sender folgendes umfasst: einen Übertragungsspeicher; einen Eingang zum Empfangen von Anforderungspaketen von einer anderen Videoverarbeitungsvorrichtung, wobei angezeigt wird, das die andere Videoverarbeitungsvorrichtung dazu in der Lage ist, Daten zu empfangen, wobei ein Anforderungspaket einen Stromidentifizierer, der eine Quelle zum Lesen von Daten von dem Übertragungsspeicher anzeigt, und einen Umfang an Daten enthält; einen Ausgang zum Senden, in Antwort auf ein Anforderungspaket, von Datenpaketen von der Quelle zu der anderen Videoverarbeitungsvorrichtung, wenn Daten von der Quelle verfügbar sind, wobei ein Datenpaket einen Stromidentifizierer für die andere Videoverarbeitungsvorrichtung und Daten bis zu dem Umfang an Daten enthält; einen Empfangsspeicher; einen Ausgang zum Senden eines Anforderungspakets zu einer anderen Videoverarbeitungsvorrichtung, das einen Stromidentifizierer, der einen Kanal zum Schreiben von Daten zu dem Empfangsspeicher anzeigt, und einen Umfang an Daten enthält, wenn die Videoverarbeitungsvorrichtung Raum in dem Empfangsspeicher für Daten für den Kanal zur Verfügung hat; und einen Eingang zum Empfangen von Datenpaketen von der anderen Videoverarbeitungsvorrichtung und zum Verarbeiten des Datenpakets gemäß dem Stromidentifizierer in dem Datenpaket, um die Daten in dem Empfangsspeicher zu speichern.
  11. Sende-Empfangs-Gerät nach Anspruch 10, das weiter folgendes umfasst: ein Mittel zum Verbinden einer ersten Vorrichtung mit dem Empfangsspeicher, um Daten von dem Empfangsspeicher zu lesen, wobei die erste Vorrichtung Anforderungssignale an das Sende-Empfangs-Gerät abgibt, und wobei das Sende-Empfangs-Gerät Daten zu der ersten Vorrichtung übertragt, wenn Daten in dem Empfangsspeicher verfügbar sind, und in Antwort auf ein Anforderungssignal von der ersten Vorrichtung.
  12. Sende-Empfangs-Gerät nach Anspruch 11, das weiter folgendes umfasst: ein Mittel zum Verbinden einer zweiten Vorrichtung mit dem Sendespeicher, um Daten in den Sendespeicher zu schreiben, wobei das Sende-Empfangs-Gerät Anforderungssignale zu der zweiten Vorrichtung ausgibt und wobei die zweite Vorrichtung Daten zu dem Sende-Empfangs-Gerät überträgt, wenn Daten in der zweiten Vorrichtung verfügbar sind, und in Antwort auf das Anforderungssignal von dem Sende-Empfangs-Gerät.
  13. Sende-Empfangs-Gerät nach Anspruch 11, bei welchem das Mittel zum Verbinden der ersten Vorrichtung mit dem Sende-Empfangs-Gerät und das Mittel zum Verbinden der zweiten Vorrichtung mit dem Sende-Empfangs-Gerät einen Durchschaltevermittler umfasst, der die erste Vorrichtung, die zweite Vorrichtung und das Sende-Empfangs-Gerät verbindet.
  14. Sende-Empfangs-Gerät nach Anspruch 10, das weiter folgendes umfasst: ein Mittel zum Verbinden einer zweiten Vorrichtung mit dem Sendespeicher, um Daten in den Sendespeicher zu schreiben, wobei das Sende-Empfangs-Gerät Anforderungssignale an die zweite Vorrichtung abgibt und wobei die zweite Vorrichtung Daten zu dem Sende-Empfangs-Gerät übertragt, wenn Daten in der zweiten Vorrichtung verfügbar sind, und in Antwort auf das Anforderungssignal von dem Sende-Empfangs-Gerät.
DE69909608T 1998-04-03 1999-03-30 Paketprotokoll zur kodierung und dekodierung von videodaten und datenflusssignalen Expired - Lifetime DE69909608T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US54864 1998-04-03
US09/054,864 US20030133448A1 (en) 1998-04-03 1998-04-03 Packet protocol for encoding and decoding video data and data flow signals and devices for implementing the packet protocol
PCT/US1999/006866 WO1999052290A1 (en) 1998-04-03 1999-03-30 A packet protocol for encoding and decoding video data and data flow signals

Publications (2)

Publication Number Publication Date
DE69909608D1 DE69909608D1 (de) 2003-08-21
DE69909608T2 true DE69909608T2 (de) 2004-04-15

Family

ID=21993999

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69909608T Expired - Lifetime DE69909608T2 (de) 1998-04-03 1999-03-30 Paketprotokoll zur kodierung und dekodierung von videodaten und datenflusssignalen

Country Status (6)

Country Link
US (1) US20030133448A1 (de)
EP (1) EP1068732B1 (de)
AU (1) AU3215699A (de)
CA (1) CA2326669C (de)
DE (1) DE69909608T2 (de)
WO (1) WO1999052290A1 (de)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7539134B1 (en) * 1999-11-16 2009-05-26 Broadcom Corporation High speed flow control methodology
US7161941B1 (en) * 2000-03-01 2007-01-09 Texas Instruments Incorporated Wireless packet communications with extended addressing capability
US20020032766A1 (en) * 2000-09-08 2002-03-14 Wei Xu Systems and methods for a packeting engine
US6980567B1 (en) * 2001-05-10 2005-12-27 Cisco Technology, Inc. Method of encoding a data packet
EP1440379A4 (de) * 2001-10-31 2008-11-05 Thomson Licensing Zulassungskontrollsystem für haus-videoserver
PL355743A1 (en) * 2002-08-28 2004-03-08 Advanced Digital Broadcast Polska Spółka z o.o. Method of data flow control in a system with packet data transmission and system for data flow control in a system with packet data tranmission
US7949777B2 (en) 2002-11-01 2011-05-24 Avid Technology, Inc. Communication protocol for controlling transfer of temporal data over a bus between devices in synchronization with a periodic reference signal
US8553716B2 (en) * 2005-04-20 2013-10-08 Jupiter Systems Audiovisual signal routing and distribution system
US20060242669A1 (en) * 2005-04-20 2006-10-26 Jupiter Systems Display node for use in an audiovisual signal routing and distribution system
US8606949B2 (en) 2005-04-20 2013-12-10 Jupiter Systems Interconnection mechanism for multiple data streams
US8547997B2 (en) * 2005-04-20 2013-10-01 Jupiter Systems Capture node for use in an audiovisual signal routing and distribution system
EP2187640A1 (de) * 2008-11-10 2010-05-19 Thomson Licensing Verfahren zum Umwandeln zwischen Zeilensprung- und Progressivvideos bei der Übertragung über ein Netzwerk
US9549197B2 (en) * 2010-08-16 2017-01-17 Dolby Laboratories Licensing Corporation Visual dynamic range timestamp to enhance data coherency and potential of metadata using delay information
US9521439B1 (en) * 2011-10-04 2016-12-13 Cisco Technology, Inc. Systems and methods for correlating multiple TCP sessions for a video transfer
US8903955B2 (en) 2011-12-02 2014-12-02 Cisco Technology, Inc. Systems and methods for intelligent video delivery and cache management
JP6291516B2 (ja) * 2016-03-18 2018-03-14 本田技研工業株式会社 リング型ネットワークを用いた通信システム
EP3443675A4 (de) * 2016-04-04 2019-11-20 Lattice Semiconductor Corporation Vorwärtsfehlerkorrektur und asymmetrische codierung einer videodatenübertragung über eine multimediaverbindung
US10033916B2 (en) * 2016-06-14 2018-07-24 Intel Corporation Transmission of image data and camera management commands
US10567847B2 (en) * 2016-10-11 2020-02-18 Disney Enterprises, Inc. Systems and methods for transporting and retaining video header information for video content
US10291814B2 (en) 2016-10-14 2019-05-14 Intel Corporation Transmission of encrypted image data

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5045940A (en) * 1989-12-22 1991-09-03 Avid Technology, Inc. Video/audio transmission systsem and method
US5241382A (en) * 1992-04-25 1993-08-31 General Instrument Corporation Digital HDTV data packet format and receiver therefor
JP3581377B2 (ja) * 1993-04-06 2004-10-27 ソニー株式会社 ディジタル多重伝送方法と装置
US5644364A (en) * 1993-04-16 1997-07-01 Avid Technology, Inc. Media pipeline with multichannel video processing and playback
US6357047B1 (en) * 1997-06-30 2002-03-12 Avid Technology, Inc. Media pipeline with multichannel video processing and playback
US5708659A (en) * 1993-10-20 1998-01-13 Lsi Logic Corporation Method for hashing in a packet network switching system
US5767912A (en) * 1993-11-30 1998-06-16 General Electric Company Datastream packet alignment indicator in a system for assembling transport data packets
JP3560614B2 (ja) * 1994-03-18 2004-09-02 アヴィッド・テクノロジー・インコーポレーテッド デジタル映像効果のリアルタイム実行に適合させた静止画像のパイプライン処理
DE69525556T2 (de) * 1994-03-21 2002-09-12 Avid Technology Inc Gerät und Verfahren ausgeführt auf einem Rechner für Echtzeit Multimedia Datenübertragung in einer verteilten Rechneranordnung
JP2987067B2 (ja) * 1994-11-14 1999-12-06 松下電器産業株式会社 動画像データ送信装置
US5742847A (en) * 1994-10-31 1998-04-21 Intel Corporation M&A for dynamically generating and maintaining frame based polling schedules for polling isochronous and asynchronous functions that guaranty latencies and bandwidths to the isochronous functions
US6567421B2 (en) * 1995-04-28 2003-05-20 Matsushita Electric Industrial Co., Ltd. Data transmitting apparatus, data receiving apparatus and data transmission control apparatus
US5838879A (en) * 1995-12-27 1998-11-17 Howard Harris Builders, Inc. Continuously cleaned pressureless water heater with immersed copper fluid coil
US6157674A (en) * 1996-03-21 2000-12-05 Sony Corporation Audio and video data transmitting apparatus, system, and method thereof
US5991842A (en) * 1996-08-27 1999-11-23 Canon Kabushiki Kaisha Communication system for providing digital data transfer, electronic equipment for transferring data using the communication system, and an interface control device
DE69636099T2 (de) * 1996-09-06 2006-11-23 Samsung Electronics Co., Ltd., Suwon Vorrichtung und Verfahren zur Umwandlung von Datentransferraten für digitale Audio- und Videodaten
JPH10154373A (ja) * 1996-09-27 1998-06-09 Sony Corp データデコードシステムおよびデータデコード方法、伝送装置および方法、並びに、受信装置および方法
JPH10224424A (ja) * 1997-02-12 1998-08-21 Matsushita Electric Ind Co Ltd データ送信装置、データ受信装置、及び媒体
JPH10254811A (ja) * 1997-03-12 1998-09-25 Sony Corp 電子機器制御装置および方法
KR100302263B1 (ko) * 1997-03-25 2001-09-22 모리시타 요이찌 스트림 데이터 전송방법 및 시스템
US6105083A (en) * 1997-06-20 2000-08-15 Avid Technology, Inc. Apparatus and method for controlling transfer of data between and processing of data by interconnected data processing elements
US6097499A (en) * 1997-11-14 2000-08-01 Lexmark International, Inc. Methods and apparatus for isochronous printing with minimal buffering
US6374336B1 (en) * 1997-12-24 2002-04-16 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6415373B1 (en) * 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6418150B1 (en) * 1998-02-20 2002-07-09 Apple Computer, Inc. Method and apparatus for calibrating an IEEE-1394 cycle master
US6226038B1 (en) * 1998-04-03 2001-05-01 Avid Technology, Inc. HDTV editing and effects previsualization using SDTV devices
US6134607A (en) * 1998-04-03 2000-10-17 Avid Technology, Inc. Method and apparatus for controlling data flow between devices connected by a memory
US6239815B1 (en) * 1998-04-03 2001-05-29 Avid Technology, Inc. Video data storage and transmission formats and apparatus and methods for processing video data in such formats
US6327253B1 (en) * 1998-04-03 2001-12-04 Avid Technology, Inc. Method and apparatus for controlling switching of connections among data processing devices
US6198477B1 (en) * 1998-04-03 2001-03-06 Avid Technology, Inc. Multistream switch-based video editing architecture
US6141691A (en) * 1998-04-03 2000-10-31 Avid Technology, Inc. Apparatus and method for controlling transfer of data between and processing of data by interconnected data processing elements

Also Published As

Publication number Publication date
AU3215699A (en) 1999-10-25
EP1068732A1 (de) 2001-01-17
DE69909608D1 (de) 2003-08-21
CA2326669A1 (en) 1999-10-14
EP1068732B1 (de) 2003-07-16
WO1999052290A1 (en) 1999-10-14
CA2326669C (en) 2007-12-11
US20030133448A1 (en) 2003-07-17

Similar Documents

Publication Publication Date Title
DE69909608T2 (de) Paketprotokoll zur kodierung und dekodierung von videodaten und datenflusssignalen
DE69933721T2 (de) DMA-Steuereinheit
EP2115948B1 (de) Verfahren und anlage zur optimierten übertragung von daten zwischen einer steuereinrichtung und mehreren feldgeräten
DE69925254T2 (de) Verfahren und vorichtung zur mediendatenübertragung
DE69920782T2 (de) Verfahren unf Vorrichtung zur bidirektionalen Datenübertragung zwischen einem IEEE1394 Bus und einem Gerät
DE69637230T2 (de) Transportkodierer für einen Paketstrom und Verfahren zu dessen Betrieb
DE69738122T2 (de) Übertragung und Empfang von Daten
DE69534094T2 (de) Gerät zum Empfang von Signalen
DE69730656T2 (de) Medienserver in dem ein SCSI-Bus eingesetzt wird und in dem eine SCSI-logische Einheit zur Differenzierung zwischen Transfer/Modi benutzt wird
EP2870749B1 (de) System und verfahren zur verarbeitung von video und/oder audiosignalen
DE69908765T2 (de) Verfahren und vorrichtung zur steuerung des datenflusses zwischen miteinander durch einen speicher verbundenen geräten
DE69531223T2 (de) Verfahren und anordnung zur datenpaketübertragung
DE60038509T2 (de) Verfahren zum bedingten zugang für digitales fernsehen und vorrichtung zur gleichzeitigen verarbeitung von mehreren fernsehprogrammen
DE102005059616A1 (de) Verfahren, Kommunikationssystem, Multimedia-Teilnehmer und Gateway zum Übertragen von im MPEG-Format vorliegenden Multimedia-Daten
DE102004015612A1 (de) Testen von Netzkommunikation
DE112006002644T5 (de) Mediendatenverarbeitung unter Verwendung von charakteristischen Elementen für Streaming- und Steuerprozesse
DE102006043413A1 (de) Hochgeschwindigkeitsschnittstellenschaltung für Halbleiterspeicherchips und ein diese enthaltendes Speichersystem
CN103907358B (zh) 用于切换实时媒体流的设备和方法
EP0843443B1 (de) Verfahren zur Übertragung von Quell- und Steuerdaten in einem Kommunikationssystem mit Ringstruktur
WO2024068438A1 (de) Betreiben eines universellen datentransportsystems
DE102005019264B4 (de) Speichersystem für Digital-Video und sich darauf beziehendes Verfahren zur Speicherung von Digital-Video-Daten
DE69729068T2 (de) Vorrichtung und Verfahren zum Übertragen von digitalen Audio- und Videodaten
JP6335913B2 (ja) 映像処理装置および同装置を操作する方法
DE60311991T2 (de) Kommunikationssystem zur sendung von ungleichartigen daten über ein synchrones netzwerk
DE69733617T2 (de) Protokoll verarbeitungsgerät für datenstromverarbeitung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition