Digital Communications I: Modulation and Coding Course Term 3 - 2008 Catharina Logothetis Lecture 12.

Slides:



Advertisements
Similar presentations
Convolutional Codes Mohammad Hanaysheh Mahdi Barhoush.
Advertisements

Convolutional Codes Representation and Encoding  Many known codes can be modified by an extra code symbol or by deleting a symbol * Can create codes of.
Decoding of Convolutional Codes  Let C m be the set of allowable code sequences of length m.  Not all sequences in {0,1}m are allowable code sequences!
Data Communication, Lecture 111 Channel Coding. Data Communication, Lecture 112 audio video (analogue) data (digital) Source anti-alias filter A/D Nyquist.
Maximum Likelihood Sequence Detection (MLSD) and the Viterbi Algorithm
Cellular Communications
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
Turbo Codes – Decoding and Applications Bob Wall EE 548.
Turbo Codes Azmat Ali Pasha.
Figure 6.1. A convolutional encoder. Figure 6.2. Structure of a systematic convolutional encoder of rate.
EC 723 Satellite Communication Systems
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 13.
EE 3220: Digital Communication Dr Hassan Yousif 1 Dr. Hassan Yousif Ahmed Department of Electrical Engineering College of Engineering at Wadi Aldwasser.
EE 3220: Digital Communication Dr Hassan Yousif 1 Dr. Hassan Yousif Ahmed Department of Electrical Engineering College of Engineering at Wadi Aldwasser.
Digital Communications I: Modulation and Coding Course
Noise, Information Theory, and Entropy
ECED 4504 Digital Transmission Theory
S Advanced Digital Communication (4 cr)
1 Channel Coding (II) Cyclic Codes and Convolutional Codes.
CODING/DECODING CONCEPTS AND BLOCK CODING. ERROR DETECTION CORRECTION Increase signal power Decrease signal power Reduce Diversity Retransmission Forward.
1 SNS COLLEGE OF ENGINEERING Department of Electronics and Communication Engineering Subject: Digital communication Sem: V Cyclic Codes.
A Novel technique for Improving the Performance of Turbo Codes using Orthogonal signalling, Repetition and Puncturing by Narushan Pillay Supervisor: Prof.
Wireless Mobile Communication and Transmission Lab. Theory and Technology of Error Control Coding Chapter 5 Turbo Code.
Medicaps Institute of Technology & Management Submitted by :- Prasanna Panse Priyanka Shukla Savita Deshmukh Guided by :- Mr. Anshul Shrotriya Assistant.
Basic Characteristics of Block Codes
Outline Transmitters (Chapters 3 and 4, Source Coding and Modulation) (week 1 and 2) Receivers (Chapter 5) (week 3 and 4) Received Signal Synchronization.
Coding Theory. 2 Communication System Channel encoder Source encoder Modulator Demodulator Channel Voice Image Data CRC encoder Interleaver Deinterleaver.
DIGITAL COMMUNICATIONS Linear Block Codes
Coded Modulation for Multiple Antennas over Fading Channels
EE 3220: Digital Communication
1 Coded modulation So far: Binary coding Binary modulation Will send R bits/symbol (spectral efficiency = R) Constant transmission rate: Requires bandwidth.
Real-Time Turbo Decoder Nasir Ahmed Mani Vaya Elec 434 Rice University.
1 Channel Coding (III) Channel Decoding. ECED of 15 Topics today u Viterbi decoding –trellis diagram –surviving path –ending the decoding u Soft.
Last time, we talked about:
Timo O. Korhonen, HUT Communication Laboratory 1 Convolutional encoding u Convolutional codes are applied in applications that require good performance.
Error Correction Code (2)
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
A simple rate ½ convolutional code encoder is shown below. The rectangular box represents one element of a serial shift register. The contents of the shift.
Turbo Codes. 2 A Need for Better Codes Designing a channel code is always a tradeoff between energy efficiency and bandwidth efficiency. Lower rate Codes.
Sujan Rajbhandari LCS Convolutional Coded DPIM for Indoor Optical Wireless Links S. Rajbhandari, N. M. Aldibbiat and Z. Ghassemlooy Optical Communications.
Wireless Communication Research Lab. CGU What is Convolution Code? 指導教授:黃文傑 博士 學生:吳濟廷
Dr. Muqaibel \ EE430 Convolutional Codes 1 Convolutional Codes.
Log-Likelihood Algebra
SNS COLLEGE OF ENGINEERING Department of Electronics and Communication Engineering Subject: Digital communication Sem: V Convolutional Codes.
Convolutional Coding In telecommunication, a convolutional code is a type of error- correcting code in which m-bit information symbol to be encoded is.
1 Reliability-Based SD Decoding Not applicable to only graph-based codes May even help with some algebraic structure SD alternative to trellis decoding.
Digital Communications I: Modulation and Coding Course Spring Jeffrey N. Denenberg Lecture 3c: Signal Detection in AWGN.
1 Channel Coding: Part III (Turbo Codes) Presented by: Nguyen Van Han ( ) Wireless and Mobile Communication System Lab.
Diana B. Llacza Sosaya Digital Communications Chosun University
Block Coded Modulation Tareq Elhabbash, Yousef Yazji, Mahmoud Amassi.
1 Code design: Computer search Low rate: Represent code by its generator matrix Find one representative for each equivalence class of codes Permutation.
Classical Coding for Forward Error Correction Prof JA Ritcey Univ of Washington.
Joint Decoding on the OR Channel Communication System Laboratory UCLA Graduate School of Engineering - Electrical Engineering Program Communication Systems.
FEC decoding algorithm overview VLSI 자동설계연구실 정재헌.
MD. TARIQ HASAN SoC Design LAB Department of Information and Communication Engineering College of Electronics and Information Engineering Chosun University.
DIGITAL SYTEM DESIGN MINI PROJECT CONVOLUTION CODES
The Viterbi Decoding Algorithm
Coding and Interleaving
S Digital Communication Systems
COS 463: Wireless Networks Lecture 9 Kyle Jamieson
Error Correction Code (2)
Error Correction Code (2)
Chapter 10: Error-Control Coding
Wireless Mesh Networks
Error Correction Code (2)
COS 463: Wireless Networks Lecture 9 Kyle Jamieson
Homework #2 Due May 29 , Consider a (2,1,4) convolutional code with g(1) = 1+ D2, g(2) = 1+ D + D2 + D3 a. Draw the.
Error Correction Coding
IV. Convolutional Codes
Presentation transcript:

Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 12

