Hamming (7, 4) Coding Algorithm for Data Protection

No Thumbnail Available

Date

2016

Journal Title

Journal ISSN

Volume Title

Publisher

Faculty of Pure and Applied Sciences, LAUTECH, Ogbomosho.

Abstract

Data is subject to corruption through the communication channel. In other words, it is prone to error as it traverses the source to destination link. Noise in the communication channel makes it difficult to reproduce a message at the destination end system. While some applications can absorb minimal amount of error, during transmission, for example, when transmitting multimedia data such as video and audio, random errors may be overlooked, but such is not allowed in some applications like text that requires high level of accuracy. For this reason, during transmission, efforts need be made towards the detection and correction of these inevitable errors. Channel coding (divided into convolutional and block codes), especially the block codes, is used to address problems of error detection and correction in data. The popular block coding techniques available are BCH code, Hamming code, Reed-solomon code and Golay code. Problems of channel coding can be addressed by automatic repeat-request (ARQ) approach and forward error correction (FEC) approach. This research work deals with forward error correcting code, specifically Hamming code under the umbrella of channel coding. This work, initially, explains the working of a block code and then Hamming coding is demonstrated both practically, using Visual basic and theoretically, using mathematical equations. The tool which was used to simulate this algorithm is Visual Basic; it was adopted because most Visual Studio IDE features are also used in the same context with Microsoft Visual C++, Microsoft Visual C# and Visual Basic. The algorithm was designed for Hamming (7, 4) which is capable of detecting and correcting one bit error in the received vector using the concept of syndrome decoding. When four bits of information (x = 4) is transmitted simultaneously over the noisy channel and if one bit is in error in the received vector, then this code can detect and correct one bit error in the receive vector. A codeword length of 7 bits (y = 7) was used and also presented were generator matrix (4×7), a parity check matrix (3×7) and a decoding matrix ( 4×7) to achieve the required Hamming distance.

Description

Keywords

Citation

Collections