Ass4 Com III
Ass4 Com III
1|Page
Contents
PART A .................................................................................................................................................... 3
THE DIFFERENT TYPES OF ERROR CORRECTING AND ERROR DETECTING CODES USED IN DIGITAL
COMMUNICATION.............................................................................................................................. 3
Types of errors................................................................................................................................ 3
Error detecting codes ..................................................................................................................... 3
Types of error detection ................................................................................................................. 3
Linear block codes .......................................................................................................................... 4
Hamming code................................................................................................................................ 4
Generator matrix ............................................................................................................................ 5
Cyclic code ...................................................................................................................................... 5
Convolutional Codes ....................................................................................................................... 5
Error syndrome............................................................................................................................... 6
PART B .................................................................................................................................................... 6
THE PROCESS OF DECODING THE (6, 3) LINEAR BLOCK CODE ........................................................... 6
a.) .................................................................................................................................................... 6
b.) .................................................................................................................................................. 10
References ............................................................................................................................................ 11
2|Page
PART A
THE DIFFERENT TYPES OF ERROR CORRECTING AND ERROR DETECTING CODES
USED IN DIGITAL COMMUNICATION
Almost in every electronic device cause error, and to get approximately correct output error
detection and error correcting codes are used in digital communication. In digital
communication analog signals are changed into a digital sequence of bits called data stream.
This data can be affected during transmission by external noise or other imperfections. This
mismatched data is called as error. Even error in one bit will cause whole system at failure.
Types of errors
Bit error is the change of 0 to 1 or vice versa. There are three types of errors, called single bit
errors, multiple bit errors and burst errors. If there is a change in one error in whole sequence
it is called as single bit error. Occurrence of single bit error in serial communication is very
rare. In parallel communication system as data is transferred bit wise in a single line it could
be noisy. In multiple bit data error two or more bits of data could be changed. Multiple errors
can be occurred in both serial and parallel type data communication. Burst errors is the
change of bits in data sequence. These errors are occurred in serial communication and those
are difficult to solve.
3|Page
• Number of 1’s or 0’s is calculated in information bits.
• Based on calculation of information data an extra bit is added to actual information
bits.(This will results in the change of data string size)
Under parity checking there are two types of parity bits in error detection called,
• Even parity
• Odd parity
Even parity
If data has even number of 1’s the parity bit is 0 and if data has odd number of 1’s the parity
bit is 1.
Odd parity
If data has odd number of 1’s the parity bit is 0 and if data has even number of 1’s the parity
bit is 1.
Parity generator is the circuit which adds parity bit to the data at source. If the parity bits sent
at transmitter and received at reciver are’nt equal then an error is detected. The circuit which
checks the parity at receiver is called as parity checker.
Hamming code
Hamming code is capable of detecting up to two simultaneous bit errors and correcting single
bit errors. The source encodes the informationby inseting redundant bits whithin the
masseages. Below three steps were used at the sourceto encode the information,
4|Page
• Redundant bits are positioned
• The vale of each redundant bit is calculated
At the receiver receiver uses below foer steps for decoding the information
Generator matrix
A generator matrix is a matrix whose rows serve as the foundation for a linear code in coding
theory. The codewords are all of the linear combinations of this matrix's rows; in other words,
the linear code is the row space of its generator matrix. (wikipedia, n.d.)
Cyclic code
Cyclic codes permits the design of higher order correcting codes. Encoding and syndrome
calculations can be easily implemented by using a simple shift registers. The codewords are
simple literal cyclic shifts of one another.
Convolutional Codes
Convolutional code is another type of error-correcting code in which the resulting bits are
obtained by performing an optimal logical procedure on the current bitstream while also
considering the previous bit.
Only the parity bits, which may contain errors in convolutional codes, are received by the other user
or system, which then decodes it to have the most ideal bit arrangement, i.e. the message bit itself.
Input bits are stored in shift registers. The encoding generates a block of 'n' digit codewords that are
dependent not only on the 'k' message digits, but also on the previous m-1 message blocks. Turbo
codes and a Trellis diagram are used. (geeksforgeeks, n.d.)
5|Page
Error syndrome
The pattern of errors, known as the error syndrome, identifies the incorrect bit. There is no
error if all parity bits are correct. Otherwise, the sum of the erroneous parity bit positions
identifies the erroneous bit. (wikipedia, n.d.) Error syndrome is the multiplication of
transmitted cord word with the transpose of the parity check matrix.
PART B
THE PROCESS OF DECODING THE (6, 3) LINEAR BLOCK CODE
a.)
6|Page
As the output of the code syndrome error pattern, syndrome, error and cordword is
generated. The size of the array is represented by k.
The sysndrome is found using syndrome command, The transpose of parity check matrix is
enoted as H’
7|Page
Thw syndrome was generated by getting multiplication of correctable error matrix and the
transpose of the parity check matrix. Then displayed the syndrome and error pattern as
output,
Then below codes are used to compute the syndrome with for loop for syndrome index and
displayed them,
8|Page
In the end the corrected cordword is got by appliying XOR operation to the received cord
word and error.
9|Page
b.)
As the received cordword is changed from 111011 to 100011, the sysndrome was changed
from 110 to 001 and error was changed from 001000 to 010000 and the cordword was
remained at the same result.
10 | P a g e
References
geeksforgeeks. (n.d.). Retrieved from https://www.geeksforgeeks.org/difference-between-linear-
block-codes-and-convolutional-
codes/#:~:text=It%20is%20a%20simple%20error,pieces%20for%20example%20Information
%20word.&text=Also%2C%20n%20%3D%20k%20%2B%20r,added%20to%20every%20infor
mation%20word.
11 | P a g e