2 Last time, we talked about: How decoding is performed for Convolutional codes? What is a Maximum likelihood decoder? What are soft decisions and hard decisions? How does the Viterbi algorithm work?

Lecture 123 Trellis of an example ½ Conv. code Input bits Output bits Tail bits 1/11 0/00 0/10 1/11 1/01 0/00 0/11 0/10 0/01 1/11 1/01 1/00 0/00 0/11 0/10 0/01 0/00 0/11 0/00 1/01

Lecture 124 Block diagram of the DCS Information source Rate 1/n Conv. encoder Modulator Information sink Rate 1/n Conv. decoder Demodulator Channel

Lecture 125 Soft and hard decision decoding In hard decision: The demodulator makes a firm or hard decision whether one or zero was transmitted and provides no other information for the decoder such as how reliable the decision is. In Soft decision: The demodulator provides the decoder with some side information together with the decision. The side information provides the decoder with a measure of confidence for the decision.

Lecture 126 Soft and hard decision decoding … ML soft-decisions decoding rule: Choose the path in the trellis with minimum Euclidean distance from the received sequence ML hard-decisions decoding rule: Choose the path in the trellis with minimum Hamming distance from the received sequence

Lecture 127 The Viterbi algorithm The Viterbi algorithm performs Maximum likelihood decoding. It finds a path through trellis with the largest metric (maximum correlation or minimum distance). At each step in the trellis, it compares the partial metric of all paths entering each state, and keeps only the path with the largest metric, called the survivor, together with its metric.

Lecture 128 Example of hard-decision Viterbi decoding Branch metric Partial metric

Lecture 129 Example of soft-decision Viterbi decoding 5/3 -5/3 4/ /3 -1/3 5/3 -5/3 1/3 -1/3 -5/3 0 10/31/314/3 2 8/3 10/3 13/33 1/3 5/3 Branch metric Partial metric 1/3 -4/3 5/3 -5/3

Lecture 1210 Today, we are going to talk about: The properties of Convolutional codes: Free distance Transfer function Systematic Conv. codes Catastrophic Conv. codes Error performance Interleaving Concatenated codes Error correction scheme in Compact disc

Lecture 1211 Free distance of Convolutional codes Distance properties: Since a Convolutional encoder generates codewords with various sizes (as opposite to the block codes), the following approach is used to find the minimum distance between all pairs of codewords: Since the code is linear, the minimum distance of the code is the minimum distance between each of the codewords and the all-zero codeword. This is the minimum distance in the set of all arbitrary long paths along the trellis that diverge and re-merge to the all-zero path. It is called the minimum free distance or the free distance of the code, denoted by

Lecture 1212 Free distance … Hamming weight of the branch All-zero path The path diverging and re-merging to the all-zero path w. minimum weight

Lecture 1213 Transfer function of Convolutional codes Transfer function: The transfer function of the generating function is a tool which provides information about the weight distribution of the codewords. The weight distribution specifies weights of different paths in the trellis (codewords) with their corresponding lengths and amount of information.

