Parity Checker
Parity Checker
Parity
Check
1
Content
Why we need Error Detection?
What are the Errors?
What are the Error Detection Mechanisms?
Parity Check
Single Parity Check
Two Dimensional Parity Check
Drawbacks of Parity
2
Error Detection
• Data can be corrupted during transmission. Even with best prevention
methods.
• For a reliable communication, errors must be detected and
corrected.
• Error detection and correction are implemented either at data link layer or
the transport layer of the OSI model.
3
Types of Errors
• Single bit error :-
- Only one bit in the data unit has
changed.
0 changed to 1
Received Sent
4
Types of Errors
• Burst error :-
- It means that two or more bits in the data unit has changed.
Sent
B
i
t
s
5
c
o
Error Detection
Codes
• Error detecting code is to include only enough redundancy to allow the receiver to
deduce that an error occurred, but not which error, and have it request a re-
transmission.
• Used in Low Noisy Channels – Fiber Optics
• Error detection uses the concept of redundancy, which means adding extra bits
for detecting error at the destination
• To detect an error, something extra has to be added to the data/signal
• This extra is an error detection code
• 3 Techniques are there: Parity Check, Check Sum, CRC
6
Parity
Check
• The Simplest method Available - it’s a linear, systematic block code
• 2 Parity Check Methods are there:
• Simple Parity - For Single bit Errors
• Two Dimensional - For Burst Errors
• How to use Parity Methods?
• Parity Generate – Sender’s Side
• Parity Detect – Receiver’s Side
7
Single Parity Check(VRC)
Vertical Redundancy Check
• In Single parity check, a parity bit is added to every data unit so that the total
number of 1s is even or odd.
1
Information(1 byte – 8 bits)
10
How is the even parity bit
generated?
Total number of ‘1’s should be
even.
If the byte that we want to transmit is: 1 0 10 110 1
• Step 1: count the number of 1’s in the byte.
• Answer: 5
• Step 2: compute the parity 10 10 110 1
value. 1 parity bit will have a value of
• Since the total number of 1’s is 5, the even 1.
• If the number of bits are already even, the parity bit will be ‘0’.
11
How is the odd parity bit
generated?
Total number of ‘1’s should be odd.
If the byte that we want to transmit is: 1 0 10 110 0
• Step 1: count the number of 1’s in the byte.
• Answer: 4
• Step 2: compute the parity 10 10 110 0 1
value.
• Since the total number of 1’s is 4, the odd parity bit will have a value of 1.
• If the number of bits are already odd, the parity bit will be ‘0’.
12
Single Parity check(Cont.)
Parity Detection
• In OEvdednppaarrityyCCoonncceepptt
Count Number of ‘1’ s in Received Data
Request Re -Transmission
No
EOv Reject Data
dedn
Yes
Drop Redundant
Bit
and
13
Accept
Data
Drawbacks of Single Parity
Check
• Only can detect single bit errors ; Single bit errors are rare.
• Can not detect errors, if 2 bits are interchanged.
1 0 10 110 1 1 1 11 0 1 0 0 1 1
5+1=6 5+1=6
10 1 0 110 1 1 1 10 0 1 0 0 0 1
5+1=6 3+1=4
14
Two Dimensional Parity Check(LRC)
Longitudinal Redundancy Check
15
Two Dimensional Parity check(Cont.)
Parity Generation
• A block of bits is organized in a table (rows & columns) a parity bit is
calculated for each row and column.
• Compute (m + n + 1) parity bits and send (mn + m + n + 1) bits
1) Adds a parity bit to each character then adds a row of parity bits after a block of
characters
2) The row of parity bits is actually a parity bit for each “column” of characters
3) The row of parity bits plus the column parity bits add a great amount of
redundancy to a block of characters
• Lets see this with an example:
16
Two Dimensional Parity Generation
Even Parity Concept
Original Data 1100111 1011101 0111001 0101001
No ‘1’s : 5 1 1 0 0 1 1 1 1
No ‘1’s : 5 1 0 1 1 1 0 1 1
No ‘1’s : 4 0 1 1 1 0 0 1 0 Row Parity
No ‘1’s : 0 1 0 1 0 0 1 1
3
No ‘1’s : 0 1 0 1 1 0 1
3 0
Column Parity
This will Send 1100111 1 1011101 1 0111001 0 0101001 1 01010101
7
1
Drawbacks of 2D Parity
Check
• 4- and more bit errors can be detected in some cases
19
Summar
y
• Parity checking is a means of checking if the communication of a sequence of bits
has been correctly received.
• Parity bit is an extra bit that is attached to the data bits/Signal that is being
transferred from one location to another.
• The two types of most commonly used parity checking are:
Single Parity Check 2D Parity Check
• odd parity
• even parity
• Single Parity bit checking can detect single error only, double errors will not be
detected. Even the 2D parity is not efficient and can not use in some cases.
20
Thank You!
The end.
21