Channel Coding/Decoding. Hamming Method

Similar documents
Basics of Error Correcting Codes

Page 1. Outline. Basic Idea. Hamming Distance. Hamming Distance Visual: HD=2

Revision of Lecture Eleven

Computer Science 1001.py. Lecture 25 : Intro to Error Correction and Detection Codes

FREDRIK TUFVESSON ELECTRICAL AND INFORMATION TECHNOLOGY

LECTURE VI: LOSSLESS COMPRESSION ALGORITHMS DR. OUIEM BCHIR

Error-Correcting Codes

Error Control Coding. Aaron Gulliver Dept. of Electrical and Computer Engineering University of Victoria

The idea of similarity is through the Hamming

Umudike. Abia State, Nigeria

Digital Communication Systems ECS 452

Error Protection: Detection and Correction

Detecting and Correcting Bit Errors. COS 463: Wireless Networks Lecture 8 Kyle Jamieson

Hamming Codes as Error-Reducing Codes

The ternary alphabet is used by alternate mark inversion modulation; successive ones in data are represented by alternating ±1.

Problem Sheet 1 Probability, random processes, and noise

Outline. EECS 122, Lecture 6. Error Control Overview Where are Codes Used? Error Control Overview. Error Control Strategies ARQ versus FEC

Spreading Codes and Characteristics. Error Correction Codes

Block code Encoder. In some applications, message bits come in serially rather than in large blocks. WY Tam - EIE POLYU

EE 435/535: Error Correcting Codes Project 1, Fall 2009: Extended Hamming Code. 1 Introduction. 2 Extended Hamming Code: Encoding. 1.

ECE 5325/6325: Wireless Communication Systems Lecture Notes, Spring 2013

Lecture 4: Wireless Physical Layer: Channel Coding. Mythili Vutukuru CS 653 Spring 2014 Jan 16, Thursday

Implementation of Reed Solomon Decoder for Area Critical Applications

Error Correction with Hamming Codes

Intuitive Guide to Principles of Communications By Charan Langton Coding Concepts and Block Coding

ECE 5325/6325: Wireless Communication Systems Lecture Notes, Spring 2013

MATHEMATICS IN COMMUNICATIONS: INTRODUCTION TO CODING. A Public Lecture to the Uganda Mathematics Society

Simulink Modelling of Reed-Solomon (Rs) Code for Error Detection and Correction

Performance of Combined Error Correction and Error Detection for very Short Block Length Codes

Nonlinear Multi-Error Correction Codes for Reliable MLC NAND Flash Memories Zhen Wang, Mark Karpovsky, Fellow, IEEE, and Ajay Joshi, Member, IEEE

Single Error Correcting Codes (SECC) 6.02 Spring 2011 Lecture #9. Checking the parity. Using the Syndrome to Correct Errors

Lecture 17 Components Principles of Error Control Borivoje Nikolic March 16, 2004.

S Coding Methods (5 cr) P. Prerequisites. Literature (1) Contents

MAS160: Signals, Systems & Information for Media Technology. Problem Set 4. DUE: October 20, 2003

Introduction to Error Control Coding

Datacommunication I. Layers of the OSI-model. Lecture 3. signal encoding, error detection/correction

IJESRT. (I2OR), Publication Impact Factor: 3.785

Computationally Efficient Covert Communication. Eric

Hamming Codes and Decoding Methods

Error Detection and Correction: Parity Check Code; Bounds Based on Hamming Distance

Chapter 1 INTRODUCTION TO SOURCE CODING AND CHANNEL CODING. Whether a source is analog or digital, a digital communication

Study of Undetected Error Probability of BCH codes for MTTFPA analysis

Digital Transmission using SECC Spring 2010 Lecture #7. (n,k,d) Systematic Block Codes. How many parity bits to use?

Error Control Codes. Tarmo Anttalainen

Review: Design And Implementation Of Reed Solomon Encoder And Decoder

BER Analysis of BPSK for Block Codes and Convolution Codes Over AWGN Channel

Design of Reed Solomon Encoder and Decoder

Chapter 10 Error Detection and Correction

IMPERIAL COLLEGE of SCIENCE, TECHNOLOGY and MEDICINE, DEPARTMENT of ELECTRICAL and ELECTRONIC ENGINEERING.

Chapter 10 Error Detection and Correction 10.1

Energy Efficient Adaptive Reed-Solomon Decoding System

