3.5.5.3 Error Checking and Correction. Flashcards
Define a parity bit.
A parity bit is a single bit added to transmission that can be used to check for errors in the transmitted data.
How is the value of the parity bit calculated?
Based on the transmitted data itself.
Outline the two types of parity bits.
Even parity.
Odd parity.
Define an even parity bit.
The value of the parity bit is chosen as to make the total number of 1’s in the transmitted data even.
Example of an even parity bit:
If the data 01101110 were to be transmitted, the parity bit would be set to 1, so that the total number of one’s is even.
Define an odd parity bit
The value of the parity is chosen as to make the total number of 1’s in the transmitted data odd.
Example of an odd parity bit
If the data 011011101 were to be transmitted, the parity bit would be set to 1, so that the total number of one’s is odd.
Outline a parity check.
Occurs when data is received. If the value of the received parity bit conforms to the type of parity (odd or even) in use, then the received data is treated as correct.
What if the parity check comes back with an error?
Then the received parity bit does not conform to the type of parity in use and the computer will request that the user re-transmits the data.
What is an issue with parity bits?
Whether using an odd or even parity, if an even number of bits are changed during transmission, the error is not detected.
Outline majority voting.
When using majority voting, each bit of the data is transmitted multiple times. When the data is received, the most commonly occurring value is to be taken as correct.
Example of majority voting?
Data to send: 0110
Each bit is transmitted five times:
00000
111111
11111
00000
Data received majority vote
01000 0
011111 1
11111 1
01010 0
Data received after majority vote: 0110
What is the primary disadvantage of majority voting?
The volume of data being transmitted is increased with the repetition of bits. In the example, the data transmitted is five times the larger than the original data. This would significantly increase the time taken to transmit data.
Define a checksum.
As with parity bits, checksums involve adding a value, determined by the data itself, to the transmitted data.
How is a checksum value determined?
By an algorithm, based on the data being transmitted. There is no agreed algorithm and different systems will use their own solutions.
Provide an example algorithm which could be used to determine a checksums value.
The modulo function, which returns the remainder after a division. The value of the checksum will be appended to the original data in binary before being transmitted.
Example of the modulo checksum algorithm:
Data to send:
46 = 10111
Calculate value of checksum:
46 MOD 8 = 6 = 110
Data transmitted:
101110110
Outline what happens after the checksum has being applied and data has been sent and received.
The recipient can remove the checksum and apply the same algorithm as was used when sending the data to ensure that the checksum matches the transmitted data.
What happens if the checksum does not match the transmitted data?
Then the recipient cannot correct the error itself so it must request that the sender re-transmits the data.
Define a check digit.
A type of checksum in which only a single digit is added to the transmitted data. This reduces the number of different algorithms that could be used to calculate the value of the check digit and so reduces the variety of errors that the method can detect.
Can a parity bit detect errors in transmission?
Yes but only if an odd number of bits are changed.
Can a parity bit correct errors in transmission?
No.
Is a parity bit efficient?
Very efficient.
Can a majority vote detect errors in transmission?
Yes.