Subject Name: Information Theory Coding Subject Code: 10EC55

Slides:



Advertisements
Similar presentations
Mahdi Barhoush Mohammad Hanaysheh
Advertisements

Cyclic Code.
Error Control Code.
Information and Coding Theory
CHANNEL CODING REED SOLOMON CODES.
Wireless Mobile Communication and Transmission Lab. Chapter 2 Block code ----BCH The Theory and Technology of Error Control Coding.
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
DIGITAL COMMUNICATION Coding
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
DIGITAL COMMUNICATION Coding
Error Detection and Correction Rizwan Rehman Centre for Computer Studies Dibrugarh University.
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 Code A Hamming code is a linear error-correcting code named after its inventor, Richard Hamming. Hamming codes can detect up to two bit errors,
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.
Channel Coding and Error Control
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.
1 Channel Coding (II) Cyclic Codes and Convolutional Codes.
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.
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.
Data and Computer Communications Chapter 6 – Digital Data Communications Techniques.
Data and Computer Communications by William Stallings Eighth Edition Digital Data Communications Techniques Digital Data Communications Techniques Click.
Practical Session 10 Error Detecting and Correcting Codes.
§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
CHAPTER 5 SIGNAL SPACE ANALYSIS
ADVANTAGE of GENERATOR MATRIX:
Chapter 31 INTRODUCTION TO ALGEBRAIC CODING THEORY.
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.
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.
Some Computation Problems in Coding Theory
Error Detection and Correction
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
INFORMATION THEORY Pui-chor Wong.
Hamming Distance & Hamming Code
Error Control Coding. Purpose To detect and correct error(s) that is introduced during transmission of digital signal.
1 Product Codes An extension of the concept of parity to a large number of words of data 0110… … … … … … …101.
Error Detecting and Error Correcting Codes
Block Coded Modulation Tareq Elhabbash, Yousef Yazji, Mahmoud Amassi.
II. Linear Block Codes. © Tallal Elshabrawy 2 Digital Communication Systems Source of Information User of Information Source Encoder Channel Encoder Modulator.
Channel Coding: Part I Presentation II Irvanda Kurniadi V. ( ) Digital Communication 1.
RS – Reed Solomon Error correcting code. Error-correcting codes are clever ways of representing data so that one can recover the original information.
8 Coding Theory Discrete Mathematics: A Concept-based Approach.
The Viterbi Decoding Algorithm
Computer Architecture and Assembly Language
Introduction to Information Technologies
Error Detection and Correction
Subject Name: COMPUTER NETWORKS-1
Advanced Computer Networks
Chapter 6.
Chapter 6.
Subject Name: Information Theory Coding Subject Code: 10EC55
II. Linear Block Codes.
Introduction to Information Technologies
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
DIGITAL COMMUNICATION Coding
Copyright © Cengage Learning. All rights reserved.
II. Linear Block Codes.
Error Detection and Correction
Computer Architecture and Assembly Language
Error Detection and Correction
Error Correction Coding
Presentation transcript:

Subject Name: Information Theory Coding Subject Code: 10EC55 Prepared By: Shima Ramesh,Pavana Department: ECE Date: 10/11/2014 11/12/2018 MVJCE

UNIT 5 Introduction to error control coding 11/12/2018 MVJCE

Introduction to Error control coding: Topics to be covered Introduction to Error control coding: Introduction, types of errors, examples, types of codes, linear block codes: Matrix Description Error detection and correction, standard arrays and table look up for decoding. 11/12/2018

Block Diagram for typical data transmission system. The information source can be person or machine.The source output, can be either continuous wave form or sequence of discrete symbols. The source encoder transforms the source output into sequence of binary digits u. If the source output happens to be continuous, it involves AD conversion 11/12/2018

These waveforms as they entered the channel get corrupted by noise. The channel encoder transforms u to the encoded sequence v in general a binary sequence.then the coded sequence are transformed to wave forms of specific durations. These waveforms as they entered the channel get corrupted by noise. The demodulator processes each received waveform and produces an output which may be continuous or discrete sequence r. 11/12/2018

There are two types errors independent errors and burst errors. Types of errors: There are two types errors independent errors and burst errors. The transmission errors due to gaussian noise are referred to as independent errors(random errors). Burst errors are due to the impulse noise. Which is characterized by long quiet intervals followed by high amplitude noise burst. A noise burst usually affects more than one symbol and there will be dependence of errors in successive transmitted symbols. Thus error occurs in burst. 11/12/2018

There are mainly two types of error control coding schemes Types of codes. There are mainly two types of error control coding schemes (i) Block codes. (ii) Convolutional codes. Block codes: The information sequence is divided into message blocks of k bits each, represented by a binary k-tuple,u={u1,u2…..uk} and each block is called a message. The encoder then transforms u into an n-tuple v={v1,v2…..vn}. Here v represents an encoded block rather than the entire encoded sequence. The blocks are independent of each other. 11/12/2018

The encoder of a convolutional code also accepts k-bits blocks of the information sequence u and produces an n-symbol block v. here u and v are used to denote sequences of blocks rather than a single block. Consider Are the bit durations in the encoded and coded sequence. i.e input and output code words. Then Rate efficiency or rate code is given by According with Topic details We have 11/12/2018

u=input vector, v=code vector. In Block coding the information sequence is segmented into message blocks of fixed length say k. Each message block denoted by u then consists of k information digits. Consider 2^k code words of length n>k. This set of 2^k code words is called a block code. For the block code to be useful these 2^k code words must be distinct. That is there should be one-to-one correspondence between u and v. u=input vector, v=code vector. Linear Block codes: A block code is said to be linear (n,k)code if and only if the 2^k code words from a k-dimensional sub space over a vector space of all n-tuples over the field GF(2). Fields with 2^m symbols are called galois Fields.GF(2^m) For two variable 0 and 1 modulo-2 multiplication and addition is given by 11/12/2018

