View
222
Download
0
Embed Size (px)
Citation preview
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
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)
Trellis Coded Modulation (TCM) Combined coding and modulation scheme Make most similar signals (phases) represent most different/distance codewords
Turbo Codes
Iterative Decoding Each decoder takes into account “guess”
from other Continue till produce same “guesses”
Used in 3G/4G WiMAX