ADVANTAGE of GENERATOR MATRIX:

Slides:



Advertisements
Similar presentations
Error Control Code.
Advertisements

CHANNEL CODING REED SOLOMON CODES.
II. Linear Block Codes. © Tallal Elshabrawy 2 Last Lecture H Matrix and Calculation of d min Error Detection Capability Error Correction Capability Error.
NETWORKING CONCEPTS. ERROR DETECTION Error occures when a bit is altered between transmission& reception ie. Binary 1 is transmitted but received is binary.
Cellular Communications
DIGITAL COMMUNICATION Coding
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
Chapter 11 Algebraic Coding Theory. Single Error Detection M = (1, 1, …, 1) is the m  1 parity check matrix for single error detection. If c = (0, 1,
Low Density Parity Check Codes LDPC ( Low Density Parity Check ) codes are a class of linear bock code. The term “Low Density” refers to the characteristic.
DIGITAL COMMUNICATION Coding
15-853Page :Algorithms in the Real World Error Correcting Codes I – Overview – Hamming Codes – Linear Codes.
Error Detection and Correction
3F4 Error Control Coding Dr. I. J. Wassell.
Hamming Code Rachel Ah Chuen. Basic concepts Networks must be able to transfer data from one device to another with complete accuracy. Data can be corrupted.
Hamming Codes 11/17/04. History In the late 1940’s Richard Hamming recognized that the further evolution of computers required greater reliability, in.
Linear codes 1 CHAPTER 2: Linear codes ABSTRACT Most of the important codes are special types of so-called linear codes. Linear codes are of importance.
Syndrome Decoding of Linear Block Code
Linear Codes.
DIGITAL COMMUNICATION Error - Correction A.J. Han Vinck.
USING THE MATLAB COMMUNICATIONS TOOLBOX TO LOOK AT CYCLIC CODING Wm. Hugh Blanton East Tennessee State University
CHANNEL CODING TECHNIQUES By K.Swaraja Assoc prof MREC
SPANISH CRYPTOGRAPHY DAYS (SCD 2011) A Search Algorithm Based on Syndrome Computation to Get Efficient Shortened Cyclic Codes Correcting either Random.
Information and Coding Theory Linear Block Codes. Basic definitions and some examples. Juris Viksna, 2015.
Exercise in the previous class p: the probability that symbols are delivered correctly C: 1 00 → → → → What is the threshold.
Application of Finite Geometry LDPC code on the Internet Data Transport Wu Yuchun Oct 2006 Huawei Hisi Company Ltd.
CODING/DECODING CONCEPTS AND BLOCK CODING. ERROR DETECTION CORRECTION Increase signal power Decrease signal power Reduce Diversity Retransmission Forward.
Error Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
1 SNS COLLEGE OF ENGINEERING Department of Electronics and Communication Engineering Subject: Digital communication Sem: V Cyclic Codes.
Codes Codes are used for the following purposes: - to detect errors - to correct errors after detection Error Control Coding © Erhan A. Ince Types: -Linear.
COEN 180 Erasure Correcting, Error Detecting, and Error Correcting Codes.
MIMO continued and Error Correction Code. 2 by 2 MIMO Now consider we have two transmitting antennas and two receiving antennas. A simple scheme called.
Chapter 3 Digital Transmission Fundamentals Line Coding Error Detection and Correction.
Data and Computer Communications Chapter 6 – Digital Data Communications Techniques.
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1. Error Detection Techniques:
Error Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
CS717 Algorithm-Based Fault Tolerance Matrix Multiplication Greg Bronevetsky.
§6 Linear Codes § 6.1 Classification of error control system § 6.2 Channel coding conception § 6.3 The generator and parity-check matrices § 6.5 Hamming.
DIGITAL COMMUNICATIONS Linear Block Codes
1 Introduction to Quantum Information Processing CS 667 / PH 767 / CO 681 / AM 871 Richard Cleve DC 2117 Lecture 20 (2009)
Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷
Chapter 31 INTRODUCTION TO ALGEBRAIC CODING THEORY.
Information and Coding Theory Cyclic codes Juris Viksna, 2015.
Information Theory Linear Block Codes Jalal Al Roumy.
Word : Let F be a field then the expression of the form a 1, a 2, …, a n where a i  F  i is called a word of length n over the field F. We denote the.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
The parity bits of linear block codes are linear combination of the message. Therefore, we can represent the encoder by a linear system described by matrices.
Perfect and Related Codes
Error Detection and Correction – Hamming Code
Some Computation Problems in Coding Theory
Error Detection and Correction
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
Data Communications and Networking
INFORMATION THEORY Pui-chor Wong.
Hamming Distance & Hamming Code
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Error Control Coding. Purpose To detect and correct error(s) that is introduced during transmission of digital signal.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Richard Cleve DC 2117 Introduction to Quantum Information Processing QIC 710 / CS 667 / PH 767 / CO 681 / AM 871 Lecture (2011)
CHAPTER 8 CHANNEL CODING: PART 3 Sajina Pradhan
II. Linear Block Codes. © Tallal Elshabrawy 2 Digital Communication Systems Source of Information User of Information Source Encoder Channel Encoder Modulator.
ECE 442 COMMUNICATION SYSTEM DESIGN LECTURE 10. LINEAR BLOCK CODES Husheng Li Dept. of EECS The University of Tennessee.
Channel Coding: Part I Presentation II Irvanda Kurniadi V. ( ) Digital Communication 1.
Chapter 6.
Subject Name: Information Theory Coding Subject Code: 10EC55
II. Linear Block Codes.
Block codes. encodes each message individually into a codeword n is fixed, Input/out belong to alphabet Q of cardinality q. The set of Q-ary n-tuples.
Information Redundancy Fault Tolerant Computing
Standard Array.
DIGITAL COMMUNICATION Coding
II. Linear Block Codes.
Presentation transcript:

ADVANTAGE of GENERATOR MATRIX: we need to store only the k rows of G instead of 2k vectors of the code. for the example we have looked at generator array of (36) replaces the original code vector of dimensions (8  6). This is a definite reduction in complexity . Error Control Coding © Erhan A. Ince

Systematic Linear Block Codes Systematic (n,k) linear block codes has such a mapping that part of the sequence generated coincides with the k message digits. Remaining (n-k) digits are parity digits A systematic linear block code has a generator matrix of the form : Error Control Coding © Erhan A. Ince

P is the parity array portion of the generator matrix pij = (0 or 1) Ik is the (kk) identity matrix. With the systematic generator encoding complexity is further reduced since we do not need to store the identity matrix. Since U = m G Error Control Coding © Erhan A. Ince

given the message k-tuple m= m1,……..,mk where And the parity bits are given the message k-tuple m= m1,……..,mk And the general code vector n-tuple U = u1,u2,……,uk Systematic code vector is: U = p1,p2……..,pk , m1,m2,……,mk Error Control Coding © Erhan A. Ince

For a (6,3) code the code vectors are described as Example: For a (6,3) code the code vectors are described as P I3 U = m1+m3, m1+m2, m2+m3, m1, m2, m3 u1 , u2 , u3, u4, u5, u6 Error Control Coding © Erhan A. Ince

Parity Check Matrix (H) We define a parity-check matrix since it will enable us to decode the received vectors. For a (kn) generator matrix G There exists an (k-n) n matrix H Such that rows of G are orthogonal to the rows of H i.e G HT = 0 To satisfy the orthogonality requirement H matrix is written as: Error Control Coding © Erhan A. Ince

The product UHT of each code vector is a zero vector. Hence The product UHT of each code vector is a zero vector. Once the parity check matrix H is formed we can use it to test whether a received vector is a valid member of the codeword set. U is a valid code vector if and only if UHT=0. Error Control Coding © Erhan A. Ince

Syndrome Testing Let r = r1, r2, ……., rn be a received code vector (one of 2n n-tuples) Resulting from the transmission of U = u1,u2,…….,un (one of the 2k n-tuples).  r = U + e where e = e1, e2, ……, en is the error vector or error pattern introduced by the channel In space of 2n n-tuples there are a total of (2n –1) potential nonzero error patterns. The SYNDROME of r is defined as: S = r HT The syndrome is the result of a parity check performed on r to determine whether r is a valid member of the codeword set. Error Control Coding © Erhan A. Ince

If r contains detectable errors the syndrome has some non-zero value  syndrome of r is seen as S = (U+e) HT = UHT + eHT since UHT = 0 for all code words then : S = eHT An important property of linear block codes, fundamental to the decoding process, is that the mapping between correctable error patterns and syndromes is one-to-one. Error Control Coding © Erhan A. Ince

Parity check matrix must satisfy: No column of H can be all zeros, or else an error in the corresponding code vector position would not affect the syndrome and would be undetectable 2. All columns of H must be unique. If two columns are identical errors corresponding to these code word locations will be indistinguishable. Error Control Coding © Erhan A. Ince

Example: P is the parity matrix and I is the identity matrix. Suppose that code vector U = [ 1 0 1 1 1 0 ] is transmitted and the vector r = [ 0 0 1 1 1 0 ] is received. Note one bit is in error.. Find the syndrome vector,S, and verify that it is equal to eHT. (6,3) code has generator matrix G we have seen before: P I P is the parity matrix and I is the identity matrix. Error Control Coding © Erhan A. Ince

(syndrome of corrupted code vector) S = r HT = = [ 1, 1+1, 1+1 ] = [ 1 0 0] (syndrome of corrupted code vector) Error Control Coding © Erhan A. Ince

( =syndrome of error pattern ) Now we can verify that syndrome of the corrupted code vector is the same as the syndrome of the error pattern: S = eHT = [1 0 0 0 0]HT = [ 1 0 0 ] ( =syndrome of error pattern ) Error Control Coding © Erhan A. Ince

Error Correction Since there is a one-to-one correspondence between correctable error patterns and syndromes we can correct such error patterns. Assume the 2n n-tuples that represent possible received vectors are arranged in an array called the standard array. 1. The first row contains all the code vectors starting with all-zeros vector 2. First column contains all the correctable error patterns The standard array for a (n,k) code is: Error Control Coding © Erhan A. Ince

The array contains 2n n-tuples in the space Vn Each row called a coset consists of an error pattern in the first column, also known as the coset leader, followed by the code vectors perturbed by that error pattern. The array contains 2n n-tuples in the space Vn each coset consists of 2k n-tuples  there are cosets If the error pattern caused by the channel is a coset leader, the received vector will be decoded correctly into the transmitted code vector Ui. If the error pattern is not a coset leader the decoding will produce an error. Error Control Coding © Erhan A. Ince

Syndrome of a Coset If ej is the coset leader of the jth coset then ; Ui + ej is an n-tuple in this coset Syndrome of this coset is: S = (Ui + ej)HT = Ui HT + ejHT = ejHT All members of a coset have the same syndrome and in fact the syndrome is used to estimate the error pattern. Error Control Coding © Erhan A. Ince

Error CorrectionDecoding The procedure for error correction decoding is as follows: Calculate the syndrome of r using S = rHT Locate the coset leader (error pattern) , ej, whose syndrome equals rHT This error pattern is the corruption caused by the channel The corrected received vector is identified as U = r + ej . We retrieve the valid code vector by subtracting out the identified error Note: In modulo-2 arithmetic subtraction is identical to that of addition Error Control Coding © Erhan A. Ince

Example: Locating the error pattern: For the (6,3) linear block code we have seen before the standard array can be arranged as: 000000 110100 011010 101110 101001 011101 110011 000111 000001 110101 011011 101111 101000 011100 110010 000110 000010 110110 011000 101100 101011 011111 110001 000101 000100 110000 011110 101010 101101 011001 110111 000011 001000 111100 010010 100110 100001 010101 111011 001111 010000 100100 001010 111110 111001 001101 100011 010111 100000 010100 111010 001110 001001 111101 010011 100111 010001 100101 001011 111111 111000 001100 100010 010110 Error Control Coding © Erhan A. Ince

The valid code vectors are the eight vectors in the first row and the correctable error patterns are the eight coset leaders in the first column. Decoding will be correct if and only if the error pattern caused by the channel is one of the coset leaders We now compute the syndrome corresponding to each of the correctable error sequences by computing ejHT for each coset leader Error Control Coding © Erhan A. Ince

Syndrome lookup table.. error pattern Syndrome 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1 1 1 1 Error Control Coding © Erhan A. Ince

Û = r + ê = (U + e) + ê = U + (e ê) Error Correction We receive the vector r and calculate its syndrome S We then use the syndrome-look-up table to find the corresponding error pattern. This error pattern is an estimate of the error, we denote it as ê The decoder then adds ê to r to obtain an estimate of the transmitted code vector û Û = r + ê = (U + e) + ê = U + (e ê) If the estimated error pattern is the same as the actual error pattern that is if ê = e then û = U If ê  e the decoder will estimate a code vector that was not transmitted and hence we have an undetectable decoding error. Error Control Coding © Erhan A. Ince

Example Assume code vector U = [ 1 0 1 1 1 0 ] is transmitted and the vector r=[0 0 1 1 1 0] is received. The syndrome of r is computed as: S = [0 0 1 1 1 0 ]HT = [ 1 0 0 ] From the look-up table 100 has corresponding error pattern: ê = [1 0 0 0 0 0 ] The corrected vectors is the Û = r + ê = 0 0 1 1 1 0 + 1 0 0 0 0 0 = 1 0 1 1 1 0 (corrected) In this example actual error pattern is the estimated error pattern, Hence û = U Error Control Coding © Erhan A. Ince