Portalsuche




Suchen auf UMTSlink
Benutzerdefinierte Suche
Letzte Links
Virtuell: Red... Link Virtuell: Red Bull Mobile aufrufen
Views: 1828, Kommentare: 0
Virtuell:... Link Virtuell: aonMobil aufrufen
Views: 1649, Kommentare: 0
Virtuell:... Link Virtuell: Tele.ring aufrufen
Views: 1470, Kommentare: 0
Virtuell: Yesss Link Virtuell: Yesss aufrufen
Views: 1584, Kommentare: 0
Virtuell: BOB Link Virtuell: BOB aufrufen
Views: 1432, Kommentare: 0

Scramblingcode

Druckbare Version zeigen Thema weiterempfehlen Show RSS feed.
Geschrieben: 06.11.2009 um 23:47 von webgfrast

Scramblingcode

 

UMTS verwendet im Funknetzteil das Codemultiplexverfahren WCDMA, das für die orthogonale Kodierung und die Bandspreizung den Channelizationcode (Spreadingcode) verwendet. Dieser Channelizationcode hat die angenehme Eigenschaft, dass alle seine Codes zu 100% orthogonal zueinander sind. Dies gilt aber nur, falls alle kodierten Signale synchron zueinander sind. Wie man sich leicht vorstellen kann, liegt Synchronität aller Funksignale aber nur im Downlink (von Bodenstation zum Handy) vor, da es sich hier um eine Punkt-zu-Mehrpunkt-Verbindung handelt. Es gibt also nur einen Sender aber mehrere Empfänger. Dieser Umstand ermöglicht es dem Einzelsender, alle Signale synchron abzuschicken. In Uplink-Richtung ist das nicht der Fall, da es jetzt mehrere Sender, nämlich die diversen Handys der Teilnehmer, und nur einen Empfänger - die Bodenstation- gibt. Diese diversen Sender sind zueinander aber nicht koordiniert, so dass ihre ausgesendeten Signale nicht zueinander aufsynchronisiert werden können. Was das für Konsequenzen hat sieht man anhand der zwei Channelizationcodes C4,2 und C4,4 und der folgenden Zellensituation, in der zwei Teilnehmer (A und B) unterschiedlich weit von der Bodenstation entfernt sind, wodurch auch die Signale unterschiedlich lange brauchen, bis sie vom Teilnehmer bei der Bodenstation angekommen sind. Die Signale von Teilnehmer A brauchen länger als die Signale vom Teilnehmer B. Um das Beispiel anschaulich zu machen, gehen wir von einer Zeitverzögerung von 0,26us aus, was einer Verzögerung von einer Chipdauer entspricht:

Beispiel:

Interferenzen Uplink

Abbildung 1: Situation in einer Zelle im Uplink

 

Zur Erinnerung haben die zwei verwendeten Channelizationcodes folgendes Format:

 

Die Auswirkungen auf die Orthogonalität beim Empfang der Bodenstation ist fatal:

Überlagerung von zeitverzögerten Signalen

Abbildung 2: Zeitliche Darstellung der empfangenen Chips von TN-A und TN-B in der NodeB

 

Man sieht, dass durch die Zeitverzögerung von 1 Chip die ursprünglich orthogonalen Codes der Bodenstation als identische Codes präsentiert werden. Das hat zur Folge, dass die Signale von Teilnehmer A und Teilnehmer B nicht mehr voneinander getrennt werden können! Der Channelizationcode versagt also komplett, falls die Signale nicht synchron zueinander liegen!

Dieses Beispiel zeigt, dass man sich für den Uplink etwas überlegen muss, will man ein funktionierendes Codemultiplexverfahren realisieren! Andererseits gibt es auch im Downlink noch ein Problem. Die Signale in unser betrachteten Zelle sind im Downlink alle synchron zueinander, sodass alle Codes, die vom Codebaum vergeben worden sind, zueinander synchron sind. Das Problem ist hier jetzt folgendes: Wenn alle Codes in unserer betrachteten Zelle vergeben sind, welche Codes bleiben dann noch für die Nachbarzelle übrig? Vergebe ich den gleichen Codebaum an die Nachbarzelle, so kommt es im Randgebiet zwischen den beiden Zellen auch im Downlink zu Störungen. Und Fazit ist, es gibt nur einen Codebaum! Diesen Sachverhalt löst man dadurch, dass jede Zelle einen eigenen Scramblingcode bekommt, wodurch die zellinternen Signale gegenüber den Signalen der Nachbarzellen geschützt sind.

