Übung zu Drahtlose Kommunikation. 9. Übung

Ähnliche Dokumente
Übung zu Drahtlose Kommunikation. 7. Übung

Folgezustand hängt vom aktuellen Zustand, dem Eingangswert und der Rückkopplungsstruktur des Codierers ab

A3.9: Viterbi Algorithmus: Grundlegendes

Übung 15: Faltungscodierung

Ein (7,4)-Code-Beispiel

Gruppe. Kanalcodierung

Gegeben ist ein systematischer (7,3)-Cod. Die drei seiner Codewörter lauten:

Codierung Faltungs-Codes

Trellis Diagramme und Viterbi-Decoder

KANALCODIERUNG AUFGABEN. Aufgabe 1. Aufgabe 2

11. Übung Algorithmen I

Formelsammlung Kanalcodierung

Effiziente Viterbi Decodierung und Anwendung auf die Bildübertragung in gestörten Kanälen. Diplomarbeit

(Network) Coding und Verbindungen zur Systemtheorie

Beispiel: Zeigen Sie, dass H(x) = H 0 = I gilt, wenn alle Zeichen gleichwahrscheinlich sind.

Die Mathematik in der CD

Ziffer 3 bis 12 codieren Händler und Ware.

INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS

Informationstheorie und Codierung Schriftliche Prüfung am 8. Mai 2006

Kapitel 7: Optimalcodierung und Huffman Coding

Der Viterbi Algorithmus

Übung 14: Block-Codierung

Ein (7,4)-Code-Beispiel

Dynamisches Huffman-Verfahren

Haydn: Streichquartett op 54.3 aus Largo, Violine I

Codes on Graphs: Normal Realizations

Projektgruppe. Text Labeling mit Sequenzmodellen

2.7 Der Shannon-Fano-Elias Code

Fachprüfung. Nachrichtencodierung

Arithmetisches Codieren

Grundbegrie der Codierungstheorie

Übungen zur Vorlesung Grundlagen der Rechnernetze. Zusätzliche Übungen

7.1 a) Für die Übertragung der Nachricht mittels des Polynoms T(x) werden 40 Bit benötigt.

Diskrete Strukturen. Name Vorname Studiengang Matrikelnummer. Hörsaal Reihe Sitzplatz Unterschrift ... Allgemeine Hinweise

Grundlagen der Informatik II - Prüfung SS 08 - Mat.Nr.: 1

Einführung in die Codierungstheorie

Codes on Graphs: Normal Realizations

Modul Computersysteme Prüfungsklausur SS Prof. Dr. J. Keller LG Parallelität und VLSI Prof. Dr.-Ing. W. Schiffmann LG Rechnerarchitektur

Grundzüge DS & Alg (WS14/15) Lösungsvorschlag zu Aufgabenblatt 3. Aufgabe 1. (a) nicht-heap (b) Heap 25. (c) Beinahe-Heap 9.

Hidden Markov Models. Vorlesung Computerlinguistische Techniken Alexander Koller. 8. Dezember 2014

Einführung in die Codierungstheorie

Theoretische Grundlagen der Informatik. Vorlesung am 7. Februar INSTITUT FÜR THEORETISCHE INFORMATIK

Fehlerdetektion. Cyclic Redanduncy Check. Grundlagen der Rechnernetze Übertragungssicherung 7

Klausur Informationstheorie und Codierung

(Prüfungs-)Aufgaben zur Codierungstheorie

Übungsblatt Nr. 7. Lösungsvorschlag

auf differentiellen Leitungen

Hidden-Markov-Modelle

Isomorphie von Bäumen

Grundlagen der Technischen Informatik. 2. Übung

Einführung in die Kodierungstheorie

Codierungstheorie Teil 1: Fehlererkennung und -behebung

Wortdekodierung. Vorlesungsunterlagen Speech Communication 2, SS Franz Pernkopf/Erhard Rank

21. Greedy Algorithmen. Aktivitätenauswahl, Fractional Knapsack Problem, Huffman Coding Cormen et al, Kap. 16.1, 16.3

