-
HINTERGRUND DER ERFINDUNG
-
Schaltungen
zur Verteilung und Synchronisierung von Taktsteuerungsinformationen
spielen bei zahlreichen Anwendungen eine Schlüsselrolle, die einen synchronen
Datentransfer benötigen,
wie etwa Netzwerke zur Übertragung
von Telefongesprächen über verschiedene
Netzwerke, einschließlich
des Internets, und dergleichen.
-
Aktuelle
Verfahren zur Signalsynchronisierung zwischen Teilnetzwerken stellen
keine vollständige Synchronisierung
bereit. Eine unvollständige
Synchronisierung führt
zu Datenverlusten, die Slips genannt werden. Kompensationsnetzwerke,
die Pufferschaltungen umfassen, werden typischerweise dazu verwendet, durch
eine mangelhafte Taktssynchronisierung verursachte Slips zu kompensieren.
-
Fachleute
auf dem Gebiet werden erkennen, dass es erwünscht ist, über eine vollständig synchrone Taktsteuerung
der Abtastwerterfassung und -rekonstruktion zu verfügen, die
Slips und die Notwendigkeit von Kompensationsschaltungen beseitigt.
Diese Art von Netzwerk würde
eine vollständige
Synchronisierung der Taktgeber zwischen Teilnetzen durch Bereitstellen
einer Reihe von Taktgebern vorsehen, die einem Master-Taktgeber
untergeordnet sind.
-
WO-A-9831115 beschreibt
ein interaktives Informationsverteilungssystem, das Service-Provider-Geräte zum Erzeugen
eines Informationsstroms umfasst, der mit einem Informationskanal
gekoppelt und an Teilnehmergeräte
gesendet wird. Der Service-Provider erzeugt außerdem ein Befehlssignal, das
mit einem Befehlskanal gekoppelt und an die Teilnehmergeräte gesendet
wird. Der Service-Provider empfängt
des Weiteren Informationsmanipulationsanfragen vom Teilnehmer über einen
Rückkanal.
Ein Kommunikationsnetzwerk, das den Informationskanal, den Befehlskanal
und den Rückkanal
unterstützt,
ist zwischen den Service-Provider-Geräten und den Teilnehmergeräten angeschlossen.
-
US-A-5,543,951 beschreibt
ein Verfahren zur empfangsseitigen Taktversorgung bei Videosignalen,
die mit ATM über
Glasfaser-/Koaxialkabel-Teilnehmerleitungsnetzwerke digital gesendet
werden. Zur empfangsseitigen Taktversorgung bei digitalen Signalen,
wie etwa digitale datenkomprimierte Fernseh-Verteilungssignale,
die von einer digitalen Signalquelle, wie etwa einer Fernsehsignalquelle, über eine
Verbindungseinheit und ein Lichtwellenleiter- und/oder Koaxialkabelbaumnetzwerk,
das damit verbunden ist und von einer Mehrzahl teilnehmerseitiger
Netzwerkanschlusseinheiten jeweils gemeinsam benutzt wird, an die
teilnehmerseitigen Netzwerkanschlusseinheiten in Form von ATM-Signalen
gesendet werden, werden der oder die erforderlichen Takte separat
gesendet, zumindest von der Verbindungseinheit aus weiter an alle
Netzwerkanschlusseinheiten, die mit dem Lichtwellenleiter- und/oder
Koaxialkabelbaumnetzwerk verbunden sind. Das digitale Signal, das
aus den empfangenen ATM-Zellen erfasst wird, wird daher dort zeitregeneriert.
-
SDRALIA
V. et al.: "Performance
characterization of the MCNS DOCSIS 1.0 CATV protocol with priotised
first come first served scheduling" IEEE Transactions an Broadcastings,
US, IEEE Inc. New York, Band 45, Nr. 2, Juni 1999, Seiten 196–205, ISSN:
0018-9316 betrifft ein Kommunikationssystem gemäß dem Oberbegriff von Anspruch
1.
-
Die
Aufgabe der vorliegenden Erfindung besteht darin, ein Kommunikationssystem
und -verfahren zur Ermöglichung
der Kommunikation zwischen Geräten
erster und zweiter Netzwerke bereitzustellen.
-
Diese
Aufgabe wird durch das Kommunikationssystem gemäß Anspruch 1 und das Verfahren
gemäß Anspruch
7 gelöst.
Vorteilhafte Ausführungsformen
der Erfindung sind in den abhängigen
Ansprüchen
definiert.
-
Viele
der vorhandenen Merkmale der Erfindung gehen aus einem besseren
Verständnis
der Erfindung durch Bezugnahme auf die folgende detaillierte Beschreibung
in Verbindung mit den begleitenden Zeichnungen genauer hervor.
-
BESCHREIBUNG DER ZEICHNUNGEN
-
Diese
und andere Merkmale und Vorteile der vorliegenden Erfindung gehen
aus der folgenden detaillierten Beschreibung angesichts der begleitenden
Zeichnungen genauer hervor.
-
1 ist
eine Darstellung eines Netzwerksystems, das über eine synchrone Taktung
digitaler Telefoniedaten zwischen einem öffentlichen Telefonnetz (PSTN)
und einem Internet-Netzwerk über
ein Gateway verfügt.
-
2 ist
ein Blockdiagramm eines Internet-Telefonübertragungssystems 1002,
das ein Kabelfernseh-(CATV-)Netz verwendet, um ein oder mehrere
Telefone anzuschließen,
die miteinander in Verbindung stehen.
-
3 ist
eine Darstellung einer Ausführungsform
eines Systems zur Synchronisierung und Verteilung eines vollständig synchronisierten
Taktsignals.
-
4 zeigt
eine Umgebung, in der die vorliegende Erfindung arbeitet, in Form
eines vereinfachten Blockdiagramms.
-
5 zeigt
die Verbindung eines beispielhaften Haushalts unter Verwendung der
vorliegenden Erfindung gemäß einem
Kabelmodem und einem Kabelmodemanschlusssystem in Form eines vereinfachten Blockdiagramms.
-
6 zeigt
die Zuweisung von Zeitschlitzen durch das Kabelmodemanschlusssystem
in graphischer Form.
-
7 und 8 zeigen
die Konstruktion eines Frames in Form eines Flussdiagramms.
-
9 und 10 zeigen
einen Abschnitt des Kabelmodemanschlusssystems, der Anfragen von
den Kabelmodems erhält
und in Antwort auf die Anfragen MAPs erzeugt, in Form eines vereinfachten
Blockdiagramms.
-
11 und 12 zeigen,
wie ein Kabelmodem und ein Kabelmodemanschlusssystem bei vom Kabelmodem
an das Kabelmodemanschlusssystem gesendeten Paketen zusammenarbeiten,
in Form eines Flussdiagramms.
-
13 und 14 zeigen
Aspekte des Taktsteuerungssynchronisierungssystems zwischen dem
Kabelmodem und dem Kabelmodemanschlusssystem in Form eines Blockdiagramms.
-
15 zeigt
eine beispielhafte Taktrückgewinnungsschaltung
eines Kabelmodems genauer in Form eines Blockdiagramms.
-
16 zeigt
ein Beispiel für
grobe und feine Koeffizienten, die für mehrere unterschiedliche
Aktualisierungsraten und Bandbreiten geeignet sind, in Form einer
Tabelle.
-
17 zeigt
einen Taktsteuerungsschlitzversatz zwischen dem Kabelmodemtaktgeber
und dem Kabelmodemanschlusssystemtaktgeber in graphischer Form.
-
18 zeigt
die Burst-Übertragung
und den Burst-Empfang durch das Kabelmodem und das Kabelmodemanschlusssystem
in Form eines vereinfachten Blockdiagramms.
-
19 zeigt
das Kabelmodemanschlusssystem genauer.
-
20, 21 und 22 zeigen
die Verhältnisse
zwischen Bewilligungen und Abtastungen in graphischer Form.
-
23 zeigt
eine repräsentative
Ausführungsform
der vorliegenden Erfindung in Form eines vereinfachten Blockdiagramms.
-
24 zeigt
den Betrieb einer erfindungsgemäßen Kopfstellen-Taktsynchronisierschaltung
in Form eines vereinfachten Blockdiagramms.
-
25 zeigt
den Betrieb einer erfindungsgemäßen Kabelmodem-Taktsynchronisierung
in Form eines vereinfachten Blockdiagramms.
-
26a, 26b, 26c zeigen das Verhältnis zwischen erfindungsgemäß verwendeten
Signalen in graphischer Form.
-
27a, 27b und 27c zeigen das Verhältnis zwischen weiteren erfindungsgemäß verwendeten
Signalen in graphischer Form.
-
28, 29 und 30 zeigen
eine erfindungsgemäße Bewilligungszeitberechnungsschaltung
in Form eines vereinfachten Blockdiagramms und in graphischer Form.
-
31 zeigt
das Verhältnis
zwischen der Bewilligungszeitberechnungsschaltung, dem digitalen
Signalprozessor und Puffern gemäß der vorliegenden
Erfindung in Form eines vereinfachten Blockdiagramms.
-
32a und 32b zeigen
eine betriebsfähige
DSP-Systemsoftwareentscheidungsimplementierung gemäß der vorliegenden
Erfindung in Form eines Flussdiagramms.
-
Gleiche
Bezugszeichen werden in den begleitenden Zeichnungen dazu verwendet,
gleiche Teile zu benennen.
-
GENAUE BESCHREIBUNG DER ERFINDUNG
-
1 ist
eine Darstellung eines Netzwerksystems 0001, das über eine
synchrone Taktung von Sprachtelefoniedaten zwischen einem an ein
herkömmliches öffentliches
Telefonnetz (PSTN/Public Switched Telephone Network) 3000 angeschlossenen
Telefon 3001 und einem an ein digitales Datenübertragungsnetzwerk 4000 angeschlossenes
Telefon verfügt.
Das mit dem PSTN verbundene Telefon 3001 verwendet herkömmliche
und universell anwendbare Anschlussverfahren, die heutzutage typischerweise
praktisch in jedem Haushalt und Geschäftsbetrieb in Nordamerika verwendet
werden. Das mit dem digitalen Datenübertragungsnetzwerk verbundene
Telefon 4001 kann gemäß einem
beliebigen einer Vielzahl von heute verwendeten Verfahren angeschlossen
werden, die Voice over Internet Protocol (VoIP) oder Voice over
Digital Subscriber Loop (VoDSL) umfassen, jedoch nicht darauf beschränkt sind.
-
Für die Zwecke
dieses Beispiels wird angenommen, dass die zwei Telefone 3001 und 4001 identisch sind.
Es sind jedoch gleichwertige Geräte
erhältlich
und mit diesen austauschbar, welche ISDN-Telefon- oder in Entwicklung
befindliche Ethernet- oder VoIP-Telefonapparate umfassen, die äquivalente
Funktionen bereitstellen. Fachleute auf dem Gebiet werden erkennen,
dass die Beschreibung der folgenden Schnittstellen und Funktionen
eine von vielen gleichwertigen Konfigurationen darstellen, die dazu
verwendet werden, die beschriebene Ausführungsform in die Praxis umzusetzen.
-
Die
Schnittstelle zwischen dem Telefon 3001 und dem PSTN 3000 ist
eine herkömmliche Loop-Start-Schnittstelle,
die in dem Telcordia-Dokument TR-NWT-000057 beschrieben ist. Die Schnittstelle zwischen
dem PSTN 3000 und der Stationsreferenz ist ein herkömmliches
Building Integrated Timing System (BITS) 3020, das in Telcordia
TR-NWT-001244 beschrieben ist. Die Schnittstelle zwischen dem PSTN 3000 und
dem Gateway (Protokollumsetzer) 3050 ist eine herkömmliche
GR-303-Schnittstelle 3030.
-
Die
Schnittstelle 3065 zwischen der Stationsreferenz 3040 und
dem Gateway 3050 ist eine BITS-Schnittstelle. Die Schnittstelle
zwischen der Stationsreferenz 3040 und dem Datenübertragungsnetzwerk
ist die von CableLabs in SP-RFI-I04-0980724 spezifizierte, wohlbekannte
Data-Over-Cable-Service-Spezifikation (DOCSIS). Die Schnittstelle
zwischen dem Gateway 3050 und dem Datenübertragungsnetzwerk 4000 ist
die wohlbekannte IEEE-802.3-Schnittstelle a.k.a. Ethernet. Die Schnittstelle
zwischen dem Kabelmodem 4300 und dem Datenübertragungsnetzwerk
ist die wohlbekannte DOCSIS-Schnittstelle. Die Schnittstelle zwischen
dem Kabelmodem 4300 und dem Telefon 4001 ist die
in TR-NWT-000057 beschriebene Loop-Start-Schnittstelle.
-
Sämtliche
Schnittstellen, die bei der Umsetzung der Erfindung verwendet werden,
basieren auf Standards und sind Fachleuten auf dem Gebiet wohlbekannt.
Traditionelle Implementierungen von Gateway-Geräten zwischen dem PSTN und Datenübertragungsnetzwerken
ignorieren die vom PSTN vorgesehenen Taktsteuerungsinformationen.
Die Folge dieser Ausführungspraxis
ist, dass häufig
große
Verzögerungen
und Datenverluste des Sprachsignals am Gateway auftreten, wodurch
die Qualität
des Sprachsignals beeinträchtigt wird.
-
Die
vorliegende Ausführungsform
der Erfindung stellt ein System und ein Verfahren zum Liefern der PSTN-Taktsteuerungsinformationen
unter Verwendung von Datenübertragungsverfahren
bereit, so dass die Abtastung und Sendeabwicklung (Playout) von
Sprachinformationen am Gateway 3050 und Kabelmodem 2300–2001 synchron
durchgeführt
wird. Der synchrone Betrieb der Ausführungsformen der Erfindung
minimiert den Datenverlust und die Gesamtverzögerung, die die Sprachdaten
erleiden, während
sie durch das Datenübertragungsnetzwerk
transportiert werden.
-
2 ist
ein Blockdiagramm eines Internet-Telefonübertragungssystems 3002,
das ein Kabelfernseh-(CATV-)Netz 3026 dazu verwendet, ein
oder mehrere miteinander verbundene Telefone 4002, 4008, 4010 anzuschließen. Die
in 2 beschriebenen Netze sind nachfolgend näher beschrieben.
-
Bei
der gezeigten Ausführungsform
ist ein Telefon 4002 auf herkömmliche, Fachleuten bekannte
Art und Weise mit einem PSTN 3004 verbunden. Das PSTN 3004 ist
mit einem ISP-Gateway 3012 verbunden. Die PSTN-/Gateway-Verbindung
verwendet typischerweise eine Fachleuten bekannte digitale Signalübertragung.
Der ISP-Gateway 3012 ist
unter Verwendung von Fachleuten bekannten herkömmlichen Signalübertragungsprotokollen
mit einem Internet 3006 verbunden.
-
Das
Internet 1006 ist mit einem CATV-Netzwerk 3026 verbunden.
Das CATV-Netzwerk umfasst ein Kabelmodemanschlusssystem (CMTS/cable
modem termination system) 4004, ein Hybrid-Glasfaser-Koaxialkabel-(HFC-/Hybrid
Fiber Coax) Netz 3010 und ein Kabelmodem 4006.
Das CMTS 4004 ist auf herkömmliche, Fachleuten bekannte
Art und Weise mit dem Internet 3006 verbunden. Das CMTS 4004 ist
auf herkömmliche, Fachleuten
bekannte Art und Weise mit dem HFC 3010 verbunden. Das
HFC 3010 ist auf herkömmliche,
Fachleuten bekannte Art und Weise mit dem Kabelmodem 4006 verbunden.
-
Das
Kabelmodem 4006 wird als Zugangsstelle verwendet, um andere
Netzwerke, wie etwa ein HPNA-Netz 3014, und andere Geräte, wie
etwa einen PC 4012 und ein Telefon 4001, mit dem
Internet 3006 zu verbinden. Ein PC 4012 ist auf
herkömmliche,
Fachleuten bekannte Art und Weise mit dem Kabelmodem 4006 verbunden.
Ein Fernseh-(TV-) oder Videosystem 4014 ist auf herkömmliche,
Fachleuten bekannte Art und Weise mit dem Kabelmodem 4006 verbunden.
Ein Telefon 4001 ist auf herkömmliche, Fachleuten bekannte Art
und Weise mit dem Kabelmodem 4006 verbunden.
-
Das
Kabelmodem 4006 ist auf herkömmliche, Fachleuten bekannte
Art und Weise außerdem
mit einem externen Netzwerk, wie etwa einem HPNA-Netz 3014,
verbunden. Das gezeigte HPNA-Netz umfasst einen HPNA-Telefonadapter 4106.
Das Kabelmodem 4006 ist auf herkömmliche, Fachleuten bekannte
Art und Weise mit dem HPNA-Telefonadapter 4016 verbunden.
Der HPNA-Telefonadapter ist auf herkömmliche, Fachleuten bekannte
Art und Weise mit einem auf herkömmliche
Weise konstruierten Telefon 4008 verbunden. Das Übertragungssystem,
das das Kabelfernsehnetz 3026 nutzt, ermöglicht es
typischerweise einem Heimcomputerbenutzer, seinen Computer 4012 über ein
Kabelfernsehübertragungsnetzwerk 3026 über ein
Kabelmodem 4006 mit dem Internet 3006 zu vernetzen.
Der Benutzer kann außerdem über das
Kabelmodem 4006 Telefonanrufe machen sowie Fernsehprogramme
auf einem Fernsehapparat 4014 empfangen.
-
Die Übertragung
von Daten über
das Kabelfernsehnetz 3026 wird durch die Data-Over-Cable-Service-Interface-Spezifikation
(DOCSIS) gesteuert. Insbesondere die DOCSIS-Spezifikation SP-RF1-I04-980724
ist für
die Implementierung der Ausführungsformen
der Erfindung relevant.
-
Die Übertragung
digitaler Telefoniedaten zwischen Telefonen 4008 in einem
Heimnetz oder, gleichwertig dazu, einem ortsbezogenen Netz 3014 und über das
Kabelfernsehnetz 3026 an Benutzer, die nicht direkt mit
dem Heimnetz 4002 verbunden sind, ist durch die HPNA-Spezifikation
2.0 geregelt. Daher gewinnt, aufgrund der zunehmenden Nutzung von
Netzwerksystemen für
den Telefonverkehr, die Verwendung einer vollständig synchronen Taktung in
dem Maße
an Bedeutung, in dem der Bedarf an Sprachübertragungen über ein Datennetzwerk
zunimmt.
-
3 ist
eine Darstellung einer Ausführungsform
eines Systems zur Verteilung von PSTN-Taktsteuerungsinformationssignalen
unter Verwendung von Datenübertragungstechniken.
Die Ansammlung angeschlossener Netzwerke 4060, 4070, 4080, 4090 bildet
ein umfassendes Datenübertragungsnetzwerk 4000,
in dem Taktsteuerungs- und Sprachdatensignale zwischen dem PSTN 3000 und
den über
das Datenübertragungsnetzwerk 4000 angeschlossenen
Sprachabtastschaltungen 4310 und 4410 transportiert
werden.
-
Das
CMTS 4010 ist dafür
konfiguriert, es zu ermöglichen,
den DOCSIS-Netztaktgeber 4012 unter Verwendung eines wohlbekannten
Stratum-3-Referenztaktgebers 4011 mit der Stationsreferenz 3040 zu
synchronisieren. Die Leistung des Stratum-3-Referenztaktgebers ist durch Telcordia
TR-NWT-001244 definiert. Fachleute werden erkennen, dass die Synchronisierungsschnittstelle 4014 zwischen
der Stratum-3-Referenz
und dem CMTS-Master-Oszillator 4012 eine auf herkömmliche
Art und Weise konstruierte Phasenregelkreisschaltung (PLL-Schaltung)
ist, die Fachleuten bekannt ist. Bei der gezeigten Ausführungsform
umfasst ein CMTS 4010 einen Stratum-3-Referenztaktgeber 4011,
der unter Verwendung einer PLL-Schaltung 4014 mit dem CMTS-Master-Oszillator 4012 verbunden
ist. Der CMTS-Master-Oszillator 4012 ist
mit einer DOCSIS-Kopfstellensteuereinheit 4013 verbunden.
Die DOCSIS-Kopfstellensteuereinheit ist auf Fachleuten bekannte,
herkömmliche
Art und Weise konstruiert. Ein Beispiel für diese Einrichtung die im
Handel erhältliche
BCM3210 von Broadcom Corporation. Die DOCSIS-Kopfstellensteuereinheit 4013 verbindet
ein HFC 4060 über
einen Upstream-/Downstream-Pfad 4050 mit einem QoS-verwalteten
Ethernet 4090. Das CMTS führt einen Medienumwandlungsbetrieb
zwischen dem DOCSIS-HF-Netz und dem Ethernet durch. Dieser Betrieb
ist durch SP-RFI-I04-980724 beschrieben. Die Stationsreferenz 3040 und
der Stratum-3-Referenztaktgeber 4011 sind auf
herkömmliche,
Fachleuten bekannte Art und Weise konstruiert.
-
Das
Hybrid-Glasfaser-/Koaxialkabel-(HFC-)Netz 4060 ist auf
herkömmliche,
Fachleuten bekannte Art und Weise konstruiert. Das HFC-Netz 4060 stellt
eine physische Übertragung
zwischen dem CMTS 4010 und einem Kabelmodem 4300 bereit.
Das DOCSIS-Datenübertragungsverfahren 4050 und 4200 stellt
eine Möglichkeit
bereit, Internet-Protokoll-formatierte Pakete zu liefern, die in
MPEG-Frames eingebettet sind. Eine Beschreibung dieses Verfahrens
findet sich in SP-RFI-I04-980724. DOCSIS legt außerdem ein Verfahren zum Senden
der CMTS-Taktsteuerungs-Master-Informationen 4012 unter
Verwendung eines DOCSIS-spezifischen Verfahrens an das Kabelmodem 4300 fest.
Die Übertragung
von Taktinformationen 4040 und 4100 ermöglicht es
dem Kabelmodem, einen Taktrückgewinnungstakt
(TRC/Timing Recovered Clock) 4312 zu erzeugen, der mit
dem CMTS-Master-Takt 4012 frequenzsynchronisiert ist. Diese
Ausführungsform
bewirkt, dass der DOCSIS-TRC-Taktgeber 4312 mit
der Stationsreferenz 3040 frequenzsynchronisiert ist.
-
Das
Kabelmodem 4300 umfasst eine DOCSIS-CPE-Steuereinheit,
die mit einer Sprachabtastschaltung 4310 gekoppelt ist,
die wiederum mit einem auf herkömmliche
Art und Weise konstruierten externen Telefonapparat 4001 verbunden
ist. Das Kabelmodem ist auf herkömmliche,
Fachleuten bekannte Art und Weise konstruiert. Der Kabelmodem-TRC 4312 ist
mit der Sprachabtastschaltung durch herkömmliche Verfahren verbunden,
welche Taktteiler umfassen, die zum Anpassen der Rate des TRC an
die von der Sprachabtastschaltung 4310 benötigte Rate
erforderlich sind. Ein Beispiel für die DOCSIS-CPE-Steuereinheit
ist die BCM3350 von Broadcom Corporation. Ein Beispiel für eine Sprachabtastschaltung
ist die Am79Q031 von Advanced Mirco Devices.
-
Die
HPNA-Steuereinheit ist über
die DOCSIS-CPE-Steuereinheit mit dem TRC-Taktgeber verbunden. Die HPNA-Steuereinheit
stellt ein Verfahren zum Senden der TRC-Taktsteuerungsinformationen
unter Verwendung von HPNA-Protokollsignalen bereit. Diese Schaltung
ist als Beispiel angegeben, um zu zeigen, dass dieses Taktsteuerungsübertragungsverfahren
dazu verwendet werden kann, das Taktsteuerungsnetz über das Kabelmodem
hinaus zu erweitern.
-
Die
HPNA-Steuereinheit 4311 des Kabelmodems dient dazu, das
HPNA-Netz 4070 unter Verwendung von durch das DOCSIS-Netz
bereitgestellten Datenübertragungsverfahren
mit dem Ethernet 4090 zu verbinden. Die HPNA-Steuereinheit
und das HPNA-Netz sind auf herkömmliche,
Fachleuten bekannte Art und Weise konstruiert. Die HPNA-Steuereinheit 4311 des
Kabelmodems ist über 4070 mit
einer HPNA-Steuereinheit 4411 verbunden,
die in einem HPNA-Telefonadapter 4400 enthalten ist. Die
HPNA-Steuereinheit 4311 stellt ein Verfahren zum Senden
des TRC-Taktes 4312 über
eine Nachrichtenaustauschschnittstelle 4070 an den HPNA-Telefonadaptertaktgeber 4412 bereit.
Die HPNA-Steuereinheit 4411 ist mit einem lokalen Taktgeber 4412 und
einer Sprachabtastschaltung 4410 verbunden. Die Sprachab tastschaltung 4410 ist
wiederum mit einem auf herkömmliche
Art und Weise konstruierten externen Telefonapparat 4002 verbunden.
-
Das
PSTN 3000 ist auf herkömmliche,
Fachleuten bekannte Art und Weise konstruiert. Das Gateway 3050 ist
ebenfalls mit dem Ethernet 4090 und dem PSTN 3000 verbunden.
Das PSTN ist wiederum mit mehreren auf herkömmliche Art und Weise konstruierten
Telefonapparaten verbunden, die durch ein einzelnes Telefon 3001 repräsentiert
sind.
-
Eine
Kabelmodemanschlusssystemreferenz (CMTS-Referenz) 4011 ist
mit der Netzwerkstationsreferenz 3020 synchronisiert. Die
Stationsreferenz 3020 wird dazu verwendet, den internen
Stratum-3-Referenztaktgeber 4011 zu synchronisieren, der
sowohl im CMTS 4010 als auch im PSTN-Gateway 3050 enthalten
ist. Der Stratum-3-Referenztaktgeber
im PSTN-Gateway 3050 ist auf herkömmliche, Fachleuten bekannte
Art und Weise konstruiert. Die DOCSIS-CMTS-Referenz 4012 ist über eine
Phasenregelkreisschaltung (PLL-Schaltung) 4014 dem Stratum-3-Referenztaktgeber
untergeordnet.
-
Die
DOCSIS-CMTS-Referenz 4012, die mit der PSTN-Stationsreferenz 3040 synchronisiert
ist, wird über
das HFC-Netz 4060 unter Verwendung eines Fachleuten wohlbekannten
DOCSIS-Synchronisierungsverfahrens zur DOCSIS-CPE-Steuereinheit 4313 transportiert,
die sich in einem entfernten Kabelmodem 4300 befindet.
Das DOCSIS-Synchronisierungsverfahren bewirkt, dass der Taktgeber 4312 der
DOCSIS-CPE-Steuereinheit mit dem CMTS-Referenztaktgeber 4012 frequenzsynchronisiert
ist, welcher wiederum mit der Stationsreferenz 3040 phasensynchronisiert
ist, die mit dem durch das PSTN-Taktverteilungsnetz bereitgestellten PSTN-Taktgeber phasensynchronisiert
ist. Das Endergebnis dieses Verbindungsverfahrens besteht darin, dass
der Taktgeber 4312 der DOCSIS-CPE-Steuereinheit mit dem
PSTN-Taktsteuerungsverteilernetz frequenzsynchronisiert ist, was
sich in der Stationsreferenz 3040 widerspiegelt.
-
Am
Kabelmodem 4300 wird der Taktgeber 4312 der DOCSIS-CPE-Steuereinheit
dazu verwendet, die Sprachschaltung 4310, die ein Teil
des Kabelmodems 4300 (oder äquivalent dazu, lokal mit der
DOCSIS-CPE-Steuereinheit 4313 verbunden) ist, mit einer
Taktsteuerung zu versehen. Der Taktgeber 4312 der DOCSIS-CPE-Steuereinheit
wird außerdem
dazu verwendet, entfernt angeschlossene Sprachschaltungen 4411,
die mit einem Heimnetz 4080 verbunden sind, mit einer Taktsteuerung
zu versehen. Die vorliegende Erfindung schließt diese entfernten Sprachschaltungen über ein
herkömmliches
PNA-Heimnetz an. Fachleute werden erkennen, dass diese Verbindung
ebenso durch andere Netzwerkeinrichtungen, die herkömmliche Ethernet-
und Token-Ring-Netze umfassen, hergestellt werden kann. Die Netzverbindung
ist nicht auf verdrahtete Verfahren beschränkt, da drahtlose Netzwerke
eine gleichwertige Verbindung unter dem Betrieb verschiedener Standards
bereitstellen, die Blue Tooth, IEEE 802.11a/b oder HomeRF umfassen.
-
Die
HPNA-Steuereinheit 4311, die typischerweise im Kabelmodem 4300 enthalten
ist, sendet einen synchronisierten Takt 4312 der DOCSIS-CPE-Steuereinheit
an den angeschlossenen HPNA-Telefonadapter 4400. Der HPNA-Telefonadapter 4411 umfasst
eine ähnliche
HPNA-Steuereinheit 4411 zum Entnehmen von Taktinformationen,
die unter Verwendung herkömmlicher Übertragungsprotokolle
der HPNA-Steuereinheit 4311 des
Kabelmodems gesendet werden. Die Übertragung wird über eine
Taktübertragungs-MAC-Nachrichtenverbindung 4080 durchgeführt. Der
HPNA-Telefonadapter
verwendet die Taktinformationen, um den internen Taktgeber 4412 des
HPNA-Telefonadapters mit dem Taktgeber 4312 der DOCSIS-CPE-Steuereinheit
frequenzzusynchronsieren.
-
Daher
bewirkt das Taktsteuerungsverteilungsverfahren, dass der Sprachabtastschaltungstaktgeber 4412 im
HPNA-Telefonadapter mit dem Taktgeber 4312 der DOCSIS-CPE-Steuereinheit
frequenzsynchronisiert wird. Die Sprachabtastschaltungen 4310 im
Kabelmodem 4300 werden ebenfalls mit dem Taktgeber 4312 der
DOCSIS-CPE-Steuereinheit phasensynchronisiert. Daher werden beide
Sprachabtastschaltungen 4311, 4411 mit der Stationsreferenz 3040 frequenzsynchronisiert.
Die Sprachabtastschaltungen im Kabelmodem 4300 und im HPNA-Telefonadapter 4400 werden über die
Stationsreferenz 3040 zwangsläufig mit der PSTN-Netztaktsteuerung
frequenzsynchronisiert.
-
Das
Verfahren umfasst die Verwendung eines Taktverteilungssystems, in
dem keine metallische Verbindung nötig ist, um die Takte zur Erzielung
einer Synchronisierung zu verteilen. Eine metallische Verbindung ist
zwischen der Stationsreferenz 3040 und dem Stratum-3-Referenztaktgeber 4011 über die
Leitung 3060 und zum PSTN-Gateway 3050 über die
Leitung 3065 vorhanden. Die metallischen Verbindungen sind
wohlbekannt und in der vorstehend genannten TR-NWT-001244-Spezifikation
beschrieben.
-
Anders
als die vorstehend genannten metallischen Verbindungen, verteilt
das System Taktsteuerungen, die auf Taktinformationen enthaltenden
Taktsteuerungsnachrichten basieren, über 4040, 4100, 4080.
-
Das
PSTN-Gateway 3050 führt
eine Medienumwandlungsfunktion durch, wobei auf Paketen basierende
Sprachdaten vom Ethernet 4090 an einer ersten Schnittstelle
empfangen werden, und wandelt die Abtastwerte für eine herkömmliche auf Abtastwerten basierende
PSTN-Schnittstelle um. Fachleute werden erkennen, dass die PSTN-Schnittstelle
ebenso eine beliebige von vielen unterschiedlichen Schnittstellenarten
sein kann. Bei der vorliegenden Ausführungsform wird davon ausgegangen,
dass diese Schnittstelle eine herkömmliche T1-Schnittstelle ist,
die durch die Telcordia-Spezifikation GR-303 beschrieben ist.
-
Die
T1-Schnittstelle ist eine digitale Schnittstelle, wobei Abtastwerte
synchron über
eine serielle Geschwindigkeits-Multiplexschnittstelle (speed serial
multipled interface) gesendet werden. Das PSTN-Gateway 3050 erfasst
Abtastwertsätze
konstanter Größe und konstruiert Übertragungspakete,
die über
das verfügbare Datenübertragungsnetz
an die angeschlossenen Zielschaltungen gesendet werden. Bei dieser
Ausführungsform
sind die Zielschaltungen die im Kabelmodem 4300 enthaltene
Sprachschaltung 4310 oder der HPNA-Telefonadapter 4400.
Die vorliegende Ausführungsform
verwendet DOCSIS zum Senden von Daten über ein Hybrid-Glasfaser-/Koaxialkabelnetz
(HFC-Netz) 4060 und ein Ethernet-Netz 4090, um
die Datenpaketlieferung durchzuführen.
Fachleute werden erkennen, dass diese einfache Beispiele für Datenübertragungsnetzwerke darstellen
und dass eine große
Anzahl alternativer Netzübertragungssysteme
auf diesem Gebiet wohlbekannt ist, die ebenso dieselben Verbindungen
herstellen können.
-
Die
Sprachabtastschaltungen in kundeneigenen Endgeräten (CPE/Customer Premise Equipment) empfangen
die Datenpakete, die die Sprachabtastwertsätze konstanter Größe enthalten,
und geben diese Abtastwerte an eine Audioschnittstelle des angeschlossenen
Telefonapparats 4001 unter Verwendung der frequenzsynchronisierten
lokalen Version des Taktgebers 4312 der DOCSIS-CPE-Steuereinheit
aus. Dieser Taktgeber ist über
die Stationsreferenz 3040 mit dem PSTN-Taktsteuerungsverteilungstaktgeber
frequenzsynchronisiert. Somit werden diese Abtastwerte mit derselben
Rate an die Sprachabtastschaltung 4310, 4410 ausgegeben,
mit der sie am PSTN-Gateway 3050 ankommen. Somit ist der
gesamte Betrieb frei von Daten-Über- oder
Unterschreitungsbeeinträchtungen,
die häufig
nachteilige Auswirkungen auf die Sprachqualität haben, welche häufig auftreten
würden,
wenn dieses Taktsteuerungsverteilungsverfahren nicht verwendet werden würde.
-
Die
Verteilung ist ein DOCSIS-Übertragungssystem,
das durch das folgende Verfahren ausgeführt wird. Ein herkömmliches
DOCSIS-Übertragungssystem
umfasst eine DOCSIS-Kopfstellensteuereinheit 4010, die
einen CMTS-Master-Taktgeber 4012 umfasst. Ein HFC-Netz 4060 ist
mit der DOCSIS-Kopfstellensteuereinheit 4013 über einen
Nachrichtenaustauschpfad 4050, 4040 verbunden.
Das HFC-Netz 4060 ist über
den Nachrichtenaustauschpfad 4040, 4050 mit der
DOCSIS-CPE-Steuereinheit 4313 verbunden. Die DOCSIS-CPE-Steuereinheit 4313 umfasst
einen lokalen Taktgeber 4312. Der lokale Taktgeber 4312 wird
durch ein herkömmliches
intern generiertes DOCSIS-Taktsynchronsierverfahren 4040 mit
dem Taktgeber 4012 synchronisiert. Die Taktgeber 4312 und 4012 werden
somit durch einen herkömmlichen
DOCSIS-Mechanismus synchronisiert. Bei der im DOCSIS-System beschriebenen
Ausführungsform
ist der Taktgeber 4012 die Master-Referenz und legt die
Zeitbasis für
das gesamte DOCSIS-Netzwerk fest.
-
Eine
auf herkömmliche
Weise formatierte DOCSIS-Nachricht umfasst eine Nachricht, die Synchronisiernachricht
genannt wird und Taktrateninformationen bezüglich des Taktgebers 4012 sendet,
so dass die im Kabelmodem 4300 enthaltene Steuereinheit 4313 diese
Informationen dazu verwendet, den Taktgeber 4312 mit dem
Taktgeber 4012 zu synchronisieren. Dies ist der DOCSIS-Takttransportmechanismus.
-
Eine
Ausführungsform
der Erfindung verwendet den DOCSIS-Takttransport. Der DOCSIS-Takttransportmechanismus
ist ausschließlich
dafür ausgelegt,
ein Taktsignal in Upstream-Richtung zu senden. Das DOCSIS-Takttransportsystem
ist bloß ein
Sendertakt zur Unterstützung
der internen DOCSIS-Netzwerktaktsteuerung, d.h. der Takt wird weder
importiert noch exportiert.
-
Die
Ausführungsform
der Erfindung verwendet einen Stratum-3-Referenztaktgeber 4011 zum
Importieren eines Master-Takts. Der Stratum-3-Referenztaktgeber 4011 synchronisiert
sich selbst mit dem Stationsreferenztaktgeber 3040. Ein
Synchronisiersignal 4014 synchronisiert den CMTS-Taktgeber 4012 mit
dem Stratum-Referenztaktgeber 4011.
Der Stratum-3-Referenztaktgeber ist auf herkömmliche Weise konstruiert,
wie im Belcor-Standard TR 3244 angegeben. Eine Synchronisierung
der Stationsreferenz 3040 mit einem Stratum-Referenztaktgeber 3060 wird
durch eine herkömmliche
Synchronisierschaltung erreicht, die Fachleuten bekannt ist. Derart
angeschlossen, ist der Stratum-3-Referenztaktgeber 4011 nun
die Master-Referenz
des CMTS 4010.
-
Bei
der dargestellten Ausführungsform
ist die DOCSIS-Master-Referenz 6 über den Stratum-3-Referenztaktgeber 4011 der
Stationsreferenz 4112 untergeordnet. Wenn das DOCSIS-System
arbeitet, sendet es den Takt 4012 an den Taktgeber 4312.
Was das DOCSIS-System jedoch tatsächlich tut, ist die Stationsreferenz 3040 zu
senden, da der Taktgeber 4012 dem Taktgeber 3040 untergeordnet
ist, welcher wiederum der Stationsreferenz 3040 untergeordnet
ist. Es ist erwünscht,
die DOCSIS-Taktsteuerung der Stationsreferenz 3040 unterzuordnen,
die auch vom PSTN-Netz verwendet wird, da das PSTN an das HPNA-Telefonsystem angeschlossen
ist. Daher arbeitet das Gateway 3050 in Wahrheit unabhängig von
der Stationsreferenz 3040.
-
Das
Gateway wandelt vom HFC-Netz 4060 ankommende Pakete um.
Das Gateway 3050 wandelt vom HFC-Netz über das Internet ankommende
Pakete in ein PSTN-kompatibles
Signal um. Das gesamte PSTN-Netz wird durch die Stationsreferenz 3040 synchronisiert.
Es ist erwünscht,
dass am Gateway 3050 ankommende Datenpakete in Synchronisation
mit der Stationsreferenz 3040 zeitlich abgestimmt werden,
um Slips (Datenverluste) zu verhindern.
-
Das
Gateway 3050 ist ein Computer, der Protokollumsetzungen
zwischen unterschiedlichen Netzwerk- und Anwendungsarten durchführt, damit
Signale übertragen
werden können.
Ein Gateway wandelt beispielsweise Nachrichten zwischen zwei unterschiedlichen
Protokollen um, so dass eine Nachricht von einem ersten Netzwerk
in ein zweites unterschiedliches Netzwerk transportiert und dort
verarbeitet werden kann. Ein Open-System-Interconnection-(OSI-)Modell
definiert ein System zum Implementieren von Protokollen in Schichten,
das in einem Gateway verwendet wird. Die Verarbeitungssteuerung
wird von einer Schicht an die nächste
weitergegeben, beginnend mit der Anwendungsschicht in einer Station
und weiter zur untersten Protokollschicht über einen Kanal (wie etwa das
Internet) zu einer nächsten
Station und wieder eine aus Schichten bestehende Hierarchie in dieser
Station empor. Alternativ kann eine Nachricht einfach durch ein
Netzwerk weitergeleitet werden, sobald ihr Protokoll durch ein Gateway
umgewandelt worden ist, so dass sie das Netzwerk passieren kann,
um zu einem anderen Netzwerk zu gelangen, in dem sie verarbeitet
wird.
-
Die
Daten kommen über
einen Upstream-Pfad, der von einem von mehreren Telefonapparaten 4002, 4001 ausgeht,
am Gateway 3050 an. Der Upstream-Datenpfad für ein HPNA-Telefon
zum PSTN beginnt mit dem Datenpfad 4070 zwischen dem HPNA-Telefonadapter
und dem Kabelmodem 4300. Die nächste Verbindung verläuft über die
Verbindung 4200 vom Kabelmodem zum HFC-Netz 4060.
Die nächste
Verbindung verläuft über den
Upstream-Datenpfad 4050 vom HFC-Netz zum CMTS 4010.
Das CMTS verbindet die Upstream-Daten über den Datenpfad 3016 mit
dem Internet. Schließlich
verbindet das Ethernet die Daten über den Datenpfad 3070 mit
dem Gateway 3050. Es ist erwünscht, die am Gateway 3050 befindlichen
Daten ohne Slips an das PSTN 3000 zu übertragen.
-
Eine
slip-freie Umgebung wird alternativ als vollständig synchrone Umgebung bezeichnet.
Durch Steuern eines Abtasttakts mittels einer externen Stationsreferenz 3040 ist
die Sprachabtastschaltung 4310, 4410 vollständig mit
der Stationsreferenz synchronisiert, um eine slip-freie Umwandlung
bereitzustellen. Die Taktinformationen werden dazu verwendet, Daten
zu senden und empfangen. Die Taktinformationen werden außerdem dazu
verwendet, einen Abtasttakt zu entwickeln, um eine Audioschnittstelle
am Gataway 3050 abzutasten. Die Audioabtastwerte werden
mit der Stationsreferenzrate des PSTN in Daten umgewandelt. Diese
synchrone Abtastung verhindert Slipping, vereinfacht die Schaltungserkennung
und verbessert häufig
die Audioqualität.
-
Slipping
tritt auf, wenn zwei Takte nicht gleich sind, wie etwa der Takt
der Sprachabtastschaltung 4310 und der Takt des PSTN, welcher
die Stationsreferenz 3040 ist. Häufig liegen die Takte nahe
beieinander, sind aber nicht gleich. In einem PSTN wird ein Netzwerk-Slip-Management
verwendet. Wenn beispielsweise der Sprachabtastungstaktgeber etwas
schneller als der Stationsreferenztaktgeber 3040 laufen
würde,
dann würde die
Sprachabtastschaltung 31 mit der Zeit mehr Abtastwerte
erfassen als das mit der Stationsreferenz 3040 synchronisierte
PSTN. Somit werden mehr Abtastwerte erfasst als an das PSTN-Netz
gesendet werden können.
Dies passiert, weil der Gateway-Taktgeber 3050 nicht vollständig mit
der Stationsreferenz 3040 synchronisiert ist. Eine der
Sprachabtastschaltung 4310 zugeordnete Pufferschaltung
speichert typischerweise die Abtastwerte. Wenn jedoch die Sprachabtastschaltung
mit einer schnelleren Rate abtastet als das Gateway, das die Daten
in das PSTN takten kann, füllt
sich eine der Sprachabtastschaltung 4310 zugeordnete Pufferschaltung
mit der Zeit und Abtastwerte werden verworfen, da es mehr sind als
verarbeitet werden können.
Zur Vermeidung dieses Problems wird typischerweise ein Slip-Puffer
verwendet. Im Slip-Puffer werden Abtastwerte nach einer gewissen Zeitspanne
verworfen. Nachdem ein Teil der Informationen verworfen worden ist,
fährt der
Puffer fort, sich mit Datenabtastwerten zu füllen bis ein gewisser Prozentsatz
der Kapazität
erreicht worden ist, ab welchem Zeitpunkt wieder Abtastwerte verworfen
werden.
-
Wenn
der Abtasttaktgeber der Sprachabtastschaltung 4310 langsamer
als die Stationsreferenz 3040 läuft, die die Synchronisierschaltung
im Gateway 3050 ansteuert, nimmt das PSTN mehr Daten an
als die Sprachabtastschaltung 4310 bereitstellen kann.
Um dieses Problem in den Griff zu bekommen, werden die Informationen
periodisch wiederholt, um die Synchronisierung mit dem Sender aufrechtzuerhalten.
Die zwei soeben dargelegten Techniken werden häufig als "Slip-Puffer-Management" bezeichnet. Daher
gehen, wenn der Abtasttaktgeber 4310 synchron mit der Stationsreferenz 3040 arbeitet,
die das Gateway 3050 taktet, niemals Daten verloren. Datenabtastwerte
werden vom PSTN mit genau derselben Rate erfasst, mit der sie vom
Internet an das PSTN gesendet werden.
-
Die
Taktsteuerungssynchronisierung im Downstream-Pfad wird auf dieselbe
Art und Weise durchgeführt.
Vom PSTN über
das Gateway 3050 gesendete Nachrichten werden mit einem
von der Stationsreferenz 3040 festgelegten Takt abgetastet.
Die Stationsreferenz wird über
den Stratum-3-Referenztaktgeber 4011 und die DOCSIS-Kopfstellensteuereinheit
durch eine über
das HFC-Netz an die DOCSIS-CPE-Steuereinheit
gesendete Nachricht mit einer Sprachabtastschaltung 4310 synchronisiert.
Diese Vorgehensweise zur Synchronisierung von Taktgebern in einem
Pakettransportnetz ermöglicht
es, das Slip-Management und die zugeordneten Schaltungen, die zur
Implementierung dieses Slip-Managements nötig sind, zu beseitigen.
-
Kabelmodems und das Kabelmodemanschlusssystem
-
Bei
einem Kabelmodemsystem befindet sich eine Kopfstelle oder ein Kabelmodemanschlusssystem (CMTS)
in einem Kabelfirmengebäude
und arbeitet als Modem, das eine große Anzahl an Teilnehmern bedient.
Jeder Teilnehmer verfügt über ein
Kabelmodem (CM/cable modem). Somit ermöglicht das CMTS eine bidirektionale
Kommunikation mit jedem gewünschten
der Mehrzahl an CMs.
-
Das
CMTS kommuniziert mit der Mehrzahl an CMs über ein Hybrid-Glasfaser-Koaxialkabel-Netz (HFC-Netz),
wobei die Glasfaser eine Datenübertragung
an eine Mehrzahl an Glasfaserknoten vorsieht und jeder Glasfaserknoten
typischerweise ungefähr
500 bis 2.000 Teilnehmer bedient, die über Koaxialkabel mit dem Knoten
kommunizieren. Das Hybrid-Glasfaser-Koaxialkabel-Netz eines CM-Systems
verwendet eine Punkt-zu-Multipunkt-Topologie, um die Datenübertragung
zwischen dem CMTS und der Mehrzahl an CMs zu ermöglichen. Das Frequenzmultiplexverfahren
(FDMA/Frequency Domain Multiple Access) bzw. das Zeitmultiplexverfahren
(TDMT/Time Division. Multiplexing) wird verwendet, um die Datenübertragung
vom CMTS zu jedem der CMs zu ermöglichen,
d.h. in Downstream-Richtung. Das FDMA bzw. Zeitmultiplexverfahren
(TDMA) wird verwendet, um die Datenübertragung von jedem CM zum
CTMS zu ermöglichen,
d.h. in Upstream-Richtung.
-
Das
CMTS umfasst einen Downstream-Modulator zum Ermöglichen des Sendens von Datenübertragungen
von dort an die CMs und einen Upstream-Demodulator zum Ermöglichen
des Empfangs von Datenübertragungen
von den CMs. Der Downstream-Modulator des CMTS verwendet entweder
64 QAM oder 256 QAM in einem Frequenzband von 54 MHz bis 860 MHz,
um eine Datenrate von bis zu 56 Mbps bereitzustellen.
-
Ebenso
umfasst jedes CM einen Upstream-Modulator zum Ermöglichen
des Sendens von Daten an das CMTS und einen Downstream-Modulator
zum Empfangen von Daten vom CMTS. Der Upstream-Modulator eines jeden
CM verwendet entweder QPSK oder 16 QAM innerhalb der 5 MHz- bis
42 MHz-Bandbreite des Upstream-Demodulators
und der Downstream-Demodulator eines jeden CM verwendet entweder
64 QAM oder 256 QAM innerhalb der 54 MHz- bis 860 MHz-Bandbreite
des Downstream-Modulators (in Nordamerika).
-
Bezug
nehmend nun auf 4 ermöglicht ein Hybrid-Glasfaser-Koaxialkabel-(HFC-)Netz 5010 die Datenübertragung
zwischen einer Kopfstelle (Headend) 5012, die wenigstens
ein CMTS umfasst, und einer Mehrzahl an Haushalten 5014,
von denen jeder über
ein CM verfügt.
Solche HFC-Netze werden für
gewöhnlich
von Kabel-Providern
dazu verwendet, Teilnehmern Internet-Zugang, Kabelfernsehen, Pay-per-View-Fernsehen und
dergleichen zur Verfügung
zu stellen.
-
Ungefähr 500 Haushalte 5014 sind,
typischerweise über
die Koaxialkabel 5029, 5030, 5031, elektrisch mit
jedem Knoten 5016, 5034 des HFC-Netzes 5010 verbunden.
Verstärker 5015 ermöglichen
die elektrische Verbindung der entfernteren Haushalte 5014 mit
den Knoten 5016, 5034 durch Verstärken der
elektrischen Signale, um so den Rauschabstand solcher Datenübertragungen
in erwünschter
Weise zu erhöhen,
und durch anschließendes
Senden der elektrischen Signale über die
Koaxialleiter 5030, 5031. Die Koaxialleiter 5029 verbinden
die Haushalte 5014 elektrisch mit den Koaxialleitern 5030, 5031,
die sich zwischen den Verstärkern 5015 und
den Knoten 5016, 5034 erstrecken.
-
Jeder
Knoten 5016, 5034 ist elektrisch mit einem Hub
(Sternverteiler) 5022, 5024 verbunden, typischerweise über eine
Glasfaser 5028, 5032. Die. Hubs 5022, 5024 sind über die
Glasfaser 5020, 5026 mit der Kopfstelle 5012 verbunden.
Jeder Hub ist typischerweise dazu in der Lage, eine Kommunikation
mit ungefähr 20.000
Haushalten 5014 zu ermöglichen.
-
Die
Glasfaser 5020, 5026, die sich zwischen der Kopfstelle 5012 und
jedem Hub 5022, 5024 erstreckt, bildet einen Glasfaserring,
der typischerweise dazu in der Lage ist, zwischen ungefähr 100.000
Haushalten 5014 und der Kopfstelle 5012 eine Kommunikation
zu ermöglichen.
-
Die
Kopfstelle 5012 kann Videoserver, Satellitenempfänger, Video-Modulatoren,
Telefon-Switches und/oder Internet-Router 5018 sowie das
CMTS umfassen. Die Kopfstelle 5012 kommuniziert über die Übertragungsleitung 5013,
die eine T1- oder T2-Leitung sein kann, mit dem Internet, anderen
Kopfstellen und/oder beliebigen anderen Einrichtungen oder Netzwerken.
-
Bezug
nehmend auf 5 zeigt ein vereinfachtes Blockdiagramm
die Verbindung zwischen der Kopfstelle 5012 und einem beispielhaften
Haushalt 5014, wobei ein CM 5046 mit einem CMTS 5042 über ein HFC-Netz 5010 kommuniziert.
Ein im Haushalt 5014 befindlicher Personal-Computer 5048 ist über das
Kabel 5011 mit dem CM 5046 verbunden. Spezifischer
sind, bezogen auf die vorliegende Erfindung, bitratenabgetastete
Datenübertragungseinrichtungen 5047a und 5047b,
wie etwa Telefone, Fax- oder Modemeinheiten, mit einem Abtast- und
Paketsynchronisierungsteilsystem (nachfolgend genauer beschrieben)
verbunden, das wiederum an das CM 5046 angeschlossen ist.
Das CM 5046 kommuniziert über das Koaxialkabel 5017 mit
dem HFC-Netz 5044, das wiederum über die Glasfaser 5020 mit
dem CMTS 5042 der Kopfstelle 5012 kommuniziert.
-
Der
Internet-Router ermöglicht
die Kommunikation zwischen der Kopfstelle 5012 und dem
Internet oder einer/einem anderen gewünschten Einrichtung oder Netzwerk
und insbesondere, bezogen auf die vorliegende Erfindung, einem beliebigen
Endbenutzersystem, bei dem ein Anruf von einem Haushalt 5014 eingeht, wie
etwa einem Anrufempfänger 6002,
der über
den PSTN-Gateway 6004 mit dem öffentlichen Telefonnetz (PSTN)
verbunden ist.
-
Zur
Durchführung
von TDMA bei der Upstream-Kommunikation ist es notwendig, Zeitschlitze
zuzuweisen, in denen CMs, die eine Nachricht an das CMTS zu versenden
haben, senden können.
Die Zuweisung solcher Zeitschlitze wird durch Bereitstellen eines
Anfragekonkurrenzbereichs im Upstream-Datenpfad durchgeführt, in
dem die CMs miteinander konkurieren können, um eine Nachricht zu
platzieren, die zusätzliche
Zeit im Upstream-Datenpfad zum Senden ihrer Nachricht anfordert.
Das CMTS antwortet auf diese Anfragen durch Zuweisen von Zeitschlitzen
an die CMs, die eine solche Anfrage stellen, so dass so viele CMs
wie möglich
ihre Nachrichten unter Verwendung von TDMA an das CMTS senden können und
die Übertragungen
ohne unerwünschte
Kollisionen durchgeführt
werden. Mit anderen Worten, das CM fordert einen Anteil der Bandbreite des
Kabelsystems zum Senden von Daten an. Im Gegenzug empfängt das
CM eine "Bewilligung" (grant) eines Bandbreitenanteils
zum Senden von Daten in Antwort auf die Anfrage. Die Zeitschlitzzuweisung
durch das CMTS ist als "Bewilligung" bekannt, da das
CMTS eine spezielle CM-Genehmigung erteilt, eine spezifische Zeitspanne
im Upstream zu nutzen.
-
Aufgrund
der Verwendung von TDMA verwendet das CMTS einen Burst-Empfänger anstelle
eines kontinuierlichen Empfängers
zum Empfangen von Datenpaketen von CMs über Upstream-Datenübertragungen.
Wie Fachleute erkennen werden, kann ein kontinuierlicher Empfänger nur
dann genutzt werden, wenn im Allgemeinen kontinuierliche Datenübertragungen
(im Gegensatz zu Burst-Datenübertragungen,
wie bei der vorliegenden Erfindung) durchgeführt werden, um so die Taktsteuerungssynchronisierung
zwischen dem Sender und dem Empfänger
im Wesentlichen aufrechtzuerhalten, wie es für einen ordnungsgemäßen Empfang der übertragenen
Informationen erforderlich ist. Während kontinuierlicher Datenübertragungen
ist die Taktrückgewinnung
ein einfacheres Verfahren, da die Signalerfassung im Allgemeinen
nur bei der Initiierung solcher Datenübertragungen erfolgt. Somit
wird die Erfassung in kontinuierlichen Empfängern im Allgemeinen nur einmal
pro kontinuierliche Übertragung
durchgeführt,
wobei jede kontinuierliche Übertragung
sehr lang sein kann.
-
Die
TDMA-Systemen inhärenten
Burst-Datenübertragungen
erfordern jedoch eine periodische und häufige Neuerfassung des Signals.
Das heißt,
während
TDMA-Datenübertragungen,
muss das Signal für
jede empfangene separate Burst-Übertragung
neu erfasst werden.
-
Die
Zuweisung solcher Zeitschlitze wird durch Bereitstellen eines Anfragekonkurrenzbereichs
im Upstream-Datenpfad durchgeführt,
in dem die CMs miteinander konkurieren können, um eine Nachricht zu platzieren,
die Zeit im Upstream-Datenpfad zum Senden ihrer Nachricht anfordert.
Das CMTS antwortet auf diese Anfragen durch Zuweisen von Zeitschlitzen
an die CMs, die eine solche Anfrage stellen, so dass so viele CMs
wie möglich
ihre Nachrichten unter Verwendung von TDMA an das CMTS senden können und
die Übertragungen
ohne unerwünschte
Kollisionen durchgeführt
werden.
-
Kurz
gesagt, eine Upstream-Datenübertragung über einen
Upstream-Kanal wird initiiert durch eine Anfrage von einem CM nach
einer Menge an Bandbreite, d.h. einer Mehrzahl an Zeitschlitzen,
zum Senden von eine Nachricht enthaltenden Daten. Die Größe der Anfrage
umfasst die Nutzlast (Payload), d.h. die gesendeten Daten, und die
Grundlast (Overhead), wie etwa die Präambel, FEC-Bits, das Schutzband,
etc. Nachdem die Anfrage an der Kopfstelle empfangen wurde, bewilligt
das CMTS dem anfragenden CM Bandbreite und sendet die Größe der Bewilligung
und die spezifischen Zeitschlitze, denen die Daten zur Einfügung zugewiesen
werden, an das anfragende CM.
-
Es
ist wichtig, zu verstehen, dass eine Mehrzahl solcher CMs in einem
CM-System vorhanden ist und dass jedes der CMs periodisch eine Anfrage
für eine
Zeitschlitzzuweisung an das CMTS senden kann. Somit empfangt das
CMTS häufig
solche Anfragen und weist in Antwort auf solche Anfragen Zeitschlitze
zu. Informationen, die die zugewiesenen Zeitschlitze repräsentieren,
werden zusammengetragen, um ein MAP zu definieren, wobei das MAP
dann über
einen spezifischen Kanal an alle CMs gesendet wird, um die Informationen allen
CMs, die ein oder mehrere Datenpakete an das CMTS zu senden haben,
genau dann zuzuführen,
wenn jedes der CMs autorisiert wird, sein(e) Datenpaket(e) zu senden.
-
Bezug
nehmend nun auf 6 werden die Zuweisung von Zeitschlitzen
durch das CMTS und die Erzeugung eines MAP, das die Zeitschlitzzuweisungen
definiert, genauer beschrieben. Der Inhalt einer MAP-Protokolldateneinheit
(PDU/Protocol Data Unit) 5113 ist dargestellt. Die MAP-PDU 5113,
die vom CMTS 5042 über den
Downstream-Kanal an alle CMs 5046 auf einem gegebenen Frequenzkanal
gesendet wird, enthält
die Zeitschlitzzuweisungen für
zumindest einige der CMs 5046, die zuvor eine Anfrage zum
Senden eines oder mehrerer Datenpakete an das CMTS 5042 gesendet
haben. Wenn die Kanalbandbreite ausreicht, weist das CMTS 5042, angesichts
der Anzahl solcher vom CMTS 5042 empfangener Anfragen,
jedem derart anfragenden CM 5046 einen Zeitschlitz zu.
-
Des
Weiteren definiert die MAP-PDU 5113, zumindest gelegentlich,
wenigstens einen Anfragekonkurrenzbereich 112 und enthält im Allgemeinen
außerdem
eine Mehrzahl an CM-Sendegelegenheiten 5114 im Upstream-Kanal 5117.
Ein Erhaltungs-Frame 5116 kann ebenfalls durch die MAP-PDU 5113 im
Upstream-Kanal 5117 definiert werden, wie nachfolgend genauer
beschrieben.
-
Der
Anfragekonkurrenzbereich 5112 umfasst zumindest einen Zeitbereich,
in dem die CMs 1046 ihre Anfragen zum Senden von Datenpaketen
an das CMTS 5042 senden. Jede der CM-Sendegelegenheiten 5114 definiert
einen Zeitschlitz, in dem es einem benannten CM 5046 erlaubt
ist, das Datenpaket zu senden, für
das zuvor eine Anfrage an das CMST 5042 gesendet wurde.
-
Darüber hinaus
können
ein oder mehrere fakultative Sendekonkurrenzbereiche (nicht gezeigt)
bereitgestellt werden, in denen die CMs 5046 miteinander
um die Gelegenheit, Daten zu senden, konkurrieren können. Solche
Sendekonkurrenzbereiche werden bereitgestellt, wenn, nachdem die
MAP-PDU 5113 all denjenigen CMs 5046, die eine
Zeitschlitzzuweisung beantragt haben, Sendegelegenheiten 5114 zugewiesen
hat, ausreichend Bandbreite übrig
ist. Somit werden die Sendekonkurrenzbereiche im Allgemeinen bereitgestellt, wenn
der Upstream-Datenfluss vergleichsweise schwach ist.
-
Der
Upstream-Kanal 5119 ist in eine Mehrzahl von Zeitintervallen 5110 aufgeteilt,
von denen jedes wahlweise weiter in eine Mehrzahl an Sub-Intervallen 5115 unterteilt
werden kann. Der Upstream-Kanal 5119 ist somit unterteilt,
um die Definition von Zeitschlitzen zu ermöglichen, so dass jedes einer
Mehrzahl an CMs 5046 Datenpakete an das CMTS 5042 senden
kann, ohne dass sie einander stören,
z.B. ohne Datenkollisionen infolge von gleichzeitig gesendeten Datenpaketen.
-
Somit
ermöglicht
die Verwendung eines MAP 5113 die Definition von Schlitzen 5092.
Jeder Schlitz 5092 kann für einen beliebigen gewünschten
vordefinierten Zweck verwendet werden, z.B. als Anfragekonkurrenzbereich 5112 oder
als Sendegelegenheit 5114. Jeder durch eine MAP-PDU 113 definierte
Schlitz 5092 umfasst eine Mehrzahl an Zeitintervallen 5110 und
kann außerdem
ein oder mehrere Subintervalle 5115 zusätzlich zu dem oder den Intervallen 5110 umfassen.
Die Anzahl der in einem Schlitz 5092 enthaltenen Intervalle 5110 und
Sub-Intervalle 5115 hängt von
dem Inhalt der MAP-PDU 5113 ab, die den Schlitz 5092 definiert. Die
Dauer jedes Intervalls 5110 und Sub-Intervalls 5115 kann
nach Wunsch festgelegt werden. Wahlweise entspricht jedes Sub-Intervall 5115 in
etwa einem Medienzugriffssteuer-(MAC-/Media
Access Control)Taktsteuerungsintervall. Jede MAP-PDU 5113 definiert
einen Frame und jeder Frame definiert eine Mehrzahl an Schlitzen 5092.
-
Der
Anfang eines jeden Sub-Intervalls 5115 ist zeitlich mit
dem Anfang jedes Intervalls 5110 ausgerichtet und jedes
Intervall 5110 enthält
typischerweise eine ganze Zahl an Sub-Intervallen 5115.
-
Typischerweise
umfasst der Anfragekonkurrenzbereich 5112 und jede CM-Sendegelegenheit 5114 eine
Mehrzahl ganzzahliger Intervalle 5110. Der Anfragekonkurrenzbereich 5112 und/oder
die CM-Sendegelegenheit 5114 können jedoch alternativ eine
beliebige gewünschte
Kombination aus Intervallen 5110 und Sub-Intervallen 5115 umfassen.
Somit kann jeder Anfragekonkurrenzbereich 5112 von einer
Mehrzahl der CMs 5046 dazu verwendet werden, eine oder
mehrere Zeitschlitzzuweisungen zu beantragen, die die Übertragung
eines oder mehrere Pakete während
der den CMs 5046 anschließend zugewiesenen Sendegelegenheit 5114 ermöglichen.
-
Jedes
Datenpaket kann nur Daten enthalten, obgleich ein erweitertes Datenpaket
so definiert werden kann, dass es sowohl Daten als auch eine Präambel umfasst.
Die Präambel
wird typischerweise vom CMTS 5042 von einem erweiterten
Paket entfernt und die Daten im Paket dann von einer Zentraleinheit
(CPU) des CMTS 5042 verarbeitet.
-
Die
Dauer des Anfragekonkurrenzbereichs 5112 ist typischerweise
variabel, so dass sie so bemessen werden kann, dass die Anzahl an
CMs 5046 aufgenommen werden kann, von denen erwartet wird,
dass sie Zeitschlitzzuweisungen vom CMTS 5042 beantragen
werden. Die Dauer des Anfragekonkurrenzbereichs 5112 kann
daher durch die Anzahl der von den CMs gesendeten Anfragen basierend
auf früheren
Erfahrungen bestimmt werden.
-
Die
durch die CM-Sendegelegenheiten 5114 definierten Zeitschlitzzuweisungen 92 können wahlweise,
zumindest zum Teil, basierend auf vom CMTS 5042 für unterschiedliche
CMs 5046 festgelegten Prioritäten definiert werden. Prioritäten können beispielsweise
für einzelne
CMs 5046 basierend auf einer von den Teilnehmern getroffenen
Wahl festgelegt werden, die typischerweise abhängig von der Art des gewünschten Dienstes
(Service) ist. Somit kann sich ein Teilnehmer entweder für einen
vorrangigen Dienst (hoher Priorität) oder einen normalen Dienst
(niedriger Priorität)
entscheiden.
-
Alternativ
können
Prioritäten
vom CMTS 5042 für
die CMs basierend auf der Größe und Anzahl
der CM-Sendegelegenheiten 5114 festgelegt werden, die in
der Vergangenheit von den Teilnehmern angefordert wurden. Somit
kann ein CM, das typischerweise eine große Anzahl an Zeitintervallen 5110 benötigt, als
Benutzer hoher Priorität
definiert werden, wobei die gegebene Priorität bei der Zuweisung von Zeitschlitzen
innerhalb einer CM-Sendegelegenheit 5114 auf der Annahme
basiert, dass eine solche umfangreiche Nutzung auf einen anhaltenden
Bedarf einer solchen Priorität
hinweist, d.h. darauf hinweist, dass der Teilnehmer Kabelfernsehen,
Pay-per-View-Fernsehen
oder dergleichen nutzt.
-
Alternativ
kann das CMTS solche Prioritäten
basierend auf der Art des jedem CM zur Verfügung gestellten Dienstes zuweisen.
Somit kann beispielsweise, wenn Kabelfernsehen oder Pay-per-View-Fernsehen einem
CM zur Verfügung
gestellt wird, die Priorität
dieses CM erhöht
werden, um ein ununterbrochenes Fernsehen sicherzustellen.
-
Die
jedem CM 5046 zugeordnete Priorität kann sowohl die Größe der ihm
zugewiesenen Zeitschlitze als auch die Reihenfolge, in der solche
Zuweisungen durchgeführt
werden, bestimmen. Es ist wahrscheinlicher, dass die Zuweisungen,
die früher
im Zuweisungsverfahren durchgeführt
wurden, vollständig
gefüllt
werden als die Zuweisungen, die später im Zuweisungsverfahren
durchgeführt
werden. Tatsächlich
können
später im
Zuweisungsverfahren durchgeführte
Zuweisungen ungefüllt
bleiben, wenn die Bandbreite des Kanals nicht ausreicht, um die
Zuweisung von Zeitschlitzen für
alle anfragenden CMs 5046 zu ermöglichen.
-
Zeitschlitze,
die den Erhaltungsbereich 51116 definieren, werden wahlweise
in einem MAP 113 bereitgestellt. Solche Erhaltungsbereiche 5116 können beispielsweise
dazu verwendet werden, die Synchronisierung der Taktgeber der CMs
mit dem Taktgeber des CMTS zu ermöglichen. Eine solche Synchronisierung
ist notwendig, um sicherzustellen, dass jedes CM 5046 nur
innerhalb seiner zugewiesenen Zeitschlitze sendet, die durch die
Sendegelegenheit 5114 eines jeden CM definiert sind.
-
Der
Anfragekonkurrenzbereich 5112, die CM-Sendegelegenheit 5114 und
der Erhaltungsbereich 5116 beginnen typischerweise am Anfang
eines Intervalls 110 und enden am Ende eines Intervalls 110.
Jeder Anfragekonkurrenzbereich 5112, jede CM-Sendegelegenheit 5114 und
jeder Erhaltungsbereich 5116 kann jedoch an einer beliebigen
gewünschten
Stelle beginnen und enden. Somit werden Anfragekonkurrenzbereiche 5112,
CM-Sendegeienheiten 5114 und Erhaltungsbereiche 5116 variabler
Dauer bereitgestellt. Solche Anfragekonkurrenzbereiche 5112,
Sendegelegenheiten 5114 und Erhaltungsbereiche 5116 variabler
Dauer ermöglichen
einen flexiblen Betrieb des CM-Systems und steigern die Effizienz
der Datenübertragungen
des CM-Systems, indem sie häufig
die verschwendete Kanalkapazität
vermindern.
-
Das
aktuelle MAP 5170 wird nach der Übertragung eines früheren MAP 5090 und
vor einem späteren MAP 5091 im
Downstream-Kanal 5111 gesendet. Daten, wie etwa Datenpakete,
die Webseiten, e-mails, Kabelfernsehen, Par-per-View-Fernsehen,
digitaler Telefonie, etc. zugeordnet sind, werden zwischen benachbarten
MAPs 5090, 5170, 5091 gesendet.
-
Der
Inhalt einer jeden CM-Sendegelegenheit 5114 kann wahlweise
Daten und eine Präambel
umfassen. Die Daten umfassen zumindest einen Abschnitt des Datenpakets,
für das
eine Sendeanfrage an das CMTS 5042 gesendet wurde. Die
Präambel
enthält
typischerweise Informationen, die die Kennung des CM 5046 darstellen,
von dem die Daten gesendet wurden, sowie beliebige andere gewünschte Informationen.
-
Die
Daten und die Präambel
müssen
nicht das volle Zeitintervall der Kabelsendegelegenheit 5114 in Anspruch
nehmen. Schutzbänder
werden wahlweise am Anfang und am Ende jedes Schlitzes bereitgestellt, um
die Genauigkeit zu verringern, mit der die Zeitsynchronisierung
zwischen dem CMTS und jedem CM durchgeführt werden muss. Somit wird
durch Bereitstellen solcher Schutzbänder ein gewisser Spielraum
in der Sendezeit vorgesehen, während
der jedes CM sein Datenpaket in den Upstream-Kanal 5119 einsetzt.
-
Bezug
nehmend nun auf die 7 und 8 ist die
Konstruktion eines Frames dargestellt. Wie im Block 5143 gezeigt,
werden von den CMs 5046 in einem Anfragekonkurrenzbereich 5112 eines
ersten MAP Anfragen zur Bewilligung oder Zuweisung von Informationselementen
(IE) durch das CMTS an die Teilnehmer gestellt. Ein Informationselement
kann als Bereich betrachtet werden. Eine Erhaltungsgelegenheit wird
wahlweise bereitgestellt, wie in Block 5144 gezeigt. Solche
Erhaltungsgelegenheiten können
beispielsweise dazu verwendet werden, den Betrieb des CM 5046 mit
dem Betrieb des CMTS 1042 zu synchronisieren. Wie vorstehend
angegeben, kann diese Erhaltungsgelegenheit nur periodisch bereitgestellt
werden.
-
In
Block 5146 wird dann bestimmt, ob die Anfragewarteschlange
hoher Priorität
leer ist. Wenn die Antwort bezüglich
der Anfragewarteschlange hoher Priorität "nein" ist,
wird in Block 5148 bestimmt, ob die Frame-Länge kleiner
als eine gewünschte
Länge ist.
Wenn die Antwort "ja" ist, wird die Anfrage
des Teilnehmers, Daten zu senden, bewilligt und die Frame-Länge in Block 5150 um
die Größe der angeforderten
Daten inkrementiert.
-
Wenn
die Anfragewarteschlange hoher Priorität leer ist, wird in Block 5152 bestimmt,
ob die Anfragewarteschlange niedriger Priorität leer ist. Wenn die Antwort "nein" ist, wird in Block 5154 bestimmt,
ob die Frame-Länge
kleiner als die gewünschte
Länge ist.
Wenn die Antwort bezüglich
der Anfragewarteschlange niedriger Priorität "ja" ist,
wird die Anfrage des CM 5046, Daten zu senden, an das CMTS 5042 bewilligt
und die Frame-Länge
um die Größe der Bewilligung
inkrementiert. Dies ist in Block 5156 angegeben.
-
Es
kann manchmal vorkommen, dass die Frame-Länge zumindest gleich lang wie
die gewünschte Länge ist,
wenn die Anfrage bezüglich
der Anfragewarteschlange hoher Priorität in den Block 5148 eingebracht wird.
Unter solchen Umständen
wird die Anfrage nicht bewilligt und es wird dann bestimmt, ob die
Anfragewarteschlange niedriger Priorität leer ist. Ebenso wird, wenn
die Frame-Länge
größer als
die gewünschte
Frame-Länge
ist, wenn eine Anfrage bezüglich
der Anfragewarteschlange niedriger Priorität gestellt wird, die Anfrage
nicht bewilligt. Demgemäß wird auf
der Leitung 5157 eine Angabe bereitgestellt, wenn die Anfragewarteschlange
hoher Priorität
und die Anfragewarteschlange niedriger Priorität beide leer sind oder wenn
die Frame-Länge
zumindest so groß wie
die gewünschte
Länge ist.
-
Wenn
bei der erwarteten Bewilligung einer Anfrage die Anfragewarteschlange
hoher Priorität
und die Anfragewarteschlange niedriger Priorität beide leer sind oder wenn
die Frame-Länge
mindestens so groß wie die
gewünschte
Länge ist,
wird, wie in Block 5158 (10), bestimmt,
ob die Anfragewarteschlangen leer sind. Dies stellt eine zusätzliche Überprüfung dar,
um sicherzustellen, dass die Warteschlangen leer sind. Wenn die Antwort
auf eine solche Bestimmung "nein" ist, gibt dies an,
dass bei der erwarteten Bewilligung einer Anfrage die Frame-Länge größer als
die gewünschte
Frame-Länge
ist. Unter solchen Umständen
wird eine Bewilligung mit einer Länge von null im MAP 5170 für jede Anfrage
in jeder Warteschlange bereitgestellt. Diese Null-Längen-Bewilligung
wird bereitgestellt, so dass die Kopfstelle den Teilnehmer benachrichtigen
kann, dass die Anfrage zwar nicht bewilligt, aber von der Kopfstelle
empfangen wurde. Tatsächlich
stellt eine Null-Längen-Bewilligung
einen Aufschub dar. Die Anfrage wurde bemerkt, d.h. ist nicht kollidiert,
aber noch nicht bewilligt. Sie wird in einem späteren MAP 5091 bewilligt.
-
Wenn
in Block 5158 bestimmt wird, dass die Anfragewarteschlangen
leer sind, wird in Block 5162 bestimmt, ob die Frame-Länge kleiner
als die gewünschte
Frame-Länge ist.
Wenn die Antwort "ja" ist, wird der Frame
mit Daten aus einem Konkurrenzdatenbereich 5168 im Frame
auf die gewünschte
Länge aufgefüllt, wie in
Block 5164 angegeben. Der Konkurrenzdatenbereich 5168 stellt
einen Bereich reduzierter Priorität im Frame dar. Er sorgt für die Übertragung
von Daten von den CMs 5046 zum CMTS 5042 über verfügbare Schlitze im
Frame, sofern den CMs nicht vorher vom CMTS 5042 Schlitze
zugewiesen worden sind. Der Konkurrenzdatenbereich benötigt keine
Bewilligung vom CMTS 5042 auf eine Anfrage von einem CM 5046 wie
beim Anfragekonkurrenzdatenbereich 5112 in 6.
Da keine Bewilligung vom CMTS 5042 nötig ist, stellt der Konkurrenzdatenbereich 5168 in 10 (nachfolgend
genauer beschrieben) einen schnelleren Zugriff auf Daten für die Teilnehmer
bereit als der Anfragekonkurrenzbereich 5112.
-
Verfügbare Schlitze
in einem Frame sind diejenigen, die nicht basierend auf Anfragen
von den CMs 5046 zugewiesen worden sind. Wie in Block 5166 in 8 angegeben,
bestätigt
das CMTS 5042 dem CM 1046, dass das CMTS 1042 Daten
vom Konkurrenzdatenbereich im Frame empfangen hat. Das CMTS 1042 stellt
diese Bestätigung
bereit, da das CM 5046 ansonsten nicht wissen würde, dass
solche Daten nicht an einer Datenkollision beteiligt waren und tatsächlich vom
Konkurrenzdatenbereich 5168 empfangen worden sind.
-
Bezug
nehmend nun auf die 9 und 10 ist
ein Blockdiagramm des Abschnitts des CMTS 5042 gezeigt,
der Anfragen von den CMs 5046 empfängt und in Antwort auf diese
Anfragen MAPs erzeugt. Der Konkurrenzdatenbereich 5168 in 10 ist
im Frame 5118 enthalten, der durch ein MAP 5111 definiert
wird (6). Der Frame 5118 in 10 kann
mehrere andere Bereiche umfassen. Ein Bereich ist unter 5172 angegeben
und in 6 als Konkurrenzanfragebereich 5112 bezeichnet.
Er umfasst Schlitze die mit X 5181 bezeichnet sind. In
diesen Schlitzen X 5181 sind Kollisionen zwischen Anfragedaten
von unterschiedlichen CMs 5046 aufgetreten. Andere Schlitze
im Konkurrenzanfragebereich 5172 sind mit R 5183 bezeichnet.
Gültige nicht
kollidierte Anfragedaten sind in diesen Schlitzen vorhanden. Der
Konkurrenzanfragebereich 5172 umfasst zur Veranschaulichung
auch einen leeren Schlitz 5175. Keiner der Teilnehmer 14 hat
in diesem leeren Schlitz 5175 eine Anfrage gestellt.
-
Ein
CM-Sendegelegenheitsbereich 5176 (entsprechend dem CM-Sendegelegenheitsbereich 5114 in 6)
kann benachbart zum Konkurrenzanfragebereich 5172 ebenfalls
im Frame 5118 bereitgestellt werden. Wie vorstehend angegeben,
werden einzelnen CMs 5046 in diesem Bereich für Daten
gemäß ihren
Anfragen und gemäß den diesen
Anfragen vom CMTS 5042 zugeordneten Prioritäten Schlitze
zugewiesen. Wahlweise kann der CM-Sendegelegenheitsbreich 5176 so
betrachtet werden, dass er zwei Teilbereiche umfasst. In dem Teilbereich 5178 werden
Schlitze für
einzelne Teilnehmer basierend auf Anfragen höherer Priorität angegeben. In
dem Bereich 180 werden Schlitze für einzelne Teilnehmer basierend
auf Anfragen niedriger Priorität
angegeben.
-
Der
Frame 5118 kann wahlweise außerdem einen Erhaltungsbereich 5182 umfassen.
Dieser entspricht dem Erhaltungsbereich 116 aus 6.
Wie vorstehend beschrieben, sorgt der Bereich 5182 für eine zeitliche
Koordinierung der Taktsignale des CMTS 1042 und der CMs 5046.
Der Frame 5118 kann außerdem wahlweise
einen Bereich 5184 im Konkurrenzdatenbereich 5168 umfassen,
in dem eine Kollision aufgetreten ist. Gültige Daten werden in einem
Bereich 186 im Frame bereitgestellt, in dem keine Kollision aufgetreten
ist. Ein freier oder leerer Bereich 5188 kann am Ende des
Konkurrenzdatenbereichs 5186 vorhanden sein, in den weitere
Daten eingesetzt werden können,
die potenziellen Kollisionen ausgesetzt sind. Es versteht sich,
dass die unterschiedlichen Bereiche im Frame 5118 und die
Reihenfolge dieser unterschiedlichen Bereiche rein veranschaulichender
Natur sind und dass andere Bereiche und andere Reihenfolgen der
Bereiche alternativ bereitgestellt werden können.
-
Die
Signale der Frames 5118 von unterschiedlichen CMs 1046a, 1046b, 1046c, 1046d,
etc. (10) werden in die Upstream-Datenverarbeitung über eine
gemeinsame Leitung 5191 (9 und 10)
in einen TDMA-Demultiplexer 5192 (9) im CMTS 1042 eingebracht.
Nach dem Demultiplexen werden Daten von den CMs 1046a, 1046b, 1046c, 1046d,
etc. vom Demultiplexer 5192 an eine Datenschnittstelle 5194 weitergeleitet.
Die an der Datenschnittstelle 5194 befindlichen Signale
werden in einem Ethernet-System (nicht gezeigt) oder dergleichen
verarbeitet. Der Betrieb des MAP-Generators 5198 wird durch
Datenanfragen von den einzelnen CMs 1046a, 1046b, 1046c, 1046d,
etc. und durch Kollisionsinformationen gesteuert, die die Versuche
der CMs 1046a, 1046b, 1046c, 1046d,
etc. angeben, Daten in den Konkurrenzdatenbereich 168 einzufügen. Somit
kann beispielsweise eine große
Anzahl an Kollisionen einen Bedarf an einem größeren Konkurrenzanfragebereich 5172 im
nächsten
MAP angeben. Versuche, Daten in den Konkurrenzdatenbereich 5168 einzufügen, können wahlweise
vom MAP-Generator 5198 dazu verwendet werden, die Priorität eines
CM zu erhöhen,
das ohne Erfolg versucht, solche Daten zu senden. Die vom MAP-Generator 5198 erzeugten
MAPs werden durch den Multiplexer 5196 geleitet und vom
CMTS 5042 an die CMs 1046a, 1046b, 1046c, 1046d gesendet.
-
Ein
vom MAP-Generator 5198 erzeugtes Abtast-MAP ist in 9 allgemein
unter 5202 angegeben. Das MAP 5202 umfasst einen
Bereich 5204, in dem die Anfragen der CMs 5046 nach
Informationselementen (IE) angegeben sind, in denen Daten gesendet
werden sollen. Wie vorstehend erwähnt, kann ein Informationselement
(IE) als Bereich betrachtet werden. Das MAP 5202 umfasst
außerdem
einen Bereich 5206, in dem das CMTS 5046 die Anfragen
der Teilnehmer nach Informationselementen zum Senden von Daten bewilligt hat.
Das MAP 5202 umfasst außerdem einen Konkurrenzdatenbereich 5208,
in dem das CMTS 5042 den CMs 5046 Gelegenheit
gegeben hat, Daten in verfügbaren
Räumen
oder Schlitzen zu senden, ohne die offenen Räume oder Schlitze zu spezifizieren,
in denen eine solche Übertragung
stattfinden soll. Ein Bestätigungsbereich
(ACK) 5210 ist ebenfalls im MAP 5202 enthalten.
In diesem Bereich bestätigt
das CMTS 5042 dem CM 5046, dass es in den verfügbaren Schlitzen
im Konkurrenzdatenbereich 208 Daten von den Teilnehmern
empfangen hat. Wie vorstehend besprochen, muss das CMTS 5042 eine
solche Bestätigung
bereitstellen, da die CMs 5046 ansonsten nicht wissen,
dass das CMTS 1042 die Daten von den CMs 5046 im
Konkurrenzdatenbereich 5208 empfangen hat.
-
Die 11 und 12 definieren
ein Flussdiagramm, das allgemein mit 5600 bezeichnet ist,
in Blockform und zeigen, wie das CM 1046 und das CMTS 1042 bei
vom CM 5046 an das CMTS 5042 gesendeten Paketen
zusammenarbeiten. Der Betrieb der Blöcke im Flussdiagramm 600 wird
mit einem Startblock 5602 initiiert. Wie im Block 5604 in 11 angegeben,
wartet das CM 5046 dann auf ein Paket von einer externen Quelle.
Die externe Quelle kann beispielsweise ein Personal-Computer (PC) 5048 oder
eine bitratenabgetastete Datenübertragungseinrichtung 1047a, 1047b (5)
im Haushalt 1014 eines Teilnehmers sein. Wie im Block 5606 gezeigt, übermittelt
das CM 5046 dem CMTS 5042 dann eine Bandbreitenanfrage
nach genügend Zeitschlitzen,
um das Paket zu senden. Bei Empfang der Anfrage sendet das CMTS
eine Bewilligung oder Teilbewilligung an das CM im MAP. Das CM 5046 führt dann
im Block 5610 eine Überprüfung durch,
um zu bestimmen, ob das CMTS 5042 die Anfrage oder einen
Teil der Anfrage vom CM 5046 bewilligt hat. Im Block 5610 ist
SID eine Abkürzung
für Service-Identifizierung
(Service-Kennung), z.B. eine einer bitratenabgetasteten Datenübertragungseinrichtung 5047a zugewiesene
SID. Wenn die Antwort "ja" ist (siehe Leitung 5611 in 11 und 12)
bestimmt das CM 5046, ob das CMTS 5042 die volle
Anfrage vom CM 5046 nach der Bandbreite bewilligt hat.
Dies entspricht der Übertragung
des kompletten Datenpakets vom CM 5046 an das CMTS 5042.
Dies ist in 12 in Block 5612 angegeben.
-
Wenn
die Antwort "ja" lautet, wie in Block 5614 in 12 angegeben,
bestimmt das CM 5046, ob sich ein weitere Paket in einer
Warteschlange befindet, die bereitgestellt ist, um weiteres Pakete
zu speichern, die auf eine Übertragung
vom CM 5046 an das CMTS 5042 warten. Diese Bestimmung
wird in Block 5616 in 11 durchgeführt. Wenn
sich keine weiteren Pakete in der Warteschlange befinden, wie durch
die Leitung 5617 in den 11 und 12 angezeigt,
sendet das CM 5046 das Paket ohne Huckepack-Anfrage an
das CMTS 5042 (siehe Block 5618 in 11)
und wartet auf die Ankunft des nächsten
Pakets von der externen Quelle, wie in 5604 angegeben.
Wenn sich weitere Pakete in der Warteschlange befinden, wie durch
die Leitung 5619 in den 11 und 12 angezeigt,
sendet das CM 5046 das von der externen Quelle empfangene Paket
an das CMTS 5042 und führt
mit diesem gesendeten Paket huckepack eine Anfrage für das nächste Paket
in der Warteschlange mit. Dies ist in 13 unter 5620 angegeben.
Das CM kehrt dann zur Verarbeitung von MAPs in 5608 zurück und hält nach
weiteren Bewilligungen Ausschau. Das CMTS 5042 verarbeitet
dann die nächste
Anfrage vom CM.
-
Das
CMTS 5042 kann im ersten MAP 111 nicht die volle
Anfrage nach Bandbreite vom CM 5046 bewilligen. Das CMTS 1042 führt dann
dem CM 1046 diese Teilbewilligung zu. Wenn das CMTS in
einer Mehrfach-Bewilligungsbetriebsart arbeitet, platzierte es,
zusätzlich
zu der Teilbewilligung, die es an das CM sendet, eine anstehende
Bewilligung oder eine weitere Bewilligung im MAP. Das CM verarbeitet
die MAPs wie in 5608 gezeigt und bemerkt die Bewilligung
bei 5611. Die Bewilligung ist kleiner als die Anfrage,
wie bei 5622, daher berechnet das CM den Anteil des Pakets,
der in die Bewilligung passt, wie in 5624. Bei einer Mehrfach-Bewilligungsbetriebsart
des CMTS bemerkt das CM die Teilbewilligung mit einer weiteren Bewilligung
oder anstehenden Bewilligung in nachfolgenden MAPs, wie bei 5610 und 5611.
Das CM sendet dann das Fragment, ohne jedwede Huckepack-Anfragen,
wie in 5628 und 5630, an das CMTS 5042.
Das CM kehrt zur Verarbeitung von MAP-Informationselementen in 5608 zurück, bis
es die nächste
Bewilligung erhält.
Das CM wiederholt dann das Überprüfungsverfahren,
um festzustellen, ob die Bewilligung groß genug ist, wie in 5612.
Wenn die nächste
Bewilligung nicht groß genug
ist, wiederholt das CM das Verfahren zum Fragmentieren der restlichen
Paketdaten und führt,
wie in 5626, eine Überprüfung durch,
um festzustellen, ob es basierend auf weiteren Bewilligungen oder
anstehenden Bewilligungen im MAP eine Huckepack-Anfrage senden muss.
Wenn die Bewilligung groß genug
ist, um den Rest des Pakets zu senden, wie bei 5614, führt das
CM eine Überprüfung durch, um
festzustellen, ob sich für
dieselbe SID ein weiteres Paket in der Warteschlange befindet. Wenn
dies der Fall ist, sendet das CM den restlichen Teil des Pakets
mit dem Fragmentierungs-Header, der eine Huckepack-Anfrage nach
der Menge an Zeitschlitzen enthält,
die zum Senden des nächsten
Pakets in der Warteschlange benötigt
wird, wie bei der Leitung 5620. Das CM kehrt dann zur Verarbeitung
der MAP-Informationselemente zurück.
Wenn sich für
diese SID kein weiteres Paket in der Warteschlange befindet, sendet
das CM den restlichen Teil des Pakets mit einem Fragmentierungs-Header,
der keine Huckepack-Anfrage enthält,
wie in 5618 gezeigt. Das CM kehrt dann zu 5604 zurück, um auf
die Ankunft eines weiteren zu sendenden Pakets zu warten. Wenn das
CMTS 5042 die Anfrage vom CM 5046 im ersten MAP
11 teilweise bewilligt und dem CM 5046 keine weitere Bewilligung
oder anstehende Bewilligung in dem ersten MAP zuführt, erfasst
das CM keine weiteren Bewilligungen oder anstehenden Bewilligungen,
wie bei 5632. Das CM 5046 sendet dann ein Fragment
des Datenpakets und eine Huckepack-Anfrage für den Rest an das CMTS 5042,
wie in 5634. Wenn das CM das Fragment mit der Huckepack-Anfrage gesendet
hat, wie auf der Leitung 5638 dargestellt, kehrt das CM
zur Verarbeitung von MAP-Informationselementen zurück, wie
in 5608, während
es auf weitere Bewilligungen wartet. Wenn das CMTS das Fragment
mit der Huckepack-Anfrage
empfängt,
muss das CMTS entscheiden, ob die neue Anfrage bewilligt oder eine
auf der neuen Anfrage basierende Teilbewilligung gesendet werden
soll. Diese Entscheidung basiert auf den im CMTS implementierten
Scheduling-Algorithmen (Zeitplanungsalgorithmen).
-
Das
CMTS könnte
zu jeder Zeit während
des Anfrage-/Bewilligungsverfahrens eine Anfrage nicht empfangen
oder das CM konnte aus einer Vielzahl von Gründen eine Bewilligung nicht
empfangen. Als Betriebssicherungsmechanismus setzt das CMTS eine
Bestätigungszeitangabe,
oder ACK-Zeitangabe (acknowledgement time), in die von ihm gesendeten
MAPs ein. Diese ACK-Zeitangabe gibt den Zeitpunkt der letzten Anfrage
wieder, die es für
das aktuelle MAP verarbeitet hat. Das CM verwendet diese ACK-Zeitangabe,
um zu bestimmen, ob seine Anfrage verloren gegangen ist. Der ACK-Zeitgeber
wird als "abgelaufen" eingestuft, wenn
das CM auf eine Bewilligung wartet und ein MAP mit einer ACK-Zeitangabe
empfängt,
die später
als der Zeitpunkt ist, zu dem das CM seine Anfrage gesendet hat.
Da das CM in 5610 nach Bewilligungen Ausschau hält, kehrt
das CM, sofern der ACK-Zeitgeber nicht abge laufen ist, wie bei 5644,
zur Verarbeitung der MAPs zurück,
wie in 5608. Wenn der ACK-Zeitgeber abläuft, wie bei 55646,
führt das
CM in 5648 eine Überprüfung durch,
um festzustellen, wie viele Male es erneut versucht hat, die Anfrage
zu senden. Wenn die Anzahl der erneuten Versuche über einem
bestimmten Schwellenwert liegt, sind die erneuten Versuche erschöpft, wie
bei 5654, und das CM verwirft sämtliche nicht gesendeten Teile
des Pakets in 5656 und wartet auf die Ankunft des nächsten Pakets.
Wenn der ACK-Zeitgeber abgelaufen ist und die Anzahl der erneuten
Versuche nicht erschöpft
ist, wie bei 5650, verwendet das CM einen Konkurrenzanfragebereich,
um eine weitere Anfrage nach der Menge an Zeitschlitzen zu senden,
die zum Senden des nicht gesendeten Teils des Pakets erforderlich
ist, wie in 5652. Das CM kehrt dann zur Verarbeitung der
MAPs zurück.
-
Bezug
nehmend auf 13 umfasst das CMTS 5042 eine
Kristalloszillator-Taktsteuerungsreferenz 5016, die einer
Kopfstellen-Taktssynchronisierschaltung 5018 einen Ausgang
zuführt.
Dies ist die Taktsteuerungsreferenz 5016, mit der jedes
der CMs 5046 synchronisiert werden muss. Die Kopfstellen-Taktsynchronisierschaltung
empfängt
außerdem
einen Eingang von der Netzwerktaktreferenz 6003, die nachfolgend
genauer besprochen ist. Die Kopfstellen-Taktsynchronisierschaltung 5018 wird
um den Ausgang der Kristalloszillator-Taktsteuerungsreferenz 16 inkrementiert
und erhält
eine Zählung
aufrecht, die die Anzahl der Zyklen repräsentiert, die von der Kristalloszillator-Taktsteuerungsreferenz 5016 bereitgestellt
wurden, seit dem die Kopfstellen-Taktssynchronisierschaltung 5018 zum
letzten Mal zurückgesetzt
wurde. Die Kopfstellen-Taktssynchronisierschaltung 5018 umfasst
einen frei laufenden Zähler
mit ausreichender Zählkapazität, um mehrere
Minuten lang zählen
zu können,
bevor er zurückgesetzt
wird.
-
Ein
Zeitbasisnachrichtengenerator 20 empfängt die Zählung von der Kopfstellen-Taktssynchronisierschaltung 5018,
um eine absolute Zeitreferenz 5021 bereitzustellen, die
in den Downstream-Informationsfluss 5022 eingesetzt wird,
der durch eine Downstream-Datenwarteschlange 5024 bereitgestellt
wird, wie nachfolgend genauer besprochen. Der Zeitbasisnachrichtengenerator 520 bevorzugt
eine Modulfunktion (d.h. ein Sägezahnmuster
als Funktion der Zeit) und der Zählertakt
wird vom Oszillator mit größter Genauigkeit
erzeugt.
-
Der
Taktsteuerungsversatzgenerator 5026 empfängt eine
Bereichssignalnachricht 5027 von jedem einzelnen CM 1046,
mit dem das CMTS in Verbindung steht. Der Schlitztaktsteuerungsversatzgenerator 26 stellt
einen Schlitztaktsteuerungsversatz 5028 bereit, der einen
Schlitztaktsteuerungsversatz zwischen dem CMTS 5042 und dem
CM 5046 darstellt, und fügt den Schlitztaktsteuerungsversatz 5028 in
den Downstream-Informationsfluss 5022 ein. Der Schlitztaktsteuerungsversatz 5028 wird
durch Bestimmen der Position des Schlitztaktsteuerungsversatzes
anhand der erwarteten Zeit 5027 in einem spezifischen Taktsteuerungsschlitz
der Upstream-Datenübertragungen
berechnet, wie nachfolgend genauer besprochen. Der Taktsteuerungsversatzgenerator 5026 codiert
den Taktsteuerungsversatz (Bereichsfehler), der vom Upstream-Empfänger ermittelt
wurde, in eine Schlitztaktsteuerungsversatznachricht. Die Schlitztaktsteuerungsversatznachrichten
werden erst gesendet, nachdem die Frequenz des lokalen Referenztaktgebers
vom CM erfasst worden ist.
-
Der
Downstream-Modulator 5030 moduliert hauptsächlich den
Downstream-Informationsfluss 5022. Absolute Zeitreferenzen 5021 werden
in quasi-periodischen Intervallen eingesetzt, die von einem Zeitstempel-Sendezähler bestimmt
werden. Eine Schlitztaktsteuerungsversatznachricht 5028 wird
nach dem Messen des Schlitztaktsteuerungsfehlers bei der Ankunft
einer Bereichssignalnachricht 5027 eingefügt.
-
Die
Zeitlinie 5032 des CMTS 5042 zeigt, dass der Schlitztaktsteuerungsversatz 5028 die
Differenz zwischen der erwarteten Empfangszeit und der tatsächlichen
Empfangszeit der Schlitztaktsteuerungsversatznachricht 5027 ist.
-
Jedes
CM 5046 umfasst einen Downstream-Empfänger 5034 zur Ermöglichung
der Demodulation der Daten- und Zeitstempel-Nachricht und der Taktrückgewinnung
von Downstream-Datenübertragungen
vom CMTS 5042. Der Ausgang des Downstream-Empfängers 5034 wird
einem Zeitbasisnachrichtendetektor 36 und einem Schlitztaktsteuerungsversatzdetektor 5038 zugeführt. Die
Downstream-Informationen (jegliche Datenübertragung, wie etwa ein Dateitransfer
oder MPEG-Videosignal), die vom Downstream-Empfänger 5034 empfangen
werden, stehen nach Wunsch ebenfalls zur weiteren Verarbeitung zur
Verfügung.
-
Der
Zeitbasisnachrichtendetektor 5036 erfasst die vom Zeitbasisnachrichtengenerator 5020 des CMTS 5042 erzeugte
Zeitbasisnachricht. Ebenso erfasst der Schlitztaktsteuerungsversatzdetektor 5038 den Schlitztaktsteuerungsversatz 5028,
der vom Schlitztaktsteuerungsversatzgenerator 5026 des
CMTS 5042 erzeugt wurde. Der Zeitbasisnachrichtendetektor 5036 stellt
eine absolute Zeitreferenz 5040 bereit, die die Frequenz
der Kristalloszillator-Taktsteuerungsreferenz 5016 des
CMTS 5042 repräsentiert.
Die absolute Zeitreferenz 5040 wird einer digitalen Verfolgungsschleife 5042 zugeführt, die
einen im Wesentlichen stabilen Taktausgang für das CM 5046 bereitstellt,
der in seiner Frequenz genau der Frequenz der Kristalloszillator-Takt steuerungsreferenz 5016 des
CMTS 5042 entspricht. Somit verwendet die digitale Verfolgungsschleife 5042 die
absolute Zeitreferenz 5050, 5040, die repräsentativ
für die
Frequenz der Kristalloszillator-Taktsteuerungsreferenz 5016 ist,
um ein Oszillatorsteuersignal zu bilden, das einen numerisch gesteuerten
Oszillator (NCO) 5044 auf eine Art und Weise ansteuert,
die genau mit der Frequenz der Kristalloszillator-Taktsteuerungsreferenz 5016 des
CMTS 5042 übereinstimmt,
wie nachfolgend im Detail besprochen.
-
Eine
Differenz zwischen der absoluten Zeitreferenz 5040 und
dem Ausgang einer lokalen Zeitreferenz 5046, die von dem
numerisch gesteuerten Oszillator 5044 abgeleitet wird,
wird durch die Differenzierungsschaltung 5048 gebildet.
Diese Differenz definiert einen Frequenzfehlerwert, der die Differenz
zwischen dem Takt des CM 5046 (der von der lokalen Zeitreferenz 5046 bereitgestellt
wird) und dem Takt des CMTS 5042 (der durch die Kristalloszillator-Taktsteuerungsreferenz 5016 bereitgestellt
wird) darstellt.
-
Dieser
Frequenzfehlerwert wird von einem Mittelwertermittlungs-Schleifenfilter 5050 gefiltert,
wodurch verhindert wird, dass unerwünschte Abweichungen des Frequenzfehlerwerts
den numerisch gesteuerten Oszillator 44 auf eine Art und
Weise beeinträchtigen,
die seine Stabilität
verringern oder bewirken würden,
dass der numerisch gesteuerte Oszillator 5044 mit einer
anderen Frequenz als der gewünschten
arbeitet. Das Schleifenfilter 5050 ist so konfiguriert,
dass es die schnelle Erfassung des Frequenzfehlerwerts auch dann
ermöglicht,
wenn der Frequenzfehlerwert groß ist,
und vergleichsweise große
Frequenzfehlerwerte zurückweist, wenn
die digitale Verfolgungsschleife 5042 konvergiert, d.h.
wenn sich der Ausgang der lokalen Taktsteuerungsreferenz 5046 der
absoluten Zeitreferenz 5040 annähert, wodurch bewirkt wird,
dass sich der Frequenzfehlerwert null nähert.
-
Ein
Anfangs-Schlitztaktsteuerungsversatz 5052 wird vom Summierer 5054 zum
Ausgang der lokalen Zeitreferenz 5046 addiert, um einen
teilweise schlitztaktsteuerungsversatzkorrigierten Ausgang 5056 bereitzustellen.
Der teilweise schlitztaktsteuerungsversatzkorrigierte Ausgang 5056 des
Summierers 5054 wird dann zum Schlitztaktsteuerungsversatz 5058 addiert,
der vom Schlitztaktsteuerungsversatzdetektor 5038 bereitgestellt
wird, um eine schlitztaktsteuerungsversatzkorrigierte und frequenzkorrigierte
Zeitreferenz 60 vorzusehen. Der Taktsteuerungsversatzkorrekturblock
ist ein einfacher Addierer, der zwei Nachrichtenwerte addiert. Ein
solcher vereinfachter Betrieb ist nur möglich, wenn die Auflösung der
Taktsteuerungsversatznachricht gleich der oder feiner als diejenige
der Zeitstempelnachricht ist.
-
Der
Anfangs-Schlitztaktsteuerungsversatz 5052 ist bloß eine Näherungswert
des erwarteten Schlitztaktsteuerungsversatzes, der infolge der Ausbreitungs-
und Verarbeitungsverzögerungen,
deren ungefähre Werte
vordefiniert worden sind, wahrscheinlich auftreten wird. Nach der
Frequenzumwandlung unter Verwendung des Phasenregelkreises und des
Zeitbasisnachrichtenfehlers, stellt der Schlitztaktsteuerungsversatz 58 eine
endgültige
Korrektur bereit, die vom CMTS 5042 in Antwort auf den
Empfang des CMTS 5042 von Datenübertragungen vom CM 5046 berechnet
wird, die nicht ordnungsgemäß in ihren
gewünschten
Taktsteuerungsschlitzen zentriert sind, wie nachfolgend im Detail
besprochen.
-
Ein
Skalierer 5062 skaliert die frequenzkorrigierte Zeitreferenz 5060,
um den Upstream-Sender 5069 mit der gewünschten Schlitztaktsteuerung
anzusteuern.
-
Die
Zeitreferenz 5064 wird mit der genannten Sendezeit 5066 verglichen,
die dem CM 5046 über
die Downstream-Datenübertragung
vom CMTS 5042 zugewiesen wurde. Wenn die Zeitreferenz 5064 (am
Punkt 5067) der genannten Sendezeit entspricht, wird ein
Initiiere-Burst-Befehl 5068 ausgegeben und die Upstream-Datenwarteschlange 5070 moduliert,
um eine Upstream-Datenübertragung 5072 zu
bilden.
-
Die
Taktsteuerungsversatz-(fehler-)nachricht wird vom CMTS erzeugt.
Der Taktsteuerungsversatz(-fehler) ist einfach die Differenz zwischen
erwarteten Zeit und der tatsächlichen
Ankunftszeit der Bereichsnachricht am CMTS-Burst-Empfänger.
-
Immer
noch Bezug nehmend auf 13, kommuniziert das CMTS 5042,
obgleich in 13 aus Gründen der Klarheit nur ein CM 5046 dargestellt
ist, in Wahrheit bidirektional mit einer Mehrzahl solcher CMs 5012. Solche
Kommunikationen, wie hierin besprochen, können tatsächlich zwischen dem CM-System
und der Mehrzahl an CMs auftreten, wenn dieses gleichzeitig mit
den CMs auf einer Mehrzahl separater Frequenzkanäle kommuniziert. Die vorliegende
Erfindung betrifft die Kommunikation einer Mehrzahl unterschiedlicher CMs über einen
einzelnen Frequenzkanal auf serielle Art oder nach Art eines Zeitmultiplexverfahrens,
wobei die Mehrzahl an CMs mit dem CMTS sequenziell kommuniziert.
Es versteht sich jedoch, dass, obgleich diese Mehrzahl an CMs über einen
Kanal mit dem CMTS kommuniziert (unter Verwendung des Zeitmultiplexverfahrens
oder TDMA), viele andere CMs gleichzeitig mit demselben CMTS über eine
Mehrzahl anderer Kanäle kommunizieren
können
(unter Verwendung des Frequenzmultiplex-/Zeitmultiplexverfahrens
oder FDM/TDMA).
-
Bezug
nehmend nun auf 14 werden das CMTS 5042 und
das CM 5046 genauer beschrieben. Der Multiplexer (MUX) 5029 des
CMTS 5042 kombiniert den Downstream-Informationsfluss 5022 mit
dem Schlitztaktsteuerungsversatz 5028 vom Schlitztaktsteuerungsversatzgenerator 5026 und
mit der absoluten Zeitreferenz 5021 vom Zeitbasisnachrichtengenerator 5020,
um dem Downstream-Sender Downstream-Datenübertragungen zuzuführen, welcher
den Downstream-Modulator 5030 (13) umfasst.
Der Schlitztaktsteuerungsversatzgenerator 5026 empfängt ein
Schlitztaktsteuerungsversatzsignal 5028 vom Upstream-Empfänger 5025.
Die Lage des Schlitztaktsteuerungsversatzsignals in einem Taktsteuerungsschlitz
einer Upstream-Datenübertragung
definiert die Notwendigkeit, sofern vorhanden, eine Schlitztaktsteuerungsversatzkorrektur durchzuführen. Im
Allgemeinen wird ein Schlitztaktsteuerungsversatzwert auch dann
gesendet, wenn der tatsächliche
Schlitztaktsteuerungsversatz 0 beträgt. Wenn die sich Schlitztaktsteuerungsversatznachricht
in erwünschter
Weise im Taktsteuerungsversatzschlitz befindet und sich nicht in
die Schutzbänder
erstreckt, die sich an jedem Ende des Taktsteuerungsversatzschlitzes
befinden, dann ist keine Schlitztaktsteuerungsversatzkorrektur erforderlich.
-
Wenn
sich die Schlitztaktsteuerungsversatznachricht jedoch in eines der
Schutzbänder
des Taktsteuerungsversatzschlitzes der Upstream-Datenübertragung
erstreckt, dann wird vom Schlitztaktsteuerungsversatzgenerator 5026 ein
Schlitztaktsteuerungsversatz 5028 erzeugt, der in Downstream-Richtung
an das CM 5046 gesendet wird, wo der Schlitztaktsteuerungsversatz 5028 eine
erwünschte
Korrektur der Zeit bewirkt, zu der Upstream-Datenübertragungen
stattfinden, um so zu bewirken, dass die Schlitztaktsteuerungsversatznachricht
und andere gesendete Daten ordnungsgemäß in ihren Upstream-Datenschlitzen
positioniert werden.
-
Der
Kopfstellen-Tick-Taktgeber 5015 umfasst die Kristallreferenz 5016 gemäß 13 und
führt dem Linearzählsequenzgenerator 5018 ein
Taktsignal zu. Der Schlitz-/Frame-Zeitgeber 5019 verwendet
ein von der Kopfstellen-Taktsynchronisierschaltung 5018 zugeführtes Taktsignal,
um sowohl einen Minischlitztakt 5021 als auch ein Empfange-jetzt-Signal 5023 bereitzustellen.
Der Upstream-Nachrichtentakt 5021 ist der Takt, mit dem die
Nachrichtenschlitze synchronisiert werden, um Zeitmultiplex-(TDMA-)Datenübertragungen
von jedem CM 5046 an das CMTS 5042 durchzuführen. Ein
Sende-jetzt-Signal wird am Anfang eines jeden Minischlitzes einer Übertragung
erzeugt. Ein Empfange-jetzt-Signal wird ebenso am Anfang eines empfangenen
Pakets erzeugt.
-
Ein
Minischlitz ist eine grundlegende Medienzugriffssteuer-(MAC-/Medium
Access Control)Taktsteuerungseinheit, die zur Zuweisung und Bewilligung
von Zeitmultiplex-(TDMA-)Schlitzen
verwendet wird. Jeder Minischlitz kann beispielsweise vom Medienzugriffssteuertakt
abgleitet werden, so dass der Minischlitz bei einer ansteigenden
Flanke des Medienzugriffssteuertakts beginnt und endet. Im Allgemeinen
definiert eine Mehrzahl von Symbolen einen Minischlitz und eine
Mehrzahl von Minischlitzen definiert einen Zeitmultiplexschlitz.
-
Das
CM 5046 empfängt
Downstream-Daten vom Downstream-Kanal 14B. Ein Zeitbasisnachrichtendetektor 5036 ermittelt
das Vorhandensein einer Zeitbasisnachricht 5021 in den
Downstream-Daten.
-
Eine
Schlitztaktsteuerungsversatzkorrektur 5047 wird auf die
Upstream-Datenübertragungen 14A vor der Übertragung
derselben vom Teilnehmer-CM 50046 angewandt. Die Schlitztaktsteuerungsversatzkorrektur ist
bloß die
Differenz zwischen dem tatsächlichen
Schlitztaktsteuerungsversatz und dem gewünschten Schlitztaktsteuerungsversatz.
Daher wird die Schlitztaktsteuerungsversatzkorrektur nur durch Subtrahieren
des tatsächlichen
Schlitztaktsteuerungsversatzes vom gewünschten Versatz erzeugt. Der
Schlitz-/Frame-Taktsteuerungsgenerator 5049 sendet die
Upstream-Datenwarteschlange 70 (13) zur
angegebenen Sendezeit 66 (13).
-
Der
Summierer 48 subtrahiert von der Zeitbasisnachricht 5021 der
lokalen Zeitreferenz 5046 und führt einem Schleifenfilter 5050 einen
Ausgang zu, der einen numerisch gesteuerten Oszillator 5044 ansteuert,
wie nachfolgend genauer besprochen.
-
Der
Upstream-Sender 11 ermöglicht
die Übertragung
von Upstream-Kommunikationen 14A vom Teilnehmer-CM 5046A und
der Upstream-Empfänger
13A ermöglicht
den Empfang der Upstream-Kommunikationen 14A durch das CMTS 5010.
-
Der
Downstream-Sender 17 ermöglicht
die Übertragung
von Downstream-Kommunikationen 14 vom CMTS 5016 an das
CM 5046, wobei der Downstream-Empfänger 5015 deren Empfang
ermöglicht.
-
Bezug
nehmend auf 16 ist eine beispielhafte Taktsteuerungsrückgewinnungsschaltung
eines CM genauer dargestellt. Der Downstream-Demodulator 5095,
der einen Teil des Downstream-Empfängers 5015 aus 14 bildet,
stellt Takt- und Datensignale bereit, die von den Downstream-Datenübertragungen 146 (14)
abgeleitet werden. Die Datensignale umfassen Downstream-Bytes, die
wiederum den Zähl-
oder den Zeitstempel- 5097 und Zeitbasisnachrichten-Header 5081 umfassen,
der vom CMTS 5042 gesendet wird. Schlitztaktsteuerungsversatznachrichten
sind im Downstream-Fluss der Downstream-Daten enthalten.
-
Der
Zeitstempel-Detektor 5080 ermittelt das Vorhandensein eines
Zeitstempel-Headers 5081 unter den
Downstream-Bytes und stellt ein Zeitstempel-angekommen-Signal 5082 bereit,
das als Downstream-Byte-Taktsynchronisiersignal wirkt. Das Zeitstempel-angekommen-Signal 5082 wird
dem Synchronisierer 5083 zugeführt, der ein Register 5101,
ein Register 5102, ein UND-Gate 5103, einen Inverter 5104 und
einen Haltekreis 5105 umfasst. Der Synchronisierer 103 synchronisiert
das Zeitstempel-angekommen-Signal 82 mit dem Takt des CM 5046,
um ein Datenpfadfreigabe-Tick-Taktsynchronsiersignal 5107 bereitzustellen,
um die digitale Verfolgungsschleife 5042 zu aktivieren.
-
Wenn
die digitale Verfolgungsschleife 5042 durch das Datenpfadfreigabe-Tick-Taktsynchronisiersignal 50107 aktiviert
wird, welches vom Synchronisierer 5083 in Antwort auf das
Erfassen eines Zeitstempel-Headers durch den Zeitstempel-Detektor 5080 ausgegeben
wird, wird der Zeitstempel, der eine von der Kopfstellen-Taktsynchronisierschaltung 5018 gemäß 14 bereitgestellte
Zählung
ist, der digitalen Verfolgungsschleife 5042 zugeführt und
die digitale Verfolgungsschleife 5042 aktiviert, um den
Zeitstempel zu verarbeiten.
-
Ein(e)
Differenzierschaltung oder Sättigungsfrequenzdetektor 5109 vergleicht
den Zeitstempel mit einer dem Sättigungsfrequenzdetektor 5109 vom
Zeitbasiszähler 5111 zugeführten Zählung, die
repräsentativ für die Frequenz
des numerisch gesteuerten Oszillators 5044 ist. Der Sättigungsfrequenzdetektor 5109 stellt ein
Differenzsignal oder einen Frequenzfehlerwert 5112 bereit,
der proportional zur Differenz zwischen der Frequenz des numerisch
gesteuerten Oszillators 5044 des CM und der Kristalloszillatorreferenz 5016 des
CMTS ist.
-
Wenn
die Differenz zwischen dem Wert des Zeitstempels und der Zählung des
Zeitbasiszählers 5111 zu
groß ist,
was darauf hinweist, dass der Zeitstempel möglicherweise einen fehlerhaften
Wert bereitstellt, dann sättigt
sich der Sättigungsfrequenzdetektor 5109 und
stellt keinen Ausgang bereit, der repräsentativ für die Differenz zwischen dem
Wert des Zeitstempels und der Zählung
des Zeitbasiszäh lers 5111 ist.
Auf diese Weise werden fehlerhafte Zeitstempel nicht von der digitalen
Verfolgungsschleife 5042 akzeptiert.
-
Die
Schleifenfreigabe des Durchlass-Blocks 5113 ermöglicht es,
die von dem Sättigungsfrequenzdetektor 109 bereitgestellte
Differenz dem Haltekreis 5115 zuzuführen, wenn diesem eine Pauschalfreigabe
(EN) zugeführt
wird. Die Pauschalfreigabe wird dem Null- oder Durchlass-Block 5115 zugeführt, wenn
die digitale Verfolgungsschleife 5042 arbeiten soll.
-
Der
Haltekreis 5115 führt
den Frequenzfehlerwert 5112 einem Schleifenfilter zu, das
die Multplizierer 5117 und 5119, die Skalierer 5121 und 5123,
die Summierer 5124, 5125 und den Haltekreis 5127 umfasst.
-
Die
Multiplizierer 5117 und 5119 umfassen Schieberegister,
die die Multiplikation durch Verschieben einer gewünschten
Anzahl an Bits in jede Richtung durchführen. Die Skalierer 5121 und 5123 arbeiten
in ähnlicher
Weise.
-
Das
Schleifenfilter arbeitet gemäß wohlbekannten
Grundlagen zum Herausfiltern unterwünschter Frequenzfehlerwerte,
so dass diese die Stabilität
oder den Betrieb des numerisch gesteuerten Oszillators 5044 nicht
nachteilig beeinflussen. Somit gleicht das Schleifenfilter häufig unerwünschte Abweichungen
im Frequenzfehlerwertsignal aus, um so ein stabileres Steuersignal
für den
numerisch gesteuerten Oszillator 5044 bereitzustellen.
-
In
die Multiplizierer 5117 und 5119 können unterschiedliche
Koeffizienten geladen werden, so dass die Bandbreite des Schleifenfilters
von einer größeren Bandbreite
während
einer anfänglichen
Erfassung in eine kleinere Bandbreite während des Betriebs abgeändert werden
kann. Die anfänglich
verwendete größere Bandbreite
ermöglicht
eine schnelle Erfassung, indem zugelassen wird, dass Frequenzfehlerwerte
mit größeren Abweichungen
akzeptiert werden. Wenn die digitale Verfolgungsschleife 5042 konvergiert,
wird der Frequenzfehlerwert häufig
kleiner. Zu diesem Zeitpunkt würden
Frequenzfehlerwerte mit größeren Abweichungen
häufig dazu
führen,
dass sich die Stabilität
der digitalen Verfolgungsschleife 5042 verringert, und
sind somit unerwünscht.
Daher werden unterschiedliche Koeffizienten verwendet, die die Bandbreite
des Schleifenfilters verringern, um die Stabilität der digitalen Verfolgungsschleife 5042 aufrechtzuerhalten.
-
Eine
Tabelle, die Beispiele für
grobe und feine Koeffizienten K0 und K1 darstellt, die für mehrere
unterschiedliche Aktualisierungsraten und Bandbreiten geeignet sind,
ist in 16 gezeigt.
-
Der
Ausgang des Schleifenfilters wird dem Haltekreis 5131 zugeführt. Der
Ausgang des Haltekreises 5131 wird vom Summierer 5133 zu
einer Nennfrequenz addiert, um ein Steuersignal für den numerisch
gesteuerten Oszillator 5044 zu definieren.
-
Fachleute
werden erkennen, dass die Addition eines Frequenzversatzes, sofern
dieser ordnungsgemäß auf eine
normale Frequenz programmiert ist, die Erfassungszeit der Schleife
verkürzt.
Dies ist auf die Tatsache zurückzuführen, dass
der Endwert des Akkumulators 5127 näher bei seinem Anfangswert
liegt.
-
Die
Nennfrequenz wird im Allgemeinen so gewählt, dass ihr Wert nahe dem
gewünschten
Ausgang des numerisch gesteuerten Oszillators 5044 liegt.
Daher beträgt,
wenn der numerisch gesteuerte Oszillator 5044 auf der gewünschten
Frequenz arbeitet, der vom Haltekreis 5131 zugeführte gefilterte
Frequenzfehlerwert nominal null.
-
Bezug
nehmend nun auf 17 muss der Schlitztaktsteuerungsversatz
zwischen dem Takt des CM 5046 und dem Takt des CMTS 5042 bestimmt
werden, um sicherzustellen, dass vom CM 1046 gesendete Nachrichten
während
der vom CM-System 5010 zugewiesenen
Zeitschlitze gesendet werden. Wie Fachleute erkennen werden, verbinden
sich Ausbreitungsverzögerungen
(Tgp) 5400 und Verarbeitungsverzögerungen (Tgp) 5402,
um zu bewirken, dass das CM 5046 tatsächlich zu einem späteren Zeitpunkt
sendet, als es vom CMTS 5042 aufgefordert wird, dies zu
tun. Somit muss jedem CM 5046 ein Schlitztaktsteuerungsversatz
zugeführt
werden, um sicherzustellen, dass es zur korrekten Zeit sendet. Dieser
Schlitztaktsteuerungsversatz wird vom CMTS 5042 bestimmt,
indem das CMTS 5042 einen spezifischen Schlitztaktsteuerungsversatzschlitz
in der Upstream-Datenübertragung überwacht,
um darin die Position einer Schlitztaktsteuerungsversatznachricht
zu bestimmen. Die Position der Schlitztaktsteuerungsversatznachricht
in dem spezifischen Schlitztaktsteuerungsversatzschlitz in der Upstream-Datenübertragung
bestimmt den Schlitztaktsteuerungsversatz zwischen dem Takt des
CMTS 5042 und dem Takt des CM 5046. Daher kann
das CMTS 5042 diesen Fehler verwenden, um zu bewirken,
dass das CM 5046 zu einem früheren Zeitpunkt sendet, um
Ausbreitungs- und Verarbeitungsverzögerungen zu kompensieren. Diese
Schlitztaktsteuerungsversatzkorrektur ist gleich 2Tpg + T Prozess.
-
Anfangs
umfasst der Schlitztaktsteuerungsversatzschlitz einen vergleichsweise
großen
Zeitschlitz, d.h. mit vergleichsweise langen Schutzzeiten, um so
vergleichsweise große
Schlitztaktsteuerungsversatzfehler aufzunehmen. Bei einem normalen
Datenpaket kann die Breite des Taktsteuerungsversatzschlitzes verringert
werden, wenn. die Schlitztaktsteuerungsversatzfehler niedriger werden
(und somit kleinere Schutzbänder benötigen),
um effizientere Upstream-Datenübertragungen
zu ermöglichen.
-
Im
Allgemeinen werden Datenübertragungen
unter Verwendung einer vergleichsweise langen Schutzzeit initialisiert.
Nach der Erfassung, wenn die Schlitztaktsteuerungsgenauigkeit erhöht worden
ist, kann die Schutzzeit erheblich reduziert werden, um eine entsprechende
Erhöhung
der Kanalnutzungseffizienz bereitzustellen.
-
Datenpakete
werden schnell erfasst, z.B. in einer Größenordnung von sechzehn Symbolen
oder dergleichen, um eine erhöhte
Effizienz der Bandbreitennutzung zu ermöglichen. Fachleute werden erkennen, dass
es erwünscht
ist, Datenpakete so schnell wie möglich zu erfassen, um die Länge eines
Headers, einer Präambel
oder von anderen keine Informationen mit sich führenden Teilen des Datenpakets,
die ausschließlich für solche
Erfassungen verwendet werden, zu minimieren.
-
Wie
hierin verwendet, wird eine Erfassung so definiert, dass sie an
einem Empfänger
durchgeführte Modifikationen
oder Anpassungen umfasst, so dass der Empfänger den Informationsgehalt
von an ihn gesendeten Datenpaketen richtig interpretieren kann.
Mit der Erfassung eines Datenpakets verbrachte Zeit vermindert die
Zeit, die zum Senden von Informationen im Datenpaket zur Verfügung steht
(aufgrund der endlichen Bandbreite des Kanals) und wird daher als
unerwünscht
betrachtet.
-
Die
Erfassung umfasst die Durchführung
von Feineinstellungen der Parameter, die während der Bereichsverfahren
definiert oder eingestellt werden. Während der Bereichsverfahren
werden die Schlitztaktsteuerung, die Trägerfrequenz und die Gesamtamplitude
(Energie) des Datenpakets bestimmt. Während der Erfassung werden
diese Parameter fein eingestellt, um die fraktionale Symboltaktsteuerung,
die Trägerphasenkorrektur
und die Feinamplitude des Datenpakets aufzunehmen.
-
Ein
Bereichsverfahren wird darüber
hinaus dazu verwendet, die Energie, die Schlitztaktsteuerung und die
Trägerfrequenz
im Upstream-TDMA-Kanal zu steuern. Die Energie muss gesteuert werden,
um am CMTS eine normierte empfangene Energie bereitzustellen, um
die Interkanalinterferenz zu vermindern. Die Trägerfrequenz muss gesteuert
werden, um eine ordnungsgemäße Kanalisierung
in der Frequenzdomäne
sicherzustellen. Die Schlitztaktsteuerung muss gesteuert werden,
um die unerwünschte
Kollision von Datenpaketen in der Zeitdomäne zu vermindern und differentielle
Ausbreitungsverzögerungen
zwischen unterschiedlichen CMs zu berücksichtigen.
-
Bezug
nehmen nun auf 18 umfasst das CMTS 5042 einen
Burst-Empfänger 5292 zum
Empfangen von Datenpaketen im Upstream-Datenfluss, einen kontinuierlichen
Sender 5290 zum Senden an die CMs 5046 über den
Downstream-Datenfluss und eine Medienzugriffssteuerung (MAC) 5060 zum
Bereitstellen einer Schnittstelle zwischen dem Burst-Empfänger 5292,
dem kontinuierlichen Sender 5290 und anderen Kopfstellen-Datenübertragungseinrichtungen,
wie etwa Video-Servern, Satellitenempfängern, Video-Modulatoren, Telefon-Switches
und Internet-Router 5018 (5).
-
Jedes
CM 5046 (5) umfasst einen Burst-Sender 5294 zum
Senden von Daten an das CMTS 5042 über den Upstream-Datenfluss,
einen kontinuierlichen Empfänger 5296 zum
Empfangen von Übertragungen vom
CMTS 5042 über
den Downstream-Datenfluss und eine Medienzugriffssteuerung (MAC) 5090 zum
Bereitstellen einer Schnittstelle zwischen dem Burst-Sender 5294,
dem kontinuierlichen Empfänger 5296 und Teilnehmer-Kommunikationsgeräten, wie
etwa einen PC 5048 (5), ein
Telefon, einen Fernsehapparat, etc.
-
Der
Burst-Empfänger 5292,
die Medienzugriffssteuerung (MAC) 5060 und der kontinuierliche
Sender 5290 des CMTS 5042 sowie der Burst-Sender 5294,
die Medienzugriffssteuerung (MAC) 5090 und der kontinuierliche
Empfänger 296 eines
jeden CM können
jeweils durch einen einzelnen separaten, integrierten Schaltungschip
ausgebildet werden.
-
Bezug
nehmend nun auf 19 ist das CMTS 5042 aus 5 genauer
dargestellt. Das CMTS 5042 ist dafür konfiguriert, Signale von
einer Glasfaser 5079 des HFC-Netzes 5010 (5) über eine
Glasfaser-/Koaxialkabelstufe 5049 zu empfangen und an diese
zu senden, die typischerweise bezogen auf das CMTS 5042 extern
angeordnet ist. Die Glasfaser-/Koaxialkabelstufe 5049 führt dem
5–42 MHz-HF-Eingang
56 über
ein Koaxialkabel 54 einen Ausgang zu und empfängt ebenso ein Signal vom HF-Aufwärtswandler 5078 über das
Koaxialkabel 5052.
-
Der
Ausgang des HF-Eingangs 5056 wird einem Splitter 5057 des
CMTS 5042 zugeführt,
der den 5–42
MHz-HF-Eingang in N separate Kanäle
aufteilt. Jeder der N separaten Kanäle wird einem separaten QPSK/16
QAM-Burst-Empfängerkanal 5058 zugeführt.
-
Jeder
separate QPSK/16 QAM-Burst-Empfängerkanal 5058 steht
in elektrischer Verbindung mit der Kopfstellen-MAC 5060.
Die Kopfstellen-MAC 5060 steht mit einer Backplane-Schnittstelle 5062 in
elektrischer Verbindung, die für
das ROM 5070, das RAM 5068, die CPU 5066 und
die 100BASE-T-Ethernet-Schnittstelle 5064 eine Schnittstelle
bereitstellt. Die Kopfstellen-MAC 5060 führt dem
Downstream-Modulator 5072 einen Takt und einen Datenausgang
zu, welcher dem Verstärker 5076 über ein
SAW-(Surface Acoustic Wave/akustisches Oberflächenwellen-)Filter 74 einen
Ausgang zuführt.
Der Verstärker 5076 führt dem
44 MHz-ZF-Ausgang einen Ausgang zu, welcher wiederum dem HF-Aufwärtswandler 5078 einen
Ausgang zuführt.
-
Jeder
Burst-Empfänger 5058 ist
dafür konfiguriert,
sowohl QPSK-(4 QAM-) oder 16 QAM-Signale empfangen zu können. Die
QPSK-Signale stellen 2 Bis pro Symbol bereit, wobei jedes Bit ±1-Amplitudenniveaus
aufweist. Die 16 QAM-Signale stellen 4 Bits pro Symbol bereit, wobei
jedes Bit ein ±1-
oder ±3-Amplitudenniveau
aufweist.
-
Die
Beschreibung und Darstellung eines Burst-Empfängers, der dafür konfiguriert
ist, QPSK- und 16 QAM-Eingänge
aufzunehmen, ist rein veranschaulichender Natur und stellt keine
Einschränkung
dar. Fachleute werden erkennen, dass andere Modulationstechniken,
wie etwa 32 QAM, 64 QAM und 256 QAM alternativ verwendet werden
können.
-
Abtast- und Paketsynchronisierung
-
Zusätzlich zu
der vorstehend genannten standardgemäßen Anfrage-/Bewilligungsverarbeitung
stellen die wohlbekannten Data-over-Cable-Service-Interface-Spezifikationen
(DOCSIS) eine unangeforderte Bewilligungsbetriebsart bereit. Gemäß dieser
Betriebsart wird eine feststehende Anzahl an Minischlitzen einer
ausgewählten
SID bewilligt, ohne die Verzögerung
erdulden zu müssen,
die ein stetiger Strom von Anfragen vor dem Empfang entsprechender
Bewilligungen mit sich bringt. Die Upstream-Bandbreite wird in zeitlich
geplanten Intervallen in diskreten Blöcken zugewiesen. Die Blockgröße und Zeitintervalle
werden zwischen dem CM und dem CMTS ausgehandelt. Mit anderen Worten,
bei Erhalt einer anfänglichen
Anfrage plant das CMTS einen stetigen Strom von Bewilligungen in
feststehenden Intervallen. Der Anfangsminischlitz dieser unangeforderten
Bewilligungen startet eine feststehende Anzahl an Minischlitzen,
ausgehend vom Ende der letzten ähnlichen
Bewilligung. Dieser Mechanismus kann dadurch einen feststehenden
Bitratenstrom zwischen dem CM und dem CMTS bereitstellen, der bei
Sprachpaketsystemen besonders nützlich
ist, die die Sprache in einem feststehenden Intervall (8 kHz) abtasten
und ein Paket feststehender Länge
zur Übertragung
zusammensetzen. Eine solche Paketverarbeitung mit festgelegter Abtastung
und feststehender Länge
macht die Verwendung solcher feststehender Bewilligungsintervalle
besonders attraktiv.
-
Wenn
Sprachabtastwerte jedoch unter Verwendung eines asynchronen Taktes
bezogen auf den den Minischlitzen zugeordneten Takt erfasst werden,
kommen Pakete bezogen auf den Burst zu einem beliebigen Zeitpunkt
an. Die Zeitdifferenz (D) zwischen dem Burst und der Paketankunft
variiert kontinuierlich von Burst zu Burst als Funktion der Differenz
zwischen der Abtast- und Minischlitztakffrequenz. 20 zeigt
die variablen Verzögerungen,
die sich ergeben, wenn solche Sprachdienste unter Verwendung der
unangeforderten DOCSIS-Bewilligungsbetriebsart gesendet werden.
Abtastwertpakete (Si, Si + 1, ...) kommen basierend auf dem Abtasttakt
an und Upstream-Bewilligungen (G, G + 1, ...) kommen basierend auf
dem vom CMTS-Netzwerktakt abgeleiteten Netzwerktakt an. Die Verzögerung (Di,
Di + 1, ...) zwischen dem verfügbaren
Abtastwertpaket und der Bewilligungsankunft variiert mit jedem Paket
als Funktion der Differenz zwischen den Abtast- und Netzwerktakten.
-
DOCSIS-Systeme
erzeugen jedoch einen Takt, der zum Synchronisieren der Upstream-Übertragungsfunktionen
verwendet wird. Ein Protokoll wird definiert, das an jedem CM-Modem
eine synchronisierte Version des CMTS-Taktes bereitstellt, wie vorstehend
im Detail besprochen. Es kann auch ein Protokoll definiert werden,
das eine Synchronisierung zwischen dem Sprachabtasttakt und dem
CM vorsieht. Ebenso kann, wenn die Kopfstelle mit dem PSTN über ein
PSTN-Gateway kommuniziert, das über
eine eigene Taktung verfügt,
ein Protokoll definiert werden, das eine Synchronisierung zwischen
dem PSTN und der Kopfstelle bereitstellt. Demgemäß kann dann eine Synchronisierung
vorgesehen werden, so dass die Abtastung der Anruferstimme mit dem
CM synchronisiert wird, das wiederum mit dem CMTS synchronisiert
wird, welches wiederum mit dem PSTN synchronisiert wird, was es
schließlich
ermöglicht,
das angerufene Ziel mit dem Anrufer zu synchronisieren. Die vorliegende
Erfindung stellt eine solche Synchronisierung bereit.
-
Bezug
nehmend auf 21 ist, wie in 20,
eine Reihe von Bewilligungen (G, G + 1, ...) und eine Reihe von
Sprachabtastwerten (Si, Si + 1, ...) dargestellt, wobei die Verzögerungen
(Di, Di + 1, ...) zwischen der Abtastwertpaketankunft und der unangeforderten
Bewilligungsankunft festgelegt sind. Die festgelegte Verzögerung ist
das Ergebnis der Synchronisierung zwischen dem CM und dem lokalen
Telefonsystem, wie nachfolgend beschrieben. Die feststehende Verzögerung ist
beliebig und wird durch das zufällige
Verhältnis
zwischen dem Beginn des Anrufereignisses und der Bewilligungstaktsteuerung
bestimmt. Es ist jedoch erwünscht,
die Verzögerung
zwischen der Paketankunft und der Bewilligungsankunft zu minimieren,
wie in 22 gezeigt.
-
Zwischen
der Bewilligungsankunftsverarbeitung und der Paketankunftszusammensetzungsverarbeitung
wird eine Koordinierung bereitgestellt, um dazu beizutragen, eine
solche Verzögerung
zu minimieren.
-
Die
Ankunft des Bewilligungssignals am CM zeigt an, dass "es nun für das CM
Zeit ist, die Daten zu senden".
Daher müssen
die Daten, wenn die Bewilligung ankommt, zur Übertragung bereit sein. Um
die Daten für
die Übertragung
fertig zu machen, ist sowohl zur Datenerfassung (Sprachabtastung)
als auch zur Verarbeitung der erfassten Daten (z.B. Vorsehen einer
Sprachkomprimierung) Zeit erforderlich. Zur Minimierung der Verzögerung sollten
die Daten direkt vor der Ankunft der Bewilligung zur Übertragung
bereit sein. Eine Verzögerung
tritt auf, wenn die Datenerfassung und Verarbeitung der erfassten
Daten zu früh
beendet ist und das System darauf warten muss, dass die Bewilligung
ankommt. Eine solche Verzögerung
kann bei einer Voice-over-IP-Verarbeitung besonders störend sein,
die gewisse Maximalverzögerungsspezifikationsanforderungen
aufweist. Daher ist es für
das System vorteilhaft, zu wissen, wie viel Zeit zum Erfassen der
Daten nötig ist,
wie viel Zeit zum Verarbeiten der Daten erforderlich ist und dadurch
in der Lage zu sein, eine solche Datenerfassung und -verarbeitung
mit der Bewilligung zu synchronisieren.
-
Das
Downstream-CM handelt eine Bewilligungsperiode mit dem CMTS aus,
wie vorstehend beschreiben. Ein unangefordertes Bewilligungsintervall
wird vom CMTS festgelegt, z.B. in Intervallen von 10 ms. Sobald
die Bewilligung basierend auf einer Anfrage (z.B. ein von einem
Anrufertelefon gesendetes Signal, dass ein Telefonanruf über einen
offenen Telefonkanal getätigt
werden soll, um einen Empfänger
anzurufen, wie etwa einen mit dem PSTN verbundenen Benutzer) festgelegt
worden ist, wird die unangeforderte Bewilligung zugeführt, das
heißt
die Bewilligungen kommen in regelmäßigen Intervallen. Die unangeforderte
Bewilligungsbetriebsart wird verwendet, da die Sprachübertragung
während
des Telefonanrufs kontinuierlich ist und während jedem Bewilligungsintervall
ständig
erfasst wird (z.B. alle 10 ms). Die Bewilligungsintervalle können als "Fenster" zum Senden der abgetasteten
Pakete erfasster Daten betrachtet werden. Wenn jedoch die Datenerfassung
und -verarbeitung nicht synchronisiert ist, ist sie nicht in regelmäßigen Intervallen
bereit, was sowohl eine Übertragungsverzögerung als
auch, wiederum, eine Empfangsverzögerung am Endpunkt (d.h. beim
Anrufempfänger)
verursacht.
-
Bezug
nehmend auf 23 ist eine repräsentative
Ausführungsform
einer Implementierung der vorliegenden Erfindung dargestellt, bei
der ein lokaler Anrufer einen Anruf über ein CM-/CMTS-System tätigen kann,
um einen Anrufempfänger 6002 zu
erreichen, der mit dem PSTN über
ein PSTN-Gateway 6004 verbunden ist. Bei der repräsentativen
Ausführungsform
bilden vier Anrufertelefone 1047a, 1047b, 1047c, 1047c einen
Teil eines Analog-/Digital-Signalverarbeitungssystems 6010,
das Fachleuten wohlbekannt ist. Jedes Anrufertelefon ist mit einem
jeweiligen Standard-Codierer-/Decoder
(CODEC) und Teilnehmerschleifenschnittstellenschaltungen (SLIC/Subscriber
Loop Interface Circuits) 6012a, 6012b, 6012c, 6012d verbunden,
die Teil eines Sende-Analog-/Digital-(A/D-) und Empfangs-Digital-/Analog-(D/A-)Umsetzerteilsystems 6014 sind,
das außerdem
jeweilige Puffer 6016a, 6016b, 6016c und 6016d zum
Speichern der digital abgetasteten Daten sowie einen Multiplexer/Demultiplexer 6018 umfasst.
Das Umsetzerteilsystem 6014 ist an einen digitalen Signalprozessor
(DSP) 6020, wie etwa das LSI-Logic-Corporation-Modell ZSP56402,
angeschlossen ist. Der DSP 6020 steuert die Signalkomprimierung.
Wenn beim Senden beispielsweise ein Anrufer (z.B. der Anrufer 5047a) einen
Telefonhörer
abnimmt und spricht, wird in der Praxis die Stimme abgetastet und
dann von analogen in digitale Signale umgewandelt. Der DSP steuert
die Komprimierung der Daten, die unter der Steuerung des CM 5046 zu
Paketen zusammengesetzt und vom CM 5046 an das CMTS 5042 gesendet
werden, wie vorstehend beschrieben. Ebenso wird beim Empfang unter
der Steuerung des CM 1046 ein eingehendes digitales Signal empfangen
und die Pakete zerlegt und unter der Steuerung des DSP dekomprimiert.
Die resultierenden digitalen Signale werden dann in analoge Signale
umgewandelt, um vom Anrufer gehört
zu werden.
-
Wenn
ein Telefonanruf über
das CM getätigt
werden soll, bewirkt das Abheben des Telefons, dass eine Nachricht
an das CMTS gesendet wird, die um eine unangeforderte Bewilligung,
z.B. eine periodische Bewilligung mit einer Bewilligungsdauer von
10 ms, ersucht. Die Sprachdaten werden dann während jedem 10 ms-Intervall zwischen
Bewilligungen erfasst und verarbeitet. Die Verarbeitung umfasst,
dass der DSP das digitale Signal vom Umsetzerteilsystem übernimmt
und die digitalen Daten komprimiert (z.B. mittels eines ITU-Standard-G.729-Algorithmuscodierers),
um die Verwendung einer geringeren Bandbreite zum Senden zu ermöglichen.
Die A/D-Umsetzung
einer Sequenz von Abtastwerten und deren Pufferspeicherung können als "Datenerfassungsaspekt" betrachtet werden.
Die Verarbeitung der erfassten Daten hat eine vom verwendeten Komprimierungsalgorithmus
festgelegte Zeitspanne. Die nachfolgende Tabelle 1 zeigt die DSP-Verarbeitungszeitspanne
bei einer 10 ms-Datenerfassungs-Frame-Größe für verschiedene ITU-Komprimierungsalgorithmen unter
Verwendung eines typischen DSP, z.B. des LSI-Logic-Corporation-Modell-ZSP16402-140
MHz-DSP.
Komprimierung | DSP-Verarbeitungszeitspanne |
(a)
G.711 | 2
MIPS = 1,4% DSP-Last = 0,0282 ms zur Verarbeitung von 2,0 ms Daten |
(b)
G.722 | 16
MIPS = 11,4% DSP-Last = 0,228 ms zur Verarbeitung von 2,0 ms Daten |
(c)
G.726 | 16
MIPS = 11,4% DSP-Last = 0,228 ms zur Verarbeitung von 2,0 ms Daten |
(d)
G.728 | 35
MIPS = 25% DSP-Last = 0,5 ms zur Verarbeitung von 2,0 ms Daten |
(e)
G.729 | 20
MIPS = 14,29% DSP-Last = 1,1 ms zur Verarbeitung von 2,0 ms Daten |
TABELLE
1
-
Daher
ist bei der G.711-Komprimierung beispielsweise eine Datenerfassungszeitspanne
von 2,0 ms zuzüglich
einer Datenverarbeitungszeitspanne von 0,0282 ms, d.h. 2,0282 ms,
erforderlich, um die erfassten und verarbeiteten Daten direkt vor
der Bewilligungsankunft fertig zu machen. Somit muss die Datenerfassung 2,0282
ms vor der Ankunft der Bewilligung gestartet und 0,0282 ms vor Ankunft
der Bewilligung abgeschlossen sein. Mit anderen Worten, die Taktsynchronisierung
zwischen dem Bewilligungsankunftszeitplan und der Datenerfassungsfrist
wird in Anbetracht des Bewilligungsankunftszeitplans und der basierend
auf der gewählten Komprimierung
erforderlichen DSP-Verarbeitungsdauer festgelegt. Um sicherzustellen,
dass die Datenerfassungsfrist eingehalten wird, wird ein Takt für die A/D-Umsetzung
basierend auf den Takten des CMTS und des CM-Systems abgeleitet
und ein Zeiger bereitgestellt, um einen Abschnitt des Puffers anzuzeigen,
in dem die abgetasteten Daten erfasst sind.
-
Gemäß der vorliegenden
Erfindung basieren die zu erfassenden Daten (Abtastung) auf dem
vom CMTS gesendeten CMTS-Takt, der die CMs synchronisiert. Eine
Bewilligungszeitberechnungsschaltung 6022 ist zwischen
dem DSP 6020 und dem CM 5046 angeschlossen. Erfasste
Daten werden dem jeweiligen Puffer entnommen, so dass sie im Puffer
gespeicherte Daten umfassen, die über eine Zeitspanne vor der
Bewilligungsankunft gesammelt wurden, nämlich der Verarbeitungszeitspanne
zuzüglich
der Datenerfassungszeitspanne. Der CODEC-/SLIC-Block verfügt über einen
Takt zum Erfassen der Daten. Die Sprachabtastung wird daher basierend
auf einem Abtasttaktsignal vom CM getaktet. Somit werden die direkt
vor der Bewilligungsankunft zuletzt im Puffer gespeicherten Daten
gemäß der Bewilligung
zur Übertragung
verwendet. Die Details der Abtasttaktung sind nachfolgend dargelegt.
-
Bezug
nehmend nochmals kurz auf 23 wird
der Anrufempfänger 6002 über das
wohlbekannte PSTN-Telefon-Gateway 2004 mit dem PSTN verbunden.
Das PSTN-Telefon-Gateway 6004 wird
durch ein Telefonienetztaktsignal 6006 von der Netztaktreferenz 6003 getaktet,
die ebenfalls mit dem CMTS 5042 verbunden ist, so dass
das PSTN-Telefon-Gateway 6004 mit dem CMTS-Takt zur Übertragung
von Telefonabtastwertpaketen 6007 zwischen dem CMTS 5042 und
dem PSTN-Telefon-Gateway 6004 synchronisiert
werden kann. Der Telefonienetztaktgeber ist der wohlbekannte Building-Integrated-Timing-Supply-(BITS-)Taktgeber.
Die Geräteanforderungen
zum Anschließen
dieses Taktgebers sind Fachleuten bekannt und in dem Bellcore-Dokument
TR-NWT-001244 beschrieben. Das Konzept zur Synchronisierung von
Büros (Intraoffice
Synchronisation) ist Fachleuten ebenfalls bekannt und in dem Bellcore-Dokument
TA-NWT-000436 beschrieben. Der CMTS-Takt wird mit dem Telefonienetztaktsignal 2006 über die
Kopfstellen-Taktsynchronisierung synchronisiert, die den Kopfstellen-Referenz-Tick-Taktgeber 5015 verwendet,
wie vorstehend in Bezug auf 14 beschrieben.
-
Bezug
nehmend nun auf 24 wird der Betrieb der Kopfstellen-Taktsynchronisierschaltung 5018 in Verbindung
mit dem Telefonienetztakt näher
beschrieben. Die digitale Verfolgungsschleife 6021 stellt
einen im Wesentlichen stabilen Taktausgang für das CMTS 5042 dar.
Eine Differenz zwischen einer absoluten Zeitreferenz und dem Ausgang
einer lokalen Zeitreferenz 6022, die von dem numerisch
gesteuerten Oszillator (NCO) 5024 abgeleitet wird, wird
durch die Differenzierschaltung 6026 gebildet. Diese Differenz
definiert einen Frequenzfehlerwert, der die Differenz zwischen dem
Takt des CMTS 5042 (der durch die lokale Zeitreferenz 6022 bereitgestellt
wird) und dem Takt des PSTN-Telefon-Gateway 5004 (der durch
das Telefonienetztaktsignal 6006 bereitgestellt wird) darstellt.
Dieser Frequenzfehlerwert wird durch das Mittelwertermittlungs-Schleifenfilter 6028 gefiltert,
wodurch verhindert wird, dass unerwünschte Abweichungen des Frequenzfehlerwertes
den numerisch gesteuerten Oszillator 5024 auf eine Weise
beeinträchtigen,
die seine Stabilität
herabsetzen oder bewirken würde,
dass der numerisch gesteuerte Oszillator 5024 mit einer
anderen als der gewünschten
Frequenz arbeitet. Das Schleifenfilter 5028 ist dafür konfiguriert,
die schnelle Erfassung des Frequenzfehlerwerts auch dann zu ermöglichen,
wenn der Frequenzfehlerwert groß ist,
und dann vergleichsweise Frequenzfehlerwerte zurückzuweisen, wenn die digitale
Verfolgungsschleife 6021 konvergiert, d.h. wenn sich der
Ausgang der lokalen Taktsteuerungsreferenz 6022 der absoluten
Zeitreferenz annähert,
wodurch bewirkt wird, dass sich der Frequenzfehlerwert null nähert. Die
Taktsteuerungsversatzkorrektur 2030 besteht aus einem einfachen
Addierer, der mit der lokalen Zeitreferenz 6022 und dem
zeitbasierten Nachrichtengenerator 2032 verbunden ist, der
zeitbasierte Nachrichten als Ausgang bereitstellt. Der CMTS-Takt
ist nun mit dem PSTN-Gateway-Takt synchronisiert.
-
Bezug
nehmend nochmals kurz auf 23 wird
darauf hingewiesen, dass die Bewilligungszeitberechnungsschaltung 6023 und
die CODEC-/SLIC-Blöcke 6012a, 6012b, 6012c, 6012d auf
ein Abtasttaktsignal von der CM-Taktsynchronisierschaltung 2034 des
CM 5046 ansprechen. Ein solches Abtasttaktsignal stellt
eine Taktsynchronisierung für
die Sprachabtastung mit 8 kHz bereit, die von dem 4,096 MHz-CM-Takt abgeleitet wird
(der mit dem CMTS-Takt synchronisiert ist, der wiederum mit dem
PSTN-Takt synchronisiert ist).
-
Bezug
nehmend nun auf 25 wird der Betrieb der CM-Taktsynchronisierschaltung 6034 beschrieben.
Der Betrieb der CM-Taktsynchronisierschaltung 6034 ähnelt demjenigen
der Kopfstellen-Taktsynchronisierschaltung 6008. Der Zeitstempel-Detektor 6050 ermittelt
Downstream-Daten, die die vom Zeitbasisnachrichtengenerator 6032 des
CMTS 1042 erzeugten Zeitbasisnachrichten umfassen. Der
Zeitbasisnachrichten-Detektor 6050 stellt eine absolute
Zeitreferenz bereit, die repräsentativ
für die
Frequenz der Kristalloszillator-Taktsteuerungsreferenz 5016 des
CMTS 5042 ist. Die digitale Verfolgungsschleife 6036 ist
enthalten, um einen im Wesentlichen stabilen Taktausgang bereitzustellen.
Eine Differenz zwischen einer absoluten Zeitreferenz und dem Ausgang
einer lokalen Zeitreferenz 6038, die von dem numerisch
gesteuerten Oszillator 6040 abgeleitet wird, wird durch
die Differenzierschaltung 6042 gebildet. Diese Differenz
definiert einen Frequenzfehlerwert. Dieser Frequenzfehlerwert wird
durch ein Mittelwertermittlungs-Schleifenfilter 6044 gefiltert,
wodurch verhindert wird, dass unerwünschte Abweichungen des Frequenzfehlerwerts
den numerisch gesteuerten Oszillator 6040 auf eine Art
und Weise beeinträchtigen,
die seine Stabilität
verringern oder bewirken würden,
dass der numerisch gesteuerte Oszillator 6040 mit einer
anderen Frequenz als der gewünschten
arbeitet. Das Schleifenfilter 6044 ist so konfiguriert,
dass es die schnelle Erfassung des Frequenzfehlerwerts auch dann ermöglicht,
wenn der Frequenzfehlerwert groß ist,
und dann vergleichsweise große
Frequenzfehlerwerte zurückweist,
wenn die digitale Verfolgungsschleife 6036 konvergiert,
d.h. wenn sich der Ausgang der lokalen Taktsteuerungsreferenz 6038 der
absoluten Zeitreferenz annähert,
wodurch bewirkt wird, dass sich der Frequenzfehlerwert null nähert. Die
Taktsteuerungsversatzkorrektur 6052 besteht aus einem einfachen
Addierer, der mit der lokalen Zeitreferenz 6038 verbunden
ist, um den Abtasttaktgeber 6054 zu speisen, der einen
4,096 MHz-Abtasttakt
zur Verwendung durch die Bewilligungszeitberechnungsschaltung 6023 und
die CODEC/SLIC-Blöcke 6012a, 6012b, 6012c, 6012d bereitstellt.
-
Bezug
nehmend nun auf die 26a, 26b und 26c sind jeweils der erzeugte 4,096 MHz-Abtasttakt,
eine GrantRcv[4] (d.h. eine Angabe, dass eine Bewilligung vorhanden
ist) und eine GrantRcv[3:0]-SID (d.h. eine Kanalnummer, auf dem
die Bewilligung vorliegt) dargestellt.
-
Bezug
nehmend nun auf die 27a, 27b und 27c sind jeweils ein abgeleiteter 8 kHz-Abtasttakt
für die
Sprachabtastung, die GrantRcv[4] (in abwärts skalierter Darstellung)
und die abgetasteten Daten dargestellt.
-
Bezug
nehmend auf die 28, 29 und 30 ist
eine Bewilligungszeitberechnungsschaltung 6023 genauer
dargestellt. Der Epochen-Zähler 6060 wird
durch einen vom Pulsgenerator 6062 erzeugten 8 kHz-Puls
gepulst, der vom von der CM-Taktsynchronisierschaltung 6034 im
CM 1046 erzeugten 4,096 MHz-Abtasttakt abgeleitet wird.
Die Bewilligungstaktsteuerungswarteschlange 6064 spricht
auf die 4 Bit-SID-Kanalnummer und das Bewilligung-vorhanden-Signal
an, wie in den 26a, 26b und 26c gezeigt. Die Bewilligungszeitberechnungsschaltung
ist an den DSP 6020 angeschlossen und zählt zwischen aufeinander folgenden
unangeforderten Bewilligungen. Der Epochen-Zähler ist ein 12 Bit-Zähler und
wird durch den 4,096 MHz-Abtasttakt mit einem 8 kHz-Freigabepuls
vorgerückt.
Die Bewilligungsankunftstaktsteuerungswarteschlange wird von dem
Bewilligung-vorhanden-Signal vom CM 5046 angehalten. Dieses
Signal ist immer dann vorhanden, wenn eine interessierende Bewilligung
im Upstream vorhanden ist. Die Bewilligungstaktsteuerungswarteschlange
nimmt einen 16 Bit-Eingang an, wovon 4 Bits die dem Bewilligungvorhanden-Signal
zugeordnete Hardware-Warteschlangennummer und 12 Bits den Epochen-Zählerwert darstellen.
Der DSP kann den aktuellen Epochen-Zählerwert lesen. Das Ergebnis
der Bewilligungszeitberechnung durch die Bewilligungszeitberechnungsschaltung 2023 ist
die Erzeugung eines historischen Maps darüber, wann Bewilligungen bezogen
auf den Epochen-Zählerwert
ankommen, wie in 29 gezeigt. Bezug nehmend insbesondere
auf 30 umfasst eine Bewilligungstaktsteuerungswarteschlange 2064 die
Logikblöcke SID_REG,
SID_SYNC und SID_FILT zur Erfassung von SID-Informationen. Ein 16×16-FIFO
speichert die Tick-Zählung für jede jeweilige
Bewilligung und ihre entsprechende SID. Jeder Eintrag im FIFO enthält die SID und
gnt_tick_cnt (Bewilligungs-Tick-Zählung), die der Bewilligungsankunft
entspricht. Diese Informationen ermöglichen es der DSP-Software,
eine Tabelle aus SIDs und gnt_tick_cnt zu erstellen, die die Berechnung
einer durchschnittlichen Zwischenankunftszeit für jede Bewilligung ermöglicht.
Diese Informationen ermöglichen
es der Software, die Datenverarbeitung, wie nachfolgend in Bezug
auf 32a genauer dargestellt und
beschrieben, zeitlich zu planen, um sicherzustellen, dass die Pakete
rechtzeitig für
die Bewilligungen fertig sind.
-
Bezug
nehmend auf 31 ist das Verhältnis zwischen
der Bewilligungszeitberechnungsschaltung 2023, dem DSP 2020 und
den Puffern 2016a, ... 2016d genauer dargestellt.
Wie vorstehend angegeben, führt die
Bewilligungszeitberechnungsschaltung 2023 DSP-Datenlesezugriffsinformationen
(SID und gnt_tick_cnts) dem DSP zu. Diese DSP-Datenlesezugriffsinformenen
führen
dem DSP Taktsteuerungsinformationen zu, so dass er weiß, wann
und wo die Upstream-Daten aus dem Upstream-Datenpuffer auszulesen
sind. Sie stellen auch dahingehend Taktsteuerungsinformationen bereit,
wann die unkomprimierten Downstream-Sprachdaten in den Downstream-Datenpuffer
zu platzieren sind. Diese Taktsteuerungsinformationen ermöglichen
es der Software 2070 des DSP 2020, eine Tabelle 2072 aus
SIDs und Bewilligungs-Tick-Zählungen
zu erstellen, eine durchschnittliche Zwischenankunftszeitspanne
für jede
Bewilligung zu berechnen, die Datenverarbeitung zeitlich zu planen
und die Datenübertragung
in und aus den Datenpuffern zu steuern.
-
Wie
aus 31 zu ersehen ist, umfassen der repräsentative
Puffer 2016a (z.B. SID/Kanal 1) und der Puffer 2016d (z.B.
SID/Kanal 4) sowohl einen Upstream- Datenpuffer als auch einen Downstream-Datenpuffer, von
denen jeder seinen jeweiligen CODEC/SLIC-Block aufweist und durch
den vorstehend beschriebenen Abtasttakt getaktet wird. Wenn abgetastete
Sprachpaketdaten in Antwort auf eine Bewilligung über den
Kanal 1 gesendet werden sollen, verwendet ein Kanal-1-Datenzeiger
unter der Steuerung des DSP 6020 die Bewilligungszeitberechnungsinformationen
von der Bewilligungszeitberechnungsschaltung 6023, um festzustellen,
wo im Upstream-Datenpuffer die aktuellsten abgetasteten Daten zu
entnehmen und an das CM 5046 zu senden sind, wobei nicht
so aktuelle Abtastwerte jenseits des Zeigers (d.h. früher im Puffer
des Kanals 1 gespeichert) verworfen werden. Ebenso verwendet, wenn
abgetastete Sprachpaketdaten in Antwort auf eine Bewilligung über den
Kanal 4 gesendet werden sollen, ein Kanal-4-Datenzeiger unter der
Steuerung des DSP 6020 die Bewilligungszeitberechnungsinformationen
von der Bewilligungszeitberechnungsschaltung 6023, um festzustellen,
wo im Upstream-Datenpuffer die aktuellsten abgetasteten Daten zu
entnehmen und an das CM 5046 zu senden sind, wobei nicht
so aktuelle Abtastungen jenseits des Zeigers (d.h. früher im Puffer
des Kanals 4 gespeichert) verworfen werden. Die ausgewählten abgetasteten
Sprachpaketdaten werden dann vom DSP 6020 an das CM 5046 zur Übertragung
an das CMTS 5042 gesendet, wie vorstehend beschrieben.
-
Bezug
nehmend auf die 32a und 32b ist
ein Betriebsflussdiagramm bereitgestellt, das eine erfindungsgemäße DSP-System-Softwareentscheidungsimplementierung
zeigt.
-
Gehen
wir von einem System aus, bei dem der DSP 6020 ein digitaler
140MIPS-Signalprozessor
ist, wie etwa das LSI-Logic-Corporation-Modell ZSP16402, die Transportpaket-(TP-)Packungsgröße 10 ms
beträgt,
d.h. die Sprachpaketgröße in Millisekunden
in jedem Bewilligungsintervall, die an das/von dem Telefon gesendet
wird, und die Datenverarbeitung die aus der vorstehend angegebenen
Tabelle 1 ausgewählte Sprachkomprimierung
umfasst, wobei die vor der Bewilligung erforderliche Datenverarbeitungszeitspanne
bei diesen Komprimierungsalgorithmen 2 ms beträgt, außer bei G.729, wobei die erforderliche
Zeit 10 ms beträgt. Mit
anderen Worten, der DSP muss, Bezug nehmend nochmals auf Tabelle
1, jeweils 2,0 ms lang 4 Datenkanäle codieren und decodieren,
während
die 10 ms für
die Signalisierung einer TP-Packungsübertragung verwendet werden.
Die Stimme am entfernten Ende und die Stimme am nahen Enden werden über den
Abtasttakt synchronisiert. Es wird darauf hingewiesen, dass beispielsweise
100% der DSP-Last nötig
wären,
um bei dem 140MIPS-DSP 4 G.728-Kanäle zu verarbeiten.
-
Bezug
nehmend nochmals auf 32a, werden in Stufe 6080 Eingänge bezüglich einer
eine Anfrage initiierenden Kanalnummer, entsprechender Bewilligungvorhanden-Signale
und des Abtasttakts vom Kabelmodem 5010 für die Bewilligungszeitberechnung 6082 bereitgestellt
und in 6084 wird die Kanalbewertung von der DSP-Software
gestartet. In Stufe 6086 wird bestimmt, ob ein spezifischer
Kanal offen ist, d.h. Kanal i = 1, 2, 3 oder 4. Wenn nicht, beginnt
die Verarbeitung von neuem, wenn ja, wird die Verarbeitungszeit
Ti, wie aus 32a zu ersehen, in Stufe 6088 basierend
auf dem gewählten
Komprimierungsalgorithmus eingestellt. In Stufe 6090 werden
beim Empfang der Bewilligungszeitberechnung durch den DSP Daten
von 2 ms Dauer aus der Zeigerstelle im entsprechenden Puffer, der
dem offenen Kanal zugeordnet ist, ausgelesen. Bei den Algorithmen,
die eine Verarbeitungszeit von 2 ms haben, werden fünf Verarbeitungszyklen
mit einem Index j von 1 bis 5, benötigt. Bei dem G.729-Algorithmus
kann keine 2 ms-Verarbeitungszeit verwendet werden, da die unkomprimierten
Sprachdaten nur mit einer 10 ms-Frame-Größe zur Verfügung stehen. Somit wird in
Stufe 6092 eine Bestimmung in Bezug auf G.729 durchgeführt, und
wenn die Bestimmung nein ergibt, werden Daten von 2 ms Dauer in
Stufe 6094 verarbeitet. Wenn eine G.729-Komprimierung vorhanden
ist, wird der Zyklusindex j in Stufe 6096 bestimmt, und
wenn dies nein ergibt, werden in Stufe 6098 mehr inkrementell
ausgelesen, j = j + 1. Sobald in Stufe 6096 j = 5, werden Daten
von 10 ms Dauer in Stufe 7000 verarbeitet und die 10 ms-Packung
wird dann in Stufe 7002 gemäß der aktuellen Bewilligungsankunft
gesendet. Wie bei der j-Indexierung für das Auslesen von Daten wird
in den Stufen 7004 und 7006 eine j-Indexierung
für die
Datenverarbeitung durchgeführt.
Sobald in Stufe 7004 der Verarbeitungsindex j = 5, wobei
die 5 2 ms-Iterationen abgeschlossen sind, wird die 10 ms-Packung
in Stufe 7002 gesendet.
-
Fachleute
werden erkennen, dass alternative Ausführungsformen des hierin Beschriebenen
implementiert werden können.