-
ALLGEMEINER STAND DER TECHNIK
-
Gebiet der Erfindung
-
Diese
Erfindung betrifft drahtlose Kommunikationssysteme und insbesondere
ein Verfahren und eine Vorrichtung zum effizienten Übertragen
und Empfangen von Daten mit einem Kommunikationssystem, das einen
Media Access Control(MAC)-Co-Prozessor
hat.
-
Beschreibung des Standes der
Technik
-
Wie
in der gemeinsam erteilten, verwandten
US-Patentschrift Nr.: 6,016,311 beschrieben,
erleichtert ein drahtloses Kommunikationssystem die Zweiwege-Kommunikation
zwischen mehreren Teilnehmerfunkstationen oder Teilnehmereinheiten
(festen und tragbaren) und einer Festnetzinfrastruktur. Zu beispielhaften
Kommunikationssystemen zählen
mobile zelluläre
Telefonsysteme, private Kommunikationssysteme (Personal Communication
Systems, „PCS") und kabellose Telefone.
Die wesentliche Aufgabe dieser drahtlosen Kommunikationssysteme
ist es, bei Bedarf Kommunikationskanäle zwischen den mehreren Teilnehmereinheiten
und ihren jeweiligen Basisstationen bereitzustellen, um den Benutzer
einer Teilnehmereinheit mit der Festnetzinfrastruktur (üblicherweise
einem leitungsgebundenen System) zu verbinden. In den drahtlosen
Systemen, die Mehrfachzugriffsschemata haben, wird ein Zeit „rahmen” als grundlegende
Informationsübertragungseinheit verwendet.
Jeder Rahmen ist in mehrere Zeitschlitze unterteilt. Einige Zeitschlitze
werden zu Steuerzwecken und einige zur Informationsweiterleitung
verwendet. Teilnehmereinheiten kommunizieren typischerweise mit
einer ausgewählten
Basisstation unter Verwendung eines „Duplex"-Schemas, womit der Austausch von Informationen
in beiden Verbindungsrichtungen ermöglicht wird.
-
Übertragungen
von der Basisstation zur Teilnehmereinheit werden üblicherweise
als „Downlink"-Übertragungen bezeichnet. Übertragungen
von der Teilnehmereinheit zur Basisstation werden üblicherweise
als „Uplink"-Übertragungen
bezeichnet. Abhängig
von den Auslegungskriterien eines gegebenen Systems haben die drahtlosen
Kommunikationssysteme nach Stand der Technik typischerweise entweder
Zeitduplex-(Time Division Duplexing, „TDD") oder Frequenzduplex-(Frequency Division Duplexing, „FDD")-Verfahren verwendet,
um den Austausch von Informationen zwischen der Basisstation und
den Teilnehmereinheiten zu erleichtern. In einem TDD-System werden
Daten auf einem einzigen Kanal gesendet und empfangen. Ein typisches TDD-System
teilt einen Teil jedes Datenrahmens Sendedaten und einen verbleibenden
Teil Empfangsdaten zu. Alternativ sendet und empfängt ein FDD-System Daten gleichzeitig.
Insbesondere kann ein typisches FDD-System auf einem ersten Kanal
einen ganzen Datenrahmen senden, während gleichzeitig auf einem
zweiten Kanal ein ganzer Datenrahmen empfangen wird. Sowohl TDD-
als auch FDD-Duplex-Systeme sind auf dem Fachgebiet wohlbekannt.
-
Kürzlich sind
drahtlose Breitband-Kommunikationsnetze zur Lieferung weiterentwickelter
Breitbanddienste wie z. B. Sprache, Daten und Video vorgeschlagen
worden. Das drahtlose Breitband-Kommunikationssystem erleichtert
die Zweiwege-Kommunikation zwischen mehreren Basisstationen und mehreren
festen Teilnehmerstationen oder Teilnehmerendgeräten (Customer Premises Equipment, „CPE"). Ein beispielhaftes
drahtloses Breitband-Kommunikationssystem
ist in der oben erwähnten
US-Patentschrift Nr.: 6,016,311 beschrieben
und ist im Blockschaltbild nach
1 gezeigt.
Wie in
1 gezeigt, hat ein beispielhaftes drahtloses Breitband-Kommunikationssystem
100 mehrere
Zellen
102. Jede Zelle
102 enthält eine
Basisstation
106 und ein Aktivantennenarray
108.
Jede Zelle
102 stellt drahtlose Konnektivität zwischen
der Basisstation
106 der Zelle und mehreren CPEs
110 bereit,
die an festen Kundenstandorten
112 im gesamten Abdeckungsgebiet
von Zelle
102 positioniert sind. Darüber hinaus ist jedes der CPEs
110 mit
mehreren Endbenutzerverbindungen verbunden, wozu sowohl private als
auch Geschäftskunden
zählen
können.
Infolgedessen haben die Endbenutzerverbindungen des Systems unterschiedlichen
und veränderlichen
Nutzungs- und Bandbreitenanforderungs-Bedarf. Jede Zelle kann mehrere hundert
oder mehr private und Geschäfts-CPEs
110 bedienen,
und jedes CPE
110 kann mehrere hundert oder mehr Endbenutzerverbindungen
bedienen.
-
Das
drahtlose Breitband-Kommunikationssystem 100 stellt den
mehreren CPEs 110 echte „Bandbreite nach Bedarf" (Bandwidth-on-Demand) bereit.
Die CPEs 110 fordern Bandbreitenzuteilungen von ihren jeweiligen
Basisstationen 104 basierend auf dem Diensttyp und der
Dienstgüte
an, die durch die Endbenutzerverbindungen angefordert werden, die
durch die CPEs 110 bedient werden. Jedes CPE 110 kann
mehrere Endbenutzerverbindungen haben, wobei jede der Verbindungen
potenziell einen unterschiedlichen Breitbanddienst nutzt. Unterschiedliche Breitbanddienste
haben unterschiedliche Bandbreiten- und Latenzzeitanforderungen.
Der Diensttyp und die Dienstgüte,
die für
die Endbenutzerverbindungen verfügbar
sind, sind variabel und auswählbar.
Der Bandbreitenbetrag, der einem gegebenen Dienst gewidmet wird,
ist durch die Informationsrate und die Dienstgüte (Quality of Service, „QoS") bestimmt, die durch
jenen Dienst angefordert werden (und wobei auch Bandbreitenverfügbarkeit
und andere Systemparameter berücksichtigt
werden). Beispielsweise erfordern kontinuierliche Datendienste des
T1-Typs typischerweise eine große
Menge an Bandbreite mit gut kontrollierter Lieferlatenzzeit. Bis
sie abgeschlossen sind, erfordern diese Dienste konstante Bandbreitenzuteilung
für jeden
Rahmen. Im Gegensatz dazu sind gewisse Datendiensttypen, wie z.
B. Internet-Protokoll-Datendienste
(„TCP/IP") stoßartig,
oft in Wartestellung (was zu irgendeinem Zeitpunkt null Bandbreite
erfordern kann) und sind, wenn sie aktiv sind, relativ unempfindlich
gegenüber
Verzögerungsveränderungen.
-
Kommunikationssysteme
nach Stand der Technik haben typischerweise eine Medienzugangssteuerung
(Media Access Control, „MAC"), die verfügbare Bandbreite
auf einem oder mehreren physikalischen Kanälen auf dem Uplink und dem
Downlink zuteilt. Innerhalb der Uplink- und Downlink-Teilrahmen teilt
die Basisstations-MAC die verfügbare Bandbreite
unter den verschiedenen Diensten abhängig von den Prioritäten und
Vorschriften zu, die durch ihre Dienstgüte („QoS") auferlegt sind. Die MAC transportiert
Daten zwischen höheren
Schichten, wie z. B. TCP/IP, und einer physikalischen Schicht, wie
z. B. einem physikalischen Kanal. Gemäß dem Stand der Technik ist
die MAC Software, die auf einem Prozessor in der Basisstation ausgeführt wird.
Wenn Anfragen nach Bandbreite von CPEs 110 ankommen, muss
die MAC-Software die Rahmenbandbreite unter allen empfangenen Anforderungen
zuteilen. Wenn ein unerwartet hohes Datenvolumen (beispielsweise
Bandbreitenanfragen) durch die MAC empfangen wird, besteht die Möglichkeit,
dass die Software nicht in der Lage sein kann, in Echtzeit zu reagieren.
Wenn die MAC-Software nicht in Echtzeit reagieren kann, gehen Daten
verloren. Beispielsweise kann die MAC-Software nicht in der Lage
sein, alle ankommenden Daten rechtzeitig zu verarbeiten, um sie
im aktuellen Zeitrahmen zu übertragen.
Dies kann zur Folge haben, das Datenübertragung verzögert und
möglicherweise
durch das Empfangs-CPE 110 vermisst wird. Alternativ können die
Daten durch die MAC verworfen werden, wodurch möglicherweise große Datenmengen
unbrauchbar werden.
-
Weitere
Beispiele des Standes der Technik im vorliegenden technischen Gebiet
sind in den folgenden Dokumenten beschrieben:
Dokument
EP-A2-0 755 164 diskutiert
ein MAC-Schicht-Protokoll,
das in einem drahtlosen ATM-System verwendet wird. Das MAC-Protokoll
unterstützt
sowohl Verbindunglisten-Paket- als auch verbindungsorientierte virtuelle
Verbindungs-(VV-)-Betriebsarten. Die MAC-Protokoll-Schicht für drahtlosen ATM hat zwei wichtige
Module, einen Kern-MAC-Prozessor und einen Überwachungs-MAC-Prozessor. Der Kern-MAC-Prozessor ist
für das
Pflegen einer Tabelle aktiver VV und das Abbilden von VV auf spezifische
Steuer- oder Dienstschlitze zuständig,
die ihnen auf rahmenweiser Basis zugeteilt werden. Der Überwachungs-MAC-Prozessor
ist für
Schlitzzuteilungslogik höherer
Ebene zuständig,
die zum Bestimmen der Tabelleneinträge im Kern-MAC-Prozessor notwendig
ist.
-
Dokument
EP-A1-0 709 982 diskutiert,
dass ein „Medienzugangssteuerungs-(MAC-)"-Protokoll für drahtlosen
Zugang, vorzugsweise über
einen Hochfrequenzkanal, für
mehrere entfernte Stationen zu einer Basisstation in einem LAN" genutzt wird. In diesem
Dokument ist ein „Medienzugangssteuerungs-(MAC-)-Protokoll
beschrieben, das auf einem Reservierungsschema für Benutzerdatenverkehr und Direktzugriffstechnik
für den
Steuerungs- und Signalisierungsverkehr basiert". Im selben Dokument erstellt die Basisstation
einen Paketanfangskennsatz, der ein SLOT_MAP-Feld hat, und plant
Zeitschlitze und übertragt
Datenpakete gemäß dem SLOT
MAP.
-
Dokument
WO 99/26430 beschreibt „ein adaptives
Zeitduplex-Verfahren
(Adaptive Time Division Duplexing, ATDD-Verfahren) und eine Vorrichtung dazu
für das
Duplexen von Übertragungen
in drahtlosen Kommunikationssystemen". In dem im Dokument beschriebenen System
wird die Zeitschlitz- Benennung
als entweder ein Uplink- oder Downlink-Zeitraum dynamisch geändert, um Änderungen in
den Bandbreitenanforderungen des Kanals Rechnung zu tragen.
-
Der
Artikel mit dem Titel „Software
Acceleration Using Coprocessors: Is it Worth the Effort?", erschienen am 24.
März 1977
im Namen von Martyn Edwards, XP010218601, diskutiert die Grenzen
der Leistungssteigerung, die mithilfe von Softwarebeschleunigungstechniken
erreichbar ist. Der Verfasser kommt zu dem Schluss, dass Mehrzweck-Software-Beschleunigungstechniken
keine wesentlichen Leistungsvorteile gegenüber „reinen" Software-Lösungen bieten, wenn ein Einzelprozessor/-Co-Prozessor-Modell
verwendet wird.
-
Wünschenswert
ist daher eine MAC, die in Echtzeit auf ein hohes Datenvolumen reagieren kann.
Darüber
hinaus wird ein System gewünscht, das
einen höheren
Datendurchsatz als MAC-Software
erlaubt.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Die
vorliegende Erfindung, wie in den Ansprüchen 1 und 8 definiert, ist
ein neuartiges Verfahren und eine ebensolche Vorrichtung zum effizienten Synchronisieren,
Senden und Empfangen von Daten zwischen einer Basisstation und mehreren
CPEs 110. Das Verfahren und die Vorrichtung lösen diese Aufgaben
durch Implementieren eines MAC-Co-Prozessors, der zusammen mit der MAC
arbeitet, um ein robustes Kommunikationssystem mit hohem Durchsatz
zu erzeugen.
-
In
einer Ausführungsform
der vorliegenden Erfindung ist ein MAC-Co-Prozessor mit der Basisstations-MAC
verbunden. Der MAC-Co-Prozessor kann einen Teil der Arbeitslast
von der MAC, die Software-implementiert ist, durch Wahrnehmen vieler
der Aufgaben übernehmen,
die typischerweise durch MACs nach Stand der Technik wahrgenommen
werden. Zu diesen Aufgaben können
während
eines Downlinks Sortieren von Daten nach Priorität, Speichern eines Datenrahmens
von Daten höchster
Priorität,
Einsortieren des Datenrahmens nach Modulationsart, Art der Vorwärtsfehlerkorrektur
(Forward Error Correction, „FEC"), Endbenutzerverbindungs-ID oder
anderen Kriterien, Anhängen
eines Satzes von CPE-Einstellungen
an den Datenrahmen und Anhängen
von Informationen der physikalischen Schicht (vom Modem verwendet)
an den Datenrahmen zählen.
Während
eines Uplinks empfängt
der MAC-Co-Prozessor gemäß der vorliegenden
Erfindung alle Daten und lenkt die Daten entweder zur MAC oder zu
einem Netzwerk-Backhaul. Sowohl bei den Downlink- als auch den Uplink-Prozessen kann das
Vorliegen eines MAC-Co-Prozessors,
der mit der MAC zusammenarbeitet, den Durchsatz des Kommunikationssystems
erheblich steigern.
-
Gemäß der vorliegenden
Erfindung sendet das vorliegende erfindungsgemäße Verfahren Downlink-Daten
direkt von einem QoS-Modul zum MAC-Co-Prozessor („MCP") zur Speicherung,
zum Sortieren und zum Aktualisieren. Anders ausgedrückt, hat
die MAC-Software eine viel leichtere Last, weil sie die eigentlichen
Daten nie sieht. Sobald die Daten durch den MCP empfangen werden,
liest der MCP aus einer Lookup-Tabelle
eine Reihe von CPE-Einstellungen aus. Zu den CPE-Einstellungen können unter anderem Modulationsart,
FEC-Art, Verschlüsselung
EIN/AUS, Verschlüsselungsschlüssel und
Schlüsselnummer
für das
bestimmte CPE zählen,
das zum Empfangen der aktuellen Downlink-Daten vorgesehen ist. Dann
werden die Daten nach Modulationsart, FEC-Art oder Verbindungs-ID
der aktuellen Verbindung sortiert in einem Puffer gespeichert (der
Begriff „Verbindung" bezeichnet in der
hier verwendeten Weise einen Endbenutzer-Datenfluss, der mit einem
CPE verbunden ist). In einer Ausführungsform implementiert der
MCP eine verbindungsorientierte MAC, die Daten von einem Endbenutzer-Datenfluss
transportiert, der verbindungslos ist, beispielsweise IP. Der MCP
fügt den Datenpaketen
im Puffer gewisse CPE-Einstellungen hinzu, die notwendig sind, damit
das vorgesehene CPE die Daten erkennt und empfängt. Darüber hinaus fügt der MCP Einstellungen
der physikalischen Schicht hinzu, die notwendig sind, damit das
Modem die Daten im zweckentsprechenden Format überträgt. Der MCP fährt fort,
Datenpakete vom QoS-Modul zu empfangen, bis ein vorgegebener Zeitraum
verstrichen ist, und sendet dann den Datenrahmen zum Modem. Ist der
Datenrahmen voll, bevor der vorgegebene Zeitraum verstrichen ist,
kann der MCP keine Datenpakete vom QoS-Modul mehr empfangen, bis
der vorgegebene Zeitraum verstrichen ist und der aktuelle Datenrahmen
zum Modem gesendet worden ist. Auf diese Weise muss der MCP bestimmen,
wie viele physikalische Schlitze für jedes Datenpaket, das von der
QoS empfangen wird, bei den jeweiligen CPE-Modulations- und FEC-Einstellungen
erforderlich sind. Ist der Datenrahmen nicht voll, wenn es zur Zeitüberschreitung
des vorgegebene Zeitraums gekommen ist, kann das Modem die freien
Plätze
im Datenrahmen mit festgelegten Füllzellen oder -bytes auffüllen. In
der vorliegenden Beschreibung wird in vielen Beispielen ein vorgegebener
Zeitraum von einer Millisekunde verwendet. Der Fachmann wird erkennen,
dass bei TDD-Systemen Zeitrahmen von zwei Millisekunden und von
einer halben Millisekunde (500 Mikrosekunden) ebenfalls sehr gängig sind. Darüber hinaus
wird erwogen, dass jedweder andere Zeitraum als eine Millisekunde,
sei er kleiner oder größer, an
die Stelle des vorgegebenen Zeitraums gesetzt werden kann.
-
In
einer anderen Ausführungsform
hat jedes CPE 110 einen MAC-Co-Prozessor („CMCP") zum Erstellen eines
Uplink-Datenbursts
(ein Datenburst ist jedwede Kombination von Benutzerdaten und Steuerinformationen).
Der CMCP 450 kann die durch mehrere Endbenutzerverbindungen
empfangenen Daten sortieren, die Daten gemäß den jeweiligen Prioritäten jeder
Endbenutzerverbindung priorisieren, den Datenburst erstellen und
den Datenburst zu der Zeit senden, die durch den Uplink-Teilrahmen
angegeben ist. Darüber
hinaus kann ein System, das CMCPs hat, in Zusammenarbeit mit dem
BS-MCP 402 jedwede Kombination von Packen/Entpacken, Nutzdaten-Anfangskennsatz-Komprimierung/-Dekomprimierung
und Fragmentierung/Defragmentierung vornehmen. Allerdings können diese
Operationen mithilfe anderer Hardware-Konfigurationen implementiert werden.
-
Gemäß der vorliegenden
Erfindung bestimmt bei TDD-Systemen die MAC eine Uplink-Downlink-Aufteilung
(„Up/Down-Split"), die durch den
MAC-Co-Prozessor zu verwenden ist. Insbesondere verwendet die MAC
Informationen wie z. B. unter anderem anstehende Bandbreitenanfragen von
CPEs 110, Up/Down-Split-Einstellungen anderer MACs in derselben
BS und eine Downlink-Auslastungs-Mitteilung vom MAC-Co-Prozessor, um die
voraussichtliche Uplink-Downlink-Datenmenge
für den nachfolgenden
Zeitrahmen zu bestimmen. Somit teilt die MAC beim Bestimmen des
Up/Down-Splits den vorgegeben Zeitraum in einen Downlink- und einen Uplink-Teil auf. Weil die
MAC nicht genau weiß,
wie viel Downlink-Daten
zum Übertragen
verfügbar
sein werden, kann der MAC-Co-Prozessor
den Up/Down-Split dynamisch aktualisieren, womit allen Empfangs-CPEs 110 ermöglicht wird,
zu wissen, wann das Ende des Downlink-Prozesses tatsächlich eintreten
wird.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 ist
ein vereinfachtes Blockschaltbild eines drahtlosen Breitband-Kommunikationssystems.
-
2 stellt
eine TDD-Rahmen- und Mehrfachrahmenstruktur dar.
-
2A zeigt
ein Beispiel eines Downlink-Teilrahmens, der für die Verwendung mit dem vorliegenden
Kommunikationssystem ausgelegt ist.
-
2B zeigt
ein Beispiel eines Uplink-Teilrahmens, der für die Verwendung mit dem vorliegenden
Kommunikationssystem ausgelegt ist.
-
3 ist
ein Blockschaltbild einer Modemschnittstellenkarte einschließlich Eingängen und Ausgängen dazu.
-
4 ist
ein Blockschaltbild des Steuermoduls innerhalb der Modemschnittstellenkarte.
-
5 ist
ein Blockschaltbild von Modulen oberster Ebene, die innerhalb der
MAC und des MAC-Co-Prozessors zu finden sind.
-
6 ist
ein Blockschaltbild von Modulen oberster Ebene, die innerhalb des
Dienstgütemoduls zu
finden sind.
-
7 ist
ein Flussdiagramm des Downlink-Prozesses.
-
8 ist
ein Flussdiagramm des Betriebs eines MAC während eines einzelnen Kommunikations-Zeitrahmens.
-
9 ist
ein Flussdiagramm des Uplink-Prozesses.
-
10 ist
ein Blockschaltbild einer Ausführungsform
eines CPE-Steuermoduls einschließlich eines MAC-Co-Prozessors.
-
11 ist
ein Flussdiagramm des Prozesses des Uplinkens von Daten von einem
CPE zu einer BS.
-
AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN
AUSFÜHRUNGSFORM
-
In
der gesamten Beschreibung sind die bevorzugte Ausführungsform
und die gezeigten Beispiele eher als Beispiele als als Einschränkungen
für die
vorliegende Erfindung anzusehen. Der Begriff Datenpaket kann in
der hier verwendeten Weise entweder Benutzerdaten oder Protokoll-
und Steuermitteilungen bezeichnen.
-
1 ist
ein Blockschaltbild hoher Ebene, das ein drahtloses Kommunikationssystem 100 darstellt.
Das drahtlose Kommunikationssystem 100 stellt eine drahtlose
Verbindung mit Kunden und Unternehmen bereit, um Daten gemeinsam
zu nutzen oder auf ein Netzwerk 114, beispielsweise das
Internet, zuzugreifen. Das drahtlose Kommunikationssystems 100 umfasst
mehrere Zellen 102. Jede Zelle 102 enthält eine
Basisstation („BS") 104 und
mehrere Teilnehmerendgeräte
(Customer Premises Equipment, „CPEs") 110, die
sich an festen Kundenstandorten 112 im gesamten Abdeckungsgebiet
der Zelle 102 befinden. Jedes CPE 110 kommuniziert
mit der BS 104 über
eine drahtlose Verbindung. Die BS 104 wiederum kommuniziert
mit dem Netz 114 mithilfe einer Kommunikationsverbindung
oder eines „Backhauls" 116. Der
Backhaul 116 kann beispielsweise Koaxialkabel, Glasfaserkabel,
Mikrowellenverbindungen oder andere Verbindungen hohen Durchsatzes
umfassen.
-
Der
Downlink (d. h. von der BS
104 zu den mehreren CPEs
110)
des in
1 gezeigten Kommunikationssystems arbeitet auf
Punkt-zu-Mehrpunkt-Basis. Wie in der verwandten
US-Patentschrift Nr.
6,016,311 beschrieben, hat die zentrale BS
104 ein
sektoriertes Aktivantennenarray
108, das fähig ist,
gleichzeitig in mehrere Sektoren zu übertragen. In einer Ausführungsform
des Systems
100 überträgt das Aktivantennenarray
108 in
vier unabhängige Sektoren
gleichzeitig. Innerhalb eines gegebenen Frequenzkanals und Antennensektors
empfangen alle Stationen dieselbe Übertragung. Die BS
104 ist der
einzige Sender, der in der Downlink-Richtung arbeitet, somit sendet
sie, ohne sich mit anderen BS
104 koordinieren zu müssen. Die
CPEs
110 beobachten die Adressen in den empfangenen Mitteilungen
und behalten nur die Daten, die an sie adressiert sind.
-
Die
CPEs 110 nutzen den Uplink auf einer Bedarfsbasis gemeinsam,
die durch die BS gesteuert werden kann. Abhängig von der Dienstklasse,
die durch ein bestimmtes CPE 110 genutzt wird, kann die BS 104 an
ein ausgewähltes
CPE 110 ständige Rechte
zum Übertragen
auf dem Uplink ausgeben, oder das Recht zum Übertragen kann nach Empfang einer
Anfrage von einem CPE 110 gewährt werden. Zusätzlich zu
individuell adressierten Mitteilungen kann die BS 104 auch
Mitteilungen an Mehrfachsendungsgruppen sowie Rundsendemitteilungen
an alle CPEs 110 senden.
-
In
einer Ausführungsform
pflegt die BS
104 Teilrahmen-Abbildungslisten der Bandbreite, die
dem Uplink und dem Downlink zugeteilt ist. Wie in
US-Patentschrift Nr. 6,016,311 ausführlicher
beschrieben, sind der Uplink und der Downlink vorzugsweise in Art und
Weise eines Zeitduplex (Time-Division Duplex oder „TDD") gemultiplext. Obgleich
die vorliegende Erfindung unter Bezug auf eine Anwendung in einem TDD-System
beschrieben ist, ist die Erfindung nicht derartig beschränkt. Der
Kommunikations-Fachmann wird erkennen, dass das vorliegende erfindungsgemäße Verfahren
und die ebensolche Vorrichtung leicht für die Verwendung in einem FDD-System
ausgelegt werden kann.
-
In
einer Ausführungsform,
die für
die Verwendung in einem TDD-System ausgelegt ist, ist ein Rahmen
als N aufeinanderfolgende Zeiträume
oder Zeitschlitze umfassend definiert (wobei N konstant bleibt).
Gemäß diesem „rahmenbasierten" Ansatz werden die
ersten N1 Zeitschlitze dynamisch nur für Downlink-Übertragungen
konfiguriert (wobei N größer oder
gleich N1 ist). Die übrigen N2 Zeitschlitze werden
dynamisch nur für
Uplink-Übertragungen konfiguriert
(wobei N2 gleich N – N1 ist).
Unter diesem rahmenbasierten TDD-Schema wird der Downlink-Teilrahmen
vorzugsweise zuerst übertragen,
und ihm werden Informationen vorangestellt, die zur Rahmensynchronisation
notwendig sind.
-
Wie
in der verwandten
US-Patentschrift
Nr. 6,016,311 ausführlicher
beschrieben, kann in einer anderen Ausführungsform ein adaptives Zeitduplex-System
(Adaptive Time Division Duplex, „ATDD"-System) implementiert sein. Bei ATDD-Betriebsart
ist der Prozentsatz der TDD-Rahmen, die dem Downlink gegenüber dem
Uplink zugeteilt sind, ein Systemparameter, der sich mit der Zeit ändern kann.
Anders ausgedrückt,
kann ein ATDD-System das Verhältnis
von Downlink-Daten zu Uplink-Daten in sequenziellen Zeitrahmen verändern. Im
Hinblick auf das obige Beispiel können in einem ATDD-System N
1 und N
2 (wobei N
1 der Downlink-Teilrahmen ist und N
2 der
Uplink-Teilrahmen ist) bei jedem Datenrahmen unterschiedlich sein,
während
die Beziehung N = N
1 + N
2 aufrechterhalten
wird. Ein Datenrahmen, der zwischen Uplink und Downlink aufgeteilt
ist, könnte
entweder ein TDD-Rahmen oder ein ATDD-Rahmen sein. Es wird daher
erwogen, dass alle Systeme und Verfahren, die hierin mit Bezug auf einen
TDD-Rahmen beschrieben sind, für
einen ATDD-Rahmen ausgelegt werden könnten und umgekehrt.
-
In
noch einer anderen Ausführungsform kann
durch gleichzeitiges Senden von N Zeitschlitzen an Daten und Empfangen
von N Zeitschlitzen an Daten auf unterschiedlichen Kanälen ein
FDD-System implementiert sein. In noch einer anderen Ausführungsform
kann durch Senden von N Zeitschlitzen an Daten auf einem ersten
Kanal während
eines ersten Zeitraums und Empfangen von N Zeitschlitzen an Daten
auf einem zweiten Kanal während
eines zweiten Zeitraums ein Halbduplex-FDD-System implementiert
sein, wobei sich die zwei Zeiträume
nicht überlappen.
-
2 zeigt
eine TDD-Rahmen- und Mehrfachrahmenstruktur 200, die durch
ein Kommunikationssystem (wie z. B. das in 1 gezeigte)
verwendet werden kann. Wie in 2 gezeigt,
ist der TDD-Rahmen 200 in mehrere physikalische Schlitze („PS") 204, 204' unterteilt.
In der Ausführungsform nach 2 ist
der TDD-Rahmen 200 von einer Millisekunde Dauer und hat
800 physikalische Schlitze. Alternativ kann die vorliegende Erfindung
mit Rahmen, die längere
oder kürzere
Dauer haben, und mit mehr oder weniger PS verwendet werden. Manche Form
digitaler Codierung, wie z. B. die wohlbekannte Reed-Solomon-(„RS"-) -Codierung, Convolutional-Codierung
oder Turbo-Code-Codierung,
wird an den digitalen Informationen über eine vordefinierte Anzahl
von Biteinheiten vorgenommen, die als Informationselemente der physikalischen
Schicht (Physical Lager Information Elements, „PI") bezeichnet werden. Die Modulations-
oder FEC-Art kann innerhalb des Rahmens variieren und bestimmt die
Anzahl der PS (und daher die Zeitspanne), die zum Übertragen
eines ausgewählten
PIs erforderlich ist. In der nachstehend beschriebenen Ausführungsform
bezieht sich die ausführliche
Beschreibung auf Daten, die mithilfe dreier unterschiedlicher Modulationsarten gesendet
und empfangen werden, nämlich
QAM-4, QAM-16 und QAM-64. In alternativen Ausführungsformen kann jedwede andere
Modulationsart, FEC-Art oder Variation einer Modulations- oder FEC-Art
verwendet werden. Beispielsweise kann ein RS-Codierungs-System unterschiedliche
Variationen von Blockgrößen oder
Codeverkürzungen
verwenden, kann ein Convolutional-Codierungs-System die Coderate variieren
und kann ein Turbo-Code-System jedwede Blockgröße, Coderate oder Codeverkürzung verwenden.
-
Um
periodische Funktionen zu unterstützen, werden mehrere Rahmen 202 zu
Mehrfachrahmen 206 gruppiert, und mehrere Mehrfachrahmen 206 werden
zu Hyperrahmen 208 gruppiert. In einer Ausführungsform
umfasst jeder Mehrfachrahmen 206 zwei Rahmen 202,
und jeder Hyperrahmen umfasst 22 Mehrfachrahmen 206. Andere
Rahmen-, Mehrfachrahmen- und Hyperrahmenstrukturen können mit der
vorliegenden Erfindung verwendet werden. Beispielsweise umfasst
in einer anderen Ausführungsform
der vorliegenden Erfindung jeder Mehrfachrahmen 206 16
Rahmen 202, und jeder Hyperrahmen umfasst 32 Mehrfachrahmen 206.
-
2A zeigt
ein Beispiel eines Downlink-Teilrahmens 300, der durch
die BS 104 verwendet werden kann, um Informationen zu den
mehreren CPEs 110 zu übertragen. 2A zeigt
einen beispielhaften TDD-Downlink-Teilrahmen. In einem TDD-System
ist jeder Zeitrahmen in einen Downlink-Teilrahmen und einen Uplink-Teilrahmen
geteilt. Insbesondere wird während
jedes Eine-Millisekunden-Zeitrahmens
(oder eines anderen vorgegebenen Zeitraums) zuerst der Downlink-Teilrahmen
von der BS 104 zu allen CPEs 110 im Sektor übertragen,
wonach von bestimmten CPEs 110 der Uplink-Teilrahmen durch
die BS 104 empfangen wird. Der Downlink-Teilrahmen 300 ist
dynamisch, sodass er in sequenziellen Zeitrahmen unter anderem abhängig von einer
Uplink-Downlink-Aufteilung unterschiedlich sein kann, die durch
die MAC 420 bestimmt ist. In einem FDD-System wird der
Zeitrahmen nicht zwischen Uplink- und Downlink-Daten geteilt. Stattdessen
ist ein FDD-Downlink-Teilrahmen ein ganzer Rahmen von Downlink-Daten
(z. B. eine Millisekunde) auf einem ersten Kanal, und ein Uplink-Teilrahmen
ist ein ganzer Rahmen von Uplink-Daten auf einem zweiten Kanal.
In einem typischen FDD-System können
der Downlink-Teilrahmen und der Uplink-Teilrahmen während desselben
vorgegebenen Zeitraums gleichzeitig übertragen werden. Somit können in
einem FDD-System sowohl die BS 104 als auch die CPEs 110 unter
Verwendung unterschiedlicher Kanäle
zur selben Zeit empfangen und senden. In einer anderen Ausführungsform
können
der Downlink-Teilrahmen und der Uplink-Teilrahmen nicht zur selben
Zeit übertragen
werden, verwenden aber dennoch unterschiedliche Kanäle.
-
Der
Downlink-Teilrahmen 300 umfasst vorzugsweise einen Rahmensteuerungs-Anfangskennsatz 302,
mehrere Downlink-Daten-PS 304,
die anhand jedweder Kombination aus Modulationsart, FEC-Art, CPE-Index
und Verbindungs-ID gruppiert (z. B. PS 304 mithilfe eines
QAM-4-Modulationsschemas
modulierte Daten, PS 304' mithilfe
von QAM-16 modulierte Daten usw.) und möglicherweise anhand zugeordneter
Modulations-Übergangslücken (Modulation
Transition Gaps, „MTGs") 306 separiert
sind, die verwendet werden, um unterschiedlich modulierte Daten
zu separieren, und eine Sende-Empfangs-Übergangslücke 308. In jedwedem
ausgewählten
Downlink-Teilrahmen können
irgendeiner oder mehrere der unterschiedlich modulierten Datenblöcke fehlen.
In einer Ausführungsform
sind MTGs 306 von 0 („null") PS Dauer. Der Rahmensteuerungs-Anfangskennsatz 302 enthält eine
Präambel 310,
die durch die physikalische Protokollschicht (oder „PHY") zu Synchronisations-
und Entzerrungszwecken verwendet wird. Der Rahmensteuerungs-Anfangskennsatz 302 hat
außerdem
Steuerabschnitte sowohl für
die PHY (312) als auch die MAC (314). Ein FDD-Downlink-Teilrahmen kann mit der
Struktur nach 2A im Wesentlichen identisch sein,
jedoch ohne eine Tx-Rx-Übergangslücke 308.
-
Die
Downlink-Daten-PS 304 werden zum Übertragen von Daten und Steuermitteilungen
zu den CPEs 110 verwendet. Diese Daten werden vorzugsweise
(beispielsweise mithilfe eines Reed-Solomon-Codierverfahrens) codiert
und unter der aktuell in Betrieb befindlichen Modulation übertragen,
die durch das ausgewählte
CPE verwendet wird. In einer Ausführungsform werden Daten in
einer vordefinierten Modulationssequenz übertragen: wie z. B. QAM-4,
gefolgt von QAM-16, gefolgt von QAM-64. Die Modulations-Übergangslücken 306,
so vorhanden, werden verwendet, um die Modulationsschemata zu separieren,
die zum Übertragen
von Daten verwendet werden. Der PHY-Steuerteil 312 des
Rahmensteuerungs-Anfangskennsatzes 302 enthält vorzugsweise eine
Rundsendemitteilung, welche die Identität des PS 304 angibt,
in dem sich das Modulationsschema ändert. Abschließend separiert,
wie in 2A gezeigt, die Tx-Rx-Übergangslücke 308 den Downlink-Teilrahmen
vom Uplink-Teilrahmen.
-
2B zeigt
ein Beispiel eines Uplink-Teilrahmens 320, der für die Verwendung
mit dem vorliegenden Kommunikationssystem ausgelegt ist. Die CPEs 110 (1)
verwenden den Uplink-Teilrahmen 320, um Informationen (einschließlich Bandbreitenanfragen)
an ihre zugeordnete BS 104 zu übertragen. Wie in 2B gezeigt,
gibt es drei Hauptklassen von MAC-Steuermitteilungen, die durch
die CPEs 110 während
des Uplink-Rahmens übertragen
werden: (1) jene, die in Wettbewerbsschlitzen übertragen werden, die für die CPE-Registrierung
reserviert sind (Registrierungs-Wettbewerbsschlitze 322);
(2) jene, die in Wettbewerbsschlitzen übertragen werden, die für Antworten
auf Mehrfachsendungs- und Rundsendungsabfragen für die Bandbreitenzuteilung
reserviert sind (Bandbreitenanfragen-Wettbewerbsschlitze 324); und
jene, die in einer Bandbreite übertragen werden,
die individuellen CPEs spezifisch zugeteilt ist (CPE-zeitgesteuerte
Datenschlitze 326).
-
Die
für Wettbewerbsschlitze
(d. h. die Wettbewerbsschlitze 322 und 324) zugeteilte
Bandbreite wird gemeinsam gruppiert und wird mithilfe eines vordefinierten
Modulationsschemas übertragen.
Beispielsweise werden in der in 2B gezeigten
Ausführungsform
die Wettbewerbsschlitze 322 und 324 mithilfe einer
QAM-4-Modulation übertragen.
Die übrige
Bandbreite wird nach CPE gruppiert. Während eines Uplink-Teilrahmens überträgt jedes
jeweilige CPE 110 während
seiner jeweiligen Uplink-Zeiten mit einer festen Modulations- und
FEC-Art. Der Uplink-Teilrahmen 320 hat mehrere CPE-Übergangslücken (CPE
Transition Gaps, CTGs) 328, die einer den Modulations-Übergangslücken (MTGs) 306 ähnlichen
Funktion dienen, die oben unter Bezug auf 2A beschrieben
sind. Das heißt,
die CTGs 328 separieren die Übertragungen von den verschiedenen
CPEs 110 während
des Uplink-Teilrahmens 320. In einer Ausführungsform
sind die CTGs 328 von 2 physikalischen Schlitzen Dauer.
Ein sendendes CPE sendet vorzugsweise eine 1-PS-Präambel während des
zweiten PS der CTG 328, wodurch der Basisstation ermöglicht wird,
sich auf das neue CPE 110 zu synchronisieren. Im Registrierungs-Wettberwerbszeitraum
können
mehrere CPEs 110 gleichzeitig senden, was zu Kollisionen
führt.
Wenn eine Kollision auftritt, kann die Basisstation nicht reagieren.
Die Downlink- und Uplink-Teilrahmen
stellen einen Mechanismus für
geschichteten Datentransport in einem drahtlosen Kommunikationssystem
bereit.
-
Jedes
CPE 110 fordert Uplink-Bandbreite von seiner jeweiligen
BS 104 entweder durch Senden einer Anfrage in einem Bandbreitenanfragen-Wettbewerbsschlitz 324,
Aufsatteln einer Anfrage anstelle von Daten geringerer Priorität oder Platzieren
eines Abfragebits im Uplink-Daten-Anfangskennsatz
an. Ein CPE 110, dem keinerlei Teil des aktuellen Uplink-Teilrahmens
zugeteilt wurde, kann entweder Bandbreite durch Senden einer Anfrage
während
des Zeitrahmens des Bandbreitenanfrage-Wettbewerbsschlitzes 324 anfordern,
oder alternativ kann, wenn das CPE 110 eine höhere Priorität als ein
anderes CPE 110 hat, dem Uplink-Bandbreite zugeteilt wurde, das CPE 110 höherer Priorität genügend Bandbreite von
den CPEs 110 geringerer Priorität „stehlen", um eine Bandbreitenanfrage zu senden.
Wenn einem spezifischen CPE 110 ein Teil des aktuellen Uplink-Teilrahmens zugeteilt
worden ist, es aber zusätzliche
Daten hat, die nicht in die zugeteilte Zeit passen, kann das CPE 110 (in
seinem Uplink-Anfangskennsatz) ein Abfragebit setzen, das der BS 104 mitteilt,
dass das spezifische CPE 110 für mehr Bandbreite abgefragt
werden muss. Der CPE-Uplink-Anfrageprozess
wird unten in 11 weiter beschrieben.
-
3 ist
ein Blockschaltbild oberster Ebene einer Modemschnittstellenkarte
(Modem Interface Card, „MIC") innerhalb einer
BS 104. Im Allgemeinen ist die Schaltung nach 3 in
der BS 104 zu finden und steuert eine Antenne. Wie oben
erwähnt,
ist jede Zelle, die durch eine bestimmte BS 104 bedient
wird, in mehrere Sektoren geteilt. In einer Ausführungsform ist eine Zelle in
vier Sektoren (unter Neunzig-Grad-Winkeln zueinander) geteilt, wobei
jeder der Sektoren durch eine unterschiedliche Antenne bedient wird. 3 stellt
die Schaltung innerhalb der Basisstation, d. h. die MIC 128,
dar, die verwendet wird, um die Außeneinheit 108 an
den Backhaul 116 anzukoppeln. In einer Ausführungsform
ist jede der vier MICs 128 innerhalb derselben BS 104 direkt
an den Backhaul 116 angekoppelt. In einer anderen Ausführungsform
ist der Backhaul 116 vor dem Verbinden mit irgendeiner
der MICs 128 in derselben BS 104 aufgeteilt.
-
In
einer Ausführungsform
des drahtlosen Kommunikationssystems 100 kann jede MIC 128 eine
Eingangs-/Ausgangsschnittstelle 150,
ein Steuermodul (Control Module, „CM") 132, ein Modem 135,
einen Bus 134, der CM 132 mit Modem 135 verbindet,
ein Frequenzumtastungsmodem (Frequency Shift Key, „FSK"-Modem) 138 und
einen Fehler-Busprozessor 121 haben.
In einer Ausführungsform
sind diese Komponenten in eine einzige Karte integriert, was ermöglicht,
dass die MIC 128 per Einschub in dem Kasten einer Inneneinheit
(In Door Unit, „IDU") montiert ist, wobei
es sich um einen Kasten standardmäßiger Größe handelt, wie er auf dem
Fachgebiet verwendet wird. Diese Anordnung gestattet ferner, dass
die MIC 128 bei laufendem Betrieb austauschbar ist, was
die Wartung vereinfacht und Erweiterung ermöglicht. Der Fachmann wird erkennen,
dass diese Komponenten alternativ zwischen mehreren Platinen an
mehreren Orten angeordnet sein können.
-
Wie
in 3 dargestellt, ist das CM 132 mit der
Eingangs-/Ausgangsschnittstelle 150 verbunden, die den
Anschluss zum Backhaul 116 und zur Steuerschnittstellenkarte 113 herstellt.
Das CM 132 empfängt
Paketdaten von der Eingangs-/Ausgangsschnittstelle 150 und
sendet sie an das Modem 135 zur Modulation, bevor sie über Breitbandkabel 129, wie
es z. B. durch ein RG-6-Kabel
bereitgestellt wird, zur Außeneinheit
(Out Door Unit, „ODU") 108 gesendet
werden. Das CM 132 überträgt Daten über den Bus 134 zum
Modem 135. Das Modem 135 kann einen vor Ort frei
zu programmierenden elektronischen Baustein (Field Programmable
Gate Array, „FPGA") oder eine anwendungsspezifische
integrierte Schaltung (Application Specific Integrated Circuit, „ASIC") 136 haben,
der/die Befehle zum Steuern anderer Subkomponenten der MIC 128 speichert.
Beispielsweise kann der FPGA oder die ASIC 136 mit dem Frequenzumtastungs-(„FSK"-)-Modem 138 kommunizieren,
um FSK-modulierte Steuermitteilungen von der MIC 128 über das
Kabel 129 zur ODU 108 zu senden. In ähnlicher
Weise kann die ODU 108 mit Antwortmitteilungen reagieren.
Ein Fehler-Busprozessor 121 ist mit dem CM 132 verbunden
und betreibbar, um Fehler, die in der MIC 128 heimisch
sind, zur weiteren Analyse an eine Systemsteuerung oder eine Systemfehlerüberwachung 113 zu
melden.
-
4 ist
ein Blockschaltbild des Steuermoduls (Control Module, „CM") 132 in
der MIC 128. Das CM 132 umfasst im Allgemeinen
einen Steuerprozessor 414, der betreibbar ist, um die Software
der MAC 410 auszuführen,
ein Dienstgütemodul
(Quality of Service, „QoS"-Modul) 412,
das betreibbar ist, um die Daten des CPE 110 von der Eingangs-/Ausgangsschnittstelle 150 zu
empfangen und zu priorisieren, und einen MAC-Co-Prozessor („MCP") 402, der
betreibbar ist, um einen Datenrahmen für die Ausgabe zum Modem 135 zu
speichern und zu sortieren. Der Betrieb jeder dieser Komponenten
wird unten ausführlicher
diskutiert.
-
In
einer Ausführungsform
kommen die Daten 133 von der Eingangs-/Ausgangsschnittstelle 150 am
QoS 412 an. Wie oben erklärt, ist jedes CPE 110 mit
mehreren Endbenutzerverbindungen („Verbindungen") verbunden, wobei
jede der Verbindungen potenziell einen unterschiedlichen Breitbanddienst nutzt.
Auf diese Weise hat jede Verbindung neben anderen QoS-Parametern
eine zugewiesene Priorität,
die das QoS 412 verwendet, um zu bestimmen, welche Datenpakete
zuerst gesendet werden. Das QoS 412 priorisiert Daten 133 gemäß den jeweiligen QoS-Parametern
der Verbindung, für
die das Datenpaket vorgesehen ist. Das QoS 412 kann diese
Parameter zusammen mit zahlreichen Techniken verwenden, die auf
dem Fachgebiet wohlbekannt sind, wie z. B. Fair-Weighted- und Round-Robin-Queuing
(siehe 6), um Datenpriorität zu bestimmen. Der MCP 402 empfängt von
der MAC 410 PHY/MAC-Steuer- und MAC-Protokollmitteilungen, holt Datenpakete aus
dem QoS 412, ruft Einstellungen für CPE 110 (wie z.
B. Modulation und FEC) aus der Lookup-Tabelle (Look Up Table, „LUT") 406 ab,
speichert die Datenpakete im Puffer 408, bis der jeweilige
Zeitrahmen abgeschlossen ist (d. h., die Zeitüberschreitung des vorgegebenen
Zeitraums aufgetreten ist), und sortiert die Datenpakete nach Modulationsart, FEC-Art,
CPE-Index oder Verbindungs-ID der jeweiligen Verbindung. Wenn der
vorgegebene Zeitraum (z. B. eine Millisekunde) verstrichen ist,
werden die gepufferten Daten an das Modem 135 übergeben.
-
In
einer Ausführungsform
hat ein Hardware-MCP 402 einen Co-Prozessor 404, der an ein Hardware-QoS 412 und
eine MAC 410 angekoppelt ist, die mit Software implementiert
ist, die durch einen Steuerprozessor 414 ausgeführt wird.
Systeme nach Stand der Technik üben
typischerweise die Funktionen sowohl der MAC 410 als auch
des MCP 402 mithilfe von Software aus, die durch den Steuerprozessor 414 implementiert
ist.
-
In
einer anderen Ausführungsform
wird QoS-Funktionalität
durch den MCP ausgeübt,
womit die Notwendigkeit eines separaten QoS-IC entfällt und
möglicherweise
die Menge physikalischen Platzes verringert wird, die zum Implementieren
eines derartigen Systems benötigt
wird. Diese alternative Ausführungsform
kann sämtliche
Funktionalität
des QoS-Moduls, die unter Bezug auf 6 beschrieben ist,
im MCP 402 implementieren.
-
5 ist
ein Blockschaltbild der Funktionsmodule oberster Ebene von MAC 410 und
MCP 402. In der hier verwendeten Weise bedeutet der Begriff „Modul", ohne jedoch darauf
beschränkt
zu sein, eine Software- oder Hardware-Komponente, wie z. B. einen FPGA oder
eine ASIC, die gewisse Aufgaben erledigt. Ein Modul kann vorteilhafterweise
konfiguriert sein, auf dem adressierbaren Speichermedium zu residieren,
und konfiguriert sein, auf einem oder mehreren Prozessoren ausgeführt zu werden.
Somit kann ein Modul als Beispiel Komponenten, wie z. B. Software-Komponenten,
objektorientierte Software-Komponenten, Klassen-Komponenten und Task-Komponenten,
Prozesse, Funktionen, Attribute, Prozeduren, Unterprogramme, Segmente
von Programmcode, Treiber, Firmware, Mikrocode, Schaltungen, Daten,
Datenbanken, Datenstrukturen, Tabellen, Arrays und Variablen haben.
Die Funktionalität,
die in den Komponenten und Modulen bereitgestellt ist, kann in weniger
Komponenten und Modulen kombiniert oder in zusätzliche Komponenten und Module
weiter separiert werden. Darüber
hinaus können die
Komponenten und Module vorteilhafterweise implementiert werden,
um auf einem oder mehreren Computern ausgeführt zu werden.
-
MAC-Module
-
Bezug
nehmend auf 5 kommuniziert das MAC-Koordinationsmodul 506 mit
anderen MACs 410 in derselben BS 104. Im Allgemeinen
versucht das MAC-Koordinationsmodul 506, Sende- und Empfangsphasen
aller MACs 410 in derselben BS 104 zu koordinieren,
sodass HF-Interferenz minimiert wird. In einer vereinfachten Ausführungsform
bedient jede BS 104 eine Zelle, die aus vier gleichen Sektoren
besteht. Jeder der vier Sektoren wird durch eine separate MAC und
Antenne bedient. Weil die Antennen nah zueinander angeordnet sein
können,
besteht die Möglichkeit
von Signalinterferenz. Beispielsweise kann, wenn zwei Antennen Sektoren 180 Grad
auseinander liegen (d. h., die Antennen mit dem Rücken zueinander
stehen), Interferenz wahrscheinlicher sein, wenn eine Antenne Daten
sendet (Downlink), während
die andere Daten empfängt
(Uplink). Gemäß der vorliegenden
Erfindung können
die MACs 410 in einer einzelnen BS 104 miteinander
koordiniert und kann daher die Signalinterferenz verringert werden.
-
In
einem ATDD- oder TDD-System stellt das MAC-Koordinationsmodul 506 dem Up/Down-Split-Modul 502 Informationen
bereit, die beim Bestimmen des Up/Down-Splits verwendet werden.
In einer Ausführungsform
verwendet jede MAC 410 in einer einzelnen BS 104 denselben Up/Down-Split.
In einer anderen Ausführungsform verwenden
nur jene MACs 410, die Antennen steuern, die entgegengesetzte
Sektoren (d. h. Antennen, die 180 Grad auseinander sind) bedienen,
denselben Up/Down-Split. In noch einer anderen Ausführungsform
bestimmt jede MAC 410 in der BS 104 unabhängig von
anderen MACs 410 in derselben BS 104 einen Up/Down-Split.
Andere Verfahren der Koordinierung eines MAC-Up/Down-Splits unter
mehreren MACs 410 können
ebenfalls durch MAC-Koordinationsmodul 506 verwendet werden.
-
In
einem FDD-System ermöglicht
es das MAC-Koordinationsmodul 506 MACs 410 in
einer spezifischen Basisstation, ihre Sende- und Empfangszeitpläne zu koordinieren.
Beispielsweise senden und empfangen in einer Ausführungsform
benachbarte Antennen während
alternierender Zeiträume.
In einer anderen Ausführungsform
können
die Antennen, die entgegengesetzte Sektoren (d. h. Antennen, die
180 Grad auseinander sind) bedienen, während alternierender Zeiträume senden
und empfangen. In noch einer anderen Ausführungsform kann das MAC-Koordinationsmodul 506 es
lediglich einer Antenne in einer gewissen Basisstation erlauben,
zu irgendeinem Zeitpunkt zu senden oder zu empfangen.
-
In
einem TDD-System empfängt
das Downlink-Auslastungs-Mitteilungs-Modul
(Downlink Utilization Message, „DUM"-Modul) 504 eine
DUM vom MCP 402, welche die Datenmenge angibt, die im letzten
Transferrahmen gesendet wurde, und der MAC 410 einen Hinweis
darauf bereitstellt, wie gut die MAC 410 den vorherigen
Up/Down-Split abschätzte.
Wie oben erklärt,
weiß die
MAC 410 nicht, wie viel Daten tatsächlich darauf warten, per Downlink
und Uplink übertragen
zu werden, sondern schätzt
dies nur basierend auf den hierin diskutierten Faktoren ab. Innerhalb
des MCP 402 müssen,
wenn ein Datenrahmen nicht gefüllt
ist, wenn eine Millisekunde (oder ein anderer vorgegebener Zeitraum) verstrichen
ist, die Daten dennoch zum Modem 135 gesendet werden. Auf
diese Weise kann ein Downlink-Teilrahmen vollständig gefüllt, teilweise gefüllt oder
völlig
leer sein, wenn er zum Modem 135 gesendet wird. Nachdem
jeder Datenrahmen zum Modem 135 gesendet worden ist, sendet
der MCP 402 eine DUM an das DUM-Modul 504 (in
der MAC 410). Dann kann das DUM-Modul 504 die
DUM nutzen, um über
einen unterschiedlichen Up/Down-Split im nachfolgenden Datenrahmen
zu verhandeln.
-
In
einem TDD-System bestimmt das Up/Down-Split-Modul 502 die
Downlink-Datenmenge, die im aktuellen Datenrahmen zugelassen wird. Beispielsweise
hat in einer Ausführungsform
jeder Datenrahmen einen Zeitrahmen von einer Millisekunde. Abhängig von
mehreren Faktoren kann, wie unten diskutiert, das Up/Down-Split-Modul 502 500
Mikrosekunden für
Downlink und 500 Mikrosekunden für Uplink,
d. h. eine gleichmäßige Aufteilung
zwischen Downlink und Uplink zuteilen. In einem nachfolgenden Zeitrahmen
kann das Up/Down-Split-Modul 502 700 Mikrosekunden für Downlink
und nur 300 Mikrosekunden für
Uplink zuteilen müssen.
-
Das
Up/Down-Split-Modul 502 hat mehrere Eingaben, die beim
Bestimmen des Up/Down-Splits benutzt werden. Zwei derartige Eingaben
werden vom Downlink-Auslastungs-Mitteilungs-(„DUM"-)-Modul 504 und
dem MAC-Koordinationsmodul 506 empfangen, wie oben diskutiert.
-
Zusätzlich zu
den vorhergehenden Eingaben können
andere CPE-Einstellungen, wie z. B. Modulations- und Dienstgüte-Anforderungen, gespeichert werden,
und durch das Up/Down-Split-Modul 502 kann
beim Bestimmen des Up/Down-Splits darauf Bezug genommen werden.
Beispielsweise kann, wenn die MAC 420 ein unerwartet hohes
Volumen an Uplink-Bandbreitenanfragen
von CPEs 110 empfängt,
das Up/Down-Split-Modul 502 mehr
Zeit für den
Uplink-Teilrahmen zuteilen.
-
Das
Up/Down-Split-Modul ist nur in einem TDD-System zu finden. Ein FDD-System
verwendet denselben, vorgegebenen Zeitraum sowohl für Downlink-
als auch Uplink-Datenrahmen. Obgleich die Downlink und Uplink-Datenrahmen
nicht zwangsläufig
während
desselben vorgegebenen Zeitraums gesendet werden, sind die Datenrahmen
stets von derselben Länge.
-
Das
Datenverbindungsmodul 508 stellt Verbindungen her, wie
durch die Anrufsteuerungs-Software angewiesen. Jede Datenverbindung
wird durch die BS 104 auf das CPE 110 zu hergestellt.
Wie oben erwähnt,
kann jede Verbindung unterschiedliche QoS-Einstellungen haben. Die
Anrufsteuerungs-Software schaltet Verbindungen unter Verwendung
der bestimmten QoS-Einstellungen für jene bestimmte Verbindung
ein.
-
Das
CPE-Aktualisierungsmodul 510 aktualisiert sowohl eine Masterkopie
der CPE-Einstellungen in der MAC 410 als auch eine Kopie
der CPE-Einstellungen in der LUT 406. Die CPE-Einstellungen werden
anfangs gespeichert, wenn sich ein neues CPE 110 bei der
MAC 410 registriert. Darauf folgend werden die CPE-Einstellungen
sowohl in der MAC 420 als auch in der LUT 406 aktualisiert,
wenn ein spezifisches CPE 110 eine Änderung verlangt oder das CPE-Aktualisierungsmodul 510 eine Änderung
veranlasst. Zu den CPE-Einstellungen zählen unter anderem Modulationsart,
FEC-Art, Flag für
Verschlüsselung
EIN/AUS, Verschlüsselungsschlüssel und
für jedes
CPE 110 bestimmte Schlüsselnummern.
Der MCP 402 greift auf CPE-Einstellungen zu, die in der LUT 406 gespeichert
sind (und durch CPE-Aktualisierungsmodul 510 aktualisiert
werden), um Informationen der physikalischen Schicht zu generieren,
die zum Modem 135 übertragen
werden.
-
CPE-Einstellungen
stellen sicher, dass jedes CPE 110 seine jeweiligen Daten
sicher (d. h., nur das vorgesehene CPE 110 empfängt die
Daten) unter Verwendung der effizientesten Modulation empfängt. In
einer Ausführungsform
verwendet jedes CPE 110 einen eindeutigen Verschlüsselungsschlüssel. Die Anrufsteuerung
der BS 104 bestimmt, ob die Verschlüsselung ein- oder ausgeschaltet
sein muss, und wenn die Verschlüsselung
eingeschaltet ist, wählt
die Anrufsteuerung einen Verschlüsselungsschlüssel aus.
Der Verschlüsselungsschlüssel ist
ein 8-Byte-Code, der verwendet wird, um Informationen zu verschlüsseln und
entschlüsseln,
die zu und von sowohl der BS als auch den CPEs 110 gesendet
werden. Der Verschlüsselungsschlüssel wird
sowohl in der BS 104 als auch in spezifischen CPEs 110 gemäß Anweisungen
durch die Anrufsteuerung der BS 104 periodisch geändert. In
einer Ausführungsform verwendet
ein Kommunikationssystem zwei unterschiedliche Verschlüsselungsschlüssel, die
durch Verschlüsselungsschlüssel-Nummern
indiziert sind (z. B. Verschlüsselungsschlüssel Nummer
eins und Verschlüsselungsschlüssel Nummer
zwei). In anderen Ausführungsformen
kann jedwede Anzahl unterschiedlicher Verschlüsselungsschlüssel verwendet und
durch entsprechende Verschlüsselungsschlüssel-Nummern
indiziert werden. Wenn eine Verschlüsselungsschlüssel-Änderung
vorgenommen wird, wird die Verschlüsselungsschlüssel-Nummer
inkrementiert, und es wird der Verschlüsselungsschlüssel verwendet,
der der neuen (d. h. inkrementierten) Schlüsselnummer entspricht. Somit
können,
wenn durch die Anrufsteuerung eine Verschlüsselungsschlüssel-Änderung
angezeigt wird, die BS 104 und das bestimmte CPE 110 gleichzeitig
zum selben Verschlüsselungsschlüssel wechseln.
-
Jedes
CPE 110 kann verschiedene Modulationen, wie z. B. QAM-4, QAM-16 und QAM-64,
und verschiedene FEC-Schemata, wie z. B. Reed-Solomon-, Convolutional-
und Turbo-Codierung verwenden. Alle drei Modulationsarten könne in einem
einzigen Datenrahmen durch und an unterschiedliche CPEs übertragen
werden. In einem gegebenen Rahmen kann ein einzelnes CPE 110 in
mehr als einer Modulationsgruppe senden. Beispielsweise kann ein spezifisches
CPE 110 Daten während
eines QAM-4-Modulationszeitraums senden und Daten während eines
nachfolgenden QAM-64-Modulationszeitraums innerhalb desselben Zeitrahmens
senden. Der MCP 402 verwendet CPE-Einstellungen, die in der
LUT 406 gespeichert sind, um an die Daten des aktuellen
CPE Modulations- und FEC-Informationen für das Modem anzuhängen, womit
sichergestellt wird, dass jedes CPE in der Lage ist, Daten zu detektieren
und zu empfangen, die für
das spezifische CPE vorgesehen sind.
-
Das
CPE-Registrierungsmodul 512 steuert die Registrierung neuer
CPEs. Die Population an CPEs 110 in einem Sektor ist relativ
statisch, sodass nicht häufig
CPEs 110 dem System beitreten, und nach dem Beitritt bleiben
sie üblicherweise
unbegrenzt im System. Für
die Registrierung neuer CPEs 110 muss Bandbreite zugeteilt
werden, aber aufgrund der relativ statischen Natur der Population
an CPEs 110 sind die Registrierungs-Gelegenheiten nicht
häufig
und müssen
nicht in jedem Zeitrahmen, aber in irgendeinem Vielfachen von Rahmen
auftreten. Als Teil des Registrierungsprozesses muss das CPE 110 Downlink-Synchronisation
mit BS 104 erreichen. Sobald Downlink-Synchronisation erreicht
ist, muss das CPE 110 einen Entfernungserfassungsprozess
durchlaufen, um den korrekten Zeitsteuerungs-Vorlauf für Uplink-Übertragungen
zu erlangen. Der Entfernungserfassungsprozess kann auch die Auswahl
für ein
bestimmtes CPE 110 verfügbarer Modulationen
beeinflussen, um eine gewisse Übertragungsqualität sicherzustellen.
Sobald ein CPE 110 erfolgreich registriert ist, werden
eine Reihe von CPE-Einstellungen sowohl in der MAC 410 als
auch der LUT 406 gespeichert.
-
Das
Uplink-Bandbreitenmodul 507 empfängt Bandbreitenanfragen von
CPEs 110 und teilt den verfügbaren Uplink-Teilrahmen unter
den empfangenen Anfragen zu. Die Uplink-Bandbreitenzuteilung ist
der Downlink-Bandbreitenzuteilung
(unten in Bezug auf das Priorisierungsmodul 602 diskutiert)
sehr ähnlich. Die
Datenwartefelder residieren jedoch über die individuellen CPEs 110 verteilt.
Statt den Wartefeldstatus direkt zu prüfen, empfängt die MAC 420 Anfragen nach
Bandbreite von den CPEs 110. Mithilfe dieser Anfragen rekonstruiert
die MAC 420 ein logisches Bild des Status der Wartefelder.
Basierend auf dieser logischen Ansicht des Satzes von Wartefeldern
teilt die MAC 420 Uplink-Bandbreite in einer ähnlichen Weise
zu, wie sie Downlink-Bandbreite zuteilt. Die einem bestimmten CPE 110 zugeteilte
Bandbreite wird jedoch in Form einer Bandbreitenzuteilung in einer Uplink-Abbildungsliste gesendet.
Die Uplink-Abbildungsliste teilt einem bestimmten CPE 110 einen
gewissen Bandbreitenbetrag zu, beginnend an einem gewissen Punkt
im nächsten
Zeitrahmen. Das bestimmte CPE 110 teilt dann diese Bandbreite über seine
Verbindungen zu. Aufgrund der dynamischen Natur der Bandbreitenzuteilung ändern sich
die Zuteilungen ständig,
sodass ein CPE 110 unverlangte Modifikationen der gewährten Bandbreite
auf rahmenweiser Basis empfangen kann. Wenn einem CPE für einen
Rahmen weniger Bandbreite als zum Übertragen aller wartenden Daten
nötig zugeteilt wird,
muss das bestimmt CPE 110 seine QoS- und Fairness-Algorithmen verwenden,
um seine Wartefelder zu bedienen. Darüber hinaus kann das bestimmte
CPE 110 Bandbreite von Verbindungen geringerer QoS stehlen,
um eine Anfrage nach mehr Bandbreite aufzusatteln.
-
MCP-Module
-
Das
Pufferspeichermodul 514 akkumuliert für eine einzelne Zeit Benutzerdaten
vom QoS 412 und zugeordnete MAC-Protokolimitteilungen von der MAC 410.
Diese akkumulierten Informationen werden in einem Puffer 408 gespeichert,
wie z. B. einem RAM. Wenn ein Zeitrahmen abgelaufen ist, werden die
Inhalte des Puffers 408 an das Modem 135 übergeben.
-
Das
Sortiermodul 518 sortiert vom QoS 412 empfangene
Daten gemäß irgendetwas
oder einer Kombination aus Folgendem: Modulationsart, FEC-Art, CPE-Index
oder Verbindungs-ID. Beispielsweise können in einer Ausführungsform
Datenpakete zuerst nach Endbenutzerverbindungs-ID, dann nach CPE-Index
und schließlich
nach Modulationsart sortiert werden. In einer Ausführungsform,
die nach Modulationsart sortiert, kann der Puffer 408 in
drei separate Teile geteilt sein, die mit QAM-4, QAM-16 und QAM-64
benannt werden. Es wird erwogen, dass in Zukunft andere Modulationsarten
verwendet werden können
und somit Sortiermodul 518 nach diesen unterschiedlichen
Modulationsarten sortieren kann. In einer anderen Ausführungsform,
die nach FEC-Art sortiert, kann der Puffer 408 in drei
separate Teile geteilt sein, die mit RS-, Convolutional- und Turbo-Code benannt
werden. In noch einer anderen Ausführungsform kann der Puffer
in mehrere Teile geteilt sein, um nach der Verbindungs-ID zu sortieren,
die jedem jeweiligen Datenpaket zugeordnet ist. Die ausführliche
Beschreibung und die ebensolchen Figuren hierin beschreiben ein
System, das nach Modulationsart sortiert. Der Durchschnittsfachmann
kann das beschriebene System anpassen, um nach anderen Kriterien
zu sortieren, wie beispielsweise Modulationsart, FEC-Art, CPE-Index
oder Verbindungs-ID.
-
Wenn
ein Datenpaket durch den MCP 402 empfangen wird, werden
die CPE-Einstellungen, die jenem Datenpaket entsprechen, aus der
LUT 406 abgerufen. Wie oben erklärt, ist die Modulationsart
eine der CPE-Einstellungen. Dann wird das empfangene Datenpaket
in dem Teil des Puffers 408 gespeichert, der der ausgewählten Modulationsart
des bestimmten CPE 110 entspricht. Dieser Prozess wird
für jedes Datenpaket
wiederholt, das durch den MCP 402 empfangen wird, und sortiert
wirksam den Datenrahmen nach Modulationsart.
-
Der
MCP 402 muss, nachdem ein jedes Datenpaket empfangen worden
ist, berechnen, wie viele physikalische Schlitze (PS) durch das
aktuelle Datenpaket verwendet werden und wie viele physikalische
Schlitze im aktuellen Downlink-Teilrahmen übrig bleiben.
Insbesondere bestimmt anfangs, bevor ein Downlink-Teilrahmen mit
Daten gefüllt
wird, der MCP 402, wie viele PS im aktuellen Downlink-Teilrahmen verfügbar sind.
In einem ATDD-System kann die Anzahl der PS in jedem Zeitrahmen
variieren, während in
einem FDD-System die Anzahl der PS konstant bleibt. Dann bestimmt
der MCP 402, wie viele PS jedes Datenpaket benötigt. Diese
Bestimmung erfolgt, wenn ein spezifisches Datenpaket aus dem QoS 412 geholt
wird und die Modulationsart aus der LUT 406 ausgelesen
wird. Die Anzahl der PS, die von einem spezifischen Datenpaket benötigt wird,
kann abhängig
von der Modulationsart unterschiedlich sein, die für das spezifische
Datenpaket benötigt
wird. Beispielsweise kann ein spezifisches Datenpaket N PS benötigen, wenn
es in QAM- 4 übertragen
wird, N/2 PS, wenn es in QAM-16 übertragen
wird, und N/3 PS, wenn es in QAM-64 übertragen wird. Darüber hinaus kann
die FEC-Art, die durch spezifische CPEs 110 verwendet wird,
ebenfalls die Anzahl benötigter
PS ändern
und muss somit auch in die Berechnung einbezogen werden. Sobald
der MCP 402 bestimmt hat, wie viele PS das aktuelle Datenpaket
bei der Modulation des aktuellen CPEs benötigt, wird dieser Betrag von
der Gesamtanzahl der PS subtrahiert, die im Downlink-Teilrahmen
verfügbar
ist, und wird zur neuen Anzahl der PS, die im Downlink-Teilrahmen
verfügbar
ist. Dieser Prozess wird für
jedes Datenpaket wiederholt, das vom QoS 412 empfangen
wird, bis der MCP 402 bestimmt, dass der Datenrahmen sendebereit
ist.
-
Das
Pufferaktualisierungsmodul 516 hängt die CPE-Einstellungen an jeweilige CPE-Daten
an, die im Puffer 408 gespeichert sind. Die CPE-Einstellungen
werden aus der LUT 406 gelesen und können unter anderem Modulationsart,
Verschlüsselung EIN/AUS,
Schlüsselnummer
und Verschlüsselungsnummer
enthalten. Das Pufferaktualisierungsmodul 516 verwendet
die aktuellsten CPE-Einstellungen, wie durch das CPE-Aktualisierungsmodul 510 aktualisiert.
Außerdem
setzt das Pufferaktualisierungsmodul 516 Modemsteuerdaten
in den Datenrahmen ein, der im Puffer 408 gespeichert ist.
Beispielsweise müssen
die erste oder letzte Zelle jeder Modulationsart und die Anzahl
von RS-Blöcken
in jeder Modulationsart angegeben werden. Diese Informationen werden
verwendet, um die Downlink-Abbildungsliste im PHY-Steuerteil 312 des
Rahmensteuerungs-Anfangskennsatzes 300 auszufüllen.
-
In
einer Ausführungsform
können
die CPEs 110 und der MCP 402 drei reziproke Operationen
mit übertragenen
Datenpaketen durchführen,
nämlich Packen/Entpacken,
Unterdrückung
des Nutzdaten-Anfangskennsatzes/Rekonstruktion
des Nutzdaten- Anfangskennsatzes
und Fragmentierung/Defragmentierung. Beispielsweise wird, wenn ein
spezifisches CPE 110 Daten packt, der MCP 402 die
Daten entpacken.
-
Packen
von Downlink-Datenpaketen kann auftreten, wenn mehrere Datenpakete
für dieselbe Endbenutzerverbindung
bestimmt sind. Wenn das Packen nicht verwendet wird, wird jedem
Datenpaket ein MAC-Anfangskennsatz vorangestellt. Wenn mehrere Datenpakete
für dieselbe
Endbenutzerverbindung bestimmt sind, können die wiederholten MAC-Anfangskennsätze nicht
benötigt
werden und können
Bandbreite verschwenden. Daher kann, wenn mehrere Datenpakete für dieselbe
Endbenutzerverbindung bestimmt sind, der MCP 402 in den MAC-Anfangskennsatz
des ersten Datenpakets oder das Paket selbst Informationen einbeziehen,
die ausreichend sind, um die Anzahl folgender Datenpakete zu bestimmen,
die für
dieselben Endbenutzerverbindung bestimmt sind. Dies beseitigt die
Notwendigkeit von MAC-Anfangskennsätzen in den folgenden Datenpaketen,
die für
dieselbe Endbenutzerverbindung bestimmt sind, und kann zusätzliche
Bandbreite für andere
Daten bereitstellen. Wenn Downlink-Daten gepackt sind, entpackt das Empfangs-CPE 110 die Daten
durch Wiedererstellen der MAC-Anfangskennsätze für jedes individuelle Datenpaket.
CPEs 110 können
ebenfalls Daten packen, die durch den MCP 402 zu entpacken
sind.
-
Unterdrückung des
Nutzdaten-Anfangskennsatzes kann vorgenommen werden, wenn ein Paket
höherer
Schicht seinen eigenen Anfangskennsatz hat, d. h. einen Anfangskennsatz,
der nicht durch den MCP oder CMCP erstellt oder verwendet wird,
der nicht vollständig
per Downlink übertragen werden
braucht. Die Unterdrückung
des Nutzdaten-Anfangskennsatzes entfernt einen Teil des Anfangskennsatzes
der höheren
Schicht, der dann durch die Empfangs-CPE 110 rekonstruiert
werden kann. Wenn der MCP 402 die Unterdrückung des Nutzdaten-Anfangskennsatzes
vornimmt, nimmt das CPE 110 die Rekonstruktion des Nutzdaten-Anfangskennsatzes
vor und umgekehrt.
-
Fragmentierung
kann vorgenommen werden, wenn ein Paket höherer Schicht nicht in einen Downlink-Teilrahmen
passen kann. Das Paket höherer
Schicht kann zur Übertragung über eine
Reihe von zwei oder mehr Zeitrahmen fragmentiert werden. Beispielsweise
kann ein spezifisches Datenpaket, das vom QoS empfangen wird, N
komplette Downlink-Teilrahmen auffüllen. Statt alle verfügbare Downlink-Bandbreite
jenem spezifischen Datenpaket N Zeitrahmen lang zuzuteilen, kann
der MCP 402 dem spezifischen Datenpaket einen Bruchteil
F (beispielsweise ½)
der Downlink-Bandbreite zuteilen, sodass das spezifische Datenpaket
nun N·1/F
Zeitrahmen benötigt,
um das Datenpaket per Downlink zu übertragen, andere Datenpakete
aber den übrigen
Bruchteil (1-F) der Bandbreite während
desselben Zeitraums verwenden können.
Das Empfangs-CPE 110 wird die fragmentierten Teile defragmentieren,
um das ganze Datenpaket höherer
Schicht zu bilden. In ähnlicher
Weise kann das CPE 110 Daten fragmentieren, die der MCP 402 defragmentieren
wird.
-
Der
MCP 402 kann auch teilweises Segmentieren und Wiedervereinigen
von Datenpaketen vornehmen. Wenn das CPE 110 ATM-Zellen
empfängt, kann
der MCP 402 die ATM-Zellen in MAC-Pakete variabler Länge umwandeln.
Der MCP 402 kann ATM-Zellen
empfangen, die ein Protokoll höherer Schicht
kapseln, wie z. B. IP. Der MCP 402 kann die Nutzdaten der
ATM-Zellen verketten und sie als MAC-Paket variabler Länge senden.
-
Das
Schnittstellenmodul 520 versieht den MCP 402 mit
einer Schnittstelle zwischen dem Modem 135, der MAC 410 und
dem QoS 412. Wie oben diskutiert, empfängt das Modem 135 die
Inhalte des Puffers 408 alle eine Millisekunde. Das Schnittstellenmodul 520 erlaubt
es der MAC 410, durch Senden des aktuellen Up/Down-Splits,
der PHY/MAC- Steuermitteilung
und der MAC-Protokollmitteilungen von der MAC 410 an den
MCP 402 und Senden der aktuellen DUM vom MCP 402 zur
MAC 410 an den MCP 402 anzukoppeln. Das QoS 412 überträgt Benutzerdaten über das
Schnittstellenmodul 520 an den MCP 402.
-
Das
Lenkungsmodul 522 empfängt Uplink-Daten
von CPEs 110 und lenkt die Daten an den richtigen Ort.
Das Lenkungsmodul 522 bestimmt, ob die Daten MAC-Protokolldaten
oder Benutzerdaten sind, die zur Eingangs-/Ausgangsschnittstelle 150 weiterzuleiten
sind. Diese Bestimmung wird mithilfe der Verbindungs-ID bewerkstelligt,
wie durch die BS-Anrufsteuerung
zugewiesen, die in jedem Paketanfangskennsatz beinhaltet ist. Sind
die Daten MAC-Protokolldaten,
werden die Daten zur Verarbeitung an die MAC 410 weitergeleitet.
Alternativ werden, wenn die Daten Benutzerdaten sind, die letztendlich
den Backhaul 116 erreichen müssen, die Daten an die Eingangs-/Ausgangsschnittstelle 150 weitergeleitet.
-
QoS-Module
-
6 ist
ein Blockschaltbild der Module oberster Ebene innerhalb von QoS 412.
-
Das
Priorisierungsmodul 602 verwendet einen spezifischen Fairness-Algorithmus,
um die Sendereihenfolge gemäß den jeweiligen
QoS-Parametern jeder Verbindung, einschließlich einer Prioritätsstufe,
zu priorisieren. Sowie jedes Datenpaket das QoS 412 verlässt, wird
ihm ein 10-Bit-CPE-Index
vorangestellt, der das bestimmte CPE 110 identifiziert, das
das bestimmte Datenpaket zu empfangen hat. In einer Ausführungsform
gibt es drei grundlegende Fairness-Algorithmen, die implementiert
sind, nämlich:
Continuous-Grant-, Fair-Weighted- und Round-Robin-Queuing. Jedoch
können
abhängig beispielsweise
von den verfügbaren
Dienstleistungen oder Verbindungen, der Anzahl oder Arten von Verbindungen
usw. mehr oder weniger Algorithmen verwendet werden.
-
Continuous-Grant-(„CG"-)-Wartefelder können den
einfachsten Fairness-Algorithmus haben. Alle Daten in diesen Wartefeldern
müssen
jeden Rahmen gesendet werden. Ist die Bandbreite unzureichend, verwirft
das Verwerfmodul 604 Daten auf intelligente Weise.
-
Fair-Weighted-Queuing
erfordert, dass alle Verbindungen bei einer bestimmten Dienstgüte eine ihnen
zugewiesene Gewichtung haben, um den Prozentsatz der verfügbaren Bandbreite
zu bestimmen, die zu empfangen sie berechtigt sind. Die Gewichtung
wird aus einem von drei Datenratenparametern hergeleitet, abhängig von
den vertraglichen Parametern der bereitgestellten Verbindung. Zu
diesen Parametern können
(1) anstehende Daten, (2) garantierte Rate und (3) mittlere Rate
zählen.
In einer Ausführungsform
ist die Gewichtung einer bestimmten Verbindung die für die Verbindung
anstehende Datenmenge, ausgedrückt
als Prozentsatz der gesamten, im Wartefeld anstehenden Daten. Da
die anstehende Datenmenge dynamisch ist, müssen die Gewichtungen für diese
Arten von Wartefeldern jeden Rahmen neu berechnet werden, wenn die
Bandbreite unzureichend ist, um alle Daten im betroffenen Wartefeld
zu senden. Bei Verwendung von Fair-Weighted-Queuing kann die Granularität der Bandbreitenzuteilung
zu grob sein, um eine perfekte prozentsatzbasiert gewichtete Zuteilung über alle
Verbindungen im Wartefeld zu erlauben. Dies kann zur Folge haben,
dass einige Wartefelder in einem bestimmten Rahmen keinerlei Bandbreite
empfangen. Um sicherzustellen, dass das Auftreten dieser Bedingung
fair unter den Verbindungen im Wartefeld verteilt wird, wird den Verbindungen,
die keine Bandbreite empfingen, das nächste Mal, wenn die Bedingung
unzureichender Bandbreite für
das Wartefeld vorliegt, Priorität
erteilt. Bei Wartefeldern mit Gewichtungen, die auf garantierten
oder mittleren Raten basieren, können
einige Verbindungen keine ausreichenden anstehenden Daten haben,
um die gesamte Bandbreite zu verwenden, zu der sie basierend auf
ihrer berechneten Gewichtung berechtigt sind. In diesen Fällen wird
die ungenutzte Bandbreite der Verbindung (innerhalb der Grenzen
der Zuteilungsgranularität)
fair über
die Verbindungen mit überschüssigen anstehenden
Daten verteilt.
-
Der
Round-Robin-Fairness-Algorithmus wird für Verbindungen bester Leistung
verwendet, bei denen alle Verbindungen gleiche Gewichtung haben. Wenn
unzureichende Bandbreite vorhanden ist, um alle Daten im Wartefeld
in einem bestimmten Rahmen zu übertragen,
wird Verbindungen Bandbreite in Round-Robin-Weise zugeteilt, wobei
jede Verbindung einen Block Bandbreite bis zu einem wartefeldspezifischen
Maximum empfängt.
Verbindungen, die keine Bandbreite empfingen, wird das nächste Mal, wenn
die Bedingung unzureichender Bandbreite vorliegt, Priorität erteilt.
-
Das
Verwerfmodul 604 verwirft auf intelligente Weise die Daten
niedrigster Priorität,
wenn das QoS 412 mehr Daten empfangen hat, als in den QoS-Puffer
passen. In einer Ausführungsform
ist der QoS-Puffer groß genug,
um genügend
Daten zu halten, um mehrere Datenrahmen aufzufüllen.
-
Das Übertragungsmodul 606 leitet
die Datenpakete höchster
Priorität
auf Anforderung durch den MCP 402 an den MCP 402 weiter.
Diese Anforderungen erfolgen immer dann, wenn Daten benötigt werden,
um den Downlink-Teil des aktuellen Datenrahmens aufzufüllen.
-
Der Downlink-Prozess
-
7 ist
ein Flussdiagramm, das den Downlink-Prozess zeigt, der durch MCP 402 implementiert ist.
-
In
Schritt 701 werden Daten von der Eingangs-/Ausgangsschnittstelle 150 durch
das QoS 412 empfangen.
-
In
Schritt 702 empfängt
in einem TDD-System der MCP 402 Up/Down-Split-Informationen
von der MAC 140. Der Up/Down-Split wird durch die MAC 140 bestimmt,
wie oben in Bezug auf das Up/Down-Split-Modul 502 beschrieben.
-
Nachdem
der MCP 402 weiß,
wie viel Downlink-Zeit verfügbar
ist, kann der MCP 402 die Gesamtanzahl verfügbarer PS
berechnen. Diese Gesamtanzahl PS kann beim Bestimmen, wie viel Daten bei
veränderlichen
Modulationen und FEC-Arten gesendet werden können, wichtig sein.
-
In
Schritt 704 empfängt
der MCP 402 eine PHY/MAC-Steuermitteilung und MAC-Protokollmitteilungen
von der MAC 140. Die PHY/MAC-Steuermitteilung wird an alle
CPEs 110 im Sektor rundgesendet und kann Informationen
hinsichtlich der physikalischen Schicht, des maximalen Übertragungs-Zeitsteuerungs-Vorlaufs,
des Downlink-Modulations-Übergangspunktes,
des Endpunktes des Downlinks, des Endpunktes des Rahmens und der Rahmen/Mehrfachrahmen/Hyperrahmen-Nummerierung
beinhalten. In einer alternativen Ausführungsform können die
PHY/MAC-Steuermitteilungen
durch den MCP bestimmt werden, was zusätzlichen Overhead von der Software
der MAC 140 entfernen kann.
-
In
einer Ausführungsform
wird die PHY/MAC-Steuermitteilung RS-codiert, unter Verwendung von
QAM-4-Modulation übertragen,
wird aber nicht verschlüsselt.
QAM-4-Modulation kann verwendet werden, um sicherzustellen, dass
alle CPEs 110 in der Lage sind, die Steuermitteilungen
zu demodulieren. In einer anderen Ausführungsform sind die Codierungs-,
die Verschlüsselungs-
und die Modulationsart für
jede MAC 104 einer BS 104 spezifisch. Wenn die
PHY/MAC-Steuermitteilung
durch MCP 402 empfangen wird, wird sie unverzüglich zur späteren Übertragung
zum Modem 135 (untern diskutiert) im Puffer 408 platziert.
In einer Ausführungsform
wird die PHY/MAC-Steuermitteilung am Anfang des QAM-4-Abschnitts
des Puffers 408 platziert. Teile der PHY/MAC-Steuermitteilung,
die im Puffer 408 gespeichert ist, können später in Schritt 722 gemäß dem tatsächlichen
Inhalt des Puffers 408 unmittelbar vor dem Transfer zum
Modem 135 in Stufe 724 aktualisiert werden.
-
MAC-Protokollmitteilungen
werden nur an einzelne CPEs 110 gemäß den bestimmten CPE-Einstellungen
gesendet. Weil eine MAC-Protokollmitteilung für ein spezifisches CPE 110 vorgesehen
ist, kann Transferrahmenbandbreite bewahrt werden, indem die MAC-Protokollmitteilung
unter Verwendung der Modulations- und/oder FEC-Einstellungen des
spezifischen CPE 110 übertragen
wird. Beispielsweise ist ein bestimmtes CPE 110, das QAM-64-Modulation
verwendet, auch fähig, QAM-16-
und QAM-4-Modulation zu verwenden. Statt eine Protokollmitteilung,
die für
dieses bestimmte CPE vorgesehen ist, unter Verwendung von QAM-4
zu modulieren, wird somit durch Verwendung der bandbreiteneffizienteren
QAM-64-Modulation Bandbreite bewahrt. MAC-Protokollmitteilungen
wird die höchste
Priorität
erteilt, was bedeutet, dass sie stets am Anfang der zweckentsprechenden
Modulationsgruppe sind. Weil ihnen die höchste Priorität erteilt
wird, kann jede BS-MAC 410 einen Grenzwert für die Anzahl
Protokollmitteilungen festlegen, die pro Datenrahmen zulässig ist
(beispielsweise 10). Während
typischerweise nur sehr wenige MAC-Protokollmitteilungen benötigt werden,
kann das Begrenzen der Anzahl pro Datenrahmen das Auffüllen eines ganzen
Datenrahmens oder einer Modulationsgruppe innerhalb eines Datenrahmens
mit Protokollmitteilungen und das Ausschließen aller Benutzerdaten verhindern.
Wenn der MCP 402 MAC-Protokollmitteilungen
empfängt,
werden sie unverzüglich
gemäß der Modulationsart
des vorgesehenen CPE 110 im Puffer 408 gespeichert.
-
MAC-Protokollmitteilungen
können
in sechs Unterkategorien geteilt werden, nämlich Registrierung, Wartung
der physikalischen Schicht, Wartung der Verbindung, Sicherheit,
Lastverteilung und Allgemeines. Die Registrierungs-Unterkategorie kann
Registrierungs- und Entfernungserfassungs-Mitteilungen, die vom
CPE 110 zur MAC 410 gesendet werden, und Registrierungsergebnisse,
Entfernungserfassungs-Ergebnisse, Wiederregistrier-, und Registrierungskollisions-Mitteilungen
beinhalten, die von der MAC 410 zum CPE 110 gesendet
werden. Die Unterkategorie für
Wartung der physikalischen Schicht kann Modulationsänderungs-,
FEC-Änderungs-,
Tx-Vorlaufänderungs- und Leistungseinstellungs-Mitteilungen
von der MAC 410 an das CPE 110 und Modulationsänderungs-Bestätigungs-,
FEC-Änderungs-Bestätigungs-,
Tx-Vorlaufänderungs-Bestätigungs-,
Leistungseinstellungs-Bestätigungs-
und Downlink-Modulationsänderungs-Anforderungsmitteilungen
vom CPE 110 an die MAC 410 beinhalten. Die Unterkategorie
für Wartung
der Verbindung kann Bandbreitenanfragen und Mehrfachsendungszuordnungs-Bestätigungsmitteilungen
vom CPE 110 an die MAC 410 und eine Mehrfachsendungszuordnungs-Mitteilung von der
MAC 410 an das CPE 110 beinhalten. Die Sicherheits-Unterkategorie
kann eine Schlüsselsequenz-Mitteilung von der
MAC 410 an das CPE 110 und eine Schlüsselsequenz-Bestätigung vom
CPE 110 an die MAC 410 beinhalten. Die Lastverteilungs-Unterkategorie
kann eine Kanaländerungs-Mitteilung
von der CPE 110 an die MAC 410 und eine Kanaländerungs-Bestätigung von
der MAC 410 an das CPE 110 beinhalten. Die Unterkategorie für Allgemeines
kann eine allgemeine Mitteilung beinhalten, die in jede der beiden
Richtungen gesendet werden kann, d. h. an die MAC 410 vom
CPE 110 oder von der MAC 410 an das CPE 110.
-
In
Schritt 708 empfängt
der MCP 402 ein Datenpaket vom QoS 412, das einen
CPE-Index hat, der dem Datenpaket vorangestellt ist. Das QoS 412 hält Downlink-Daten
dazu im Wartefeld, dass MCP 402 Datenpakete daraus holen
kann. Mit Schritt 708 beginnt die Datenrahmen-Schleife
(Schritte 708 bis 720), die jeden Datenrahmen
systematisch auffüllt. Der
Co-Prozessor 402 steuert den Betrieb des MCP 132 durch
die Schritte 708–720.
Sind keine Daten durch das QoS 412 in das Wartefeld eingereiht,
wartet MCP 402 darauf, dass Daten verfügbar werden, bis der aktuelle
Eine-Millisekunden-Zeitrahmen
abgeschlossen ist. An jenem Punkt überträgt der MCP 402 das,
was an Daten gegenwärtig
im Puffer 408 ist, zum Modem 135 (dieser Prozess
wird unten diskutiert).
-
In
Schritt 710 verwendet in einer ersten Ausführungsform
der MCP 402 den CPE-Index aus dem empfangenen Datenpaket,
um auf die zweckentsprechenden CPE-Einstellungen in der LUT 406 zuzugreifen.
In einer zweiten Ausführungsform
wird die QoS-Funktionalität
durch den MCP 402 ausgeübt, sodass
die Datenpakete durch den MCP 402 direkt vom Eingang/Ausgang 150 empfangen
werden und der MCP 402 die Verbindungs-ID verwendet, um
die zweckentsprechenden CPE-Einstellungen zu bestimmen, die aus
der LUT 406 zu holen sind.
-
Wie
weiter vorn erklärt,
wird die LUT 406 durch die MAC 410 aktualisiert
und kann die für
das CPE 110 spezifischen Informationen beinhalten, wie z.
B. Modulationsart, FEC-Art, Flag für Verschlüsselung EIN/AUS, Schlüsselnummer
und Verschlüsselungsschlüssel. Nun
kann der MCP 402 die exakte Anzahl PS berechnen, die für das aktuelle
Datenpaket bei der spezifizierten Modulation (der Modulation aus
der LUT 406 entsprechend des Ziel-CPE 110) erforderlich
ist.
-
In
Schritt 712 dekrementiert der MCP 402 die aktuell
verfügbare
Downlink-Bandbreite um die Bandbreite des aktuellen Datenpakets.
Insbesondere erfolgt diese Berechnung durch Subtrahieren der Anzahl
PS, die durch das aktuelle Datenpaket bei der spezifizierten Modulation
des CPE 110 benötigt
wird, von der Anzahl PS, die im Downlink-Teilrahmen verfügbar ist. Diese Berechnung
muss unter Verwendung der PS statt der Rohgröße (z. B. der Anzahl Bytes)
erfolgen, weil die Anzahl PS, die durch jedes spezifische CPE 110 benötigt wird,
von der Modulationsart jenes spezifischen CPE 110 anhängig ist.
Beispielsweise kann ein spezifisches Datenpaket N PS benötigen, wenn
es in QAM-4 übertragen
wird, N/2 PS, wenn es in QAM-16 übertragen
wird, und N/3 PS, wenn es in QAM-64 übertragen wird. Darüber hinaus kann
die FEC-Art, die durch spezifische CPEs 110 verwendet wird,
ebenfalls die Anzahl benötigter
PS ändern
und muss somit auch in die Berechnung einbezogen werden. Die resultierende
Anzahl übriger PS
wird in Schritt 720 durch den MCP 402 verwendet,
um zu bestimmen, ob der aktuelle Datenrahmen gefüllt ist.
-
Zwischen
den Schritten 710 und 714 nimmt der MCP jedwede
Kombination aus Packen, Unterdrückung
des Nutzdaten-Anfangskennsatzes
und Fragmentierung vor. Wie oben diskutiert, können Packen, Unterdrückung des
Nutzdaten-Anfangskennsatzes
und Fragmentierung verwendet werden, um die Effizienz des Kommunikationssystems
zu steigern.
-
In
Schritt 714 wird das empfangene Datenpaket im Puffer gespeichert
und sortiert. Datenpakete können
nach jedweder Kombination aus Folgendem sortiert werden: Modulationsart,
FEC-Art, CPE-Index und Endbenutzerverbindungs-ID. Beispielsweise können in
einer Ausführungsform
Datenpakete zuerst nach Endbenutzerverbindungs-ID, dann nach CPE-Index
und schließlich
nach Modulationsart sortiert werden. In einer anderen Ausführungsform
können
Datenpaket nur nach FEC-Art sortiert werden. In noch einer anderen
Ausführungsform
können
Datenpaket zuerst nach CPE-Index und dann nach FEC-Art sortiert
werden. Es wird erwogen, dass jedwede Kombination der aufgeführten Sortierkriterien (Modulationsart,
FEC-Art, CPE-Index und Endbenutzerverbindungs-ID) verwendet werden
kann.
-
Im
Beispiel nach 7 werden die Datenpakete nach
Modulationsart sortiert. In dieser Ausführungsform kann das Sortieren
dadurch bewerkstelligt werden, dass der MCP 402 das empfangene
Datenpaket an einen von drei Teilen eines Puffers 408 sendet,
der in QAM-4-, QAM-16 und QAM-64-Teile geteilt ist. Mithilfe der
in Schritt 710 abgerufenen CPE-Einstellungen speichert der MCP 402 das
aktuelle Datenpaket in dem Teil von Puffer 408, welcher der
durch das aktuelle CPE 110 ausgewählten Modulationsart entspricht.
-
In
Schritt 716 werden die CPE-Einstellungen und die Modem-Steuerinformationen
an Datenpakete im Puffer 408 angehängt. Die CPE-Einstellungen, die
aus der LUT 406 entsprechend dem aktuellen CPE 110 ausgelesen
wurden, sind im Puffer 408 nächst dem empfangenen Datenpaket
gespeichert, das im Schritt 714 im Puffer 408 gespeichert
wurde. Dementsprechend können
die CPE-Einstellungen abhängig
von der Modulationsart des aktuellen CPE 110 in jedwedem
der drei Teile von Puffer 408 gespeichert sein. Die Modem-Steuerinformationen
werden ebenfalls an das empfangene Datenpaket angehängt, das
im Puffer 408 gespeichert ist.
-
In
Schritt 718 bestimmt der MCP 402, ob eine Zeitüberschreitung
eines vorgegebenen Zeitraums (beispielsweise eine Millisekunde)
aufgetreten ist. Das Kommunikationssystem 100 verwendet
einen statischen Zeitrahmen, um alle BS-MACs 410 und CPEs 110 in
der Zelle synchronisiert zu halten. Im Falle, dass der Puffer 408 nicht
vollständig
gefüllt ist,
wenn die Eine-Millisekunde-Zeitüberschreitung aufgetreten
ist, müssen
die bereits im Puffer befindlichen Daten gesendet werden, um die
Synchronizität des
Systems zu erhalten. In einer Ausführungsform füllt, wenn
der Puffer 408 nicht gefüllt ist, wenn eine Zeitüberschreitung
auftritt, das Modem 135 die leeren Datenblöcke mit
Füllzellen
oder -bytes auf, um die Zeitabstimmung zwischen Modulationsgruppen zu
erhalten. In einer anderen Ausführungsform
füllt der
MCP 402 die leeren Datenblöcke im Puffer 408 vor
dem Senden des Datenrahmens zum Modem 135 auf (Schritt 724).
-
Gemäß Schritt 718 bestimmt
der MCP 402, ob eine Eine-Millisekunden-Zeitüberschreitung aufgetreten ist.
Ist die Zeitüberschreitung
nicht aufgetreten, fährt
der Verfahrensablauf mit Schritt 720 fort, in dem MCP 402 bestimmt,
ob Puffer 408 gefüllt
ist.
-
In
Schritt 720 verwendet MCP 402 die Berechnung aus
Schritt 712, um zu bestimmen, ob der Puffer 408 gefüllt ist
(d. h., genügend
Daten enthält, um
den Downlink-Teilrahmen zu füllen).
Diese Bestimmung erfolgt mithilfe der Anzahl PS, die zum Auffüllen übrig sind
(wie in Schritt 712 bestimmt). Bestimmt der MCP 402,
dass der Puffer 408 gefüllt
ist, kehrt der Verfahrensablauf zu Schritt 718 zurück, wo MCP 402 darauf
wartet, dass die Eine-Millisekunden-Zeitüberschreitung
auftritt. Im Falle, dass der Puffer 408 gefüllt ist,
bevor die Eine-Millisekunden-Zeitüberschreitung
auftritt, wiederholt der MCP 402 die Entscheidungsblöcke 720 und 718,
bis die Eine-Millisekunden-Zeitüberschreitung
auftritt. Alternativ kehrt, wenn der Puffer 408 nicht gefüllt ist,
der Verfahrensablauf zu Schritt 708 zurück, in dem der MCP 402 ein
anderes Datenpaket vom QoS 412 empfängt., Somit setzt der MCP 402 die
Schleife zwischen 708 und 720 fort, bis entweder
der Puffer 408 gefüllt
ist oder die Eine-Millisekunden-Zeitüberschreitung
auftritt.
-
Gemäß Schritt 718 fährt, wenn
eine Eine-Millisekunden-Zeitüberschreitung
aufgetreten ist, der Verfahrensablauf mit Schritt 722 fort,
in dem der MCP 402 den Downlink-Abbildungslisten-Teil der PHY/MAC-Steuermitteilung
im Puffer 408 aktualisiert, bevor er die Daten überträgt.
-
In
Schritt 722 aktualisiert der MCP 402 die Modulationsunterbrechungen
oder FEC-Übergänge in der PHY/MAC-Steuermitteilung.
In einem TDD-System war der Up/Down-Split, der in Schritt 702 durch
den MCP 402 empfangen wird, eine Abschätzung des erwarteten Up/Down-Splits. Die MAC 410 weiß nicht,
wie viel Daten tatsächlich
am QoS 412 auf Übertragung
warten, sondern verwendet andere Faktoren (oben in Bezug auf das MAC-Up/Down-Split-Modul 502 diskutiert)
um einen vorläufigen
Up/Down-Split zu bestimmen. Nur wenn die Eine-Millisekunden-Zeitüberschreitung
auftritt, weiß der
MCP 402, wie viel Downlink-Daten innerhalb der zugeteilten
Downlink-Bandbreite
beinhaltet sind. Unter einem Aspekt wirkt der in Schritt 702 empfangene
Up/Down-Split als oberer Grenzwert oder, anders ausgedrückt, als
Grenzwert für
die Downlink-Datenmenge,
die im aktuellen Datenrahmen zulässig
ist. Wenn ein bestimmter Datenrahmen nicht gefüllt ist, wenn die Zeitüberschreitung
auftritt, kann der MCP 402 den Up/Down-Split aktualisieren. Wenn der Up/Down-Split
aktualisiert ist, d. h. der Downlink-Teilrahmen gekürzt ist,
gibt es einen Zeitraum zwischen Downlink und Uplink, in dem Daten durch
die BS 104 weder gesendet noch empfangen werden. Dieser übertragungsfreie
Zeitraum kann Interferenzen im Gesamtsystem verringern. Dieser übertragungsfreie
Zeitraum kann den übrigen
Teil des Downlinks auffüllen.
Weil der Up/Down-Split aktualisiert worden ist, kann jedes der Empfangs-CPEs 110 jedwedes
Rauschen in diesem Zwischen-Zeitrahmen
außer
Acht lassen. Somit schützt
die Aktualisierung des Up/Down-Splits CPEs 110 davor, Rauschen
zwischen den Downlink- und Uplink-Teilrahmen fälschlicherweise für gesendete
Daten zu halten. Dementsprechend kann die Downlink-Abbildungsliste
in Schritt 722 aktualisiert werden.
-
Auch
erlaubt es Schritt 722 dem MCP 402, Modulations-
und FEC-Übergangspunkte
im abgehenden Datenrahmen sowohl in TDD- als auch in FDD-Systemen
zu aktualisieren. In ähnlicher
Weise wie oben diskutiert weiß weder
das QoS 412 noch die MAC 410, wie viel Daten in
jeder Modulationsgruppe übertragen
werden. Dementsprechend kann erst, nachdem die Zeitüberschreitung
des vorgegebenen Zeitraums aufgetreten ist, der MCP 402 die
tatsächlichen
Modulationsübergangsorte
kennen. Beispielsweise zeigen in einem bestimmten Datenrahmen, wenn
der Puffer 408 mit 10% QAM-4-Daten, 10% QAM-16-Daten und
80% QAM-64-Daten gefüllt
ist, die Modulationsübergangspunkte
an, dass die ersten 10% des Zeitrahmens QAM-4-Daten sind, die folgenden
10% des Zeitrahmens QAM-16-Daten sind und die übrigen 80% des Zeitrahmens
QAM-64-Daten sind. Dementsprechend erlaubt es Schritt 722 dem MCP 402,
Modulationsübergänge derart
innerhalb des Puffers 408 zu aktualisieren, dass die Modulationsübergänge beschrieben
werden. Weil die Modulationsübergänge Teil
der PHY/MAC-Steuermitteilung sind, die alle CPEs 110 empfangen,
hat jedes CPE 110 Kenntnis über die Startorte jeder Modulationsgruppe.
In einer Ausführungsform,
die Daten nach FEC sortiert, wird der obige Prozess verwendet, um
FEC-Übergangspunkte
zu aktualisieren. In noch einer anderen Ausführungsform kann ein System
Daten nach jedweder Kombination aus Modulations- und FEC-Arten sortieren. In einer derartigen
Ausführungsform
kann ein Sortierprozess ähnlich
jenem verwendet werden, der oben diskutiert wurde.
-
In
Schritt 724 werden alle Daten im Puffer 408 an
das Modem 135 übergeben.
Als Folge der vorhergehenden Schritte beinhalten die Daten nun alle
Informationen, die für
das Modem notwendig sind, um die Daten korrekt zu senden, sodass
jedes Empfangs-CPE 110 seine jeweiligen Daten effizient empfangen
kann.
-
8 ist
ein Flussdiagramm, das den Betrieb der MAC 410 während eines
einzelnen Kommunikations-Zeitrahmens darstellt.
-
In
Schritt 802 empfängt
in einem TDD-System die MAC 410 eine DUM vom MCP 402,
welche die tatsächliche
Downlink- Datenmenge
angibt, die im vorherigen Zeitrahmen gesendet wurde (oben unter Bezug
auf DUM-Modul 504 diskutiert). In einem ATDD-System wird
die DUM durch die MAC 410 in Schritt 806 verwendet,
um einen Up/Down-Split für den
nachfolgenden Zeitrahmen abzuschätzen.
Wie oben erklärt,
besteht in einem FDD-System weniger Notwendigkeit für DUM, weil
die Downlink- und Uplink-Zeitrahmen konstant bleiben (d. h. beide
einen ganzen Zeitrahmen eines vorgegebenen Zeitraums verwenden).
Somit kann die tatsächliche Downlink-Datenmenge, die in
einem vorherigen Zeitrahmen gesendet wurde, in einem FDD-System
nicht von Bedeutung sein. In einer Ausführungsform eines FDD-Systems
hat die DUM einen sekundären
Zweck der Statistikerfassung und der Bestimmung von Verbindungsüberlast.]
-
In
Schritt 804 wird die MAC 410 mit anderen MACS 410 in
derselben BS 104 koordiniert. Wie oben unter Bezug auf
das MAC-Koordinationsmodul 506 diskutiert, können die
Uplink- und Downlink-Zeiten
für jeweilige
MACs 410 in derselben BS 104 eingestellt werden,
um HF-Interferenz zu reduzieren.
-
In
Schritt 806 bestimmt in einem TDD-System die MAC 420 einen
Up/Down-Split und überträgt den bestimmten
Split an den MCP 402. Wie oben unter Bezug auf das Up/Down-Split-Modul 502 diskutiert,
bestimmt in einem TDD-System die MAC 420, wie die Eine-Millisekunden-Bandbreite
zwischen Downlink- und Uplink-Daten aufgeteilt werden sollte. Beim
Bestimmen eines zweckentsprechenden Up/Down-Splits können mehrere
Faktoren betrachtet werden, wie z. B. die Up/Down-Splits anderer MACs 410 in
derselben BS 104, Uplink-Bandbreitenbedarf und Einstellungen
von CPE 110, wie z. B. Zugriffs-, Modulations- und Dienstgüte-Anforderungen.
-
In
Schritt 808 übergibt
die MAC 420 eine PHY/MAC-Steuermitteilung und MAC-Protokollmitteilungen
an den MCP 402. Wie oben erklärt, ist die PHY/MAC-Steuermitteilung
eine Rundsendemitteilung, die durch alle CPEs 110 am Anfang des
Downlink-Teilrahmens empfangen wird. Beispielsweise befindet sich
im System nach 2A, das nach Modulationsart
sortiert, die PHY/MAC-Steuermitteilung am Anfang der QAM-4-Modulationsgruppe.
MAC-Protokollmitteilungen
sind für
das CPE 110 spezifische Mitteilungen, die nach den Einstellungen
des spezifischen CPE 110 moduliert sind und durch die CPEs 110 am
Anfang der jeweiligen Modulationsgruppe empfangen werden.
-
Teiler 809 gibt
eine Unterteilung zwischen den Downlink- und Uplink-Prozessen der MAC 420 an.
Anders ausgedrückt,
sind an den Schritten 802 und 808 die Downlink-Daten
der MAC 420 beteiligt, während an den Schritten 810 und 812 die Uplink-Daten
der MAC 420 beteiligt sind.
-
In
Schritt 810 empfängt
die MAC 420 neue CPE-Registrierungen.
Wie oben erwähnt,
pflegt die MAC 420 die CPE-Einstellungen sowohl innerhalb der
MAC 420 als auch der LUT 406. Wenn neue CPEs 110 registriert
werden, werden CPE-Einstellungen
an beiden Orten aktualisiert, um das neue CPE 110 zu beinhalten.
Darüber
hinaus kann die MAC 420 Änderungen an den CPE-Einstellungen
für ein
bestimmtes CPE 110 empfangen, die das Aktualisieren der
CPE-Einstellungen an beiden Orten erfordern.
-
In
Schritt 812 teilt die MAC 420 Uplink-Bandbreite
gemäß dem Uplink-Bandbreitenanfragen
von CPEs 110 zu. Dieser Prozess ist durch das Uplink-Bandbreitenmodul 507 gesteuert,
wie oben diskutiert. Im Allgemeinen werden Bandbreitenanfragen von
CPEs 110 empfangen, die verfügbare Bandbreite innerhalb
des Uplink-Teilrahmens wird CPEs 110 zugeteilt und die
Zuteilung wird in einer Uplink-Abbildungsliste
von der BS 104 an die CPEs 110 gesendet, sodass
jedes CPE 110 Daten während seiner
bestimmten zugewiesenen Zeit per Uplink übertragen kann. Die durch jedes
CPE 110 empfangene Uplink-Abbildungsliste wird im nachfolgenden Zeitrahmen
verwendet. Somit gibt die durch CPEs 110 im Zeitrahmen
T empfangene Uplink-Abbildungsliste an, wann bestimmte CPEs 110 Uplink-Daten
während
des Uplink-Teils des Zeitrahmens T + 1 senden werden.
-
In
einer alternativen Ausführungsform
teilt der MCP 402 Uplink-Bandbreite zu und generiert die Uplink-Abbildungsliste.
In dieser Ausführungsform können, weil
der MCP 402 ein Hardware-Gerät ist, die Uplink-Bandbreitenanfragen
und somit die Uplink-Abbildungsliste schneller als in einer Ausführungsform
erstellt werden, welche die Uplink-Abbildungsliste in der MAC 420 erstellt.
Auf diese Weise kann in einem ATDD-System der Up/Down-Split in Echtzeit
eingestellt werden, was ermöglicht,
dass ungenutzte Teile des aktuellen Downlink-Teilrahmens durch den
Uplink-Teilrahmen verwendet werden. Insbesondere kann die durch
CPEs 110 im Zeitrahmen T empfangene Uplink-Abbildungsliste angeben, wann
bestimmte CPEs 110 Uplink-Daten während des Uplink-Teils des
Zeitrahmens T senden werden.
-
9 ist
ein Flussdiagramm, das den Uplink-Prozess der vorliegenden Erfindung
zeigt.
-
In
Schritt 902 empfängt
das Modem 135 ein Datenpaket von einer spezifischen CPE 110.
Insbesondere werden während
eines Uplink-Teils eines Zeitrahmens Daten durch die BS-ODU 108 gemäß den Zeitsteuerungs-Anforderungen
der aktuellen Uplink-Abbildungsliste empfangen. Diese Daten werden
dann zum Modem 135 übertragen.
-
In
Schritt 904 wird ein Datenpaket, sobald es durch das Modem 135 empfangen
worden ist, demoduliert und zum MCP 402 weitergeleitet.
Das Modem 135 stützt
sich auf die Uplink-Abbildungsliste,
um zu bestimmen, wann Daten von spezifischen CPEs 110 in
gewissen Modulationen/FEC ankommen werden. Das Modem 135 kann
Zugriff auf die Uplink-Abbildungsliste
aus einer von drei Quellen erlangen, nämlich es kann das Modem 135 die
Uplink-Abbildungsliste abfangen, welche die MAC 410 an
die mehreren CPEs 110 gesendet hat, es kann das Modem 135 die Uplink-Abbildungsliste vom
MCP 402 empfangen oder es kann das Modem 135 die
Uplink-Abbildungsliste von der MAC 410 empfangen.
-
In
Schritt 906 entfernt der MCP 402 oder das Modem 135 jedwede
Auffüllungen
aus den empfangenen Daten. Wenn ein bestimmtes CPE 110 nicht genügend Daten
hat, um einen zugeteilten Uplink-Zeitrahmen aufzufüllen, kann
das CPE 110 Füllzellen
oder -bytes anstelle von Daten aus Verbindungen übertragen.
-
In
Schritt 908 bestimmt der MCP 402, ob die Daten
MAC-Protokolldaten
oder Benutzerdaten sind, die zur Eingangs-/Ausgangsschnittstelle 150 weiterzuleiten
sind. Diese Bestimmung wird mithilfe der Verbindungs-ID bewerkstelligt,
wie durch die BS-Anrufsteuerung zugewiesen, die im Paketanfangskennsatz
beinhaltet ist. Sind die Daten MAC-Protokolldaten, werden die Daten gemäß Schritt 910 zur Verarbeitung
an die MAC 410 weitergeleitet. Alternativ werden, wenn
die Daten Benutzerdaten sind, die letztendlich den Backhaul 116 erreichen
müssen,
die Daten gemäß Schritt 912 an
die Eingangs-/Ausgangsschnittstelle 150 weitergeleitet.
-
Die
vorstehende ausführliche
Beschreibung der 1–9 erfolgte
unter Bezug auf die Funktionalität
eines MCP in einer BS 104. In einer Ausführungsform
werden die Downlink-Daten
durch eine MAC in jedem der CPEs 110 empfangen. Umgekehrt sendet
die MAC in jeder der CPEs 110 Uplink-Daten an die BS 104.
Somit gibt es in dieser bestimmten Ausführungsform keinen MCP oder
kein QoS in den CPEs 110, sodass die MAC in den CPEs 110 die Funktionen
ausüben
kann, die typischerweise durch das QoS und den MCP übernommen
werden.
-
CPE-MAC-Co-Prozessor
-
10 ist
ein Blockschaltbild einer Ausführungsform
eines CPE-Steuermoduls einschließlich eines MAC-Co-Prozessors. In der
Ausführungsform nach 10 hat
jedes CPE 110 eine MAC und einen CPE-MAC-Co-Prozessor („CMCP"). Der CMCP übt zusätzlich zum
Ausüben
einer Priorisierungsfunktion ähnlich
dem QoS 412 viele Funktionen ähnlich dem MCP 402 in
der BS 104 aus. Nun folgt eine ausführliche Beschreibung dieser
Funktionen.
-
Der
CMCP 450 fordert Uplink-Bandbreite von der BS 104 mithilfe
eines Wettbewerbsschlitzes, von Aufsatteln, von Bandbreiten-Stehlen
oder eines Abfragebits im Uplink-Daten-Anfangskennsatz an. Wie oben angemerkt,
teilt die MAC 410 (in der BS 104) Uplink-Bandbreite
unter allen CPEs 110 zu, die Uplink-Bandbreite anfordern.
Die MAC 410 überträgt die Bandbreitenzuteilungen
in Form einer Uplink-Abbildungsliste an die CPEs 110. In
einer Ausführungsform
fordern CPEs 110 Bandbreite auf Pro-Verbindungs-Basis an,
und ihnen wird Bandbreite auf Pro-CPE-110-Basis gewährt. Anders
ausgedrückt, kann,
auch wenn eine CPE 110 Uplink-Bandbreite in Namen einer
spezifischen Endbenutzerverbindung anfordern kann, wenn die Uplink-Bandbreite
dem CPE 110 zugeteilt wird, der CMCP 450 bestimmen, dass
eine unterschiedliche Endbenutzerverbindung die Uplink-Bandbreite
verwendet.
-
Der
Puffer 456 kann kontinuierlich von mehreren Endbenutzerverbindungen
Daten zur Uplink-Übertragung
empfangen. Die Endbenutzerverbindungen senden keine Anfragen zum
CPE 110, sondern senden stattdessen die Daten, die sie
per Uplink zu übertragen
wünschen.
Die empfangenen Daten werden im Puffer 456 gespeichert,
nach Verbindungs-ID indiziert, bis sie an die BS-MAC 410 gesendet
werden. Der CMCP 450 hält
einen Echtzeit-Zählwert
der Daten, die im Puffer 456 für jede jeweilige Endbenutzerverbindung gespeichert
sind. Auf diese Weise kennt der CMCP 450 zusätzlich zur Gesamtmenge,
die von jeder einzelnen Endbenutzerverbindung zum Uplink bereit
ist, stets die Gesamtdatenmenge, die zum Uplink bereit ist.
-
Bei
im Puffer 456 auf Uplink wartenden Daten fängt der
CMCP 450 die (für
die CPE-MAC 410 bestimmte) Uplink-Abbildungsliste ab, um zu bestimmen,
wie viel Uplink-Bandbreite
dem einzelnen CPE 110 zugeteilt worden ist. Dann bestimmt
der CMCP 450, wie viel Daten bei der Modulation des spezifischen
CPEs in die zugeteilte Bandbreite passen können. Die LUT 454 speichert
spezifische Endbenutzerverbindungs-Einstellungen, wie z. B. eine
Endbenutzerverbindungs-Priorität
und QoS-Parameter, die jeder Endbenutzerverbindung zugeordnet sind.
Dann führt
der CMCP 450 Priorisierungsfunktionen an den Daten aus,
die in Puffer 456 gespeichert sind. Insbesondere werden
QoS-Parameter einschließlich einer Priorität, die jeder
Endbenutzerverbindung bei im Puffer 456 wartenden Daten
zugeordnet sind, aus der LUT 454 geholt und werden durch
den CMCP 450 verwendet, um die Daten mithilfe eines Continuous-Grant-,
Fair-Weighted-, Round-Robin- oder anderen Priorisierungsschemas
zu priorisieren. In einer Ausführungsform
hat Puffer 456 einen priorisierten Teil, der verwendet
wird, um die priorisierten Daten zu speichern, die zum Uplink bereit
sind.
-
Der
CMCP 450 bestimmt, ob es genügend zugeteilte Bandbreite
im aktuellen Uplink-Teilrahmen gibt, um alle im Puffer 456 wartenden
Daten zu senden, oder alternativ, ob der CMCP 450 zusätzliche Bandbreite
von der MAC 410 anfordern muss. Wenn zusätzliche
Bandbreite benötigt
wird, kann der CMCP zusätzliche
Bandbreite durch Senden einer Wettbewerbsschlitz-Anfrage, Aufsatteln
einer Anfrage oder Stehlen von Bandbreite von Daten geringerer Priorität oder Setzen
eines Abfragebits im MAC-Anfangskennsatz der gegenwärtig zugeteilten Uplink-Daten
anfordern. Wenn einem CPE 110 Bandbreite im aktuellen Uplink-Teilrahmen
zugeteilt worden ist, kann der CMCP ein Abfragebit in seinem Uplink-MAC-Anfangskennsatz
setzen, um der MAC 410 mitzuteilen, dass der spezifische
CMCP 450 mehr Daten zum Übertragen per Uplink hat. Wenn
einem CPE 110 keine Bandbreite im aktuellen Uplink-Teilrahmen
zugeteilt worden ist, muss der CMCP eine Anfrage in einem Bandbreitenanfrage-Wettbewerbsschlitz 324 (2B)
senden, eine Anfrage aufsatteln oder Bandbreite für eine Anfrage von
Daten geringerer Priorität
von einem unterschiedlichen CPE 110 stehlen. Als Beispiel
kann, wenn einem bestimmten CPE 110 im aktuellen Uplink-Teilrahmen
keinerlei Bandbreite zugeteilt worden ist und das bestimmte CPE 110 eine
geringere Priorität
als alle anderen CPEs 110 hat, denen Bandbreite im aktuellen
Uplink-Teilrahmen zugeteilt worden ist, das bestimmte CPE 110 nur
in der Lage sein, eine Anfrage während
des Bandbreitenanfrage-Wettbewerbsschlitzes 324 (2B)
zu senden. Somit haben alle CPEs 110 stets mindestens ein
Mittel zum Anfordern von Uplink-Bandbreite.
-
Dann
erstellt der CMCP 450 unter Verwendung von Daten, die aus
dem priorisierten Teil des Puffers 456 geholt werden, in ähnlicher
Weise, wie oben in Bezug auf den MCP beschrieben, einen Uplink-Datenburst.
Ein Datenburst kann jedwede Kombination aus Benutzerdaten und Steuerinformationen
sein.
-
In
einer zweiten Ausführungsform
verschiebt der Puffer 456 die priorisierten Daten nicht
in einen unterschiedlichen Abschnitt, sondern sortiert stattdessen
eine Reihe von Pointern, welche den Orte von im Puffer 456 gespeicherten
Daten anzeigen. Der CMCP 450 kann einen Uplink-Datenburst
mithilfe von Daten erstellen, die aus den Gebieten geholt werden,
die durch die priorisierten Pointer angezeigt werden.
-
In
einer Ausführungsform
können
der CMCP 450 und der MCP 402 drei reziproke Operationen
mit übertragenen
Datenpaketen durchführen,
nämlich Packen/Entpacken,
Unterdrückung
des Nutzdaten-Anfangskennsatzes/Rekonstruktion
des Nutzdaten-Anfangskennsatzes
und Fragmentierung/Defragmentierung. Beispielsweise wird, wenn ein
CMCP 450 Daten packt, der MCP die Daten entpacken. In einer
anderen Ausführungsform
können
der CMCP 450 und die BS-MAC 410 reziprokes Packen/Entpacken
und ebensolche Unterdrückung
des Nutzdaten-Anfangskennsatzes/Rekonstruktion des Nutzdaten-Anfangskennsatzes
und Fragmentierung/Defragmentierung durchführen. Beispielsweise wird,
wenn ein CMCP 450 Daten packt, die MAC 410 die
Daten entpacken. Jedoch können
diese Operationen mithilfe anderer Hardware-Konfigurationen implementiert werden.
-
Packen
wird vorgenommen, wenn der sendende Co-Prozessor (d. h. der MCP
oder CMCP) bestimmt, dass mehrere Pakete höherer Ebene in einen einzelnen
Datenburst passen. Der Packprozess kann Bandbreite sparen, indem
er lediglich den MAC-Anfangskennsatz des ersten Datenpakets beinhaltet. Beispielsweise
wird, wenn N Pakete höherer
Ebene in einen Datenburst passen, der Anfangskennsatz des ersten
Datenpakets verwendet, um anzugeben, dass N-1 Pakete ohne MAC-Anfangskennsätze folgen.
Der Entpackprozess reformatiert jedes der N Pakete, damit es seinen
eigenen MAC-Anfangskennsatz hat. Sowohl der MCP 402 als
auch der CMCP 450 können
Daten sowohl packen als auch entpacken.
-
Unterdrückung des
Nutzdaten-Anfangskennsatzes kann vorgenommen werden, wenn ein Paket
höherer
Schicht seinen eigenen Anfangskennsatz hat, d. h. einen Anfangskennsatz,
der nicht durch den MCP oder CMCP erstellt oder verwendet wird.
Unterdrückung
des Nutzdaten-Anfangskennsatzes entfernt einen Teil des Anfangskennsatzes
höherer
Ebene, und die Rekonstruktion des Nutzdaten-Anfangskennsatzes rekonstruiert
den Anfangskennsatz höherer
Ebene. Wieder nimmt, wenn der MCP die Unterdrückung des Nutzdaten-Anfangskennsatzes
vornimmt, der CMCP 450 die Rekonstruktion des Nutzdaten-Anfangskennsatzes
vor und umgekehrt.
-
Fragmentierung
kann vorgenommen werden, wenn ein Paket höherer Schicht nicht in einen zugeteilten
Burst passen kann. Das Paket höherer Schicht
kann fragmentiert werden, um über
eine Reihe von zwei oder mehr Zeitrahmen übertragen zu werden. Beispielsweise
kann eine spezifische Endbenutzerverbindung wünschen, ein Paket höherer Schicht
per Uplink zu übertragen,
das N Zeitrahmen füllen
würde.
Statt alle verfügbare
Uplink-Bandbreite jener spezifischen Endbenutzerverbindung N Zeitrahmen
lang zuzuteilen, kann der CMCP 450 dem spezifischen CPE
einen Bruchteil F (beispielsweise ½) der Uplink-Bandbreite zuteilen,
sodass die spezifische Endbenutzerverbindung nun N·1/F Zeitrahmen benötigt, um
ihr Paket höherer
Schicht per Uplink zu übertragen,
andere Endbenutzerverbindungen aber den übrigen Bruchteil (1-F) der
Bandbreite während desselben
Zeitraums verwenden können.
Der CMCP 450 braucht nicht alle Datenpakete (d. h., um
N Zeitrahmen zu füllen)
zu haben, bevor das fragmentierte Anfangs-Datenpaket in einem Uplink-Datenrahmen gesendet
wird. Der MCP wird die fragmentierten Teile defragmentieren, um
das ganze Paket höherer Schicht
zu bilden. In ähnlicher
Weise kann der MCP 450 Daten fragmentieren, die der CMCP
defragmentieren wird.
-
11 ist
ein Flussdiagramm des Prozesses des Uplinkens von Daten von einem
CPE 110 zu einer BS 104. Der Prozess nach 11 wird
in einem CPE ausgeführt,
das eine MAC und einen CMCP (CPE-MAC-Co-Prozessor) 450 hat.
Wie oben erklärt, kann
der CMCP zusätzlich
zum Ausüben
einer Priorisierungsfunktion ähnlich
dem QoS 412 in einer BS 104 viele Funktionen ähnlich dem
MCP 402 in der BS 104 ausüben.
-
In
Schritt 1102 empfängt
das CPE Daten von mehreren Endbenutzerverbindungen, die durch das spezifische
CPE 110 bedient werden. Jedes CPE 110 kann kontinuierlich
Daten zur Uplink-Übertragung empfangen.
Alternativ können
CPEs 110 sporadisch Daten von ihren jeweiligen Endbenutzerverbindungen
empfangen. Die Endbenutzerverbindungen senden keine Anfragen zum
CPE 110, sondern senden stattdessen die Daten, die sie
per Uplink zu übertragen
wünschen.
-
In
Schritt 1104 sortiert der CMCP 450 die empfangenen
Daten nach den jeweiligen Endbenutzerverbindungen, welche die Daten
sendeten. Der Sortierprozess wird durch Detektieren der spezifischen
Verbindung, von der jedes Datenpaket empfangen wurde, und Zusammengruppieren
aller Datenpakete von einer spezifischen Verbindung bewerkstelligt.
-
In
Schritt 1106 speichert der CMCP 450 die empfangenen,
sortierten Datenpakete in einem Puffer 456. Weil das CPE 110 Datenpakete
von Endbenutzerverbindungen sporadisch empfängt, weiß das CPE 110 nicht,
wie viel Daten während
irgendeines spezifischen Zeitraums empfangen werden. Daher muss
der Puffer 456 groß genug
sein, um ein großes Volumen
an Datenpaketen mehrere vorgegebene Zeiträume lang zu halten. Während 10 den
Puffer 456 innerhalb von CMCP 450 zeigt, wird
erwogen, dass ein Puffer getrennt vom CMCP 450 angeordnet und
mit dem CMCP 450 verbunden sein kann und dass auf ihn in
einer im Wesentlichen identischen Art und Weise, wie oben diskutiert,
zugegriffen werden kann.
-
In
Schritt 1108 berechnet der CMCP 450 die im Puffer 456 gespeicherte
Datenmenge von jeder Endbenutzerverbindung. Der CMCP 450 weiß jederzeit,
wie viel Daten von jeder Endbenutzerverbindung auf Uplink warten
und viel Daten von allen Endbenutzerverbindungen kombiniert auf
Uplink warten.
-
In
Schritt 1110 fängt
bei im Puffer 456 auf Uplink wartenden Daten der CMCP 450 die
(für die CPE-MAC 410 bestimmte)
Uplink-Abbildungsliste ab, um zu bestimmen, wie viel Uplink-Bandbreite dem
einzelnen CPE 110 zugeteilt worden ist. Dann bestimmt der
CMCP 450, wie viel Daten bei der Modulation des spezifischen
CPEs in die zugeteilte Bandbreite passen können. Diese Berechnung wird später in Schritt 1116 verwendet,
wenn der CMCP den Uplink-Burst erstellt.
-
In
Schritt 1111 bestimmt der CMCP 450, ob es genügend zugeteilte
Bandbreite im aktuellen Uplink-Teilrahmen gibt, um alle im Puffer 456 wartenden
Daten zu senden, oder alternativ, ob der CMCP 450 zusätzliche
Bandbreite von der MAC 410 anfordern muss. Wenn zusätzliche
Bandbreite benötigt wird,
kann der CMCP zusätzliche
Bandbreite durch Senden einer Wettbewerbsschlitz-Anfrage, Aufsatteln
einer Anfrage auf Daten geringerer Priorität oder Setzen eines Abfragebits
im MAC-Anfangskennsatz der gegenwärtig zugeteilten Uplink-Daten
anfordern.
-
In
Schritt 1112 werden die QoS-Parameter einschließlich Prioritäten, die
jeweiligen Endbenutzerverbindungen zugeordnet sind, aus der LUT 454 geholt.
Die QoS-Parameter werden eingerichtet, wenn sich der Endbenutzer
anfangs bei der MAC 420 registriert, und können zu
jedwedem zukünftigen Zeitpunkt
oder Ereignis aktualisiert werden.
-
In
Schritt 1114 führt
der CMCP 450 Priorisierungsfunktionen an den Daten aus,
die in Puffer 456 gespeichert sind. Mithilfe der aus LUT 454 geholten Prioritäten und
in Anbetracht der Menge zugeteilter Uplink-Bandbreite priorisiert
der CMCP 450 die Daten mithilfe eines Continuous-Grant-,
Fair-Weighted-, Round-Robin- oder anderen Priorisierungsschemas. In
einer Ausführungsform
hat Puffer 456 einen priorisierten Teil, der verwendet
wird, um die priorisierten Daten zu speichern, die zum Uplink bereit sind.
In einer zweiten Ausführungsform
verschiebt der Puffer 456 die priorisierten Daten nicht
in einen unterschiedlichen Abschnitt, sondern sortiert stattdessen
eine Reihe von Pointern, welche die Orte von im Puffer 456 gespeicherten
Daten anzeigen.
-
In
Schritt 1116 erstellt der CMCP 450 dann einen
Uplink-Datenburst,
der die Zeit füllt,
die dem spezifischen CPE 110 im Uplink-Teilrahmen zugeteilt ist.
Der CMCP 450 kann zuerst die Anzahl PS berechnen, die bei
der Modulation des spezifischen CPEs in die zugeteilte Uplink-Zeit
passt. Die Anzahl PS, die von jedem Datenpaket benötigt wird,
das im Datenburst beinhaltet ist (bei der Modulation des spezifischen
CPEs), wird dann von dieser Gesamtanzahl PS subtrahiert, bis der
Datenburst gefüllt
ist. Beim Berechnen der Anzahl PS, die von jedem Datenpaket benötigt wird,
muss der CMCP 450 auch die FEC-Art berücksichtigen, die gegenwärtig durch
das CPE 110 verwendet wird.
-
Der
Datenburst wird mithilfe von Daten erstellt, die aus dem priorisierten
Teil des Puffers 456 geholt werden, in ähnlicher Weise, wie oben in
Bezug auf den MCP beschrieben. Der CMCP 450 kann einen
Uplink-Datenburst mithilfe von Daten erstellen, die aus Gebieten
des Puffers 456 geholt werden, die durch priorisierte Pointer
angezeigt werden. Beim Erstellen des Datenbursts kann der CMCP 450 jedwede
Kombination aus Packen, Unterdrückung
des Nutzdaten-Anfangskennsatzes
und Fragmentierung verwenden. Wie oben erwähnt, können Packen, Unterdrückung des
Nutzdaten-Anfangskennsatzes
und Fragmentierung in Schritt 1116 durchgeführt und
verwendet werden, um die Effizienz des Kommunikationssystems zu
steigern.
-
Zusätzlich zu
den Endbenutzerdaten, die im Uplink-Teilrahmen gesendet werden, erstellt
und sendet jeder CMCP einen Anfangskennsatz der physikalischen Schicht
und einen MAC-Anfangskennsatz zum Datenburst. Der Anfangskennsatz
der physikalischen Schicht kann Einstellungen wie z. B. Modulations-
und Verschlüsselungsart
beinhalten, die durch das Modem des CPE 110 verwendet werden
und nicht zur BS 104 gesendet werden. Der MAC-Anfangskennsatz
kann eine Verbindungs-ID, ein Flag für Verschlüsselung EIN/AUS und eine Verschlüsselungsschlüssel-Sequenz
beinhalten, die zur BS 104 gesendet werden.
-
In
Schritt 1118 übertragt
der CMCP 450 den Datenburst zur in der empfangenen Uplink-Abbildungsliste
spezifizierten Zeit zum CPE-Modem 459. Darüber hinaus
muss jedwede Bandbreitenanfrage, die in Schritt 1111 ausgelöst wurde,
zur zweckentsprechenden Zeit übertragen
werden. Beispielsweise teilt, wenn ein spezifischer CMCP 450 bestimmt, dass
eine Bandbreitenanfrage während
eines Wettbewerbsschlitzes erfolgen muss, der CMCP dem Modem 459 mit,
wann exakt die Bandbreitenanfrage zu senden ist. Alternativ teilt,
wenn der CMCP 450 bestimmt hat, dass eine Aufsattel-Anfrage
möglich
ist, der CMCP 450 dem Modem 459 mit, wann exakt
die Aufsattel-Anfrage zur BS 104 übertragen werden muss.