in der Mathematik-Ausbildung

Algebraisches Internet

Übung 3: VHDL Darstellungen (Blockdiagramme)

Untersuchungen an Cyclic Redundancy Checks (CRC)

Die Kunst des Programmierens...

VGM. VGM information. HAMBURG SÜD VGM WEB PORTAL USER GUIDE June 2016

Fachprüfung. Nachrichtencodierung

Algorithmen und Datenstrukturen Übung #4 BFS/DFS, Wachstum von Funktionen

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes

Fachprüfung. Nachrichtencodierung

4. Woche Decodierung; Maximale, Perfekte und Optimale Codes. 4. Woche: Decodierung; Maximale, Perfekte und Optimale Codes 69/ 140

Einführung in die Informatik II Aus der Informationstheorie: Datenkompression

21. Dynamic Programming III

Digitaltechnik I WS 2006/2007. Klaus Kasper

Technische Informatik - Eine Einführung

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung

Codes. Kapitel 2-6: Beispiele kombinatorischer Schaltungen. Digital Simulator. Kapitelverzeichnis (Buch Künzli)

Datenübertragung im Kabelnetz

Überblick zu Kapitel 3 von Einführung in die Kanalcodierung

Übungsblatt 4. (Router, Layer-3-Switch, Gateway) Aufgabe 2 (Kollisionsdomäne, Broadcast- Domäne)

Notation und Einführung

Einleitung. Kapitel 1

Fallbeispiel zum Aufbau eines neuen Wärmenetzes Case study for new district heating grid

VGM. VGM information. HAMBURG SÜD VGM WEB PORTAL - USER GUIDE June 2016

Korrigieren von Bitfehlern

Grundlagen der Nachrichtentechnik

Musterlösung zur Aufgabe A3.1

3 Codierung diskreter Quellen. Quelle Quellcodierer Kanalcodierer reduziert die benötigte Datenmenge. fügt Daten zur Fehlerkorrektur ein.

The Single Point Entry Computer for the Dry End

2.4. Mehrstufige Zufallsexperimente

Übungsblatt 4. (Router, Layer-3-Switch, Gateway) Aufgabe 2 (Kollisionsdomäne, Broadcast- Domäne)

Outline Automaten FSM Synthesis FSM in VHDL FSM auf FPGA. State Machines. Marc Reichenbach und Michael Schmidt

Aufgabe: Summe Punkte (max.): Punkte:

Aufgabe: Summe Punkte (max.): Punkte:

Definition Information I(p)

Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem

Rechnergestützte Netzanalysen. Computational Methods Winter Semester

Fakultät für Informatik Übung zu Kognitive Systeme Sommersemester Lösungsblatt 4 Maschinelles Lernen und Spracherkennung

Kanalcodierung. 1 Theorie. 1.1 Theoretische Grundlagen. Labor Nachrichtentechnik Versuchsanleitung

Map Matching. Problem: GPS-Punkte der Trajektorie weisen einen relativ großen Abstand zueinander auf.

Flussdiagramm / Programmablaufplan (PAP)

CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005

Übungen zur Vorlesung Grundlagen der Bilderzeugung und Bildanalyse (Mustererkennung) WS 05/06. Musterlösung 11

Grundlagen der Informatik II Übungsblatt: 5, WS 17/18 mit Lösungen

Transkript:

Übung zu Drahtlose Kommunikation 9. Übung 07.01.2012

(n,k,k) k -> Eingangsbit (Informationszeichen ist 1 Bit lang) K -> Begrenzungsfaktor (Länge des Schieberegisters ist k*k) n -> Ausgangsbit (für jedes Eingangsbit entstehen n Ausgangsbits) -> somit n Verknüpfungen (n, k, K) code Input processes k bits at a time Output produces n bits for every k input bits K = constraint factor k and n generally very small n-bit output of (n, k, K) code depends on: Current block of k input bits Previous K-1 blocks of k input bits 2

