DE60025242T2 - Verfahren und vorrichtung zur synchronisierung von aufwärtsburstübertragungen in kabelmodems - Google Patents

Verfahren und vorrichtung zur synchronisierung von aufwärtsburstübertragungen in kabelmodems Download PDF

Info

Publication number
DE60025242T2
DE60025242T2 DE60025242T DE60025242T DE60025242T2 DE 60025242 T2 DE60025242 T2 DE 60025242T2 DE 60025242 T DE60025242 T DE 60025242T DE 60025242 T DE60025242 T DE 60025242T DE 60025242 T2 DE60025242 T2 DE 60025242T2
Authority
DE
Germany
Prior art keywords
time
local
network controller
messages
transmission
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
DE60025242T
Other languages
English (en)
Other versions
DE60025242D1 (de
Inventor
Alan Brett BERNATH
John Milford Brooks
Manoj Mehta
Pesach Yoav GOLDENBERG
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.)
Entropic Communications LLC
Original Assignee
Conexant Systems LLC
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 Conexant Systems LLC filed Critical Conexant Systems LLC
Application granted granted Critical
Publication of DE60025242D1 publication Critical patent/DE60025242D1/de
Publication of DE60025242T2 publication Critical patent/DE60025242T2/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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8547Content authoring involving timestamps for synchronizing content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)
  • Bidirectional Digital Transmission (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. GEBIET DER ERFINDUNG
  • Diese Erfindung betrifft allgemein Verfahren und Vorrichtungen zum Synchronisieren einer Datenübertragung in Computernetzen und insbesondere Ausführungsformen, Verfahren und Vorrichtungen zum Synchronisieren einer Aufwärts-Netzübertragung in Kabelmodems.
  • 2. BESCHREIBUNG DES VERWANDTEN SACHSTANDES
  • Datennetze weisen unterschiedliche Formen auf, um unterschiedliche Zwecke zu bedienen. Ein Beispiel eines einfachen Netzes ist ein Netz in einem Büro, das mehreren Computern erlaubt, einen Drucker zu verwenden. Ein derartiges Netz ist gewöhnlicherweise als ein lokales Netz (LAN; Local Area Network) bekannt. Andere Netze können weit aus komplexer sein. Das Internet ist ein Beispiel eines komplexeren Netzes, bei dem viele kleinere Netze überall in der Welt untereinander verbunden werden können. Das Internet erlaubt eine weltweite Übertragung von vielen Typen von Daten, einschließlich von Textdateien, Graphiken, Audi- und Videodaten. Ein Netz, welches sich über ein großes geographisches Gebiet erstreckt, ist allgemein als ein Weitgebietsnetz (WAN; Wide Area Network) bekannt.
  • WANs haben normalerweise das Telefonsystem verwendet, um Daten über lange Entfernungen zu übertragen. Das Telefonsystem ist ein zweckdienliches Datenübertragungsmedium, weil es eine eingerichtete Infrastruktur aufweist, die zuverlässig Daten weltweit übertragen kann. Ein Hauptnachteil einer Datenübertragung über das Telefonnetz ist jedoch die begrenzte Rate, bei der es Daten übertragen kann (seine niedrige Bandbreite).
  • Für Benutzer, die eine höhere Bandbreite erfordern, sind ausgefeilte, aber kostenaufwendige WAN Systeme gebaut worden. Zum Beispiel haben große Unternehmen Satelliten verwendet, die um die Erde kreisen, und über Mikrowellen verbundene Bodenstationen für die Übertragung von Daten. Für den allgemeinen Benutzer bleibt jedoch das Telefonsystem eine vorherrschende Wahl als ein akzeptabler Kompromiss zwischen den Kosten und dem Betriebsverhalten. Mit anderen Worten, der allgemeine Benutzer hat eine niedrige Bandbreite akzeptiert, weil die Kosten zum Erhalten einer größeren Bandbreite hoch gewesen sind.
  • Seit kurzem sind Kabelfernsehnetze verfügbar geworden. Ein typisches Kabel-TV-System kann viele Fernsehstationen transportieren, die äquivalent zu einer großen Menge von Daten (hohe Bandbreite) gleichzeitig sind. Wegen der ansteigenden Verfügbarkeit der Kabelfernsehinfrastruktur hat eine Verwendung von Fernsehkabeln als das Medium für Computerdatennetze das Potential Benutzern eine hohe Bandbreite bei vernünftigen Kosten zu geben. Ein Kabel-TV-System erfordert jedoch mehrere Erweiterungen, um als ein Datennetz zu arbeiten.
  • In seiner klassischen Form transportiert ein Kabel-TV-System Information in nur einer Richtung, von dem Kabelsystem-Kopfende zu dem einzelnen Benutzer. Die Schnittstelle des Benutzers zu dem System umfasst allgemein einen Empfänger, zum Beispiel einen Fernseher oder einen Stereoempfänger. Das Kopfende überträgt Fernseh- oder Stereokanäle gleichzeitig. Im Allgemeinen hat der Benutzer keinerlei Einfluss darüber, was übertragen wird, und kann nur zwischen den Kanälen wählen, die das Kopfende gerade überträgt.
  • Im Gegensatz dazu muss ein Datennetz Daten von dem Kopfende an den Benutzer (den Auwärtspfad) und von dem Benutzer an das Kopfende (den Aufwärtspfad) transportieren. Der einzelne Benutzer erfordert ein Gerät, wie beispielsweise ein Kabelmodem, das von dem Kopfende sowohl empfangen als auch an dieses senden kann. Ein Kabeldatennetz muss in der Lage sein viele einzelne Benutzer gleichzeitig zu behandeln, wobei jeder von diesen eine Steuerung darüber hat, was sie empfangen und senden.
  • Damit ein Kabel-TV-Netz als ein Datennetz arbeitet, erfordert es ein Kopfende, das in der Lage ist, Daten sowohl zu senden als auch zu empfangen, sowie ein Benutzerende, das mit der Fähigkeit versehen ist, durch die Verwendung eines Geräts, wie beispielweise einem Kabelmodem (Cable Modem; CM) Daten sowohl zu empfangen als auch zu senden. Um sicher zu stellen, dass jeder Benutzer die Daten empfängt, die er benötigt, muss ein Netzprotokoll implementiert werden, um unabhängigen Benutzern des Netzes zu erlauben, das gemeinsam vorgesehene Kopfende und das Verteilungsnetz ohne eine Störung von anderen Benutzern zu verwenden oder die Daten von anderen Benutzern zu empfangen.
  • Das Netzprotokoll stellt Anforderungen sowohl an das Kopfende als auch an das Benutzerende. Im Allgemeinen dient das Kopfende als der Netzcontroller und das Kabelmodem des Benutzers muss in der Lage sein auf Befehle von dem Kopfende zu antworten. Um eine Anzahl von unabhängigen Benutzern zu unterstützen, teilt das Netzprotokoll die Ressourcen des Systems unter Verwendung von zwei grundlegenden Verfahren auf.
  • In einem Kabel-TV-System kann das Kopfende mehrere TV Kanäle gleichzeitig dadurch übertragen, dass sie in unterschiedliche Kanäle in dem Funkfrequenz-(RF)-Spektrum platziert werden. In ähnlicher Weise teilt das Netzprotokoll die Bandbreite des Kabelnetzes in Frequenzkanäle auf. Jedes Kabelmodem eines Benutzers kann dann abgestimmt werden, um auf einem oder mehreren Kanälen zu empfangen und zu senden. Im Allgemeinen werden in einem Kabeldatennetz die Abwärtsübertragungen von den Aufwärtsübertragungen dadurch getrennt, dass sie auf unterschiedliche RF Kanäle gelegt werden. Ein derartiges Verfahren wird als Frequenzteilungs-Vielfachzugriff (Frequency Division Multiple Access; FDMA) bezeichnet.
  • Um eine Anzahl von Benutzern unterzubringen, können die RF Kanäle weiter in Zeitschlitze unterteilt werden und jedem Benutzer kann ein Zeitschlitz zugeordnet werden, um zu senden und zu empfangen. Dieses Verfahren ist üblicherweise als Zeitteilungs-Mehrfachzugriff (Time Division Multiple Access; TDMA) bekannt.
  • Die Zeitschlitze für die Abwärtsnachrichten werden durch den Kopfenden-Netzcontroller bestimmt. Der Empfang von Daten durch Benutzer wird durch ein Adressierungsverfahren bestimmt. Das Kopfende überträgt eine einzigartige Adresse für jedes Kabelmodem zusammen mit den Daten für diesen Benutzer; das individuelle Modem wird konfiguriert, um nur die Daten zu akzeptieren, die für es vorgesehen sind.
  • Eine Zuordnung von Zeitschlitzen für Aufwärtsnachrichten, die durch Benutzer erzeugt werden, wird durch die Tatsache kompliziert, dass die Aufwärtsnachrichten durch unabhängige Einheiten initiiert werden. Im Allgemeinen sind zwei Typen von Vorgehensweisen entwickelt worden, um Übertragungen durch die Benutzer zu steuern: Abwägungsverfahren und eine Zuordnung durch den Controller.
  • In einem normalen Abwägungssystem initiiert das Modem des Benutzers Übertragungen. Das System umfasst ein Verfahren zum Erfassen von Kollisionen zwischen Benutzernachrichten; d. h. mehr als ein Benutzer versucht eine Aufwärtsnachricht gleichzeitig zu senden. Wenn eine Kollision erfasst wird, müssen die Benutzer dann ihre Nachrichten erneut übertragen, wobei gewöhnlicherweise die Zeiten eingestellt werden, zu denen sie erneut übertragen, um zu versuchen, die Chancen von einer anderen Kollision mit Nachrichten von der gleichen Einheit zu verringern. Dieses Verfahren weist einen Nachteil dahingehend auf, dass Bandbreite verschwendet wird, wenn die Nachrichten, die kollidiert haben, erneut übertragen werden. Wenn der Kanal stärker bevölkert wird, gibt es die Tendenz, dass die Anzahl von Kollisionen zunehmen.
  • Ein Verfahren zum Verwenden des Kanals besteht darin, dass der Systemcontroller ein Zeitintervall für eine Modemübertragung von jedem Benutzer zuweist. Um ein derartiges Verfahren zu implementieren, muss die Übertragung des Benutzers synchronisiert werden, um so nicht miteinander zu kollidieren. Eine übliche Vorgehensweise zum Bereitstellen einer Synchronisation besteht darin, Übertragungszeitschlitze jedem Benutzer zuzuweisen. Jeder Benutzer kann dann in einer Zeit übertragen, die ihm zugeordnet ist, und Kollisionen werden vermieden. Je genauer die Benutzermodems bei ihrer zugewiesenen Zeit übertragen, desto enger beabstandet kann der Controller Nachrichten planen und desto größer ist die Kapazität des Netzes. Deshalb ist eine genaue Planung von Benutzermodem-Übertragungen wünschenswert.
  • Ein System, welches TDMA Schlitzzuweisungen verwendet, ist in dem internationalen Patent mit der Nummer WO 99 00917 offenbart, das am 07. Januar 1999 veröffentlicht wurde und das eine Schlitzzuordnungseinheit lehrt, die einen Schlitzzähler umfasst, der konfiguriert ist, um eine Adresse eines Zeitschlitzes und eine Schlitzbeschreibertabelle bereitzustellen, die Schlitzbeschreiber enthält, die Aktionen beschreiben, die innerhalb des Zeitschlitzes ausgeführt werden müssen. Die Schlitzbeschreiber werden dekodiert, um ein oder mehrere Signale bereitzustellen. Das TDMA System, das in der voranstehend angegebenen Anmeldung beschrieben wird, verwendet Synchronisationsnachrichten, um eine lokale Zeitbasis einzustellen, die verwendet wird, um den TDMA Start eines Schlitzes und einen Symboltakt durch Synchronisieren eines lokalen Zeitbasisgenerators auf einen Master-Zeitbasisgenerator abzuleiten.
  • Eine genaue Synchronisation zwischen Elementen, die räumlich weit getrennt sind, ist nicht eine triviale Aufgabe. Eine Kompensation für den Versatz (Skewing), der durch die endliche Zeit verursacht wird, die Signale benötigen, um sich zwischen Elementen zu bewegen, muss hinzugefügt werden, wenn eine richtige Synchronisation erreicht werden soll. Zusätzlich kann eine Übertragung von Daten über einem Kabel durch mehrere unterschiedliche Standards erreicht werden. Ein derartiger Standard ist der MCNS oder Multimedia Cable Network System Standard, der sich hauptsächlich in Nordamerika durch DOCSIS (die Data Over Cable System Interface Specification) durchgesetzt hat, was im Grunde genommen ein Standard für kompatible Kabelmodems in Nordamerika geworden ist. Mehrere andere Standards haben sich durchgesetzt; zum Beispiel der Digital Video Broadcasting (DVB) Standard, der der Standard ist, der durch die European Broadcast Union (EBU) unter der Aufsicht des European Telecommunications Standards Institute (ITSI) hervorgebracht worden ist. Ein System, welches ähnlich zu dem DVB ist, ist auch durch das DAVIC (Digital Audio Video Council) vorgeschlagen worden. Um das Synchronisationsproblem zu adressieren, können MCNS Systeme mit einem lokalen Takt in jedem Kabelmodem implementiert werden, der periodisch auf einen Mastertakt innerhalb des Kabelsystem-Kopfendes periodisch synchronisiert werden muss. DVB Systeme synchronisieren den lokalen Takt in der NIU (DVB Terminologie für Kabelmodems) auf den Start einer Übertragungsmarkierung, die eine 3 Millisekunden lange Aufwärtsübertragungsperiode umfasst, an Stelle auf einer Mastertakt. Die Synchronisation von Kabelmodems für den Zweck einer Datenübertragung weist zwei Aspekte auf: Ein Anfangsversatz, um den sich der Mastertakt in dem Kabelsystem-Kopfende und der lokale Zeittakt in jedem Element (z. B. CM oder NIU) unterscheiden, und die Rate, bei der die zwei Takte die Zeit inkrementieren. Typischerweise ist der Takt an dem Kopfende eines Kabelsystems höchst genau, während die lokalen Takte innerhalb jedes entfernten Elements etwas weniger genau sind.
  • Um die Übertragung von Nachrichten zu steuern, synchronisieren MCNS Systeme im Allgemeinen lokale Takte in dem Benutzermodem auf eine Systemzeit, die durch einen Mastertakt innerhalb des Kabelmodem-Abschlusssystem (Cable Modem Termination System) an dem Kopfende geführt wird. Das CMTS kann das Modem eines Benutzers auffordern zu einer Zeit zu senden, die durch die Systemzeit gemessen wird. Eine Synchronisation von Takten in den Benutzermodems kann in zwei Stufen erreicht werden. Zunächst, während einer Benutzermodem-Initialisierung, werden die Verzögerungen zwischen der Übertragung einer Nachricht durch das Benutzermodem und deren Empfang an dem Kopfende gemessen und diese Messung wird an das Benutzermodem übertragen und in dem Benutzermodem gespeichert. Dies wird typischerweise als der Bereichsbestimmungsprozess (Ranging Process) bezeichnet. Zweitens, bei unregelmäßigen Intervallen, überträgt das Kopfende Synchronisationsnachrichten an die Benutzermodems. Dies kann als der Aktualisierungsprozess (Update Process) bezeichnet werden. Die Synchronisationsnachrichten enthalten den Wert der Systemzeit, zu der die Nachricht gesendet wurde. Das Modem des Benutzers muss die Zeiten, zu denen diese Nachrichten ankommen, genau messen und diese Information verwenden, um ihre lokalen Takte auf die Systemzeit zu synchronisieren. Weil die Rate, bei der der lokale Takt und der Mastertakt die Zeit inkrementieren, unterschiedlich sein kann, kann sogar eine perfekte Synchronisation über der Zeit nicht aufrechterhalten werden und periodische Einstellungen sind notwendig.
  • In dem DVB System ist die voranstehend beschriebene Bereichsbestimmungs-Prozessstufe ähnlich zu dem MCNS, aber der Aktualisierungsprozess ist etwas anders. Die Terminologie innerhalb des DVB Systems ist auch anders als bei dem MCNS System. Das CMTS wird als der INA oder interaktive Netzadapter (Interactive Network Adapter) bezeichnet. Das Kabelmodem von dem MCNS System wird als die NIU oder die Netzschnittstelleneinheit in dem DVB System bezeichnet. Während die Funktionen von diesen unterschiedlich benannten Komponenten ähnlich sind, ist die Methodologie für eine Kabelmodem-Übertragung und einen Empfang etwas anders. In dem DVB System gibt es zwei empfohlene Verfahren zum Übertragen von Abwärtsdaten (Downstream-Daten) und Signalen, im Gegensatz zu dem einzelnen Verfahren innerhalb des MCNS Systems. Die zwei unterschiedlichen Verfahren zum Übertragen von Daten und Signalen in einem DVB System werden als das IB oder In-Band-Verfahren und das OOB oder Ausdem-Band Verfahren bezeichnet. In dem Aus-dem-Band Fall werden eine Synchronisationsinformation und 1-Millisekunde und 3-Millisekunde Perioden aus der Zeit abgeleitet, wenn spezifizierte Bits des Bitstroms durch den INA übertragen werden. Der In-Band Fall ist ähnlich zu dem MCNS System, aber die Synchronisationsnachricht enthält nicht den Wert der Systemzeit. An Stelle davon verweist sie auf die Grenze einer 3 Millisekunde Periode und wird hauptsächlich als eine Implementierung behandelt, die Ausführungsformen der Erfindung enthalten kann. Dies wird ausschließen, dass Ausführungsformen der Erfindung in dem OOB Fall verwendet werden, das bedeutet lediglich, dass der In-Band Fall komplexer ist und Aspekte der Erfindung besser illustriert. Viele andere Ausführungsformen in verschiedenen Systemen sind möglich und die MCNS und DVB Beispiele, die hier enthalten sind, werden hier als diejenigen gewählt, mit denen Durchschnittsfachleute wahrscheinlich am besten vertraut sind, sodass sie am illustrativsten sind. In dem DVB In-Band Fall wird eine Medium-Zugriffssteuerung (Media Access Control) oder MAC Steuernachricht an die NIU übertragen. Innerhalb der MAC Steuernachricht (wenn sie als eine aktive SYNC Nachricht bezeichnet wird) ist ein 10 Bit Aufwärsschlitz-Positionsregister (Upstream Slot Position Register; USPR), das durch den INA bei jeder 3-Millisekunde Periode erhöht wird, und ein 16-Bit Aufwärtsschlitz-Markierungszeiger. Der Aufwärtsschlitz-Markierungszeiger enthält einen Wert, der eine Anzahl von Symbolen darstellt. Zur Zweckdienlichkeit wird diese Anzahl von Symbolen als ein UMV (Aufwärtsmarkierungswert oder Upstream Marker Value) bezeichnet. Ein Symbol ist ein diskreter einzelner übertragener Datenwert. Symbole können ein, zwei, drei, vier oder mehr Bits umfassen, die jeweils davon abhängen, welche Art von Modulationsverfahren verwendet wird, um das Symbol zu übertragen. Der UMV bestimmt die Anzahl von Symbolen, die von dem Beginn des nächsten MPEG-2 Rahmen zu dem Start einer 3-Millisekunden-Periode gezählt werden müssen. Die INU erfasst den nächsten MPEG-2 Rahmen nach der MAC Nachricht durch eine Suche nach dem Start eines MPEG-2 Headers (Anfangsblocks), der ein hexadezimaler Wert von 47 ist. Die NIU zählt dann eine UMV Anzahl von Symbolen. Wenn UMV Symbole gezählt worden sind, beginnt der Anfang der 3-Millisekunden-Periode. Die 3-Millisekunden-Perioden werden weiter in Aufwärts-Übertragungsschlitze (Upstream-Übertragungsschlitze) und freie Intervalle unterteilt. Eine andere Information innerhalb der MAC Steuernachricht identifiziert spezifische Schlitze, die dem bestimmten NIU für eine Aufwärtsübertragung zugeordnet worden sind. Genau diese Timinginformation kann von den INA verwendet werden, um seine Nachricht upstream (aufwärts) zu synchronisieren. In dem DVB Fall sind Initialisierungen und periodische Einstellungen, ähnlich zu denjenigen, die in dem MCNS Fall benötigt werden, erforderlich.
  • Somit besteht in dem technischen Gebiet von Kabelmodems eine Notwendigkeit, dass sie ihr Aufwärts-Übertragungstiming synchronisieren und effektiv einstellen können, um Aufwärtsbwst-Übertragungen genauer zu planen.
  • ZUSAMMENFASSUNG DER OFFENBARUNG
  • Eine Vorrichtung, ein Verfahren und ein Datenträger gemäß der Erfindung werden durch die Ansprüche 1, 17 bzw. 33 definiert.
  • Um die Beschränkungen in dem voranstehend beschriebenen Stand der Technik zu überwinden, offenbart die Beschreibung ein System und ein Verfahren zum Synchronisieren von Netzübertragungen, die Kabelnetz-Übertragungen, in entfernt angeordneten Einheiten. Ausführungsformen der vorliegenden Erfindung können lokale Takte bzw. lokale Uhren auf eine Systemzeit, die von einem Master-Takt bzw. einer Master-Uhr in einem Kabelnetzsystem geführt wird, synchronisieren oder sie können lokale Uhren auf Übertragungszeiten synchronisieren. Ausführungsformen der vorliegenden Erfindung können in einem Computer unter eine Programmsteuerung implementiert werden, um eine Hardwarekomplexität zu minimieren und eine Flexibilität für Systemänderungen bereitzustellen.
  • MCNS VERSION
  • In bevorzugten beispielhaften MCNS Ausführungsformen umfasst das System in jedem Benutzermodem: Eine lokale Uhr, einen Nachrichtenempfänger zum Speichern von Nachrichten in einem Speicher, einen Zeitkennungsgenerator, um in dem Speicher den Wert der lokalen Uhr einzufügen, wenn eine Nachricht ankommt, einen Computer, der in der Lage ist, auf den Speicher zuzugreifen, und ein Computerprogramm zum Extrahieren der übertragenen Systemzeit ausgewählte Nachrichten und zum Berechnen und Synchronisieren der lokalen Uhr auf die übertragene Systemzeit. Bevorzugte Ausführungsformen verwenden eine lokale Uhr innerhalb des Kabelmodems, die in Hardware implementiert ist, als eine Quelle für ein lokales Timing und eine flexible Firmware, um diese von dem Kopfende übertragene Systemzeit ausgewählte Nachrichten zu extrahieren, um eine in Software ausgeführte Phasenregelschleife (Software Phase Locked Loop; SPLL) zu implementieren, die die lokale Uhr bzw. den lokalen Takt auf die Systemzeit synchronisiert, die von dem CMTS empfangen wird, und um außerdem die Übertragung von Aufwärtsnachrichten (Upstream-Nachrichten) zu steuern.
  • DVB VERSION
  • Eine zweite bevorzugte Ausführungsform der Erfindung für DVB Systeme umfasst die gleichen Hardwareelemente wie eine bevorzugte MCNS Ausführungsform. Das Computerprogramm in der DVB Ausführungsform wird jedoch geändert, um die Differenz in synchronisierenden Daten zu berücksichtigen. In der DVB Ausführungsform gibt es eine Synchronisationsinformation in einem MPEG-2 Transportstrom(Transport Stream; TS) Paket oder einem Rahmen, das/der als eine MAC Steuernachricht bekannt ist. Synchronisationsinformation innerhalb von bestimmten aktivierten MAC Steuernachrichten-Rahmen verweist auf einen Beginn einer 3-Millisekunden-Periode. Die 3-Millisekunden-Periode ist eine Zeitperiode, zu der eine Aufwärtsübertragungsperiode beginnen soll.
  • Eine SPLL ähnlich zu derjenigen, die man in der MCNS Ausführungsform findet, wird verwendet, um auf den Beginn der Aufwärts-3-Millisekunden-Periode einzurasten, so dass der Beginn der Sendeperiode, in Einheiten der lokalen Zeit, gefunden werden kann.
  • Diese und andere Aufgaben, Merkmale und Vorteile von Ausführungsformen der Erfindung werden klar für Durchschnittsfachleute in dem technischen Gebiet aus der folgenden ausführlichen Beschreibung von Ausführungsformen der Erfindung, wenn sie mit den Zeichnungen unter den angefügten Ansprüchen gelesen werden.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • In den Zeichnungen zeigen:
  • 1a ein Blockdiagramm eines üblichen MCNS Kabelnetzsystems;
  • 1b ein Blockdiagramm eines üblichen DVB Kabelnetzsystems;
  • 2 ein Blockdiagramm, das ein verallgemeinertes Kabelmodemsystem, zusammen mit einer grafischen Illustration einer Frequenzspektrumzuordnung innerhalb des Kabelmodemsystems darstellt;
  • 3 eine grafische Darstellung von Aufwärts-TDMA (Zeitteilungs-Mehrfachzugriff; Time Division Multiple Access)-Kommunikationen in einem Kabehnodemsystem;
  • 4 eine grafische Darstellung des Empfangs und der Verarbeitung der Abwärtskommunikationen in einem Kabelmodemsystems;
  • 5 eine Darstellung einer möglichen Zeitsequenz von Nachrichten und einer Benutzermodemverarbeitung;
  • 6 eine Darstellung der Anordnung von Daten in einem Speicher gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 7 ein Blockdiagramm eines Benutzermodems gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 8 ein Flussdiagramm eines Verfahrens zum Berechnen einer rekonstruierten Zeit, die auf eine Systemzeit synchronisiert ist, gemäß einer Ausführungsform der Erfindung;
  • 9a ein Blockdiagramm einer Ausführungsform der Erfindung, so wie sie zum Synchronisieren von Aufwärtsburstübertragungen in einem Kabelsystem verwendet werden kann;
  • 9b ein Blockdiagramm des Generators der 9a für das wieder hergestellte Timing;
  • 9c ein ausführlicheres Blockdiagramm des Multiplikations-Akkumulators 912, der in 9b dargestellt ist;
  • 9d ein ausführlicheres Blockdiagramm, das den Akkumulator 914 darstellt, der in 9b gezeigt ist;
  • 9e ein Blockdiagramm, das den lokalen Zeitgenerator darstellt, der mit Ausführungsformen der vorliegenden Erfindung verwendet wird;
  • 10a eine grafische Darstellung des Aufwärts-Aussendetimings unter Verwendung des Digital Video Broadcasting (DVB) Standards; und
  • 10b eine grafische Darstellung der Timing- und Synchronisationsinformation, die von einem Interface Network Adapter (INA) an die Netzschnittstelleneinheit (Network Interface Unit; NIU) in einem Kabelsystem unter Verwendung des Digital Video Broadcasting (DVB) Standards transportiert wird.
  • AUSFÜHRLICHE BESCHREIBUNG VON BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • In der folgenden Beschreibung von bevorzugten Ausführungsformen wird bezugnehmend auf die beiliegenden Zeichnungen, die einen Teil davon zeigen und in denen zur Illustration spezifische Ausführungsformen gezeigt sind, in denen die Erfindung praktisch umgesetzt werden kann. Es sei darauf hingewiesen, dass andere Ausführungsformen verwendet werden können und strukturelle Änderungen durchgeführt werden können, ohne von dem Umfang der bevorzugten Ausführungsform der vorliegenden Erfindung abzuweichen. Obwohl die Beschreibung und die Zeichnungen sich auf ein Kabelnetzsystem beziehen, sei zum Beispiel darauf hingewiesen, dass Ausführungsformen der vorliegenden Erfindung zum Beispiel verwendet werden können, um Elemente in anderen Typen von Netzen, wie beispielsweise faseroptischen Kabel- und drahtlosen Netzen zu synchronisieren, oder in irgendeinem System, in dem Untersysteme synchronisierte Übertragungen erzielen müssen.
  • 1a ist eine vereinfachte schematische Darstellung eines Kabelnetzsystems des MCNS Typs, in dem die vorliegende Erfindung arbeiten kann. Es ist ein Kabelmodem-Abschlusssystem (Cable Modem Termination System; CMTS) 110 vorgesehen, das in dem Kopfende 118 angeordnet ist. Das Kopfende des Kabelsystems kann Daten in verschiedenen Formen von verschiedenen Quellen empfangen. Zum Beispiel kann das Kopfende 118 eine Fernsehprogrammierung 102, Funkaudio 104, Internetdaten 100 und Intranetdaten 118, die nur für Kabelsystem-Teilnehmer verfügbar sind, empfangen. Verschiedene Geräte, wie beispielsweise ein Radio 106, Kabelboxen 108 und Fernseher 116, können mit dem Kabel 114 verbunden sein. Zusätzlich können mehrere Benutzermodems 112 mit dem Kopfende durch ein Verteilungssystem verbunden sein, das aus einem gemeinsamen Kabel 114 und einer speziell vorgesehen Abzweigung 116 für jedes Benutzermodem gebildet ist. Das CMTS 110 kann Auwärtsdaten (Downstream-Daten) an die Benutzermodems 112 senden, um die Übertragung von Aufwärtsdaten (Upstream-Daten) zu steuern. Das CMTS System steuert eine Aufwärtsübertragung durch Senden von Steuernachrichten an die Benutzermodems 112. Das Benutzermodem sendet typischerweise Daten an eine Einrichtung, wie eine Computerarbeitsstation 120, und empfängt Daten davon.
  • 1b stellt die unterschiedliche Therminologie und die ähnliche Topologie, die man in einem DVB Kabelsystem sieht, dar. In einem DVB Kabelsystem nimmt der INA 126 die Stelle des CMTS Systems ein. Genau der INA 126 steuert das Kabel 136. Das Kabel 136 ist in einem Fall mit DVB Kabelboxen 132 gekoppelt, die dann weiter mit Fernsehempfängern 134 gekoppelt sind. Das Kabel 136 ist auch mit NIUs 128 gekoppelt, die dann weiter mit einer Arbeitsstation 130 gekoppelt sind. Die NIUs 128 können Daten von dem INA 126 empfangen und dann Nachrichten an den INA 126 senden.
  • MCNS AUSFÜHRUNGSFORM
  • 2 ist ein Blockdiagramm, das ein verallgemeinertes MCNS Kabehnodemsystem darstellt, zusammen mit einer grafischen Darstellung einer Frequenzspektrumzuordnung innerhalb des Kabelmodemsystems. Ein Kabelmodem (Cable Modem; CM) 200 ist mit einem Kabel 202 verbunden. Das Kabel 202 stellt sowohl Abwärts- als auch Aufwärts-Kommunikationen zwischen dem CM 200 und einem CMTS 204 bereit. Das CMTS 204 ist innerhalb des Kabelmodem-Kopfendes 220 enthalten. Das CMTS 204 empfängt eine Systemzeit von einem Mastertakt 206. In ähnlicher Weise misst das CM 200 die lokale Zeit 218 in der gegenwärtigen bevorzugten Ausführungsform unter Verwendung eines 32 Bit Zählers, um dessen Transaktionen zeitlich abzustimmen. Das Kabel 200 kann ein breites Band von Frequenzen transportieren, die allgemein als sein Frequenzspektrum bekannt sind. Das Kabelfrequenzspektrum 208 wird oft in getrennte Frequenzbänder 218 unterteilt. Zum Beispiel kann das Kabelfrequenzspektrum 208 in diskrete Bänder für Fernsehstationen 210, Radiostationen 212, Abwärts-Kommunikationen 214 und Aufwärts-Kommunikationen 216 unterteilt werden. Das DVB Protokoll ist ähnlich, wobei eine NIU für das CM ersetzt wird und ein INA das CMTS ersetzt.
  • 3 ist eine grafische Darstellung von Aufwärts-TDMA-(Zeitteilungs-Mehrfachzugriffen; Time Division Multiple Access)-Kommunikationen in einem MCNS Kabelmodemsystem. Aufwärtsübertragungen werden in der Zeit aufgeteilt, so dass sie sich nicht gegenseitig stören. Jeder Aufwärts-Übertragung wird ein Zeitschlitz 300 zugewiesen. Wenn ein Kabelmodem wünscht, eine Verbindung herzustellen, sendet es seine Aufforderung in einem bandbreiten Anforderungs-Bewerbungsschlitz an 306. Weil andere Kabelmodems unter Umständen eine Bandbreite anfordern können, können die Anforderungen kollidieren und müssen erneut ausgesendet werden. Wenn das CMTS eine Aufforderung empfängt, weist sie dem Kabelmodem ein Zeitschlitz zu. Zum Beispiel wird dem Kabelmodem 1 (CM1) der Schlitz 304 zugewiesen und dem Kabelmodem 2 (CM2) wird der Schlitz 302 zugewiesen. Kabelmodem-Zeitschlitzzuweisungen werden an Kabelmodems unter Verwendung von Abbildungsnachrichten kommuniziert, die die Kabelmodems auf dem Netz mit einer Abbildung der Aufwärts-Zeitschlitze versehen.
  • 4 ist eine grafische Darstellung des Empfangs- und der Verarbeitung der Abwärts-Kommunikationen in einem Kabehnodemsystem durch eine Ausführungsform der Erfindung. In der gegenwärtigen illustrativen Ausführungsform kommuniziert das CMTS 110 mit einem Kabelmodem 112 durch die Übertragung von Daten, die innerhalb von MPEG-2 Rahmen 400 formatiert sind. Jeder MPEG-2 Rahmen beginnt mit einem Rahmenheader 402 (einem Byte mit einem hexadezimalen Wert von 47) und ist 188 Bytes lang. Die MPEG-2 Rahmen 400 werden von dem Kabelmodem 414 in dem Kabelmodemeingang 404 empfangen, der die MPEG-2 Rahmen aus der RF Trägerfrequenz extrahiert und diese in den Kabelmodem-Speicher 408 legt. Der Kabelmodemeingang 404 greift auch auf die lokale Uhr 406 zu und legt den Wert der lokalen Uhr in dem Kabelmodem-Speicher 408 ab. Der Wert der lokalen Uhr, der in dem Kabelmodem-Speicher 408 abgelegt ist, dient als ein Zeitstempel 410, der die lokale Zeit 218 anzeigt, wenn jeder MPEG-2 Rahmen angekommen ist. Einige der MPEG-2 Rahmen enthalten SYNC Nachrichtenrahmen 401 und werden einen CMTS Zeitstempel in ihnen, zum Beispiel 411, enthalten. Der CMTS Zeitstempel zeigt die Systemzeit 206 der Masteruhr an, als der CMTS Zeitstempel gesendet wurde.
  • In einer bevorzugten MCNS Ausführungsform wird eine lokale Uhr bzw. ein lokaler Takt abgetastet, um die Zeit 410 aufzuzeichnen, wann jede Nachricht durch den Nachrichtenempfänger empfangen wird. In dieser Ausführungsform wird die typische Nachricht in einem MPEG-2 (Motion Picture Experts Group) Rahmenformat formatiert. Jedoch ist dieses Format nicht eine Anforderung für Ausführungsformen der Erfindung. Das einzige, was von dem Nachrichtenformat erfordert wird, ist, dass Nachrichten eine bekannte Länge aufweisen, periodisch übertragen werden, und unter Verwendung einer Rahmenmarkierung, die einen festen Ort innerhalb des Rahmens aufweist, erkannt werden können. Wenn die Nachrichten von einer bekannten Länge sind, dann kann durch Vergleichen der abgelaufenen Zeit in Einheiten der lokalen Uhr mit der bekannten Periode, die für die Ankunft des gesamten MPEG-2 Rahmens mit fester Länge benötigt wird, die tatsächliche Frequenz des lokalen Referenztakts (bzw. der lokalen Referenzuhr) berechnet werden.
  • In einer bevorzugten MCNS Ausführungsform überträgt das CMTS (Cable Modem Termination System) die Systemzeit an jedes Kabelmodem durch Einfügen eines SYNC MCNS MAC (Media Access Control) Verwaltungsrahmen (Management Frame) 401 innerhalb des Transportstroms (Transportstream) von MPEG-2 Rahmen. Die MCNS SYNC Nachrichten 401 enthalten eine globale Timingreferenz, die als die System- oder CMTS Zeit üblicherweise bekannt ist. Jedes Kabelmodem kann auf die Systemzeit durch Durchsuchen jedes empfangenen MPEG-2 Rahmens nach einer SYNC Nachricht zugreifen. Sobald dieser Typ von Rahmen lokalisiert wird, kann die Firmware die Systemzeit aus der SYNC Nachricht extrahieren. Dieses besondere Nachrichtenformat ist nicht eine Anforderung der Ausführungsform. Es wird nur gefordert, das die in CMTS eingebetteten identifizierbaren globalen Timingreferenzen innerhalb der Nachrichten an das CM gesendet werden.
  • In einer bevorzugten MCNS Ausführungsform muss das CMTS (Cable Modem Termination System) feste Verzögerungen zwischen dem CMTS und dem CM (Kabelmodem) sowohl messen als auch kompensieren. Die Messung von diesen festen Verzögerungen wird durch zwei Typen von MCNS MAC Verwaltungsnachrichten (Management Messagers) vorgenommen, die innerhalb des MPEG-2 Rahmenformats gesendet werden. Die erste Nachricht ist die Bereichsbestimmungsanforderungsnachricht (Range Request Message), die von dem CMTS an das CM gesendet wird. Diese Nachricht teilt dem CM mit eine Bereichsbestimmungsantwort MCNS MAC Verwaltungsnachricht zurück, an das CMTS zu übertragen, so dass sie an dem CMTS zu einer spezifizierten Systemzeit ankommt, die innerhalb der Bereichsaufforderungsnachricht eingebettet ist. Nach (dem) Empfang einer Bereichsbestimmungsantwortnachricht von einem bestimmten CM kann das CMTS die Differenz zwischen der Zeit, zu der die Bereichsbestimmungsantwortnachricht empfangen wurde, und der Zeit, zu der die Bereichsbestimmungsantwortnachricht erwartet wurde, berechnen kann. Diese Differenz stellt das Maß der festen Verzögerung in dem System zwischen einem bestimmten CM und dem CMTS dar. Um diese feste Verzögerung in dem System zu kompensieren, verwendet das CMTS eine dritte Nachricht MCNS MAC Verwaltungsnachricht, die als Bereichsbestimmungs-Phaseneinstellung (Ranging Phase Adjustment) bezeichnet wird. Diese Nachricht überträgt das Maß einer festen Verzögerung in dem System (a.k.a. ein Phasenversatz) zwischen einem bestimmten CM und dem CMTS, wie durch den Bereichsbestimmungsprozess bestimmt, von dem CMTS an das bestimmte CM. Sobald das CM diesen Phasenversatz aus der Bereichsbestimmungs-Phaseneinstellnachricht lokalisiert und extrahiert, verwendet es diesen Wert zum Einstellen seiner Übernagungszeit, sodass zukünftige Fehler als Folge von festen Verzögerungen von dem System beseitigt werden. In der gegenwärtigen Ausführungsform sind drei Typen von Nachrichten in dem System vorhanden. Jedoch ist die Erfindung in keinerlei Weise auf diese spezifischen MCNS Rahmenbildungsformate beschränkt und sie hängt nicht von ihnen ab.
  • Nach (dem) Empfang von jedem MPEG-2 Rahmen 400 hin tastet die CM Hardware den lokalen Takt bzw. die lokale Uhr 406 ab und kennzeichnet den MPEG-2 Rahmen mit dem Wert 416 des lokalen Takts. Dieser Kennzeichnungsprozess tritt in der folgenden Weise auf Auf eine Erkennung des MPEG-2 SYNC Worts 412 in dem MPEG-2 Rahmen tastet die Hardware den Wert des lokalen Takts (der lokalen Uhr) ab. Als nächstes fügt die Hardware den Zeitwert der lokalen Uhr in eine Speicherstelle 416 ein, die die Software mit der Ankunftszeit von diesem MPEG-2 Rahmen 418 assoziiert. Die bevorzugte Ausführungsform für diesen Betrieb führt jeden MPEG-2 Rahmen aus, der an dem CM ankommt. In der vorliegenden Ausführungsform gibt es eine Verzögerung 420 zwischen der Zeit, zu der das MPEG-2 SYNC Byte durch das CM erkannt wird, und der Zeit, zu der das CM die lokale Uhr abtastet.
  • Die lokale Zeit, mit der jeder MPEG-2 Rahmen gekennzeichnet wird, wird wegen zweierlei Gründen verwendet. Der erste besteht darin die Frequenz der lokalen Uhr bzw. des lokalen Takts zu berechnen. Der zweite ist die abgelaufene Zeit in Einheiten der lokalen Uhr zwischen der Ankunft von 2 SYNC Worten, die von dem CMTS empfangen werden, zu berechnen. Diese Eingaben und der Bereichsbestimmungsprozess stellen sicher, dass das CM die gesamte Information hat, die benötigt wird, um die CM auf die CMTS Zeit zu synchronisieren und eine genaue Aufwärts-Übertragung aufrechtzuerhalten.
  • Die Länge von jedem MPEG-2 Rahmen ist auf 188 Bytes für diese Ausführungsform festgelegt und das System kennzeichnet jeden MPEG-2 Rahmen, wenn er empfangen wird, mit dem abgetasteten Wert der lokalen Zeit. Weil die abgelaufene Zeit zum Empfangen von 188 Bytes berechnet werden kann, kann das CM unter Verwendung der Gleichung 1 die Frequenz des Oszillators (Fclock) bestimmen, der den 32 Bit Zähler des lokalen Zeitgenerators taktet. Lokale Frequenz (n) = (T(n) – T(n – 1)/188 TakteByte Gleichung 1wobei T(n) die lokale Zeit zu dem Beginn des n-ten Rahmens ist und T(n – 1) die lokale Zeit bei dem Beginn des (n – 1)-ten Rahmens ist.
  • Die Gleichung 1 stellt den momentanen Wert der lokalen Frequenz des lokalen Zeittakts dar. Es kann tatsächlich bevorzugt sein, einen gemittelten Wert der Taktefrequenz zu verwenden. Die bevorzugte Ausführungsform implementiert einen gleitenden Durchschnitt (Moving Average) der momentanen lokalen Taktfrequenz zur Zeit „n", wie in der Gleichung 2 nachstehend gezeigt: ALF(n) = (T(n) – T(n – y))/y Gleichung 2
  • Wenn ALF(n) gleich zu der durchschnittlichen lokalen Frequenz(n) (Average Local Frequency (n)) ist, d. h. die durchschnittliche lokale Frequenz n Y ist eine Potenz von 2, um für eine schnellere Hardwareteilungsmöglichkeit Vorkehrungen zu treffen. In der vorliegenden Ausführungsform wird die durchschnittliche lokale Frequenz in HW berechnet und kann durch die Firmware nach Erfordernis gelesen werden. Der Wert von y kann programmierbar sein, um die Einstellung der Mittelungsperiode (Durchschnittsbildungsperiode) zu ermöglichen.
  • 5 illustriert eine typische Zeitsequenz von Nachrichtenübertragungen in einem Kabelnetz. Die Aufwärts- und Abwärts-Kanäle können Nachrichten gleichzeitig übertragen. Das CMTS 110 überträgt Synchronisationsnachrichten 530 periodisch in dem Abwärts-Kanal. Die Periode zwischen Synchronisationsnachrichten 530 muss nicht unbedingt konstant sein. Wenn das CMTS 110 bestimmt, dass eine Aufwärts-Nachricht 534 übertragen werden sollte, dann sendet es eine Übertragungsbefehlsnachricht 532 an das Benutzermodem. Das Benutzermodem überträgt seine Nachricht in dem Aufwärts-Kanal zu der Zeit, die durch das CMTS spezifiziert wird, in der Übertragungsbefehlsnachricht 532. Die Funktionen initialisieren 500 der Phasenregelschleife (Phase Lock Loop; PLL Initialize), Phasenregelschleife-Aktualisierung (Phase Lock Loop Update) 510, und Triggerwert-Berechnen (Calculate Trigger Value) 520 können durch eine Ausführungsform der vorliegenden Erfindung ausgeführt werden.
  • 6 zeigt eine mögliche Anordnung von Kabelmodemdaten, die in dem Speicher in einer Ausführungsform der Erfindung gespeichert sind. Daten werden von dem CMTS in Einheiten übertragen, die als Rahmen 650 bezeichnet werden. Zum Beispiel kann das System MPEG-2 Rahmen verwenden, die jeweils 188 Bytes enthalten. Daten innerhalb der Rahmen werden in Nachrichten organisiert, zum Beispiel in die Zeitsynchronisationsnachricht 630. Die Zeitkennung 652, die den Wert des lokalen Takts (der lokalen Uhr) enthält, wenn das erste Byte von jedem Rahmen an dem Kabelmodem angekommen ist, wird in dem Speicher zusammen mit den Nachrichten von dem Rahmen gespeichert. Die Übertragungsbefehlsnachricht 532 enthält eine Übertragungszeit, die in der Systemzeit gemessen wird.
  • Das CM berechnet die abgelaufene Zeit zwischen CMTS Zeitstempeln in dem MPEG-2 Strom in Einheiten der lokalen Zeit in der folgenden Weise. Zunächst berechnet das CM die lokale Zeit, die äquivalent zu dem empfangenen CMTS Zeitstempel ist, wie in Gleichung 3 gezeigt: LT(n) = SN·ALF(n) + T(n) Gleichung 3 wobei ALF die durchschnittliche lokale Frequenz (Average Local Frequency) bezeichnet. SN stellt die Byte-Zahl von dem Start der SYNC Nachricht innerhalb des MPEG-2 Rahmens dar, und T(n) stellt die lokale Zeitkennung, die zu der Ankunft des ersten Bytes des n-ten MPEG-2 Rahmens gehört, der die SYNC Nachricht enthält, dar.
  • Als nächstes berechnet das CM die abgelaufene Zeit (ET(n)) zwischen der Ankunft der zwei CMTS Zeitstempeln in Einheiten der lokalen Zeit unter Verwendung der Gleichung 4: ET(n) = LT(n) – LT(n – 1) Gleichung 4wobei LT(n) die lokale Zeit der n-ten SYNC Nachricht ist und LT(n – 1) die lokale Zeit der (n – 1)-ten SYNC Nachricht ist. Eine allgemeinere Version der Gleichung 4 kann ebenfalls durch das CM verwendet werden, wie in der Gleichung 4a gezeigt: ET(n) = LT(n) – LT(n – y) 1 < y < Infinity Gleichung 4a
  • In der Gleichung 4a werden die SYNC Nachrichten nicht auf sequentielle SYNC Nachrichten beschränkt. Y definiert die Dezimierungsperiode, das heißt, die Periode, zwischen Abtastwerten.
  • 7 illustriert ein Blockdiagramm eines Kabelmodems 712, das eine bevorzugte Ausführungsform der Erfindung enthält. Der Nachrichtenempfänger 760 stellt eine physikalische Schnittstelle zu dem Verteilungssystem dar, wobei derartige Aufgaben wie die Erfassung der RF und die Speicherung der Inhalte der Nachrichten in Speicherwörter hinein, ausgeführt werden. Der Zeitkennungsgenerator 772 fängt den Wert der lokalen Uhr bzw. des lokalen Takts 768 ab, wenn das erste Byte von jedem Rahmen 750 an dem Benutzermodem ankommt, wobei der Wert des lokalen Takts als die Zeitkennung (652 in 6) in dem Speicher 762 gespeichert wird. Der Computer 764 liest die Inhalte der Nachrichten aus dem Speicher 762 zusammen mit den Zeitkennungen 652. Der Computer 764 berechnet einen Ereignistriggerwert und lädt ihn in das UTTR (Aufwärtszeit-zu-Übertragungs-Register; Upstream Time to Transmit Register) Register 770 hinein. Wenn der Wert des lokalen Takts 768 gleich zu dem Triggerwert ist, dann sendet der Vergleicher 766 ein Signal an den Nachrichtensender 774, um ihn zu veranlassen, eine Aufwärts-Nachricht zu senden bzw. zu übertragen.
  • Der Computer 764 enthält ein gespeichertes Programm, dass die Software-Phasenregelschleife (Software Phase Lock Loop; SPLL) enthält, die verwendet wird, um die zurückgewonnene Zeit (Recovered Time; RT) zu bestimmen und um zu bestimmen, ob die RT, die von dem CM geführt wird, zu der Systemzeit in dem CMTS synchronisiert ist.
  • Sobald das CM die Übertragungszeit des Systemtakts des CM auf das CMTS synchronisiert hat, kann das CM den Prozess zum Übertragen von Daten an das CMTS beginnen. Das CM überträgt die Daten an das CMTS in bestimmten Aufwärts-Zeitschlitzen. Die Aufwärts-Übertragungszeitschlitze werden durch das CMTS definiert, wobei MCNS MAP Nachrichten verwendet werden, und zwar für jedes CM in dem System. Diese Nachrichten werden an alle Kabelmodems auf dem Abwärts-Kanal übertragen und stellen eine Vorgehensweise bereit, um dem CMTS zu erlauben Übertragungszeitschlitze jedem CM zuzuweisen, das wünscht, Daten aufwärts an das CM zu übertragen. Das CMTS führt Aufwärtsübertragungs-Zeitschlitzzuweisungen innerhalb einer MCNS MAP Nachricht unter Verwendung einer ID, die einzigartig für jedes CM ist, und eines Werts der CMTS Systemzeit, die anzeigt, wann das gewählte CM eine Übertragung von seinen Daten an das CMTS beginnen soll, durch. Wenn das CM eine MCNS MAP Nachricht analysiert und feststellt, dass ihm ein Übertragungszeitschlitz zugeordnet worden ist, ist es eine Anforderung des Systems, dass es eine Übertragung von Daten synchronisiert zu der Zeit, die von dem CMTS innerhalb der MAP Nachricht spezifiziert wird, beginnen soll. In der bevorzugten Ausführungsform können Aufwärts-Übertragungen in dem richtigen Zeitschlitz übertragen werden, sobald die Software-Phasenregelschleife (SPLL) auf die Systemzeit an dem CMTS synchronisiert worden ist.
  • In der bevorzugten Ausführungsform besteht die CM Aufwärtsübernagungs-Schaltungsanordnung aus einem 32 Bitaufwärtszeit-zu-Übertragungsregister (Upstream Time to Transmit Register; UTTR) 770, das die lokale Zeit hält, zu der die Aufwärtsübernagungs-Schaltungsanordnung eine Übernagung eines Aufwärts-Datenrahmens an das CMTS beginnen wird, einen 32 Bit Vergleicher 766, und einen 32 Bit freilaufenden Zähler (bzw. lokale Uhr) 768. Nachdem dem CM ein Aufwärts-Übernagungszeitschlitz durch das CMTS erteilt worden ist und die CM Firmware die Übernagungszeit aus einer MAP Nachricht extrahiert hat, muss dann die CM Firmware die Übertragungszeit in eine äquivalente lokale Zeit umsetzen, die umgesetzte Übertragungszeit in das Aufwärts-Übernagungszeitregister programinieren, und die Aufwärtsübernagungs-Schaltungsanordnung für eine Übernagung freigeben. Wenn der Wert der lokalen Uhr mit dem Wert der lokalen Zeit übereinstimmt, die in das Aufwärts-Übernagungszeitregister (UTTR) 770 programmiert ist, dann kann die Aufwärtsübernagungs-Schaltungsanordnung beginnen ihre Daten aufwärts zu übertragen.
  • 8 zeigt ein Blockdiagramm der Initialisierungsfunktion (Initialization Function) 800 und der Aktualisierungsfunktion (Update Function) 810, die das Programm zum Berechnen der zurückgewonnenen Zeit (Program to Calculate Recovered Time) umfassen. Das Programm kann mit einer erweiterten Version ersetzt werden, ohne eine Modifikation der Hardwarekomponenten zu erfordern. In einigen Ausführungsformen kann eine erweiterte Version des Programms von dem CMTS an das Benutzermodem ohne eine Intervention durch den Benutzer übertragen werden.
  • Um den Schritt 802 in 8 auszuführen, scant der Computer die Daten in dem Speicher (6) bis er die Nachrichtenidentifizierer (Message Identifiers) für zwei Zeitsynchronisationsnachrichten (Time Synchronization Messagers) 630 findet. In dem Schritt 804 liest das Programm die Systemzeit (System Time), die in jeder Zeitsynchronisationsnachricht enthalten ist, und die Zeitkennung (Time Tag) 652, die in dem Speicher durch den Zeitkennungs-Generator 772 abgelegt wurde. Im Schritt 805 berechnet der Computer die lokale Frequenz des lokalen Zeittakts (der lokalen Zeituhr) durch Untersuchen des Verhältnisses der Anzahl von lokalen Zeittakten mit den Bytes in dem MPEG-2 Rahmen, wie mit der Gleichung 1 und Gleichung 2 beschrieben.
  • Nach dem Abschluss der Initialisierungsfunktion (Initialization Function), führt das Programmzum-Berechnen-der-zurückgewonnenen-Zeit (Program to Calculate Recovered Time) eine Aktualisierungsfunktion (Update Function) 810 aus, wie in 8 gezeigt. Im Schritt 812 scant der Computer 764 den Speicher 762, bis er das Auftreten einer Synchronisationsnachricht (Synchronization Message) 530 erfasst. Im Schritt 814 liest der Computer die Systemzeit, die in der Synchronisationsnachricht enthalten ist, und die Zeitkennung 652.
  • Im Schritt 816 berechnet der Computer 764 neue Abschätzungen für die zurückgewonnene Zeit (Recovered Time) und das OK zum Übertragen eines Signals (OK to Transmit Signal). RT stellt eine lokale Version der CMTS Systemzeit dar. Nachdem die CMTS Systemzeit lokal in dem Kabelmodem (Cable Modem) ist, erlaubt dies, dass die CMTS Systemzeit (206) als lokale Zeit (218) bezeichnet wird. Das OK-zum-Übertragen-eines-Signals (OK to Transmit Signal) wird durch Bestimmen des Fehlers zwischen dem gegenwärtigen Wert der zurückgewonnenen Zeit und dem gegenwärtig empfangenen Wert der CMTS Systemzeit erzeugt. Wenn dieser Fehler kleiner ist als ein Benutzer-definierter Schwellwert, dann wird das CM so betrachtet, dass es auf das CMTS synchronisiert ist und sicher Nachrichten aufwärts übertragen kann.
  • In einer bevorzugten MCNS Ausführungsform implementiert die Firmware innerhalb des Kabelmodems eine SPLL (Software-Phasenregelschleife), um einen Akkumulator auf den Mastertakt innerhalb des CMTS zu synchronisieren. Sobald die SPLL auf den CMTS Mastertakt synchronisiert ist, wird ihre Frequenz und Phase denjenigen des Mastertakts folgen, der in dem CMTS vorhanden ist, und zwar auf einer Langzeitbasis in einer Weise, die flexibel programmiert werden kann. Sobald diese Synchronisation auftritt, kann das CM sicher Daten innerhalb von irgendwelchen Aufwärts-Zeitschlitzen, die ihm durch das CMTS zugewiesen sind, übertragen. Der momentane Wert des synchronisierten SPLL Akkumulators wird als die zurückgewonnene Zeit (Recovered Time; RT) bezeichnet. Wenn der Absolutwert des Fehlers zwischen der RT und der Systemzeit, die von dem CMTS empfangen wird, kleiner als eine vom Benutzer definierte Schwelle ist, dann wird das CM so angesehen, dass es synchronisiert ist. Zusätzlich kann ein Hysterese-Kriterium derart definiert werden, dass dann, wenn der Absolutwert des Fehlers zwischen der RT und der von dem CMTS empfangenen Systemzeit kleiner als eine vom Benutzer definierte Schwelle für X mal in einer Zeile ist, dann das CM so angesehen wird, dass es synchronisiert ist.
  • 9a ist ein Blockdiagramm einer Ausführungsform der Erfindung, so wie sie verwendet wird, um Aufwärtsbwst-Übertragungen in einem Kabelsystem zu synchronisieren. Der Rückgewinnungstiming-Generator 900 enthält die Schaltungsanordnung, die allgemein eine Bursttiming aus Information erzeugt, die durch das Kabelsystem-Kopfende bereitgestellt wird. Der Rückgewinnungstiming-Generator 900 weist mehrere Eingabeeinstellungen für Systemparameter sowie für eine Eingabe für ein Kopfende-Timing 902 und eine abgelaufene Zeit 918 auf. Der Kopfenden-Timing Eingang 902 akzeptiert CMTS Zeitstempel, die beim Erzeugen des Aufwärtsburst-Übertragungstimings verwendet werden. Der Eingang 918 für die abgelaufene Zeit wird verwendet, um die lokal gemessene abgelaufene Zeit zwischen empfangenen CMTS SYNC Nachrichten zu akzeptieren.
  • Der Wert ET(n) für die abgelaufene Zeit wird durch die Berechnungseinheit 965 für die abgelaufene Zeit erzeugt. Die Berechnungseinheit für die abgelaufene Zeit akzeptiert lokale Zeitkennungen T(n) für den Start und das Ende der Dezimierungsperiode 937. Die Berechnungseinheit 965 für die abgelaufene Zeit akzeptiert auch einen Eingang SN. Für den Fall der MCNS Ausführungsform stellt SN die Byte-Anzahl bei dem Start der SYNC Nachricht innerhalb des MPEG-2 Rahmens dar. In dem Fall der DVB Ausführungsform stellt SN die Symbolanzahl an Stelle der Byte-Anzahl dar.
  • Der Rückgewinnungstiming-Generator 900 nimmt mehrere Systemparametereingänge auf, die verwendet werden können, um das System auf verschiedene Implementierungsanforderungen durch Einstellen von Parametern innerhalb des Rückgewinnungstiming-Generators 900 zuzuschneiden.
  • Die Hysteresewerte 933 steuern die Anzahl, wie oft in einer Zeile der Fehlerwert 920 kleiner als die vom Benutzer definierte Schwelle 935 sein muss, bevor der Vergleicher (921 der 9b) signalisiert, dass es OK zum Senden 953 ist. Der Hysteresewert des voreingestellten Falls (Default Falls) der Ausführungsform der gegenwärtigen Darstellung ist 1. Die vom Benutzer definierte Schwelle 935 steuert die Erzeugung des Signals 953 für das OK zum Senden. Die vom Benutzer defnierte Schwelle 935 steuert den Betrag des Timingfehlers, der toleriert werden wird und noch eine Aufwärtsburst-Übertragung erlauben wird. Durch Einstellen dieses Eingangs kann eine Vielzahl von Timingtoleranzen aufgenommen werden. Die Dezimierungsperiode 937 steuert die Frequenz der Berechnung der RT. Die Verstärkungen G1 939, G2 941 und G3 943 sind Systemverstärkungen, die verschiedene Parameter der Software-Phasenregelschleife (SPLL) steuern, die innerhalb einer Ausführungsform des Generators 900 für das zurückgewonnene Timing verwendet wird. Die Akkumulationsperiode (Accumulation Period) 945 stellt einen Multiplikationsfaktor proportional zu der Periode für den Multiplikationsakumulator 912 (der 9b) ein. Die Akkumulationsperiode ist gleich zu der voranstehend erwähnten abgelaufenen Zeit (Elapsed Time). Die Mittenfrequenz 914 ist ein anfänglicher Wert für die Software-Phasenregelschleife (SPLL), der innerhalb einer Ausführungsform des Generators 900 für das zurückgewonnene Timing verwendet wird, um einen Startpunkt für die SPLL bereitzustellen. Sie kann beseitigt werden mit dem Nachteil, dass die SPLL mehr Zeit benötigen wird zum Synchronisieren des Ausgangs für die zurückgewonnene Zeit 916 von dem Generator für das zurückgewonnene Timing, der eine zurückgewonnene Kopfenden-Timinginformation synchronisiert zu dem Kopfenden-Timingeingang 902 und abgeleitet davon bereitstellt.
  • Der Block 955, der Aufwärtsübertragungszeit-zu-Lokalzeit-Übertragungswandler, akzeptiert die zurückgewonnene Zeit 916, die lokale Zeit 918 und die Aufwärts-Übertragungszeit 959 (abgeleitet von der Kopfendeninformation) und das OK-zum-Senden 953 und erzeugt eine Aufwärtsbwst-Übertragungszeit im Hinblick auf die lokale Zeit 918. Der Wandler 955 zum Senden bei der Aufwärts-Sendezeit zur lokalen Zeitaussendung erzeugt die lokale Sendezeit 957 (LTT) zu der Aufwärts-Zeit und stellt diese Zeit 957 (LTT) an dem Senderegister 70 bereit.
  • 9b ist ein Blockdiagramm des Mechanismus für die Software-Phasenregelschleife (SPLL), der verwendet wird, um die zurückgewonnene Zeit (Recovered Time) zu berechnen. Wie von Durchschnittsfachleuten in dem technischen Gebiet ersehen werden kann, kann der Generator 900 für das zurückgewonnene Timing (Recovered Timing Generator) unter Verwendung einer Hardware-Implementierung, einer Software-Implementierung oder einer Kombinationsimplementierung verwirklicht werden. In der gegenwärtigen bevorzugten Ausführungsform wird der Generator 900 für das zurückgewonnene Timing in Software implementiert, um die Fähigkeit bereitzustellen, die Programmierung flexibel zu ändern. Der Mechanismus der 9 ist ein Generator 900 für das zurückgewonnene Timing, der ein Kopfenden-Timingsignal 902 akzeptiert und ein zurückgewonnenes Zeitsignal 916 erzeugt, das ein Timing darstellt, dass durch das Kopfende in Aufwärts-Aussendungen erwartet wird. Der Generator 900 für das zurückgewonnene Timing korrigiert die zurückgewonnene Zeit, vorausgesetzt, dass er die Kopfenden-Timinginformation empfängt. Der Mechanismus zum Berechnen der zurückgewonnenen Zeit wird unter Bezugnahme auf eine bestimmte Ausführungsform beschrieben werden, bei der die einzige Hardwarekomponente ein 32 Bit Zähler ist, der die lokale Zeit erzeugt. Diese bestimmte Ausführungsform ist wünschenswert, weil sie erlaubt, dass der Generator 900 für die zurückgewonnene Zeit ohne die physikalische Intervention durch einfaches Herunterladen von neuer Software aktualisiert werden kann.
  • In den 9A und 9B nimmt ein Summationsblock 904 eine Kopfenden-Timinginformation 902 an. Die Information wird dann in das System gekoppelt, wo der Schalter S2 919 geschlossen ist. Die Rate, bei der der Schalter geschlossen wird, ist die Dezimierungsperiode 937. Die gegenwärtige wieder hergestellte Systemzeit 916 wird von der Kopfenden-Timinginformation 902 subtrahiert, um eine Fehlerdarstellung 920 zu schaffen. Der Fehler 920, der eine Differenz zwischen der Kopfenden-Timinginformation 902 und der wieder hergestellten Zeit 916 darstellt, wird in eine erste Verstärkungsstufe 906 gekoppelt, die eine Verstärkung G1 aufweist. Der Wert von G1 ist ein Systemparameter, der von einem Benutzer gesteuert werden kann, um die SPLL auf ihre Anforderungen zuzuschneiden. Die Verstärkungsstufe 906 multipliziert den Fehler 920 mit der vom Benutzer definierten Verstärkung G1 und koppelt einen Ausgangswert, der die Phasendifferenz zwischen der zurückgewonnenen Zeit und der Kopfenden-Timinginformation 902 darstellt. Der Ausgangswert der Verstärkungsstufe 906 wird dann in einen Summationsblock 910 hineingekoppelt. Der Fehler 920 wird auch in eine zweite Verstärkungsstufe 908 hineingekoppelt, die dann diesen mit einer Verstärkung G2 multipliziert und einen Ausgangswert in den Akkumulator 914 hineinkoppelt. Der Akkumulator 914 akkumuliert den Ausgangswert, der an ihm durch die zweite Verstärkungsstufe 908 bereitgestellt wird, über einer Periode, die die abgelaufene Zeit 918 zwischen sukzessiven Perioden der Kopfenden-Timinginformation 902 darstellt, die in den Summationsblock 904 bei Perioden hineingekoppelt werden, die durch die Dezimierungsperiode 937 gesteuert werden, die den Schalter s2 919 steuert. Der Ausgang des Akkumulators 914, der eine Integration des Fehlers über der Zeit darstellt, d. h. eine Frequenzdifferenz, wird in den Summationsblock 910 hineingekoppelt, wo er zu dem Ausgang des Verstärkers 906 addiert wird. Der Ausgang von G1 906 und der Fhat 929 werden durch den Summationsblock 910 summiert und der Ausgang des Summationsblocks 910 wird in einen Multiplikationsakkumulator 912 hineingekoppelt. Der Ausgang des Multiplikationsakkumulators wird dann durch eine Verstärkung 917 gekoppelt, um die zurückgewonnene Zeit (Recovered Time) 916 zu erzeugen. Die zurückgewonnene Zeit (Recovered Time) 916 wird dann in den Summationsblock 904 hineingekoppelt, wo sie von der Kopfenden-Timinginformation 907 subtrahiert wird.
  • Der Fehler zwischen dem Kopfenden-Timing 902 und der zurückgewonnenen Zeit 916, d. h. der Fehler 920, wird in einen Vergleicher 921 hineingekoppelt, wo er mit einer vom Benutzer definierten Schwelle 935 in dem Vergleicher 921 verglichen wird. Der Ausgang des Vergleichers 921 zeigt an, ob der Fehler 920 innerhalb von Grenzen ist, die klein genug sind, um eine Aufwärts-Burstübertragung zu ermöglichen.
  • Wenn der Fehler 920 des CMs (CMTS Zeitstempel 902 – zurückgewonnene Zeit (Recovered Time 916)) kleiner als ein gegebener Schwellwert U Y mal in einer Zeile ist, dann wird üblicherweise die SPLL als synchronisiert deklariert und das CM kann eine Übertragung von Rahmen aufwärts beginnen. Da in der vorliegenden Erfindung dies in Firmware gemacht wird, können die Variablen U und Y flexibel gewählt werden. Wenn das CM eingerastet ist und der Phasenfehler des Systems größer als oder gleich wie eine gegebene Schwelle X V mal in einer Zeile ist, dann wird das CM auch als „nicht eingerastet" („out of lock") deklariert. Da dies in Firmware ausgeführt wird, können die Variablen X und V ebenfalls flexibel gewählt werden.
  • Für die letzte Frequenzsammlung können die ersten zwei Systemzeit-Abtastwerte, die von dem CMTS empfangen werden, verwendet werden, um den ersten Wert des Akkumulatorausgangs (0) 914 zu berechnen. Akkumulatorausgang (0) 914 = ST(–1) – ST(–2) Gleichung 7wobei der Akkumulatorausgang 914 zu einer Zeit als 0 einen Anfangswert der Differenz zwischen zwei sukzessiven vergangenen Zeitstempeln, die von dem CMTS empfangen werden, aufweist.
  • MCNS AUSFÜHRUNGSFORM
  • In einer bevorzugten MCNS Ausführungsform ist der Mechanismus der 9b ein ausführliches Blockdiagramm des Generators 900 für das zurückgewonnene Timing, der die CMTS Zeitstempel-Information aus Datenpaketen annimmt, die von dem CMTS übertragen werden, und der unter Verwendung einer lokalen Zeitbasis eine zurückgewonnene Zeit 916 erzeugt, die der CMTS Zeit entspricht, und ein OK-zum-Senden Signal, das dazu dient, eine Aufwärts-Übertragung auf Grundlage davon, ob die in 9b dargestellte SPLL synchronisiert ist oder nicht, zu aktivieren oder zu deaktivieren. Der Generator 900 für die zurückgewonnene Zeit korrigiert die zurückgewonnene Zeit, vorausgesetzt, dass er CMTS Zeitstempel empfängt. Der Mechanismus zum Berechnen einer zurückgewonnenen Zeit wird jedoch unter Bezugnahme auf eine bestimmte Ausführungsform beschrieben werden, bei der die einzige Hardwarekomponente ein 32 Bit Zähler ist, der die lokale Zeit erzeugt. Diese besondere Ausführungsform ist wünschenswert, weil sie erlaubt, dass der Generator 900 für die zurückgewonnene Zeit aktualisiert werden kann, und zwar ohne die physikalische Intervention durch einfaches Herunterladen (Downloading) von neuer Software.
  • Ein Summationsblock 904 akzeptiert einen CMTS Zeitstempel 902. Ein Schalter 919 geht dem Summationsblock 904 voraus. Der Schalter 919 soll zeigen, dass es nicht erforderlich ist, jeden empfangenen Zeitstempel zu akzeptieren. Die Anzahl von Zeitstempeln, die fallengelassen werden, bevor der Schalter sich schließt, wird als die Dezimierungsperiode bezeichnet. Die Dezimierungsperiode wird durch den Benutzer typischerweise programmiert, um ungefähr 180 ms zwischen SPLL Schleifen-Aktualisierungen aufrechtzuerhalten. Dieses Merkmal erlaubt der Firmware die Systembandbreiten-Anforderungen der SPLL zu minimieren. Wenn man hinnimmt, dass die SPLL einen Zeitstempel auf Grundlage der Kriterien akzeptiert, die durch die Dezimierungsperiode definiert werden, so muss die SPLL aktualisiert werden, wenn der Zeitstempel akzeptiert wird. Um eine Schleifen-Aktualisierung auszuführen, muss zunächst die gegenwärtige zurückgewonnene Zeit 916 berechnet werden. Die gegenwärtige zurückgewonnene Systemzeit 916 wird berechnet, indem der vorangehende Wert von Fehler 922 genommen wird und dieser mit der Zeit multipliziert, die abgelaufen ist zwischen den gegenwärtigen und letzten Schleifen-Aktualisierungen, wie in der Gleichung 4a berechnet (wobei y die Dezimierungsperiode ist), und Addieren dieses Werts zu dem vorangehenden Ausgang des Akkumulators 912, multipliziert mit der abgelaufenen Zeit zwischen SPLL Aktualisierungen. Die Gleichung für die Berechnung wird mit der Gleichung 11 gezeigt. Akkumulator 912(n) = Akkumulator 912(n – 1) + ET(n)·FEHLER 922(n–1) Gleichung 11
  • Der Ausgang des Akkumulator 912 wird dann durch eine Verstärkung 916 gekoppelt. Der Ausgangswert der Verstärkung 916 ist die zurückgewonnene Zeit (Recovered Time) 916, die dem empfangenen CMTS Zeitstempel entspricht. Die zurückgewonnene Zeit (Recovered Time) 916 wird nicht in den Summationsblock 904 hineingekoppelt, wo er von dem empfangenen CMTS Zeitstempel 902 subtrahiert wird, um eine Fehlerdarstellung 920 zu schaffen. Der Fehler 920, der die Differenz zwischen der CMTS Zeit 902 und der zurückgewonnenen Zeit 916 darstellt, wird in eine erste Verstärkungsstufe 906 hineingekoppelt, die eine Verstärkung G1 aufweist. Die Verstärkungsstufe 906 multipliziert den Fehler 920 mit einer geeigneten Konstanten G1 und koppelt einen Ausgangswert, der die Phasendifferenz zwischen der zurückgewonnenen Zeit und der CMTS Zeit darstellt. Der Ausgangswert der Verstärkungsstufe 906 wird dann durch eine Vermittlungsstelle S1 918 in einen Summationsblock 910 gekoppelt. Der Fehler 920 wird ebenfalls in eine zweite Verstärkungsstufe 908 gekoppelt werden, die dann diese mit einer Verstärkung G2 multipliziert und einen Ausgangswert in einen Akkumulator 914 hineinkoppelt. Der Akkumulator 914 akkumuliert den Ausgangswert, der an ihm bereitgestellt wird, durch die zweite Verstärkungsstufe 908, wie in 12 gezeigt, wobei Fhat(n) den gegenwärtigen Wert des Ausgangs des Akkumulators 914 darstellt. Fhat(n) = Fhat(n – 1) + FEHLER(n)·G2 Gleichung 12
  • Der Ausgang des Akkumulators 914 (Fhat(n)), der eine Integration des Fehlers-über-der-Zeit, d. h. eine Frequenzdifferenz, darstellt. Der Ausgang wird dann in den Summationsblock 910 hineingekoppelt, wo sie sowohl zu dem Ausgang des Verstärkers 906 als auch der Mittenfrequenz hinzugefügt wird, um den gegenwärtigen Wert des ERROR (FEHLER) 922 Signal zu erzeugen. Die Mittenfrequenz ist eine vom Benutzer zugeführte Konstante, die alleine der Schleife erlaubt, sich selbst schnell wieder aufzurichten und bezieht sich auf die Frequenz des lokalen Takts.
  • Sobald der gegenwärtige Wert des FEHLERS 922 zwischen dem gegenwärtigen Wert von RST und dem empfangenen CMTS Zeitstempel berechnet worden ist muss die Schleife den gegenwärtigen Wert des Fehlers 920 untersuchen, um zu bestimmen, ob die SPLL auf das CMTS synchronisiert ist. Um diese Bestimmung durchzuführen vergleicht die Firmware den gegenwärtigen Wert des Fehlers 922 mit einem vom Benutzer zugeführten Verriegelungs-Schwellwert. Wenn der gegenwärtige absolute Wert des Fehlers 922 diesen Wert übersteigt, dann wird die SPLL die Bestimmung durchführen, dass sie nicht eingerastet ist und wird das OK-zum-Senden-Flag auf FALSCH setzen, sodass Aufwärts-Übertragungen nicht zugelassen werden. Wenn der gegenwärtige Absolutwert des Fehlers 922 kleiner als oder gleich wie der Wert des vom Benutzer zugeführten Verriegelungs-Schwellwerts ist, dann wird die SPLL die Bestimmung durchführen, dass sie auf das CMTS synchronisiert ist und wird das OK-zum-Senden-Flag auf wahr setzen, sodass Aufwärts-Übertragungen zugelassen werden. Es sei darauf hingewiesen, dass andere ausgefeiltere Techniken auch möglich sind, um zu bestimmen, ob die SPLL synchronisiert ist, beispielsweise wenn der Phasenfehler des CM (CMTS Zeitstempel 902 minus zurückgewonnene Systemzeit 916) kleiner als ein gegebener vom Benutzer definierter Schwellwert U Y mal in einer Zeile ist, dann wird die SPLL als „eingerastet" deklariert und das CM kann eine Übertragung von Rahmen aufwärts beginnen. Da in der gegenwärtigen Ausführungsform dies in Firmware durchgeführt wird, können die Variablen U und Y flexibel gewählt werden. Wenn das CM eingerastet ist und der Phasenfehler des Systems größer oder gleich wie ein gegebener Schwellwert X V mal in einer Zeile ist, dann wird das CM als „nicht eingerastet" deklariert. Da dies in Firmware durchgeführt wird, können die variablen X und V auch flexibel gewählt werden. Wenn das System als eingerastet deklariert wird, dann wird das Signal OK-zum-Senden-Aufwärts (OK to Transmit Upstream) auf wahr gesetzt und Aufwärts-Übertragungen werden freigegeben.
  • Die Gleichungen 13a, 13b und 13c sind Formeln, die verwendet werden können, um die zurückgewonnene Systemzeit (Recovered System Time) für jede empfangene SYNC Nachricht zu berechnen. ET(n) ist die abgelaufene Zeit zwischen zwei empfangenen SYNC Nachrichten, und n stellt die Zeit dar, zu der die n-te Synchronisationsnachrichtempfangen wurde. RST(n) =(G1_Ausgang(n – 1) + Akkumulator 912 Ausgang (n – 1)·ET(n) + Mittenfrequenz)·G3 Gleichung 13awobei RT(n) die zurückgewonnene Zeit zu einer Zeit gleich (n) darstellt, G1_Ausgang(n – 1) der Ausgang der Verstärkungsstufe 906 zur Zeit (n – 1) ist, und der Akkumulatorausgang (n – 1) gleich zu dem Ausgang des Akkumulators 914 ist. ET von (n) ist die abgelaufene Zeit zur Zeit (n), wie in der Gleichung 4 beschrieben. RT von (n – 1) ist die zurückgewonnene Zeit zur Zeit gleich zu (n – 1). G1 Ausgang(n – 1) = (ST(n – 1) – RT(n – 1))·G1 Gleichung 13bwobei G1 Ausgang von (n – 1) gleich zu dem Ausgang der Verstärkungsstufe G1 906 zur Zeit (n – 1) ist. ST von (n – 1) ist gleich zu der tatsächlichen CMTS Systemzeit zur Zeit (n – 1). RT von (n – 1) ist gleich zu der zurückgewonnenen Systemzeit bei (n – 1). ST(n – 1) stellt den früheren Zeitstempel dar, der von dem CMTS empfangen wurde und verwendet wurde, um die SPLL zu aktualisieren. G3 stellt die Verstärkung der Verstärkungsstufe 916 dar und G1 stellt die Verstärkung der Verstärkungsstufe 906 dar. Akkumulator-Ausgang 914(n – 1) = (ST(n – 1) – RT(n – 1))·G2 + Akkumulator-Ausgang 914(n – 2) Gleichung 13cwobei die Anfangsbedingungen zur Zeit 0 folgendermaßen sind:
    • G1_Ausgang(0) = 0,
    • Akkumulator-Ausgang 914 (0) = 0 und
    • RT(0) = ST(0).
  • Wenn die SPLL eingerastet ist, kann die Systemzeit auf einen Wert der lokalen Zeit unter Verwendung der Gleichung 14 umgewandelt werden: LT(N) = TT(N)·((LT(n) – LT(n – 1))/(RT(n) – RT(n – 1)) + LT(n) Gleichung 14wobei TT(n) = die Übertragungszeit zur Zeit N ist und LT(n) der transformierte Wert der lokalen Zeit entsprechend zur Zeit N, der in die Aufwärts-Übertragungsschaltungsanordnung programmiert wird, ist. RT von (n) ist die zurückgewonnene Zeit zur Zeit (n) und RT von (n – 1) ist die zurückgewonnene Zeit zur Zeit (n – 1). LT(n) ist die lokale Hardwarezeit zur Zeit (n) und RT von (n – 1) ist die zurückgewonnene Zeit zur Zeit (n – 1). LT(n) ist die lokale Hardwarezeit, wie mit der Gleichung 3 beschrieben, zur Zeit (n) und LT(n – 1) ist die lokale Hardwarezeit zur Zeit n – 1. Der Wert von LT(N) kann in das Aufwärts-Übertragungs-Zeitregister UTTR hineinprogrammiert werden, um ein Paket aufwärts bei der korrekten Zeit N zu senden.
  • 9e ist ein ausführliches Blockdiagramm, das die Komponenten des multiplizierenden Akkumulators (Multiplikationsakkumulators) 912 der 9b darstellt. Das Fehlersignal 922 wird in den Multiplikationsakkumulator 912 hineingekoppelt, wo es mit der abgelaufenen Zeit (n) in einem Multiplizierer 969 multipliziert wird. Der Ausgang des Multiplizierers 969 wird dann in einem Addierer 971 hineingekoppelt. Der Ausgang des Addierers wird in ein Verzögerungselement 973 hineingekoppelt, dessen Verzögerung durch einen Eingang 937, die Dezimierungsperiode, gesteuert wird. Der Ausgang des Verzögerungselements 973 wird als ein Ausgang 923 des Multiplikationsakkumulators genommen. Der Ausgang des Verzögerungselements 973 wird auch an den Addierer 971 zurückgeführt, wo er zu dem Ausgang des Multiplikators 969 hinzuaddiert wird und in den Eingang des Verzögerungselements 973 eingekoppelt wird.
  • 9d ist ein ausführlicheres Blockdiagramm des Akkumulators 914. Der Ausgang der Verstärkungsstufe G2 908 ist das Signal 909. Das Signal 909 wird als ein Eingang in den Akkumulator 914 eingekoppelt. 909 wird dann in einen Addierer 975 innerhalb des Akkumulators 914 eingekoppelt. Der Ausgang des Addierers 975 wird in ein Verzögerungselement 977 eingekoppelt, wo die Verzögerung durch die Dezimierungsperiode 937 gesteuert wird. Der Ausgang des Verzögerungselements 977 umfasst den Ausgang des Akkumulators 929, der auch mit Fhat bezeichnet ist. Der Ausgang des Verzögerungselements 977 wird auch zurückgeführt und in den Addierer 975 eingekoppelt.
  • 9e illustriert die Implementierung einer lokalen Uhr (eines lokalen Takts) innerhalb der vorliegenden Ausführungsform. 981 ist ein 32 Bit Zähler, dessen Ausgang 985 mit 32 Bits die lokale Zeit umfasst, die durch das System beim Erzeugen von Zeitstempeln verwendet wird. Der 32 Bit Zähler wird durch Fclock 983 getaktet, der ein lokaler Frequenzgenerator innerhalb des Systems ist. Andere Ausführungsformen können verschiedene Frequenzen von Fclock 983 und Bit-Zähler 981 mit verschiedener Länge verwenden, um die Anforderungen einer bestimmten Implementierung zu erfüllen.
  • DVB AUSFÜHRUNGSFORM
  • Das verallgemeinerte DVB Kabelsystem ist hinsichtlich der Topologie und der Frequenzzuordnung ähnlich wie das in 2 dargestellte MCNS System. Das In-Band-(IB)-Verfahren zum Transferieren von Daten innerhalb des DVB Systems verwendet auch eine FDMA Abwärts-(DS)-Aussendung. Das In-Band-(IB)-Verfahren zum Transferieren von Daten innerhalb des DVB Systems verwendet auch MPEG-2 Transportstromrahmen (Transport Streamframes) (wie in 4 dargestellt). Das In-Band-(IB)-Verfahren zum Transferieren von Daten innerhalb des DVB Systems verwendet auch FDMA und TDMA Zeitteilungs-Mehrfachzugriff (bzw. Time Division Multiple Access) für eine Aufwärts-(US)-Übertragung an das Kopfende, das in 2 dargestellt ist. In dem DVB System gibt es keine Systemzeitstempel, die abwärts übertragen werden, im Gegensatz zu dem MCNS System, das CMTS Zeitstempel, die die CMTS Systemzeit enthalten, abwärts überträgt, an Stelle davon wird Information an dem Beginn von 3 Millisekunden Perioden übertragen. In einem DVB System wird die Zeit zum Übertragen des Aufwärts-Bursts durch das Kopfende (Head End; HE) in Einheiten einer Systemtaktzeit, wie für den Fall mit dem MCNS System, nicht bereitgestellt und an Stelle davon wird eine Nummer eines Schlitz-zum-Senden (Slot to Transmit; STT) bereitgestellt.
  • 10a ist eine grafische Darstellung des Timings, das für eine Aufwärts-Übertragung in einem DVB System definiert ist. Das Aufwärts-Aussendezeit-Kontinuum ist in sequentielle, sukzessive 3 Millisekunden Perioden unterteilt, z. B. 1021, 1023, 1025 und 1027. Jede 3-Millisekunden Periode ist weiter in 3 eine-Millisekunde Perioden unterteilt, z. B. 1029, 1031 und 1033. Jede eine-Millisekunde Periode ist weiter in Übertragungsschlitze und eine freie Zeit unterteilt, z. B. 1035, 1037 und 1039 freie Intervalle (FI), z. B. 1041. Die Anzahl von Schlitzen pro einer-Millisekunde Periode (m) und die Anzahl von Bits in dem FI wird durch die Bitrate des Aufwärts-(US)-Kanals bestimmt. Die beispielhafte Bitrate in dem DVB System, das in 10a dargestellt ist, beträgt 1,544 Megabits/Sekunde. Für den Fall einer Aufwärts-Aussenderate von 1,544 Megabits/Sekunde, ist die Anzahl von Schlitzen pro einer-Millisekunde Periode m gleich zu 3 und das FI ist 8 Bits. Durch Verdoppeln der Aufwärts-Aussenderate auf 3,088 Megabits/s, wird die Anzahl von Schlitzen pro Millisekunden-Periode auf 6 verdoppelt. Durch Verdoppeln der Bitrate von 3,088 Megabits/s auf 6176 Megabits/s verdoppelt sich wiederum die Anzahl von Schlitzen m einmal auf 12 und das FI steigt auf 32 Bits an. Jeder Schlitz, z. B. 1035, 1037 oder 1039, ist 64 Bytes lang, unabhängig von der Übertragungsrate. Jeder 3 Millisekunden-Periode, z. B. 1021, 1023, 1025 und 1027 wird eine 10 Bit sequentielle Integer-Seriennummer ohne Vorzeichen durch den INA zugewiesen, der als das Aufwärts-Schlitzpositions-Register (Upstream Slot Position Register; USPR) bekannt ist. Übertragungsschlitze werden auch sequentiell nummeriert, und starten von 0, genauso wie dies die 3 Millisekunden Perioden tun. Wenn 9 Schlitze pro 3 Millisekunden Periode vorhanden sind, wie in 10a dargestellt, enthält die 3 Millisekunden Periode 0 die Schlitze 0 bis 8, die 3 Millisekunden Periode 1 enthält die Schlitze 9 bis 17, die Aussendeperiode 2 enthält die Schlitze 18 bis 26, etc. Die erste Schlitznummer in einer 3 Millisekunden Periode, dessen Seriennummer auf Grundlage dieses USPRs mit der Gleichung 15 berechnet werden kann, ist: Erster Schlitz # = USPR·3·m Gleichung 15
  • Jede aufeinander folgende Schlitznummer wird durch Addieren von eins zu der Nummer des vorangehenden Schlitzes berechnet. Wenn also 9 Schlitze pro Periode (wie in 10a dargestellt) vorhanden sind und die Nummer der 3-Millisekunden-Periode 5 ist, dann wird der erste Schlitz in der Periode 5 mit 45 nummeriert (d. h. Schlitz # = USPR· m·3 = 5·3·3), und die übrigen Schlitze werden sequentiell 46 bis 53 nummeriert. Ein INA kann einen spezifischen Übertragungsschlitz einer bestimmten NIU dadurch zuweisen, dass der NIU die Nummer des Schlitzes-zum-Senden (Slot-to-Transmit; STT) angezeigt wird, die von der NIU verwendet werden soll für eine Aufwärts-Übernagung.
  • Die Schlitznummer, die einer NIU für eine Aufwärts-Übertragung zugewiesen worden ist, kann in eine Aufwärts-Zeit-zum-Senden (Upstream Time to Transmit; UTT) umgewandelt werden, wenn folgendes vorhanden ist: Die Zeit des Beginns der 3 Millisekunden Perioden, die Anzahl von Schlitzen innerhalb einer 3 Millisekunden Periode, die 3·m Schlitze ist, die Anzahl von Bytes pro Schlitz, die auf 64 Bytes in dem DVB System festgelegt ist, die Anzahl von Bits pro freiem Intervall (z. B. 1041), die m/3 Bytes ist, das USPR und die STT.
  • 10b ist eine grafische Darstellung der Timing- und Synchronisationsinformation, die von einem INA an NIUs während der Abwärts-Übertragung eines MPEG-2 Datenstroms 1001 transportiert wird. 1001 stellt einen MPEG-2 Strom dar, der sukzessive MPEG-2 Rahmen 1003, 1013 etc. umfasst. Jeder MPEG-2 Rahmen umfasst 188 Bytes mit Daten. Der MPEG-2 Rahmen mit der Nummer 1003 ist ein spezieller Typ von MPEG-2 Rahmen, der als ein MAC (Medienzugriffssteuerung; Media Access Control) Steuernachrichtenformat bekannt ist. Der MAC MPEG-2 Rahmen 1003 wird ebenfalls als ein Synchronisations-Rahmen bezeichnet, wenn die Synchronisationsinformation in dem Rahmen freigegeben wird. Der MAC Nachrichtenrahmen 1003 enthält darin zwei Zahlen die zur Synchronisation von Aufwärts- Übertragungen verwendet werden. Die erste Zahl ist die 10 Bits USPR (Aufwärts-Zeigerregister) 1017 und wird verwendet, um an der NIU die 3 Millisekunden Periode mit der Serien-# zu identifizieren. Die USPR Nummer, die in der SYNC Nachricht enthalten ist, wird auch als der Aufwärts-Markierungswert (Upstream Marker Value; UMV) 1007 bezeichnet. Der UMV ist ein 16-Bit Symbolzeiger. Der 16-Bit Symbolzeiger stellt eine Versetzung in Symbolen zwischen dem Start des nächsten MPEG-2 Rahmens 1013 nach der MAC SYNC Nachricht 1003 und dem Beginn der 3-Millisekunden Periode bereit. Jeder Rahmen innerhalb des MPEG-2 Datenstroms 1001 ist aus Symbolen gebildet. Symbole sind Gruppen von Bits, die diskrete Mengen von Information darstellen. Die Anzahl von Bits, die ein Symbol darstellen können, ist unterschiedlich für unterschiedliche Typen der Modulation. Zum Beispiel umfasst QPSK (Quadraturphasen-Umtastung; Quadrature Phase Shift Keying) zwei Bits pro Symbol. 16-QAM umfasst 4 Bits pro Symbol.
  • Um den Start der 3 Millisekunden Markierung (TMSM(k) 1011 zu bestimmen, wird die NIU Symbole von dem MPEG-2 Headerwert 47 1015, der den Beginn des MPEG-2 Rahmens 1013, des nächsten MPEG-2 Rahmens, der der MAC SYNC Nachricht 1003 folgt, zählen. Die 3 Millisekunden Markierung (TMSM(k)) 1011 beginnt mit UMV Symbolen von dem Ende des Headers 1015, der den Beginn des MPEG-2 Rahmens 1013, der dem MAC Nachrichten-SYNC-Rahmen 1003 folgt, markiert.
  • Die Komponenten der DVB Ausführungsform sind ähnlich wie diejenigen der MCNS Ausführungsform, die voranstehend unter Bezugnahme auf 7 beschrieben wurde. Die Blöcke 760, 772, 762, 768, 770, 774 und 766 können für beide MCNS und DVB Ausführungsformen mit geeigneten Änderungen in dem Computerprogramm, das in dem Block 764 enthalten ist, und in den Speicherinhalten, die zu dem Block 762 gehören, sein. Alle Berechnungen, die in den beschriebenen DVB Ausführungsformen verwendet werden, werden im Hinblick auf lokale (NIU) Zeitwerte ausgeführt, da keine Systemzeit vorhanden ist, die wie in dem MCNS Fall bereitgestellt wird.
  • Eine erste DVB Ausführungsform, die das In-Band (IB) Verfahren beinhaltet, wird nachstehend beschrieben: Wenn jeder MPEG-2-Rahmen an der NIU ankommt, wird dessen Ankunftszeit gespeichert, genauso wie bei der in 4 dargestellten MCNS Ausführungsform. LTT(n) stellt die lokale Zeitkennung (Local Time Tag) dar, die die Ankunftszeit des ersten Bytes des n-ten Rahmens enthält. In dem DVB Fall bezeichnet n die Seriennummer des MPEG-2 Rahmens 1013, der unmittelbar nach dem SYNC Nachrichtenrahmen 1003 ankommt.
  • Um eine Timinginformation bei der Ankunftsrate von Symbolen zu erhalten, wird die Differenz in Ankunfrszeiten einer Sequenz von x MPEG-2 Rahmen angegeben. Der Wert von x ist ein Benutzerprogrammierbarer Mittelungswert und kann in Abhängigkeit von Implementierungsanforderungen eingestellt werden. LTT(n) – LTT(n – x) ist die Differenz in der lokalen Ankunftszeit der (n – x)ten und nten MPEG-2 Rahmen.
  • BPS stellt die Anzahl von Bits pro Symbol (Bits per Symbol) in der Abwärtsübertragung dar. Die Anzahl von Bits pro Symbol ist durch den Typ der QAM Modulation festgelegt, der verwendet wird, um die Abwärts-Daten an die NIU weiterzuleiten.
  • UMV (USPR) stellt die Anzahl von Symbolen zwischen dem „47" MPEG-2 Header und dem Beginn der 3 Millisekunden Markierung TMSM(k) 1011, die den Beginn der USPR 3 Millisekunden Periode markiert, dar (in der MCNS Ausführungsform wird ein ähnlicher Wert N verwendet, um den System-Zeitversatz in Bytes von dein „47" MPEG-2 Header der Synchronisationsnachricht zu beschreiben).
  • LTPS – Die lokale Zeit pro abwärts übertragenem Symbol 1009 wird mit der Gleichung 16 gegeben: LTPS = (( (LTT(n) – LTT(n – x))/x)/(188·8))·BPS Gleichung 16(LTT(n) – (LTT(n – x)) stellt die Ankunftszeit des (n)ten MPEG-2 Rahmens minus der Ankunftszeit (n – x)ten MPEG-2 Rahmens dar und stellt so die Zeit dar, die x MPEG-2 Rahmen benötigen, um anzukommen. Durch Teilung durch x ergibt sich der Ausdruck {(LTT(n) – LTT(n – x))/x}, was die Zeit ist, die von einem MPEG-2 Rahmen benötigt wird, um anzukommen. Da jeder MPEG-2 Rahmen 188 Bytes umfasst und jedes Byte 8 Bits enthält, ergibt sich durch weiteres Teilen der Zeit, die 1 MPEG-2 Rahmen zur Ankunft benötigt, durch 188·8 der Ausdruck {(LTT(n) – LTT(n – x))/x}/(188·8), der die durchschnittliche Zeit ist, die jedes Bit zur Ankunft benötigt. Durch Multiplizieren des Ausdrucks {(LTT(n) – LTT(n – x))/x} /(188·8), der die Zeit ist, die jedes Bit zur Ankunft benötigt, durch BPS (der Anzahl von Bits pro Symbol, ergibt sich die Zeit pro Symbol), d. h. LTPS der Gleichung 16.
  • Durchschnittsfachleute in dem technischen Gebiet werden erkennen, dass andere Werte, wie beispielsweise 204 Bytes pro Rahmen, in der obigen Berechnung zum Beispiel dann, wenn die Vorwärtsfehlerkonektur-Symbolzeit (Forward Error Correction Symbolzeit) gewünscht ist, verwendet werden können.
  • Die lokale Zeit der 3 Millisekunden Markierung 1011 TMSM (UMV) für UMV = k Symbole wird durch Multiplizieren der LTPS (lokalen Zeit pro Symbol; Local Time per Symbol) mit dem UMV und indem zu LTT(n) 1014 addiert wird, wie in 1 Ob dargestellt, erhalten. TMSM(k) = UMV·LTPS + LTT(k) Gleichung 17
  • Durch Ersetzen des Werts für LTPS aus der Gleichung 16 in die Gleichung 17, ergibt sich die nachstehende Gleichung 18. TMSM(k) = UMV·(LTT(n) – LTT(n – y))·BPS/(188·8y) + LTT(n) Gleichung 18
  • Die Gleichung 18 ist, wenn sie in der Reihenfolge von links nach rechts berechnet wird, die bevorzugte Vorgehensweise zur Berechnung von TMSM(k). Durch Berechnungen in der Reihenfolge von links nach rechts, können Rundungsfehler vermieden werden, die auftreten könnten, wenn eine Teilung vor der Multiplikation durchgeführt wird. Natürlich sollten Vorkehrungen getroffen werden, um bei der Festpunkt-Multiplikation keinen Überlauf zu verursachen.
  • Ein TMSM Wert könnte für jeden Beginn einer 3 Millisekunden Periode berechnet werden oder ein Dezimierungsfaktor y könnte verwendet werden und die Berechnung könnte zu jeder y Anzahl von 3 Millisekunden Perioden ausgeführt werden.
  • In den beschriebenen beispielhaften Ausführungsformen sei darauf hingewiesen, dass LTT(n) ein Kennungswert eines freilaufenden 32 Bit Zählers ist und deshalb Umlaufphänomene nicht angegangen werden müssen.
  • Der Wert von nacheinander berechneten TMSMs könnte in einem Speicher gespeichert werden, um eine lineare Interpolation und Extrapolationsberechnungen von erwarteten TMSM Werten zu ermöglichen. Wenn zum Beispiel TMSM(ky) und TMSM(k – y) berechnet werden würden, würde eine lineare Extrapolation zur Berechnung des erwarteten Werts von TMSMerwartet zur Zeit (k + z) folgendermaßen sein: TMSMerwartet (k + z) = TMSM(k) + ((TMSM(k) – TMSM(k – y))/y)·z Gleichung 19((TMSM(k) – TMSM(k – y))/y) stellt die durchschnittliche Zeit pro Symbol dar. Wenn z = y gewählt ist, kann TMSMerwartet(k + y) berechnet werden. Dieser erwartete Wert wird von dem tatsächlichen Wert von TMSM(k + y) subtrahiert, um eine Abschätzung über einen Synchronisationsfehler hervorzubringen. Wenn der Synchronisationsfehler kleiner als eine programmierbare Schwelle ist, kann ein OK-zum-Senden Flag gesetzt werden, welches anzeigt, dass der Synchronisationsfehler klein genug ist, um mit dem Senden weiterzumachen. Wenn der Synchronisationsfehler kleiner als eine programmierbare Schwelle ist, dann kann das OK-zum-Senden Flag abgeschaltet werden, was anzeigt, dass eine Synchronisation verloren gegangen ist und eine Aufwärts-Übertragung kann dann gestoppt werden.
  • Obwohl die MCNS und die DVB Protokolle eine Synchronisationsinformation unterschiedlich bereitstellen, erfordern die obigen Berechnungen eine ähnliche Initialisierung und Aktualisierungsfunktionsstufen wie in 8 für das MCNS Protokoll dargestellt, welches vorher beschrieben wurde.
  • Eine lineare Extrapolation könnte für die Berechnung der Aufwärtszeit-zum-Senden (Upstream Time to Transmit) UTT angewendet werden. Der so berechnete UTT Wert kann dann an dem 770 UTTR Register der 7 bereitgestellt werden.
  • Wenn eine MAC Steuernachricht an einer NIU ankommt, die eine Information über die Nummer des Schlitzes-zum-Senden (Slot to Transmit; STT) führt, kann die entsprechende 3 Millisekunden Perioden-Nummer USPRTT (Aufwärtsschlitz-Positionsregister-zum-Senden; Upstream Slot Position Register to Transmit) folgendermaßen berechnet werden: USPRTT = STT/(3·m) Gleichung 20
  • Es sei darauf hingewiesen, dass USPRTT eine Ganzzahl ist, sodass irgendwelche Bruchteilkomponenten, die zur Gleichung 20 führen würden, bei der Berechnung von USPRTT fallengelassen werden. Die Anzahl von 3 Millisekunden Perioden von der zuletzt berechneten 3 Millisekunden Markierung TMSM(k) zu dem Beginn der USPRTT 3 Millisekunden Periode wird durch Subtrahieren von k von USPRTT berechnet. Die Subtraktion sollte das Überrollen auf 0, nachdem der maximale Wert von USPR erreicht wurde, wie mit der DVB Spezifikation bereitgestellt, berücksichtigen. Man kann diesen Wert in dem Parameter z der Gleichung 19 einsetzen, um den TMSMerwartet (USPRTT) zu erhalten, der die erwartete lokale Zeit des Beginns der entsprechenden 3 Millisekunden Periode, wo sich der zugeordnete Übertragungsschlitz befindet, ist.
  • Die Anzahl von Schlitzen SOFF (Schlitzversatz) von dem Beginn der entsprechenden 3 Millisekunden Periode zu dem Beginn der STT kann unter Verwendung der Gleichung 21 berechnet werden. SOFF = STT mod (3·m) Gleichung 21 wobei mod die Modulo-Funktion ist. Der Wert für SOFF kann ein Integerwert in dem Bereich von Null bis 3·m – 1 sein. In DVB wird der SOFF Wert gewöhnlicherweise durch den INA bereitgestellt, sodass er nicht berechnet werden muss. Jeder Schlitz, z. B. 1035 in 10a, ist 64 Bytes lang und es gibt m Schlitze pro 1 Millisekunden Unterperiode, z. B. 1025 in 10a, und m/3 Bytes des freien Intervalls (FI), z. B. 1041 in 10a. Da m die Anzahl von Schlitzen in einer 1 Millisekunden Unterperiode ist, z. B. 1031 in 10a, und m/3 die Anzahl von Bytes in dem freien Intervall (FI) ist, z. B. 1041 in 10a, wird die Anzahl von BPTMS Bytes pro drei Millisekunden; Bytes Per Three MilliSecond) mit der Gleichung 22 gegeben: BPTMS = 3·(64·m + m/3) = 193·m Gleichung 22
  • Somit ist jede 1 Millisekunden Unterperiode, z. B. 1031 der 10a 64·m + m/3 Bytes lang und die Anzahl von Bytes BOFF (Byteversatz) von dem Beginn der entsprechenden 3 Millisekunden Periode zu dem Beginn der STT wird von SOFF wie folgt abgeleitet: Wenn (SOFF < m) dann BOFF = SOFF·64 Gleichung 23 Wenn (m – 1 < SOFF < 2·m) dann BOFF = SOFF·64 + m/3 Gleichung 24 Wenn (2·m – 1 < SOFF 3·m) dann BOFF = SOFF·64 + 2·m/s Gleichung 25
  • Da (TMSM(k) – TMSM(k-y)) die Zeit zwischen y 3 Millisekunden-Markierungen darstellt, ist (TMSM(k) – TMSM(k – y))/y die durchschnittliche Zeit einer 3 Millisekunden Markierung (in Einheiten der lokalen Taktzeit). Weil innerhalb jeder 3 Millisekunden-Periode 193·m Bytes (aus der Gleichung 22) vorhanden sind, wird die lokale Zeit pro Byte (Local Time per Byte; LTPB) mit der Gleichung 26 gegeben: LTPB = ((TMSM(k) – TMSM(k – y)/y)/BPTMS Gleichung 26
  • Durch Einsetzen des Werts für BPTMS aus der Gleichung 22 ergibt sich die Gleichung 27: LTPB = (TMSM(k) – TMSM(1 – y))/y·193·m) Gleichung 27
  • Der Bereichsbestimmungsprozess (Ranging Process) für Systeme, die das DVB Protokoll verwenden, ist ähnlich wie diejenigen Systeme, die das MCNS Protokoll verwenden. Das Ergebnis des Bereichsbestimmungsprozesses ist eine feste Bereichsbestimmungs-Verzögerung (Ranging Delay) RD, die in Einheiten der lokalen Zeit positiv oder negativ sein kann. Die Bereichsbestimmungs-Verzögerung RT wird verwendet, um feste Verzögerungen zu kompensieren, die zu jeder einzelnen NIU gehören. Absolute Einheiten der Verzögerung, zum Beispiel in Millisekunden, können auf einen lokalen Zeitwert übersetzt werden, indem eine lokale Zeit pro 3 Millisekunden-Periode verwendet wird.
  • UTT (Aufwärtszeit-zum-Senden), die der Wert ist, der in das UTTR (Aufwärtszeit-zum-Senden-Register) 770 der 7 platziert werden wird, ist die erwartete Zeit des Beginns und der entsprechenden 3 Millisekunden Periode plus des Byteversatzes BOFF multipliziert mit der lokalen Zeit pro Byte LTPB plus der Bereichbestimmungs-Verzögerung, die voranstehend beschrieben wurde, wie mit der nachfolgenden Gleichung 28 angegeben: UTT = TMSMerwartet(USPRTT) + LTPB·BOFF + RD Gleichung 28
  • Ein Einsetzen des Werts für LTPB aus der Gleichung 27 ergibt die Gleichung 29: UTT = (TMSM(k) – TMSM(k – y)·BOFF/(y·193·m) + TMSerwartet(USPRTT) + RD Gleichung 29
  • Eine zweite DVB Ausführungsform ist auf die MCNS Ausführungsform gestützt, die in den 9a und 9b gezeigt ist. Für diese zweite DVB Ausführungsform wird TMSM(k) (die lokale Zeit der 3 Millisekunden-Markierung) in der gleichen Weise wie bei der ersten DVB Ausführungsform unter Verwendung der Gleichung 18 berechnet. Der Wert für TMSM(k) wird der Kopfenden-Timingeingang 902, wie in 9B dargestellt.
  • Das OK-zum-Senden Flag 953 der 9b wird durch Vergleichen eines Fehlers 920 mit einer von der Implementierung abhängigen vom Benutzer definierten Schwelle 935 überzeugt, genauso wie bei der MCNS Ausführungsform. Die zurückgewonnene Zeit (Recovered Time) RT(k) 916 in der DVB Ausführungsform ist die lokale Zeit der 3 Millisekunden Markierung.
  • Dezimierungstechniken können angewendet werden, indem ein richtiges y für die SPLL gewählt wird. Die zurückgewonnene Zeit RT(i) 916 stellt die TMSM(i) Werte dar.
  • Durch Einsetzen der Werte der zurückgewonnenen Zeit RT(i) für die TMSM(i) Werte unter Verwendung der Gleichungen (19, 26, 27, 28 und 29), kann die vorliegende Ausführungsform die Aufwärtszeit-zum-Senden UTT berechnen, die in das Aufwärtszeit-zum-Senden-Register 770, wie in 7 dargestellt, eingefügt werden kann.
  • In dem DVB Aus-dem-Band (Out of Band; OOB) Protokoll sind die Rahmen, die abwärts übertragen werden, nicht MPEG-2 Rahmen, sondern ESF mit 4632 Bits pro Rahmen. Wenn die Bitrate der Abwärtsübertragung 1,544 M Bits/s beträgt, beträgt die Dauer von 1 ESF 3 Millisekunden. In einer OOB Ausführungsform der Erfindung würde das erste Bit des ESF mit dem Zeitkennungsgenerator 772 gekennzeichnet werden, die lokale Zeit, die gekennzeichnet wird, ist der TMSM Wert, der verwendet werden soll. Für eine Abwärts-Bitrate von 3,088 M Bits/s, werden zwei ESF in eine 3 Millisekunden Periode passen. Es ist möglich in ersten von jedem Paar von ESFs zu identifizieren und das erste Bit dieses ESF wird als TMSM gekennzeichnet. Sämtliche anderen Berechnungen bleiben die gleichen wie bei der ersten und zweiten DVB Ausführungsform, die voranstehend beschrieben wurden.
  • Ein anderer Aspekt der MCNS und DVB Ausführungsformen ist, dass Einheiten, die jedes Protokoll verwenden, erzeugt werden können und dann programmiert werden können, um jegliches Protokoll zu verwenden, indem die Firmware innerhalb der Einheit (entweder NIU oder CM) gewechselt wird. Ein noch weiterer Aspekt der Erfindung ist, dass die illustrierten Konzepte verwendet werden können, um eine Übertragung mit äußeren Uhren bzw. Takten oder Ereignissen zu synchronisieren, wodurch Konstrukteuren ein flexibles und nützliches Verfahren für zukünftige Anwendungen gegeben wird.
  • Die voranstehende Beschreibung der bevorzugten Ausführungsform der Erfindung ist für die Zwecke einer Illustrationsbeschreibung dargestellt worden. Es ist nicht beabsichtigt, dass sie erschöpfend ist oder die Erfindung auf die genaue offenbarte Ausbildung beschränkt. Zahlreiche Modifikationen und Variationen sind angesichts der obigen Lehre möglich. Es ist beabsichtigt, dass der Umfang der Erfindung nicht durch diese ausführliche Beschreibung, sondern durch die hier angefügten Ansprüche, beschränkt wird.

Claims (40)

  1. Netzschnittstellenvorrichtung zum Bereitstellen von Datenübertragungen an einen Netzcontroller, die mit Übertragungen von anderen Netzschnittstellenvorrichtungen an den Netzcontroller synchronisiert sind, wobei die Vorrichtung umfasst: eine Uhr (768), die die lokale Zeit bereitstellt; einen Nachrichtenempfänger (760) zum Empfang von Nachrichten von dem Netzcontroller; und eine Übertragungseinheit (774) zum Erzeugen von Datenübertragungen von der Netzschnittstelleneinheit an den Netzcontroller; dadurch gekennzeichnet, dass die Vorrichtung ferner einen Zeitkennungsgenerator (772) zum Aufzeichnen von lokalen Zeiten einer Ankunft (410) von synchronisierenden Nachrichten an der Schnittstelleneinheit; eine Ablaufzeit-Berechnungseinheit (965) zum Bestimmen einer abgelaufenen lokalen Zeit (918) auf Grundlage von synchronisierender Information, die in den Nachrichten enthalten ist, unter Verwendung der Zeitkennungen; eine Phasenregelschleife (904, 906, 908, 910, 912, 914, 917, 919, 921) zum Erzeugen einer zurückgewonnen Zeit (916), die zu dem Netzcontroller synchronisiert ist, aus der abgelaufenen lokalen Zeit (918) und der synchronisierenden Information umfasst; und dass die Übertragungseinheit (774) Datenübertragungen in Übereinstimmung mit der synchronisierten zurückgewonnen Zeit (916) und einem Übertragungszeitschlitz erzeugt.
  2. Vorrichtung nach Anspruch 1, wobei die Netzschnittstelleneinheit (112) in Übereinstimmung mit einem Multimedia Cable Network System Protokoll arbeitet.
  3. Vorrichtung nach Anspruch 1, wobei die Netzschnittstelleneinheit (128) in Übereinstimmung mit einem Digital Video Broadcasting Protokoll arbeitet.
  4. Vorrichtung nach Anspruch 1, wobei die synchronisierende Information Netzcontroller-Zeitstempel (411) und eine Netzcontrollerzeit zum Übertragen (957) umfasst.
  5. Vorrichtung nach Anspruch 1, wobei die synchronisierende Information einen Versatz (USPR) von dem Beginn einer empfangenen Rahmenmarkierung (TMSM) und eine Nummer (STT) eines Übertragungsschlitzes relativ zu dem Versatz, in dem zu senden ist, umfasst.
  6. Vorrichtung nach Anspruch 5, wobei der Versatz (USPR) eine Anzahl von empfangenen Symbolen umfasst.
  7. Vorrichtung nach Anspruch 3, ferner umfassend einen Extrapolator zum Bestimmen einer bevorstehenden lokalen Übertragungszeit entsprechend zu einer jüngsten synchronisierenden Nachricht in Übereinstimmung mit lokalen Übertragungszeiten entsprechend zu früher empfangenen Nachrichten und synchronisierender Information der jüngsten synchronisierenden Nachricht; wobei die Übertragungseinheit (774) zum Erzeugen der Datenübertragung von der Netzschnittstelleneinheit an die Netzsteuereinheit die Datenübertragung in Übereinstimmung mit der bevorstehenden lokalen Übertragungszeit erzeugt.
  8. Vorrichtung nach Anspruch 7, wobei eine Bestimmung der bevorstehenden lokalen Übertragungszeit umfasst: Bestimmen einer durchschnittlichen abgelaufenen lokalen Zeit pro Symbol aus lokalen Übertragungszeiten und entsprechender synchronisierender Information von früher empfangenen synchronisierenden Nachrichten; und Bestimmen der bevorstehenden lokalen Übertragungszeit in Übereinstimmung mit der durchschnittlichen abgelaufenen lokalen Zeit pro Symbol und synchronisierender Information einer jüngsten synchronisierenden Nachricht.
  9. Vorrichtung nach Anspruch 1, wobei die Phasenregelschleife (904, 906, 908, 910, 912, 914, 917, 919, 921) eine Software-Phasenregelschleife ist.
  10. Vorrichtung nach Anspruch 1, wobei die Phasenregelschleife (904, 906, 908, 910, 912, 914, 917, 919, 921) eine Mittenfrequenz zum Vorspannen der Phasenregelschleife in Richtung auf ihre Betriebsfrequenz hin annimmt.
  11. Vorrichtung nach Anspruch 1, wobei die Phasenregelschleife eine Dezimierungsperiode (937) annimmt und die synchronisierende Information in Übereinstimmung mit der Dezimierungsperiode abtastet.
  12. Vorrichtung nach Anspruch 11, wobei die Dezimierungsperiode (937) der Ankunft von synchronisierenden Nachrichten entspricht.
  13. Vorrichtung nach Anspruch 1, wobei die Phasenregelschleife (904, 906, 908, 910, 912, 914, 917, 919, 921) ferner Phaseneinstellungsinformation aus Bereichsvermessungs-Phaseneinstellungsnachrichten annimmt und eine zurückgewonnene Zeit (916) aus der abgelaufenen lokalen Zeit (918) und der synchronisierenden Information und der Phaseneinstellungsinformation erzeugt.
  14. Vorrichtung nach Anspruch 13, wobei die Phaseneinstellungsinformation ein Maß einer festen Übertragungsverzögerung zwischen der Netzschnittstellenvorrichtung und dem Netzcontroller umfasst.
  15. Vorrichtung nach Anspruch 1, wobei eine Bestimmung einer abgelaufenen lokalen Zeit (918) auf Grundlage von synchronisierender Information, die in den Nachrichten enthalten ist, umfasst: Bestimmen von lokalen Zeiten einer Ankunft (410) einer ersten und zweiten synchronisierenden Nachricht (401) unter Verwendung einer abgelaufenen lokalen Zeit pro empfangenem Byte, einer Byte-Zahl von bestimmten Bytes innerhalb der jeweiligen ersten und zweiten Nachricht, und Zeitkennungen (416), die zu der ersten und zweiten Nachricht gehören.
  16. Vorrichtung nach Anspruch 15, wobei die abgelaufene lokale Zeit pro empfangenem Byte eine durchschnittliche abgelaufene lokale Zeit pro empfangenem Byte ist.
  17. Verfahren in einer Netzschnittstelleneinheit zum Synchronisieren von Datenübertagungen aus mehreren Netzschnittstelleneinheiten auf einen Netzcontroller, wobei das Verfahren umfasst: Aufrechterhalten einer lokalen Zeit (768) in der Schnittstelleneinheit; Empfangen von Nachrichten (630) von einem Netzcontroller; Erzeugen einer zurückgewonnen Zeit (916), die zu dem Netzcontroller synchronisiert ist, in Übereinstimmung mit Netzcontroller-Synchronisationsinformationen, die innerhalb der Nachrichten (630) enthalten ist, und abgelaufenen lokalen Zeiten (918) zwischen einem Empfang der Nachrichten (630); und Übertragen von Daten an den Netzcontroller in Übereinstimmung mit der zurückgewonnen Zeit (916) und einem Übertragungszeitschlitz.
  18. Verfahren nach Anspruch 17, wobei die Netzcontroller-Synchronisationsinformation Netzcontroller-Zeitstempel (411) und eine Netzcontrollerzeit zum Übertragen (957) umfasst.
  19. Verfahren nach Anspruch 17, wobei die Netzcontroller-Synchronisationsinformation einen Versatz (USPR) von dem Beginn einer empfangenen Rahmenmarkierung (TMSM) und eine Nummer eines Übertragungsschlitzes (STT) relativ zu dem Versatz, in dem zu senden ist, umfasst.
  20. Verfahren nach Anspruch 19, wobei der Versatz (USPR) eine Anzahl von empfangenen Symbolen umfasst.
  21. Verfahren nach Anspruch 19, ferner umfassend ein Bestimmen einer lokalen Übertragungszeitinformation zur Übertagung an den Netzcontroller in Übereinstimmung mit dem Versatz (USPR), der Übertragungsschlitznummer (STT) und einer lokalen Zeit einer Ankunft (410).
  22. Verfahren nach Anspruch 17, ferner umfassend: Annehmen von Nachrichten (630) von dem Netzcontroller; Platzieren der Nachrichten (630) in einen Speicher (762); und Platzieren einer Zeitkennung (652) in einem Speicher, der eine lokale Zeit (410) enthält, zu der die Nachricht empfangen wurde.
  23. Verfahren nach Anspruch 18, wobei eine abgelaufene lokale Zeit (918) zwischen Ankünften von Netzcontroller-Zeitstempeln (411) durch Bestimmen von lokalen Zeiten einer Ankunft (410) eines ersten und zweiten Zeitstempels (411), die zu einer ersten und zweiten Nachricht (401) gehören, unter Verwendung einer abgelaufenen lokalen Zeit pro empfangenem Byte, einer Byte-Zahl von jedem Zeitstempel (411) innerhalb der jeweiligen ersten und zweiten Nachricht (401), und Zeitkennungen (416), die zu der ersten und zweiten Nachricht (401) gehören, bestimmt wird.
  24. Verfahren nach Anspruch 23, wobei die abgelaufene lokale Zeit pro empfangenem Byte eine durchschnittliche abgelaufene lokale Zeit pro empfangenem Byte ist.
  25. Verfahren nach Anspruch 17, wobei die zurückgewonnene Zeit (916) zu der Netzcontrollerzeit innerhalb einer Phasenregelschleife (904, 906, 908, 910, 912, 914, 917, 919, 921) synchronisiert ist.
  26. Verfahren nach Anspruch 17, ferner umfassend ein Empfangen einer Phaseneinstellungsinformation aus einer Bereichsvermessungs-Phaseneinstellungsnachricht.
  27. Verfahren nach Anspruch 26, wobei die zurückgewonnene Zeit (916) in Übereinstimmung mit Netzcontroller-Zeitstempeln (411) und abgelaufenen lokalen Zeiten (918) zwischen den Netzcontroller-Zeitstempeln (411) und der Phaseneinstellungsinformation erzeugt wird.
  28. Verfahren nach Anspruch 26, wobei die Phaseneinstellungsinformation ein Maß einer festen Übertragungsverzögerung zwischen der Netzschnittstellenvorrichtung und dem Netzcontroller umfasst.
  29. Verfahren nach Anspruch 17, ferner umfassend ein Bestimmen einer bevorstehenden lokalen Übertragungszeit entsprechend zu einer jüngsten synchronisierenden Nachricht in Übereinstimmung mit lokalen Übertagungszeiten entsprechend zu früher empfangenen Nachrichten und synchronisierender Information der jüngsten synchronisierenden Nachricht; wobei ein Übertragen der Daten an den Netzcontroller ein Übertragen der Daten in Übereinstimmung mit der bevorstehenden lokalen Übertragungszeit umfasst.
  30. Verfahren nach Anspruch 29, wobei die lokalen Übertragungszeiten und die bevorstehende lokale Übernagungszeit in Übereinstimmung mit entsprechenden Versetzern (USPR), Übertragungsschlitz-Nummern (STT), lokalen Zeiten einer Ankunft (410), und Phaseneinstellungsinformation bestimmt werden.
  31. Verfahren nach Anspruch 30, wobei die Phaseneinstellungsinformation ein Maß einer festen Übertragungsverzögerung zwischen der Netzschnittstellenvorrichtung und dem Netzcontroller umfasst.
  32. Verfahren nach Anspruch 29, wobei ein Bestimmen der bevorstehenden lokalen Übertragungszeitinformation umfasst: Bestimmen einer durchschnittlichen abgelaufenen lokalen Zeit pro Symbol aus lokalen Übertragungszeiten und entsprechender synchronisierender Information von früher empfangenen synchronisierenden Nachrichten; Bestimmen der bevorstehenden lokalen Übernagungszeit in Übereinstimmung mit der durchschnittlichen abgelaufenen lokalen Zeit pro Symbol und synchronisierender Information einer jüngsten synchronisierenden Nachricht.
  33. Datenträger, der einen Computerprogrammcode führt, um einen Prozessor innerhalb einer Netzschnittstelle zu veranlassen eine Verarbeitung auszuführen, die umfasst: Aufrechterhalten einer lokalen Zeit (218); Empfangen von Nachrichten (630) von einem Netzcontroller; Erzeugen einer zurückgewonnenen Zeit (916), die zu dem Netzcontroller synchronisiert ist, in Übereinstimmung mit Netzcontroller-Synchronisationsinformation, die innerhalb der Nachrichten (630) enthalten ist, und abgelaufenen lokalen Zeiten (918) zwischen einem Empfang der Nachrichten (630); und Übertragen von Daten an den Netzcontroller in Übereinstimmung mit der zurückgewonnen Zeit (916) und einem Übertragungs-Zeitschlitz, so dass Datenübertragungen zu Übertragungen von anderen Netzschnittstellen-Vorrichtungen synchronisiert sind.
  34. Datenträger nach Anspruch 33, wobei die synchronisierende Information Netzcontroller-Zeitstempel (411) und eine Netzcontrollerzeit zum Übertragen (957) umfasst.
  35. Datenträger nach Anspruch 33, wobei die synchronisierende Information einen Versatz (USPR) von dem Beginn einer empfangenen Rahmenmarkierung (TMSM) und eine Nummer (STT) eines Übertragungsschlitzes relativ zu dem Versatz (USPR), in dem zu übertragen ist, umfasst.
  36. Datenträger nach Anspruch 34, wobei die zurückgewonnene Zeit (916) in Übereinstimmung mit Netzcontroller-Zeitstempeln (411) und den abgelaufenen lokalen Zeiten (918) zwischen den Netzcontroller-Zeitstempeln (411) und einer Phaseneinstellungsinformation aus Bereichsvermessungs-Phaseneinstellnachrichten erzeugt wird.
  37. Datenträger nach Anspruch 36, wobei die Phaseneinstellungsinformation ein Maß über eine feste Übertragungsverzögerung zwischen der Netzschnittstellenvorrichtung und dem Netzcontroller umfasst.
  38. Datenträger nach Anspruch 34, wobei die abgelaufene lokale Zeit (918) zwischen Ankünften der Netzcontroller-Zeitstempel (411) durch Bestimmen von lokalen Zeiten einer Ankunft (410) eines ersten und zweiten Zeitstempels (411), die zu einer ersten und zweiten Nachricht (401) gehören, unter Verwendung einer abgelaufenen lokalen Zeit pro empfangenem Byte, einer Byte-Zahl von jedem Zeitstempel (411) innerhalb der jeweiligen ersten und zweiten Nachricht (401) und Zeitkennungen (416), die zu der ersten und zweiten Nachricht (401) gehören, bestimmt wird.
  39. Datenträger nach Anspruch 38, wobei die abgelaufene lokale Zeit pro empfangenem Bye eine durchschnittliche abgelaufene lokale Zeit pro empfangenem Byte ist.
  40. Datenträger nach Anspruch 33, wobei die zurückgewonnene Zeit (916) auf die Netzcontrollerzeit unter Verwendung einer Phasenregelschleife synchronisiert ist.
DE60025242T 1999-10-09 2000-10-09 Verfahren und vorrichtung zur synchronisierung von aufwärtsburstübertragungen in kabelmodems Expired - Lifetime DE60025242T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US415612 1999-10-09
US09/415,612 US6526070B1 (en) 1999-10-09 1999-10-09 Method and apparatus for upstream burst transmissions synchronization in cable modems
PCT/US2000/028010 WO2001028147A2 (en) 1999-10-09 2000-10-09 Method and apparatus for upstream burst transmission synchronization in cable modems

Publications (2)

Publication Number Publication Date
DE60025242D1 DE60025242D1 (de) 2006-02-02
DE60025242T2 true DE60025242T2 (de) 2006-09-14

Family

ID=23646420

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60025242T Expired - Lifetime DE60025242T2 (de) 1999-10-09 2000-10-09 Verfahren und vorrichtung zur synchronisierung von aufwärtsburstübertragungen in kabelmodems

Country Status (5)

Country Link
US (3) US6526070B1 (de)
EP (1) EP1222759B1 (de)
AT (1) ATE314760T1 (de)
DE (1) DE60025242T2 (de)
WO (1) WO2001028147A2 (de)

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331228A (ja) * 1998-05-08 1999-11-30 Toshiba Corp データ通信システム及びデータ通信方法
US6760316B1 (en) * 1998-10-30 2004-07-06 Broadcom Corporation Method and apparatus for the synchronization of multiple cable modem termination system devices
US6834057B1 (en) * 1999-02-12 2004-12-21 Broadcom Corporation Cable modem system with sample and packet synchronization
US6751191B1 (en) 1999-06-29 2004-06-15 Cisco Technology, Inc. Load sharing and redundancy scheme
US7065779B1 (en) * 1999-10-13 2006-06-20 Cisco Technology, Inc. Technique for synchronizing multiple access controllers at the head end of an access network
JP4588201B2 (ja) * 1999-11-29 2010-11-24 パナソニック株式会社 無線通信システム
US6698022B1 (en) * 1999-12-15 2004-02-24 Fujitsu Limited Timestamp-based timing recovery for cable modem media access controller
FI19992718L (fi) * 1999-12-17 2001-06-18 Nokia Multimedia Terminals Oy Menetelmä ja laite ylössuuntaisen lähetyksen oikea-aikaiseksi liipaisemiseksi
US7068712B1 (en) * 2000-01-18 2006-06-27 Cisco Technology, Inc. Cable network redundancy architecture
US7058007B1 (en) * 2000-01-18 2006-06-06 Cisco Technology, Inc. Method for a cable modem to rapidly switch to a backup CMTS
US6839829B1 (en) 2000-01-18 2005-01-04 Cisco Technology, Inc. Routing protocol based redundancy design for shared-access networks
US6748445B1 (en) * 2000-02-01 2004-06-08 Microsoft Corporation System and method for exchanging data
US8724485B2 (en) 2000-08-30 2014-05-13 Broadcom Corporation Home network system and method
US9094226B2 (en) * 2000-08-30 2015-07-28 Broadcom Corporation Home network system and method
ATE485650T1 (de) 2000-08-30 2010-11-15 Tmt Coaxial Networks Inc Verfahren und system fur ein hausnetzwerk
US6975652B1 (en) * 2000-10-18 2005-12-13 3Com Corporation Clock synchronization of HFC telephone equipment
KR100672400B1 (ko) * 2000-11-20 2007-01-23 엘지전자 주식회사 케이블 모뎀의 컨피그레이션 파일 다운로드 장치 및 방법
US6940874B2 (en) * 2000-11-30 2005-09-06 3Com Corporation Method for reducing interference from initializing network devices in a data-over-cable system
US6885667B1 (en) 2000-12-26 2005-04-26 Cisco Technology, Inc. Redirection to a virtual router
US7194009B2 (en) * 2001-04-14 2007-03-20 John Wai Tsang Eng Full-service broadband cable modem system
US7881208B1 (en) 2001-06-18 2011-02-01 Cisco Technology, Inc. Gateway load balancing protocol
EP1271888B1 (de) * 2001-06-27 2005-08-17 Siemens Aktiengesellschaft Verfahren zur internetprotokollbasierten Übertragung von Kommunikationsdaten
US7209442B1 (en) * 2001-06-27 2007-04-24 Cisco Technology, Inc. Packet fiber node
US7085287B1 (en) 2001-06-27 2006-08-01 Cisco Technology, Inc. Map routing technique implemented in access networks
US7688828B2 (en) * 2001-06-27 2010-03-30 Cisco Technology, Inc. Downstream remote physical interface for modular cable modem termination system
US7639617B2 (en) * 2001-06-27 2009-12-29 Cisco Technology, Inc. Upstream physical interface for modular cable modem termination system
US7139923B1 (en) 2001-06-27 2006-11-21 Cisco Technology, Inc. Technique for synchronizing network devices in an access data network
US20030058890A1 (en) * 2001-09-18 2003-03-27 Ritchie, John A. MPEG program clock reference (PCR) delivery for support of accurate network clocks
US6779050B2 (en) * 2001-09-24 2004-08-17 Broadcom Corporation System and method for hardware based reassembly of a fragmented packet
US7333513B2 (en) * 2001-10-09 2008-02-19 Broadcom Corporation Method, system, and computer program product for synchronizing voice traffic with minimum latency
US7227863B1 (en) 2001-11-09 2007-06-05 Cisco Technology, Inc. Methods and apparatus for implementing home agent redundancy
US7447228B1 (en) * 2002-03-15 2008-11-04 Nortel Networks Limited Technique for delivering bursted native media data flows over an ethernet physical layer
US7206327B2 (en) * 2002-05-17 2007-04-17 Broadcom Corporation Method and circuit for insertion of time stamp into real time data
US7174376B1 (en) 2002-06-28 2007-02-06 Cisco Technology, Inc. IP subnet sharing technique implemented without using bridging or routing protocols
US20040177381A1 (en) * 2002-09-05 2004-09-09 Tiaris, Inc. Home network system which supports legacy digital set top box devices
US7991888B1 (en) * 2002-09-24 2011-08-02 Juniper Networks, Inc. Systems and methods for ordered initialization of cable modems
US7668092B2 (en) * 2002-11-21 2010-02-23 Honeywell International Inc. Data transmission system and method
JP4004389B2 (ja) * 2002-11-27 2007-11-07 富士通株式会社 バッファメモリ管理方法及びシステム
US7555017B2 (en) * 2002-12-17 2009-06-30 Tls Corporation Low latency digital audio over packet switched networks
FR2850511B1 (fr) * 2003-01-28 2005-06-03 St Microelectronics Sa Terminal d'utilisateur pour systeme de telediffusion numerique interactive
US8457040B2 (en) * 2003-04-09 2013-06-04 Broadcom Corporation Method and apparatus for maintaining synchronization in a communication system
US7701978B2 (en) * 2003-04-09 2010-04-20 Braodcom Corporation Method and apparatus for maintaining synchronization in a communication system
US8432942B1 (en) * 2003-05-16 2013-04-30 Apple Inc. Providing a timing source for multiple nodes coupled to a circuit-switched network
US7583704B1 (en) 2003-06-10 2009-09-01 Carl Walker Synchronizing separated upstream and downstream channels of cable modem termination systems
US7593346B2 (en) 2003-07-31 2009-09-22 Cisco Technology, Inc. Distributing and balancing traffic flow in a virtual gateway
US7394830B2 (en) * 2003-09-11 2008-07-01 Cisco Technology, Inc. System for synchronizing circuitry in an access network
IL159838A0 (en) * 2004-01-13 2004-06-20 Yehuda Binder Information device
US8102854B2 (en) * 2004-05-25 2012-01-24 Cisco Technology, Inc. Neighbor discovery proxy with distributed packet inspection scheme
US7817553B2 (en) 2004-05-25 2010-10-19 Cisco Technology, Inc. Local area network services in a cable modem network
US7646786B2 (en) * 2004-05-25 2010-01-12 Cisco Technology, Inc. Neighbor discovery in cable networks
US8149833B2 (en) * 2004-05-25 2012-04-03 Cisco Technology, Inc. Wideband cable downstream protocol
US7532627B2 (en) * 2004-05-25 2009-05-12 Cisco Technology, Inc. Wideband upstream protocol
US7720101B2 (en) * 2004-05-25 2010-05-18 Cisco Technology, Inc. Wideband cable modem with narrowband circuitry
US7539208B2 (en) * 2004-05-25 2009-05-26 Cisco Technology, Inc. Timing system for modular cable modem termination system
US7864686B2 (en) * 2004-05-25 2011-01-04 Cisco Technology, Inc. Tunneling scheme for transporting information over a cable network
US7835274B2 (en) * 2004-05-25 2010-11-16 Cisco Technology, Inc. Wideband provisioning
EP1635493A1 (de) * 2004-09-14 2006-03-15 Broadcom Corporation Synchronisierung verteilter Komponenten eines Kabel-Modem-Netzwerkes
US8059661B2 (en) * 2004-12-29 2011-11-15 Cisco Technology, Inc. Methods and apparatus for using DHCP for home address management of nodes attached to an edge device and for performing mobility and address management as a proxy home agent
ES2745045T3 (es) 2005-04-22 2020-02-27 Audinate Pty Ltd Red, dispositivo y método para transportar medios digitales
US7630361B2 (en) * 2005-05-20 2009-12-08 Cisco Technology, Inc. Method and apparatus for using data-over-cable applications and services in non-cable environments
JP2009501793A (ja) * 2005-07-21 2009-01-22 アストラゼネカ・アクチエボラーグ 新規ピペリジン誘導体
US7970000B2 (en) * 2005-08-03 2011-06-28 Cisco Technology, Inc. Increasing the number of supported devices on a DOCSIS interface
US20070150892A1 (en) * 2005-12-22 2007-06-28 Samsung Electronics Co., Ltd. Scheduled delivery of software download
US7701951B2 (en) * 2006-03-06 2010-04-20 Cisco Technology, Inc. Resource reservation and admission control for IP network
EP2033360B1 (de) 2006-05-17 2015-12-02 Audinate Pty Limited Redundante medien-paketströme
US7697522B2 (en) * 2006-11-20 2010-04-13 Broadcom Corporation Systems and methods for aggregation of packets for transmission through a communications network
US7782850B2 (en) 2006-11-20 2010-08-24 Broadcom Corporation MAC to PHY interface apparatus and methods for transmission of packets through a communications network
US7742495B2 (en) * 2006-11-20 2010-06-22 Broadcom Corporation System and method for retransmitting packets over a network of communication channels
US8090043B2 (en) 2006-11-20 2012-01-03 Broadcom Corporation Apparatus and methods for compensating for signal imbalance in a receiver
JP4412322B2 (ja) * 2006-12-26 2010-02-10 ソニー株式会社 通信システム及びその障害検出用の情報の提供方法
CN101731011B (zh) 2007-05-11 2014-05-28 奥迪耐特有限公司 用于设置接收器延迟时间的方法
US8345553B2 (en) 2007-05-31 2013-01-01 Broadcom Corporation Apparatus and methods for reduction of transmission delay in a communication network
US20090165070A1 (en) * 2007-12-19 2009-06-25 Broadcom Corporation SYSTEMS AND METHODS FOR PROVIDING A MoCA COMPATABILITY STRATEGY
CN102017652B (zh) 2008-02-29 2015-05-13 奥迪耐特有限公司 用于在媒体网络中使用的网络设备、方法和/或系统
US8098770B2 (en) * 2008-05-06 2012-01-17 Broadcom Corporation Unbiased signal-to-noise ratio estimation for receiver having channel estimation error
US8373143B2 (en) * 2008-05-22 2013-02-12 Vladimir Balakin Patient immobilization and repositioning method and apparatus used in conjunction with charged particle cancer therapy
US9112717B2 (en) * 2008-07-31 2015-08-18 Broadcom Corporation Systems and methods for providing a MoCA power management strategy
KR101151171B1 (ko) * 2008-12-22 2012-06-01 한국전자통신연구원 Hfc망에서 상향 대역 할당 정보를 이용하여 상향 버스트데이터를 수신하는 방법 및 장치
US8254413B2 (en) 2008-12-22 2012-08-28 Broadcom Corporation Systems and methods for physical layer (“PHY”) concatenation in a multimedia over coax alliance network
US8238227B2 (en) 2008-12-22 2012-08-07 Broadcom Corporation Systems and methods for providing a MoCA improved performance for short burst packets
US8213309B2 (en) 2008-12-22 2012-07-03 Broadcom Corporation Systems and methods for reducing latency and reservation request overhead in a communications network
US8893232B2 (en) * 2009-02-06 2014-11-18 Empire Technology Development Llc Media monitoring system
US9077784B2 (en) * 2009-02-06 2015-07-07 Empire Technology Development Llc Media file synchronization
US8553547B2 (en) 2009-03-30 2013-10-08 Broadcom Corporation Systems and methods for retransmitting packets over a network of communication channels
US20100254278A1 (en) 2009-04-07 2010-10-07 Broadcom Corporation Assessment in an information network
US8730798B2 (en) * 2009-05-05 2014-05-20 Broadcom Corporation Transmitter channel throughput in an information network
US8867355B2 (en) 2009-07-14 2014-10-21 Broadcom Corporation MoCA multicast handling
JP5458719B2 (ja) * 2009-07-24 2014-04-02 日本電気株式会社 クロック同期システムと通信装置と方法とプログラム
US8942250B2 (en) 2009-10-07 2015-01-27 Broadcom Corporation Systems and methods for providing service (“SRV”) node selection
US8611327B2 (en) 2010-02-22 2013-12-17 Broadcom Corporation Method and apparatus for policing a QoS flow in a MoCA 2.0 network
US8514860B2 (en) * 2010-02-23 2013-08-20 Broadcom Corporation Systems and methods for implementing a high throughput mode for a MoCA device
JP4865068B1 (ja) * 2010-07-30 2012-02-01 株式会社東芝 録再装置及び録再装置のタグリスト生成方法及び録再装置の制御装置
US8971465B2 (en) 2012-03-30 2015-03-03 Qualcomm Incorporated Receiver-side estimation of and compensation for signal impairments
US9143365B2 (en) 2013-01-30 2015-09-22 Qualcomm Incorporated Channel estimation using averaging and interpolation
US9942631B2 (en) * 2015-09-25 2018-04-10 Intel Corporation Out-of-band platform tuning and configuration
US10841031B2 (en) 2018-12-14 2020-11-17 Arris Enterprises Llc Systems and methods to improve holdover performance in R-PHY network architectures

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5819087A (ja) * 1981-07-24 1983-02-03 Pioneer Electronic Corp Catvシステムにおけるデ−タ
US4553161A (en) * 1983-12-09 1985-11-12 Zenith Electronics Corporation Upstream data packet time slot synchronization with downstream VBI for two-way CATV system
US5570347A (en) * 1994-11-14 1996-10-29 Zenith Electronics Corporation Upstream data transmission system with downloadable transmission parameters
US5546119A (en) 1994-11-14 1996-08-13 Bestler; Caitlin B. Transmission modulator for cable television upstream data transmission
US5517502A (en) * 1995-03-02 1996-05-14 Zenith Electronics Corp. Upstream transmission using multiple transmission tags and downstream acknowledgements in conditional access packets
US5745837A (en) 1995-08-25 1998-04-28 Terayon Corporation Apparatus and method for digital data transmission over a CATV system using an ATM transport protocol and SCDMA
US5784597A (en) * 1995-09-22 1998-07-21 Hewlett-Packard Company Communications network system including acknowledgement indicating successful receipt of request for reserved communication slots and start time for said reserved communication slots
US5790806A (en) 1996-04-03 1998-08-04 Scientific-Atlanta, Inc. Cable data network architecture
US6055242A (en) * 1996-03-20 2000-04-25 Lucent Technologies Inc. Method and apparatus enabling synchronous transfer mode, variable length and packet mode access for multiple services over a broadband communication network
US5767746A (en) * 1996-06-07 1998-06-16 David Sarnoff Research Center, Inc. Method and apparatus for adjusting phase-lock-loop parameters
US5995483A (en) * 1996-08-22 1999-11-30 Tellabs Operations, Inc. Apparatus and method for upstream clock synchronization in a multi-point OFDM/DMT digital communication system
US5898744A (en) * 1996-10-07 1999-04-27 Motorola, Inc. Apparatus and method for clock recovery in a communication system
US6249526B1 (en) * 1997-06-30 2001-06-19 Intel Corporation Versatile time division multiple access slot assignment unit
US6177959B1 (en) * 1997-12-31 2001-01-23 Telecruz Technology, Inc. Circuit and method for generating a clock signal synchronized with time reference signals associated with television signals
US6260193B1 (en) * 1998-02-09 2001-07-10 General Instrument Corporation Synchronization of decoders in a bi-directional CATV network
US6243369B1 (en) * 1998-05-06 2001-06-05 Terayon Communication Systems, Inc. Apparatus and method for synchronizing an SCDMA upstream or any other type upstream to an MCNS downstream or any other type downstream with a different clock rate than the upstream

Also Published As

Publication number Publication date
EP1222759B1 (de) 2005-12-28
US20010038647A1 (en) 2001-11-08
US6553040B2 (en) 2003-04-22
US6526070B1 (en) 2003-02-25
US20010043622A1 (en) 2001-11-22
US6556591B2 (en) 2003-04-29
ATE314760T1 (de) 2006-01-15
WO2001028147A2 (en) 2001-04-19
WO2001028147A3 (en) 2001-08-30
DE60025242D1 (de) 2006-02-02
EP1222759A2 (de) 2002-07-17

Similar Documents

Publication Publication Date Title
DE60025242T2 (de) Verfahren und vorrichtung zur synchronisierung von aufwärtsburstübertragungen in kabelmodems
DE69924557T2 (de) Vorrichtung und Verfahren zur Synchronisierung eines Aufwärtskanals der Art SCDMA oder einer anderen Art mit einem Abwärtskanal der Art MCNS oder einer anderen Art mit einem unterschiedlichen Takt als der des Aufwärtskanals
DE60216647T2 (de) Verfahren und System zur Erzeugung einer Zeitdifferenz hinsichtlich des Minizeitschlitz-Taktes und -Zählers in Headendvorrichgtungen
DE60035116T2 (de) System und verfahren zur synchronisierung und verteilung von telefontaktinformation in einem kabelmodem-netzwerk
EP0567771B1 (de) Verfahren, Sender und Empfänger zur Informationsdatenübertragung mit veränderlichem Verkehrsaufkommen und Leitstation zur Koordinierung mehrerer solcher Sender und Empfänger
DE19882509B4 (de) Eine Vielseitige Zeitmultiplexzugriffszeitscheibenzuweisungseinheit
DE60103758T2 (de) Master/slave-synchronisierungsverfahren in einem bluetooth-system
DE69417139T2 (de) Ton-/Videosynchronisierung in einem digitalen Übertragungssystem
DE69130573T2 (de) Scheduler für Simultanübertragung
DE69534813T2 (de) Verfahren und Anordnung zur dynamischen Bandbreitenzuordnung in einem TDM/TDMA-Übertragungssystem
DE60000861T2 (de) Modulplaner mit zeitinterval und endzeit
DE69737586T2 (de) Durchführung von verzögerungskritischen Diensten in einem Kabel-Fernseh-System
EP2017990A1 (de) Frequenzsynchronisierung von Uhren
DE102004007098A1 (de) Videoeinrichtung und Verfahren zum Synchronisieren von Zeitbasen von Videoeinrichtungen
DE4326771A1 (de) Übertragungssystem
DE2050718C3 (de) Verfahren zur Kommunikation über einen Erdsatelliten mittels Zeitmultiplex und Vorrichtung zur Durchführung des Verfahrens
DE69431744T2 (de) Verfahren mit mehrfachem Zugang durch Einteilung in orthogonale Frequenzen, entsprechende zentrale Station, entfernte Station, System und deren Verwendung
DE1929083A1 (de) Anordnung zur Verschiebung von Nachrichten in andere Zeilenraeume eines Fernsehsignals
DE69833782T2 (de) Synchronisiation in einem atm über stm nachrichtenübertragungsnetzwerk
EP0749239B1 (de) Verfahren und Vorrichtung zur Zusatzdatenübertragung in TV-Kanälen
DE69611611T2 (de) Anordnung zur neu-synchronisation für sdh-nachrichtenübertragungssystem
DE69900886T2 (de) Verfahren und Gerät zur Erzeugung einer Referenzfrequenz
DE69329310T2 (de) SDH Funkkommunikationssystem und Sende-/Empfangseinrichtung hierzu
DE4341211C1 (de) Verfahren und Schaltungsanordnung zum Einfügen von Daten in ein Übertragungssignal
DE69421899T2 (de) Vorrichtung und verfahren zur erzeugung periodischer synchronisationsreferenzen zur bildung eines synchronisationssignals

Legal Events

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

Owner name: NXP B.V., EINDHOVEN, NL

8328 Change in the person/name/address of the agent

Representative=s name: EISENFUEHR, SPEISER & PARTNER, 10178 BERLIN

8327 Change in the person/name/address of the patent owner

Owner name: TRIDENT MICROSYSTEMS (FAR EAST) LTD., GRAND CA, KY

R084 Declaration of willingness to licence

Ref document number: 1222759

Country of ref document: EP

R082 Change of representative

Ref document number: 1222759

Country of ref document: EP

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCHAFT

R084 Declaration of willingness to licence

Ref document number: 1222759

Country of ref document: EP

Effective date: 20110914

Ref document number: 1222759

Country of ref document: EP

Effective date: 20110721

R082 Change of representative

Ref document number: 1222759

Country of ref document: EP

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCH, DE

R081 Change of applicant/patentee

Ref document number: 1222759

Country of ref document: EP

Owner name: ENTROPIC COMMUNICATIONS, INC., US

Free format text: FORMER OWNER: TRIDENT MICROSYSTEMS (FAR EAST) LTD., GRAND CAYMAN, KY

Effective date: 20121023

R082 Change of representative

Ref document number: 1222759

Country of ref document: EP

Representative=s name: EPPING HERMANN FISCHER, PATENTANWALTSGESELLSCH, DE

Effective date: 20121023