Chapter 11 Error-Control CodingChapter 11 : Lecture edition by K.Heikkinen.

Slides:



Advertisements
Similar presentations
Convolutional Codes Mohammad Hanaysheh Mahdi Barhoush.
Advertisements

Cyclic Code.
Error Control Code.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Data and Computer Communications Tenth Edition by William Stallings Data and Computer Communications, Tenth Edition by William Stallings, (c) Pearson Education.
Data and Computer Communications
Maximum Likelihood Sequence Detection (MLSD) and the Viterbi Algorithm
Chapter 6 Information Theory
Cellular Communications
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
Fundamental limits in Information Theory Chapter 10 :
Coding and Error Control
Lecture 9-10: Error Detection and Correction Anders Västberg Slides are a selection from the slides from chapter 8 from:
DIGITAL COMMUNICATION Coding
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
EE 3220: Digital Communication Dr Hassan Yousif 1 Dr. Hassan Yousif Ahmed Department of Electrical Engineering College of Engineering at Wadi Aldwasser.
DIGITAL COMMUNICATION Coding
S Advanced Digital Communication (4 cr)
DIGITAL COMMUNICATION Error - Correction A.J. Han Vinck.
1 INF244 Textbook: Lin and Costello Lectures (Tu+Th ) covering roughly Chapter 1;Chapters 9-19? Weekly exercises: For your convenience Mandatory.
Channel Coding and Error Control
Channel Coding Part 1: Block Coding
Copyright © 2003, Dr. Dharma P. Agrawal and Dr. Qing-An Zeng. All rights reserved. 1 Chapter 4 Channel Coding.
CHANNEL CODING TECHNIQUES By K.Swaraja Assoc prof MREC
Lecture 10: Error Control Coding I Chapter 8 – Coding and Error Control From: Wireless Communications and Networks by William Stallings, Prentice Hall,
1 Channel Coding (II) Cyclic Codes and Convolutional Codes.
Application of Finite Geometry LDPC code on the Internet Data Transport Wu Yuchun Oct 2006 Huawei Hisi Company Ltd.
1 SNS COLLEGE OF ENGINEERING Department of Electronics and Communication Engineering Subject: Digital communication Sem: V Cyclic Codes.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
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.
Data and Computer Communications by William Stallings Eighth Edition Digital Data Communications Techniques Digital Data Communications Techniques Click.
1 Chapter 8. Coding and Error Control Wen-Shyang Hwang KUAS EE.
Basic Characteristics of Block Codes
Outline Transmitters (Chapters 3 and 4, Source Coding and Modulation) (week 1 and 2) Receivers (Chapter 5) (week 3 and 4) Received Signal Synchronization.
Coding Theory. 2 Communication System Channel encoder Source encoder Modulator Demodulator Channel Voice Image Data CRC encoder Interleaver Deinterleaver.
§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
6876: Communication Networks ERROR CONTROL STRATEGIES Error Control Strategies Forward Error Correction (FEC) Automatic Repeat Request (ARQ)
ADVANTAGE of GENERATOR MATRIX:
Linear Block Code 指導教授:黃文傑 博士 學生:吳濟廷
Chapter 31 INTRODUCTION TO ALGEBRAIC CODING THEORY.
Information Theory Linear Block Codes Jalal Al Roumy.
Channel Coding Binit Mohanty Ketan Rajawat. Recap…  Information is transmitted through channels (eg. Wires, optical fibres and even air)  Channels are.
Last time, we talked about:
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.
Timo O. Korhonen, HUT Communication Laboratory 1 Convolutional encoding u Convolutional codes are applied in applications that require good performance.
Error Detection. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. An error-detecting code can.
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.
Struggle ! two practical classes of channel (error- correcting) codes cyclic codes (巡回符号) a subclass of linear codes linear-time encoding and error detection.
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.
CHAPTER 8 CHANNEL CODING: PART 3 Sajina Pradhan
Channel Coding: Part I Presentation II Irvanda Kurniadi V. ( ) Digital Communication 1.
Channel Coding and Error Control 1. Outline Introduction Linear Block Codes Cyclic Codes Cyclic Redundancy Check (CRC) Convolutional Codes Turbo Codes.
Institute for Experimental Mathematics Ellernstrasse Essen - Germany DATA COMMUNICATION introduction A.J. Han Vinck May 10, 2003.
DIGITAL SYTEM DESIGN MINI PROJECT CONVOLUTION CODES
S Digital Communication Systems
Subject Name: Information Theory Coding Subject Code: 10EC55
DIGITAL COMMUNICATION Coding
Coding and Error Control
Homework #2 Due May 29 , Consider a (2,1,4) convolutional code with g(1) = 1+ D2, g(2) = 1+ D + D2 + D3 a. Draw the.
IV. Convolutional Codes
Chapter 10 Error Detection and Correction
Presentation transcript:

Chapter 11 Error-Control CodingChapter 11 : Lecture edition by K.Heikkinen

Chapter 11 goals To understand error-correcting codes in use theorems and their principles –block codes, convolutional codes, etc.

Chapter 11 contents Introduction Discrete Memoryless Channels Linear Block Codes Cyclic Codes Maximum Likelihood decoding of Convolutional Codes Trellis-Coded Modulation Coding for Compound-Error Channels

Introduction Cost-effective facility for transmitting information at a rate and a level of reliability and quality –signal energy per bit-to-noise power density ratio –achieved practically via error-control coding Error-control methods Error-correcting codes

Discrete Memoryless Channels

Discrete memoryless channles (see fig. 11.1) described by the set of transition probabilities –in simplest form binary coding [0,1] is used of which BSC is an appropriate example –channel noise modelled as additive white gaussian noise channel the two above are so called hard-decision decoding –other solutions, so called soft-decision coding

Linear Block Codes A code is said to be linear if any twowords in the code can be added in modulo-2 arithmetic to produce a third code word in the code Linear block code has n bits of which k bits are always identical to the message sequence Then n-k bits are computed from the message bits in accordance with a prescribed encoding rule that determines the mathematical structure of the code –these bits are also called parity bits

Linear Block Codes Normally code equations are written in the form of matrixes (1-by-k message vector) –P is the k-by-(n-k) coefficient matrix –I (of k) is the k-by-k identity matrix –G is k-by-n generator matrix Another way to show the relationship between the message bits and parity bits –H is parity-check matrix

Linear Block Codes In Syndrome decoding the generator matrix (G) is used in the encoding at the transmitter and the parity-check matrix (H) atthe receiver –if corrupted bit, r = c+e, this leads to two important properties the syndrome is dependant only on the error pattern, not on the trasmitted code word all error patterns that differ by a code word, have same syndrome

Linear Block Codes The Hamming distance (or minimum) can be used to calculate the difference of the code words We have certain amount (2_power_k) code vectors, of which the subsets constitute a standard array for an (n,k) linear block code We pick the error pattern of a given code –coset leaders are the most obvious error patterns

Linear Block Codes Example : Let us have H as parity-check matrix which vectors are –(1110), (0101), (0011), (0001), (1000), (1111) –code generator G gives us following codes (c) : , ,111010, –Let us find n, k and n-k ? –what will we find if we multiply Hc ?

Linear Block Codes Examples of (7,4) Hamming code words and error patterns

Cyclic Codes Cyclic codes form subclass of linear block codes A binary code is said to be cyclic if it exhibits the two following properties –the sum of any two code words in the code is also a code word (linearity) this means that we speak linear block codes –any cyclic shift of a code word in the code is also a code word (cyclic) mathematically in polynomial notation

Cyclic Codes The polynomial plays major role in the generation of cyclic codes If we have a generator polynomial g(x) of an (n,k) cyclic code with certain k polynomials, we can create the generator matrix (G) Syndrome polynomial of the received code word corresponds error polynomial

Cyclic Codes

Example : A (7,4) cyclic code that has a block length of 7, let us find the polynomials to generate the code (see example 3 on the book) –find code polynomials –find generation matrix (G) and parity-check matrix (H)

Cyclic Codes Other remarkable cyclic codes –Cyclic redundancy check (CRC) codes –Bose-Chaudhuri-Hocquenghem (BCH) codes –Reed-Solomon codes

Convolutional Codes Convolutional codes work in serial manner, which suits better to such kind of applications The encoder of a convolutional code can be viewed as a finite-state machine that consists of an M-stage shift register with prescribed connections to n modulo-2 adders, and a multiplexer that serializesthe outputs of the address

Convolutional Codes Convolutional codes are portrayed in graphical form by using three different diagrams –Code Tree –Trellis –State Diagram

Maximum Likelihood Decoding of Convolutional Codes We can create log-likelihood function to a convolutional code that have a certain hamming distance The book presents an example algorithm (Viterbi) –Viterbi algorithm is a maximum-likelihood decoder, which is optimum for a AWGN (see fig ) initialisation computation step final step

Trellis-Coded Modulation Here coding is described as a process of imposing certain patterns on the transmitted signal Trellis-coded modulation has three features –Amount of signal point is larger than what is required, therefore allowing redundancy without sacrificing bandwidth –Convolutional coding is used to introduce a certain dependancy between successive signal points –Soft-decision decoding is done in the receiver

Coding for Compound-Error Channels Compound-error channels exhibit independent and burst error statistics (e.g. PSTN channels, radio channels) Error-protection methods (ARQ, FEC)