Auch die Scramblingcodes sind zueinander orthogonal - und zwar zu 100% falls sie synchron zueinander sind, doch was viel wichtiger ist, sie bleiben fast zu 100% orthogonal auch wenn sie zueinander durch zeitliche Verzögerungen verschoben sind, wie das Beispiel oben aufgezeigt hat. Diese Eigenschaft löst damit unsere Problematik der Asynchronität. Im Uplink bekommt jeder Teilnehmer einen eigenen Scramblingcode als Identität zugewiesen, wodurch sich die Teilnehmer jetzt so gut wie nicht mehr gegenseitig behindern können, das der Scramblingcode ja auch bei asynchroner Lage nahezu orthogonal bleibt! Im Downlink bekommt jede Zelle einen eigenen Scramblingcode, wodurch Nachbarzellen jetzt auch orthogonal zueinander kodiert sind.

Der Scramblingcode dient im Gegensatz zum Channelizationcode aber nicht zur Bandspreizung, sondern nur zur orthogonalen Kodierung der Zellen im Downlink und der Teilnehmer im Uplink. Daher hat der Scramblingcode auch eine fixe Länge von exakt 38400 Chips, was genau der Länge von einem Zeitrahmen entspricht, der den zeitlichen Aufbau des WCDMA-Signals definiert. Man bezeichnet die Codefamilie, aus der der Scramblingcode abgeleitet wird,  als "Golden Code". Das folgende Bild zeigt den zeitlichen Aufbau der Signale:

 

UMTS-Funkzeitrahmen

Abbildung 3: Ein UMTS-Funkzeitrahmen dauert 10ms und besteht aus 38400 Chips

 

Ein Zeitrahmen hat eine Dauer von 10ms und besteht damit aus 38400 Chips (binär kodierte Einheiten) und jeder dieser Zeitrahmen wird mit einem zugewiesenen Scramblingcode, der ebenfalls die fixe Länge von 38400 (falls es sich um den langen Scramblingcode handelt) hat, multiplikativ kodiert. 

Im Downlink und Uplink schaut die Kombination von Channelization- und Scramblingcode bei der WCDMA-Kodierung dann folgendermaßen aus:

Downlink:

UMTS Kodiersabfolge im Downlink

Abbildung 4: Kodierungsabfolgen im Downlink

 

Im Downlink erfolgt die Kodierung und die Addition der Einzelsignale in der NodeB.

 

Uplink:

UMTS - Kodierungsabfolge im Uplink

Abbildung 5: Kodierungsabfolgen im Uplink

 

Die Addition der Einzelsignale erfolgt beim Uplink durch die Überlagerung der elektromagnetischen Wellen im Raum. Die Kodierung erfolgt in jedem User Equipment separat. Jeder Teilnehmer hat einen eigenen Scramblingcode zugewiesen! Der Channelizationcode dient nur zur Bandspreizung auf 5MHz.

CC...Channelizationcode        SC...Scramblingcode    TN... Teilnehmer

 

Scrambel-Multiplikation im Detail

Der Scrambling-Code hat eine feste Chiplänge und wird Chip für Chip mit dem zu kodierenden Signal multipliziert. Der Scrambling-Code besteht aus einer Sequenz von Zahlen, die den Wert +1 oder -1 haben können. Multiplikativ bedeutet das für das Ausgangssignal, dass diverse Eingangswerte einen Vorzeichenwechsel erfahren. Folgende Abbildung zeigt, was damit gemeint ist:

 

Prinzip des Scrambelns

Abbildung 6: Multiplikationsprinzip beim Scrambeln: Chipweises Multiplizieren

 

Die nächste Abbildung zeigt die Chips übereinander angeordnet, um die Multiplikation besser nachvollziehen zu können.

 

Multiplikation beim Scramblingcode

Abbildung 7: Alternative Darstellung der Multiplikation beim Scrambeln

 

Erzeugung des Scramblingcodes

Bei UMTS kommen zwei verschiedene Scramblingcodeklassen zum Einsatz:

 

