0% found this document useful (0 votes)
5 views35 pages

Error Correction Methods in Data Transmission

The document discusses methods of error correction in data transmission, highlighting the importance of error checking methods such as parity checks, checksums, echo checks, and check digits. It explains how errors can occur during data transmission due to interference or other issues, and outlines the processes involved in detecting and correcting these errors. Additionally, it provides examples and explanations of how each method functions to ensure data integrity.

Uploaded by

riasatrianr
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views35 pages

Error Correction Methods in Data Transmission

The document discusses methods of error correction in data transmission, highlighting the importance of error checking methods such as parity checks, checksums, echo checks, and check digits. It explains how errors can occur during data transmission due to interference or other issues, and outlines the processes involved in detecting and correcting these errors. Additionally, it provides examples and explanations of how each method functions to ensure data integrity.

Uploaded by

riasatrianr
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Class VIII Date: 21/9/2025, Sunday

Chapter 2

DATA TRANSMISSION

LESSON – 2.2

Methods of Error Correction

Objectives –

• Why error checking methods are needed

• Error checking methods following data transmission –

1. Parity checks

2. Checksum

3. Echo check

• Use of check digits to detect data entry errors

• Use of Automatic Repeat reQuests (ARQ) to detect errors

1|Page
→ What might happen during data transmission?

When data is transmitted, there is always a risk that it may be: -

i). Corrupted ii). Lost iii). Extra bit Gained

→ How errors can take place?

• Interference (all types of cables can suffer from electrical interference

which can cause data to be corrupted or even data lost)

• Problems during packet switching (this can lead to data lost or data

gained)

• Skewing of data (this occurs during parallel data transmission and can

cause data corruption if the bits arrive out of synchronization)

→ Methods to check data for errors after data transmission -

1. Parity check 2. Checksum 3. Echo check

→ Methods to detect errors during data transmission-

1. Check digit 2. Automatic repeat request

2|Page
❖ Why Errors Occur

Why do errors occur?

• Errors can occur using wired or wireless technology due

to interference

• Examples of interference include wire degradation or electrical fields

changing the signal

• Results of interference include:

o Data loss - data is lost in transmission

o Data gain - additional data is received

o Data change - some bits have been changed or flipped

• Wireless technology uses radio signals or other electromagnetic

signals to transmit data

o These signals can be blocked by physical barriers such as

buildings, walls, cars or other objects

o Interference can be caused by bad weather such as rain or

clouds, or by other wireless signals or electromagnetic radiation

3|Page
• Wired technology carries more chance of causing an error as physical

components can be damaged, degrade or receive interference from

outside signals

o Data loss can also occur from interruptions to data transmission

such as a blocked signal or if the transmission is intermittent

Why check for errors?

• Computers expect data in certain formats

o A format is a way of arranging the data so that it can be easily

understood by people and by computers

o People agree to certain formats so that systems work

more efficiently and there is little chance of misunderstanding

each other

• An example of a format is date and time

• Date and time can have multiple formats such as:

o 13/04/14 (DD/MM/YY)

o 12/31/2020 (MM/DD/YYYY)

4|Page
o Jul-04-16 (MMM/DD/YY)

• If data is not as expected, things can go wrong

• For example, if a receiver expected to receive a date in format

DD/MM/YY as 03/04/17 but received 04/03/17, did the sender mean

3rd April 2017 or 4th March 2017?

• An error or corruption occurs when data received is not as

expected and therefore is difficult or impossible to process

Worked Example

Alex receives an email over a wireless connection from a work colleague

containing an important document. Identify what interference Alex could

experience when sending this email and identify the outcomes of

interference. Further explain why Alex should check to make sure the

document contains no errors. [4]

5|Page
Answer:

• Weather conditions or physical barriers such as building can affect

signals, for example bits could be flipped in the document making it

hard to understand the original meaning [1]

• Alex should be aware that interference can cause wirelessly received

data to contain errors or corruption [1]

• Data could be lost, additional data could be gained or data could be

changed [1]

• As Alex received an important work document, they need to check for

errors so that their work is unaffected and they do not receive incorrect

information [1]

6|Page
❖ PARITY CHECK

What is a parity check?

• A parity check determines whether bits in a transmission have

been corrupted

• Every byte transmitted has one of its bits allocated as a parity bit

• The sender and receiver must agree before transmission whether they

are using odd or even parity

• If odd parity is used then there must be an odd number of 1’s in the