When p(X) is irreducible that is it does not have a factor of The arithmetic of GF(2^m) can be derived as polynomial degree m with binary coefficients and using a new variable called the primitive element Consider for Example When p(X) is irreducible that is it does not have a factor of Degree<m and >0 then p(X) is said to be primitive polynomial. Such that 11/12/2018

Consider linear block code:with k=3 and n=6 n represents the word length of code word and k represents the Number information digits and hence the block is represented by (n,k) block code. 11/12/2018

Then the generator matrix can be written Thus by definition of liner block code it follows that if g1,g2,….gk are k linearly independent code words then every code vector v is the combination of these code word. Then the generator matrix can be written Thus we have v=uG 11/12/2018

Systematic Block codes. Here the code word is divided into two parts message part and Redundant part. If either the first k digits or last k digits of the code corresponds to the message part then we say that the code is systematic block code. 11/12/2018

Where G=[Ik,P] Ik is the k *k identity matrix, P is the k*(n-k) parity generator matrix 11/12/2018

Where T represents transposition Or it can be defined as The n-vector a=(a1,a2…an) and b=(b1,b2…bn) are said to be orthogonal if their inner product is defined by: Where T represents transposition Or it can be defined as An n-tuple v I code word generated by G if and only if H is called parity check matrix and its dimension is (n-k)*n 11/12/2018

Is an all zero matrix of dimension k*(n-k) If generator matrix has systematic format, the parity check matrix is given by . Is an all zero matrix of dimension k*(n-k) 11/12/2018

Syndrome and error detection: Suppose v=(v1,v2,v3…vn) be a code word transmitted over a noisy channel.let r be the received vector where r=(r1,r2….rn) be the received vector. The vector sum Is an n-tuple if where ej=1 if rj is not equal to vj and ej=0 if rj=vj. This n-tuple is called error vector or error pattern. 1’s in e are the transmission error caused by channel noise. 11/12/2018

When r is received the decoder computes the following n-tuple The vector s is called the syndrome vector. S=0 if and only if r is code word and s not equal to zero If r is not a code word. 11/12/2018

Syndrome for (6,3) systematic code. The above equation indicates that the syndrome depends only on the error pattern and not on the transmitted code word v. 11/12/2018

Minimum distance considerations: let the n-tuples Be the code word The Hamming distance between a pair of code vector is defined as The number of positions in which they differ. Hamming distance is represented by The Hamming weigh Is defined as the number of non-zero elements in the code vector. 11/12/2018

Hamming distance satisfies the triangle inequality Minimum distance of linear block is defined as the smallest hamming distance between any pair of code words in the code or minimum distance of a linear block code is the smallest hamming weight of the non zero code vectors in the code. Hamming distance satisfies the triangle inequality And also Similarly minimum distance can be represented as Where Wmin is the minimum weight of the linear block code c 11/12/2018

Error Detection and Correction: The minimum Distance of linear block code (dmin) is one which determines the error correcting capability of the code. The decoder will be able to detect and correct all error patterns of hamming weight w(e) < =t provided that the minimum distance of the code is such that dmin is either odd or even Let t be the positive integer such that 11/12/2018

Random error correcting capability of the code is given by Hamming bound: If an (n,k) linear block code is to be capable Of correcting up to t errors, the total number of syndromes shall Not be less than the total number of all possible error patterns. A binary code for which the hamming bound turns out to be Quality is called perfect code . 11/12/2018

Steps for standard array: Place the 2^k code vectors of the code in a row, with all the all zero vector v1=(0,0,0…0)=0 as the first (left most) element. From among the remaining (2^n-2^k) n-tuples ,e2 is chosen and placed below the all zero vector,v1. The second row can now be formed by placing Now take an un-used n tuple e3 and complete 3rd row as in step 2. Continue the process until all the n-tuples are used 11/12/2018

Standard array for (n,k) linear code No two n-tuples in the same row of a standard array is are identical Every n-tuple appears in one and only one row. Every (n,k) linear block code is capable of correcting 2^n-k error patterns. 11/12/2018

Decode the received vector r into the code vector Steps for decoding: Compute the syndrome Locate the co-set leader ej whose syndrome is s. then ej is assumed to be the error pattern caused by the channel. Decode the received vector r into the code vector The decoding scheme is also called as table look up decoding 11/12/2018

Parity check matrix H can be arranged as follows Hamming codes: Hamming code is the first class of linear codes are characterized by the following parameters: Parity check matrix H can be arranged as follows Where Im is an identity matrix of order m*m and Q matrix Consists of (2^m)-m-1 columns. 11/12/2018

We may delete any l columns from the parity check matrix H of the hamming code resulting in the reduction of the dimension of H matrix Using this new matrix as the parity check matrix we obtain a Shortened hamming code with the following parameters Note if the deletion of the column of H matrix is proper. We may obtain a Hamming code with dmin=4 11/12/2018

Accordingly the decoding operation are performed in following manner: The distance 4 shortened hamming codes can be used for correcting all single error patterns while simultaneously detecting all double error patterns. Accordingly the decoding operation are performed in following manner: (1)If s=0 then no error occurred (2) If s contains odd number of ones, single error has occurred. The single error pattern pertaining to this symbol is added to the received code vector for error correction. (3) If s contains even number of 1’s an uncorrectable pattern has been detected . 11/12/2018

To obtain complete code sequence corresponding to information sequence of length kL. The tree graph is to extended by n(m-l) time units. The extended part unit is called “tail of the tree”.2kL right most nodes are called “terminal nodes”. Illustration of tail of the tree The completed sequence is