Langer Scramblingcode

Jeder Zeitrahmen wird also mit den 38400 Chips multiplikativ verknüpft. Diese 38400 Chips werden mit Hilfe von Schieberegistern generiert, wobei im Downlink 18 Register und im Uplink 25 Register verwendet werden. Das Prinzip dabei ist folgendes, im Bild unten sind 5 Register eingezeichnet, die über einen Modulo-2-Addierer rückgekoppelt sind (gelb). Zu Beginn der Codegenerierung werden die 5 Register mit 5 vorgegebenen Bits (vom RNC mitgeteilt) initiiert. Durch ein Taktsignal (CLK) von 3,84MHz (entspricht der Chiprate 3,84Mchip/s) werden jeweils die Informationen von einem Ausgang an den nächsten Registereingang weitergereicht, wobei hier das letzte und das dritte Register über eine Modulo-2-Addition kombiniert an den Eingang des ersten Registers weitergereicht werden. Der Modulo-2-Addierer entspricht einem digitalen XOR-Gatter (Exklusiv Oder). Jetzt braucht man nur noch am Ausgang 38400 Bits sammeln, die NRZ-kodiert werden (NRZ - No Return to Zero: das Bit "0" wird zu "+1" und das Bit "1" wird zu "-1") und der Kodierer hat seinen Scramblingcode. 

Generierung Pseudo-Noise-Code

Abbildung 8: Prinzip der Generierung von Pseudo-Noise-Folgen mit Schieberegistern

 

Durch die 5 verwendeten Gatter ergibt sich am Ausgang eine Periodizität von 25 - 1 = 31, danach wiederholt sich das Ausgangs-Chipmuster. Prinzipiell gäbe es also 31 verschiedene Codes, die man in diesem Beispiel vergeben könnte, die sich alle nur durch ein unterschiedliches Initialisierungsmuster zu Beginn unterscheiden. UMTS verwendet für seine langen Scramblingcodes jetzt sogar im Downlink 18 Register und im Uplink sogar 25 Register. Außerdem zu beachten ist, dass UMTS ein modernes Modulationsverfahren (4-PSK) verwendet, das es erlaubt, zwei Bitströme gleichzeitig zu übertragen (genaueres siehe Modulation), wobei jeder Bitstrom separat kodiert wird. Deshalb gibt es auch jeweils zwei Scramblingcodefolgen, eine "reale" und eine "imaginäre". Diese Ausdrücke sind aus der Mathematik entliehen, da man "reale" und "imaginäre" Werte durch "komplexe" Werte zusammenfassen kann. Die Konsequenz werden wir in der Abbildung unten sehen. Betrachten wir jetzt diese zwei Übertragungsrichtungen separat:

 

Downlink:

Die 18 Register für den Downlinkcode erlauben theoretisch 218 - 1 = 262143 verschiedene Scramblingcodes, von denen allerdings nur 8192 tatsächlich zum Einsatz kommen. Diese 8192 Downlinkcodes werden in 512 Sets eingeteilt, wobei jedes Set aus 1 primären Scramblingcode und 15 sekundären Scramblingcodes besteht. Jede Zelle bekommt genau ein solches Set für die Zellenkodierung im Downlink fix zur Verfügung gestellt. Diese 512 Sets werden bei der Zellenplanung geographisch so verteilt, dass niemals benachbarte Zellen das gleiche Set verwenden, um sich nicht gegenseitig durch Signalüberlagerung zu stören. Je weiter zwei Zellen mit gleichem Set auseinander liegen, umso besser für die Netzperformance! Für die Kodierung muss die NodeB  die 18 Register mit jenen 18 Bits initialisieren, die dem primären Scramblingcode ihres Zellen-Sets entspricht. Danach werden 38400 NRZ-kodierte Chips ausgelesen, die als Zellenscramblingcode dienen und jedem Zeitrahmen multiplikativ überlagert werden.

 

Generierung langer Scramblingcode im Downlink - Mausklick --> Vergrösserung

Abbildung 9: Generierung des langen Scramblingcodes für Downlink (I=real; Q=imaginär)

 

Uplink:

