cellular communications 6. channel coding. motivation wireless channel introduces errors due to ...

29
CELLULAR COMMUNICATIONS 6. Channel Coding

Post on 19-Dec-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

CELLULAR COMMUNICATIONS

6. Channel Coding

Motivation

Wireless channel introduces errors due to Noise and Interference Multipath Effect resulting in fast fading

Option A Increase power of transmission Waste of energy and interference

Option B Send redundant information Errors can be detected and re-transmission requested Errors can be corrected Forward Error Correction(FEC) or Channel Coding

Coded Communication System

Coding advantages

Pn

Eb/N0 dB

uncoded

coded10-8

10-3

8 19

Coding gain

Binary Symmetric Channel

Transmission medium introduce errors Demodulator produces errors Model as a channel

Memoryless: probability of error is independent from one symbol to the next

Symmetric: any error is equally probable Binary Symmetric Channel (BSC)

Error Correcting Codes (ECC) Redundancy added to information

Encode message of k bits with n (n>k) bits Example: Systematic Encoding

Redundant symbols are appending to information symbols to obtain a coded sequence

Codeword

Error correction vs. Error Detection Error-detection

Detect that received sequence contains an error Request retransmission ARQ: Automatic Repeat Request/Query (HSDPA)

Error-correction Detect that received sequence contains an error Correct the error Forward Error Correction

“A Code allows correction of up to p errors and detection up to q (q>p) errors”

Block Codes vs. Convolution Codes Block Codes

Encode information block by block Each block encoded independently Encoding/Decoding is a memoryless

operation Convolutional Codes

Next symbol depend on a history of inputs/outputs

Example Single-bit message 0 or 1 Extend to 3 bit messages (codewords)

010 101

Only 2 valid codeword out of 8 Due to the error can receive any

sequence Can associate invalid code with valid Invalid codes differs from valid only by 1

bit

Hamming distance and Block Code Two vectors of size n have a Hamming

Distance of d if they differ in d bits Block code is a subset of 2^n bit

sequences Code distance is minimum hamming

distance between any two members of the code

Assume code distance d=2t+1 Can detect up to 2t errors Can correct up to t-1 errors

Good Code Design Select a subset of 2^n (e.g. n=1024)

vectors such that

Distance between codewords is large as possible

Can find correct message without comparing with all possible codewords

Sphere Packing Bound

Assume have to encode M messages Want being able to correct up to t errors Each codeword have a ‘sphere” around it

with codes of distance up to t Spheres around different codewords are

not overlapping

Sphere Packing Bound

Assume

Example n=8, t=2=>M<6.9

Found only code of size 4 Code rate

Example (8,2) systematic code, 4 message, 2 information bits

Code rate 2/8=1/4

Shannon Theorem

p is probability bit error Probability of an error (incorrect

decoding) can be made arbitrary small if

Linear Codes Linear combination of valid codewords is

also a codeword Code distance is a minimum among all

nonzero codeword weights (number of 1s) Linear space spanned by basis:

Linear Codes: Decoding Parity check matrix

Gives zero when multiplied by valid codeword

When error is present, produce “syndrome”

Syndrome

Syndrome depends only on error pattern Different errors=>different syndromes

except for the addition of codeword Can identify error patterns of weight w<=t

by looking at the syndrome One-to-one between syndromes and errors

w<=t

Decoding using Syndrome

Evaluate the syndrome s from r Lookup corresponding e in a pre-

computed table Correct codeword c=r+e

Non-binary Codes

Alphabet of more then two symbols q=p^n where p is prime, GF(p^n) Each element of the alphabet is a vector Element-wise: operation modulo p Vector-wise: view as a polynomial

Reed-Solomon Code

a block code a cyclic code (some additional

constrains) Used in

CD/DVD Bar Codes Deep Space Communications Cellular Digit Packet Data CPDP RS(63,47)

Convolution Codes

Trellis Diagram

States During the Encoding

Decoding: Viterbi Algorithm

Errors on the channel Find path with minimal total errors

Trellis Coded Modulation (TCM) Combined coding and modulation scheme Make most similar signals (phases) represent most different/distance codewords

Turbo Codes

Use 2 convolutional codes on the same data

Feed data in different order to the encoders

Turbo Codes

Iterative Decoding Each decoder takes into account “guess”

from other Continue till produce same “guesses”

Used in 3G/4G WiMAX

How Do they Work (© IEEE spectrum)

How Do they Work (© IEEE spectrum)