Coding, Decoding and Multiuser Detection for

0 downloads 0 Views 716KB Size Report
26,59,140,347,523,705,1226,2094,3883,6504]. (0,0) 8=24 ..... The normalized doppler frequency, fd = Fd. Tb, is 0.01, ... di erent interleaving lengths and soft decisions, fd = 0:01. ...... 83] A. J. Viterbi, \Very low rate convolutional codes for max-.
Coding, Decoding and Multiuser Detection for Wireless Communications Pal Orten Department of Information Theory Chalmers University of Technology S-412 96 Goteborg, Sweden

Submitted to the School of Electrical and Computer Engineering, Chalmers University of Technology, in partial ful llment of the requirements for the degree of Licentiate of Engineering Technical Report no. 272L ISBN 91-7197-563-2 Goteborg, October 1997

Printed by Chalmers Reproservice Goteborg, October 1997

Abstract In the strive for making the Universal Mobile Telecommunication System (UMTS) a reality, concepts and techniques are to be developed which can provide both high system capacity and sucient quality for the increasing number of mobile users. To obtain these objectives, powerful and exible error control coding is needed, as well as ecient means for many users to share the same communication medium. This thesis contributes by presenting new optimum convolutional channel codes, outperforming those previously reported. These new and improved codes are then used as a basis for deriving exible and powerful families of codes with many code rates. The various wireless services require di erent levels of error protection as well as a means for matching di erent data rates to the rate of the channel. Rate matching in multirate direct-sequence codedivision multiple-access (DS-CDMA) systems is described and the performance is evaluated in terms of eciency. Furthermore an error control scheme capable of providing extremely low error rates is proposed and shown to be a good candidate for some services in wireless mobile systems. A wireless system using DS-CDMA as its multiple access technique is normally severely interference limited. Joint detection of many users as well as interference cancellation techniques have in recent years been proposed to reduce the impact of the interference. The performance of a number of detectors is compared and shown to be very sensitive to errors in the time and phase estimates.

Keywords - rate compatible punctured convolutional codes, nested

codes, optimum distance spectrum, direct-sequence code division multiple access (DS-CDMA), rate matching, multirate DS-CDMA, sequential decoding, Rayleigh fading, multiuser detection. iii

Contents Abstract Contents Acknowledgments 1 Introduction 1.1 1.2 1.3 1.4

Background . Outline . . . Contributions Acronyms . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

2 Optimum Distance Spectrum Convolutional Codes 2.1 2.2 2.3 2.4

Introduction . . . . . . . . . . . . . . . A Performance-based Design Criterion Optimum Distance Spectrum Codes . Performance Evaluation . . . . . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

3 Convolutional Codes for Multirate DS-CDMA

. . . .

. . . .

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . 3.2 Rate-Compatible Convolutional Codes . . . . . . . 3.2.1 Introduction . . . . . . . . . . . . . . . . . 3.2.2 RCPC Coding . . . . . . . . . . . . . . . . 3.2.3 Nested Convolutional Codes . . . . . . . . . 3.2.4 Performance Analysis . . . . . . . . . . . . 3.3 Search Strategies for RCPC Codes . . . . . . . . . 3.3.1 Introduction to code search . . . . . . . . . 3.3.2 Optimum Distance Spectrum RCPC Codes 3.3.3 Reversed Code Search . . . . . . . . . . . . 3.3.4 Channel Optimized RCPC Codes . . . . . . v

. . . .

. . . . . . . . . . .

. . . .

iii iv vii 1 1 3 4 5

7

. 7 . 9 . 10 . 11 . . . . . . . . . . .

17 17 19 19 20 21 21 22 22 22 23 23

vi

CONTENTS

3.4 Evaluation of New Codes . . . . . . . . . . . . . . . . 24 3.5 Coding and Rate Matching in Multirate DS-CDMA . 28

4 Sequential Decoding in Wireless Communications 4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . 4.2 Performance Limits on Rayleigh Fading Channels . 4.2.1 Calculating the theoretical limits . . . . . . 4.2.2 Theoretical Limits with Soft Decisions . . . 4.3 Simulation Model and Results . . . . . . . . . . . . 4.3.1 Simulation Model Description . . . . . . . . 4.3.2 Results on Computational Complexity . . . 4.3.3 Bit Error Rate Results . . . . . . . . . . . . 4.4 Applicability in wireless communications . . . . . . 4.4.1 Error rate . . . . . . . . . . . . . . . . . . . 4.4.2 ARQ Systems . . . . . . . . . . . . . . . . . 4.4.3 Multiple and Variable Rate . . . . . . . . . 4.4.4 Delay . . . . . . . . . . . . . . . . . . . . .

5 Robustness of DS-CDMA Multiuser Detectors 5.1 5.2 5.3 5.4

Introduction . . . . . . . . . . . . . . . . . . . . System Model . . . . . . . . . . . . . . . . . . . Conventional Detector . . . . . . . . . . . . . . Multiuser Detectors . . . . . . . . . . . . . . . 5.4.1 Decorrelating Detector . . . . . . . . . . 5.4.2 Minimum Mean-Square-Error Detector . 5.4.3 Interference Cancellation . . . . . . . . 5.4.4 Successive Interference Cancellation . . 5.4.5 Parallel Interference Cancellation . . . . 5.5 Performance with Estimation Errors . . . . . . 5.5.1 Introduction . . . . . . . . . . . . . . . 5.5.2 Synchronization Errors . . . . . . . . . . 5.5.3 Phase error . . . . . . . . . . . . . . . . 5.5.4 Near-far robustness . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . .

39 39 40 40 43 45 45 47 48 49 49 50 51 52

55 55 57 58 59 59 61 61 61 62 63 63 65 67 68

6 Conclusions and Future Work

71

Bibliography

75

6.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . 71 6.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . 73

Acknowledgments First of all I would like to thank my supervisor Professor Arne Svensson. He has always had a positive attitude and an open mind when discussing research ideas. This has created a friendly atmosphere and a con dence in my own work that has been highly appreciated. From the communication system group I will rst of all thank Pal Frenger and Tony Ottosson for an excellent and fruitful cooperation. Tony has even been an important information source and discussion partner on CDMA systems and wireless communications in general. Many thanks also to Ann Louise Johansson for taking the time to read and comment on Chapter 5. I also appreciated the comments from Associate Professor Ingvar Jonsson on the paper which was the basis for Chapter 4. One always expects computers to run without any problems, and this has mostly been true due to Lars Kollberg's continuous e orts. Our computers have received invaluable help also from Tobias Ringstrom, making \parallel processing" easier. Thanks to other colleagues at the department who contributed by creating a good working atmosphere. At last I want to thank my wife Linda for all help, support and patience at home, and my two sons, Andre and Mathias, who lately have had a frequently absent father. The work presented in this thesis has been performed in the framework of the project ACTS AC090 FRAMES, which is partly funded by the European Community. My work has also been nancially supported by Nera Telecommunications. Pal Orten Goteborg, October, 1997 vii

Chapter 1

Introduction 1.1 Background Capacity and quality are two vital design objectives for a mobile wireless communication system. Clearly, one would like to achieve as high capacity as possible, enabling many users simultaneous access to the network. This is important in a time when penetration of cellular phones is increasing and has already reached 30 percent in some countries [14]. In addition, new mobile radio applications call for higher data rates, resulting in a need for extra capacity. For third generation systems to be a success, enhanced quality is necessary. With sucient quality and exibility a mobile wireless system can be capable of supporting high speed data access. In turn, this might reduce the need for building new infrastructure. At the same time it will provide wireless local area networks (WLAN) to the \mobile oce" [11], and facilitate the wireless local loop (WLL1 ). In the end the consumers will bene t from this through reduced cost. People expect to have the same possibilities whether they are on the move, or in their oce or home environments. For the WLL to be a success the mobile wireless network must provide the same quality as the xed network [78]. Support for the same services and the providing same quality as Public switched telephone networks (PSTN) and other xed networks is not trivial. A mobile wireless communication link experiences a lot of impairments that are not present in xed networks, which the sys1 Wireless local loop means connecting the user premises to the switching equip-

ment by a wireless system, bypassing the local service provider [72].

1

2

CHAPTER 1. INTRODUCTION

tem must handle. Examples of such impairments are signal fading and multipath propagation, intercell interference (e.g cochannel interference), and intracell interference (adjacent channel interference or multiple access interference) [73, 74] in addition to additive white Gaussian noise2 . The system design must take all these factors into consideration, and techniques should be developed that can provide sucient quality and capacity. There are two features in a mobile communication system that play an essential role in providing high capacity and good quality; coding for error control [54, 85] and the method for sharing the common communication medium, called the multiple access technique [73]. Due to the non-ideal channel, additive noise and interference, the communication link is error prone. Powerful error correcting codes are needed to achieve a suciently high quality. As will be discussed in subsequent chapters, there are several criteria to be considered when choosing the error correction scheme. By reducing the impact of other user interference, the channel code also contributes to increased system capacity by allowing more users in the system. In a wireless communication system many users need simultaneous access to the same communication medium. Some method or rule must be applied for sharing the medium, and allowing the di erent users to be separated by the receiver. The multiple access method used should be able to support many users, and thus provide high system capacity. Di erent multiple access techniques are not equally robust against various types of communication disturbances. This should also be considered when choosing the multiple access scheme for high quality services. A multiple access scheme with inherent robustness against multipath fading and narrowband interference, is code division multiple access (CDMA) [73]. Much research is focusing on this technique for wireless communications [61]. User separation is accomplished by assigning each user a unique signature sequence (or code). These codes are orthogonal to, or have low correlation with, other users' codes, and they cause bandwidth expansion of the signal. Since perfect orthogonality is rarely achieved, including more users into the system increases the interference, and reduces the quality if other system parameters remain xed. This results in a trade o between quality and 2 Other problems such as frequency reuse, channel assignment, power control

and hando , also exist.

1.2. OUTLINE

3

system capacity. With a exible and powerful coding scheme, the error correcting capability can be adjusted to compensate the increased error probability. A di erent technique which reduces the problem with intracell interference (i.e. interference from users in the same cell), is multiuser detection [57]. With this approach the users are jointly detected, and the interference from other users is taken into consideration in the detection process.

1.2 Outline This thesis presents new channel codes with improved performance and exibility which are suited for wireless communication and CDMA systems. A coding and decoding scheme which can provide extremely low error rates is investigated for use in wireless mobile communications. Furthermore, the performance of di erent CDMA multiuser detectors is evaluated with perfect and non perfect channel parameter estimation. Chapter 2 describes the search for new and improved convolutional codes which have optimum distance spectrum. These codes are tabulated, and shown to be better than previously tabulated codes with the same code rate and constraint length. Based on the codes found in Chapter 2, families of codes known as rate compatible convolutional codes are found and presented in Chapter 3. It is argued that these codes are powerful, and will ful ll the requirements on exibility and implementation complexity that are imposed on the channel coding scheme for future wireless communications. Much research is focusing on Direct Sequence-Code Division Multiple Access (DS-CDMA) as the access technique, and the performance of these codes is evaluated for use in multirate DS-CDMA systems. For certain applications there is a need for extremely powerful coding schemes. Chapter 4 evaluates the possibility of using sequential decoding of long constraint length codes for such services. Both theoretical and simulated performance results are presented together with a discussion on the applicability in wireless systems. CDMA systems for wireless communications are normally interference limited, and the use of complex multiuser detectors have been proposed for combating the intracell multiuser interference. Chapter 5 evaluates and compares the performance of a number of such de-

4

CHAPTER 1. INTRODUCTION

tectors with and without errors in the channel parameter estimates. Conclusions are presented in Chapter 6 together with an overview of potential future research problems based on the results presented in this thesis.

1.3 Contributions The contributions to the work presented can be summarized as follows:

New convolutional codes having optimum distance spectrum are found by performing an extensive computer search. The codes are shown to give improved performance for both AWGN and Rayleigh fading channels. A paper on this work \Convolutional codes with optimum distance spectrum" by Frenger, Orten and Ottosson has been submitted to IEEE Communications Letters, July 1997 [19].

Rate compatible covolutional codes providing exible families of codes suited for instance for wireless communications, are presented. Detailed evaluation and application to rate matching for multirate DS-CDMA is described. The conceptual ideas were rst presented at the IEEE Vehicular Technology Conference, Phoenix, USA, May 5-7, 1997. The paper written by Frenger, Orten, Ottosson and Svensson is entitled \Rate matching in multichannel systems using RCPC-codes" [23]. A paper \Ratecompatible convolutional codes for multirate DS-CDMA" by Frenger, Orten, Ottosson and Svensson is submitted to IEEE Transactions on Communications [21].

Limits for sequential decoding on Rayleigh fading channels and

a discussion of the applicability in wireless mobile communications is given in \Sequential decoding in future mobile communications" by Orten and Svensson, which was presented at the IEEE Personal, Indoor and Mobile Radio Communications Conference, Helsinki, Finland, September 1-4, 1997 [65].

The robustness of DS-CDMA multiuser detectors is evaluated, and

the performance with non ideal parameter estimation is compared in the paper by Orten and Ottosson, entitled \Robustness

1.4. ACRONYMS

5

of DS-CDMA multiuser detectors" which is to be presented at the IEEE Communication Theory Mini Conference, Phoenix, USA, November 3-8, 1997 [64].

1.4 Acronyms Although the author has tried to use common, and to most people working in the eld of communication theory, well de ned acronyms, a list of acronyms is provided here to avoid misunderstandings, explain new terms de ned in the thesis and help readers that are not familiar with this eld.

ACTS Advanced Communications Technologies and Services. A european research program on Telecommunications ARQ Automatic Repeat Request AWGN Additive White Gaussian Noise BER Bit Error Rate BPSK Binary Phase Shift Keying CDMA Code Division Multiple Access DS-CDMA Direct Sequence CDMA DSP Digital Signal Processing (or Processor) DBPSK Di erential BPSK FDMA Frequency Division Multiple Access FRAMES Future Radio Wideband Multiple Access System. This is a project in the European ACTS research program. FSK Frequency Shift Keying HARQ Hybrid ARQ MFD Maximum Free Distance ML Maximum Likelihood MMSE Minimum Mean Square Error

6

CHAPTER 1. INTRODUCTION

MUD Multiuser Detector ODS Optimum Distance Spectrum PCS Personal Communication System PIC Parallel Interference Cancellation PSK Phase Shift Keying QPSK Quadrature Phase Shift Keying RCC codes Rate Compatible Convolutional codes RCPC codes Rate Compatible Punctured Convolutional codes RS-code Reed Solomon code SIC Successive Interference Cancellation SNR Signal-to-Noise Ratio TDMA Time Division Multiple Access UEP Unequal Error Protection UMTS Universal Mobile Telecommunication System WLAN Wireless Local Area Network WLL Wireless Local Loop

Chapter 2

Optimum Distance Spectrum Convolutional Codes 2.1 Introduction Convolutional encoding is based on introduction of dependence between the symbols by performing a convolution on the data bits. When more than one such linear combination (modulo 2) is performed for each input, redundancy is added giving the code its error correcting capability. The basic building blocks of a rate R = 1=n convolutional encoder are a shift register and modulo two adders (or XOR gates), as shown in Figure 2.1. A convolutional encoder is as we can see a rather simple device, giving low complexity transmitters. Despite being simple, convolutional encoding is powerful and has found application in numerous communication systems. The popularity of convolutional codes is also due to the possibility of doing low complexity soft decision decoding with a maximum likelihood decoding algorithm called the Viterbi algorithm. There is no general algebraic method for designing good convolutional codes. One therefore either has to choose codes at random or perform a computer search based on some criterion of goodness of the code. What design criterion to apply depends on the application where the code is to be used and the decoding method. When designing a rate R = 1=n code of constraint length K there are a total of 2K n di erent combinations for the generator polynomials, see Figure 2.1. Some of these 7

8 CHAPTER 2. OPTIMUM DISTANCE SPECTRUM CONVOLUTIONAL CODES G1 G2

Input

Output G3 G4

Figure 2.1: Encoder for rate R = 1=4 convolutional code with con-

straint length K = 7. The generator polynomials are in octal notation: G1 = 117, G2 = 127, G3 = 155 and G4 = 171.

combinations obviously give bad codes, and some are symmetries and equivalents of other combinations. Nevertheless, there are still many combinations to be exploited when doing the search. Since the number of possible codes increases exponentially with both the constraint length and the number of generator polynomials, the rst attempts to nd good \all purpose" codes were restricted to nding maximum free distance 1 (MFD) codes. An upper bound on the maximum free distance of a rate R = 1=n convolutional code is given by the so called Heller bound2 as (see e.g. [15] or [73, p. 492] l?1 2 (K + l ? 1)nc , dH ; (2.1) df  min b l1 2l ? 1 where bxc denotes the largest integer less than or equal to x, df is the free distance and K is the constraint length of the code. It has been shown that this bound can be improved (i.e reduced by one) in some cases when dH is odd, see [60] or [15]. By employing the Heller upper bound on the free distance of a convolutional code, the search could be terminated once a code with free distance equal to the Heller bound was found. This approach has been taken by several authors presenting MFD convolutional codes [15,46,60]. To guarantee maximum free distance, a full search was performed only in the few cases where no code ful lling the Heller bound was obtained. Maximum 1 The free distance of a code is the distance of the shortest error event. 2 A similar bound has been found by Daut et. al. in [15] for rate R = k=n

codes.

9

2.2. A PERFORMANCE-BASED DESIGN CRITERION

free distance codes are normally good codes for communication on the Additive White Gaussian Noise (AWGN) channel, and they are often conceived as optimum codes. However, the bit error rate for a coded communication system is not only determined by the free distance of the code. We will develop a better search criterion and present some new codes found by an extensive computer search. Finally our new codes are compared to MFD codes.

2.2 A Performance-based Design Criterion The performance of convolutionally coded communication systems must normally be found by simulations. For a large range of signal-tonoise ratios however, a good estimate of the bit error rate is obtained by using the union upper bound on the bit error probability, given by [73, p. 488]

Pb
d~f 2. df = d~f and there exists an integer l  0 such that cd = c~d ; for d = df ; df + 1; : : : ; df + l ? 1 and cd < c~d ; for d = df + l.

