Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

University of San Agustin

General Luna St., 5000 Iloilo City, Philippines


www.usa.ed.ph
COLLEGE OF TECHNOLOGY

Submitted By: Raquel B. Gonzales B.S. CpE 5


Error Detection and Correction

1. Block Coding
In block coding, we divide our message into blocks, each of k bits, called
datawords. We add r redundant bits to each block to make the length n = k + r. The
resulting n-bit blocks are called codewords.

Data words and code words in block coding

Block coding was the first type of channel coding implemented in early mobile
communication systems. There are many types of block coding, but among the most used
ones the most important is Reed-Solomon code, that is presented in the second part of
the coursework, because of its extensive use in famous applications. Hamming, Golay,
Multidimensional parity and BCH codes are other well-known examples of classical block
coding.
The main feature of block coding is that it is a fixed size channel code (in contrary
to source coding schemes such as Huffman coders, and channel coding techniques as
convolutional coding). Using a preset algorithm, block coders take a k-digit information
word, S and transform it into an n-digit codeword, C(s). The block size of such a code will
be n. This block is examined at the receiver, which then decides about the validity of the
sequence it received.
2. Linear Block Coding
Almost all block codes used today belong to a subset called linear block codes. A
linear block code is a code in which the exclusive OR (addition modulo-2) of two valid
codewords creates another valid codeword.
In a linear block code, the exclusive OR (XOR) of any two valid codewords creates
another valid codeword.
University of San Agustin
General Luna St., 5000 Iloilo City, Philippines
www.usa.ed.ph
COLLEGE OF TECHNOLOGY

Submitted By: Raquel B. Gonzales B.S. CpE 5


Error Detection and Correction

Linear block code (n,k) is a set with cardinality is called a linear block code if, and
only if, it is a subspace of the vector space Vn.

• Members of C are called code-words.


• The all-zero codeword is a codeword.
• Any linear combination of code-words is a codeword.

The information bit stream is chopped into blocks of k bits. Each block is
encoded to a larger block of n bits. The coded bits are modulated and sent over channel.
The reverse procedure is done at the receiver.
University of San Agustin
General Luna St., 5000 Iloilo City, Philippines
www.usa.ed.ph
COLLEGE OF TECHNOLOGY

Submitted By: Raquel B. Gonzales B.S. CpE 5


Error Detection and Correction

3. Cyclic Codes
Cyclic codes form a very small and highly structured subset of the set of linear
codes. The definition of a cyclic code may seem arbitrary, but in fact there are good
reasons for it, which begin to appear if we introduce the notion of the generating function
of a codeword. If C = (C0, ··· , Cn−1) is a codeword, its generating function is defined to be
the polynomial
C(x) = C0 + C1x + ··· + Cn−1xn−1,
Cyclic codes are special linear block codes with one extra property. In a cyclic code,
if a codeword is cyclically shifted (rotated), the result is another codeword. The divisor in
a cyclic code is normally called the generator polynomial or simply the generator.

In a cyclic code,
If s(x) ≠ 0, one or more bits is corrupted.
If s(x) = 0, either
a. No bit is corrupted. or
b. Some bits are corrupted, but the
decoder failed to detect them.
In a cyclic code, those e(x) errors that are divisible by g(x) are not caught. Received
codeword (c(x) + e(x))/g(x) = c(x)/g(x) + e(x)/gx The first part is by definition divisible the
second part will determine the error. If “0” conclusion -> no error occurred.
Cyclic Redundancy Check code with C (7,4)

CRC encode and decoder


University of San Agustin
General Luna St., 5000 Iloilo City, Philippines
www.usa.ed.ph
COLLEGE OF TECHNOLOGY

Submitted By: Raquel B. Gonzales B.S. CpE 5


Error Detection and Correction

Division in CRC
University of San Agustin
General Luna St., 5000 Iloilo City, Philippines
www.usa.ed.ph
COLLEGE OF TECHNOLOGY

Submitted By: Raquel B. Gonzales B.S. CpE 5


Error Detection and Correction

4. Checksum
The error usually occurs in burst. The parity check method is not useful in
detecting the errors under such conditions. The checksum error detection method can be
used successfully in detecting such errors. In this method, a check sum is transmitted
along with every block of data byte. In this method an eight-bit accumulator to use to add
8 bytes of a block of data to find the checksum byte. The carries of the MSB are ignored
while finding out the checksum byte.
After transmitting a block of data bytes, the check sum byte is also transmitted.
The checksum is generated at the receiver separately by adding the received bytes. The
regenerated check sum byte is then compared with the transmitted one. If both are
identical and there is no error. If they are different then the errors are present in the block
of received data bytes.
The checksum is used in the Internet by several protocols although not at the data
link layer. The negative (complement) of the sum, is called the checksum.
University of San Agustin
General Luna St., 5000 Iloilo City, Philippines
www.usa.ed.ph
COLLEGE OF TECHNOLOGY

Submitted By: Raquel B. Gonzales B.S. CpE 5


Error Detection and Correction

Sender site: Receiver site:


1. The message is divided into 16-bit 1. The message (including checksum) is
words. divided into 16-bit words.
2. The value of the checksum word is set 2. All words are added using one’s
to 0. complement addition.
3. All words including the checksum are 3. The sum is complemented and becomes
added using one’s complement the
addition. new checksum.
4. The sum is complemented and 4. If the value of checksum is 0, the
becomes the message
checksum. is accepted; otherwise, it is rejected.
5. The checksum is sent with the data.

You might also like