II. Linear Block Codes.

Slides:



Advertisements
Similar presentations
Mahdi Barhoush Mohammad Hanaysheh
Advertisements

Error Control Code.
II. Linear Block Codes. © Tallal Elshabrawy 2 Last Lecture H Matrix and Calculation of d min Error Detection Capability Error Correction Capability Error.
Error Detection and Correction
Cellular Communications
Transmission Errors Error Detection and Correction
Error Detection and Correction
Error Detection and Correction
DIGITAL COMMUNICATION Coding
Error detection/correction FOUR WEEK PROJECT 1 ITEMS TO BE DISCUSSED 1.0 OVERVIEW OF CODING STRENGTH (3MINS) Weight/distance of binary vectors Error detection.
Transmission Errors1 Error Detection and Correction.
EEE377 Lecture Notes1 EEE436 DIGITAL COMMUNICATION Coding En. Mohd Nazri Mahmud MPhil (Cambridge, UK) BEng (Essex, UK) Room 2.14.
DIGITAL COMMUNICATION Coding
3F4 Error Control Coding Dr. I. J. Wassell.
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,
exercise in the previous class (1)
Hamming Codes 11/17/04. History In the late 1940’s Richard Hamming recognized that the further evolution of computers required greater reliability, in.
Transmission Errors Error Detection and Correction
Linear Codes.
DIGITAL COMMUNICATION Error - Correction A.J. Han Vinck.
Lecture 10: Error Control Coding I Chapter 8 – Coding and Error Control From: Wireless Communications and Networks by William Stallings, Prentice Hall,
Information and Coding Theory Linear Block Codes. Basic definitions and some examples. Juris Viksna, 2015.
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.
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.
Chapter 10. Error Detection and Correction
Data and Computer Communications by William Stallings Eighth Edition Digital Data Communications Techniques Digital Data Communications Techniques Click.
Introduction to Coding Theory. p2. Outline [1] Introduction [2] Basic assumptions [3] Correcting and detecting error patterns [4] Information rate [5]
Basic Characteristics of Block Codes
Error Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
§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
ADVANTAGE of GENERATOR MATRIX:
Information Theory Linear Block Codes Jalal Al Roumy.
Error Detection and Correction
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
Data Link Layer. Data Link Layer Topics to Cover Error Detection and Correction Data Link Control and Protocols Multiple Access Local Area Networks Wireless.
Error Detection and Correction
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
Data Communications and Networking
Fidelity of a Quantum ARQ Protocol Alexei Ashikhmin Bell Labs  Classical Automatic Repeat Request (ARQ) Protocol  Quantum Automatic Repeat Request (ARQ)
Hamming Distance & Hamming Code
Error Control Coding. Purpose To detect and correct error(s) that is introduced during transmission of digital signal.
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.
Coding and Error Control
Lecture 4 Error Detecting and Correcting Techniques Dr. Ghalib A. Shah
Modulo-2 Digital coding uses modulo-2 arithmetic where addition becomes the following operations: 0+0= =0 0+1= =1 It performs the.
Error Detection and Correction
Chapter 6.
Chapter 10 Error Detection And Correction
Welcome to the presentation. Linear Block Codes Almost all block codes used today belong to a subset called linear block codes. The exclusive OR of two.
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.
Standard Array.
DIGITAL COMMUNICATION Coding
Lecture 3 Digital Transmission Fundamentals
Error Detection and Correction
Error Detection and Correction
Error Detection and Correction
Types of Errors Data transmission suffers unpredictable changes because of interference The interference can change the shape of the signal Single-bit.
Electrical Communications Systems ECE Spring 2019
Electrical Communications Systems ECE
Presentation transcript:

II. Linear Block Codes

Last Lecture What are Linear Block Codes? Linear Systematic Block Codes Generator Matrix and Encoding Process Parity Check Matrix, Syndrome & Error Detection Process Encoding Circuit & Syndrome Circuit

Hamming Weight and Hamming Distance Hamming Weight w(v): The number of nonzero components of v Hamming Distance d(v,w): The number of places where v and w differ Example: v= (1 0 1 1 1 0 1): w(v)=5 w=(0 1 1 0 1 0 1): d(v,w)=3 Important Remark: In GF(2) d(v,w)=w(v+w) In the example above v+w=(1 1 0 1 0 0 0)

Minimum Distance of a Block Code Minimum Distance of a block code (dmin): The minimum Hamming distance between any two code words in the code book of the block code For Linear Block Codes

Theorem Let C be an (n,k) linear block code with parity check matrix H. For each code word of Hamming weight l, there exists l columns of H such that the vector sum of these l columns is equal to the zero vector. PROOF:

Theorem (Cont’d) Conversely, if there exists l columns of H whose vector sum is the zero vector, there exists a codeword of Hamming weight l in C. PROOF:

Corollaries Given C is a linear block code with parity check matrix H. If no d-1 or fewer columns of H add to 0, the code has minimum weight of at least d. Given C is a linear block code with parity check matrix H. The minimum distance of C is equal to the smallest number of columns of H that sum to 0.

Example (7,4) Linear Block Code No all 0 column. No two columns are identical: dmin>2 Columns 0, 1, 3 sum to zero vector dmin=3