2.4. PERFORMANCE EVALUATION

11

An extensive computer search, using an algorithm similar to that of [7] for calculating the distance spectra, has been performed to obtain optimum distance spectrum codes for the code rates 1=2, 1=3 and 1=4 and low constraint lengths. These codes3 together with the distance spectra cd are presented in the Tables 2.1, 2.2 and 2.3. The generator polynomials are given in octal form (see [46, 73] or Figure 2.1) and K denotes the constraint length. For the cases when the codes published in [46,60] are optimum distance spectrum codes they are given in the tables and marked by an asterisk (*). Also given in the tables are the ad spectra, where ad is the number of error paths of distance d. These spectra can be used to upper bound the rst-error event probability [73, p. 487], which is useful for nonbinary transmission schemes. It is interesting to note that many of the codes found (especially those with low constraint lengths) also have optimum ad spectra (using the superior spectrum de nition with cd replaced by ad ).

2.4 Performance Evaluation The performance of convolutional codes can be obtained by extensive simulations, or approximately by calculating the union upper bound on the bit error probability, given by (2.2) and(2.5). To have a true upper bound in nitely many terms need to be included. By including many terms (12 to 15) one will obtain a very good estimate on the bit error rate for a Rayleigh fading channel at bit error rates below 10?3 . The union upper bound4 on the bit error probability for a perfectly interleaved Rayleigh fading channel is given in Figure 2.2 for some of the codes presented in this paper, as well as for the maximum free distance codes [46, 60] of the same rates and constraint lengths. As can be seen the optimum distance spectrum codes outperform the 3 ODS codes are also presented by Bocharova and Kudryashov in [4] and by

Chang, Hwang and Lin in [8]. These codes were obtained independently of our work, and were not published or known to us at the time of submission of our paper [19]. Bocharova and Kydryashov have only found short constraint length ODS codes, and Chang, Hwang and Lin have optimized for only three spectrum terms. Some of the their codes are thus not optimal. 4 Actually an approximation to the union upper bound was calculated since only 20 spectrum terms were used. Comparisons with simulations have shown, however, that this many terms give a very good approximation, see also Chapter 3.

12 CHAPTER 2. OPTIMUM DISTANCE SPECTRUM CONVOLUTIONAL CODES 10

Bit Error Rate

10

10

10

10

0

R = 1/2, K = 10, ODS R = 1/2, K = 10, MFD R = 1/4, K = 9, ODS R = 1/4, K = 9, MFD R = 1/4, K = 7, ODS R = 1/4, K = 7, MFD

−2

−4

−6

−8

1

2

3

4

5 6 E / N [dB] b

7

8

9

10

0

Figure 2.2: Upper bound on the bit error rate, on an uncorrelated

at Rayleigh fading channel for optimum distance spectrum (ODS) and maximum free distance (MFD) codes. In calculating the bounds 20 spectrum terms were used. maximum free distance codes by up to 0.6 dB. The Optimum Distance Spectrum codes that have been presented should be used rather than MFD codes in mobile radio communications, as well as in systems transmitting on the AWGN channel. We will in the next chapter use these codes as a basis for deriving code families called Rate Compatible Convolutional Codes.

2.4. PERFORMANCE EVALUATION

13

Table 2.1: Rate 1/2 optimum distance spectrum codes. K

Generators

df

3

5, 7 *

5

4

15, 17 *

6

5

23, 35 *

7

6

53, 75 *

8

7

133, 171 *

10

8

247, 371 *

10

9

561, 753 *

12

10

1151, 1753

12

11

3345, 3613

14

12

5261, 7173

15

13 12767, 16461 16

(ad ; d = df ; df + 1; : : : ; df + 19) [cd ; d = df ; df + 1; : : : ; df + 19] (1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384, 32768, 65536,131072,262144,524288) [1,4,12,32,80,192,448,1024,2304,5120,11264,24576,53248, 114688,245760,524288,1114112, 2359296,4980736,10485760] (1,3,5,11,25,55,121,267,589,1299,2865,6319,13937,30739, 67797,149531,329801,727399,1604329,3538459) [2,7,18,49,130,333,836,2069,5060,12255,29444,70267, 166726,393635,925334,2166925,5057286,11767305, 27305864,63207473] (2,3,4,16,37,68,176,432,925,2156,5153,11696,26868, 62885,145085,334024,774966,1793363,4140001,9579535) [4,12,20,72,225,500,1324,3680,8967,22270,57403,142234, 348830,867106,2134239,5205290,12724352,31022962, 75250693,182320864] (1,8,7,12,48,95,281,605,1272,3334,7615,18131,43197, 99210,237248,559238,1312675,3108350,7299487,17216522) [2,36,32,62,332,701,2342,5503,12506,36234,88576,225685, 574994,1400192,3554210,8845154,21841106,54350946, 133703018,329783882] (11,0,38,0,193,0,1331,0,7275,0,40406,0,234969,0,1337714,0, 7594819,0,43375588,0) [36,0,211,0,1404,0,11633,0,77433,0,502690,0,3322763,0, 21292910,0,134365911,0,843425871,0] (1,6,12,26,52,132,317,730,1823,4446,10739,25358,60773, 146396,350399,842174,2021290,4853474, 11648661,27945646) [2,22,60,148,340,1008,2642,6748,18312,48478,126364, 320062,821350,2102864,5335734,13549068,34254388, 86441848,217480314,545858054] (11,0,50,0,286,0,1630,0,9639,0,55152,0,320782,0,1859184,0, 10777264,0,62423710,0) [33,0,281,0,2179,0,15035,0,105166,0,692330,0,4580007,0, 29692894,0,190453145,0,1208999091,0] (1,7,19,28,69,185,411,1010,2492,5963,14192,34584,83567, 200343,483393,1165406,2809777,6773483,16324253, 39351344) [2,21,100,186,474,1419,3542,9774,25950,66831,171594, 447372,1152976,2938087,7497956,19072552,48400420, 122452387, 309085546,778801868] (14,0,92,0,426,0,2595,0,15221,0,87694,0,509876,0,2975097,0, 17303477,0,100650003,0) [56,0,656,0,3708,0,27503,0,185997,0,1220645,0,7966761,0, 51581661,0,329655865,0,2089605350,0] (14,21,34,101,249,597,1373,3317,8014,19559,47302, 113723,274266,662666,1600334,3857052,9308986,22473832, 54226452,130860787) [66,98,220,788,2083,5424,13771,35966,93970,246720, 635694,1623432,4149988,10599534,26964102,68271886, 172723512, 436205306, 1098861232,2763565986] (14,38,35,108,342,724,1604,4020,9825,23899,57724,138584, 335272,808236,1952588,4714596,11375389,27462352, 66275890,159940379) [60,188,288,952,2754,6628,16606,44640,116712,304987, 785180,2002076,5132496,13067080,33236580,84264272, 213035502,537722506,1354359096,3404955291]

14 CHAPTER 2. OPTIMUM DISTANCE SPECTRUM CONVOLUTIONAL CODES

Table 2.2: Rate 1/3 optimum distance spectrum codes. K

Generators

df

3

5, 7, 7 *

8

4

13, 15, 17 *

10

5

25, 33, 37 *

12

6

47, 53, 75 *

13

7

133, 165, 171

15

8

225, 331, 367 *

16

9

575, 623, 727

18

10 1233, 1375, 1671 20 11 2335, 2531, 3477 22 12 5745, 6471, 7553 24

(ad ; d = df ; df + 1; : : : ; df + 19) [cd ; d = df ; df + 1; : : : ; df + 19] (2,0,5,0,13,0,34,0,89,0,233,0,610,0,1597,0,4181,0, 10946,0) [3,0,15,0,58,0,201,0,655,0,2052,0,6255,0,18687,0,54974, 0,159765,0] (3,0,2,0,15,0,24,0,87,0,188,0,557,0,1354,0,3713,0,9448,0) [6,0,6,0,58,0,118,0,507,0,1284,0,4323,0,11846,0,36009, 0,100844,0] (5,0,3,0,13,0,62,0,108,0,328,0,1051,0,2544,0,7197,0, 20658,0) [12,0,12,0,56,0,320,0,693,0,2324,0,8380,0,23009,0,71016, 0,222592,0] (1,3,6,4,5,12,14,33,66,106,179,317,513,766,1297,2251, 3964,6721,10969,18818) [1,8,26,20,19,62,86,204,420,710,1345,2606,4343,6790, 12305,22356,41090,72820,123901,221886] (3,3,6,9,4,18,35,45,77,153,263,436,764,1209,2046,3550, 5899,10002,16870,28701) [7,8,22,44,22,94,219,282,531,1104,1939,3460,6538, 11006,19478,35738,61865,109308,193128,340356] (1,0,8,0,24,0,51,0,133,0,405,0,1129,0,3532,0,9754,0, 28746,0) [1,0,24,0,113,0,287,0,898,0,3020,0,9436,0,32644,0,98472, 0,318914,0] (1,4,10,9,17,14,39,56,85,207,258,484,917,1390,2572, 4362,7330,12484,21293,34887) [2,10,50,37,92,92,274,402,600,1579,2130,4120,8306, 13108,25524,45034,79896,141080,250146,427357] (3,6,14,14,27,24,51,91,178,270,470,812,1465,2374,4203, 6798,11859,19926,34150,58027) [6,16,72,68,170,162,340,629,1410,2090,3938,7046,13736, 23242,43234,71630,132118,229788,409930,720035] (7,0,27,0,55,0,161,0,413,0,1200,0,3809,0,10521,0,30860, 0,89356,0) [17,0,122,0,345,0,1102,0,3214,0,10215,0,36004,0,109166, 0,347103,0,1087117,0] (13,0,32,0,78,0,202,0,614,0,1808,0,4971,0,15006,0,42921, 0,124908,0) [43,0,162,0,507,0,1420,0,4857,0,16023,0,48501,0,160167, 0,496268,0,1553592,0]

2.4. PERFORMANCE EVALUATION

15

Table 2.3: Rate 1/4 optimum distance spectrum codes. K

Generators

df

3

5, 5, 7, 7

10

4

13, 15, 15, 17 *

13

5

25, 27, 33, 37 *

16

6

51, 55, 67, 77

18

7

117, 127, 155, 171

20

8

231, 273, 327, 375

22

9

473, 513, 671, 765

24

10 1173, 1325, 1467, 1751 27

(ad ; d = df ; df + 1; : : : ; df + 19) [cd ; d = df ; df + 1; : : : ; df + 19] (1,0,2,0,4,0,8,0,16,0,32,0,64,0,128,0,256,0,512,0) [1,0,4,0,12,0,32,0,80,0,192,0,448,0,1024,0,2304,0, 5120,0] (2,1,0,3,1,4,8,4,15,16,18,45,40,73,119,122,244,313, 415,733) [4,2,0,10,3,16,34,18,77,84,106,280,256,514,865,934, 1988,2620,3685,6764] (4,0,2,0,4,0,15,0,30,0,54,0,115,0,252,0,511,0,1052, 0) [8,0,7,0,17,0,60,0,140,0,301,0,707,0,1675,0,3739,0, 8402,0] (3,0,3,0,9,0,13,0,26,0,66,0,127,0,311,0,608,0,1290, 0) [5,0,9,0,34,0,59,0,142,0,341,0,775,0,2042,0,4452,0, 10369,0] (2,0,6,0,7,0,15,0,25,0,62,0,138,0,294,0,687,0,1348, 0) [3,0,17,0,32,0,66,0,130,0,364,0,889,0,1975,0,5168, 0,11113,0] (1,2,2,2,5,8,10,14,14,18,32,50,74,107,159,240,328, 504,747,1121) [2,4,4,6,18,32,50,78,82,92,186,302,478,759,1132, 1756,2502,4006,6130,9641] (1,0,6,0,8,0,23,0,37,0,77,0,157,0,339,0,790,0,1689, 0) [1,0,15,0,33,0,111,0,210,0,459,0,1030,0,2502,0, 6239,0,14432,0] (3,4,0,5,12,12,10,17,26,46,69,70,120,199,271,391, 540,880,1371,1881) [7,10,0,28,54,58,54,88,148,290,427,472,848,1490, 2077,3114,4474,7544,12307,17272]

16 CHAPTER 2. OPTIMUM DISTANCE SPECTRUM CONVOLUTIONAL CODES

Chapter 3

Convolutional Codes for Multirate DS-CDMA 3.1 Introduction Since the introduction of cellular telephony in the early 80's, virtually all markets and operators have seen a rapid increase in the number of subscribers. In the early 90's the rst generation analog systems were replaced by the second generation digital systems. These systems have higher capacity due to source (speech) coding, channel coding and the inherent robustness of digital transmission. Common for all these systems is that they are dominated by speech communication. However, there are indications that the increase in trac to a large extent will be in other types of services. One example of such a service is the nowadays so popular Internet browsing. Other services that are believed to be of importance in the future are fax and image transmission, video conferencing, electronic billing, positioning, audio, low-resolution video, and pure data transmission. It is already clear, judging from evolving standards (see e.g. [12, 59, 76]), that these services will require di erent data rates, quality of service (bit error rate) and data rate variability. Furthermore, some services are delay sensitive and some are not. A communication system should therefore be designed with a high amount of exibility regarding the data rate and its variability, the provided quality of service, and the delay. One of the requirements on the radio layer is a modular data rate system giving each user the possibility to allocate the data rate needed, with a reasonable resolution, for the time 17

18

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

needed. This division of the channel resources into subchannels can be done in the time, frequency or code domain; a time slot in a timedivision multiple-access (TDMA) system, a carrier (frequency band) in a frequency-division multiple-access (FDMA) system, or a code in a code-division multiple-access (CDMA) system. It is also possible to design hybrid systems, for example allowing users to allocate several codes and several carriers. The existence of many subchannels is common to all these solutions, and a user is allowed to allocate several of such channels. We refer to this as a multichannel system. As an example of a multichannel system we use multicode DS-CDMA [67], where each user is allocated a number of spreading codes. In dividing the resources into multiple channels there is usually a trade-o (due to intersymbol interference, channel variability and implementation costs) between a low data rate on each subchannel and a high spectral eciency for the system. Therefore, the resolution in data rate will typically be in the order of 10-50 kbit/s. However, the variability in for example speech is in steps of a few kbit/s, requiring a rate matching system as an interface to the allocated subchannels. Two obvious ways of rate matching exist; (1) repetition of some of the data bits so that the data rate after repetition matches the channel rate; and (2) channel coding to introduce the extra data bits needed. Repetition is in fact a very simple channel code, which in general has a low performance gain compared to other coding schemes. It has, though, the advantage that all source data rates can be matched to the existing channel rates by repeating some or all of the data bits one time or more. The use of channel coding implies a need for many code rates so that a high resolution of source data rates can be supported. It would of course also be possible to switch periodically between a few di erent code rates and thus achieve perfect rate matching using channel coding. The quality of service (bit error rate) requirements imply an adaptive error control coding scheme making it possible to change code rate from one connection (or data packet) to another. Also within one transmission there may be needs for di erent quality classes in for example speech communication (unequal error protection (UEP)), or to adapt to the channel condition, thus achieving a higher spectral ef ciency. Also, packet transmission based on hybrid automatic repeat request (HARQ) uses variable code rate channel codes [40,42,85]. Referring to the arguments presented above, there is obviously a need

3.2. RATE-COMPATIBLE CONVOLUTIONAL CODES

19

for a channel coding scheme with many code rates. The question that remains is what type of coding scheme to use. Two main categories exist; block codes and convolutional codes. Block codes have a main diculty in the complexity needed to perform soft-decision decoding1 which is vital for any bandwidth ecient cellular communication system because of the multipath fading nature of the mobile radio channel [73, p. 813]. Due to implementation complexity it is advantageous to be able to use the same decoder (or a few decoders) to decode all code rates. For block codes the decoders must usually be designed for a speci c code. For convolutional codes, soft-decision decoding comes naturally using a soft metric in the Viterbi decoder, and the use of rate-compatible convolutional (RCC) codes makes it possible to apply the same decoder2 for all code rates within the code family. Other coding schemes such as turbo coding [3] exist. However, for turbo codes to perform well a large interleaver is needed, and therefore it might be dicult to use turbo codes for delay sensitive services. Furthermore, the high complexity in decoding turbo codes may be prohibitive. Another possible coding/decoding scheme is long constraint length convolutional codes together with sequential decoding [65]. This coding/decoding scheme is studied in more detail in Chapter 4. Here we rst present RCC codes and the search for such codes. New codes are given together with an evaluation of their performance. The use of these codes for rate matching in a DS-CDMA system is explained, and performance evaluation presented.

3.2 Rate-Compatible Convolutional Codes 3.2.1 Introduction

RCC codes are constructed such that lower code rates make use of the same code symbols as the higher code rate plus some extra redundancy symbols. This can easily be obtained by repeating symbols. Repetition, however, usually results in worse performance than nesting or puncturing [42]. Thus we present a exible and powerful family of RCC codes obtained by combining these two techniques such that 1 Some work has been done, however, on non-algebraic soft decision decoding

schemes for block codes which gives a more moderate complexity, see e.g. [44,47,80] 2 The decoder will base its operation on the same trellis for all RCC code rates, but the metric calculation di ers. This will not signi cantly a ect the total complexity of the decoder.

20

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

puncturing is used for the higher code rates while nesting is used to achieve very-low rate, low-complexity coding.

3.2.2 RCPC Coding

