-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
1/23
1
A Novel Approach to Improving
Burst Errors Correction
Capability of Hamming Code
: : 2009.12.15
Communications, Circuits and Systems, 2007. ICCCAS2007. International Conference on
Jianwu Zhao Yibing Shi
Univ. of Electron. Sci. & Technol. of China, Chengdu
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
2/23
2
Abstract & Introduction
Extended Hamming Code
Design AlgorithmsExample
Conclusion
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
3/23
3
Abstract & Introduction
Error detection and correction is critical to accurate
data transmission, storage and retrieval.
In high-reliability applications, the single error
correction and double error detections(SEC-DED)
Hamming code may not provide adequate protection
against burst errors
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
4/23
4
Abstract & Introduction
This makes multiple-error correction (MEC) highly
desirable
In order to detect or correct transmission or storageerrors, some additional, redundant bits, called "check
bits", can be added to a number of data bits to construct
a codeword
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
5/23
5
Abstract & Introduction
Our concern in this paper is exclusively
binary forward error correcting (FEC) block
codes in data transmission
Example : (7,4,3) Hamming code
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
6/23
6
Abstract & Introduction
This paper proposed a novel approach to
improving burst errors correction capability of
the extended Hamming Code , with the target
objective of minimizing the redundancy, while
retaining code rate as maximum as possible
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
7/23
7
Extended Hamming Code
Hamming codeword
Hamming ruler bits can distinguish cases
k : the number of data bit
r : the number of additional parity check bits
n : the size of codeword , n = k+r
Notation : ( n , k , r )
r2
12 ++ rkr
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
8/23
8
Extended Hamming Code
=
101010101010101
110011001100110
111100001111000
111111110000000
H
Original form of matrix H:
(16, 11, 4) extended Hamming code
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
9/23
9
Extended Hamming Code
=
1000011011010101
0100010110110011
0010001110001111
0001000001111111
1111111111111111
G
Identity-check matrix of the(16, 11, 4) extended
Hamming code
The C0=0xAB61, C1=0xCDA2, C2=0xFlC4, C3=0xFE08,
and C4=0xFFFF.
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
10/23
10
Extended Hamming Code
For any integer p there exists a (n, k, r)
extended Hamming code, where:
12 = pn
pk p = 12
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
11/23
11
Extended Hamming Code
Step 1) Create a matrix with dimension ,
which each column is to be different, i.e.
all binary combinations should be used,
except all-zero's one
Step 2) Reorder the columns in order to achieve
an identity matrix in the right hand side
( )12 pp
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
12/23
12
Extended Hamming Code
Step 3) Take first columns of the
matrix (all columns except those
creating the identity part), and then
add a zero column (overall parity-
check column) to this matrix on the
left.
Step 4) Append this matrix with an overallparity-check column to an identity
matrix with dimensions
( ) pp 12
pp
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
13/23
13
Extended Hamming Code
Step 5) Add a row of all l's to the matrix with
dimensions on the top
Step 6) The check code is equal to the value
of each row of the extended identity
check matrix
( ) pp 21 +
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
14/23
14
Design Algorithms
For data transmission on serial channels, the
most prevalent errors are multi-bit bursts.
The proposed approach to correct burst error
is the interleaving reorganization of Hamming
codewords
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
15/23
15
Design Algorithms
These advantages, however, come at the
cost of failing to correct multiple single-bit
errors in separate byte, which result in
consecutive bits error in a code word
This technique degrades the ability to correct
single bit error (random errors) in Hammingcodewords
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
16/23
16
Algorithm for the encoding
Step 1) Take out the 11 bytes data from the
original data and then get 8 data
with 11 bit width by simply merging.
Step 2) Compute the values of even check bits
and overall even check bit from the
check codes and then respectively put
these even check bits in position 1, 2,4,8, and 16.
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
17/23
17
Algorithm for the encoding
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 1
0 0 0 0 0 1 0 0
0 0 0 0 0 1 0 1
0 0 0 0 0 1 1 0
0 0 0 0 0 1 1 1
0 0 0 0 1 0 0 0
0 0 0 0 1 0 0 1
0 0 0 0 1 0 1 0
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
18/23
18
Algorithm for the encoding
Step 3) Repeat Step 2. Process other 11 bits
data until all data are encoded.
Step 4) Reorganize the Hamming codewords
by the use of interleaving technique
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
19/23
19
Example
Data Class Physical Memory Area
Original Testing Data 0x2000 0x200A
Encoded Data 0x2020 0x202F
Interleaved Data 0x2040 0x204F
Decoded Data 0x2060 0x206A
Memory Assignments for Testing Program
Hamming encoding and decoding testing program in assembly
language and assume the use of 8-bit microcomputer AT89C55.
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
20/23
20
Example
Without using interleaving reorganization technique
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
21/23
21
Example
Using interleaving reorganization technique
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
22/23
22
Example
Using interleaving reorganization technique
suppose that the data 0x0F is sent and burst errors occur such
that the data 0xF0 is received.
-
8/14/2019 A Novel Approach to Improving Burst Errors Correction Capability of Hamming Code
23/23
23
Conclusion
In the paper, we analyze the advantage and
disadvantage of the Hamming Codes and
error mechanisms causing random errors and
burst errors.
Because burst errors can be effectively
randomized by the use of interleaving, burst
errors correction capability of Hammingcodes is greatly improved.