Chapter 6.

Slides:



Advertisements
Similar presentations
Outline Transmitters (Chapters 3 and 4, Source Coding and Modulation) (week 1 and 2) Receivers (Chapter 5) (week 3 and 4) Received Signal Synchronization.
Advertisements

Data Communication, Lecture 111 Channel Coding. Data Communication, Lecture 112 audio video (analogue) data (digital) Source anti-alias filter A/D Nyquist.
1 Wireless Sensor Networks Akyildiz/Vuran Administration Issues  Take home Mid-term Exam  Assign April 2, Due April 7  Individual work is required 
Data and Computer Communications
Information Theory Introduction to Channel Coding Jalal Al Roumy.
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:
Transmission Errors1 Error Detection and Correction.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Error Control.
DIGITAL COMMUNICATION Coding
1/26 Chapter 6 Digital Data Communication Techniques.
ChannelCoding Hafiz Malik Dept. of Electrical & Computer Engineering The University of Michigan-Dearborn
Transmission Errors Error Detection and Correction
Low Density Parity Check (LDPC) Code Implementation Matthew Pregara & Zachary Saigh Advisors: Dr. In Soo Ahn & Dr. Yufeng Lu Dept. of Electrical and Computer.
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,
Information Coding in noisy channel error protection:-- improve tolerance of errors error detection: --- indicate occurrence of errors. Source.
© 2009 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved. 1 Communication Reliability Asst. Prof. Chaiporn Jaikaeo, Ph.D.
ECS 152A 4. Communications Techniques. Asynchronous and Synchronous Transmission Timing problems require a mechanism to synchronize the transmitter and.
Data and Computer Communications Chapter 6 – Digital Data Communications Techniques.
Lecture 3-2: Coding and Error Control (Cont.) ECE
COSC 3213: Computer Networks I Instructor: Dr. Amir Asif Department of Computer Science York University Section M Topics: 1. Error Detection Techniques:
1 Chapter 8. Coding and Error Control Wen-Shyang Hwang KUAS EE.
Basic Characteristics of Block Codes
March 22, 2005Week 10 1 EE521 Analog and Digital Communications James K. Beard, Ph. D. Tuesday, March 22, 2005
Introduction of Low Density Parity Check Codes Mong-kai Ku.
Coding Theory. 2 Communication System Channel encoder Source encoder Modulator Demodulator Channel Voice Image Data CRC encoder Interleaver Deinterleaver.
DIGITAL COMMUNICATIONS Linear Block Codes
ECE 4710: Lecture #2 1 Frequency  Communication systems often use atmosphere for transmission  “Wireless”  Time-varying Electro-Magnetic (EM) Wave 
TI Cellular Mobile Communication Systems Lecture 4 Engr. Shahryar Saleem Assistant Professor Department of Telecom Engineering University of Engineering.
Digital Communications I: Modulation and Coding Course Term Catharina Logothetis Lecture 9.
Tufts University. EE194-WIR Wireless Sensor Networks. February 17, 2005 Increased QoS through a Degraded Channel using a Cross-Layered HARQ Protocol Elliot.
An ARQ Technique Using Related Parallel and Serial Concatenated Convolutional Codes Yufei Wu formerly with: Mobile and Portable Radio Research Group Virginia.
Turbo Codes. 2 A Need for Better Codes Designing a channel code is always a tradeoff between energy efficiency and bandwidth efficiency. Lower rate Codes.
1/30/ :20 PM1 Chapter 6 ─ Digital Data Communication Techniques CSE 3213 Fall 2011.
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.
Channel Coding: Part I Presentation II Irvanda Kurniadi V. ( ) Digital Communication 1.
Chapter Nine: Data Transmission. Introduction Binary data is transmitted by either by serial or parallel methods Data transmission over long distances.
Digital Communications Chapter 6. Channel Coding: Part 1
Data and Computer Communications Digital Data Communications Techniques + Error Control+ Digital Data Communications Techniques + Error Control+Multiplexing.
Coding and Error Control
Lecture 4 Error Detecting and Correcting Techniques Dr. Ghalib A. Shah
8 Coding Theory Discrete Mathematics: A Concept-based Approach.
CSE 5345 – Fundamentals of Wireless Networks
Lecture Slides 03-October-2017
Data Transmission Keep errors to an acceptable low probability
Chapter 6.
Digital data communication (Error control)
Coding and Interleaving
Subject Name: Information Theory Coding Subject Code: 10EC55
DIGITAL COMMUNICATION Coding
Chapter Nine: Data Transmission
Transmission Errors Error Detection and Correction
Chapter 10: Error-Control Coding
Coding and Error Control
II. Modulation & Coding.
CS 325: CS Hardware and Software Organization and Architecture
Reliability and Channel Coding
Transmission Errors Error Detection and Correction
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.
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:

Chapter 6

Block diagram of a DCS Format Source encode Channel encode Pulse modulate Bandpass modulate Digital modulation Channel Digital demodulation Format Source decode Demod. Sample Channel decode Detect Lecture 9

Channel coding: What is channel coding? Transforming signals to improve communications performance by increasing the robustness against channel impairments (noise, interference, fading, ...) Waveform coding: Transforming waveforms to better waveforms (ex- Make signals antipodal or orthogonal Structured sequences: Transforming data sequences into better sequences, having structured redundancy. Use redundancy (redundant bits) for error detection and correction -“Better” in the sense of making the decision process less subject to errors. Lecture 9

Encoding and Decoding Data block of k-bits is encoded using a defined algorithm into an n-bit codeword • Codeword transmitted • Received n-bit codeword is decoded/detected using a defined algorithm into a k-bit data block 4

Antipodal and Orthogonal Signals – Distance is twice “signal voltage” – Only works for one-dimensional signals 1 1 1 Orthogonal – Orthogonal symbol set – Works for 2 to N dimensional signals 1 5

M-ary Signals Waveform Coding Symbol represents k bits at a time – Symbol selected based on k bits – M waveforms may be transmitted Allow for the tradeoff of error probability for bandwidth efficiency. Orthogonality of k-bit symbols – Number of bits that agree=Number of bits that disagree 6

Hadamard Matrix Orthogonal Codes Start with the data set for one bit and generate a Hadamard code for the data set 7

Hadamard Matrix Orthogonal Codes (2) Symbol represents k bits at a time – Symbol selected based on k bits – M waveforms may be transmitted See Hadamard in MATLAB H4=hadamard(16) H4xcor=H4'*H4=H4*H4' ans = 16*eye(16 8

Hadamard Matrix Orthogonal Codes (2) The Hadamard Code Set generates orthogonal code for the bit representations Letting 0 = +1V and 1 = -1V For a D-bit pre-coded symbol a 2^D bit symbol is generated from a 2^D x 2^D matrix –Bit rate increases from D-bits/sec to 2^D bits/sec! • For equally likely, equal-energy orthogonal signals, the probability of codeword (symbol) error can be bounded as 9

Biorthogonal Codes Code sets with cross correlation of 0 or -1 Based on Hadamard codes (2-bit data set shown)

Biorthogonal Codes (2)

B3 Example H2=hadamard(4) B3=[H2;-H2] B3*B3' ans =

Biorthogonal Codes (3) Biorthogonal codes require half as many code bits per code word as Hadamard. The required bandwidth would be one-half Due to some antipodal codes, they perform better • For equally likely, equal-energy orthogonal signals, the probability of codeword (symbol) error can be bounded as

Biorthogonal Codes (4) Comparing to Hadamard to Biorthogonal – Note that for D bits, M is ½ the size for Biorthogonal

Biorthogonal Codes (4) Comparing to Hadamard to Biorthogonal – Note that for D bits, M is ½ the size for Biorthogonal

Waveform Coding System Example For a k-bit precoded symbol, one of M generators creates an encoded waveform. • For a Hadamard Code, 2k bits replace the k-bit input

Error control techniques Automatic Repeat reQuest (ARQ) Full-duplex connection, error detection codes The receiver sends feedback to the transmitter, saying that if any error is detected in the received packet or not (Not-Acknowledgement (NACK) and Acknowledgement (ACK), respectively). The transmitter retransmits the previously sent packet if it receives NACK.   Forward Error Correction (FEC) Simplex connection, error correction codes The receiver tries to correct some errors  Hybrid ARQ (ARQ+FEC) Full-duplex, error detection and correction codes Lecture 9

Why using error correction coding? Error performance vs. bandwidth Power vs. bandwidth Data rate vs. bandwidth Capacity vs. bandwidth PB Coded A Coding gain: For a given bit-error probability, the reduction in the Eb/N0 that can be realized through the use of code: F C B D E     E E Uncoded G [dB]  [dB]    b   b [dB]  N0  u  N0  c E / N (dB) b 0 Lecture 9

Types of Error Control Error detection and retransmission Parity bits ACK and NACK signals Cyclic redundancy checking Often used when two-way communication used. Also used when low bit-error-rate channels are used. Forward Error Correction –Redundant bits for detection and correction of bit errors incorporated into the sequence Structured sequences. Often used for one-way, noisy channels. Also used for real-time sequences that can not afford retransmission time.

Structured Sequence Encoded sequences with redundancy • Types of codes – Block Codes or Linear Block Codes (Chap.6) – Convolutional Codes (Chap.7) – Turbo Codes (Chap. 8)

Channel Models Discrete Memoryless Channel (DMC) – A discrete input alphabet, a discrete output alphabet, and a set of conditional probabilities of conditional outputs given the particular input. • Binary Symmetric Channel – A special case of DMC where the input alphabet and output alphabets consist of binary elements. The conditional probabilities are symmetric p and 1-p. – Hard decisions based on the binary output alphabet performed. • Gaussian Channels – A discrete input alphabet, a continuous output alphabet– Soft decisions based on the continuous output alphabet performed.

Code Rate Redundancy For block codes, source data is segmented into k bit data blocks. • The k-bits are encoded into larger n-bit blocks. • The additional n -k bits are redundant bits, parity bits, or check bits. • The codes are referred to as (n, k) block codes. – The ratio of redundant to data bits is (n-k)/k. – The ratio of the data bits to total bits, k/n is referred to as the code rate. Therefore a rate ½ code is double the length of the underlying data.

Binary Bit Error Probability Defining the probability of j errors in a block of n symbols/bits where p is the probability of an error.

Parity-Check Codes Single parity check code – Add a single bit to a defined set of bits to force the “sum of bits” to be even (0) or odd (1) – A rate k / (k+1) code – Useful for bit error rate detection Rectangular Code (also called a Product Code) – Add row and column parity bits to a rectangular set of bits/symbols and a row or column parity bit for the parity row or column. – For an m x n block, (m +1) x (n+1) bits are sent – A rate mn/(m+1)(n+1) code – Correct single bit errors!

Parity-Check Codes Single parity check code

Parity-Check Codes

(4,3) Single-Parity-Code (4,3) even-parity code example – 8 legal codewords, 8 “illegal” code words to detect single bit errors – Note: an even number of bit error can not be detected, only odd – The probability of an undetected message error

Example

Rectangular Code Add row and column parity bits to a rectangular set of bits/symbols and a row or column parity bit for the parity row or column • For an M x N block, (M+1)(N+1) bits are sent • The code rate • Correct single bit errors! – Identify parity error row and column, then fix the “wrong bit”

Rectangular Code Example 5 x 5 bit array → 25 total bits 6x 6 encoded array → 36 total bits A (36,25) code Compute probability that there is an undetected error message – The block error or word error becomes: j errors in blocks of n symbols and t the number of bit errors. (note that the code can correct all single error patterns, t =1 ) The probability of j errors in a block of n symbols: Where P: probability of symbol (bit) error The probability of message error:

5 x 5 bit array → 25 total bits 6x 6 encoded array → 36 total bits A (36,25) code Since the code the code can correct all single error patterns, t =1. Then we start from j=2.

Error-Correction Code Tradeoffs Improve message error/bit error rate performance Tradeoffs – Error performance vs. bandwidth More bits per sec implies more bandwidth – Power vs. bandwidth Lowering Eb/No changer BER, to get it back, encode and increase bandwidth If communication needs not be in real time … sending more bits increases BER at the cost of latency!

Coding Gain For a given bit-error probability, the relief or reduction in required Eb/No

Data Rate vs. Bandwidth From previous SNR discussions The tradeoff between Eb/No and bit rate

Coded versus Uncoded performance