Error Detection and Correction

LDPC Decoding: VLSI Architectures and Implementations

Channel Coding RADIO SYSTEMS ETIN15. Lecture no: Ove Edfors, Department of Electrical and Information Technology

Course Developer: Ranjan Bose, IIT Delhi

ECE 6640 Digital Communications

Outline. Communications Engineering 1

Lecture 3 Data Link Layer - Digital Data Communication Techniques

Background Dirty Paper Coding Codeword Binning Code construction Remaining problems. Information Hiding. Phil Regalia

Decoding of Block Turbo Codes

Comm. 502: Communication Theory. Lecture 6. - Introduction to Source Coding

ERROR CONTROL CODING From Theory to Practice

AHA Application Note. Primer: Reed-Solomon Error Correction Codes (ECC)

Computer Science 1001.py. Lecture 24 : Noise Reduction in Digital Images; Intro to Error Correction and Detection Codes

Intro to coding and convolutional codes

ICE1495 Independent Study for Undergraduate Project (IUP) A. Lie Detector. Prof. : Hyunchul Park Student : Jonghun Park Due date : 06/04/04

Introduction to Coding Theory

EDI042 Error Control Coding (Kodningsteknik)

ECE 476/ECE 501C/CS Wireless Communication Systems Winter Lecture 9: Error Control Coding

MAS.160 / MAS.510 / MAS.511 Signals, Systems and Information for Media Technology Fall 2007

Error Correcting Code

Computing and Communications 2. Information Theory -Channel Capacity

Communications Theory and Engineering

Digital Television Lecture 5

A Survey of Advanced FEC Systems

Physical-Layer Services and Systems

AN ABSTRACT OF THE THESIS OF

Performance of Reed-Solomon Codes in AWGN Channel

DIGITAL COMMINICATIONS

Design High speed Reed Solomon Decoder on FPGA

APPLICATIONS OF REED-SOLOMON CODES ON OPTICAL MEDIA STORAGE. A Thesis. Presented to the. Faculty of. San Diego State University

Chapter 1 Coding for Reliable Digital Transmission and Storage

IEEE C /02R1. IEEE Mobile Broadband Wireless Access <

ECE 6640 Digital Communications

An Efficient Forward Error Correction Scheme for Wireless Sensor Network

Distributed Source Coding: A New Paradigm for Wireless Video?

The Lempel-Ziv (LZ) lossless compression algorithm was developed by Jacob Ziv (AT&T Bell Labs / Technion Israel) and Abraham Lempel (IBM) in 1978;

ECE Advanced Communication Theory, Spring 2007 Midterm Exam Monday, April 23rd, 6:00-9:00pm, ELAB 325

A Brief Introduction to Information Theory and Lossless Coding

Introduction to Source Coding

White Paper FEC In Optical Transmission. Giacomo Losio ProLabs Head of Technology

Exercises to Chapter 2 solutions

Communication Theory II

Department of Electronics and Communication Engineering 1

VHDL Modelling of Reed Solomon Decoder

RADIO SYSTEMS ETIN15. Channel Coding. Ove Edfors, Department of Electrical and Information Technology

Physical Layer: Modulation, FEC. Wireless Networks: Guevara Noubir. S2001, COM3525 Wireless Networks Lecture 3, 1

Data and Computer Communications

Lecture #2. EE 471C / EE 381K-17 Wireless Communication Lab. Professor Robert W. Heath Jr.

FAST LEMPEL-ZIV (LZ 78) COMPLEXITY ESTIMATION USING CODEBOOK HASHING

Transcription:

Channel Coding/Decoding Hamming Method

INFORMATION TRANSFER ACROSS CHANNELS Sent Received messages symbols messages source encoder Source coding Channel coding Channel Channel Source decoder decoding decoding receiver Compression Source Entropy Rate vs Distortion Error Correction Channel Capacity Capacity vs Efficiency Decompression

INFORMATION TRANSFER ACROSS CHANNELS Sent Received messages messages symbols Information source Source coding Channel coding Channel Channel decoding Source decoding receiver Compression Source Entropy Rate vs Distortion Error Correction Channel Capacity Capacity vs Efficiency Decompression

Channel Coding/Decoding The purpose of channel coding/decoding is to detect and correct errors in noisy channels

Channel Coding/Decoding Error detection and correction In a noisy channel errors may occur during the transmission of data from information source to destination, so we need a method to detect there errors and then correct them.