(n,k,k) = (2,1,3) Faltungscodes (Wiederholung) Beispiel: Eingangscodefolge: 10 11 Coderate R = 1 2 Faltungscode: 11 10 00 01 01 11 input u n u n-1 u n-2 v n1 =u n-2 u n-1 u n v n2 =u n-2 u n v n1 +v n2 0 0 0 0 0 -- 1 1 0 0 1 1 11 0 0 1 0 1 0 10 1 1 0 1 0 0 00 1 1 1 0 0 1 01 0 0 1 1 0 1 01 0 0 0 1 1 1 11 0 0 0 0 0 -- 3

(n,k,k) = (2,1,3) Eingangscodefolge: 1 0 1 1 0 0 Faltungscode: 11 10 00 01 01 11 Beim Codebaum repräsentiert jedes Eingangsbit eine neue Verzweigung des Baumes. Die Ausgabefolge wird an den dazugehörigen Ästen abgelesen. Dabei ist besonders wichtig, dass jede Eingebefolge mit 00 abgeschlossen wird. Aus der Eingangsfolge 1011 wird deshalb 101100. Codebaum Somit entspricht jede Informationsfolge genau einem Pfad durch den Baum, dies führt zu einem exponentiellen Anwachsen des Baumes mit entsprechend großer Redundanz. Der Codebaum wird benutzt um die sequentielle Decodierung zu beschreiben. 4

(n,k,k) = (2,1,3) Netzdiagramm (trellis) Eingangscodefolge: 1 0 1 1 0 0 Faltungscode: 11 10 00 01 01 11 Das Netzdiagramm besteht aus Knoten und Zweigen, dabei stellen die Knoten die Zustände (also das Gedächtnis des Codierers) dar. Die Zweige beschreiben den Übergang von einem Zustand in den darauf folgenden. An den Zweigen stehen wie beim Codebaum die durch die jeweiligen Eingangsbit erzeugten Ausgangsbit, auch hier muss die Eingangsfolge mit 00 abschließen. Das trellis enthält weniger Redundanz als der Codebaum, da hier gleiche Zweige für mehrere Wege benutzt werden können. 5

(n,k,k) = (2,1,3) Eingangscodefolge: 1 0 1 1 0 0 Faltungscode: 11 10 00 01 01 11 Der Darstellung des Zustandsdiagramm liegt ein Mealy-Automat zugrunde. Sie geht im Endeffekt aus dem Netzdiagramm hervor, indem man die zeitliche Komponente des trellis weglässt. Die Darstellung ist sehr kompakt. Jegliche Redundanz, die das Netzdiagramm noch aufwies entfällt Jeder Zustand wird genau einmal gekennzeichnet. Da die Darstellung ein Mealy-Automat ist, steht in den Zuständen der Inhalt des Gedächtnisses und an den Kanten die Ausgabe bzw. das Eingangsbit. Für unsere Eingangsfolge 10 11 ergibt sich wieder der Faltungscode 11 10 00 01 01 11. Allgemein ist zum Zustandsdiagramm zu sagen, dass diese Zustandsdiagramm 6

Betrachten Sie einen Encoder für Faltungscodes der mit (vn1=u n u n-2 ) und (v n2 = u n-1 u n-2 ) definiert ist. 1) Zeichnen Sie eine Register Implementation. 2) Zeichnen Sie ein Zustandsdiagramm für diesen Encoder. 3) Zeichnen Sie ein Trellis Diagramm für diesen Encoder 7

b) Betrachten Sie einen Encoder für Faltungscodes der mit (vn1=u n u n-2 ) und (v n2 = u n-1 u n-2 ) definiert ist. 1) Zeichnen Sie eine Register Implementation. 8

u n u n-1 u n-2 v n1 =u n-2 u n v n2 =u n-2 u n-1 v n1 +v n2 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 9

u n u n-1 u n-2 v n1 =u n-2 u n v n2 =u n-2 u n-1 v n1 +v n2 0 0 0 0 0 00 0 0 1 1 1 11 0 1 0 0 1 01 0 1 1 1 0 10 1 0 0 1 0 10 1 0 1 0 1 01 1 1 0 1 1 11 1 1 1 0 0 00 10

