Question

In: Computer Science

Task 8 - Hamming & SECDED Code (5+20= 25 marks) (a) (5 marks) For data, using...

Task 8 - Hamming & SECDED Code (5+20= 25 marks)
(a) For data, using 3 Hamming code parity bits determine the maximum
number of data bits that can be protected.

(b) A SECDED encoded character has been retrieved, with the hexadecimal value of 409 to power of 16. You may assume that the SECDED parity is even.

1. (1 + 4 marks) Was there an error in transmission? Explain your answer.

2. If there was an error, either correct it (reporting the corrected ASCII
character) or explain why it could not be corrected (Show your
Hamming/SECDED table).

Solutions

Expert Solution

Hamming code is a set of error-correction codes that can be used to detect and correct the errors that can occur when the data is moved or stored from the sender to the receiver. It is technique developed by R.W. Hamming for error correction.

Redundant bits –

Redundant bits are extra binary bits that are generated and added to the information-carrying bits of data transfer to ensure that no bits were lost during the data transfer.

The number of redundant bits can be calculated using the following formula:

2^r ≥ m + r + 1

where, r = redundant bit, m = data bit

Suppose the number of data bits is 7, then the number of redundant bits can be calculated using:

= 2^4 ≥ 7 + 4 + 1

Thus, the number of redundant bits= 4

Parity bits –

A parity bit is a bit appended to a data of binary bits to ensure that the total number of 1’s in the data is even or odd. Parity bits are used for error detection. There are two types of parity bits:

Even parity bit:

In the case of even parity, for a given set of bits, the number of 1’s are counted. If that count is odd, the parity bit value is set to 1, making the total count of occurrences of 1’s an even number. If the total number of 1’s in a given set of bits is already even, the parity bit’s value is 0.

Odd Parity bit –

In the case of odd parity, for a given set of bits, the number of 1’s are counted. If that count is even, the parity bit value is set to 1, making the total count of occurrences of 1’s an odd number. If the total number of 1’s in a given set of bits is already odd, the parity bit’s value is 0.

General Algorithm of Hamming code –

The Hamming Code is simply the use of extra parity bits to allow the identification of an error.

Write the bit positions starting from 1 in binary form (1, 10, 11, 100, etc).

All the bit positions that are a power of 2 are marked as parity bits (1, 2, 4, 8, etc).

All the other bit positions are marked as data bits.

Each data bit is included in a unique set of parity bits, as determined its bit position in binary form.

a. Parity bit 1 covers all the bits positions whose binary representation includes a 1 in the least significant

position (1, 3, 5, 7, 9, 11, etc).

b. Parity bit 2 covers all the bits positions whose binary representation includes a 1 in the second position from

the least significant bit (2, 3, 6, 7, 10, 11, etc).

c. Parity bit 4 covers all the bits positions whose binary representation includes a 1 in the third position from

the least significant bit (4–7, 12–15, 20–23, etc).

d. Parity bit 8 covers all the bits positions whose binary representation includes a 1 in the fourth position from

the least significant bit bits (8–15, 24–31, 40–47, etc).

e. In general, each parity bit covers all bits where the bitwise AND of the parity position and the bit position is

non-zero.

Since we check for even parity set a parity bit to 1 if the total number of ones in the positions it checks is

odd.

Set a parity bit to 0 if the total number of ones in the positions it checks is even.

Determining the position of redundant bits –

These redundancy bits are placed at the positions which correspond to the power of 2.

As in the above example:

The number of data bits = 7

The number of redundant bits = 4

The total number of bits = 11

The redundant bits are placed at positions corresponding to power of 2- 1, 2, 4, and 8

search

Sign In

Home

Courses

Hire With Us

Algorithmskeyboard_arrow_down

Data Structureskeyboard_arrow_down

Languageskeyboard_arrow_down

Interview Cornerkeyboard_arrow_down

GATEkeyboard_arrow_down

CS Subjectskeyboard_arrow_down

Studentkeyboard_arrow_down