Da der Scramblingcode im Uplink auch die Teilnehmeridentität gewährleisten muss, muss es wesentlich mehr Uplink-Scramblingcodes geben als im Downlink. Deswegen werden im Uplink auch 25 Register verwendet, wobei das 25. Register zu Beginn aber stets mit "1" initialisiert. Die restlichen 24 Register stehen zur freien Initialisierung zur Verfügung, wodurch sich insgesamt 16.777.215 (224 -1) verschiedene Uplink-Scramblingcodes ergeben. Die 24 Initialisierungsbits werden dem User Equipment durch den RNC per Funk mitgeteilt, da der RNC die Funkressourcen und somit auch die Kanalkonfigurationen verwaltet und somit stets den Überblick über alle Zellen und deren Teilnehmer hat, die an ihm angeschlossen sind. Auch im Uplink werden wieder 38400 Chips letztlich ausgelesen, um jeweils einen Zeitrahmen zu kodieren. 

Generierung langer Scramblingcode im Uplink

Abbildung 10: Generierung des langen Scramblingcodes für Uplink

 

Man erkennt hier sowohl das reale und das imaginäre Ausgangssignal, wobei das imaginäre Signal dem realen Signal entspricht, nur dass es zeitlich verschoben ist. 

 

Kurzer Scramblingcode

Im Uplink gibt es auch noch die Option den "kurzen" Scramblingcode zu verwenden, der nur aus 256 Zeichen besteht und nur dann verwendet wird, falls die Basisstation, also die NodeB, keinen Rake Receicer verwendet. In diesem Fall verwendet die NodeB sogenannte "Advanced Multiuser"-Detektoren oder eine Empfängertechnologie, die die überlagerten Störsignale (zB. durch Mehrwegausbreitung) herausfiltert und wegschneidet, ähnlich wie dies auch bei GSM mit Hilfe einer 26 Bit langen Trainings-Bitfolge im Normalburst geschieht. Der kurze Scramblingcode gehört zur "extended S(2) Codefamilie". 256 Chips entsprechen dabei einem zehntel eines Zeitschlitzes, wobei jeder Zeitrahmen aus 15 Zeitschlitzen besteht (siehe Bild" Zeitformat" oben).

 

Nach oben     UMTS-Start     WCDMA     Kodierungsbeispiel

Zuletzt aktualisiert: 13.08.2010


Zeige die letzten Themen
 Letzte Forenthemen
Letzte Forenthemen
  Thema Infos Letzter Beitrag
 
  • [ Vorschau]
    • Themenvorschau
      Hallo Community

      Ich bin ja ein frustrierter Inode-XDSL-Kunde und auf der Suche nach einer tauglicheren Internetverbindung, und lese hier schon monatelang interessiert mit.
      Anforderung: Schneller als zZt 5 Mbit down, zuverlässiger als Inode, keine tägliche Zwangstrennung durch den Provider, außerdem noch eine öffentliche IP Adresse, weil ich über DynDns beim Cardsharing-Server angemeldet bin. (Ich weiß nicht, ob das Thema CS hier geduldet wird, hab nichts entsprechendes in den Forums-Regeln gefunden, also schreib ich mal)

      Ein Freund der bei A1 arbeitet hat mir eine mobile Internetlösung schmackhaft gemacht, ich hab an meinem Standort alle verfügbaren Provider ausprobiert, sinnvollen Empfang hab ich hier nur mit A1 und Orange, ich hab mich (auch aus Kostengründen) für Orange entschieden: Datentarif 15 Gb, Sim only um €12.-/Monat (ja, ich weiß, kein DC-HSPA)
      Dazu verwende ich den Huawei E398 (K5005 geflasht auf t-mobile) und als Router den TP-Link MR3220, der den Stick auch als Modem erkennt (im Unterschied zu meiner Fritzbox 7270).

      Gesagt, getan, alles eingerichtet und in Betrieb genommen, bei 90% Empfangsqualität hab ich Speed durchschnittlich 11 Mbit down bis 20 Mbit (das allerdings nur ganz selten), Pingzeiten zwischen 40 und 60 und war ganz happy. Allerdings meilenweit weg von den hier beschriebenen Spitzenwerten von 30 Mbps und mehr ... Aber insgesamt: Internet am PC völlig OK.

      Dann allerdings kam die Dreambox dm800HD hinzu, Verbindung zum CS-Server war sofort da, aber es kam zu Bildrucklern und Freezern, und keiner kann es erklären. Also hab ich tagelang den Dr. Google befragt und siehe da, ich bin nicht der einzige, der eine Lösung sucht.

      Das Bildruckeln scheint nicht an den CS-Konfigurationen (ich fahre Oscam only) zu liegen, sondern an der Tatsache, daß das Mobilnetz die Geschwindigkeit runterfährt wenn kein Datentransfer stattfindet. Die ECM-Requests der v13 Karte kommen so ca alle 7 Sekunden (das kann man im Oscam-WebIf schön mitloggen). Bei einer Antwortzeit von <500ms ist das Bild völlig OK, wenn die Antwort länger braucht (weil das Mobilnetz ein paar ms braucht um wieder hochzufahren), kommt es zu diesen Rucklern und Freezern.

      Ich hab gestern folgendes probiert: Parallel zum Satreceiver den PC auf Dauer-Pingen gestellt = Traffic = CS-Verbindung makellos mit Zeiten um 0,5sec und kleiner = KEINE Freezer.
      Pingen abgestellt = kein Traffic mehr = sofort wieder Freezer bei Antwortzeiten 0,9 sec und länger.

      Beobachtung am UMTS-Stick: Solange der hellblau leuchtet fliessen Daten und das Bild ist OK, sobald kein Transfer läuft, leuchtet der Stick dunkelblau und das Bild ruckelt.

      Im Netz kommen etliche Anfragen zu diesem Problem.
      Als Lösung wird über ein Script diskutiert, daß die dm800 auf Dauer pingen läßt, das produziert völlig unnötigen Traffic aber hält die Leitung auf Speed. Allerdings Produziert Pingen in einem Monat auch ziemlich viel Volumen, meine Milchmädchenrechnung ergibt >1GB

      Fällt jemanden von Euch etwas zu diesem Phänomen ein?
      Ich würde mich über Feedback freuen, beste Grüße aus Niederösterreich!
      Antworten