Error Detection Error Detection Capability means: HOW MANY ERRORS ARE GUARANTEED TO BE DETECTED AT THE RECEIVER SIDE TWO Possibilities: Number of errors (no. of 1s in e) is smaller than dmin Number of errors (no. of 1s in e) is greater than dmin v r Channel e You could be absolutely sure that r is not a valid codeword. There is a chance that r is a valid codeword (if e is a valid code word) v: transmitted codeword e: error pattern caused by channel r: received pattern If error pattern includes l errors: d(v,r)=l THE ERROR IS GUARANTEED TO BE DETECTED THE ERROR PATTERN MIGHT NOT BE DETECTED

Error Detection Capability The “Error Detection Capability” of a code defines the number of errors that are GUARANTEED to be detected. For a code with minimum Hamming distance dmin: The error detection capability is dmin-1

Number of Detectable Error Patterns An error pattern is defined as any nonzero n-tuple that could affect a transmitted code word. For an (n,k) code: There are 2n-1 error patterns. Note that (0 0 0 . . . 0) is not an error pattern There are 2k-1 undetectable error patterns. Note that (0 0 0 . . . 0) is selected to be a valid codeword An (n,k) code has the ability to detect 2n-2k error patterns Example: A (7,4) code is able to detect: 128-16=112 error patterns

Error Correction Capability The “error correction capability” defines the number of errors that are GUARANTEED to be corrected. For a code with minimum Hamming distance dmin: The error correction capability is (dmin-1)/2 x means floor(x)

Error Correction Capability: Proof Assume a Block Code with dmin Define a Positive Integer t such that: v r Channel e v: transmitted codeword e: error pattern caused by channel r: received pattern Assume w is also a valid codeword in C Triangle Inequality: Assume an error pattern with t’ errors Given that v and w are codewords i.e., if an error pattern of t or fewer errors occur, the received vector r MUST BE closer to v than to any other codeword in C If t’≤t

Error Correction & Error Detection Capability Some codes are designed such that they can GUARANTEE correction of λ or fewer errors AND detection of up to l>λ For a code with minimum Hamming distance dmin: If the code could correct λ and detect up to l then dmin≥ λ+l+1 Example: If it is required for a code to correct 3 errors AND detect up to 6 errors then dmin must satisfy: dmin ≥10 Notes: In the example above, If the number of errors are 3 or less: you can provide a GUARNTEE to correct all of them. If the number of errors are from 4 to 6: you can provide a GUARNTEE to detect that the number of errors are between 4 to 6 without being able to correct ANY of them. If the number of errors are greater than 6: there is NO GUARANTEE that you would be able to detect or correct the errors

Quantization and Analogy to Error Correction and Detection Operation Correct Reception: The value received is identical to what has been transmitted Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 Channel

Quantization and Analogy to Error Correction and Detection Operation Error Detection: The value received IS NOT EQUAL to any of the valid representation levels ARQ: Request retransmission Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 Channel

Quantization and Analogy to Error Correction and Detection Operation Error Detection: The value received IS NOT EQUAL to any of the valid representation levels ARQ: Request retransmission Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 Channel

Quantization and Analogy to Error Correction and Detection Operation Un-Detected Errors: The value received IS a valid representation level. However, it is NOT what has been transmitted Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 Channel

Quantization and Analogy to Error Correction and Detection Operation Approximate the received value to the closest valid representation level. FEC: The receiver defines decision zones and maps ANY received value to a valid representation level. ARQ cannot be applied Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 D0 D1 D2 D3 v*0=0 v*1=1 v*2=2 v*3=3 Channel

Quantization and Analogy to Error Correction and Detection Operation Approximate the received value to the closest valid representation level. FEC: The receiver defines decision zones and maps ANY received value to a valid representation level. ARQ cannot be applied Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 D0 D1 D2 D3 Channel

Quantization and Analogy to Error Correction and Detection Operation False Correction: The error pushes the received value outside the decision zone of the representation level that has been transmitted. Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 D0 D1 D2 D3 Channel

Quantization and Analogy to Error Correction and Detection Operation False Correction: The error pushes the received value outside the decision zone of the representation level that has been transmitted. Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 D0 D1 D2 D3 Channel

Quantization and Analogy to Error Correction and Detection Operation Error Correction and Error Detection: Defines two types of decision zone such that both FEC and ARQ could be used dependent on the received value Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 D0 D1 D2 D3 v*0=0 v*1=1 v*2=2 v*3=3 Channel

Quantization and Analogy to Error Correction and Detection Operation Error Correction and Error Detection: Defines two types of decision zone such that both FEC and ARQ could be used dependent on the received value Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 D0 D1 D2 D3 Channel Error Correction

Quantization and Analogy to Error Correction and Detection Operation Error Correction and Error Detection: Defines two types of decision zone such that both FEC and ARQ could be used dependent on the received value Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 D0 D1 D2 D3 Channel

Quantization and Analogy to Error Correction and Detection Operation Error Correction and Error Detection: Defines two types of decision zone such that both FEC and ARQ could be used dependent on the received value Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 D0 D1 D2 D3 Channel False Error Correction

Quantization and Analogy to Error Correction and Detection Operation Error Correction and Error Detection: Defines two types of decision zone such that both FEC and ARQ could be used dependent on the received value Transmitter Side Receiver Side v0=0 v1=1 v2=2 v3=3 v*0=0 v*1=1 v*2=2 v*3=3 D0 D1 D2 D3 Channel Error Detection and ARQ could be used