byte, including the parity bit

• If even parity is used then there must be an even number of 1’s in the

byte, including the parity bit

• The value of the parity bit is determined by counting the number of 1’s

in the byte, including the parity bit

• If the number of 1’s does not match the agreed parity then an error has

occurred

7|Page
• Parity checks only check that an error has occurred, they do not reveal

where the error(s) occurred

Even parity

Below is an arbitrary binary string

EVEN
Byte
Parity bit

0 1 0 1 1 0 1 0

If an even parity bit is used then all bits in the byte, including the parity bit,

must add up to an even number

o There are four 1’s in the byte

o This means the parity bit must be 0 otherwise the whole byte,

including the parity bit, would add up to five which is an odd

number

8|Page
Odd parity

Below is an arbitrary binary string

ODD
Byte
Parity bit

1 1 0 1 1 0 1 0

If an odd parity bit is used then all bits in the byte, including the parity bit,

must add up to an odd number

o There are four 1’s in the byte. This means the parity bit must be

a 1 otherwise the whole byte, including the parity bit, would add

up to four which is an even number

9|Page
The table below shows a number of examples of the agreed parity between

a sender and receiver and the parity bit used for each byte

Example Total number of


Agreed parity Parity bit Main bit string
# 1’s

#1 ODD 0 1 1 0 1 0 1 1 5

#2 EVEN 1 0 0 0 1 0 0 0 2

#3 EVEN 1 0 1 0 1 1 1 1 6

#4 ODD 1 0 1 1 1 0 0 1 5

#5 ODD 1 1 0 1 0 1 0 1 5

#6 EVEN 0 1 0 0 1 1 1 0 4

• Example #1: The agreed parity is odd. All of the 1’s in the main bit

string are added (5). As this number is odd already the parity bit is set

to 0 so the whole byte stays odd

10 | P a g e
• Example #2: The agreed parity is even. All of the 1’s in the main bit

string are added (1). As this number is odd the parity bit is set to 1 to

make the total number of 1’s even (2)

• Example #6: The agreed parity is even. All of the 1’s in the main bit

string are added (4). As this number is even already the parity bit is set

to 0 so the whole byte stays even

• For the 7-bit number 1110000, the even parity bit would be 1 and the

odd parity bit would be 0. The parity bit can be set as a 1 or a 0 for

either choice of parity – it just depends on how many 1s are in the byte

11 | P a g e
How do errors occur?

• When using parity bits, an error occurs when the number of total bits

does not match the agreed parity

• Bits can be flipped or changed due to interference on a wire or

wirelessly due to weather or other signals

Example # Agreed parity Parity bit Main bit string Total number of 1’s Error

#1 ODD 1 1 1 0 1 0 1 1 6 Error

#2 EVEN 1 0 0 0 1 0 0 0 2 No error

#3 EVEN 1 0 1 1 1 1 1 1 7 Error

#4 ODD 1 0 1 1 1 0 0 1 5 No error

#5 ODD 1 1 0 1 0 1 1 1 6 Error

#6 EVEN 0 1 0 0 0 1 1 0 3 Error

Parity checks are quick and easy to implement but fail to detect bit

swaps that cause the parity to remain the same

12 | P a g e
Parity Byte Check & Parity Block Check

What are parity byte checks and parity block checks?

• Parity blocks and parity bytes can be used to check an error has

occurred and where the error is located

• Parity checks on their own do not pinpoint where errors in data exist,

only that an error has occurred

• A parity block consists of a block of data with the number of 1’s

totaled horizontally and vertically

• A parity byte is also sent with the data which contains the parity

bits from the vertical parity calculation

13 | P a g e
Below is a parity block with a parity byte at the bottom and a parity bit column

in the second column

Parity
ODD Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7 Bit 8
bit

Byte 1 0 1 1 0 1 0 1 1

Byte 2 0 0 0 0 1 0 0 0

Byte 3 1 0 1 0 1 1 1 1

Byte 4 1 0 1 1 1 0 0 1

Byte 5 1 1 0 1 0 1 0 1

Byte 6 1 1 0 0 1 1 1 0

Byte 7 0 0 1 1 1 1 1 0

Byte 8 0 1 0 1 1 0 0 0

Parity byte 0 1 1 1 1 1 1 1

14 | P a g e
• The above table uses odd parity

• Each byte row calculates the horizontal parity as a parity bit as normal

• Each bit column calculates the vertical parity for each row, the parity