Lecture 1214 Transfer function … Example of transfer function for the rate ½ Convolutional code. 1.Redraw the state diagram such that the zero state is split into two nodes, the starting and ending nodes. 2.Label each branch by the corresponding a = 00b = 10c = 01e = 00 d =11

Lecture 1215 Transfer function … Write the state equations ( dummy variables )‏ Solve One path with weight 5, length 3 and data weight of 1 One path with weight 6, length 4 and data weight of 2 One path with weight 5, length 5 and data weight of 2

Lecture 1216 Systematic Convolutional codes A Conv. Coder at rate is systematic if the k-input bits appear as part of the n-bits branch word. Systematic codes in general have smaller free distance than non-systematic codes. Input Output

Lecture 1217 Catastrophic Convolutional codes Catastrophic error propagations in Conv. code: A finite number of errors in the coded bits cause an infinite number of errors in the decoded data bits. A Convolutional code is catastrophic if there is a closed loop in the state diagram with zero weight. Systematic codes are not catastrophic: At least one branch of output word is generated by input bits. Small fraction of non-systematic codes are catastrophic.

Lecture 1218 Catastrophic Conv. … Example of a catastrophic Conv. code: Assume all-zero codeword is transmitted. Three errors happens on the coded bits such that the decoder takes the wrong path abdd…ddce. This path has 6 ones, no matter how many times stays in the loop at node d. It results in many erroneous decoded data bits. InputOutput a 00 b 10 c 01 e 00 d

Lecture 1219 Performance bounds for Conv. codes Error performance of the Conv. codes is analyzed based on the average bit error probability (not the average codeword error probability), because Codewords have variable sizes due to different sizes of the input. For large blocks, codeword error probability may converge to one bit but the bit error probability may remain constant. ….

Lecture 1220 Performance bounds … Analysis is based on: Assuming the all-zero codeword is transmitted Evaluating the probability of an “error event” (usually using bounds such as union bound). An “error event” occurs at a time instant in the trellis if a non-zero path leaves the all-zero path and re-merges to it at a later time.

Lecture 1221 Performance bounds … Bounds on bit error probability for memoryless channels: Hard-decision decoding: Soft decision decoding on AWGN channels using BPSK

Lecture 1222 Performance bounds … Error correction capability of Convolutional codes, given by, depends on If the decoding is performed long enough (within 3 to 5 times of the constraint length)‏ How the errors are distributed (bursty or random)‏ For a given code rate, increasing the constraint length, usually increases the free distance. For a given constraint length, decreasing the coding rate, usually increases the free distance. The coding gain is upper bounded

Lecture 1223 Performance bounds … Basic coding gain (dB) for soft-decision Viterbi decoding

Lecture 1224 Interleaving Convolutional codes are suitable for memoryless channels with random error events. Some errors have bursty nature: Statistical dependence among successive error events (time-correlation) due to the channel memory. Like errors in multipath fading channels in wireless communications, errors due to the switching noise, … “Interleaving” makes the channel looks like as a memoryless channel at the decoder.

Lecture 1225 Interleaving … Interleaving is achieved by spreading the coded symbols in time (interleaving) before transmission. The reverse in done at the receiver by deinterleaving the received sequence. “Interleaving” makes bursty errors look like random. Hence, Conv. codes can be used. Types of interleaving: Block interleaving Convolutional or cross interleaving

Lecture 1226 Interleaving … Consider a code with t=1 and 3 coded bits. A burst error of length 3 can not be corrected. Let us use a block interleaver 3X3 A1A2A3B1B2B3C1C2C3 2 errors A1A2A3B1B2B3C1C2C3 Interleaver A1B1C1A2B2C2A3B3C3A1B1C1A2B2C2A3B3C3 Deinterleaver A1A2A3B1B2B3C1C2C3 1 errors

Lecture 1227 Concatenated codes A concatenated code uses two levels on coding, an inner code and an outer code (higher rate). Popular concatenated codes: Convolutional codes with Viterbi decoding as the inner code and Reed-Solomon codes as the outer code The purpose is to reduce the overall complexity, yet achieving the required error performance. Interleaver Modulate Deinterleaver Inner encoder Inner decoder Demodulate Channel Outer encoder Outer decoder Input data Output data

Lecture 1228 Practical example: Compact disc The channel in a CD playback system consists of a transmitting laser, a recorded disc and a photo- detector. Sources of errors are manufacturing damages, fingerprints or scratches Errors have bursty like nature. Error correction and concealment is achieved by using a concatenated error control scheme, called cross- interleaver Reed-Solomon code (CIRC). “Without error correcting codes, digital audio would not be technically feasible.”

Lecture 1229 Compact disc – cont’d interleaveencodeinterleaveencodeinterleave deinterleavedecodedeinterleavedecodedeinterleave Encoder Decoder CIRC encoder and decoder: