Block Parity Checker LRC

In this error detection method, a block of bits is organized in a table with rows and columns.  Then the parity bit for each column is calculated and a new row of eight bits, which are the parity bits for the whole block, is created.  After that  the new calculated parity bits are attached to the original data and sends to the receiver.

LRC increases the likelihood of detecting burst error.  An LRC of n bits can easily detects a burst error of n bits.

However, if two bits in one data unit are damaged and two bits in exactly the same positions in another data unit are also damaged, the LRC checker will not detect an error.

Notice that although the 5th bit and the 7th bit for 1st and 2 nd data unit have been changed but the LRC calculated by receiver is still the same as the LRC received. Thus the receiver checker cannot detect this burst error.

Block Parity Checker LRC Implementation in Unix C

lrcsen.c (Block Parity LRC Sender)

lrcrec.c (Block Parity LRC Receiver)