Error-Detecting and -Correcting Codes Add extra bits to the data bits for the sole purpose of detecting when errors have been introduced and correcting the errors if possible

Repetition Code Repeat every bit 3 times 0110 ==> 000,111,111,000 Error detected if all 3 bits are not the same 000,110,111,000

Analysis of Repetition Code 200% overhead (code is 3x size of data) Error can go undetected only if 3 consecutive bits are in error 0110 => 000,111,111,000 => 000,000,111,000 If probability of one-bit error is p, then probability of undetected error is p 3 E.g. one-bit error = 10-5 => undetected error = 10-15 (Assumes independence)

What if an Error is Detected? Strategy #1: Throw the data out and ask for it to be sent again Slow but very low odds of erroneous data Strategy #2: Majority rules 0110 => 000,111,111,000 => 000,110,111,000 => 000,111,111,000 Quicker, but higher odds of error Was it actually 0010 => 000,000,111,000 => 000,110,111,000?

Parity Codes Add one bit to every block of, say, 4 bits Parity bit = 0 or 1 so that total number of 1 bits is even Detects all 1-bit errors, no 2-bit errors 00000 00011 00101 00110 01001 01010 01100 01111 10001 10010 10100 10111 11000 11011 11101 11110

Channel Coding/Decoding Hamming Method - It was the first complete error-detecting and error-correcting procedure. - It represents one of the simplest and most common method for the transmission of information ( in the presence of noise ). - It assumes that the source transmits binary messages ( i.e. The information source alphabet is { 0, 1 }) - It uses the parity checker method to detect an error - It assumes that the channel is a binary symmetric channel (BSC)

Hamming Codes (4,7) Hamming Code detects all one- and two-bit errors Corrects all 1-bit errors Magic: Any two different codewords differ in at least 3 places! 0000000 0001011 0010111 0011100 0100110 0101101 0110001 0111010 1000101 1001110 1010010 1011001 1100011 1101000 1110100 1111111

Hamming Distance Number of places in which two bit strings differ 1 0 0 0 1 0 1 = Hamming distance 3 1 0 0 1 1 1 0 Acts like a distance: a b = a+b

Error Correcting Codes ECC design is a kind of geometry problem: Find 16 bit strings of length 7, no two of which are separated by distance less than 3

Hamming Distance as Geometry 1100100 1010100 1000100 1000101 1001101 1100101 1001111 1100111 1001110 1101110

Definitions Hamming distance between x and y is d H := d(x, y) is the # of positions where x i y i The minimum distance of a code C is d min = min { d(x, y) x C, y C, x y} Hamming weight of a vector x is - w(x) := d(x, 0 ) is the # of positions where x i 0

Example Hamming distance d( 1001, 0111) = 3 Minimum distance (101, 011, 110) = 2 Hamming weight w(0110101) = 4

Performance A code with minimum distance d min is capable of correcting t errors if d min 2 t + 1. Proof: If t errors occur, then since d min 2 t + 1 an incorrect code word has at least t+1 differences with the received word.

Hamming codes Minimum distance 3 Construction G = I m All k-tuples of Hamming weight > 1 where m = 2 k k 1

Example k = 4, n = 7 1000 110 G = 0100 101 0010 011 0001 111 m = 2 3 3 1 = 4

Syndrome decoding Let G = [ I k P ] then construct H T = P I n-k For all code words c = xg, ch T = xgh T = 0 Hence, for a received noisy vector ( c n ) H T = c H T n H T = n H T = : S

Example 100 110 G = 010 101 001 011 H T = 110 101 011 100 x = 1 0 1 c = 1 0 1 1 0 1 c H T = 0 0 0 010 n = 0 1 0 0 0 0 001 c n = 1 1 1 1 0 1 [c n] H T = S = 1 0 1 Obvious fast decoder: precalculate all syndromes at receiver for correctable errors

In system form c n Calculate syndrome c n c n n* [c n] H T = S n* Precalculated syndromes when n = n* then n n* = 0

Structure: Reed Solomon Codes (CD, DVD) m k information symbols n-k check symbols Properties: minimum distance = n-k+1 (symbols) length 2 m -1

General remarks The general problem is the decoding RS codes can be decoded using Euclids algorithm Berlekamp Massey algorithm

Why error correction? Systems with errors can be made almost error free CD, DvD would not work without RS codes