byte

• It is calculated before transmission and sent with the parity block

• Each parity bit tracks if a flip error occurred in a byte while the parity

byte calculates if an error occurred in a bit column

• By cross referencing both horizontal and vertical parity values

the error can be pinpointed

• In the above example the byte 3 / bit 5 cell is the error and should be

a 0 instead

• The error could be fixed automatically or a retransmission request

could be sent to the sender

15 | P a g e
❖ CHECKSUM

What is a checksum?

• A checksum is a value that can be used to determine if data has

been corrupted or altered

• It indicates whether data differs from its original form but does

not specify where

• Checksums are calculated using an algorithm and the value is added

to the transmission

• The receiving device re-calculates the checksum and compares to the

original

• If the checksums do not match, it is assumed an error has occurred

16 | P a g e
Worked Example

Describe the process a checksum algorithm uses to determine if an error has

occurred. [5]

Answer

• Before data is transmitted a checksum value is calculated [1]

17 | P a g e
• The checksum value is transmitted with the data [1]

• The receiver calculates the checksum value using the received

data [1]

• The calculated checksum is compared to the transmitted checksum [1]

• If they are the same then there is no error otherwise an error has

occurred [1]

❖ ECHO CHECK

What is an echo check?

• An echo checks involve transmitting the received data back to the

sender

• The sender then checks the data to see if any errors occurred during

transmission

• This method isn’t reliable as an error could have occurred when the

sender transmits the data or when the receiver transmits the data

• If an error does occur the sender will retransmit the data

18 | P a g e
In summary:

» a copy of the data is sent back to the sender

» the returned data is compared with the original data by the sender’s

computer

» if there are no differences, then the data was sent without error

» if the two sets of data are different, then an error occurred at some stage

during the data transmission.

19 | P a g e
20 | P a g e
Worked Example

Four 7-bit binary values are transmitted from one computer to another.

A parity bit is added to each binary value creating 8-bit binary values. All the

binary values are transmitted and received correctly.

(a) Identify whether each 8-bit binary value has been sent using odd or even

parity by writing odd or even in the type of parity column. [4]

8-bit binary value Type of parity

01100100

10010001

00000011

10110010

(b) An error may not be detected when using a parity check.

Identify why an error may not be detected. [1]

21 | P a g e
Answers

(a)

8-bit binary value Type of parity

01100100 Odd [1]

10010001 Odd [1]

00000011 Even [1]

10110010 Even [1]

(b)

Any one from:

• there is a transposition of bits [1]

• it does not check the order of the bits (just the sum of 1s/0s) [1]

• even number of bits change [1]

• incorrect bits still add up to correct parity [1]

22 | P a g e
❖ CHECK DIGITS

What is a check digit?

• A check digit is the last digit included in a code or sequence, used

to detect errors in numeric data entry

• Examples of errors that a check digit can help to identify are:

o Incorrect digits entered

o Omitted or extra digits

o Phonetic errors

• Added to the end of a numerical sequence they ensure validity of the

data

• Calculated using standardized algorithms to ensure

widespread compatibility

• Examples of where check digits can be used include:

o ISBN book numbers

o Barcodes

23 | P a g e
ISBN book numbers

• Each book has a unique ISBN number that identifies the book

• A standard ISBN number may be ten digits, for example, 965-448-765-

• The check digit value is the final digit (9 in this example).

• This number is chosen specifically so that when the algorithm is

completed the result is a whole number (an integer) with no remainder

parts

24 | P a g e
• A check digit algorithm is performed on the ISBN number and if the

result is a whole number, then the ISBN is valid

Barcodes

• Barcodes consist of black and white lines which can be scanned using

barcode scanners

• Barcode scanners shine a laser on the black and white lines

which reflect light into the scanner

• The scanner reads the distance between these lines as numbers and

can identify the item

• Barcodes also use a set of digits to uniquely identify each item

• The final digit on a barcode is usually the check digit, this can be used

to validate and authenticate an item

Worked Example

Check digit algorithms are used to determine whether an error has occurred

in transmitted data. State the names of two examples of a check digit

algorithm. [2]

25 | P a g e
Answer

• ISBN [1]

• Barcode [1]

❖ AUTOMATIC REPEAT REQUESTS (ARQ)

What is an automatic repeat request (ARQ)?

• An automatic repeat request is a protocol that notifies the sender that

an error has occurred and that the data received is incorrect

• It works as follows:

