Freitag, 29. April 2011

April 2011 / Leitungscodierung

Leitungscodierung

Im Modul 129 - Lankomponenten in Betrieb nehmen, teilten wir unsere Klasse in 5 Gruppen. Jede Gruppe sollte zu einem vom Lehrer definierten Thema eine Dokumentation erstellen und eine Präsentation halten.
Unsere Gruppe bekam das Thema Leitungscodierung. Dieses Thema ist ziemlich komplex und es zu verstehen ist nicht ganz einfach.

Was ist Leitungscode?
Der Leitungscode dient dazu ein digitales Signal in eine Form abzubilden, damit dieses für eine Übertragung geeignet ist. Er nimmt also die Rohdaten, welche er übertragen sollte, und codiert sie so um, dass sie (möglichst) optimal übertragen werden können.
Dabei gibt es verschiedene Codierungen wie die Binäre Codierung, die Manchester-Codierung oder die MLT 3-Codierung welche alle einzelne Vor- und Nachteile haben.

Die Taktrückgewinnung
Die Taktrückgewinnung ermöglicht es dem Empfänger genau zu wissen, wann er das Signal abtasten muss, also in welcher Geschwindigkeit die Bits übertragen werden.
Die Taktrückgewinnung wird dabei aus den Signalflanken gewonnen. Das bedeutet es braucht genügend Spannungswechsel. Das bedeutet, dass lange folgen von Nullen oder Einsen zu vermeiden sind.
Dies kann durch eine entsprechende Leitungscodierung gemacht werden.
Kann ein Code keine Taktrückgewinnung erzeugen, braucht es zusätzlich eine Taktleitung, welche dem Empfänger den Takt mitteilt.

Binärer Leitungscode





Der binäre Leitungscode ist sehr einfach. Bei diesem Code bedeutet jeder Zustand eine Information.
Ein Beispiel ist die RS232-Schnittstelle, bei der eine positive Spannung eine logische 0 und eine negative Spannung eine logische 1 bedeutet.
Im Manchester-Code ist das z.B. nicht der Fall. Bei ihm gibt es viele Zustände, welche keine direkte Information enthalten, denn es wird bei jeder Information mind. 1-mal die Spannung gewechselt.
Bei diesem Code ist also keine Taktrückgewinnung möglich, da es bei dieser Codierung lauter Nullen oder Einsen geben kann.
Ein weiteres Problem bei diesem Code ist, dass er nicht gleichspannungsfrei ist, da Nullen oder Einsen stark überwiegen können. Das macht eine Übertragung über längere Distanz unmöglich.





Manchester-Code Der Manchester-Code verhält sich im Vergleich zu den anderen Codes etwas Speziell. Er benötigt für jedes übertragene Bit einen Spannungswechsel, also eine 1 und eine 0.
Bei einer logischen 1 wird zuerst eine 1 und dann eine 0 gesendet.
Bei einer logischen 0 zuerst eine 0 und dann eine 1.
Oder genau umgekehrt, wie beim IEEE 802.3 Standard, welcher beim 10M/Bits-Ethernet verwendet wird.
Diese Codierung bedeutet, dass die Übertragungsrate der effektiven Daten halbiert wird.
Dafür hat der Manchester-Code 2 grosse Vorteile.
Da bei jedem Signal mind. einen Spannungswechel vorkommt, ist die Übertragung komplett gleichspannungsfrei. Dadurch können die Daten über grösse Distanzen übertragen werden.
Der 2. Vorteil ist, dass aus der ständig ändernden Spannung ohne Probleme eine Taktrückgewinnung möglich ist.


4B5B-Code
Der B4B5-Code wird z.B. in Kombination mit dem MLT 3-Code beim 100-Base-TX Ethernet verwendet.
Er codiert Blöcke von 4Bits in 5-Bit-Blöcke um.
Dadurch werden nie mehr als 3 logische 0 oder 1 aufeinander folgen, was die Taktrückgewinnung erleichtert.
Der Nachteil jedoch ist, dass nur 4 von 5 Bits Nutzdaten sind, also 20% des Übertragenen Signals unbrauchbar ist.

MLT 3-Code

Der MTL 3-Code wird wie bereits erwähnt in Kombination mit dem B4B5-Code verwendet, da dieser alleine keine Taktrückgewinnung ermöglicht.
Er benutzt 3 Spannungspegel welche mit +, 0 und - bezeichnet werden.
Bei einer logischen 0 wird die aktuelle Spannung gleichgehalten und bei einer logischen 1 wird die Spannung geändert. Dies geschieht in folgender Reihenfolge:
0+0-0+0- usw.
Daher bedeutet bei dieser Codierung auch jeder Zustand eine Information, wie bei der Binären Codierung.
Ein Vorteil des MLT 3-Codes ist, dass er fast gleichspannungsfrei ist. Das bedeutet dass er ebenfalls über längere Distanzen übertragen werden kann.
Da er aber nicht komplett gleichspannungsfrei ist, kann das zu einer erhöhten Bitfehlerrate oder sogar zu einem Verbindungsabbruch beim Empfänger führen.
Dieses Problem wurde jedoch behoben, wie genau, habe ich jedoch nicht herausgefunden bzw. verstanden.

Keine Kommentare:

Kommentar veröffentlichen