Standard Array
1/3 Repetition Encoder Encoder 2 𝑛 possible combinations of 𝑛 bits 0 0 0 1 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 𝑘 𝑛 2 𝑛 possible combinations of 𝑛 bits 2 𝑘 valid codewords 2 𝑛 − 2 𝑘 invalid codewords
Assume bit 0 is intended to be transmitted 0 1 1 0 0 0 0 0 1 1 1 1 Encoder 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 Decoder 1 Invalid codeword Invalid codeword Valid codeword 1 bit in error 2 bits in error 0 bits in error 3 bits in error Undetected error Correct reception Upon receiving an invalid codeword Error Detection (retransmission) Error Correction
Error Detection Once an invalid codeword is received ask for retransmission 0 0 1 0 1 0 Encoder 0 0 0 1 1 1 0 1 1 Decoder 1 0 0 1 0 1 1 1 0 Automatic Repeat Request Undetectable Error Pattern: If the received vector is a valid codeword but not the one intended to be transmitted 2 𝑘 valid codewords 2 𝑘 -1 undetectable error patterns
Error Correction Once an invalid codeword is received attempt to correct it 0 1 1 0 0 1 Encoder 0 0 0 1 0 1 1 0 1 0 Decoder 1 0 0 1 1 0 False Correction Correct Correction
Minimum Distance Error Correction Mode: Error Detection Mode: 0 0 0 dmin is the minimum distance between all the valid codewords 0 0 0 Error Correction Mode: Error Detection Mode: 𝑑 𝑚𝑖𝑛 −1 2 0 0 1 0 1 0 1 0 0 Error Correction Capability 1 bit in error 1 bit in error 𝑑 𝑚𝑖𝑛 −1 Error Detection Capability (Correct Correction) (Detectable) 𝑑 𝑚𝑖𝑛 =3 0 1 1 1 0 1 1 1 0 2 bits in error 2 bits in error (False Correction) (Detectable) 3 bits in error (Undetectable) 1 1 1
Standard array Divide the 2n possible received vectors into 2k regions of valid codewords 2 𝑘 valid codewords 0 0 0 1 1 1 0 0 1 1 1 0 0 1 0 1 0 1 1 0 0 0 1 1 2n-k -1 Correctable Error Patterns Encoder 0 0 0 1 0 1 1 0 1 0 Decoder 0 0 0 1 1 1 Correct Correction False Correction
Linear block Codes (5,2) Linear Block Code 𝑘=2, 𝑛=5 𝐺= 1 1 0 0 1 1 1 0 0 1 𝑘 𝑢 𝑣 0 0 0 0 0 0 0 0 1 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 0 1 1 1 2 2 valid codewords out of 2 5 possible combinations 𝑑 𝑚𝑖𝑛 =3 Error Detection Capability =2 Error Correction Capability =1
Standard Array Cosets Coset Leaders 2 𝑘 valid codewords 0 0 0 0 0 0 1 1 0 1 1 1 0 1 0 1 0 1 1 1 1 0 0 0 0 1 1 1 0 1 0 1 0 1 0 0 0 1 1 1 0 1 0 0 0 0 0 1 0 1 1 0 0 1 0 1 1 1 1 1 0 0 1 0 0 0 1 0 0 1 1 1 1 1 0 1 0 0 1 1 0 0 0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 1 0 0 0 0 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 0 2n-k -1 Correctable Error Patterns Cosets Coset Leaders 0 1 Encoder 0 1 1 0 1 0 1 1 1 1 Decoder 0 1 0 1 1 0 1 Correct Correction
Syndrome Decoding All vectors in a coset have the same symdrome 𝒆 𝒖 Encoder 𝒗 𝒓 Decoder 𝒖 𝒗 𝐻= 1 0 0 0 1 0 1 0 1 1 0 0 1 0 1 𝑠=𝑟 𝐻 𝑇 = 𝑣+𝑒 𝐻 𝑇 =𝑣 𝐻 𝑇 +𝑒 𝐻 𝑇 =𝑒 𝐻 𝑇 All vectors in a coset have the same symdrome
Standard Array Syndome 0 0 0 0 0 0 1 1 0 1 1 1 0 1 0 1 0 1 1 1 1 0 0 1 0 0 0 0 1 1 1 0 1 0 1 0 1 0 0 0 1 1 1 0 1 0 0 1 0 0 0 0 0 1 0 1 1 0 0 1 0 1 1 1 1 1 0 0 1 0 0 1 0 0 0 1 0 0 1 1 1 1 1 0 1 0 0 1 1 1 1 0 0 0 0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 0 𝐻 𝑇 = 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 𝒖=0 1 Encoder 𝒗=0 1 1 0 1 𝒓=0 1 1 1 1 Decoder 𝒖 =0 1 𝑠=1 1 0 𝑒=0 0 0 1 0 𝑣 =0 1 1 0 1
Standard Array Syndome 0 0 0 0 0 0 1 1 0 1 1 1 0 1 0 1 0 1 1 1 1 0 0 1 0 0 0 0 1 1 1 0 1 0 1 0 1 0 0 0 1 1 1 0 1 0 0 1 0 0 0 0 0 1 0 1 1 0 0 1 0 1 1 1 1 1 0 0 1 0 0 1 0 0 0 1 0 0 1 1 1 1 1 0 1 0 0 1 1 1 1 0 0 0 0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 0 𝐻 𝑇 = 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 1 0 0 0 0 0 1 1 0 1 1 1 0 1 1 0 0 1 1 0 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 0 1 0 1 1 1 1 1 0 0 1 0 0 0 1 For the remaining rows, choose an error pattern that hasn’t appeared before, i.e. with a different syndrome 0 0 1 1 0 1 0 0 0 1 0 1 1 0 Encoder Encoder 0 1 1 0 1 1 1 0 1 0 1 1 1 0 0 1 1 1 0 0 Decoder Decoder 1 0 1 0 1 1 0 1 0 1 1 0 1 0 False Correction Correct Correction