Rate-compatible punctured convolutional (RCPC) codes were rst presented and evaluated by Hagenauer in [30{32], and by Hagenauer, Seshadri and Sundberg in [33,34]. The codes are constructed by puncturing a convolutional code of rate R = 1=n and constraint length K , called the mother code. This code is completely speci ed by the n generator polynomials [85]

Gj (D) = g0j + g1j D + : : : + gKj ?1 DK ?1;

(3.1)

where gij 2 f0; 1g, and j = 1; 2; : : : ; n. The puncturing is done according to a rate compatibility criterion, which requires the lower rate codes to use the same coded bits as the higher rate codes, plus one or more additional bit(s) [32]. The bits to be punctured are described by an n  p puncturing matrix P containing zeros and ones. The output from the generator Gj (D) is compared to the appropriate element in the puncturing matrix P . At time instant t the output from each generator Gj (D) is transmitted if P (j; t mod p) = 1, and punctured otherwise. Here P (a; b) denotes the element on row a and column b in the matrix P . The number of columns, or the puncturing period p, determines the number of code rates and the rate resolution that can be obtained. Generally, from a mother code of rate 1=n, we obtain a family of (n ? 1)p di erent codes with the rates p ; p ;::: ; p : (3.2) R = np np ? 1 p+1 Due to the rate compatibility criterion, the code rate of RCPC codes can be changed during transmission and thus unequal error protection is possible [32,34]. The problem with existing RCPC codes [32, 48] is the limited number of code rates and a limited range of code rates. Since only codes with constraint lengths 7 or lower have been found, these codes are of limited applicability in cellular systems. The bandwidth eciency is of major importance, and therefore the most powerful codes that can be implemented in an ecient way should be used. With the technology available today it should be possible to implement

3.2. RATE-COMPATIBLE CONVOLUTIONAL CODES

21

Viterbi decoders for constraint lengths up to at least 10. For example the North-American CDMA standard (IS-95) uses constraint length 9 codes [25, p. 114]. In this chapter we therefore present new codes with longer constraint lengths, a wider range of code rates and higher resolution of code rates. These new RCPC codes are based on the improved rate 1=n mother codes presented in Chapter 2. The RCPC coding scheme is considered to be a strong candidate for both the TDMA- and CDMA-based modes in the personal communication system currently being studied within the European FRAMES project [62].

3.2.3 Nested Convolutional Codes Nested convolutional codes 3 [50, 52, 53] are obtained by extending a code of rate 1=n to a rate 1=(n + 1) code by searching for the \best" additional generator polynomial Gn+1(D). The idea is that good codes generate good codes. It is obvious that this type of code family is rate-compatible, and the modular code design reduces the complexity of the search for low-rate codes. By combining RCPC codes and nested convolutional codes, we get a set of rate-compatible codes with a wide range of code rates.

3.2.4 Performance Analysis The bit error rate performance of convolutional codes may be found by extensive simulations or approximately by calculating error bounds. If the distance spectrum, i.e. the number of bit errors associated with a given distance, of the code is known, it is rather straight forward to calculate a union upper bound on the bit error probability. For rate R = k=n convolutional codes this bound can be generalized to apply also to punctured convolutional codes, and is given by [32] 1 X 1 cdPd ; Pb < p d=df

(3.3)

3 P. J. Lee who rst presented this way of searching low rate convolutional

codes, called it a partial code search [50]. We feel that the term nested introduced in [52] is more descriptive and will therefore use this name.

codes

22

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

where cd is the sum of bit errors for all di erent starting points4 of error events of distance d, relative to the puncturing period. Since cd is obtained by summing over all starting points, averaging by the puncturing period, p, is necessary in (3.3) to have a correct bound. The parameter df is the distance of the shortest error event (the free distance of the code). Furthermore, Pd is the probability that an error path of distance d is chosen instead of the all zeros path. This pairwise error probability, Pd , depends on the channel. For BPSK modulation on an AWGN channel and uncorrelated Rayleigh-fading channel with perfect channel estimates and soft decision decoding it is given by (2.3) and (2.5) respectively. As we will see the bounds are rather tight, especially for the lower bit error rates.

3.3 Search Strategies for RCPC Codes

3.3.1 Introduction to code search

Clearly, puncturing of a low-rate convolutional code to obtain a speci c higher code rate is generally a suboptimum way of obtaining that code rate. The loss due to this suboptimality is however in general limited. Optimum puncturing patterns have been obtained by computer search, see e.g. [2, 29, 42, 89]. Furthermore, speci c codes in an RCPC code family are suboptimum punctured codes since all puncturing patterns can not be allowed due to the rate compatibility criterion. The puncturings done at one rate are maintained for all higher rate codes, and small steps in the puncturing is advantageous only for a high resolution of code rates.

3.3.2 Optimum Distance Spectrum RCPC Codes

Code searching is done by puncturing, in steps of one bit, the rate R = 1=n mother code, and evaluating which of the puncturing patterns gives the best encoder. The best puncturing pattern is the pattern giving: (1) the highest free distance, and (2) the lowest cd value, among the possible patterns satisfying the rate compatibility criterion. If this is ful lled for more than one code the next terms, 4 Some authors have chosen to treat the punctured code as a xed code (time

invariant) by constructing a so called supertrellis. This approach, however, leads to slightly too high values for the higher spectrum terms, as was also commented by Lee in [49].

3.3. SEARCH STRATEGIES FOR RCPC CODES

23

cdf +1 ; cdf +2 ; : : :, in each of the distance spectra are compared until one spectrum term is found lower than the corresponding terms of the other codes. We de ne RCPC codes obtained this way as optimum distance spectrum (ODS) RCPC codes (see also the de nition of ODS codes in section 2.3). Furthermore, we eliminate all catastrophic encoders [85].

3.3.3 Reversed Code Search For each new puncturing during the search, the number of remaining puncturing patterns is reduced. For the higher code rates we should therefore expect to have a larger performance loss than for the lower rates. If the higher rates are critical, the search could be started from the highest rate (reversed compared to that presented above), adding ones in the puncturing matrix. A problem with this strategy is a tremendous initial search problem, since we then have to nd the optimum p+1 bits among np bits that should not be deleted, np being the number of elements in the matrix. If needed, the initial search problem could be alleviated though, by starting with an extension of the optimum lower-period high-rate puncturing similar to that reported in [42].

3.3.4 Channel Optimized RCPC Codes The performance of an RCPC code is not directly re ected by its distance spectrum, and hence, a more appropriate design criterion may be to minimize the upper bound on the bit error probability given by (3.3). This approach has been taken in e.g. [50, 51], and coding gains in the area of 0.1-0.4 dB were reported. However, optimum distance spectrum codes perform well for both AWGN and fading channels [19] (see also Chapter 2), while channel optimized codes are designed for a speci c channel and signal-to-noise ratio. Tests indicate that the additional coding gain obtained by minimizing the bit error rate, compared to optimizing the distance spectrum, is less than 0.1 dB and in a rather small Eb =N0 interval. Hence, we do not pursue a channel optimized approach for searching RCPC codes here.

24

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA 0

10

−2

Bit Error Probability

10

−4

10

R = 1/2 −6

10

RCPC−code R = 1/2 RCPC−code R = 1/3 Bounds for RCPC−codes ODS−code R = 1/2 ODS−code R = 1/3 Bounds for ODS−codes

−8

10

R = 1/3

−10

10

0

1

2

3

4 5 Eb / N0 [dB]

6

7

8

9

Figure 3.1: Upper bounds and simulated results of the bit error

probability on a Rayleigh-fading channel for RCPC codes and ODS codes with rate R = 1=3 and 1=2. Constraint length K = 9.

3.4 Evaluation of New Codes In the appendix we present RCPC codes with constraint lengths K = 7 ? 10 using mother code rate R = 1=4 ODS codes. Furthermore, these codes are extended using nested codes from rate R = 1=5 to rate R = 1=10. Note that all presented nested codes are maximum free distance codes (i.e. they ful ll the Heller bound (2.1)). Using (3.3), (2.3) and (2.5) we can evaluate an upper bound on the bit error probability for the RCPC codes presented in this thesis. In all upper bound calculations we use 12 terms of the spectrum. Fig. 3.1 shows simulation results and upper bounds on a Rayleigh-fading channel for rate 1=2 and rate 1=3 constraint length 9 codes. The RCPC codes are speci ed in Table 3.3 and the ODS codes are taken from the tables in Chapter 2. As we can see in Fig. 3.1 the upper bounds and the simulated results correspond closely for BER of 10?4 and lower. We will therefore use these bounds for evaluation, instead of performing time consuming simulations.

25

3.4. EVALUATION OF NEW CODES 18 p=2 p=4 p=8 p = 16

14 12

Rayleigh channel

10 8

b

0

E / N [dB] at BER 1e−6

16

6 Gaussian channel

4 2 0.2

0.3

0.4

0.5 0.6 Code Rate, R

0.7

0.8

0.9

Figure 3.2: Required Eb =N0 in dB to obtain the bit error probability

10?6 on Rayleigh-fading and Gaussian channels versus the code rate R. Results are shown for constraint length K = 9 and puncturing periods p = 2, 4, 8, and 16.

In Figure 3.2 we study the in uence of changing the puncturing period, p. The Eb =N0 required to obtain a BER of 10?6 is plotted versus the code rate. Results are shown for constraint length K = 9 RCPC codes with p = 2; 4; 8 and 16 for a Gaussian as well as for a Rayleigh-fading channel. A small value of p severely limits the degree of freedom in optimizing the puncturing pattern, and thus a performance loss results. Choosing a high value of p may also cause a loss in performance since the optimization procedure is to nd a local optimum at each step given the previous pattern (thus the search space is severely limited). Figure 3.2 indicates that p = 8 is a good choice of the puncturing period, but the performance does not change much for di erent values of p. We may also choose to use mother codes of di erent rates. In Fig. 3.3 the Eb =N0 required to obtain a BER of 10?6 is plotted versus the code rate for RCPC codes with mother codes of rate 1=n with n =

26

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA 20 n=2 n=4 n=6 n=8

18

Eb / N0 [dB] at BER 1e−6

16 14 12 10

Rayleigh channel

8 6 Gaussian channel

4 2 0.1

0.2

0.3

0.4

0.5 0.6 Code Rate, R

0.7

0.8

0.9

Figure 3.3: Required Eb=N0 in dB to obtain the bit error probability

10?6 on Rayleigh-fading and Gaussian channels versus the code rate R. Results are shown for codes obtained by puncturing constraint length K = 9, rate R = 1=n mother codes with n = 2, 4, 6, and 8. 2; 4; 6 and 85. Results are shown for Gaussian and Rayleigh-fading channels and the constraint length is 9. We see, as expected, that using a high-rate mother code provides slightly better performance for the high-rate punctured codes. The span of available code rates is however smaller for a low value of n. The performance of the codes obtained with n = 4 is almost as good as that of those with n = 2. Furthermore, we have observed that some of the nested codes resulting from mother codes with rate 1=2 are not maximum free distance codes. For rate 1=4 mother codes, however, all nested codes presented are maximum free distance codes6 . We have thus chosen to present RCC codes only for n = 4 (see the appendix). 5 For n = 2 and n = 4 ODS codes from Chapter 2 are used as mother codes.

For n = 6 and n = 8 the codes found by a random search and reported in [4] are used. 6 Using a rate 1=4 mother code all nested codes down to rate 1/512 are actually maximum free distance codes [20].

27

3.4. EVALUATION OF NEW CODES

20 K = 9, Forward search K = 9, Backward search K = 7, Forward search K = 7, Backward search

18

Eb / N0 [dB] at BER 1e−6

16 14 12 10

Rayleigh channel

8 6 Gaussian channel

4 2

0.3

0.4

0.5 0.6 Code Rate, R

0.7

0.8

0.9

Figure 3.4: Required Eb =N0 in dB to obtain the bit error probability

10?6 on Rayleigh-fading and Gaussian channels versus the code rate R for RCPC codes obtained by reversed code search. Results are shown for codes obtained by puncturing constraint length K = 7 and K = 9, rate R = 1=n mother codes. To see what can be achieved by starting at the highest rate, we performed a reversed search. The optimum high rate puncturing patterns were obtained by an exhausted search, and the best RCPC codes down to rate 1=n was found. For constraint length K = 7 and mother code rate 1=4 the performance was improved for almost all puncturings, as can bee seen in Figure 3.4. However, for constraint lengths K = 8; 9 and 10 the performance was similar to, and not always better than that of starting with the lowest rate. This is exampli ed by constraint length K = 9 in Figure 3.4. The highest code rate was of course always better for the reversed search since it represents the optimum puncturing pattern for that rate. Since there were no real improvement achieved by this search for the higher constraint lengths, no results are tabulated from the reversed search. The interested reader is referred to [22] for details. In Figure 3.5 we evaluate the results for K = 7; 8; 9 and 10. All

28

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

20 Rate Compatible, K = 7 Rate Compatible, K = 8 Rate Compatible, K = 9 Rate Compatible, K = 10 ODS K = 7 ODS K = 8 ODS K = 9 ODS K = 10

18

Eb / N0 [dB] at BER 1e−6

16 14 12 10

Rayleigh channel 8 6 Gaussian channel

4 2 0.1

0.2

0.3

0.4

0.5 0.6 Code Rate, R

0.7

0.8

0.9

Figure 3.5: Required Eb=N0 in dB to obtain the bit error probability

10?6 on Rayleigh-fading and Gaussian channels versus the code rate R. Results are shown for constraint lengths K equal to 7, 8, 9, and 10. RCPC codes use mother codes of rate 1=4 and are given in Table 3.1 through Table 3.4. For code rates lower than 1=4 the nested codes in Table 3.5 to Table 3.8 are used. We also show in Fig. 3.5 results for ODS codes of rates 1=4, 1=3 and 1=2. The RCPC codes have almost the same performance as the ODS codes for the code rates shown.

3.5 Coding and Rate Matching in Multirate DS-CDMA Three obvious methods for achieving multiple rates in a DS-CDMA system are multi-modulation varying the modulation alphabet, multi processing gain and multi-code. The latter two have about the same performance, and outperform the multi modulation scheme [67]. Using multi processing gain means varying the spreading such that the same total bandwidth is used for di erent data rates. In multi-code

3.5. CODING AND RATE MATCHING IN MULTIRATE DS-CDMA

29

multiple spreading codes are assigned to each user, which modulates data on these in parallel. Multi processing gain and multi-code are used in the up- and downlink respectively, in FRAMES Multiple Access (FMA) being studied for standardization as the third generation wireless mobile system in Europe [62]. The multi-code scheme has the same processing gain for all users and for all data rates, which makes it more robust against external interference, while increasing the linearity requirements on the ampli er [66,67]. We will here use multi-code for performance evaluation. With xed spreading there will be a number of xed-rate subchannels available. If the system is to support any source data rate there is a need for matching the source rate to a multiple of the subchannel rate. By using RCC codes we have many di erent code rates for di erent error protection, and a exible means for matching the source data rate to the rate of the parallel sub-channels [23]. In Figure 3.6 we show an example of the rate matching in systems where each subchannel transmits 15 kbit/s. Figure 3.6 shows which source data rates can be supported and how many parallel channels are needed when applying the rate compatible code families presented in Section 3.4. When lower rate coding is applied, more subchannels are needed to transmit the channel symbols. Consequently, more interference is induced on the other users of the system. It is therefore of interest to investigate the performance of a multicode DS-CDMA system as the code rate is decreased. In order to analyze the performance, we approximate the interference from other users as Gaussian, and then apply the union upper bound on the bit error probability for BPSK on a Rayleigh-fading channel (see (2.2) and (2.5)). Decisions are taken from the output of the matched lters (conventional single user detector). The ecient signal-to-noise ratio to be used in the bit error rate calculations, taking the interference into consideration, is given by [67]

N



?1 2 C p ( ? 1) ; (3.4)

b = E + 3N b where  is the number of users, N is the spreading factor and Cp is the number of parallel channels given as Cp = Rs =(RRsub ); (3.5) where Rs is the source data rate, Rsub is the subchannel data rate, and the code rate R is chosen among available rates such that an 0

30

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

80 7 channels 70 6 channels Source data rate [kbit/s]

60 5 channels

50 40

4 channels

30

3 channels

20

2 channels

10

1 channel

0 0.1

0.2

0.3

0.4

0.5 Code rate

0.6

0.7

0.8

Figure 3.6: Illustration of rate matching with RCC-codes. The

source data rates that can be supported are given as function of the code rate and the number of channels (codes) used.

integer number of subchannels is used. The derivation of (3.4) assumes random spreading sequences and the term ( ? 1) stems from the parallel codes of each user being orthogonal. Approximating the interference as Gaussian gives very accurate, but slightly optimistic results [26,27]. Now the eciency of the system can be calculated as  = Rs =(Rsub N ); (3.6) that is, the total data rate of all users divided by the chip rate. The eciency obtained for bit error rate requirements of 10?3 and 10?6 is shown in Figure 3.7 with N = 128 and Eb =N0 = 10 dB, for constraint lengths equal to 7, 8, 9 and 10. As can be seen the eciency is increased with decreasing code rate. Thus, the extra coding gain obtained by reducing the code rate is larger than the reduction in the ecient signal-to-noise ratio caused by the increased interference. If multi processing gain was to be used for multi rate, the RCC codes could still be used for rate matching to obtain the same total bandwidth when using a given spreading factor that is

3.5. CODING AND RATE MATCHING IN MULTIRATE DS-CDMA

K=7 K=8 K=9 K = 10

1

0.8 Efficiency

31

0.6

0.4

0.2

0 0.1

0.2

0.3

0.4 Code rate, R

0.5

0.6

Figure 3.7: Achievable bandwidth eciency for a multicode DSCDMA system using rate-compatible codes. The target BER is 10?3 (solid line) and 10?6 (dashed line) at Eb =N0 = 10 dB.

changed in steps. In that case, when lowering the code rate, the spreading factor would have to be decreased to maintain the same total bandwidth. It has been shown [83] that the best performance is obtained by using channel code redundancy for spectrum spreading. As a consequence, the performance for a multi-processing gain system should be similar to the results presented for multicode, which is also indicated in [20], where code redundancy is used for the entire spreading.

Appendix: Code Search Results The new RCPC codes are given in the Tables 3.1 to 3.4. The puncturing is given relative to the previous code rate and the additional puncturing position is given by the row and column number, (row, column), in the column \Pos." in the table. Rows and columns are numbered from zero. Also given in the tables are the free distances and 10 terms of the spectra (ad and cd, d = df ; df +1; : : : ; df +9). In

32

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

calculating union bounds on the probability of bit error more than 10 terms may be needed to achieve a good estimate. These terms can be found in [22]. In that report we also present RCC codes with other mother code rates, periods and constraint lengths. The mother codes are given in octal form converting the binary words (g0j ; g1j ; : : : ; gKj ?1) into the corresponding octal words. For the nested codes in Tables 3.5 to 3.8 we only give the additional generator polynomial (in the column \Add. pol.") and the spectrum is given with 15 terms. Observe that no puncturing is performed, and hence, p = 1 must be used in (2.2).

3.5. CODING AND RATE MATCHING IN MULTIRATE DS-CDMA

33

Table 3.1: RCPC codes, K = 7, mother code (117, 127, 155, 171). Pos.

R

df

(0,7) (3,1) (1,2) (3,3) (0,5) (1,0) (0,1) (1,6) (1,4) (2,7) (0,3) (3,5) (3,4) (2,0) (0,2) (2,5) (2,1) (2,6) (3,0) (2,4)

8=32 8=31 8=30 8=29 8=28 8=27 8=26 8=25 8=24 8=23 8=22 8=21 8=20 8=19 8=18 8=17 8=16 8=15 8=14 8=13 8=12

20 19 18 18 17 16 15 15 14 13 13 12 11 11 10 9 8 8 7 6 6

(3,2) 8=11

4

(1,7) 8=10

4

(0,6)

3

8=9

(ad ; d = df ; df + 1; : : : ; df + 9) [cd ; d = df ; df + 1; : : : ; df + 9] (16,0,48,0,56,0,120,0,200,0) [24,0,136,0,256,0,528,0,1040,0] (9,12,21,31,26,42,64,76,105,167) [13,25,59,110,116,187,286,369,550,970] (3,17,20,22,34,40,50,90,114,168) [3,35,53,78,140,182,225,438,617,976] (22,11,25,28,42,59,63,142,186,321) [47,31,80,120,171,287,286,792,1078,2012] (10,22,24,24,39,61,70,139,211,308) [19,56,83,91,166,290,375,748,1236,1934] (5,20,22,25,43,61,78,130,226,321) [7,56,70,89,187,286,418,719,1344,2055] (3,13,24,26,42,58,80,137,224,350) [4,34,70,89,182,270,453,765,1302,2243] (10,23,31,42,67,77,128,251,396,655) [19,66,112,199,356,420,723,1504,2613,4561] (5,18,28,47,64,74,136,237,396,753) [8,48,91,200,338,409,789,1397,2559,5346] (2,15,26,42,53,83,136,245,454,777) [2,34,90,171,256,441,784,1506,2939,5599] (13,19,41,58,77,153,259,462,879,1654) [25,50,179,256,422,886,1593,3016,6272,12733] (5,20,44,59,74,153,292,481,1041,1938) [8,52,192,292,400,885,1829,3302,7829,15383] (1,17,38,61,79,149,326,552,1152,2299) [2,36,142,329,439,873,2065,3897,8739,18970] (15,28,47,85,164,325,621,1295,2745,5557) [33,97,227,457,957,2080,4434,9963,22857,50282] (7,24,43,90,165,322,698,1527,3222,6985) [13,76,180,465,989,2064,5006,12046,27394,65158] (4,18,45,96,172,350,837,1916,4388,9765) [6,65,191,529,1025,2356,6448,15875,39873,97179] (3,12,43,92,180,431,1015,2530,6112,14357) [4,40,196,493,1141,3044,8044,22226,59149, 152186] (16,37,98,225,541,1531,3860,9964,25769,67144) [51,216,469,1620,4233,13623,37711,107431, 303256,855332] (8,34,85,226,664,1800,5248,15309,43261, 123109) [33,160,486,1584,5529,16871,55263,178606, 553158,1712671] (2,32,93,247,794,2551,8291,26808,86097, 276391) [5,147,541,1773,6937,25264,92229,333133, 1184403,4163425] (26,82,287,1097,4079,15286,57851,218486, 821520,3089271) [128,512,2272,10717,46140,196244,834321,3493131,14465684, 59272939] (1,18,79,362,1706,7857,37242,173936,811842, 3800788) [3,122,567,3394,19950,106575,582126,3076908,16003439, 82686326] (9,55,363,2505,16402,106468,701263,4601195,30186318, 198108997) [48,460,3884,34919,279497,2132709,16200442,120276696, 880843487,6383725051] (5,64,831,10025,121580,1470967,17811679,215760251,2613240257, 31651034554) [22,688,13762,224886,3450959,50508269,717401868,9971279387, 136292019062, 1838742372048]

34

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

Table 3.2: RCPC codes, K = 8, mother code (231, 273, 327, 375). Pos.

Rate

df

(3,7) (1,2) (3,3) (1,6) (2,7) (2,3) (0,5) (0,1) (3,4) (3,0) (1,5) (3,6) (0,2) (1,7) (0,0) (1,1) (3,5) (0,3) (2,2) (2,4)

8=32 8=31 8=30 8=29 8=28 8=27 8=26 8=25 8=24 8=23 8=22 8=21 8=20 8=19 8=18 8=17 8=16 8=15 8=14 8=13 8=12

22 20 20 20 19 18 17 16 15 14 14 13 12 11 11 10 9 8 7 7 6

(0,6) 8=11

5

(2,1) 8=10

4

(1,4)

3

8=9

(ad ; d = df ; df + 1; : : : ; df + 9) [cd ; d = df ; df + 1; : : : ; df + 9] (8,16,16,16,40,64,80,112,112,144) [16,32,32,48,144,256,400,624,656,736] (1,3,20,9,27,29,62,103,87,144) [2,7,38,21,74,109,249,534,459,843] (4,13,17,18,37,68,85,102,137,196) [8,24,38,54,133,285,420,564,759,1105] (22,0,41,0,124,0,229,0,416,0) [44,0,117,0,534,0,1250,0,2396,0] (14,12,14,48,58,82,128,170,212,330) [24,30,40,164,250,398,696,1004,1226,2066] (11,12,21,44,52,97,125,169,264,435) [18,27,64,166,223,480,704,939,1601,2762] (6,16,20,46,58,82,140,192,316,504) [8,34,62,180,264,400,772,1116,1906,3416] (3,16,20,43,54,84,138,214,332,523) [4,37,49,187,227,423,737,1266,2107,3507] (2,12,18,40,60,80,136,214,344,658) [2,28,44,156,278,376,744,1286,2148,4632] (2,7,19,38,54,83,152,220,389,730) [3,16,52,133,246,406,825,1339,2503,5101] (6,16,38,48,94,130,268,416,814,1360) [12,36,136,210,464,696,1632,2670,5850,10150] (5,13,37,59,78,154,280,496,956,1775) [8,39,135,250,380,856,1695,3358,6974,13969] (3,11,34,61,81,156,327,617,1147,2293) [4,29,117,266,415,888,2044,4459,8743,18906] (2,10,27,62,86,168,343,720,1372,2907) [2,24,91,275,451,1000,2245,5266,10864,24758] (12,31,54,105,192,412,946,1933,4090,8843) [31,114,255,590,1199,2882,7483,16349,37247, 86814] (8,22,50,114,194,435,1096,2390,5258,12122) [19,72,221,613,1254,3133,8547,20698,49750, 122974] (4,22,42,109,247,537,1347,3232,7687,18791) [12,71,180,575,1647,4081,11231,29823,76944, 203983] (2,18,53,111,264,745,1819,4780,12939,33476) [4,59,250,634,1895,6014,16084,47201,139929, 396198] (1,15,50,117,335,932,2658,7767,22430,64632) [4,54,242,744,2544,8059,25709,83537,267491, 844367] (12,40,144,430,1342,4452,14442,47671,156838, 512411) [40,200,958,3585,13295,49514,180061,659767, 2387663,8525597] (8,32,139,525,1910,7238,27651,106082,403255, 1536319) [33,161,937,4608,19688,86960,376425,1610655, 6782751,28316988] (5,28,170,750,3488,16699,78896,374114,1778661, 8442945) [20,156,1327,7348,42371,238114,1286913,6877412,36434308, 190641896] (1,33,211,1420,9183,60132,398831,2637687,17451221,115514689) [4,216,2075,19053,149116,1156998,8880406,66642637,493512001, 3615034199] (2,45,613,7094,87793,1076253,13173852,161499176,1978878643, 24246490273) [8,696,12085,179739,2758512,40200537,570588787,7958418938, 109313300269,1483942265645]

3.5. CODING AND RATE MATCHING IN MULTIRATE DS-CDMA

35

Table 3.3: RCPC codes, K = 9, mother code (473, 513, 671, 765). Pos.

Rate

df

(1,7) (1,3) (0,4) (1,0) (0,6) (0,2) (1,5) (0,1) (3,7) (3,0) (2,4) (2,2) (3,3) (2,1) (2,5) (2,7) (3,6) (0,5) (3,2) (3,1)

8=32 8=31 8=30 8=29 8=28 8=27 8=26 8=25 8=24 8=23 8=22 8=21 8=20 8=19 8=18 8=17 8=16 8=15 8=14 8=13 8=12

24 22 22 21 20 20 19 18 17 16 15 15 14 13 12 11 10 9 8 8 7

(3,4) 8=11

6

(0,3) 8=10

5

(2,0)

4

8=9

(ad ; d = df ; df + 1; : : : ; df + 9) [cd ; d = df ; df + 1; : : : ; df + 9] (8,0,48,0,64,0,184,0,296,0) [8,0,120,0,264,0,888,0,1680,0] (1,3,12,25,26,28,63,102,120,161) [1,3,24,63,79,117,288,482,643,927] (2,14,26,18,36,66,98,136,184,238) [2,24,72,54,142,296,484,722,1072,1346] (2,13,20,25,43,58,106,138,186,273) [2,26,51,80,168,283,529,722,1052,1648] (1,9,26,30,28,63,114,149,192,318) [1,16,66,102,120,279,583,769,1112,1946] (13,15,32,41,55,107,155,234,347,542) [24,39,88,198,243,545,797,1395,2059,3599] (8,20,28,44,63,104,164,249,385,607) [15,51,86,183,301,542,901,1473,2398,4039] (3,23,29,31,71,112,165,286,433,674) [5,57,85,114,344,574,885,1693,2741,4495] (2,17,33,30,76,110,157,316,465,834) [4,40,93,115,360,547,852,1912,2954,5690] (1,15,27,53,67,120,204,333,595,990) [1,34,78,223,301,627,1159,2080,3973,7169] (1,10,35,46,76,146,220,403,693,1237) [1,22,118,191,347,785,1262,2612,4838,9137] (10,30,45,91,148,250,475,814,1577,2993) [24,90,183,448,811,1519,3086,5784,12246,24772] (9,27,47,80,168,269,551,1002,2027,3914) [19,87,187,386,947,1614,3779,7294,16183,33377] (7,25,51,85,163,325,658,1322,2697,5310) [16,82,203,431,899,2050,4589,9989,22387,47490] (5,24,51,93,190,379,826,1780,3649,7791) [12,68,236,473,1078,2491,5986,14082,31843, 73453] (4,23,45,99,193,483,1055,2348,5087,11674) [7,80,203,519,1137,3329,7970,19762,46844, 116727] (1,24,55,117,244,608,1476,3500,8500,20484) [2,84,259,667,1581,4519,11960,31957,85063, 222016] (1,18,48,127,294,767,2008,5143,13543,35262) [2,65,232,701,1989,5905,17700,49728,144785, 409875] (2,11,64,142,434,1124,3471,9310,28645,79046) [3,37,328,853,3241,9608,33861,100715,341977, 1027221] (16,62,189,599,1930,6223,20216,66525,215877, 703732) [64,336,1292,4884,18677,68219,248532,904240,3214036,11413823] (13,61,257,936,3336,13034,50215,191750,733640, 2807154) [45,374,1907,8634,36562,164392,712095,3029920,12777898, 53447184] (12,79,375,1760,8163,39311,188642,899159, 4293421,20505608) [63,593,3504,20091,113079,628670,3409099,18161647, 95892869, 501736812] (13,97,691,4544,30013,200845,1339738,8941398,59644975, 397967014) [70,904,8493,69701,554339,4328175,32989738,247784867, 1836537355,13480325914] (27,305,3998,48216,594522,7332689,90321934,1112732554, 13708983360,168890375732) [331,5049,89888,1363286,20267735,292032883,4119804239, 57180625021,783652328404, 10629800394340]

36

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

Table 3.4: RCPC codes, K = 10, mother code (1173, 1325, 1467,

1751). Pos.

Rate

df

(0,7) (0,3) (0,5) (0,1) (0,6) (0,2) (0,4) (0,0) (1,7) (1,3) (2,5) (2,1) (3,6) (3,2) (3,4) (3,7) (3,3) (2,0) (1,2) (3,5)

8=32 8=31 8=30 8=29 8=28 8=27 8=26 8=25 8=24 8=23 8=22 8=21 8=20 8=19 8=18 8=17 8=16 8=15 8=14 8=13 8=12

27 25 24 23 23 21 21 20 20 18 17 16 15 14 13 12 11 10 9 8 7

(1,1) 8=11

6

(3,0) 8=10

5

(2,4)

4

8=9

(ad ; d = df ; df + 1; : : : ; df + 9) [cd ; d = df ; df + 1; : : : ; df + 9] (24,32,0,40,96,96,80,136,208,368) [56,80,0,224,432,464,432,704,1184,2320] (3,21,22,18,46,80,100,99,160,265) [7,51,54,68,229,398,459,535,854,1590] (2,22,18,26,52,74,96,120,174,298) [2,62,36,90,264,384,454,620,942,1788] (2,16,26,36,50,69,105,131,220,311) [4,42,67,143,258,329,535,671,1280,1950] (12,36,40,52,60,116,172,180,408,588) [28,100,164,280,292,580,860,1176,2568,3944] (1,13,26,41,56,82,124,164,254,428) [3,31,76,158,279,422,598,918,1589,2769] (14,22,38,56,100,138,160,316,478,810) [36,62,146,258,508,712,906,1944,3162,5642] (10,23,35,73,106,136,209,328,582,903) [26,59,140,347,523,705,1226,2094,3883,6504] (40,0,152,0,304,0,768,0,2192,0) [104,0,704,0,1648,0,4952,0,15984,0] (5,23,50,77,116,170,282,495,813,1471) [15,70,191,369,598,957,1778,3316,5805,11400] (2,26,56,86,114,194,372,554,1134,1938) [6,86,214,424,622,1146,2366,3908,8564,15660] (5,23,58,91,118,249,425,764,1445,2780) [12,88,227,447,665,1490,2777,5599,11473,23267] (6,22,52,104,150,262,550,976,1962,3830) [12,82,222,504,884,1572,3782,7456,15956,33476] (7,22,55,110,167,347,657,1354,2722,5756) [18,95,215,622,921,2315,4651,10948,23454,53008] (4,28,52,106,234,412,910,1826,3998,8880) [8,110,244,588,1420,2908,6960,15464,37292, 87324] (8,20,61,129,268,572,1217,2814,6434,14641) [23,93,293,802,1738,4268,10122,26115,63541, 155657] (7,21,75,156,318,755,1867,4610,11056,26654) [24,92,415,949,2189,6134,16766,45081,117909, 306069] (4,26,80,178,431,1109,2997,7734,20453,53235) [17,99,469,1121,3199,9415,28576,81167,233926, 657319] (4,29,85,236,631,1765,5248,15027,43641,125349) [11,154,524,1716,5312,17093,56775,178782, 566182,1764351] (2,41,117,358,1122,3631,12054,39239,128339, 419084) [3,279,815,3128,11502,41862,154452,554464, 1984577,7014698] (3,26,137,483,1788,6630,25628,99471,381259, 1461357) [16,156,1021,4541,19867,84670,368231,1586324, 6697305,28029205] (3,40,176,870,4093,19388,93764,451294,2166119, 10403809) [29,298,1592,9780,55660,306157,1674910,9014837,47880692, 252069403] (4,62,327,2224,15357,102800,687852,4594776,30776137, 206116491) [29,562,4008,34266,282767,2208921,16890546,126907823, 943845110,6951048262] (12,149,1869,23654,291568,3614879,44854680,556346138, 6900800645,85596739857) [134,2789,44543,700526,10414609,150484071,2133387366, 29765873877,410180559539, 5596118252735]

3.5. CODING AND RATE MATCHING IN MULTIRATE DS-CDMA

37

Table 3.5: Nested codes, K = 7 using R = 1=4 code (117, 127, 155, 171).

Rate Add. pol.

df

1=5

135

25

1=6

173

30

1=7

135

36

1=8

145

40

1=9

137

46

1=10

155

51

(ad ; d = df ; df + 1; : : : ; df + 14) [cd ; d = df ; df + 1; : : : ; df + 14] (1,2,3,0,2,4,4,5,4,9,10,13,9,20,44) [1,4,9,0,6,16,20,22,16,3656,68,47,118,256] (1,2,1,2,1,1,2,3,1,3,10,3,5,12,8) [2,4,2,6,4,3,8,9,4,15,42,19,20,60,40] (4,0,2,0,1,0,4,0,8,0,5,0,9,0,18) [8,0,6,0,4,0,14,0,31,0,25,0,49,0,77] (1,0,3,0,2,0,0,0,5,0,4,0,7,0,5) [1,0,7,0,6,0,0,0,19,0,17,0,28,0,26] (3,0,2,0,0,0,1,0,3,0,4,0,8,0,3) [5,0,6,0,0,0,3,0,9,0,19,0,30,0,12] (2,2,0,0,0,0,2,2,1,0,0,3,2,1,3) [4,4,0,0,0,0,6,6,3,0,0,14,10,4,9]

Table 3.6: Nested codes, K = 8 using R = 1=4 code (231, 273, 327, 375).

Rate Add. pol.

df

1=5

247

28

1=6

275

34

1=7

327

40

1=8

345

45

1=9

353

51

1=10

345

56

(ad ; d = df ; df + 1; : : : ; df + 14) [cd ; d = df ; df + 1; : : : ; df + 14] (2,0,5,0,3,0,11,0,17,0,24,0,41,0) [3,0,15,0,10,0,47,0,90,0,120,0,230,0] (3,0,4,0,1,0,7,0,10,0,18,0,20,0) [5,0,13,0,2,0,29,0,47,0,77,0,117,0] (4,0,2,0,3,0,5,0,7,0,8,0,21,0) [8,0,6,0,11,0,19,0,36,0,36,0,112,0] (1,2,3,1,0,0,0,2,0,6,4,0,2,5) [1,4,9,4,0,0,0,8,0,26,18,0,8,20] (2,2,2,0,0,2,0,1,0,3,0,2,3,2) [4,4,6,0,0,8,0,4,0,14,0,8,11,10] (1,0,5,0,1,0,0,0,3,0,1,0,2,0) [1,0,13,0,4,0,0,0,12,0,6,0,10,0]

38

CHAPTER 3. CONVOLUTIONAL CODES FOR MULTIRATE DS-CDMA

Table 3.7: Nested codes, K = 9 using R = 1=4 code (473, 513, 671, 765).

Rate Add. pol.

df

1=5

657

31

1=6

745

37

1=7

753

44

1=8

517

50

1=9

473

56

1=10

657

62

(ad ; d = df ; df + 1; : : : ; df + 14) [cd ; d = df ; df + 1; : : : ; df + 14] (2,2,2,2,4,3,3,13,9,13,19,15,34,43) [4,4,6,6,22,12,9,68,41,66,109,90,202,258] (1,2,3,1,1,3,2,4,3,6,8,10,12,13) [1,4,9,4,5,10,6,18,11,30,38,52,66,70] (4,0,4,0,1,0,5,0,6,0,11,0,11,0) [8,0,13,0,5,0,20,0,26,0,43,0,62,0] (3,0,4,0,2,0,4,0,2,0,4,0,8,0) [5 0,13,0,9,0,16,0,6,0,17,0,32,0] (2,0,4,0,1,0,1,0,8,0,2,0,5,0) [3,0,11,0,4,0,5,0,30,0,8,0,22,0] (1,2,1,2,1,0,1,1,1,2,3,1,4,0) [2,4,2,6,4,0,4,5,6,6,10,3,16,0]

Table 3.8: Nested codes, K = 10 using R = 1=4 code (1173, 1325, 1467, 1751).

Rate Add. pol.

df

1=5

1371

34

1=6

1563

40

1=7

1275

48

1=8

1731

54

1=9

1247

61

1=10

1173

68

(ad ; d = df ; df + 1; : : : ; df + 14) [cd ; d = df ; df + 1; : : : ; df + 14] (4,0,4,0,8,0,15,0,19,0,43,0,74,0) [7,0,13,0,32,0,68,0,95,0,240,0,416,0] (1,2,2,2,1,2,2,3,3,5,13,13,13,15) [2,4,6,6,2,6,6,13,14,19,58,69,68,79] (4,0,4,0,1,0,4,0,7,0,11,0,17,0) [8,0,12,0,3,0,14,0,28,0,49,0,85,0] (1,2,2,2,1,1,0,2,2,5,2,1,8,2) [2,4,4,6,4,3,0,8,6,17,8,5,38,12] (1,2,3,1,0,1,1,0,2,3,4,1,2,5) [1,4,9,4,0,2,3,0,8,10,16,6,6,22] (2,0,4,0,2,0,1,0,2,0,5,0,4,0) [3,0,11,0,6,0,3,0,9,0,15,0,20,0]

Chapter 4

Sequential Decoding in Wireless Communications 4.1 Introduction As described in Chapter 3, a future wireless system will have to provide a number of di erent services with di erent performance requirements. The coding scheme should have the exibility and give the coding gain that is needed for the various applications. Although the coding schemes described in Chapter 2 and Chapter 3 have the potential of ful lling these requirements for most of the real time services, there might be a need for even more powerful techniques for some data based services that require extremely low error rates. Examples of such applications are bank transfers, image transmission and computer le exchange. Candidate coding schemes that can provide bit error rates of 10?6 and lower at low Eb =N0 are few. A concatenation of convolutional codes and Reed Solomon codes has traditionally been used for obtaining extremely low error rates in for instance deep space communications (see e.g. [85, p. 434]), but has also been reported for use in cellular communications [10]. The drawbacks of this solution are the increased bandwidth induced by the two codes which both add redundancy, and a complex receiver since two codes need to be decoded. Turbo coding [3] is also a strong candidate, with possible support for rate compatibility [39], which achieves a very low bit error rate at low signal to noise ratios. However, the error oor feature of the Turbo codes is related to the interleaver size [71], and it is possible that for the low bit error rates needed in some appli39

40 CHAPTER 4. SEQUENTIAL DECODING IN WIRELESS COMMUNICATIONS cations the required interleaver size in the Turbo code will introduce unacceptable delay even for the higher data rates. A remaining technique with the potential of providing sucient coding gain is the use of very long constraint length (30-50) convolutional codes. For such long constraint lengths Viterbi decoding is impossible due to exponential growth of complexity with the constraint length. The suboptimum sequential types of decoding algorithms however, has a complexity growing linearly with the constraint length, making long constraint length codes decodeable. Sequential decoding of convolutional codes was rst presented by Wozenkraft [87]. An improved algorithm was later introduced by Fano [18] and is now called the Fano algorithm. In the following years variations of a stack algorithm was proposed by Zigangirov and Jelinek [35,91]. A number of contributions to the theory of sequential decoding has been made over the years, and the interested reader is referred to the descriptions and the references in the following textbooks [24,38,54,82]. An overview of di erent sequential decoding algorithms and a comparison between them is presented in [1]. As we shall see sequential decoding is only possible above a certain signal-to-noise (SNR) ratio which depends on the modulation method, the code rate and the channel. We will derive these performance limits for sequential decoding for a number of modulation methods and di erent code rates for communication on a Rayleigh fading channel. The theoretical calculations are supported by simulations and used to indicate the e ect of non ideal interleaving. The applicability of sequential decoding in UMTS (Universal Mobile Telecommunication System) is then discussed.

4.2 Performance Limits on Rayleigh Fading Channels 4.2.1 Calculating the theoretical limits Since the decoding complexity of a sequential decoder is linearly dependent on the constraint length of the code (not exponentially as with Viterbi decoding), a sequential decoder is capable of decoding very long constraint length codes. Very low bit error rates are therefore possible. One of the problems with the use of a sequential decoder is that the number of computations required for decoding a bit is a

4.2. PERFORMANCE LIMITS ON RAYLEIGH FADING CHANNELS

41

random variable. Long bu ers are therefore needed to cope with the varying delay in the decoder. Since the number of computations (and then decoder delay, the time needed to decode a bit) is a random variable, and the bu ers are nite, bu er over ows are unavoidable as the input data rate is constant. The total bit error rate (BER) can be written as Pb = Pe + Pof ; (4.1) where Pe is the undetected bit error rate and Pof is the error contribution from over ows. For convolutional codes the undetected bit error rate Pe decreases exponentially with the constraint length as shown by ensemble average arguments, [82, p. 312]. This relationship has been shown by Yudkin [90] to hold also when using sequential decoding [82, p. 364]. Since the computational complexity is linearly dependent on the constraint length, one can normally choose the constraint length long enough for Pof to dominate the total error rate. The system should therefore be designed such that the over ow probability is suciently low to ful ll the system requirements. There are several alternative actions to be taken in case of over ow: (1) the decoder can be resynchronized and the decoding continued, (2) the frame can be erased (more on this later), or (3) the uncoded bits can be output in case of a systematic encoder. If the channel is too noisy it is obvious that the decoder will have severe problems. In the following we calculate the signal-to-noise ratios for which sequential decoding is possible on a Rayleigh fading channel. It has been shown that the number of computations, C , required to decode one information bit for a sequential decoding algorithm is given by the so called Pareto distribution [82, p. 361] P (C  L) < AL? ; (4.2) where A is some constant and  is the Pareto exponent. The value of the Pareto exponent is found from (see [82] or [38]) (4.3) R = E0() ; R being the code rate and E0 () is the Gallager function, given by (see e.g. [24,38,86])

E0() = ? log2

q ?1 X X

Q?1 r=0

k=0

1 P (k)P (rjk) +1

!1+

;

(4.4)

42 CHAPTER 4. SEQUENTIAL DECODING IN WIRELESS COMMUNICATIONS where q is the number of input levels and Q is the number of output levels, P (k) denotes a priori probabilities and P (rjk) denotes the probability of receiving r given that k was transmitted. Since the distribution of computations is Pareto it is straight forward to show that the density function will equal

fC (c) = Ac?(+1);

(4.5)

A (Li? ? 1): E [C i ] = Llim !1 i ? 

(4.6)

and the i'th moment is

From this it follows that if the Pareto exponent   1, then the mean value of the number of computations will not be bounded. We also see that if   2 then the variance of the number of computations is not bounded. One therefore wishes to operate the sequential decoder at a signal to noise ratio (SNR) where the Pareto exponent is above 2. The Pareto exponent as a function of Eb =N0 can be found by evaluating (4.3). The Pareto exponent for hard and soft decisions on an additive white Gaussian noise (AWGN) channel can be found in many references (e.g. [38]). For a Rayleigh fading channel and hard decisions it can be found by inserting the bit error rate for the given modulation and detection method into the expression for the Gallager function, and then solving iteratively for the signal to noise ratio that satis es (4.3). Figure 4.1 and Figure 4.2 shows the Pareto exponent as a function of Eb =N0 for binary phase shift keying (BPSK), di erential BPSK (DBPSK) which is incoherently detected, and coherent and non coherent FSK with di erent coding rates. The Eb =N0 value is given per information bit. The bit error rates for uncoded transmission on Rayleigh fading channels with di erent modulation/detection methods can be found in [73, p. 774]. As we can see from Figure 4.1 and Figure 4.2, the Pareto exponent varies for di erent modulation and detection methods and for di erent coding rates. Table 4.1 gives the theoretically lowest Eb =N0 ratio where a sequential decoder can operate on a Rayleigh fading channel with hard decisions. It should be mentioned that the calculations done here assume a memoryless channel, and we therefore need perfect interleaving to obtain these results.

43

4.2. PERFORMANCE LIMITS ON RAYLEIGH FADING CHANNELS

8 7

Pareto exponent, ρ

6 5 BPSK R=1/4 BPSK R=1/3 BPSK R=1/2 BPSK R=2/3 BPSK R=3/4 DBPSK R=1/4 DBPSK R=1/3 DBPSK R=1/2 DBPSK R=2/3 DBPSK R=3/4

4 3 2 1 0

10

20

30 40 Eb / N0 [dB]

50

60

70

Figure 4.1: The Pareto exponent as function of Eb=N0 for BPSK

and binary DBPSK for di erent code rates and hard decisions.

4.2.2 Theoretical Limits with Soft Decisions It is well known that soft decisions improve the bit error rate performance of the communication when Viterbi decoding is used. When applying sequential decoding soft decisions also reduce the Eb =N0 needed for a given computational complexity. For AWGN channels this soft decision gain is between 2 and 3 dB depending on the coding rate (see [38, p. 308]). For a Rayleigh fading channel and Viterbi decoding we normally achieve much more coding gain by using soft decisions than what we achieve for AWGN channels. It is therefore of interest to see how much can be gained for the computational complexity of a sequential decoder with soft decisions and a Rayleigh fading channel. Assuming BPSK modulation on a Rayleigh fading channel with AWGN, the probability density of received level r, given that symbol 1 was transmitted, is equal to

fR (rj1) = fX (r)  fN (r);

(4.7)

44 CHAPTER 4. SEQUENTIAL DECODING IN WIRELESS COMMUNICATIONS 8 7

Pareto exponent, ρ

6 5 Coh. FSK R=1/4 Coh. FSK R=1/3 Coh. FSK R=1/2 Coh. FSK R=2/3 Coh. FSK R=3/4 Incoh. FSK R=1/4 Incoh. FSK R=1/3 Incoh. FSK R=1/2 Incoh. FSK R=2/3 Incoh. FSK R=3/4

4 3 2 1 0

10

20

30

40 50 E / N [dB] b

60

70

80

0

Figure 4.2: The Pareto exponent as function of Eb=N0 for coherent and non coherent FSK for di erent code rates and hard decisions.

where fX (x) and fN (n) are the density functions of the Rayleigh and Gaussian distributions respectively, and * denotes convolution. To see why we have the density function given in (4.7) consider the model of the channel shown in Figure 4.3. Two stochastic variables being Rayleigh and Gaussian distributed respectively, are summed. The result is a random variable with density function given by the convolution of the Rayleigh and Gaussian density functions. Due to symmetry we have

fR (rj0) = fR (?rj1): The expression for the Gallager function will now be [6] E0 () = ? log2

Z X q ?1 r

k=0

1 P (k)fR(rjk) +1

!1+

dr;

(4.8)

(4.9)

where the integral is over the continuous output space. This expression can be evaluated numerically to give the theoretical performance with soft decisions. Figure 4.4 shows the Pareto exponent for di erent

45

4.3. SIMULATION MODEL AND RESULTS

Table 4.1: Theoretical limits for sequential decoding on Rayleigh

fading channel with hard decisions, for di erent modulation methods and code rates. Eb =N0 Coherent DPSK Coherent Non BPSK Binary Coherent FSK FSK R = 1=4 9.3 dB 12.8 dB 12.3 dB 15.8 dB R = 1=3 10.6 dB 13.9 dB 13.6 dB 16.9 dB R = 1=2 14.0 dB 17.1 dB 17.0 dB 20.1 dB R = 2=3 18.9 dB 21.9 dB 21.9 dB 25.0 dB R = 3=4 22.5 dB 25.5 dB 25.5 dB 28.6 dB Transmitted "1" or "0"

Sum of Rayleigh and Gaussian distributed variable x

Rayleigh fading

fX (x)

n

j

fR (r 1)

or fR (rj0)

Additive white Gaussian noise

fN (n)

Figure 4.3: Schematic model of a Rayleigh fading channel. code rates for BPSK modulation. The theoretical limits are summarized in Table 4.2. Also the gain achieved by soft decisions compared to hard decisions is given in the table. As can be seen the gain is larger for the higher code rates.

4.3 Simulation Model and Results 4.3.1 Simulation Model Description Simulations are performed in order to see the degradation induced by a non ideal decoder, and to obtain results for nite interleaving. A systematic convolutional encoder with constraint length 36 and code rate R = 1=2 is used for encoding the source data bits. This code has generator polynomial 714461625313 in octal notation, which is an op-

46 CHAPTER 4. SEQUENTIAL DECODING IN WIRELESS COMMUNICATIONS 8 7

Pareto exponent, ρ

6 5 4 3

Rate R=1/4 Rate R=1/3 Rate R=1/2 Rate R=2/3 Rate R=3/4

2 1 0

5

10 15 Eb / N0 [dB]

20

25

Figure 4.4: The Pareto exponent as function of Eb=N0 for BPSK on Rayleigh fading channel with soft decisions.

timum distance pro le1 systematic encoder [36]. The coded bits are interleaved and then input to a transmitter lter and a BPSK modulator. Finally the modulated signal is transmitted on a Rayleigh fading channel with additive white Gaussian noise. At the receiver the signal is coherently demodulated, and perfect phase estimates are assumed. The convolutional code is sequentially decoded using the Fano algorithm (see e.g. [24] for a description of the Fano algorithm). In order to simulate computational complexity and over ow, a cost function is applied based on a DSP (Digital Signal Processor) implementation of the decoder [63]. This decoder has speed a factor of approximately 2 and a data bu er corresponding to 2640 channel bits at information data rate 64 kbit/s (20 ms bu ering delay). 1 Note that an optimum distance pro le code (see e.g. [36] or [85, p. 349]) is

not the same as an optimum distance spectrum code de ned in Chapter 2.

47

4.3. SIMULATION MODEL AND RESULTS

Table 4.2: Theoretical limits for sequential decoding on Rayleigh

fading channel with soft decisions ent code rates. Code R = 1=4 R = 1=3 rate R Required 5.9 dB 6.5 dB Eb =N0 Soft 3.4 dB 4.1 dB decision gain

and BPSK modulation, for di er-

R = 1=2 R = 2=3 R = 3=4 8.0 dB

10.0 dB

11.3 dB

6.0 dB

8.9 dB

11.2 dB

4.3.2 Results on Computational Complexity The theoretical calculations done in the previous sections assume a memoryless channel, and in order to verify those results by simulations, perfect interleaving (uncorrelated fading) is assumed. Figure 4.5 shows the simulated over ow rate for hard and soft decisions. We see that the Eb =N0 where the over ow rate gets low corresponds rather well with the theoretical calculations. Above this limit one can achieve as low over ow probability as wanted by using a faster HW for implementing the decoder. The simulated decoder is a rather slow decoder since the speed factor is only 2. Hardware implementations will have much higher speed factors. Results for some nite interleaving depths are given in Figure 4.6, for the case with soft decision decoding. The normalized doppler frequency, fd = Fd  Tb , is 0.01, Fd being the doppler frequency and Tb being the bit duration. For these simulations a block interleaver was used. As we can see, by using an interleaver depth of 50, we loose less than 1 dB compared to perfect interleaving. Some gain will also be achieved by utilizing diversity. Results from [6] show that for a non coherent system with coding rate R = 1=2 and soft decisions, the gain by utilizing optimal diversity is approximately 2 dB. Almost the whole gain is achieved by just two paths diversity.

48 CHAPTER 4. SEQUENTIAL DECODING IN WIRELESS COMMUNICATIONS 10

Overflow rate

10

10

10

10

0

−1

−2

−3

−4

Hard decision Soft decision 10

−5

2

4

6

8

10 12 Eb /N0 [dB]

14

16

18

Figure 4.5: The over ow rate as a function of average Eb=N0 for

coherent BPSK with perfect interleaving, obtained by simulations.

4.3.3 Bit Error Rate Results Bit error rate results are not extremely interesting to investigate since they can easily be improved, with a very modest complexity increase, by increasing the constraint length. Some results from simulations are however, provided in Figure 4.7 to show what can be expected. In the simulations, we had 120, 70 and 30 decoding errors at Eb =N0 equal to 8, 9 and 10 dB respectively. Over owed frames are not included. It should also be noted that the step size2 in the Fano algorithm is not optimized to yield minimum error probability since the over ow rate was a more critical parameter for this slow decoder. 2 The metric of the Fano algorithm is compared to a threshold in order to decide

whether to backtrace or continue forward in the code tree. The step size is the increment by which the threshold is changed during decoding to account for an increasing metric along the correct path.

49

4.4. APPLICABILITY IN WIRELESS COMMUNICATIONS 10

Overflow rate

10

10

10

10

0

−1

−2

−3

−4

4

Interleaving 50x50 Interleaving 30x30 Interleaving 20x20 Perfect interleaving 6

8

10

12

14

E /N [dB] b

0

Figure 4.6: Over ow rate as function of Eb=N0 for BPSK with di erent interleaving lengths and soft decisions, fd = 0:01.

4.4 Applicability in wireless communications 4.4.1 Error rate We see from the results presented in the previous sections that sequential decoding of convolutional codes can ful ll the BER requirements for data services in future mobile communication systems. Very few, if any, alternative methods can provide the same low error rates at such low Eb =N0 values. The results presented are without utilizing diversity, and the expected diversity gain makes sequential decoding even more promising [6]. During the encoding process zeros are regularly inserted (referred to as ushing) to have independent frames and to make synchronization easier when over ows occur. Knowledge about the ushbits is utilized by the Fano algorithm in the decoding process to improve the decisions. However, it is still possible to make single errors at the end of the frame before the ushbits. These errors can not be corrected as we reach the end of the frame, because there are no more data to indicate the choice of a wrong path. If the frame size, or number of bits between each ushing of the encoder, is too

50 CHAPTER 4. SEQUENTIAL DECODING IN WIRELESS COMMUNICATIONS 10

−7

BER

10

−6

10

10

−8

−9

6

7

8

9 Eb /N0 [dB]

10

11

12

Figure 4.7: Simulated bit error rate for BPSK on Rayleigh fading

channel with sequential decoding of systematic convolutional code with constraint length 36, perfect interleaving is assumed, 120, 70 and 30 errors respectively, for the three simulated Eb =N0 points. small, the BER performance will degrade due to these errors. The end e ects can be reduced by optimizing the step size for BER instead of over ows. In a circuit switched application where the frames can be very long this will not be a problem. Fast enough hardware for suciently low over ow probability should be implementable since even software solutions exist for medium data rates (64 kbit/s) [63].

4.4.2 ARQ Systems Some kind of alarm must be implemented to indicate to the decoder when the input bu ers are being lled and an over ow is about to occur. The decoder will then know that there is an over ow and will take appropriate actions. Resynchronization of the decoder in case of an over ow can be quite cumbersome. If an over ow occurs a retransmission can alternatively be asked for. In the case of an over ow it is likely that there would have been undetected errors as

4.4. APPLICABILITY IN WIRELESS COMMUNICATIONS

51

well due to noisy channel conditions. With this scheme we have a reliable ARQ system [16, 79]. Code combining ARQ schemes have been proposed in [41]. These retransmission scenarios require the use of limited length frames with tail bits to make the frames independent. We need a number of tail bits equal to the code memory, and since the constraint length of a code used with sequential decoding is high, the frames must be rather long to ensure that the fractional rate loss3 is not too high. Fractional rate loss must be traded against throughput. Over ows due to deep fades can be detected soon, and retransmission can be asked for at an early stage of the decoding process.

4.4.3 Multiple and Variable Rate Multiple and variable rate was discussed in Chapter 3, and is believed to be an important feature. Support for multiple rates can be achieved by using codes of di erent rational rates R = k=n. This does not a ect the complexity of a sequential decoder the same way that it does for a Viterbi decoder. Another solution is puncturing of the code to obtain di erent rates with the same encoder and decoder. It should be mentioned that puncturing has been reported to have a more detrimental e ect on sequential decoding than on Viterbi decoding [58]. This is the case for both over ow rate and bit error rate. Also, when puncturing a code it is not necessarily possible to obtain codes that are good enough to come close to the theoretical bounds. The metric should be changed when changing code rate since the Fano metric4 is code-rate dependent. Results have shown that it is advantageous to match the code to the channel data rate in a multichannel system like multicode CDMA (see [21, 23] and Chapter 3). By puncturing such that the code is rate compatible (see Chapter 3) it should also be possible to have variable rates. Using rate compatible codes, incremental redundancy coding is feasible since new redundancy bits are added and no bits are removed when lowering the rate of a rate compatible code. This may be advantageous in packet switched networks where 3 Fractional rate loss is the loss because of transmission of known ush bits

which do not carry any information, but are helpfull in the decoding as well as making the frames independent of each other, see [85, p. 268]. 4 The Fano metric, which was rst introduced by Fano in [18], is the metric that is used with sequential decoding. It was shown by Massey [56] to be the optimum metric with respect to computational complexity for sequential decoding.

52 CHAPTER 4. SEQUENTIAL DECODING IN WIRELESS COMMUNICATIONS extra redundancy can be transmitted instead of retransmitting the whole packet. The data rates that can be supported with this coding scheme is depending on what doppler frequencies can be expected. It is reasonable to believe that there will be lower doppler requirements for the higher data rates.

4.4.4 Delay

For data transmission some delay can be a orded in most applications. The delay with sequential decoding is dominated by the need for bu ering and the interleaving delay. For a xed size interleaver, the interleaving delay will be low for high data rates. When the data rate is low, small input bu ers are required, but the interleaving delay will be large (if same xed interleaver size is used). It is desirable to have a constant over ow rate. The over ow rate is proportional to (sB )?, s being the speed factor of the decoder and B is the bu er size. In order to keep the over ow rate constant when changing the data rate the bu er size must be inversely proportional to the speed factor. Since the speed factor is inversely proportional to the data rate for a given decoder, the bu er size is proportional to the data rate. The bu ering delay is then constant. The total delay is

 = int + B ;

(4.10)

where the interleaving delay int is given by (4.11) int = Dint (DRint ? 2) + 1 ; chan where Dint is the interleaver depth and Rchan is the channel bit rate. The bu ering delay B is similarly found from B = R B : (4.12) chan To get an idea about the size of the two delay contributions consider the application that was simulated. The speed factor of two can be increased to at least 8 by using the latest signal processor. Let us assume that another factor of 5 can be achieved by HW implementation (this is probably highly underestimated). Since the speed factor has changed by a factor of 20, the bu ering delay will change from 20 ms (see Section 4.3.1) to 1 ms. The total delay with a 50  50

53

4.4. APPLICABILITY IN WIRELESS COMMUNICATIONS

block-interleaver is given in Table 4.3. We see that for this example the interleaver delay will dominate the total delay except at 2 Mbit/s bit rate. With faster HW the interleaver delay will dominate even at this data rate.

Table 4.3: Total delay with 50  50 block-interleaver and speed factor of 40 (1 ms bu ering delay).

Data rate 64 kbit/s Delay 19.8 ms

256 kbit/s 5.7 ms

512 kbit/s 3.3 ms

2 Mbit/s 1.60 ms

When using sequential decoding the whole frame need not be received in order to realize that a retransmission is necessary, and consequently this may reduce the delay for a packet transmission system. In a system employing sequential decoding the error probability can be traded for lower delay since over ow is related to bu er size. It is then possible to have a system that can adapt to the user requirements by having dynamic bu er sizes.

54 CHAPTER 4. SEQUENTIAL DECODING IN WIRELESS COMMUNICATIONS

Chapter 5

Robustness of DS-CDMA Multiuser Detectors 5.1 Introduction In any multiuser communication scheme there is a need for several users to share the same channel. As future wireless personal communication systems (PCS) will have to provide a large range of di erent services with high data rates, a high spectral eciency is required in order to support the increasing number of users. Such a system should also be designed to allow the implementation of low-cost infrastructure and handhelds. Sharing the common communication channel can be accomplished in several ways. A traditional scheme is to assign each user a speci c frequency band, resulting in Frequency Division Multiple Access (FDMA). The now so widely used GSM system for mobile wireless communication allocates each user speci c time slots for transmission on the channel. This method is known as Time Division Multiple Access (TDMA). In direct-sequence codedivision multiple-access (DS-CDMA) users are separated by employing user-speci c codes. Orthogonality between the users can rarely be obtained at the receiver side however, since the di erent users normally transmit asynchronously1 . In addition, a non ideal channel introduces intersymbol interference causing the waveforms to lose their orthogonality. For a practical system the performance will be in uenced also by interference from users in adjacent cells. With a 1 In the down link (from the base station to the mobile station), the signals for

di erent users will be synchronized.

55

56

CHAPTER 5. ROBUSTNESS OF DS-CDMA MULTIUSER DETECTORS

frequency reuse factor of one as much as 50 percent of the total interference might come from adjacent cells [17, 84]. Unless fast and accurate power control and/or certain advanced detection schemes are applied, a strong user may partially, or even completely mask out a weaker user. This is known as the near-far problem. There are two obvious approaches to the problem of combating the impairments caused by the other users in the system. One might apply a powerful coding scheme, consider the interference as random noise and use the whole or a part of the bandwidth expansion for channel code redundancy. This approach has been argued to yield good performance in CDMA systems by Viterbi in [83]. One of the problems with this approach is the lack of good very low rate codes2 . In the second approach one tries to reduce the interference in the cell by performing a linear transformation on the signal, or alternatively, by estimating and subtracting the interference caused by the other users. In this chapter we investigate such receiver structures called multiuser detectors (MUD) and interference cancellers (IC) respectively. The optimum (ML) multiuser detector was derived by Verdu [81], but is much to complex for practical use. Research has therefore focused on nding good suboptimum detectors. Such receivers have been subject to much investigation in recent years [57], but usually with the assumption of perfect estimation of channel parameters. Recently it has been indicated that a multiuser detector called the decorrelator, is very sensitive to errors in the time delay estimation [68]. Similar studies have claimed on the other hand, that other algorithms are robust against such errors [5, 9]. None of these investigations compare di erent algorithms. They do not use the same model for the errors, and neither do they use the same system settings. It is therefore dicult to reach any general conclusions on the di erences in robustness for those multiuser detectors. The scope of this chapter is to present a more comprehensive investigation of the robustness of multiuser detectors evaluated under the same conditions. After describing the system model, an overview of the studied detectors is given. We then evaluate and compare the performance of the various multiuser detectors with and without errors in timing and phase estimates. The near-far resistance of the multiuser detectors under these more realistic conditions is also investigated. 2 New potentially good codes for this application is reported by Frenger, Orten

and Ottosson in [20]

57

5.2. SYSTEM MODEL

5.2 System Model In our DS-CDMA system all the users transmit asynchronously (uplink) and simultaneously on the same physical channel and in the same frequency band, as illustrated in Figure 5.1. The signals coming from each user will be added and the composite signal received at base station, is then

r(t) =

K X k=1

sk (t ? k ) + n(t);

(5.1)

where k is the time delay of user k modeled as a uniformly distributed random variable on [0; T ), T being the symbol period, and n(t) is the complex additive white Gaussian noise (AWGN) with independent real and imaginary parts, both with spectral density N0 =2. The signal transmitted by user k is expressed as p X (5.2) sk (t) = Ek bk (i)~s(t ? iT ); i

where the symbol energy is given by Ek and bk (i) 2 f1g is the transmitted BPSK symbol from user k at time instant i. For a modulated radio system the user speci c waveform s~(t) at carrier frequency ! is given by r s~k (t) = T2 ck (t) cos(!t + k ); (5.3) where ck (t) is the user speci c spreading code for user k, and k is the phase of the modulator. The spreading code ck (t) is given by the signature sequence such that

ck (t) =

X

N ?1 i=0

ck(i)p(t ? iTc):

(5.4)

where c(ki) 2 f1g is the ith chip of user k, p(t) is the chip pulse shape de ned on [0; Tc) and N is the spreading factor given by the ratio N = T=Tc. Based on the signal that arrives at the receiver front end, given in (5.1), the receiver will have to detect all the di erent users. It is assumed that the receiver has knowledge about the individual users' spreading codes, but the phases and time delays must be estimated. We now proceed with a description of the detectors that are studied.

58

CHAPTER 5. ROBUSTNESS OF DS-CDMA MULTIUSER DETECTORS s1 (t bk (i)

1

sk (t

k s~k (t)

? )

sK (t

..

? k )

? K )

r (t)

..

n(t)

Figure 5.1: Model of a DS-CDMA System with asynchronous users.

5.3 Conventional Detector If there were only one user present in the system, the obvious, and in AWGN channels optimum, way of doing the detection is correlating the received signal with the considered user's waveform. This is equivalent to matched ltering, and hence the names correlation receiver and matched lter receiver are also commonly used in the literature. The conventional detector can of course also be applied to a system with more than one user, and the output of the conventional detector for user k at time i is then

yk (i) =

Z (i+1)T +

k

iT +k

r(t)~sk (t ? iT ? k ) dt:

(5.5)

This may be expressed as

p

yk (i) = Ek bk (i) +

K p X X l=1 l6=k

El

j

bl (j )Rkl (i ? j ) + nk (i)

where Z1 1 ck (t ? k )cl (t + mT ? l ) dt; Rkl (m) = cos(k ? l ) T ?1

(5.6)

(5.7)

k = k ? !k and nk (i) is colored noised. As we can see from the detector described in (5.5) we get the bit of the desired user plus a term consisting of cross correlations between that user and all other users, as well as a noise term. The cross correlation terms are called multiple access interference (MAI). By taking the sign of yk (i), estimates of the transmitted bits are obtained from ^bk (i) = sgn(yk (i)): (5.8)

59

5.4. MULTIUSER DETECTORS

The conventional detector is the optimum multiuser detector when we have orthogonal waveforms at the receiver. It is however, not optimal for asynchronous systems and/or dispersive channels where the waveforms can not be made orthogonal. The conventional detector will perform well as long as the cross correlations between the waveforms of the di erent users are low. This is the case, for instance in the downlink of a mobile system, if there is little time dispersion induced by the channel.

5.4 Multiuser Detectors The output of the matched lter receiver given by (5.5) contains interference from the other users in the system (cross correlation terms). Since the spreading codes of all users are assumed known to the receiver, and all users are to be detected, a better result can be obtained by combined detection of the users. The maximum likelihood (ML) detector [81] must compute 2KM correlation metrics, where M is the block length, and select the K sequences that yields the largest metric. This may be formulated as an ML sequence estimation problem and solved by using the Viterbi algorithm. Unless the number of users is very low, this scheme is too complex for implementation. Much effort has therefore been devoted to nding suboptimum detectors with complexity growing linearly with the number of users K .

5.4.1 Decorrelating Detector The cross correlation terms from the matched lter reduce the noise margin of the communication link, and should in some way be removed or reduced. Using a block based model of the system [55], with a block length of M bits per user we can write the output from the matched lters (conventional detector) as

y = RWb + n;

(5.9)

where

y = [yT (1); yT (2); : : : ; yT (M )]T

y(i) = [y1(i); y2(i); : : : ; yK (i)]

T

(5.10)

60

CHAPTER 5. ROBUSTNESS OF DS-CDMA MULTIUSER DETECTORS

and

b = [bT (1); bT (2); : : : ; bT (M )]T

b(i) = [b1(i); b2(i); : : : ; bK (i)]T :

(5.11)

The vector n is colored additive Gaussian noise and the amplitude matrix W is an MK  MK block diagonal matrix containing the amplitudes of all users at all times during the block length such that [55] ~ ;W ~ ;::: ;W ~) W = diag(W and

p p

p

~ = diag( E1; E2 ; : : : ; EK ); W

p

(5.12) (5.13)

where Ek is the amplitude of user k. Furthermore we have

0R(0) R(?1) 0 : : : : : : : : : : : : 0 1 B R(1) R(0) R(?1) 0 : : : 0 C B CC ; (5.14) R=B : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : B C @ 0 ::: 0 R(1) R(0) R(?1)A 0

0

R(1) R(0) and the entries Rkl (m) in the correlation matrix R(m) are given by :::

0

(5.7). From (5.9) we see that the correlation between the users can be completely removed by multiplication with the inverse of R. The decisions can then be obtained from

b^ dec = sgn(R?1y):

(5.15)

All users are now completely decorrelated if the correlation matrix is correctly estimated, hence, the name decorrelator. A disadvantage with this detector is that while eliminating the cross correlation the linear transformation ampli es the noise. This is similar to the noise enhancement property of the zero forcing equalizer. Due to noise enhancement, the performance of the decorrelator will be signi cantly degraded if the cross correlation is high, if there are many users, or if the signal to noise ratio is very low. Also, the correlation matrix needs to be estimated continuously for a non-static channel.

61

5.4. MULTIUSER DETECTORS

5.4.2 Minimum Mean-Square-Error Detector The transformation done by the decorrelator completely decorrelates the users at the cost of increased noise. A minimum mean-squareerror (MMSE) detector, on the other hand, performs the linear transformation on the matched lter outputs that minimizes the mean square error (MSE). It can be shown that the detected bit sequence for this transformation is [88]

 N 0 ? 2 ? 1 b^ MMSE = sgn (R + 2 W ) y : 

(5.16)

As the signal-to-noise ratio goes to in nity the decorrelator and the MMSE detectors become equal. For low signal-to-noise ratios the MMSE detector outperforms the decorrelator due to the noise enhancement property of the decorrelator. As we can see from (5.16) the noise and signal amplitudes must be known, or estimated, when using this detector.

5.4.3 Interference Cancellation A di erent approach to multiuser detection is that of rst detecting one or several users using the conventional detector, then estimate the contribution to the received signal and subtract it. The whole procedure might then be executed for all users and in several stages. This detection method is called interference cancellation. Two main types exist; successive - and parallel interference cancellation.

5.4.4 Successive Interference Cancellation In successive interference cancellation (SIC) one user at a time is detected. Each user's signal is successively regenerated and then subtracted (cancelled) from the composite signal [69]. For every new user being detected and subtracted, the total interference is reduced, and the detection of subsequent users will be more reliable. When doing the detection this way it seems natural to rank the users according to their powers, such that the stronger user is detected rst. This ranking results in a renumbering of users according to

E1 > E2 > : : : > E K ; 0

0

0

(5.17)

62

CHAPTER 5. ROBUSTNESS OF DS-CDMA MULTIUSER DETECTORS

where k0 is the reordered user number. The reordering is advantageous both because detection of a strong user can be done more accurately than detection of a weak user, and the interference that is subtracted is larger for a strong user. Consequently, all users bene t from the ordered detection. Now the received low-pass equivalent signal before applying the conventional receiver to user k0 is

rk (t) = r(t) ? 0

X

k0 ?1

l

0

=1

s^l (t ? ^l );

(5.18)

0

0

0

where s^l (t ? l ) is the regenerated signal resulting from user l0 . In the estimation of s^l (t ? ^l ) either a nonlinear device based on decisions for user l0 or a linear device based on the matched lter outputs can be used. We will in the following use the nonlinear approach; decisions are taken by the conventional receiver, and these are then used to regenerate the signal and subtract it from the composite signal. The decisions based on using the conventional detector can be denoted ^bk (i) = sgn(yk (i)); (5.19) where yk (i) is the matched lter output with rk (t) as input. If the powers of the users change, reordering of the users is necessary. Every detection done in the rst stage of the cancellation is not always correct, and more information can be retrieved by performing successive cancellations. One can generalize the cancellation procedure described above to n stages, where n > 1 [37], and 0

0

0

0

0

0

0

r(n?1)(t) = r(t) ? k0

0

X

k0 ?1 l

0

=1

s^(n) (t ? ^ l0

l0

)?

0

K X 0

l

0

=k +1

s^(l n?1)(t ? ^l ) (5.20) 0

0

0

is the estimate of the received signal at stage n before using the conventional receiver to detect user k0 . At each stage the resulting users may be reordered. The decisions are then ^bk(n) (i) = sgn(yk(n?1)(i)): (5.21) 0

0

where yk(n?1)(i) is the k0 th matched lter output with rk(n?1) as input. 0

5.4.5 Parallel Interference Cancellation

0

In SIC the users were cancelled in the order of their powers, and the interference was subtracted successively as it was estimated. Assume

63

5.5. PERFORMANCE WITH ESTIMATION ERRORS

that estimates of all users are obtained by a matched lter receiver. Then let all such estimates for all users, except user k, be subtracted from the received signal. This resulting received signal for user k can then again be input to the matched lter receiver to nd an improved estimate for the signal of user k. With this procedure the interference to all users is cancelled in parallel based on the decisions from the previous stage. As with SIC the cancellation can be performed in several stages to improve the performance. Such a cancellation scheme is known as parallel interference cancellation (PIC), and is described in [43, 88]. A block schematic illustration of the principle operation is illustrated in Figure 5.2. The new received signal at stage n after cancellation of the interference and before detection of user k is

X r(n) (t) = r(t) ? s^(n?1)(t ? ^ ): K

k

l=1 l6=k

l

l

(5.22)

The estimate s^(l n?1) is obtained by making decisions and then regenerate the signal. As the zeroth stage we use the conventional detector given by (5.5) and (5.8). Applying the conventional detector on rk(n)(t) in (5.22) and taking decisions based on the output, we have ^bk(n) (i) = sgn(yk(n)(i)); (5.23) where yk(n) (i) is the matched lter output for user k with rk(n) as input. A comparison of parallel and successive interference cancellation is provided in [70].

5.5 Performance with Estimation Errors 5.5.1 Introduction

In order to compare the performance of di erent DS-CDMA multiuser detectors, we have simulated the system described in Section 5.2. In the receiver we have applied the conventional detector, the decorrelator and the MMSE detector as well as SIC and PIC. Instead of using the exact delay, k , and phase, k , the detectors are assumed to work with an estimated delay, ^k , and an estimated phase, ^k . Based on these estimates, an estimate, R^ , of the correlation matrix

64

CHAPTER 5. ROBUSTNESS OF DS-CDMA MULTIUSER DETECTORS Correlate with s~1 (t)

K

-

Correlate with r (t)

-

Correlate with

(0)

l=2

s^

(0)

s^2 (t

Correlate with

XK l ll=1 6=2

s^

Correlate with

(t

s~2 (t)

? ^l )

(0)

s^K (t

Estimate sK (t)

s~K (t)

-

s~1 (t)

? ^l )

s2 (t)

(0)

+

(t

Estimate

s~2 (t)

+

s^1 (t

s1 (t)

Xl

+

(0)

Estimate

Xl

K ?1 l=1

(0)

s^

Correlate with (t

? ^l )

s~K (t)

? ^ ) 1

(1)

? ^ )

(1)

? ^ )

(1)

? ^K )

Estimate s^1 (t s1 (t)

1

? ^ ) 2

Estimate s^2 (t s2 (t)

2

? ^K ) Estimate s^K (t sK (t)

Figure 5.2: Illustration of parallel interference cancellation. is obtained. The estimation errors are the same for all users, and they are assumed constant during a block of data. Data blocks of 30 bits were used in our simulations. Estimated delays and phases are given as ^k = k +   Tc (5.24)

^k = k + ; (5.25) where  is the synchronization error relative to the chip period, and  is the absolute phase estimation error. Both delay, k , and phase, k , are assumed to be uniformly distributed on the symbol interval and [0; 2), respectively. For all the results presented we have K = 10 users, a spreading factor of N = 32, random spreading sequences and BPSK modulation. Figure 5.3 shows the performance of the detectors described in Section 5.3 and 5.4 with perfect chip synchronization, no phase estimation errors and perfect power control. These results serve as a

65

5.5. PERFORMANCE WITH ESTIMATION ERRORS

10

Bit Error Rate

10

10

10

10

−1

−2

−3

Conventional Parallel 1 stage Parallel 2 stages Successive 1 stage Successive 2 stages Decorrelator MMSE

−4

−5

0

2

4

6 Eb / N0 [dB]

8

10

12

Figure 5.3: Bit error rate for the di erent detectors as function of

Eb =N0 with perfect synchronization ( = 0), perfect phase estimates ( = 0) and equally strong users. The number of users is K = 10 and the processing gain is N = 32. reference for what can be achieved for this system under ideal conditions. We see that there is little di erence between the decorrelator and the MMSE detector. The MMSE detector is slightly better due to the noise enhancement caused by the decorrelator. The performance of these two detectors improves and becomes equal as the signal to noise ratio increases. For the lower and medium signal to noise ratios, successive interference cancellation (2 stages) yields the best performance among the detectors presented. However, like the parallel interference canceller, the successive canceller reaches a oor on the bit error rate.

5.5.2 Synchronization Errors Synchronization is a dicult task in a DS-CDMA system. Due to high chip rate, interference and noise, timing can not be exactly estimated and errors will therefore exist. It is thus of interest to investigate

66

CHAPTER 5. ROBUSTNESS OF DS-CDMA MULTIUSER DETECTORS

10

−2

Bit Error Rate

10

−1

10

10

Conventional Parallel 1 stage Parallel 2 stages Successive 1 stage Successive 2 stages Decorrelator MMSE

−3

−4

0

0.05

0.1

0.15 0.2 0.25 Synchronization error [t/T ]

0.3

0.35

0.4

c

Figure 5.4: Bit error rate as function of the relative synchronization

error for di erent multiuser detectors at Eb =N0 = 8 dB, perfect phase estimates and equally strong users. There are K = 10 users and the processing gain is N = 32.

the e ect of imperfect timing estimation on the di erent detectors. We apply a constant synchronization error (Tc) to all users. In a practical system all users will of course not experience the same synchronization error, and this scenario can therefore be considered as worst case. Figure 5.4 shows the performance of the detectors as a function of the synchronization error for Eb =N0 = 8 dB. As can be seen, the multiuser detectors are more sensitive to synchronization errors than the conventional detector. Even for a synchronization error of only 10 percent of the chip interval (0:1Tc), the degradation is signi cant. From the results in Figure 5.4 it can be seen that the multiuser detectors are equally sensitive to synchronization errors, and they all approach the conventional receiver as the synchronization error increases.

67

5.5. PERFORMANCE WITH ESTIMATION ERRORS −1

10

−2

Bit Error Rate

10

Conv. PIC 1 PIC 2 SIC 1 SIC 2 Decorr. MMSE

−3

10

−4

10

0

5

10

15 20 Phase error [degrees]

25

30

Figure 5.5: Bit error rate as function of the phase error  for di erent

multiuser detectors at Eb =N0 = 8 dB, perfect synchronization and equally strong users. There are K = 10 users and the processing gain is N = 32.

5.5.3 Phase error In a realistic situation the phase estimates will also be imperfectly estimated. For an AWGN channel the estimates will be rather accurate, but in mobile radio systems one can not expect negligible phase estimation errors. In a manner similar to what we did for timing errors, we assume a given constant phase error . We present results that show the performance that can be expected when all users experience the same amount of phase estimation error. The bit error rate for the detectors as a function of the phase error at Eb =N0 = 8 dB is given in Figure 5.5. All the detectors have approximately the same degradation as the phase error increases. The e ects of phase estimation errors on the multiuser detector performance seem, however, to be less severe than that of synchronization errors. Synchronization errors and phase errors are normally present simultaneously, and to have an idea about the combined e ect, the bit error rate as function of Eb =N0 is plotted in Figure 5.6 with a synchronization error of 0:2Tc ,

68

CHAPTER 5. ROBUSTNESS OF DS-CDMA MULTIUSER DETECTORS

Bit Error Rate

10

10

10

10

−1

−2

Conventional Parallel 1 stage Parallel 2 stages Successive 1 stage Successive 2 stages Decorrelator MMSE

−3

−4

0

2

4

6 E / N [dB] b

8

10

12

0

Figure 5.6: Bit error rate for the multiuser detectors with synchro-

nization error of 20% ( = 0:2) and phase error of  = 10 degrees. There are K = 10 users and the processing gain is N = 32. and a phase error of 10 degrees. Note that the scaling of the BERaxis is di erent from that of Figure 5.3. The bit error rates for the best detectors at Eb =N0 = 10 dB, have increased by approximately a factor of 10 compared to that shown in Figure 5.3.

5.5.4 Near-far robustness Fast and accurate power control is hard to obtain, and it is therefore likely that the users will have di erent powers. The decorrelator, which removes the interference, is ideally not sensitive to di erent signal powers. Successive interference cancellers utilize the fact that di erent users have di erent strength by detecting the stronger user rst. Figure 5.7 presents results for the detectors as function of the near-far ratio with perfect synchronization and perfect phase estimation at Eb =N0 = 8 dB. By near-far ratio we mean the di erence between the energy Ek , of each of the interfering users, and the energy E1 of the desired user. All the multiuser detectors are rather

69

5.5. PERFORMANCE WITH ESTIMATION ERRORS

10

Bit Error Rate

10

10

10

10

0

Conv. PIC 1 PIC 2 SIC 1 SIC 2 Decorr.

−1

−2

−3

−4

−6

−4

−2

0

2 4 Ek − E1 [dB]

6

8

10

Figure 5.7: Bit error rate for the multiuser detectors as function of

the near-far ratio, no synchronization error and no phase error. There are K = 10 users, the processing gain is N = 32 and Eb =N0 = 8 dB . insensitive to the variations in the interfering signal strengths, and are thus near-far resistant. The decorrelator removes all interference, and it is therefore not in uenced at all by other users being stronger. The performance of the rst stage of the successive interference canceller changes abruptly at Ek ? E1 = 0 dB. For Ek ? E1 < 0 dB user one is the stronger user and will therefore be detected rst by the successive canceller. No other user interference has then been removed, and the detector is equivalent to the conventional detector. On the other hand, when Ek ? E1 > 0 user 1 is the weaker among the users, and it will thus be the last one to be detected. The estimate of all other users' interference has been subtracted, and the resulting performance is good. To see the near-far robustness of the detectors in presence of channel parameter estimation errors, the performance was evaluated with errors in time and phase. In Figure 5.8 the bit error rates for di erent near-far ratios are plotted when the synchronization error is equal to 0:2Tc , and the phase error is equal to 10 degrees. The operating Eb =N0 is still 8 dB. We now see that none

70

CHAPTER 5. ROBUSTNESS OF DS-CDMA MULTIUSER DETECTORS

10

Conv. PIC 1 PIC 2 SIC 1 SIC 2 Decorr.

−1

Bit Error Rate

10

0

10

10

−2

−3

−6

−4

−2

0

2 4 Ek − E1 [dB]

6

8

10

Figure 5.8: Bit error ratio for the multiuser detectors as function of

the near-far ratio with synchronization error equal to 0:2Tc ( = 0:2), phase error equal to 10 degrees and Eb =N0 = 8dB. of the detectors are near-far resistant. Compared to the case with perfect parameter estimation, they have all come much closer to the conventional detector, and their sensitivity to changes in the near-far ratio is the same as for the conventional detector for Ek ? E1 ' 2 dB. None of the multiuser detectors seem to be more (or less) near-far resistant than the other detectors. In practical systems with non-ideal estimators it is therefore vital to have good power control regardless of which detector is used. Note that in the near-far plots the MMSE detector has been taken out since it can hardly be distinguished from the decorrelator.

Chapter 6

Conclusions and Future Work 6.1 Conclusions In Chapter 2 we presented new and improved convolutional codes with rates 1=2, 1=3, and 1=4 for constraint lengths ranging from 3 to 13. Furthermore, these codes are optimum distance spectrum (ODS) codes. The codes were shown to outperform previously tabulated convolutional codes for both Gaussian and Rayleigh fading channels. This is due to the fact that ODS codes have maximum free distance, and a lower information error weight. As much as 0.6 dB improvement was observed for a Rayleigh fading channel. When searching optimum puncturing patterns for RCPC codes, it is important to have a best possible starting code, or mother code, since this is likely to provide the best punctured code family. New families of RCPC codes with many rates and a high resolution in code rates have been found for constraint lengths ranging from 7 to 10, originating from ODS mother codes of rate 1=4. In the search a puncturing period of 8 was used. Performance evaluations show only a small loss compared to the existing optimum convolutional codes of the same rate. It has been shown that the choice of mother code rate does not a ect the performance much. Starting with a low code rate searching an RCPC code family yields a large span of possible code rates. This range of code rates makes a communication system exible, and the codes may be used in for example rate matching where di erent source data rates are matched onto the channel rates of the multichannel communica71

72

CHAPTER 6. CONCLUSIONS AND FUTURE WORK

tion system. In order to obtain a ner grid of available code rates, the puncturing period may be increased. Searching RCPC codes from the highest code rate and down, starting with the optimum puncturing pattern, will in general not improve the performance. The highest rate is of course an exception since it is obtained from the optimum puncturing for the given puncturing period. Furthermore, lower rate codes have been obtained by performing a nested code search, nding the best additional generator polynomials. Starting with rate 1/4 ODS codes, all the nested codes found were maximum free distance codes. The codes presented are evaluated for the application of rate matching in a multicode DS-CDMA system. The results show that the eciency of the system is increasing with decreasing code rate. In some wireless applications there is a need for extremely powerful codes in order to have suciently low error probability. The use of long constraint length convolutional codes and sequential decoding has therefore been investigated. Theoretical performance limits for sequential decoding on fading channels have been calculated for hard and soft decisions, for di erent modulation methods and coding rates. Simulation results show a good match with the theoretical bounds. For a rate 1/2 code with coherent BPSK, sequential decoding can be done at Eb =N0 equal to 8 dB. According to the simulations the degradation when using non ideal interleaving is small. For a block interleaver of size 50  50 the loss is less than 1 dB compared to perfect interleaving. All results are without utilizing diversity, and some gain will be achieved with diversity. Future wireless mobile communication systems must provide a range of di erent data type services, and the results from this work show that sequential decoding is a good candidate coding scheme for many of the applications. Much research on DS-CDMA systems has focused on nding good suboptimum detectors that jointly detects several users. We have studied the performance of a DS-CDMA system using a conventional matched lter detector and di erent multiuser detectors in the presence of errors in the channel parameters. The studied multiuser detectors are the decorrelator, the MMSE detector and the successive and parallel interference cancellation detectors. According to the results presented there is no signi cant di erence in the robustness of the di erent detectors. The performance degrades rapidly as the synchronization error increases, and all detectors experience almost the same degradation. Phase errors also a ect the di erent detectors

6.2. FUTURE WORK

73

equally. For moderate phase errors however, the impact on performance is rather small. Furthermore the near-far resistance of the detectors are severely a ected by synchronization and phase errors. We can therefore conclude that the studied detectors are not robust against parameter estimation errors in a realistic situation. In spite of this discouraging result, the multiuser detectors still outperform the conventional matched lter detector, but the question is whether this rather small bene t in performance is worth the increase in complexity - a complexity that may be better spent on the decoding of a powerful channel code.

6.2 Future Work Higher constraint length ODS codes should be found because, as the implementation technology improves, Viterbi decoding will be possible for higher constraint lengths. These codes may also be the basis for searching more low rate nested codes and RCPC codes. Optimum distance pro le (ODP) codes with high constraint lengths may be used for deriving rate compatible puncturing patterns for use with sequential decoding. The puncturing patterns should then be optimized according to the optimum distance pro le criterion instead of optimum distance spectrum. Further work on sequential decoding on fading channels might include non perfect channel phase estimation and diversity combining. Performance loss with shorter codes more applicable to packet oriented transmission could be investigated. If possible, an elegant solution to the fractional rate loss problem for packet data services is the application of a tailbiting algorithm similar to that described for Viterbi decoding in [13]. For future work it will be interesting to investigate the robustness of multiuser detectors with a di erent loading of the system. It is reasonable to believe that pulse shaping will have impact on the robustness against synchronization errors, and therefore investigations should be done with pulse shaping other than rectangular. Pulse shaping also a ects the correlation properties of the signature waveforms. The gain obtained with multiuser detection is rather small under non-ideal conditions, and more robust schemes should be investigated. Alternatives for improving the performance could also be combined multiuser detection and channel decoding as described for instance in [28, 45, 77] with convolutional codes and [75] with Turbo codes. A diculty with

74

CHAPTER 6. CONCLUSIONS AND FUTURE WORK

these combined decoding/detection schemes is the high complexity and long delay, and methods overcoming these problems should be developed. A work that is to be elaborated on in more detail is that of using channel coding alone for spectrum spreading [20]. This method should be compared to conventional CDMA systems with multiuser detection, and the problem of synchronization should be investigated.

Bibliography [1] J. B. Andersson and S. Mohan, \Sequential coding algorithms: A survey and cost analysis," IEEE Transactions on Communications, vol. COM-32, no. 2, pp. 169{176, February 1984. [2] G. Begin and D. Haccoun, \High-rate punctured convolutional codes: structure properties and construction technique," IEEE Transactions on Communications, vol. 37, no. 12, pp. 1381{1385, November 1989. [3] C. Berrou, A. Glavieux, and P. Thitimajshima, \Near Shannon limit error control-correcting coding and decoding: Turbo-codes (1)," in Proc. IEEE International Conference on Communications, Geneva, Switzerland, 1993, pp. 1064{1070. [4] I. E. Bocharova and B. D. Kudryashov, \Rational rate punctured convolutional codes for soft-decision Viterbi decoding," IEEE Transactions on Information Theory, vol. 43, no. 4, pp. 1305{ 1313, July 1997. [5] R. M. Buehrer, A. Kaul, S. Striglis, and B. D. Woerner, \Analysis of DS-CDMA parallel interference cancellation with phase and timing errors," IEEE Journal on Selected Areas in Communications, vol. 14, no. 8, pp. 1522{1535, October 1996. [6] J. A. Catipovic and A. B. Baggeroer, \Performance of sequential decoding of convolutional codes over fully fading ocean accoustic channels," IEEE Journal of Oceanic Engineering, vol. 15, no. 1, pp. 1{7, January 1990. [7] M. Cedervall and R. Johannesson, \A fast algorithm for computing distance spectrum of convolutional codes," IEEE Trans75

76

[8]

[9]

[10]

[11] [12] [13] [14]

[15]

[16]

BIBLIOGRAPHY

actions on Information Theory, vol. 35, no. 6, pp. 1146{1159, November 1989. J. Chang, D. Hwang, and M. Lin, \Some extended results on the search for good convolutional codes," IEEE Transactions on Information Theory, vol. 43, no. 5, pp. 1682{1697, September 1997. F. C. Cheng and J. M. Holtzman, \E ect of tracking error on DS/CDMA successive interference cancellation," in Proc. IEEE Communication Theory Mini-Conference, San Francisco, USA, 1994, pp. 166{170. R. D. Cideciyan and E. Eleftheriou, \Concatenated ReedSolomon/convolutional coding scheme for transmission in CDMA cellular systems," in Proc. IEEE Vehicular Technology Conference, Stockholm, Sweden, June 1994, pp. 1369{1373. D. C. Cox, \Wireless personal communications: What is it?," IEEE Personal Communications, pp. 20{35, April 1995. R. V. Cox and P. Kroon, \Low bit-rate speech coders for multimedia communication," IEEE Communications Magazine, vol. 34, no. 12, pp. 34{41, December 1996. R. V. Cox and C. E. Sundberg, \An ecient adaptive circular Viterbi algorithm for decoding generalized tailbiting convolutional codes," VT, vol. 43, no. 1, pp. 57{68, February 1994. J. S. da Silva, B. Arroyo-Fernandez, B. Barani, J. Pereira, and D. Ikonomou, \Mobile and personal communications: ACTS and beyond," in Wireless Communications, TDMA versus CDMA, S. G. Glisic and P. A. Leppanen, Eds., Dortrecht, Netherlands, 1997, Kluwer Academic Publishers. D. G. Daut, J. W. Modestino, and L. D. Wismer, \New short constraint length convolutional code constructions for selected rational rates," IEEE Transactions on Information Theory, vol. IT-28, no. 5, pp. 794{800, September 1982. A. Drukarev and D. J. Costello, \Hybrid arq error control using sequential decoding," IEEE Transactions on Information Theory, vol. IT-29, pp. 521{535, July 1983.

BIBLIOGRAPHY

77

[17] A. Duel-Hallen, J. Holtzman, and Z. Zvonar, \Multiuser detection for CDMA systems," IEEE Personal Communications, vol. 2, no. 2, pp. 46{58, April 1995. [18] R. M. Fano, \A heuristic discussion of probabilistic decoding," IRE Trans. Inf. Theory, vol. IT-9, no. 2, pp. 64{74, 1963. [19] P. Frenger, P. Orten, and T. Ottosson, \Convolutional codes with optimum distance spectrum," Submitted to IEEE Communications Letters, July 1997. [20] P. Frenger, P. Orten, and T. Ottosson, \Combined coding and spreading in CDMA systems using maximum free distance convolutional codes," subm. to IEEE Vehicular Technology Conference, 1998. [21] P. Frenger, P. Orten, T. Ottosson, and A. Svensson, \Rate compatible convolutional codes for multirate DS-CDMA systems," Submitted to IEEE Transactions on Communications, August 1997. [22] P. Frenger, P. Orten, T. Ottosson, and A. Svensson, \Rate compatible convolutional codes for multichannel systems," Tech. Rep. 19, Department of Information Theory, Chalmers University of Technology, Sweden, September 1997. [23] P. Frenger, P. Orten, T. Ottosson, and A. Svensson, \Rate matching in multichannel systems using RCPC-codes," in Proc. IEEE Vehicular Technology Conference, Arizona, USA, 1997, pp. 354{357. [24] R. G. Gallager, Information theory and reliable communication, John Wiley and Sons, 1968. [25] V. K. Garg, K. Smolik, and J. E. Wilkes, Applications of CDMA in wireless/personal communications, Prentice Hall, Upper Saddle River, NJ, 1997. [26] E. Geraniotis and B. Gha ari, \Performance of binary and quaternary direct-sequence spread-spectrum multiple-access systems with random signature sequences," IEEE Transactions on Communications, vol. 39, no. 5, pp. 713{724, May 1991.

78

BIBLIOGRAPHY

[27] E. Geraniotis and M. B. Pursley, \Error probability for directsequence spread-spectrum multiple-access communications-Part II: Approximations," IEEE Transactions on Communications, vol. COM-30, no. 5, pp. 985{995, May 1982. [28] T. R. Giallorenzi and S. G. Wilson, \Multiuser ML sequence estimator for convolutionally coded asynchronous DS-CDMA systems," IEEE Transactions on Communications, vol. 44, no. 8, pp. 997{1008, August 1996. [29] D. Haccoun and G. Begin, \High-rate punctured convolutional codes for Viterbi and sequential decoding," IEEE Transactions on Communications, vol. 37, no. 11, pp. 1113{1124, November 1989. [30] J. Hagenauer, \Hybrid ARQ/FEC protocols on fading channels using rate compatible punctured convolutional codes," in ICC, Seattle, USA, 1987, pp. 744{748. [31] J. Hagenauer, \Rate compatible punctured convolutional codes," in Proc. IEEE International Conference on Communications, Seattle, USA, 1987, pp. 1032{1036. [32] J. Hagenauer, \Rate-compatible punctured convolutional codes (RCPC codes) and their applications," IEEE Transactions on Communications, vol. 36, no. 4, pp. 389{400, April 1988. [33] J. Hagenauer, N. Seshadri, and C.-E. Sundberg, \The performance of rate-compatible punctured convolutional codes for future digital mobile radio," in Proc. IEEE Vehicular Technology Conference, New York, USA, 1988, pp. 22{29. [34] J. Hagenauer, N. Seshadri, and C.-E. Sundberg, \The performance of rate-compatible punctured convolutional codes for digital mobile radio," IEEE Transactions on Communications, vol. 38, no. 7, pp. 966{980, July 1990. [35] F. Jelinek, \Fast sequential decoding algorithm using a stack," IBM Journal of Research and Development, November 1969. [36] R. Johannesson, \Robustly optimal rate one-half binary convolutional codes," IEEE Transactions on Information Theory, vol. IT-21, no. 4, pp. 464{468, July 1975.

BIBLIOGRAPHY

79

[37] A. Johansson and A. Svensson, \Multistage interference cancellation in multi-rate DS/CDMA systems," in Proc. IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, Toronto, Canada, 1995, pp. 965{969. [38] G. C. Clark Jr. and J. B. Cain, Error correction coding for digital communicaitons, Plenum Press, 1981. [39] P. Jung, J. Plechinger, M. Dtsch, and F. Berens, \Rate compatible punctured turbo-codes for future mobile radio applications.," to be submitted to IEEE Transactions on Vehicular Technology, 1997. [40] S. Kallel, \Analysis of a type II hybrid ARQ scheme with code combining," IEEE Transactions on Communications, vol. 38, no. 8, pp. 1133{1137, August 1990. [41] S. Kallel and D. Haccoun, \Sequential decoding with ARQ and code combining: A robust hybrid FEC/ARQ system," IEEE Transactions on Communications, vol. 36, no. 7, pp. 773{780, July 1988. [42] S. Kallel and D. Haccoun, \Generalized type II hybrid ARQ scheme using punctured convolutional coding," IEEE Transactions on Communications, vol. 38, no. 11, pp. 1938{1946, November 1990. [43] R. Kohno, H. Imai, M. Hatori, and S. Pasupathy, \An adaptive canceller of cochannel interference for spread spectrum multiple access communication networks on a power line," IEEE Journal on Selected Areas in Communications, vol. 8, no. 4, pp. 691{699, May 1990. [44] M. Kokkonen and K. Kallioj rvi, \Soft decision decoding of binary linear block codes using t-algorithm," in Proc. IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, Helsinki, Finland, September 1997, pp. 1181{ 1185. [45] M-R. Koohrangpour and A. Svensson, \Joint interference cancellation and Viterbi decoding in DS-CDMA," in Proc. IEEE International Symposium on Personal, Indoor and Mobile Radio

80

BIBLIOGRAPHY

Communications, Helsinki, Finland, September 1997, pp. 1161{ 1165.

[46] K. J. Larsen, \Short convolutional codes with maximal free distance for rates 1/2, 1/3, and 1/4," IEEE Transactions on Information Theory, vol. IT-19, pp. 371{372, May 1973. [47] A. Lau and F. R. Kschischang, \Sequential soft-decision decoder for Reed Solomon codes applied to encoded PSK in Rayleigh fading channels," IEEE Transactions on Vehicular Technology, vol. 45, no. 1, pp. 97{104, February 1996. [48] L. H. C. Lee, \New rate-compatible punctured convolutional codes for Viterbi decoding," IEEE Transactions on Communications, vol. 42, no. 12, pp. 3073{3079, December 1994. [49] P. J. Lee, \There are many good periodically time-varying convolutional codes," IEEE Transactions on Information Theory, vol. 35, no. 2, pp. 460{463, March 1089. [50] P. J. Lee, \New short constraint length rate 1/N convolutional codes which minimize the required SNR for given desired bit error rates," IEEE Transactions on Communications, vol. COM33, no. 2, pp. 171{177, February 1985. [51] P. J. Lee, \Further results on rate 1/N convolutional code constructions with minimum required SNR criterion," IEEE Transactions on Communications, vol. COM-34, no. 4, pp. 395{399, April 1986. [52] S. Lefrancois and D. Haccoun, \Search procedures for very low rate quasi-optimal convolutional codes," in Proc. Canadian Conference on Electrical and Computer Engineering, Canada, 1994, pp. 210{213. [53] S. Lefrancois and D. Haccoun, \Search procedures for very low rate quasi-optimal convolutional codes," in Proc. IEEE International Symposium on Information Theory, Trondheim, Norway, 1994, p. 278. [54] S. Lin and D. J. Costello Jr., Error control coding: Fundamentals and applications, Prentice Hall, 1983.

BIBLIOGRAPHY

81

[55] R. Lupas and S. Verdu, \Near-far resistance of multiuser detectors in asynchronous channels," IEEE Transactions on Communications, vol. 38, no. 4, pp. 496{508, April 1990. [56] J. L. Massey, \Variable-length codes and the Fano metric," IEEE Transactions on Information Theory, vol. IT-18, pp. 196{198, 1972. [57] S. Moshavi, \Multi-user detection for DS-CDMA communications," IEEE Communications Magazine, vol. 34, no. 10, pp. 124{136, October 1996. [58] K. Muhammed and K. Ben, \On the performance of sequential and Viterbi decoders for high-rate punctured convolutional codes," IEEE Transactions on Communications, vol. 43, no. 11, pp. 2687{2695, November 1995. [59] P. Noll, \Wideband speech and audio coding," IEEE Communications Magazine, vol. 31, no. 11, pp. 34{44, November 1993. [60] J. P. Odenwalder, Optimal decoding of convolutional codes, Ph.D. dissertation, School of Engineering and Applied Sciences, University of California, Los Angeles, 1970. [61] T. Ojanpera, \Overview of research activities for third generation mobile communication," in Wireless communications, CDMA versus TDMA, S. Glisic and P. Leppanen, Eds., Dortrecht, Netherlands, 1997, pp. 415{446, Kluwer Academic Publishers. [62] T. Ojanpera, J. Skold, J. Castro, L. Girard, and A. Klein, \Comparison of multiple access schemes for UMTS," in Proc. IEEE Vehicular Technology Conference, Phoenix, USA, 1997, pp. 490{ 494. [63] P. Orten, \Simulation of the Fano algorithm for DSP implementation on Inmarsat B high speed data," Tech. Rep. MET 94 006, ABB Corporate Research, Norway, 1994. [64] P. Orten and T. Ottosson, \Robustness of DS-CDMA multiuser detectors," in Proc. IEEE Communication Theory MiniConference, Phoenix, USA, 1997.

82

BIBLIOGRAPHY

[65] P. Orten and A. Svensson, \Sequential decoding in future mobile communications," in Proc. IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, Helsinki, Finland, 1997, pp. 1186{1190. [66] T. Ottosson, \Precoding in multicode DS-CDMA systems," in Proc. IEEE International Symposium on Information Theory, Ulm, Germany, July 1997, p. 351. [67] T. Ottosson and A. Svensson, \Multi-rate schemes in DS/CDMA systems," in Proc. IEEE Vehicular Technology Conference, Chicago, USA, 1995, pp. 1006{1010. [68] S. Parkvall, E. Strom, and B. Ottersten, \The impact of timing errors on the performance of linear DS-CDMA receivers," IEEE Journal on Selected Areas in Communications, vol. 14, no. 8, pp. 1660{1668, October 1996. [69] P. Patel and J. Holtzman, \Analysis of a simple successive interference cancellation scheme in a DS/CDMA system," IEEE Journal on Selected Areas in Communications, vol. 12, no. 5, pp. 796{807, June 1994. [70] P. Patel and J. Holtzman, \Performance comparison of a DS/CDMA system using successive interference cancellation (IC) scheme and a parallel IC scheme under fading," in Proc. IEEE International Conference on Communications, New Orleans, USA, 1994, pp. 510{514. [71] Lance C. Perez, Jan Seghers, and Daniel J. Costello, \A distance spectrum interpretation of Turbo codes," IEEE Transactions on Information Theory, vol. 42, no. 6, pp. 1698{1709, November 1996. [72] R. Prasad and C. K. Chatterjee, \Overview of wireless in local loop," in Wireless Communications, TDMA vs CDMA, S. Glisic and P. Leppaaen, Eds., Dortrecht, Netherlands, 1997, pp. 265{ 290, Kluwer Academic Publishers. [73] J. G. Proakis, Digital communications, McGraw-Hill, New York, 3rd edition, 1995.

BIBLIOGRAPHY

83

[74] T. S. Rappaport, Wireless Communications, Principles and Practice, Prentice Hall, Upper Saddle River, New Jersey, 1996. [75] M. C. Reed, P. D. Alexander, and J. A. Asenstorfer, \Near single user performance using iterative multi-user detection for DSCDMA with Turbo-code decoders," in Proc. IEEE International Symposium on Personal, Indoor and Mobile Radio Communications, Helsinki, Finland, September 1997, pp. 740{744. [76] K. Rijkse, \H.263: Video coding for low-bit-rate communication," IEEE Communications Magazine, vol. 34, no. 12, pp. 42{45, December 1996. [77] Y. Sanada and Q. Wang, \A co-channel interference cancellation technique using orthogonal convolutional codes," IEEE Transactions on Communications, vol. 44, no. 5, pp. 549{556, May 1996. [78] D. L. Schilling, \Overview of wideband CDMA," in Wireless Communications, TDMA versus CDMA, S. Glisic and P. A. Leppanen, Eds., Dortrecht, Netherlands, 1997, pp. 241{244, Kluwer Academic Publishers. [79] N. Shacham, \Performance of ARQ with sequential decoding over one-hop and two-hop radio links," IEEE Transactions on Communications, vol. com-31, pp. 1172{1180, October 1983. [80] S. K. Shin and P. Sweeney, \Ecient sequential decoder for Reed Solomon codes," International Journal of Electronics, vol. 79, no. 1, pp. 1{6, July 1995. [81] S. Verdu, \Minimum probability of error for asynchronous Gaussian multiple-access channels," IEEE Transactions on Information Theory, vol. IT-32, no. 1, pp. 85{96, January 1986. [82] A. Viterbi and J. K. Omura, Principles of digital communication and coding, McGraw-Hill, 1979. [83] A. J. Viterbi, \Very low rate convolutional codes for maximum theoretical performance of spread-spectrum multipleaccess channels," IEEE Journal on Selected Areas in Communications, vol. 8, no. 4, pp. 641{649, May 1990.

84

BIBLIOGRAPHY

[84] A. J. Viterbi, \The orthogonal-random waveform dichotomy for digital mobile personal communications," IEEE Personal Communications, vol. 1, no. 1, pp. 18{24, 1st Quarter 1994. [85] S. Wicker, Error control systems for digital communication and storage, Prentice-Hall, Englewood Cli s, NJ, 1995. [86] S. G. Wilson, Digital modulation and coding, Prentice Hall, Upper Saddle River, NJ, 1996. [87] J. M. Wozenkraft and B. Rei en, \Sequential decoding," The MIT Press, Cambridge, Mass., pp. 25{46, 1961. [88] Z. Xie, R. T. Short, and C. K. Rushforth, \A family of suboptimum detectors for coherent multi-user communications," IEEE Journal on Selected Areas in Communications, vol. 8, no. 4, pp. 683{690, May 1990. [89] Y. Yasuda, K. Kashiki, and Y. Hirata, \High-rate punctured convolutional codes for soft decision Viterbi decoding," IEEE Transactions on Communications, vol. COM-32, no. 3, pp. 315{ 319, March 1984. [90] H. L. Yudkin, Channel state testing in information decoding, Sc.D. Thesis, MIT, Cambridge, Mass., 1964. [91] K. Sh. Zigangirov, \Some sequential decoding procedures," Problemy Peredachi Informatsii, vol. 2, pp. 13{25, 1966.