ECE 6332, Spring, 2014 Wireless Communication Zhu Han Department of Electrical and Computer Engineering Class 18 March. 26 th, 2014.

Slides:



Advertisements
Similar presentations
Cyclic Code.
Advertisements

Error Control Code.
Computer Networking Error Control Coding
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Wireless Sensor Networks Akyildiz/Vuran Administration Issues  Take home Mid-term Exam  Assign April 2, Due April 7  Individual work is required 
CSE 461: Error Detection and Correction. Next Topic  Error detection and correction  Focus: How do we detect and correct messages that are garbled during.
Cellular Communications
Chapter 3: Channel Coding (part 1)
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:
Chapter 6: Errors, Error Detection, and Error Control
Error Correcting Codes To detect and correct errors Adding redundancy to the original message Crucial when it’s impossible to resend the message (interplanetary.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Error Control.
Chapter 6 Errors, Error Detection, and Error Control
Department of Electrical and Computer Engineering
DIGITAL COMMUNICATION Coding
Channel Coding and Error Control
ECE 4371, Fall, 2014 Introduction to Telecommunication Engineering/Telecommunication Laboratory Zhu Han Department of Electrical and Computer Engineering.
Copyright © 2003, Dr. Dharma P. Agrawal and Dr. Qing-An Zeng. All rights reserved. 1 Chapter 4 Channel Coding.
Lecture 10: Error Control Coding I Chapter 8 – Coding and Error Control From: Wireless Communications and Networks by William Stallings, Prentice Hall,
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved. 1 Communication Reliability Asst. Prof. Chaiporn Jaikaeo, Ph.D.
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.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 14.
Cyclic Code. Linear Block Code Hamming Code is a Linear Block Code. Linear Block Code means that the codeword is generated by multiplying the message.
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.
Lecture 3-2: Coding and Error Control (Cont.) ECE
1 Chapter 8. Coding and Error Control Wen-Shyang Hwang KUAS EE.
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, October 2011.
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.
EE 6331, Spring, 2009 Advanced Telecommunication Zhu Han Department of Electrical and Computer Engineering Class 20 Apr. 9 th, 2009.
Error Detection and Correction
Data Communications & Computer Networks, Second Edition1 Chapter 6 Errors, Error Detection, and Error Control.
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.
David Wetherall Professor of Computer Science & Engineering Introduction to Computer Networks Error Detection (§3.2.2)
ECE 4331, Fall, 2009 Zhu Han Department of Electrical and Computer Engineering Class 21 Nov.5 th, 2009.
Computer Science Division
CHAPTER 3: DATA LINK CONTROL Flow control, Error detection – two dimensional parity checks, Internet checksum, CRC, Error control, Transmission efficiency.
10.1 Chapter 10 Error Detection and Correction Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
1 Block Coding Messages are made up of k bits. Transmitted packets have n bits, n > k: k-data bits and r-redundant bits. n = k + r.
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
Error Detection and Correction
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2000 PART III: DATA LINK LAYER ERROR DETECTION AND CORRECTION 7.1 Chapter 10.
Tufts University. EE194-WIR Wireless Sensor Networks. February 17, 2005 Increased QoS through a Degraded Channel using a Cross-Layered HARQ Protocol Elliot.
Data Communications and Networking
Transport Protocols.
Hamming Distance & Hamming Code
Transmission Errors Error Detection and Correction.
Error Control Coding. Purpose To detect and correct error(s) that is introduced during transmission of digital signal.
Data Link Layer 1. 2 Single-bit error 3 Multiple-bit error 4.
ERROR DETECTION AND CORRECTION Chapter 8 Data Communications & Networking ERROR DETECTION AND CORRECTION Chapter 8 First Semester 2007/2008.
ERROR DETECTION AND CORRECTION
Error Detection and Correction
DATA COMMUNICATION AND NETWORKINGS
EEC4113 Data Communication & Multimedia System Chapter 5: Error Control by Muhazam Mustapha, August 2010.
Chapter 6.
DIGITAL COMMUNICATION Coding
Chapter 10: Error-Control Coding
Coding and Error Control
Types of Errors Data transmission suffers unpredictable changes because of interference The interference can change the shape of the signal Single-bit.
Error Detection and Correction
Presentation transcript:

ECE 6332, Spring, 2014 Wireless Communication Zhu Han Department of Electrical and Computer Engineering Class 18 March. 26 th, 2014

Outline Chapter 8 –FEC Basics –Line Code

Automatic Repeat-reQuest (ARQ) Alice and Bob on their cell phones –Both Alice and Bob are talking What if Alice couldn’t understand Bob? –Bob asks Alice to repeat what she said What if Bob hasn’t heard Alice for a while? –Is Alice just being quiet? –Or, have Bob and Alice lost reception? –How long should Bob just keep on talking? –Maybe Alice should periodically say “uh huh” –… or Bob should ask “Can you hear me now?”

ARQ Acknowledgments from receiver –Positive: “okay” or “ACK” –Negative: “please repeat that” or “NACK” Timeout by the sender (“stop and wait”) –Don’t wait indefinitely without receiving some response –… whether a positive or a negative acknowledgment Retransmission by the sender –After receiving a “NACK” from the receiver –After receiving no feedback from the receiver

Error Correcting Codes Adding redundancy to the original message To detect and correct errors Crucial when it’s impossible to resend the message (interplanetary communications, storage..) and when the channel is very noisy (wireless communication) Message = [ ] Noise = [ ] Message = [ ]

Types of Error Correcting Codes Repetition Code Linear Block Code, e.g. Hamming Cyclic Code, e.g. CRC BCH and RS Code Convolutional Code –Tradition, Viterbi Decoding –Turbo Code –LDPC Code Coded Modulation –TCM –BICM

Repetition Code Simple Example: reduce the capacity by 3 Simple Example: reduce the capacity by 3 Recovered state

Parity Check Add one bit so that xor of all bit is zero –Send, correction, miss –Add vertically or horizontally Applications: ASCII, Serial port transmission

ISDN Number ISBN 10 –a modulus 11 with weights 10 to 2, using X instead of 10 where ten would occur as a check digitmodulus –ISBN ISBN 13 –Calculating an ISBN 13 check digit requires that each of the first twelve digits of the 13- digit ISBN be multiplied alternately by 1 or 3. Next, take the sum modulo 10 of these products. This result is subtracted from 10.check digitmodulo –ISBN

Hammings Solution A type of Linear Block Code Encoding: H(7,4) Multiple Checksums Message=[a b c d] r= (a+b+d) mod 2 s= (a+b+c) mod 2 t= (b+c+d) mod 2 Code=[r s a t b c d] Coding rate: 4/7 –Smaller, more redundancy, the better protection. –Difference between detection and correction Message=[ ] r=(1+0+0) mod 2 =1 s=(1+0+1) mod 2 =0 t=(0+1+0) mod 2 =1 Code=[ ]

Error Detection Ability 100,000 iterations Add Errors to (7,4) data No repeat randoms Measure Error Detection Error Detection One Error: 100% Two Errors: 100% Three Errors: 83.43% Four Errors: 79.76% Stochastic Simulation: Results:

How it works: 3 dots Only 3 possible words Distance Increment = 1 One Excluded State (red) It is really a checksum. Single Error Detection No error correction ABC ABC AC Two valid code words (blue) This is a graphic representation of the “Hamming Distance”

Hamming Distance Definition: –The number of elements that need to be changed (corrupted) to turn one codeword into another. The hamming distance from: –[0101] to [0110] is 2 bits –[ ] to [ ] is 2 bits –“butter” to “ladder” is 4 characters –“roses” to “toned” is 3 characters

Another Dot The code space is now 4. The hamming distance is still 1. Allows: Error DETECTION for Hamming Distance = 1. Error CORRECTION for Hamming Distance =1 For Hamming distances greater than 1 an error gives a false correction.

Even More Dots Allows: Error DETECTION for Hamming Distance = 2. Error CORRECTION for Hamming Distance =1. For Hamming distances greater than 2 an error gives a false correction. For Hamming distance of 2 there is an error detected, but it can not be corrected.

Multi-dimensional Codes Code Space: 2-dimensional 5 element states Circle packing makes more efficient use of the code-space

Cannon Balls Efficient Circle packing is the same as efficient 2-d code spacing Efficient Sphere packing is the same as efficient 3-d code spacing Efficient n-dimensional sphere packing is the same as n-code spacing

Example Visualization of eight code words in a 6-typle space

Another Example: Encoding we multiply this matrix But why? You can verify that: To encode our message By our message Hamming[ ]=[ ] Hamming[ ]=[ ] Hamming[ ]=[ ] Hamming[ ]=[ ] Where multiplication is the logical AND And addition is the logical XOR

Example: Add noise If our message is Message = [ ] Our Multiplying yields Code = [ ] Lets add an error, so Pick a digit to mutate Code => [ ]

Example: Testing the message We receive the erroneous string: Code = [ ] We test it: Decoder*Code T =[0 1 1] And indeed it has an error The matrix used to decode is: To test if a code is valid: Does Decoder*Code T =[0 0 0] –Yes means its valid –No means it has error/s

Example: Repairing the message To repair the code we find the collumn in the decoder matrix whose elements are the row results of the test vector We then change We trim our received code by 3 elements and we have our original message. [ ] => [ ] Decoder*codeT is [ 0 1 1] This is the third element of our code Our repaired code is [ ]

Coding Gain Coding Rate R=k/n, k, no. of message symbol, n overall symbol Word SNR and bit SNR For a coding scheme, the coding gain at a given bit error probability is defined as the difference between the energy per information bit required by the coding scheme to achieve the given bit error probability and that by uncoded transmission.

ECE 4371 Fall 2008 Coding Gain Example

Encoder/Decoder of Linear Code Encoder: just xor gates Decoder: Syndrome

Interleaving Arrange data in a non-contiguous way in order to increase performancedatacontiguous Interleaving is mainly used in data communication, multimedia file formats, radio transmission (for example in satellites) or by ADSLmultimediafile formats radiotransmissionsatellitesADSL Protect the transmission against burst errorsburst errors Example –Without interleaving –With interleaving

ARQ, FEC, HEC ARQ Forward Error Correction (error correct coding) Hybrid Error Correction txrx Error detection code ACK/NACK txrx Error correction code txrx Error detection/ Correction code ACK/NACK