Nonbinary Orthogonal Modulation in Direct-Sequence Spread Spectrum Communication Systems Michael Y. Tan Home Institution: Clemson University Advisor: Michael B. Pursley Program: SURE Date: August 2, 2002 Abstract: This project involves the analysis and simulation of direct-sequence spread spectrum (DSSS) communication systems that employ nonbinary orthogonal modulation using Walsh-Hadamard signals. The goal of the research is to investigate the performance of this type of modulation for communication over channels with additive white Gaussian noise (AWGN) and multipath interference. Using a receiver that utilizes matched-filters, it is found that the bit energy to noise ratio required in order to maintain a certain probability of symbol error increases nonlinearly as the power ratio between direct-path signal power and multipath signal power decreases linearly. Motivation: The code-division multiple access (CDMA) standard for U.S. digital cellular services is the IS-95 (Interim standard-95). Cellular systems based on this standard include the personal communication service, or PCS. In such a system, the reverse link (mobile station to base station link) uses DSSS technique that employs nonbinary orthogonal modulation using Walsh-Hadamard signals. In another application, high-data-rate wireless local-area networks subject to multipath interference also employ DSSS technique along with nonbinary orthogonal modulation using Walsh-Hadamard signals. Background: Direct-Sequence Spread Spectrum One type of direct-sequence spread spectrum communication system employs a form of spread spectrum modulation in which the narrowband information-bearing data signal is spread over a wide range of frequencies through direct multiplication with a pseudorandom binary sequence, which is a sequence of chips, or elemental pulses, valued -1 and 1 and has noise-like properties. Sequences such as the maximal-length linear feedback shift register sequences, or m-sequences as they are commonly referred to in the literature, and the Gold sequences are often used as the pseudo-random binary sequences. In the system under consideration, m-sequences are used. Figure 1 gives an illustration of the direct-sequence spreading. Figure 1: Direct-sequence spreading M-sequences An m-sequence with period N=2n-1 is generated using a linear feedback shift register (LFSR) with n storage elements. An example of a LFSR with three storage elements is shown in Figure 2. Output 1 1 1 Figure 2: A linear feedback shift register with initial loading 111 One period of an m-sequence generated with this LFSR is 1110010 and has a period of seven. A general n-stage LFSR is shown below in Figure 3 u0 hn u1 hn-1 u2 . . . hn-2 un-1 h1 . . . Figure 3: General n-stage linear feedback shift register h0 where h = (h0,h1,…,hn) is called the feedback tap coefficient vector, and each of its elements is either a 0 or 1, with 0 representing no connection to the mod-2 adder and 1 representing a connection to the mod-2 adder. For all LFSRs with n storage elements, h0=hn=1. If hn = 0, then the left-most storage element has no role in determining which sequence is generated; and if h0 = 0, then there is no feedback. A convenient way to represent the n-stage LFSR is by the polynomial h( x) x n h1 x n 1 h2 x n 2 ... hn 1 x 1 The LFSR in Figure 2 is then written as x 3 x 1 . Polynomial for an m-sequence is a primitive polynomial, and in the system under consideration the primitive polynomial used is x10 x 3 1 . The LFSR with this polynomial has ten storage elements and generates an m-sequence of period 1023 with any non-zero initial loading. M-ary Orthogonal Modulation An M-ary orthogonal signal set is a collection of basis functions {φ0(t), φ 1(t), …, φ M-1(t)} T such that i (t ) * j (t )dt 0 for i≠ j and T is the duration of each basis functions. In 0 other words, each basis function has no projection onto any other basis function within the same orthogonal signal set. The M-ary orthogonal signal set can also be viewed as a symbol alphabet with an order M. In this particular system, an M-order symbol alphabet has M distinct symbols, with each symbol representing one of the orthogonal basis functions. Moreover, in M-ary orthogonal modulation, every log2(M) bits of the information-bearing data signal is represented by one of the M orthogonal signals, or symbols. For a simple example, if binary (M=2) orthogonal modulation is employed, there are two orthogonal basis functions, φ 0 and φ 1, in the signal set. If the data signal is a binary ‘0’, then signal φ 0 will be transmitted; or if the data signal is a binary ‘1’, then signal φ 1 will be transmitted. The system under consideration employs nonbinary orthogonal modulation using WalshHadamard signals, which means that M = 2x, where x is an integer greater than 1, and that the orthogonal signal set is derived from the Walsh-Hadamard signal set. Walsh-Hadamard Signals The Walsh-Hadamard signals can be derived from either the Walsh functions or the rows of the Hadamard matrices. Since there is a close relationship between Walsh functions and the rows of Hadamard matrices, the description of only the Hadamard matrix is sufficient in explaining the orthogonal signal set used in this particular system. The simplest Hadamard matrix is the 2x2 matrix 1 1 H1 = 1 1 for which the row vectors are the orthogonal vectors (+1,+1) and (+1,-1). The 4x4 matrix is 1 1 H2 = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 which has orthogonal row vectors (+1,+1,+1,+1), (+1,-1,+1,-1), (+1,+1,-1,-1), and (+1,1,-1,+1). The H2 matrix can also be represented in terms of the H1 matrix. H H2 = 1 H1 H1 H 1 For any integer x, the relationship between Hx+1 and Hx is H Hx+1 = x H x Hx H x Since each row of a Hadamard matrix is an orthogonal vector, then M orthogonal vectors can be obtained from HN, where N = log2(M). Detailed Description of the System: A block diagram of the system under consideration is shown in Figure 4. n(t) transmitted signal d(t) received signal 64-ary orthogonal modulator delay m-sequence with period 1023 transmitter α channel with AWGN and multipath interference received signal chipmatched filter T Tc discrete-time matched filter 1 m-sequence with period 1023 T discrete-time matched filter 2 . . . . . . decision device k . . . T discrete-time matched filter 64 receiver Figure 4: DSSS system with nonbinary orthogonal modulation using Walsh-Hadamard signals The information-bearing data signal is first modulated by a 64-ary orthogonal modulator, which means that every six bits of the data signal select after one of the 64 WalshHadamard symbols to be transmitted. The output of the 64-ary orthogonal modulator is then directly multiplied by an m-sequence with a period of 1023 and chip rate the same as the orthogonal signal chip rate, thus no actual spreading is performed. After transmission, the signal is passed through a channel with AWGN and multipath interference before arriving at the receiver. At the receiver, the received signal is despread by directly multiplying it with the same m-sequence used at the transmitter. The resulting signal is then filtered by a chip- matched filter and sampled at chip rate. For 64-ary orthogonal modulation using WalshHadamard signals, there are 64 chips per symbol, so there are 64 discrete samples per symbol. The 64 discrete samples are then filtered using 64 parallel discrete-time matched filters. Each of the discrete-time matched filters corresponds to one of the orthogonal vectors in the Hadamard matrix. The output of each of the filters is then sampled at symbol rate and passed through a decision device, which in this particular system is a comparator that outputs a value corresponding to the discrete-time matched filter with the largest output. By knowing which of the discrete-time matched filters produced the largest output, the corresponding symbol can be found, which would represent the most likely transmitted symbol. Simulation Process: The system presented in Figure 4 is simulated via Matlab using analytical processes. The properties of the signals, channel, and receiver in the simulation are as follows: Coherent demodulation is employed The chip waveform is a rectangular pulse with amplitude A and duration Tc. The chip-matched filter has an impulse response in the shape of a rectangle with amplitude B and duration Tc. The multipath delay is at least one chip duration and is always an integer multiple of the chip duration. Actual delays used are 16 chips and 32 chips. The multipath signal causes intrasymbol interference. The multipath signal attenuation factor, α, is between 0 and 1. The sampling rate of the output of the chip-matched filter is equal to the chip rate. The sampling rate of the output of the 64 parallel discrete-time matched filters is equal to the symbol rate. Transmitter Figure 5 shows an illustration of the Matlab implementation of the transmitter for transmission of two signals. The reason for illustrating two signals is to show the synchronization in the multiplication between the signals and the m-sequence, and in the addition between the direct-path signal and the multipath signal. s11 s 21 s s 12 22 . . orthogonal _ vector _ 1 , orthogonal _ vector _ 2 . . . . s164 s 264 p1 p 2 . m _sequence . . p1023 s 21 * p 65 s11 * p1 s *p s *p 66 2 22 12 . . , transmit _ vector _ 2 transmit _ vector _ 1 . . . . s 264 * p128 s164 * p 64 Figure 5: Matlab implementation of the transmitter A 64x64 Hadamard matrix is created, and one of its rows is selected to represent the orthogonal signal to be transmitted. The row chosen is stored in a vector of length 64 called the orthogonal vector. An m-sequence of period 1023 is then generated and stored in a vector of length 1023 called the m-sequence vector. Next the orthogonal vector is directly multiplied by the m-sequence vector element by element, and the result is stored in a vector of length 64 called the transmit vector. Channel Figure 6 shows an illustration of the Matlab implementation of the channel. for delay = 1 chip and attenuation = α: s11 * p1 s * p s * p 11 1 12 2 . composite _ signal _ 1 . . s164 * p64 s163 * p63 s21 * p65 s164 * p64 s * p s * p 21 65 22 66 . composite _ signal _ 2 . . s264 * p128 s263 * p127 Figure 6: Matlab implementation of the channel The transmit vector is added with a delayed and attenuated version of itself to create a composite signal vector. The noise is not included in the Matlab simulation of the channel; instead, it’s included in the simulation of the receiver at the output of the chipmatched filter because the mean and variance of the noise at that node can be obtained analytically. Receiver Figure 7 shows an illustration of the Matlab implementation of the receiver. s11 * p1 * p1 s * p s * p * p 11 1 1 12 2 . Despread _ signal _ 1 composite _ signal _ 1 * m _ sequence . . s164 * p64 s163 * p63 * p64 s21 * p65 s164 * p64 * p65 s * p s * p * p 21 65 66 22 66 . Despread _ signal _ 2 composite _ signal _ 2 * m _ sequence . . s264 * p128 s263 * p127 * p128 n11 n21 n n 12 22 . , noise _ 2 (0, 2 ) . noise _ 1 (0, 2 ) . . . . n164 n264 output _ vector _ 1 D * Despread _ signal _ 1 noise _ 1 output _ vector _ 2 D * Despread _ signal _ 2 noise _ 2 decision _ statistics _ 1 Hadamard _ matrix64 x 64 * output _ vector _ 1 decision _ statistics _ 2 Hadamard _ matrix64 x 64 * output _ vector _ 2 k _ 1 max_ argdecision _ statistics _ 1 k _ 2 max_ argdecision _ statistics _ 2 Figure 7: Matlab implementation of the receiver First, the received composite signal is despread by multiplying it by the m-sequence. The result is stored in a despread signal vector. Next, a noise vector is created whose elements are Gaussian random variables whose mean is zero and variance is the desired variance at the output of the chip-matched filter, which can be obtained analytically using the properties given in the beginning of this section. The output vector is then created to store the discrete sampled output of the chip-matched filter. It is equal to a constant, D, multiplied by the despread signal vector and added with the noise vector. The constant is dependent on the amplitude and sampling time of the chip-matched filter which, using the properties provided earlier, is B*Tc. Next, the outputs of the 64 parallel discrete-time matched filters are generated by multiplying the 64x64 Hadamard matrix with the output vector. The result is stored in a decision statistics vector. Finally, the output of the receiver is obtained by finding the row of the decision statistic vector that contains the largest value. The illustrations of the Matlab implementation of the system shown above used only two signals, but in the actual simulation many signals were obtained from the Hadamard matrix and passed through the same process repeatedly; and during each process, the simulation program made sure that all the vectors are synchronized properly. Results: To verify that the simulation is implemented correctly, the system is first simulated without multipath. The graphs of both the theoretical and actual probability of symbol error versus bit energy to noise ratio for 64-ary orthogonal signaling are plotted together in Figure 8. 10 Probability of Symbol Error Pe 10 10 10 10 10 10 10 10 Symbol Error Probability for 64-ary Orthogonal Signaling 0 -1 -2 -3 -4 -5 -6 -7 -8 0 1 2 3 4 5 Eb/No (dB) 6 7 8 9 Figure 8: Probability of symbol error versus bit energy to noise ratio The two graphs are almost identical so it is verified that the simulation is implemented correctly. The system is then simulated to operate in a channel with AWGN and one multipath interference. The multipath degradation graph is shown in Figure 9. Multipath Degradation 5 4.5 Eb/No Increase in dB 4 3.5 Probability of Symbol Error = 1e-2 1e-3 1e-4 3 2.5 2 1.5 1 0.5 0 0 2 4 6 8 Power Ratio (direct-path / multipath) in dB 10 Figure 9: Multipath degradation This graph shows the increase in bit energy to noise required in order to maintain a certain probability of symbol error as the power ratio varied. Three desired probability of symbol errors were chosen and plotted. From the graph it can be observed that as the desired probability of symbol error and power ratio decreases linearly, the increase in the bit energy to noise ratio required to maintain the desired probability of symbol error increases nonlinearly. Finally, the system is simulated to operate in a channel with AWGN and two multipath components, where the power in each component is half the power of a single multipath component for a given power ratio and direct-path signal power. The multipath degradation graphs for one multipath and two multipaths are simultaneously plotted for symbol error probability of 1e-2. The result is shown in Figure 10. Multipath Degradation for 1e-2 Probability of Symbol Error 3 2.5 Eb/No in dB 2 One Multipath Two Multipaths 1.5 1 0.5 0 0 2 4 6 8 Power Ratio (direct-path / multipath) in dB 10 Figure 10: Multipath degradation for symbol error probability of 1e-2 One note about this graph is that the power ratio is the ratio between the direct-path signal power and the single multipath signal power. From the graph, it can be observed that the difference between the multipath degradation for one multipath and two multipaths increases slightly as the power ratio decreases. However, even the largest multipath degradation difference between the two graphs, which occurs when the power ratio is zero, is still small compared to the multipath degradation that occur at power ratio equal to zero. Therefore, multipath degradation depends primarily on the total power of the multipath component(s) and not on the number of multipath components. Conclusion: The system can operate efficiently for any desired probability of symbol error as long as the power ratio is sufficiently high. However, as the desired probability of symbol error decreases, the range of the power ratio, in which multipath degradation becomes significant, increases, which means that the range of the power ratio that provides efficient system operation decreases. References 1. Michael B. Pursley, “Random Processes in Linear Systems.” New Jersey: Prentice Hall, 2002. 2. The Math Works Inc., “The Student Edition of Matlab: The Ultimate Computing Environment for Technical Education.” New Jersey: Prentice Hall, 1995. 3. Roberto Padovani, “The Application of Spread Spectrum to PCS has Become a Reality: Reverse Link Performance of IS-95 Based Cellular Systems.” IEEE Personal Communications, Third Qrtr, 1994.