GBlog

Puzzles

What's New ?

Hamming Code in Computer Network

Last Updated: 04-05-2020

Hamming code is a set of error-correction codes that can be used to detect and correct the errors that can occur when the data is moved or stored from the sender to the receiver. It is technique developed by R.W. Hamming for error correction.

Redundant bits –

Redundant bits are extra binary bits that are generated and added to the information-carrying bits of data transfer to ensure that no bits were lost during the data transfer.

The number of redundant bits can be calculated using the following formula:

2^r ≥ m + r + 1

where, r = redundant bit, m = data bit

Suppose the number of data bits is 7, then the number of redundant bits can be calculated using:

= 2^4 ≥ 7 + 4 + 1

Thus, the number of redundant bits= 4

Parity bits –

A parity bit is a bit appended to a data of binary bits to ensure that the total number of 1’s in the data is even or odd. Parity bits are used for error detection. There are two types of parity bits:

Even parity bit:

In the case of even parity, for a given set of bits, the number of 1’s are counted. If that count is odd, the parity bit value is set to 1, making the total count of occurrences of 1’s an even number. If the total number of 1’s in a given set of bits is already even, the parity bit’s value is 0.

Odd Parity bit –

In the case of odd parity, for a given set of bits, the number of 1’s are counted. If that count is even, the parity bit value is set to 1, making the total count of occurrences of 1’s an odd number. If the total number of 1’s in a given set of bits is already odd, the parity bit’s value is 0.

General Algorithm of Hamming code –

The Hamming Code is simply the use of extra parity bits to allow the identification of an error.

Write the bit positions starting from 1 in binary form (1, 10, 11, 100, etc).

All the bit positions that are a power of 2 are marked as parity bits (1, 2, 4, 8, etc).

All the other bit positions are marked as data bits.

Each data bit is included in a unique set of parity bits, as determined its bit position in binary form.

a. Parity bit 1 covers all the bits positions whose binary representation includes a 1 in the least significant

position (1, 3, 5, 7, 9, 11, etc).

b. Parity bit 2 covers all the bits positions whose binary representation includes a 1 in the second position from

the least significant bit (2, 3, 6, 7, 10, 11, etc).

c. Parity bit 4 covers all the bits positions whose binary representation includes a 1 in the third position from

the least significant bit (4–7, 12–15, 20–23, etc).

d. Parity bit 8 covers all the bits positions whose binary representation includes a 1 in the fourth position from

the least significant bit bits (8–15, 24–31, 40–47, etc).

e. In general, each parity bit covers all bits where the bitwise AND of the parity position and the bit position is

non-zero.

Since we check for even parity set a parity bit to 1 if the total number of ones in the positions it checks is

odd.

Set a parity bit to 0 if the total number of ones in the positions it checks is even.

Determining the position of redundant bits –

These redundancy bits are placed at the positions which correspond to the power of 2.

As in the above example:

The number of data bits = 7

The number of redundant bits = 4

The total number of bits = 11

The redundant bits are placed at positions corresponding to power of 2- 1, 2, 4, and 8

Suppose the data to be transmitted is 1011001, the bits will be placed as follows:

Determining the Parity bits –

R1 bit is calculated using parity check at all the bits positions whose binary representation includes a 1 in the least significant position.

R1: bits 1, 3, 5, 7, 9, 11

To find the redundant bit R1, we check for even parity. Since the total number of 1’s in all the bit positions corresponding to R1 is an even number the value of R1 (parity bit’s value) = 0

R2 bit is calculated using parity check at all the bits positions whose binary representation includes a 1 in the second position from the least significant bit.

R2: bits 2,3,6,7,10,11

To find the redundant bit R2, we check for even parity. Since the total number of 1’s in all the bit positions corresponding to R2 is odd the value of R2(parity bit’s value)=1

R4 bit is calculated using parity check at all the bits positions whose binary representation includes a 1 in the third position from the least significant bit.

R4: bits 4, 5, 6, 7