b) Betrachten Sie einen Encoder für Faltungscodes der mit (v n1 =u n u n-2 ) und (v n2 = u n-1 u n-2 ) definiert ist. 2) Zeichnen Sie ein Zustandsdiagramm für diesen Encoder. 11

b) Betrachten Sie einen Encoder für Faltungscodes der mit (v n1 =u n u n-2 ) und (v n2 = u n-1 u n-2 ) definiert ist. 2) Zeichnen Sie ein Zustandsdiagramm für diesen Encoder. Gruppe: BlaisePascal 12

Trellis-Diagramm 00 01 10 11 13

b) Betrachten Sie einen Encoder für Faltungscodes der mit (vn1=u n u n-2 ) und (v n2 = u n-1 u n-2 ) definiert ist. 3) Zeichnen Sie ein Trellis Diagramm für diesen Encoder 14

b) Betrachten Sie einen Encoder für Faltungscodes der mit (vn1=u n u n-2 ) und (v n2 = u n-1 u n-2 ) definiert ist. 3) Zeichnen Sie ein Trellis Diagramm für diesen Encoder Gruppe: BlaisePascal 15

Trellis diagram expanded encoder diagram Viterbi code error correction algorithm Compares received sequence with all possible transmitted sequences Algorithm chooses path through trellis whose coded sequence differs from received sequence in the fewest number of places Once a valid path is selected as the correct path, the decoder can recover the input data bits from the output code bits 16

Decodieren von Faltungscodes mithilfe des Viterbi-Decodierverfahrens Maximum-Likelihood-Decoder, d.h., er wählt aus allen möglichen Codefolgen die wahrscheinlichste aus. Die Codefolge ist am wahrscheinlichsten, die sich in möglichst wenigen Stellen von der empfangenen Folge unterscheidet, -> bedeutet, den geringsten Hammingabstand zur Empfangscodefolge besitzt. Um diese Unterscheidung fassbar zu machen, wurde eine Metrik λ wie folgt eingeführt. Hierbei entspricht i der jeweiligen Bitstelle x i, der empfangenen Codefolge und y i eines von allen möglichen Codewörtern. Für jede mögliche mögliche Codefolge Y i wird die Summe i = i gebildet und am Ende des Decodiervorgangs ist die Codefolge am wahrscheinlichsten, die die kleinste Summe i hat -> diese ist dann die richtige Eingangsfolge. 17

Decodieren von Faltungscodes mithilfe des Viterbi-Decodierverfahrens 1) Beginne Netzdiagramm im Nullzustand zum Zeitpunkt i =0 2) Berechne ( x(i) y(1) ) zwischen empfangenen Codewort x(i) und allen möglichen Codewörtern y(i) 3) Addiere unter 2. berechnete Pfadmetriken zu alten Zustandsmetriken 4) An jedem Zustand Auswahl des jenigen Pfades mit kleinster euklidischer Distanz und Verwerfung der anderen Pfade 5) Wiederholung ab 2. bis alle n empfangenen Wörter abgearbeitet wurden 6) Ende des Netzdiagramms: - Netzdiagramm endet im Nullzustand - Bestimmung des Pfades mit der besten Metrik (n) 7) Zurückverfolgen des in 6. bestimmten Pfades und Ausgabe der zugehörigen Informationsbit. 18

Decodieren von Faltungscodes mithilfe des Viterbi-Decodierverfahrens Beispiel für Fehlerkorrektur des Viterbi-Decoders: Richtiger Faltungscode: 11 10 10 01 00 11 Falscher Faltungscode: 11 10 00 01 01 11 http://www.tu-chemnitz.de/informatik/this/downloads/courses/ss03/kv/faltungscodes.pdf 19

1 0 1 1 0 0 Falscher Faltungscode: 11 10 00 01 01 11 00 01 10 11 20

Falscher Faltungscode: 11 10 00 01 01 11 21

Falscher Faltungscode: 11 10 00 01 01 11 22

Falscher Faltungscode: 11 10 00 01 01 11 23

Falscher Faltungscode: 11 10 00 01 01 11 24