Channel Coding: An Introduction to Error Detection and Correction, Slides of Digital Communication Systems

Channel Coding Lecture

Typology: Slides

2013/2014

Uploaded on 10/01/2014

Y.A.Faraz
Y.A.Faraz 🇵🇰

5

(1)

2 documents

1 / 16

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Channel Coding
Binit Mohanty
Ketan Rajawat
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Channel Coding: An Introduction to Error Detection and Correction and more Slides Digital Communication Systems in PDF only on Docsity!

Channel Coding

Binit Mohanty Ketan Rajawat

Recap…

 Information is transmitted through channels (eg. Wires, optical fibres and even air)  Channels are noisy and we do not receive what was transmitted

Repetition Coding

 Assume 1/3 repetition  What is the probability of error?  (^) If crossover probability p = 0.01, Pe ≈

 (^) Here coding rate R = 1/3. Can we do better? How much better?

2 3 2 3 P C p ( 1 p ) p e

Shannon’s Theorem

 Given,  (^) A noisy channel (some fixed p)  (^) A value of Pe which we want to achieve “We can transmit through the channel and achieve this probability of error at a maximum coding rate of C(p)”  (^) Is it counterintuitive?  (^) Do such good codes exist?

Parity Check Codes

 #information bits transmitted = k  #bits actually transmitted = n = k+  Code Rate R = k/n = k/(k+1)  Error detecting capability = 1  Error correcting capability = 0

2-D Parity Check

 Rate?  Error detecting capability?  Error correcting capability? 1 0 0 1 0 0 0 1 0 0 0 1 1 0 0 1 0 0 1 1 0 1 1 0 1 0 0 1 1 1 Bottom row consists of check bit for each column Last column consists of check bits for each row

Linear Block Codes

 Linearity  Example : 4/7 Hamming Code  (^) k = 4, n = 7  (^) 4 message bits at (3,5,6,7)  (^) 3 parity bits at (1,2,4)  (^) Error correcting capability =  (^) Error detecting capability = 2  (^) What is G? , 1 1 cm G

c m G

2 2

c c ( m m ) G 1 2 1 2   

Cyclic codes

 Special case of Linear Block Codes  Cyclic shift of a codeword is also a codeword  (^) Easy to encode and decode,  (^) Can correct continuous bursts of errors  (^) CRC (used in Wireless LANs), BCH codes, Hamming Codes, Reed Solomon Codes (used in CDs)

Convolutional Codes

 Encoder consists of shift registers forming a finite state machine  Decoding is also simple – Viterbi Decoder which works by tracking these states  First used by NASA in the voyager space programme  Extensively used in coding speech data in mobile phones

Achieving Capacity

 Do Block codes and Convolutional codes achieve Shannon Capacity? Actually they are far away  Achieving Capacity requires large k (block lengths)  Decoder complexity for both codes increases exponentially with k – not feasible to implement

Summary

 There is a limit on the how good codes can be  Linear Block Codes and Convolutional Codes have traditionally been used for error detection and correction  Turbo codes in 1993 introduced a new way of designing very good codes with feasible decoding complexity