COMM 604 Channel Coding - GUC
of 21
/21
Embed Size (px)
Transcript of COMM 604 Channel Coding - GUC
COMM 604 Channel Coding Pr{B*≠B}=p
For a relatively noisy channel, p (i.e., probability of error) may have a value of 10-2
For many applications, this is not acceptable
– Examples:
Speech Requirement: Pr{B*≠B}<10-3
Data Requirement: Pr{B*≠B}<10-6
Channel coding can help to achieve such a high level of performance
Channel Coding
B1B2.. Bk
Channel Decoder
0 0
Channel Encoder
Channel Encoder: Mapping of k information bits in to an n-bit code word
Channel Decoder: Inverse mapping of n received code bits back to k information bits
Code Rate r=k/n
r<1
W1W2.. Wn W*1W*2.. W*n B*1B*2.. B*k
Physical Channel
Information sequence is segmented into message blocks of
fixed length.
codeword (n>k)
Linear Block Codes
Binary Block Encoder
Linear Block Codes
Linear Block Codes
also a codeword
linearly independent codewords in C,
i.e.,
Linear Independence
A set of vectors g0, g1,…, gk-1 are linearly independent
if there exists no scalars u0, u1,…, uk-1 that satisfy
0 1 10 1 k-1v g g g 0ku u ... u
Unless u0=u1=…= uk-1=0
Examples
[0 1 0 ], [1 0 1], [1 1 1] are ………
Linearly Dependent
[0 1 0 ], [1 0 1], [0 0 1] are ………
Linearly Independent
Linear Independence
2
g
Block Encoder (v=u.G)
v= g1+g2+g3
Linearly Dependent
Block Encoder (v=u.G)
v= [0 1 1 1 0 0 1] NOT DISTINCT
(n,k) Systematic Linear Block Codes
Split data into k-bit blocks
Add (n-k) parity bits to each block using (n-k) linear
equations, making each block n bits long
(n,k) Systematic Linear Block Codes
1 0 0
0 1 0
0 0 1
G= P I
p p ... p ...
p p ... p ...
p-matrix kxk- identity matrix
The Parity Check Matrix
For any k x n matrix G with k linearly independent rows, there
exists an (n-k) x n matrix H (Parity Check Matrix), such that
– G.HT=0
1 0 0
0 1 0
0 0 1
p p ... p...
p p ... p...
G
H
0 1 1 0 1 0 0
1 1 1 0 0 1 0
1 0 1 0 0 0 1
G
Error Detection
Ask for Retransmission of Block
Automatic Repeat Request (ARQ)
Forward Error Correction
Undetectable Error Patterns
NO! WHY?
e C r C How many undetectable error patterns exist?
2k-1 Nonzero codeword means
2k-1 undetectable error patterns
+ + +
For a relatively noisy channel, p (i.e., probability of error) may have a value of 10-2
For many applications, this is not acceptable
– Examples:
Speech Requirement: Pr{B*≠B}<10-3
Data Requirement: Pr{B*≠B}<10-6
Channel coding can help to achieve such a high level of performance
Channel Coding
B1B2.. Bk
Channel Decoder
0 0
Channel Encoder
Channel Encoder: Mapping of k information bits in to an n-bit code word
Channel Decoder: Inverse mapping of n received code bits back to k information bits
Code Rate r=k/n
r<1
W1W2.. Wn W*1W*2.. W*n B*1B*2.. B*k
Physical Channel
Information sequence is segmented into message blocks of
fixed length.
codeword (n>k)
Linear Block Codes
Binary Block Encoder
Linear Block Codes
Linear Block Codes
also a codeword
linearly independent codewords in C,
i.e.,
Linear Independence
A set of vectors g0, g1,…, gk-1 are linearly independent
if there exists no scalars u0, u1,…, uk-1 that satisfy
0 1 10 1 k-1v g g g 0ku u ... u
Unless u0=u1=…= uk-1=0
Examples
[0 1 0 ], [1 0 1], [1 1 1] are ………
Linearly Dependent
[0 1 0 ], [1 0 1], [0 0 1] are ………
Linearly Independent
Linear Independence
2
g
Block Encoder (v=u.G)
v= g1+g2+g3
Linearly Dependent
Block Encoder (v=u.G)
v= [0 1 1 1 0 0 1] NOT DISTINCT
(n,k) Systematic Linear Block Codes
Split data into k-bit blocks
Add (n-k) parity bits to each block using (n-k) linear
equations, making each block n bits long
(n,k) Systematic Linear Block Codes
1 0 0
0 1 0
0 0 1
G= P I
p p ... p ...
p p ... p ...
p-matrix kxk- identity matrix
The Parity Check Matrix
For any k x n matrix G with k linearly independent rows, there
exists an (n-k) x n matrix H (Parity Check Matrix), such that
– G.HT=0
1 0 0
0 1 0
0 0 1
p p ... p...
p p ... p...
G
H
0 1 1 0 1 0 0
1 1 1 0 0 1 0
1 0 1 0 0 0 1
G
Error Detection
Ask for Retransmission of Block
Automatic Repeat Request (ARQ)
Forward Error Correction
Undetectable Error Patterns
NO! WHY?
e C r C How many undetectable error patterns exist?
2k-1 Nonzero codeword means
2k-1 undetectable error patterns
+ + +