To find the redundant bit R4, we check for even parity. Since the total number of 1’s in all the bit positions corresponding to R4 is odd the value of R4(parity bit’s value) = 1

R8 bit is calculated using parity check at all the bits positions whose binary representation includes a 1 in the fourth position from the least significant bit.

R8: bit 8,9,10,11

To find the redundant bit R8, we check for even parity. Since the total number of 1’s in all the bit positions corresponding to R8 is an even number the value of R8(parity bit’s value)=0.


Related Solutions

Task 7 - Memory (5 +5 + 5 +5 = 20 marks) Please explain in your...
Task 7 - Memory (5 +5 + 5 +5 = 20 marks) Please explain in your own words for each part of Question 7. Quote your references in your ―References‖ / ―Bibliography‖ (a) What does INTEL‘s ―Optane Memory‖ provide? (b) What are some of the claims made by the ―Intel Marketing Department regarding Optane Memory. DDR5 memory is the latest computer memory being developed and will eventually replace DDR4 memory. (c) What are the maximum clocks speeds for DDR4 memory,...
Given the data-bits m = 11010110, determine the number of k (parity-bits) by using Hamming Code...
Given the data-bits m = 11010110, determine the number of k (parity-bits) by using Hamming Code requirements. Illustrate the error detection and correction scheme using Hamming code method, for both the sender and receiver to detect an error at the following positions: a.6thbit position. b.11thbit position.Assume an odd-parity scheme for this problem.
Given the data-bits m = 11010110, determine the number of k (parity-bits) by using Hamming Code...
Given the data-bits m = 11010110, determine the number of k (parity-bits) by using Hamming Code requirements. Illustrate the error detection and correction scheme using Hamming code method, for both the sender and receiver to detect an error at the following positions: a. 6th bit position. b. 11th bit position. Assume an odd-parity scheme for this problem.
The data to be sent : 11011100110, how to create the Hamming code with even parity?...
The data to be sent : 11011100110, how to create the Hamming code with even parity? If the right most bit is changed due to noise during transmission, how does the receiver to correct the incorrect bit. Assume only one bit is altered during transmission.  
Generate a transmitted dada sequence for “101010” using Hamming code? If an error occurs in the...
Generate a transmitted dada sequence for “101010” using Hamming code? If an error occurs in the third bit, the received data is 101011”, how would Hamming technique fix it?
Task 5 - Pipelining (20 marks) Robin, Bryan, Finchie, and Dan each have messages to send...
Task 5 - Pipelining Robin, Bryan, Finchie, and Dan each have messages to send via carrier pigeon. There are three ordered stages to sending a message via carrier pigeon:: 1. 25 minutes of Writing the message 2. 10 minutes of Fanning the ink dry 3. 15 minutes of Catching and sending a pigeon Notes: There is only one pen to share There is also only one fan (without it the ink will never dry) There are multiple pigeons but only...
NOTE: this is at 5th position..not 4th Using the Hamming code algorithm (7, 4), convert a...
NOTE: this is at 5th position..not 4th Using the Hamming code algorithm (7, 4), convert a data message (0110) using 7bit. Identify the number of parity bits needed Evaluate values of parity bits Final message bits with parity bits Inject error (o or 1) at 5th position and identify the error position.
Construct an even parity Hamming code with a total of 7 bits (4 data bits and...
Construct an even parity Hamming code with a total of 7 bits (4 data bits and 3 check bits).
Write a verilog code for 5 to 8 multiplier using fourbit adder
Write a verilog code for 5 to 8 multiplier using fourbit adder
You and a friend are using the C(7,4) Hamming code to send some 4-bit messages to...
You and a friend are using the C(7,4) Hamming code to send some 4-bit messages to each other. (a) You encode the message 1010 and send the encoded 7-bit sequence to your friend, who receives 1011011. How many errors were introduced during transmission? (b) You subsequently receive the encoded sequence 0111011 from your friend. Assuming at most one error, what is the 4-bit message that your friend sent?
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT