Beruflich Dokumente
Kultur Dokumente
Control
Class Contents
Error Control
Error Detection
Parity Check
Cyclic Redundancy Check
Modulo 2 Arithmetic
Polynomials
Digital Logic
Block Error Correction Codes
Block Code Principles
Hamming Code
Cyclic Codes
BCH Codes
Reed-Solomon Codes
Automatic Repeat Request
Flow Control
Error Control using Go-Back-N ARQ.
Error Control
Approaches to treat errors in data transmissions
bits/frame 10 15 20
Pb P1 P2 P1 P2 P1 P2
0.01 90.44% 9.56% 86.01% 13.99% 81.79% 18.21%
0.05 59.87% 40.13% 46.33% 53.67% 35.85% 64.15%
0.1 34.87% 65.13% 20.59% 79.41% 12.16% 87.84%
Error Detection
Principle of Operation
Odd Parity
Even Parity
Cyclic Redundancy Check (CRC)
Modulo 2 Arithmetic
Polynomials
Digital Logic
CRC – Modulo 2 Arithmetic
Use of binary addition with no carry:
11001
1111 1111 x11
+1010 - 0101 11001
0101 1010 11001
101011
A0 A
A 1 A
AA 0
CRC – Modulo 2 Arithmetic
Definitions:
nk
2 D R The remaining will be the FCS
Q
P P The transmitted signal
will be exactly divisible by P
Modulo 2 Numerical Example
Given the following:
Message D = 1010001101
Divisor Pattern P = 110101
FCS R=?
T ( X ) X n k D( x ) R ( X )
All Single bit errors (P(X) has more than 1 nonzero term)
v1 = 011011
d(v1,v2)=3
v2 = 110001
00 00000
01 00111
10 11001
11 11110
00111 or 11001
00110 1 00111 10101 2
01000 1 00000 10110 1 11110
01001 1 11001 10111 1 00111
00000 or 11110
01010 2 11000 1 11001
00111 or 11001
01011 2 11010 1 11110
00000 or 11110
01100 2 11011 1 11001
00111 or 11001
01101 2 11100 1 11110
01110 1 11110 11101 1 11001
01111 1 00111 11111 1 11110
Block Code Principle – Valid Codeword
Distances
pair distance pair Distance pair distance
00000, 3 00000, 3 00000, 4
00111 11001 11110
Each valid codeword, reproduces the original k data bits and adds to
them n-k check bits to form the n-bit codeword.
Code Rate is the ratio of data bits to total bits. It is a measure of how
much additional bandwidth is required to carry data at the same rate
as without the code.
k/n
Considerations in Block Code
Design.
For any given n and k, we would like the largest
possible value of dmin.
The code should be relatively easy to encode
and decode, requiring minimal memory and
processing time
The number of extra bits should be small to
reduce bandwidth
The number of extra bits should be high to
reduce error rate.
Hamming Code
Block Length: n 2m 1
Number of Data Bits: k 2m m 1 where m3
Number of Check Bits: nk m
Minimum Distance: d min 3
•The encoding process preserves the k data bits and adds n-k check bits.
•For decoding, the comparison logic receives as input two (n-k)-bit values,
one from the incoming codeword, and one from the calculation performed
on the incoming data bits.
•A bit-by-bit comparison is done (using XOR) and the result is called the
syndrome word. Each bit of the syndrome is 0 or 1 according to whether
there is or is not a match in that bit position for the two inputs.
Hamming Code – Syndrome
Characteristics
No error detected: Syndrome = 0