510 likes | 687 Views
Iterative Detection and Decoding for Wireless Communications. Prelim Report September 29, 1998 Matthew Valenti Mobile and Portable Radio Research Group Bradley Department of Electrical and Computer Engineering Virginia Tech Blacksburg, Virginia. Outline. Part I: Turbo codes
E N D
Iterative Detection and Decoding for Wireless Communications Prelim Report September 29, 1998 Matthew Valenti Mobile and Portable Radio Research Group Bradley Department of Electrical and Computer Engineering Virginia Tech Blacksburg, Virginia
Outline • Part I: Turbo codes • Overview of turbo codes • Turbo codes for multimedia channels • Turbo codes for unknown fading channels • Part II: Other applications of iterative processing • Combined equalization and error correction coding • Combined multiuser detection and error correction coding • Spatial diversity applications • Proposal for future research
Error Correction Coding • Channel coding adds structured redundancy to a transmission. • The input messagem is composed of K symbols. • The output code wordx is composed of N symbols. • Since N > K there is redundancy in the output. • The code rate is r = K/N. Channel Encoder Introduction
5 Antipodal input pdf Gaussian input pdf 4 3 2 Eb/No in dB 1 0 -1 -2 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 code rate r Channel Capacity for the AWGN Channel • Channel Coding Theorem • Shannon, 1948 • Channel capacity is the highest data rate that can be supported by a particular channel with arbitrarily low error rate. • Plot of Eb/No vs. r • Additive White Gaussian Noise channel. • Eb is the energy per bit. • No is the one-sided noise spectral density. • Shows minimum SNR required for reliable transmission. Introduction
Part I: Turbo Codes • Backgound • Turbo codes were proposed by Berrou and Glavieux in the 1993 International Conference in Communications. • Performance within 0.5 dB of the channel capacity limit was demonstrated. • Features of turbo codes • Concatenated coding • Pseudo-random interleaving • Iterative decoding Turbo Codes
Motivation: Performance of Turbo Codes. Theoretical Limit! • Comparison: • Rate 1/2 Codes. • K=5 turbo code. • K=15 convolutional code. • Plot is from: L. Perez, “Turbo Codes”, chapter 8 of Trellis Coding by C. Schlegel. IEEE Press, 1997. Turbo Codes Gain of almost 2 dB!
Concatenated Coding • A single error correction code does not always provide enough error protection with reasonable complexity. • Solution: Concatenate two (or more) codes • This creates a much more powerful code. • Serial Concatenation (Forney, 1966) Turbo Codes Outer Encoder Block Interleaver Inner Encoder Channel Outer Decoder De- interleaver Inner Decoder
Parallel Concatenated Codes • Instead of concatenating in serial, codes can also be concatenated in parallel. • The original turbo code is a parallel concatenation of two recursive systematic convolutional (RSC) codes. • systematic: one of the outputs is the input. Turbo Codes Systematic Output Input Encoder #1 MUX Parity Output Interleaver Encoder #2
Pseudo-random Interleaving • The coding dilemma: • Shannon showed that large block-length random codes achieve channel capacity. • However, codes must have structure that permits decoding with reasonable complexity. • Codes with structure don’t perform as well as random codes. • “Almost all codes are good, except those that we can think of.” • Solution: • Make the code appear random, while maintaining enough structure to permit decoding. • This is the purpose of the pseudo-random interleaver. • Turbo codes possess random-like properties. • However, since the interleaving pattern is known, decoding is possible. Turbo Codes
Iterative Decoding Deinterleaver APP • There is one decoder for each elementary encoder. • Each decoder estimates the a posteriori probability (APP) of each data bit. • The APP’s are used as a priori information by the other decoder. • Decoding continues for a set number of iterations. • Performance generally improves from iteration to iteration, but follows a law of diminishing returns. APP Interleaver Decoder #1 Decoder #2 systematic data hard bit decisions parity data DeMUX Interleaver Turbo Codes
The Turbo-Principle • Turbo codes get their name because the decoder uses feedback, like a turbo engine. Turbo Codes
Classes of Decoding Algorithms • Requirements: • Accept Soft-Inputs in the form of a priori probabilities or log-likelihood ratios. • Produce APP estimates of the data. • “Soft-Input Soft-Output” • MAP • (symbol-by-symbol) Maximum A Posteriori • SOVA • Soft Output Viterbi Algorithm Trellis-Based Estimation Algorithms Viterbi Algorithm MAP Algorithm Decoding Algorithms SOVA max-log-MAP Improved SOVA log-MAP Sequence Estimation Symbol-by-symbol Estimation
The MAP algorithm 1/10 S3 0/01 0/01 S2 1/10 0/00 1/11 S1 1/11 Decoding Algorithms 0/00 S0 i = 0 i = 1 i = 2 i = 3 i = 4 i = 5 i = 6 Jacobian Logarithm:
Performance Factors and Tradeoffs • Complexity vs. performance • Decoding algorithm. • Number of iterations. • Encoder constraint length • Latency vs. performance • Frame size. • Spectral efficiency vs. performance • Overall code rate • Other factors • Interleaver design. • Puncture pattern. • Trellis termination. Turbo Codes
Turbo Codes for Multimedia Services • Multimedia systems require varying quality of service. • QoS • Latency • Low latency for voice, teleconferencing • Bit/frame error rate (BER, FER) • Low BER for data transmission. • The tradeoffs inherent in turbo codes match with the tradeoffs required by multimedia systems. • Data: use large frame sizes • Low BER, but long latency • Voice: use small frame sizes • Short latency, but higher BER Multimedia Applications
Results for AWGN Channel • Constraint Length 3. • Improved SOVA. • 8 iterations. Voice r = 1/2 Video Conferencing r = 1/3 Replayed Video Data
Turbo Codes for Fading Channels • The turbo decoding algorithm requires accurate estimates of channel parameters: • Branch metric: • Average signal-to-noise ratio (SNR). • Fading amplitude. • Phase. • 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
Fading Channel Model • Antipodal modulation: • Gaussian Noise: • Complex Fading: • is a constant. • =0 for Rayleigh Fading • >0 for Rician Fading • X and Y are Gaussian random processes with autocorrelation: Channel Interleaver Turbo Encoder BPSK Modulator Fading Channels De- interleaver Turbo Decoder BPSK Demod
1 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 0 1 2 3 4 5 6 7 8 9 10 The Role of the Channel Interleaver • Simulation parameters: • Rayleigh flat-fading. • r=1/2, K=3. • 1,024 bit random interleaver. • 8 iterations of improved SOVA decoding. • Best performance occurs when fading is independent from symbol to symbol. • “fully-interleaved”: • Performance is poor in correlated fading. • Solution is to use a channel interleaver to reorder the transmission so that the fades are effectively uncorrelated. fdTs = .0025, no interleaving fdTs = .005, no interleaving fdTs = .01, no interleaving fdTs = .0025, block interleaving fdTs = .005, block interleaving fdTs = .01, block interleaving fully interleaved BER E /N in dB b o
Pilot Symbol Assisted Modulation • 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
Pilot Symbol AssistedTurbo Decoding • Desired statistic: • Initial estimates are found using pilot symbols only. • Estimates for later iterations also use data decoded with high reliability. • “Decision directed” Insert Pilot Symbols Turbo Encoder Channel Interleaver Delay Fading Channels Filter Compare to Threshold Insert Pilot Symbols Channel Interleaver Remove Pilot Symbols Turbo Decoder Channel Deinterleaver
1 10 DPSK with differential detection BPSK with estimation prior to decoding BPSK with refined estimation BPSK with perfect channel estimates 0 10 -1 10 -2 BER 10 -3 10 -4 10 -5 10 0 1 2 3 4 5 6 7 8 9 10 E /N in dB b o Performance of Pilot Symbol Assisted Decoding • Simulation parameters: • Rayleigh flat-fading. • r=1/2, K=3 • 1,024 bit random interleaver. • 8 iterations of log-MAP. • fdTs = .005 • Mp = 16 • Estimation prior to decoding degrades performance by 2.5 dB. • Estimation during decoding only degrades performance by 1.5 dB. • Noncoherent reception degrades performance by 5 dB.
Part II: Other Applications of Turbo Decoding • The turbo-principle is more general than merely its application to the decoding of turbo codes. • The “Turbo Principle” can be described as: • “Never discard information prematurely that may be useful in making a decision until all decisions related to that information have been completed.” • -Andrew Viterbi • “It is a capital mistake to theorize before you have all the evidence. It biases the judgement.” • -Sir Arthur Conan Doyle • Can be used to improve the interface in systems that employ multiple trellis-based algorithms.
Applications of the Turbo Principle • 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
Serial Concatenated Codes • The turbo decoder can also be used to decode serially concatenated codes. • Typically two convolutional codes. n(t) AWGN Inner Convolutional Encoder Outer Convolutional Encoder Turbo Principle Data interleaver Turbo Decoder interleaver APP Inner Decoder Outer Decoder Estimated Data deinterleaver
Turbo Equalization • The “inner code” of a serial concatenation could be an Intersymbol Interference (ISI) channel. • ISI channel can be interpreted as a rate 1 code defined over the field of real numbers. n(t) AWGN (Outer) Convolutional Encoder Turbo Equalization ISI Channel Data interleaver Turbo Equalizer interleaver APP (Outer) SISO Decoder SISO Equalizer Estimated Data deinterleaver
Turbo Multiuser Detection • The “inner code” of a serial concatenation could be a multiple-access interference (MAI) channel. • MAI channel describes the interaction between K nonorthogonal users sharing the same channel. • MAI channel can be thought of as a time varying ISI channel. • MAI channel is a rate 1 code with time-varying coefficients over the field of real numbers. • The input to the MAI channel consists of the encoded and interleaved sequences of all K users in the system. Turbo MUD
System Diagram “multiuser interleaver” Convolutional Encoder #1 interleaver #1 Parallel to Serial MAI Channel n(t) AWGN Convolutional Encoder #K interleaver #K Turbo MUD Turbo MUD multiuser interleaver APP Bank of K SISO Decoders SISO MUD multiuser deinterleaver Estimated Data
MAI Channel Model • Received Signal: • Where: • ak is the signature waveform of user k. • k is a random delay (i.e. asynchronous) of user k. • Pk[i] is received power of user k’s ith bit (fading ampltiude). • Matched Filter Output: Turbo MUD
Optimal Multiuser Detection Algorithm: Setup • Place y and b into vectors: • Place the fading amplitudes into a vector: • Compute cross-correlation matrix: Turbo MUD
Optimal MUD: Execution • Run SOVA or MAP algorithm with branch metric: • where • The p(b) term is supplied by the channel decoder. • Initially assume equiprobable data. • The algorithm produces reliability estimates of the code symbols. • The reliability estimates are fed into the channel decoder. Turbo MUD
Types of Multiple-Access Systems • The nature of the signature sequence depends on the type of multiple-access. • Direct-Sequence Code-Division Multiple-Access • DS-CDMA. • Each user is assigned a distinct signature waveform. • The signature waveform is a sequence of N “chips” per bit. • N is called the “processing gain” or “spreading factor”. • Cochannel interference is from the same cell. • Time-Division Multiple-Access • TDMA • Users are not assigned distinct signature waveforms. • Cochannel interference is from nearby cells. Turbo MUD
Simulation Results: DS-CDMA in AWGN Channel • DS-CDMA uplink. • K=5 mobiles. • N=7 spreading factor. • Random spreading codes. • Convolutionally coded. • Constraint length 3. • Code rate 1/2. • Log-MAP algorithm. • MUD. • Channel decoder. • Iterative processing. • LLR from decoder fed back to MUD’s.
Simulation Results:Rayleigh Flat-Fading Channel • Fully-interleaved Rayleigh flat-fading. • i.e. fades are independent from symbol to symbol. • Same parameters as AWGN case.
Multiuser Detectionfor TDMA systems • Multiuser detection can also be used for TDMA systems. • A TDMA systems can be thought of as a DS-CDMA system with where all cochannel users have the same signature waveform. • With CDMA systems, the interferers are in the same cell as the desired user. • With TDMA systems the interferers come from other cells. TDMA Systems
Macrodiversity Combining for TDMA Systems • In TDMA systems, the cochannel interference comes from adjacent cells. • Interferers to one cell are desired signals to another cell. • Performance could be improved if the base stations were allowed to share information. • If the outputs of the multiuser detectors are log-likelihood ratios, then adding the outputs improves performance. BS 1 MS 1 BS 3 TDMA Systems MS 3 MS 2 BS 2
Performance for Constant C/I • TDMA cellular system. • Uplink. • mobile to base station. • 120 sectorized antennas. • K=3 users. • mobiles • M=3 receivers. • base stations • Log-MAP MUD. • Uncoded. • C/I = 7 dB • C/I ratio of desired signal to interference.
Performance for Constant Eb/No • TDMA uplink. • K=3 mobiles. • M=3 base stations. • Performance as a function of C/I. • Eb/No = 20 dB. • For conventional receiver, performance is worse as C/I gets smaller. • For macrodiversity combining, performance improves as C/I gets smaller.
Multiuser Estimator #1 Bank of K SISO Channel Decoders Multiuser Estimator #M Macrodiversity Combining for Coded TDMA Systems • Each base station has a multiuser detector. • Sum the LLR outputs of each MUD. • Pass through a bank of channel decoder. • Feed back LLR outputs of the decoders. TDMA Systems
Performance for Constant C/I • TDMA uplink. • K=3 mobiles. • M=3 base stations. • C/I = 7 dB • Convolutionally coded. • Constraint length 3. • Code rate 1/2. • Log-MAP algorithm. • MUD. • Channel decoder. • Iterative processing. • LLR from decoder fed back to MUD’s.
Performance for Constant Eb/No • TDMA uplink. • K=3 mobiles. • M=3 base stations. • Convolutionally coded. • Performance as a function of C/I, with Eb/No = 20 dB. • For conventional receiver, performance is worse as C/I gets smaller. • For macrodiversity combining, performance improves as C/I gets smaller.
Conclusion • Turbo codes can achieve remarkable power efficiency in AWGN and flat-fading channels. • The tradeoffs inherent to turbo codes make them attractive for multimedia systems. • 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 problem. • Turbo-multiuser detection can improve performance of both CDMA and TDMA systems. • In TDMA systems with multiuser detection, significant performance gains can be achieved by combining the outputs of the multiuser detectors.
Proposal of Future Work • Turbo codes for unknown fading channels. • More extensive study of pilot symbol assisted turbo decoding with refined estimation. • Study the impact of choice of Mp, the pilot symbol spacing. • Turbo-multiuser detection for DS-CDMA systems. • Study the performance as a function of K, the number of users in the system. • Macrodiversity combining for coded TDMA. • Performance using other convolutional codes (Kc=5,6). • Study the impact of varying N, the number of cells per cell. • Smaller N means more spectrally efficient system. • Performnace as a function K, number of users. • Channel estimation effects.
List of Publications • Journal Papers: • “Refined channel estimation for coherent detection of turbo codes over flat-fading channels,” IEE Electronics Letters, Aug. 20, 1998. • Conference Papers: • “Combined multiuser detection and channel decoding with base station diversity,” GLOBECOM Comm. Theory Mini-Conf. Nov. 1998. • “Multiuser detection with base station diversity,” ICUPC, Oct. 1998. • “Iterative multiuser detection for convolutionally coded asynchronous DS-CDMA,” PIMRC, Sept. 1998. • “Performance of turbo codes in interleaved flat fading channels with estimated channel state information,” VTC, May 1998. • “Combined multiuser reception and channel decoding for TDMA cellular systems,” VTC, May 1998. • “Variable latency Turbo codes for wireless multimedia applications,” Int. Symp. Turbo Codes & Related Topics , Sept. 1997.
Contributions • Study of turbo codes for multimedia systems. • Study of the performance of turbo codes in correlated Rayleigh and Rician flat-fading. • Developed several channel estimation algorithms suitable for turbo codes. • Developed a method to combine multiuser detection and error correction coding for multiple-access systems. • Developed a method to incorporate macrodiversity combining for TDMA systems with multiuser detection. • Showed significant performance improvement in TDMA sytems by using the combination of multiuser detection, macrodiversity combining, error correction coding, and iterative-processing.
Block Codes vs.Convolutional Codes • Advantages of block codes • Large minimum distance • High error correction capability, in theory. • Disadvantage of block codes • Most block codes are algebraically decoded. • 2.5 dB loss from using hard-decisions rather than soft. • Advantages of convolutional codes • Trellis structure enable soft-decision decoding. • Stream oriented nature allows for continuous decoding. • No need for frame synchronization • Disadvantages of convolutional codes • Small free distance • Performance worse than hard-decision decoded block codes at high SNR and low BER. Appendix I
Comparison of Convolutional and Block Codes • Convolutional codes. • Hard decision decoding. • For K=5 • dmin = 12 • Pb=10-5 at 7.3 dB • Pb=10-10 at 10.2 dB Appendix I
Comparison of Convolutional and Block Codes • BCH codes. • Hard decision decoding. • For (255,131) • dmin = 37 • Pb=10-5 at 5.7 dB • Pb=10-10 at 7.1dB Appendix I
Comparison of Convolutional and Block Codes • Convolutional codes. • Soft-decision decoding. • For K=5 • dfree = 12 • Pb=10-5 at 4.9 dB • Pb=10-10 at 7.8 dB Appendix I
Performance Bounds for Linear Block Codes • Union bound for soft-decision decoding: • For convolutional and turbo codes this becomes: • The free-distance asymptote is the first term of the sum: • For convolutional codes N is unbounded and: Appendix II