o If an error is detected the receiver sends a negative

acknowledgement transmission to indicate the data is corrupted

o If no error is detected the receiver sends a positive

acknowledgement transmission meaning the data is correct

o If the receiver does not send any acknowledgement

transmission then the sender waits for a certain time period

known as a time-out before automatically resending the data

26 | P a g e
o This process is repeated until all data has

been received and acknowledged

Worked Example

Explain how Automatic Repeat reQuests (ARQ) are used in data

transmission and storage. [2]

27 | P a g e
Answer

Any two from:

1. Set of rules for controlling error checking/detection // it’s an error

detection method // used to detect errors

2. Uses acknowledgement and timeout

3. Request is sent (with data) requiring acknowledgement

4. If no response/acknowledgment within certain time frame data

package is resent

5. When data received contains an error a request is sent (automatically)

to resend the data

6. The resend request is repeatedly sent until packet is received error

free/limit is reached/acknowledgement received

28 | P a g e
❖ BENEFITS & DRAWBACKS

Benefits of Parity Check Drawbacks of Parity Check

Simple and inexpensive to implement in Cannot detect all errors (e.g., even-bit errors

hardware/software may go unnoticed)

Fast error detection for single-bit errors Cannot correct errors, only detects them

Adds only one extra bit, so it has low Less reliable for large data blocks (chance of

overhead undetected errors increases)

Helps maintain data integrity by detecting Not suitable for critical applications requiring

most single-bit errors high accuracy

Widely supported in many communication Limited capability compared to CRC or Hamming

protocols codes

29 | P a g e
Benefits of Parity Block Drawbacks of Parity Block

Detects single-bit and many multi-bit errors Cannot detect all types of multi-bit errors

Can locate the position of single-bit errors Cannot correct complex multi-bit errors

Needs extra parity bits for every row and


Adds fewer extra bits compared to data repetition
column

Improves data integrity during transmission Slightly more complex than simple parity

Simple to implement compared to advanced Still less reliable than stronger error-

methods like CRC detection methods

30 | P a g e
Benefits of Checksum Drawbacks of Checksum

Simple and easy to implement in both


Cannot correct errors, only detects them
hardware and software

Efficient for large data blocks – just one value Cannot detect all types of errors, e.g., some

represents the whole block patterns of multi-bit errors

Adds little overhead – only a small extra Less reliable than advanced methods like

checksum value is added CRC

Faster to compute compared to complex error- Vulnerable to intentional data tampering (not

detection techniques secure)

Widely used in networking, file transfers, and Fails in some error patterns where changes

storage devices cancel each other out

31 | P a g e
Benefits of Echo Check Drawbacks of Echo Check

Increases transmission time because data is


Simple and inexpensive to implement
sent twice

Easy to use – no complex hardware or


Cannot correct errors, only detects them
software needed

Provides immediate feedback to the sender Not suitable for large data transfers

about errors (inefficient)

Helps ensure data integrity during Less efficient compared to modern error

transmission detection methods

May still miss some errors caused during the


Useful for short, critical messages
return path

32 | P a g e
Benefits of Check Digits Drawbacks of Check Digits

Simple and inexpensive to implement in codes


Cannot correct errors, only detects them
and databases

Efficient for manual data entry – catches Cannot detect all types of errors (e.g., if two

common mistakes like mistyped digits digits are swapped in some cases)

Adds very little overhead – only one extra digit


Less reliable for complex or large datasets
is added

Helps ensure accuracy in applications like Limited protection – unsuitable for critical or

barcodes, ISBNs, and banking numbers high-security data

Fails if the check digit itself is entered


Widely used and standardized across industries
incorrectly

33 | P a g e
Benefits of ARQ Drawbacks of ARQ

Ensures reliable data transmission by Increases transmission delay due to

requesting retransmission of corrupted packets retransmission

Higher overhead because


Detects and corrects errors through
acknowledgments and extra bits are
retransmission
required

Inefficient on poor connections with


Improves data integrity and accuracy
frequent errors

Widely used in networks like TCP/IP and Consumes more bandwidth for

wireless communication acknowledgments and retransmissions

Simple concept – easy to understand and Not suitable for real-time applications

implement (e.g., live video or voice calls)

34 | P a g e
❖ Textbook CW Assignments

(completed inside the textbook)

Activity 2.4 Page 55

Activity 2.5 Page 56

Activity 2.6 Page 58

35 | P a g e

You might also like