Kanalcodierung Flashcards
(31 cards)
Wofür stehen die Abkürzungen BER, ARQ, PER, WER
- BER = Bitfehlerrate (bit error rate)
- ARQ = Automatic Repeat Request
- PER = packet error rate
- WER = word error rate
Wie wird WER berechnet?
Was ist Repetition Code?
- ## Beim Repetition Code werden die einzelnen Informationsbits M-fach gesendet.
Wie wird die Datenrate durch repetition Code verändert?
Datenrate wird um Faktor 1/ M reduziert
Was sind Blockcodes?
- Infowort u := [u0, u1, . . . ,uk−1] aus k Infosymbolen
- Codewort x :=[x0, x1, . . . ,xn−1] aus n Codesymbolen
- Ein (n, k)2-Blockcodierer ordnet einem Infowort u
ein Codewort x umkehrbar eindeutig zu. - Es muss n > k sein
- Ein Code C ist die Menge aller 2^k Codewörter
Wie berechnet man die Coderate und Übertragungsrate bei Blockcodes?
Was ist die Hamming-Distanz und die Minimaldistanz?
- Die Hamming-Distanz dH(xi, xj) ist die Anzahl der
Abweichungen zwischen den Komponenten von xi und xj - Die Minimaldistanz dmin ist die minimale Hamming-Distanz
zwischen allen Paaren von Codeworten.
Wie viele Bitfehler können bei Blockcodes erkannt und korrigiert werden?
Erkannt: dmin - 1
Korrigiert (dmin-1)/2
Wichtig! Es muss sich vorher für Korrektur oder Erkennung von Fehlern entschieden werden
Was ist CRC, wie viele Bits Redundanz fügt es hinzu und wie wird es angewendet?
- Cyclic Redundancy Check (CRC) – Code mit typ. 16 Bit bzw. 32 Bit Redundanz
- Es wird hauptsächlich zur Fehlererkennung genutzt
- ehlerkorrektur theoretisch möglich aber nicht effizient -> kaum realisiert
Benutzt CRC Hard Output Detektion oder Soft Output Detektion?
CRC kann nur Hard Output Detektion verarbeiten
Was sind Reed-Solomon Codes, was ist ihre Stärke und wie viele Fehler können sie korrigieren?
- RS-Codes werden in der Praxis häufig zur Korrektur von Bündelfehlern eingesetzt.
- Minimaldistanz wird als Entwurfsparameter vorgegeben
- Codewortlänge ist bei Basis 28 auf maximal 255 Byte beschränkt.
- Pro 2 Byte Redundanz kann ein fehlerhaftes Byte korrigiert werden.
- Anzahl der falschen Bits in einem Byte ohne Bedeutung -> gut bei Bündelfehler
- Verbleibende Redundanz kann zur Fehlererkennung verwendet werden.
- Reed-Solomon-Codes können nur Hard Output Detektion verarbeiten.
Was ist MAP Decodierung?
Bei der „Maximum-A-Posteriori (MAP)“-Decodierung wird das wahrscheinlichste Codewort x bei gegebenem Empfangswort y ausgewählt.
-> Minimale WER
Was ist ML Decodierung?
Bei der „Maximum-Likelihood (ML)“-Decodierung wird das Codewort x ausgewählt, welches den kleinsten Abstand zum Empfangswort y aufweist.
Wann ist MAP- und ML-Decodierung identisch?
MAP- und ML-Decodierung sind identisch sind, falls alle 2k Codewörter x gleich wahrscheinlich sind.
Was ist der Unterschied zwischen ML Decoding und ML Decoding?
Bei ML decoding wird immer ein Wert angenommen bei ML Decoding kann der angekommene Wert zwischen den Kugeln sein und somit unidentifizierbar
Was ist der Unterschied zwischen Hard Output Detektion und Soft Output Detektion?
Hard Output Detektion vernichtet die Information über die Zuverlässigkeit eines Bits.
Bei Soft Output Detektion bleibt diese Information erhalten und sich für das Wahrscheinlichste Bit entschieden
Was sind Faltungscodes?
- Faltungscodes haben die Eigenschaft einer fortlaufenden Codierung
- Jeder Faltungscode kann durch ein Schieberegister erzeugt werden.
- Die Anzahl der Speicherelemente wird Gedächtnislänge v genannt
- Mit ν +1 wird oft die Einflusslänge bezeichnet.
- Inhalte der Speicherelemente bezeichnet man als Zustand
- Es gibt folglich Z = 2ν mögliche Zustände [uk−1, uk−2].
- Die Codebits werden alternierend übertragen.
Wie sieht ein Zustandsdiagramm bei Faltungscodes aus?
Was ist ein Trellisdiagramm?
- Das Trellisdiagramm stellt eine zeitliche Abwicklung des Zustandsdiagramms dar.
- Jedem Infobit entspricht ein Trellissegment.
- Der aktuelle Zustand und den nachfolgenden Zustand wird zeichnerisch getrennt.
- Das Trellisdiagramm ist ein bewerteter und gerichteter Graph mit Kanten und Knoten
- eine Aneinanderreihung von Kanten wird Pfad genannt.
Wie sieht ein Trellisdiagramm für bspw. k = 8 Bits aus?
Was ist die Viterbi Decodierung?
Anhand des Dijkstras Algorithmus wird der kürzeste Pfad bestimmt, was dann die wahrscheinlichste Bitfolge des Absenders ergibt
Was ist Punktierung von Faltungscodes?
- Faltungscodes erzeugen nur Coderaten Rc = 1/2 bzw. 1/3
- Oft werden aber auch niedrigere Coderaten (z.B. 0,6) gewünscht.
- Jedes 6. Bit wird punktiert. -> verworfen und nicht übertragen
- Tatsächliche Coderate nach Punktierung : 0,6
- Die Puntierung wird durch den Punktierungsvektor festgelegt. P = [ 1 1 1 1 1 0]
- Die Nullen kennzeichnen die Stellen, welche im Sender verworfen werden.
- Länge l des Vektors und Anzahl a der nicht punktierten Bits sind frei wählbar.
- Kleinere Coderaten werden durch zusätzlichen Repetition-Code erzeugt.
Wie dekodiert man punktierte Faltungscodes?
- Der Punktierungsvektor muss Sender und Empfänger bekannt sein.
- An den Stellen der nicht übertragenen Bits fügt der Empfänger wieder Symbole ein.
- Dabei ist die Wahrscheinlichkeit P(uc[n] = 0 | Y) = P (uc[n] = 1 | Y) = 0,5
Welche Sequenzschätzung führt der Viterbi Decoder durch und wofür ist er nicht geeignet?
- Viterbi-Decoder führt eine Maximum-Likelihood-Sequenzschätzung durch
- Viterbi-Decoder ist optimal zur Minimierung der Wortfehlerwahrscheinlichkeit
- Als Metrik wird die Summe der Log-Likelihood–Ratio der einzelnen Codebits einer Kante verwendet.
- Dieser Pfad legt dann genau eine Sequenz fest, welche von allen möglichen Sequenzen mit der größten Wahrscheinlichkeit gesendet wurde.
- Viterbi-Decoder liefert immer eine Sequenz (Hard-Output) und ein Versagen der Decodierung kann nicht erkannt werden
- Bitfehler am Ausgang haben einen Bündelcharakter.
- Weiteren Code zur Fehlererkennung (z.B. CRC) oder Fehlerkorrektur anwenden.