Question: We want to design a Hamming Code for single error correction where the size of the dataword d 1 d 2 d 3 d 4

We want to design a Hamming Code for single error correction where the size of the dataword d1d2d3d4 is k=4.
1+1+0.5**16+(3+3+4)=20
(a) Show that we need r=3 parity bits for the code. Let these bits be p1p2p3.
(b) Now we need to have a H(7,4). Show the placement of the d's and p's over the 7-bits of H(7,4).
(c) Construct the parity-encoded codewords for the datawords. That is, fill up the codewords in the table below. (You may write a program to fill up the table if you want.)
\table[[Dataword,Codeword],[0000,],[0001,],[0010,],[0011,],[0100,],[0101,],[0110,],[0111,],[1000,],[1001,],[1010,],[1011,],[1100,],[1101,],[1110,],[1111,]]
Hint: Outline of Hamming Coding Algorithm:
The idea is to add a set of new bits, also called parity bits, to detect and correct errors in the data.
Each parity bit covers a specific set of data bits. The ith parity bit covers bit positions in the following way (denote k=2i-1)
Start from position k
Include k consecutive bits
Skip the next k consecutive bits
Repeat steps 2 and 3 until the end of the string is reached
(d) We now need to communicate the string: x= aaabaaaadaaaaaaaafaaaaabaaacaa
Show the output after every action below:
i. Using the Huffman Code designed in Q 1, source encode the string
ii. Group the bits of the encoded string in blocks of size 4(at the end, pad 0's or 1's as appropriate) and Channel encode the blocks using the Hamming Code designed above.
iii. During transmission, every 5th bit of the stream gets flipped. Use Hamming error-correcting decoding of the blocks and show that x is correctly received.
 We want to design a Hamming Code for single error correction

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!