Unformatted text preview:

OutlineError Correction Codes (Chapter 8)Trellis/Convolution CodesModulation with MemorySlide 5Trellis diagramMaximum likelihood sequence detectorsSlide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Maximum likelihood sequence detectorSlide 18Trellis Codes and QAMSet Partitioning64 QAM Set PartitioningSlide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28Slide 29Trellis Codes and 64 QAMSlide 31Outline•Transmitters (Chapters 3 and 4, Source Coding and Modulation) (week 1 and 2)•Receivers (Chapter 5) (week 3 and 4) •Received Signal Synchronization (Chapter 6) (week 5)•Channel Capacity (Chapter 7) (week 6)•Error Correction Codes (Chapter 8) (week 10 and 11)•Equalization (Bandwidth Constrained Channels) (Chapter 10)•Adaptive Equalization (Chapter 11) •Spread Spectrum (Chapter 13) •Fading and multi path (Chapter 14)Error Correction Codes (Chapter 8)•Trellis/Convolution Codes •Trellis Codes and QAM Viterbi AlgorithmTrellis for NRZINRZI code with memory L=1Convolution Code GeneratorQAM set partition via convolution code8 state Trellis for rectangular QAMTrellis/Convolution Codes•Modulation with Memory– Example: NRZI•Trellis diagram•Maximum likelihood sequence detectors–Viterbi AlgorithmViterbi AlgorithmTrellis for NRZINRZI code with memory L=1Modulation with Memory• Example: NRZI (non return to zero invert)–Binary PAMNRZI code with memory L=1Modulation with Memory• Example: NRZI (non return to zero invert)–Encoded by:kakb1kbModulo 2 additionHas one memory and 1/1 code rate(No error correction)Trellis diagram•Indicates state transitions for various inputsTrellis Diagram for NRZIkakb1kbMaximum likelihood sequence detectors•Consider NRZI matched filter decoder output:22222/)(22/)(121)|(21)|(nbknbkrnkrnkkbkesrpesrpnrMaximum likelihood sequence detectors•Consider joint pdf of a matched filter decoder output sequence and a transmitted sequence : m = 1,2,…M (M symbols)KknmkknbksrKnKkrnmKeerrrp122)(222/)(12/)()(212121)|,,(s)(msMaximum likelihood sequence detectors•Now find maximum likely hood:KkmkkmmKsrDrrrp12)()()(21)(),(min())|,,(max(srsMinimizes Euclidean distanceMaximum likelihood sequence detectors•Viterbi algorithm–Eliminates sequences as data is collected1. compute distances as you go2. Keep only the smallest distances for each trellis state at each symbol time3. After some number of symbols K decide what the first symbol was by:a) Consensus or b) Minimum D path4. Do this for each time stepMaximum likelihood sequence detectors•Viterbi algorithm for NRZIKkmkkmsrD12)()()(),( srrs7654321k0s1skakb1kbThe example shows how the Viterbi algorithm by trying all possible states and digital inputs can correctly estimate the digital inputs (green)Maximum likelihood sequence detectors•Viterbi algorithm for NRZIKkmkkmsrD12)()()(),( srrs7654321k0s1skakb1kbTry it again with different initial state and data.The trellis to the right matches the Excel spreadsheetTrellis/Convolution Codes•The general Convolution CodeK=number of stagesk=number of input bits per stagen=number of output bitsThe code ratenkRcRepresents how much faster data must be sentTrellis/Convolution Codes•The general Convolution Code–The code is described by the “generators”•i.e., the weights on each mod 2 adder –e.g., for K = 3, k = 1, n = 3,   (octal) 7111(octal) 5101(octal) 4001321ggg11110131 nkRcTrellis/Convolution Codes•The general Convolution Code–There are better codes –K = 3, k = 1, n = 3,–With generator 5 7 7 is optimal   (octal) 7111(octal) 7111(octal) 5101321ggg31 nkRcTrellis/Convolution Codes•The general Convolution Code–Trellis and Transfer function•Tell us dfree = minimum hamming distance between paths through the Trellis–Coding gain:dB3.4)831(log 10gain Coding8 ,31 e.g.,dB3)631(log 10gain Coding6 ,31 e.g.,)(log 10gain Coding10free10freefree10dRdRdRcccMaximum likelihood sequence detector•Viterbi algorithm for K = 3, k = 1, n = 3,with generator 5 7 7Maximum likelihood sequence detector•Viterbi algorithm for K = 3, k = 1, n = 3,with generator 5 7 7 •Example of error correction? sigma = 0.5•Decision at step 11 corrects bit error at step 2Trellis Codes and QAM •Bandwidth Constrained Channels–Use set partitioning to combine code with M-ary bandwidth constrained signaling Ungerboeck (1982)–Three rules:•Use all subsets with equal frequency in trellis•Use Transitions that join use maximum distance subsets•Parallel transitions are assigned max Euclidean distance (unencoded bit transitions)QAM set partition via convolution code8 state Trellis for rectangular QAMSet Partitioning •Chop up the Constellations to increase Euclidean distance between points•In rectangular QAM case each partition increases d by 2sm1sm264 QAM Set Partitioning •Each 4 x 4 block of 64 QAM constellation is replaced by 16 QAM partition64 QAM Set Partitioning •Examples: 0D2DDecide between these in Real decoderTrellis Codes and QAM •Eight state trellis for QAM Contains no overlapping locationsTrellis Codes and QAM •The code generatorTrellis Codes and QAM •The code generator–Alternate = essentially a kind of parity bitTrellis Codes and QAM •The code generator–Alternate = essentially a kind of parity bit–The weights = “parity matrix” not generator matrix–Ungerboeck IEEE Communications Magazine February 1987-Vol. 25. No. 2Trellis Codes and QAM •The code generator   001001010010000100321gggTrellis Codes and QAM •The code generator   001001010010000100321gggMemory = 3, thus 8 statesTrellis Codes and QAM •The code generator   001001010010000100321gggTrellis Codes and 64 QAM •Send 64 QAM but only 5 bits per symbol–6 bits = 3 data bits + 3 encoded bits–The 3 encoded bits come from 2 data bitsOne of eight subsets – 3 bitsSelect the levels for each dimensionOne of eight symbols – 3 bits 4 levels per dimension 2 bits in, 3 bits outTrellis Codes and QAM •Trellis seems not the same?–Maybe books trellis is parity


View Full Document

Duke ECE 283 - Lecture 8

Documents in this Course
Load more
Download Lecture 8
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture 8 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 8 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?