1 / 63

Iterative Detection and Decoding for Wireless Communications

Iterative Detection and Decoding for Wireless Communications. Matthew Valenti Dissertation Defense July 8, 1999 Advisor: Dr. Brian D. Woerner Mobile and Portable Radio Research Group Bradley Department of Electrical and Computer Engineering Virginia Tech Blacksburg, Virginia. Outline.

kennyc
Download Presentation

Iterative Detection and Decoding for Wireless Communications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Iterative Detection and Decoding for Wireless Communications Matthew Valenti Dissertation Defense July 8, 1999 Advisor: Dr. Brian D. Woerner Mobile and Portable Radio Research Group Bradley Department of Electrical and Computer Engineering Virginia Tech Blacksburg, Virginia

  2. Outline • Introduction and background • Turbo codes • Iterative decoding algorithms • Turbo codes for the wireless channel • Performance over fading channels • Receiver/system design for time-varying channels • Multiuser detection for coded multiple-access networks • Distributed multiuser detection • Turbo-MUD: iterative multiuser detection and error correction • Cooperative decoding for TDMA networks Outline

  3. Error Correction Coding • Channel coding adds structured redundancy to a transmission. • The input messagem is composed of K info bits. • The output code wordx is composed of N code bits. • Since N > K there is redundancy in the output. • The code rate is r = K/N. • (Hamming) weight • Number of ones in the message m • For linear codes, high weight code words are desired • Minimum distance dmin limits performance Channel Encoder Introduction

  4. Power Efficiency of Coding Standards BPSK Capacity Bound 1.0 Uncoded BPSK Iridium 1998 Shannon Capacity Bound Pioneer 1968-72 Spectral Efficiency Code Rate r Turbo Code 1993 0.5 Globalstar 1999 Odenwalder Convolutional Codes 1976 Voyager 1977 Galileo:BVD 1992 Galileo:LGA 1996 Mariner 1969 -2 -1 0 1 2 3 4 5 6 7 8 9 10 Eb/No in dB

  5. Convolutional Codes • A convolutional encoder encodes a stream of data. • The size of the code word is unbounded. • The encoder is a Finite Impulse Response (FIR) filter. • k binary inputs • n binary outputs • Kc -1 delay elements • All operations over GF(2) • Addition: XOR • Multiplier coefficients are either 1 or 0 D D Constraint Length Kc = 3

  6. Recursive Systematic Convolutional Encoding • An RSC encoder is constructed from a standard convolutional encoder by feeding back one of the outputs. • An RSC code is systematic. • The input bits appear directly in the output. • An RSC encoder is an Infinite Impulse Response (IIR) Filter. • Many low weight inputs produce high weight outputs. • Some inputs will cause low weight outputs. Systematic output Input D D Parity output

  7. Turbo Codes: Parallel Concatenated Codeswith Nonuniform Interleaving • A stronger code can be created by encoding in parallel. • A nonuniform interleaver changes the ordering of bits at the input of the second encoder. • It is very unlikely that both encoders produce low weight code words. • MUX increases code rate from 1/3 to 1/2. Turbo Codes Systematic Output Input Encoder #1 MUX Parity Output Encoder #2 Nonuniform Interleaver

  8. Turbo code performance • Coding dilemma: • “All codes are good, except those that we can think of.” • Random coding argument: • Truly random codes approach capacity, but are not feasible. • Turbo codes appear random, yet have enough structure to allow practical decoding. • Distance spectrum argument: • Traditional code design focused on maximizing the minimum distance. • dmin determines performance at high SNR • With turbo codes, the goal is to reduce the multiplicity of low weight code words. • Even with small dmin, remarkable performance can be achieved at low SNR. Turbo Codes

  9. Minimum-distance Asymptote • For convolutional code: • For turbo code:

  10. Performance for various frame/interleaver sizes • Kc = 5 • Rate r = 1/2 • 18 decoder iterations • Log-MAP decoder • AWGN Channel

  11. The Turbo-Principle • Turbo codes get their name because the decoder uses feedback, like a turbo engine. Iterative decoding

  12. Iterative Decoding Deinterleaver Extrinsic Information Extrinsic Information • There is one decoder for each elementary encoder. • Estimates the a posteriori probability (APP) of each data bit. • Extrinsic Information is derived from the APP. • The Extrinsic Information is used as a priori information by the other decoder. • Decoding continues for a set number of iterations. • Obeys law of diminishing returns Interleaver systematic data Decoder #1 Decoder #2 hard bit decisions parity data DeMUX Interleaver Iterative decoding

  13. Soft-Input Soft-Output (SISO)Decoding Algorithms Viterbi algorithm 1967 Viterbi SOVA 1989 Hagenauer/Hoeher Improved SOVA 1996 Papke/Robertson/Villebrun MAP algorithm 1974 Bahl/Cocke/Jelinek/Raviv max-log-MAP 1990 Koch and Baier log-MAP 1994 Villebrun Trellis-Based Estimation Algorithms Viterbi Algorithm MAP Algorithm Iterative decoding SOVA max-log-MAP Improved SOVA log-MAP Sequence Estimation Symbol-by-symbol Estimation

  14. Performance as a Function of Number of Iterations • Kc = 5 • r = 1/2 • K = 65,536 • Log-MAP algorithm • AWGN

  15. Summary of Performance Factors and Tradeoffs • Latency vs. performance • Frame/interleaver size • Complexity vs. performance • Decoding algorithm • Number of iterations • Encoder constraint length • Spectral efficiency vs. performance • Overall code rate • Other factors • Interleaver design • Puncture pattern • Trellis termination Turbo Codes

  16. Turbo Codes for Fading Channels • Many channels of interest can be modeled as a frequency-flat fading channel. • Fading: channel is time-varying • Flat: all frequencies experience same attenuation • Because of the time-varying nature of the channel, it is necessary to estimate and track the channel. • Channel estimation is difficult for turbo codes because they operate at low SNR. • Questions: • How do turbo codes perform over fading channels? • How can the channel be estimated in a turbo coded system? • Goal is to develop channel estimation techniques that take into account the iterative nature of the decoder. Fading channels

  17. System Model turbo encoder channel interleaver symbol mapper pulse shaping filter Input data transmitter fading AWGN channel Fading channels matched filter channel estimator receiver Decoded data symbol demapper channel deinterl. turbo decoder

  18. Fading Channel Types • . • X(t), Y(t) are Gaussian random processes. • Represents the scattering component • Autocorrelation: Rc() • A is a constant. • Represents the direct LOS component • Types of channels • AWGN: A=constant and X(t)=Y(t)=0 • Rayleigh fading: A=0 • Rician fading: A > 0, =A2/22 • Correlated fading: • Fully-interleaved fading: Fading channels

  19. Effect of Channel Correlation • Channel: • Rayleigh fading • Correlated • Channel interleaver • Depth = 32 symbols • Perfect Estimates • Turbo code: • Rate 1/2 • KC=3 • K=1024 • Decoder: • Improved SOVA • 8 iterations

  20. Effect of Fading Distribution • Channel: • Correlated fading • fdTs = .005 • Channel interleaving • Depth = 32 symbols • Perfect Estimates • Turbo code: • Rate 1/2 • KC=4 • K=1024 • 8 decoder iterations • Log-MAP • Improved SOVA

  21. Channel Estimationfor Turbo Codes • The turbo decoding algorithm requires accurate estimates of channel parameters. • Branch metric: • Noise variance: • Fading amplitude: • Phase:(required for coherent detection) • Because turbo codes operate at low SNR, conventional methods for channel estimation often fail. • Therefore channel estimation and tracking is a critical issue with turbo codes. Fading channels

  22. Case 1:Known Phase • Assume that the receiver is able to obtain accurate estimates of the carrier phase n • PLL: Phase locked loop • Costas loop • The amplitude can be estimated using a Wiener filter: • The noise variance can be estimated as: Fading channels

  23. AWGN Turbo Code Parameters: r=1/2, Kc=4, L=1024 8 decoder iterations Rayleigh flat-fading FdTs = .005 Channel interleaver depth 32 Wiener filter w/ Nc = 30 Channel Estimation with Known Phase

  24. Case 2:Unknown Phase • Now assume that the receiver is unable to obtain accurate estimates of the phase n. • Because turbo codes operate at low SNR, the PLL often breaks down. • Because of the phase ambiguity, we no longer can use the previous approach. • Coherent detection over Rayleigh fading channels requires a pilot. • Pilot tone • TTIB: Transparent Tone in Band • 1984: McGeehan and Bateman • Pilot symbols • PSAM: Pilot Symbol Assisted Modulation • 1987: Lodge and Moher; 1991: Cavers Fading channels

  25. Pilot Symbol Assisted Modulation (PSAM) • Pilot symbols: • Known values that are periodically inserted into the transmitted code stream. • Used to assist the operation of a channel estimator at the receiver. • Allow for coherent detection over channels that are unknown and time varying. Fading channels segment #1 segment #2 symbol #1 symbol #Mp symbol #1 symbol #Mp pilot symbol pilot symbol symbol #1 symbol #Mp symbol #1 symbol #Mp pilot symbols added here

  26. Pilot Symbol Assisted Decoding • Pilot symbols are used to obtain initial channel estimates. • After each iteration of turbo decoding, the bit estimates are used to obtain new channel estimates. • Decision-directed estimation. • Channel estimator uses either a Wiener filter or Moving average. Fading channels Tentative estimates of the code bits channel estimator matched filter channel interleaver symbol mapper symbol demapper channel deinterl. turbo decoder Final estimates of the data

  27. Performance of Pilot Symbol Assisted Decoding • Simulation parameters: • Rayleigh flat-fading • Correlated: fdTs = .005 • channel interleaving depth 32 • Turbo code • r=1/2, Kc =4 • 1024 bit random interleaver • 8 iterations of log-MAP • Pilot symbol spacing: Mp = 8 • Wiener filtering: Nc = 30 • At Pb = 10-5 • Noncoherent reception degrades performance by 4.7 dB. • Estimation prior to decoding degrades performance by 1.9 dB. • Estimation during decoding only degrades performance by 0.8 dB.

  28. Performance Factors for Pilot Symbol Assisted Decoding • Performance is more sensitive to errors in estimates of the fading process than estimates in noise variance. • Pilot symbol spacing • Want symbols close enough to track the channel. • However, using pilot symbols reduces the energy available for the traffic bits. • Type of channel estimation filter • Wiener filter provides optimal solution. • However, for small fd, a moving average is acceptable. • Size of channel estimation filter • Window size of filter should contain about 4 pilot symbols. Fading channels

  29. Improving the Bandwidth Efficiency of PSAM • Conventional PSAM requires a bandwidth expansion. • Previous example required 12.5% more BW. • This is because all code and pilot symbols are transmitted. • Instead, could replace code symbols with pilot symbols. • “Parity-symbol” stealing • Simulation Parameters: • Rayleigh fading • fdTs = .005 • Turbo code • Kc = 4, r = 1/2 • L=4140 bit iterleaver

  30. Performance in Rapid Fading • Rayleigh fading channel • fdTs = .02 • Turbo code • Kc = 4, r = 1/2 • L=4140 bit interleaver

  31. Other Applications of the Turbo Principle • The turbo-principle is more general than merely its application to the decoding of turbo codes. • Other applications of the turbo principle include: • Decoding serially concatenated codes. • Combined equalization and error correction decoding. • Combined multiuser detection and error correction decoding. • (Spatial) diversity combining for coded systems in the presence of MAI or ISI. Turbo principle

  32. Serial Concatenated Codes n(t) AWGN Inner Convolutional Encoder Outer Convolutional Encoder Data interleaver Serial Concatenated Turbo Codes Extrinsic Information Turbo Decoder interleaver Inner Decoder Outer Decoder Estimated Data deinterleaver

  33. Turbo Equalization Can model intersymbol interference channel as an FIR filter n(t) AWGN (Outer) Convolutional Encoder Data ISI Channel interleaver Turbo EQ Extrinsic Information Turbo Equalizer interleaver (Outer) SISO Decoder SISO Equalizer Estimated Data deinterleaver

  34. Turbo Multiuser Detection Time-varying FIR filter “multiuser interleaver” Convolutional Encoder #1 Channel interleaver #1 MAI Channel Model Parallel to Serial n(t) AWGN Convolutional Encoder #K Turbo MUD interleaver #K Turbo MUD Extrinsic Info multiuser interleaver Bank of K SISO Decoders SISO MUD multiuser deinterleaver Estimated Data

  35. Direct Sequence CDMA • CDMA: Code Division Multiple Access • The users are assigned distinct waveforms. • Spreading/signature sequences • All users transmit at same time/frequency. • Use a wide bandwidth signal • Processing gain Ns • Ratio of bandwidth after spreading to bandwidth before • MUD for CDMA • The resolvable MAI originates from the same cell. • Intracell interference. • MUD uses observations from only one base station. Turbo MUD

  36. K = 5 users Spreading gain Ns = 7 Convolutional code: Kc = 3, r=1/2 Eb/No = 5 dB 1  K  9 Performance of Turbo-MUD for CDMA in AWGN

  37. K = 5 users Fully-interleaved fading Eb/No = 9 dB 1  K  9 Performance of Turbo-MUD for CDMA in Rayleigh Flat-fading

  38. Time Division Multiple Access • TDMA: Time Division Multiple Access • Users are assigned unique time slots • All users transmit at same frequency • All users have the same waveform, g(t) • TDMA can be considered a special case of CDMA, with gk(t) = g(t) for all cochannel k. • MUD for TDMA • Usually there is only one user per time-slot per cell. • The interference comes from nearby cells. • Intercell interference. • Observations from only one base station might not be sufficient. • Performance is improved by combining outputs from multiple base stations. Turbo MUD

  39. K = 3 users Convolutional code: Kc = 3, r=1/2 Observations at 1 base station Eb/No = 5 dB 1  K  9 Performance of Turbo-MUD for TDMA in AWGN

  40. K = 3 users Fully-interleaved fading Eb/No = 9 dB 1  K  9 Performance of Turbo-MUD for TDMA in Rayleigh Flat-Fading

  41. Extension: Multiuser Detection for TDMA Networks • Each base station has a multiuser detector. • Sum the LLR outputs from M base stations. • Pass through a bank of SISO channel decoder. • Feed back LLR outputs of the decoders to the MUD’s. Turbo MUD Extrinsic Info Multiuser Detector #1 Bank of K SISO Channel Decoders Estimated Data Multiuser Detector #M

  42. Distributed Multiuser Detection • First, consider the case where each user is uncoded. • Each base station has a multiuser detector. • Implemented with the Log-MAP algorithm. • Produces LLR estimates of the users’ symbols. • Sum the LLR outputs of each MUD. Turbo MUD Multiuser Detector #1 Multiuser Detector #M

  43. Alternative layout 120 degree sectorized antennas Located in 3 corners of cell Frequency reuse factor 3 Conventional layout Isotropic antennas in cell center Frequency reuse factor 7 F3 F4 F2 F1 F5 F7 F3 F6 F4 F2 F1 F5 F7 F6 Cellular Network Topology F3 F4 F2 F1 F5 F7 F6

  44. Without diversity combining. Fully-interleaved Rayleigh fading Output from BS closest to the mobile used to make decision. With diversity combining. M=3 base stations Mobiles randomly placed in cell. Exponential path loss, ne = 3. Performance of Distributed MUD

  45. Performance of Distributed MUD • Eb/No = 20 dB • 1  K  9 • For conventional receiver: • Performance degrades quickly with increasing K. • Only small benefit to using observations from multiple BS. • With multiuser detection: • Performance degrades very slowly with increasing K. • Order of magnitude decrease in BER by using multiple observations. • Now multiple cochannel users per cell are allowed.

  46. Cooperative Decoding for the TDMA Uplink • Now consider the coded case. • The outputs of the MUD’s are summed and passed through a bank of decoders. • The SISO decoder outputs are fed back to the multiuser detectors to be used as a priori information. Turbo MUD Extrinsic Info Multiuser Detector #1 Bank of K SISO Channel Decoders Estimated Data Multiuser Detector #M

  47. Performance of Cooperative Decoding • K = 3 transmitters • Randomly placed in cell. • M = 3 receivers (BS’s) • Corners of cell • path loss ne = 3 • Fully-interleaved Rayleigh flat-fading • Convolutional code • Kc = 3, r = 1/2

  48. Performance of Cooperative Decoding • Eb/No = 5 dB • 1  K  9 • Randomly placed in cell. • M = 3 receivers • For conventional receiver: • Performance degrades quickly with increasing K. • Only small benefit to using observations from multiple BS. • With multiuser detection: • Performance degrades gracefully with increasing K. • No benefit after third iteration. • Could allow an increase in TDMA system capacity.

  49. Conclusion • Turbo code advantages: • Remarkable power efficiency in AWGN and flat-fading channels for moderately low BER. • Turbo code disadvantages: • Long latency due to large frame sizes. • Less beneficial at high SNR. • Because turbo codes operate at very low SNR, channel estimation and tracking is a critical issue. • The principle of iterative or “turbo” processing can be applied to other problems. • Turbo-multiuser detection can improve performance of coded multiple-access systems. • When applied to TDMA networks, can allow multiple users per time/frequency slot. Conclusion

  50. Future Work • Turbo codes for wireless communications. • We have addressed the issue of carrier synchronization. • Multiple-symbol DPSK could be a viable alternative. • Symbol and frame synchronization should also be considered. • Adaptive turbo codes • ARQ schemes for turbo codes. • Distributed multiuser detection. • Reduced complexity implementations. • Methods for performing channel estimation. • Study the impact on network architecture/control. • Multiuser detection at a network level. Conclusion

More Related