Huawei e398, MR3220 und die...
Forum: Datenkarten, Modem, Router
26573 Views:
45 Antworten:
Heute, 19:41
von DaHype Zum letzten Beitrag gehen
 
  • [ Vorschau]
    • Themenvorschau
      Hallo zusammen,

      für alle die es interessiert: Die A1 Netzabdeckungskarte wurde aktualisiert
      Stand 07/2014

      Enjoy!!!
      Antworten
A1 Netzabdeckungskarte wurde...
Forum: A1 Telekom Austria
1941 Views:
16 Antworten:
Heute, 17:38
von braveheart Zum letzten Beitrag gehen
 
  • [ Vorschau]
    • Themenvorschau
      Ich suche eine Prepaid-SIM, *nur* für Internet, die eine Laufzeit von mehr als einem Monat hat. Gibt's sowas nicht in Deutschland? Alles was ich gefunden habe, läuft maximal 30 Tage.
      Antworten
[Deutschland]...
Forum: 3G-Netzbetreiber Deutschland & Schweiz
38 Views:
0 Antworten:
Heute, 17:18
von straycat Zum letzten Beitrag gehen
  1.500 Minuten, SMS und Mb um...
Forum: Virtuell: Yesss!
55064 Views:
154 Antworten:
Heute, 14:24
von Donkilluminati Zum letzten Beitrag gehen
 
  • [ Vorschau]
    • Themenvorschau
      Hallo, ich denke der Titel sagt schon das meiste... bei meinen Eltern steht ein alter Röhren TV der seit einer Weile auf dem Balkon stand. Es ist damit zu rechnen das er sicher etwas Regen ab bekommen hat. Ich möchte einfach nur prüfen ob er noch in Takt ist. Was kann passieren bei so einem nass gewordenen TV wenn man ihn an den Strom schließt? Irgendwelche Experten unter uns? Ich mach mir da echt sorgen sonst würde ich hier nicht fragen und ich muss unbedingt wissen ob der noch geht.
      Antworten
Vermutlich nass geworden TV...
Forum: Offtopic
685 Views:
12 Antworten:
Heute, 12:15
von Taurus91 Zum letzten Beitrag gehen
Social Networks
Diese Seite bei Twitter speichern Diese Seite bei Facebook speichern Diese Seite bei Google speichern