RAKE RECEIVER
Short Description
SIMULINK & FPGA IMPLEMENTATION OF A CDMA RAKE RECEIVER...
Description
SOC Implementation of a CDMA RAKE Receiver Wasim Qadir (90101019) Raktim Paul (90101024) Bipul Deka (90101022) Hemanga Kalita (100401005)
B. Tech in ECE (VII th Semester) Institute of Science and Technology Gauhati University January 7, 2013
ABSTRACT In the radio environment, transmitted signals arrive at the receiver either via a direct, unobstructed path or via multiple paths from the reflection, diffraction and scattering of surrounding objects such as buildings and trees. This multipath propagation causes causes the signal at the the receiver to distort and fade significantly, significantly, leading to inter-symbol interference (ISI). Spread spectrum mobile communication systems use RAKE receivers to minimize these communication errors resulting from multipath effects. Ideally, the number of correlators in the RAKE receiver should match the number of multipath signals. In general, however the number of multipath signals is unknown and consequently RAKE receivers either contain an excessive number of correlators or the receiver performs sub optimally. The aim of this project is to design a CDMA Rake Receiver first on MATLAB SIMULINK and then implement it on a chip through FPGA technique. Keywords: CDMA, ISI, Rake Receiver, FPGA and Spread Spectrum.
CONTENTS
Chapter 1: INTRODUCTION 1.1: Background 1.2: Motivation 1.3: Literature Survey 1.4: Problem formulation
Chapter 2: THEORITICAL CONSIDERATION 2.1: CDMA System Concepts 2.2: Rake Receiver 2.3: Spread Spectrum Multiple Access
2.4: Direct Sequence Spread Spectrum 2.5: PN Sequence 2.6: Walsh Code 2.7: Gold Code 2.8: BPSK Modulation 2.9: QPSK Modulation 2.10: Channelization Channelization 2.11: Foundations
Chapter 3: IMPLEMENTATION OF A MATLAB® SIMULINK 3.1: Introduction 3.2: System Model 3.3: Bernoulli Binary Generator 3.4: Walsh Code Generator 3.5: PN Sequence Generator 3.6: Gold Sequence Generator 3.7: BPSK Modulator and Demodulator 3.8: QPSK Modulator and Demodulator 3.9: Spreader 3.10: Multipath Rayleigh Fading Channel 3.11: AWGN Channel 3.12: Find Delay Block 3.13: Despreader 3.14: Integrator and Dump Block 3.15: Maximal Ratio Combiner 3.16: Error Rate Calculation 3.17: Experimental Results and Discussions 3.18: Conclusion Chapter 4: CONCLUSION 4.1: Future Directions 4.2: Reference
RAKE
RECEIVER
ON
LIST OF FIGURES
CHAPTER 1 INTRODUCTION 1.1 Background Background With the technology advancement in today‘s society, the ability to communicate with people on the move has evolved remarkably. However, the transmission quality of the signal has deteriorated due to the modernization of the urban cities with skyscrapers and other manmade obstacles. This results in the transmitted signal having to take multiple paths before reaching the intended receiver. Through the multipath transmissions, the signal is severely distorted and attenuated. Methods have to be developed to improve on the signal quality. Modern CDMA cellular systems employ spread spectrum technology to provide multiuser access. In particular, direct sequence spread spectrum has been adopted for improved spectral efficiency, ease of digital implementation, and soft capacity limit. Each user employs a noise-like wideband signal occupying the entire allocated frequency band for as long as necessary. In this way, each user contributes to the background noise affecting all other users. This additional interference limits the overall system capacity but because time and bandwidth resources are virtually unlimited, the resulting capacity is significantly significantly greater than in conventional cellular systems. • RAKE receiver, used specially specially in CDMA cellular systems, can combine multipath components – To – To improve the signal to noise ratio (SNR) at the receiver – Provides – Provides a separate correlation receiver for each of the multipath signals
– Multipath components are practically uncorrelated when their relative propagation delay exceeds one chip period • The basic idea of A RAKE receiver was first proposed by Price and Green and patented in 1956 • Due to reflections from obstacles a radio channel can consist of many copies of originally transmitted signals having – Different amplitudes, phases, and delays • Multipath can occur in radio channel in various ways – Reflection, diffraction, scattering • The RAKE receiver uses a multipath diversity principle – It rakes the energy from the multipath propagated signal components Figure 1.1 shows an M-ray multipath channel model where t(t) is the transmitted signal and r(t) is the received signal. Each of the M paths has an independent delay, t, and an independent complex time-variant gain, G
Figure 1.1: Multipath Channel Model Figure 1.2 shows a typical four-f inger RAKE receiver where r(t) is the received signal. Since r(t) consists of multipath components, it can split into r(t-τi) independent paths which can be combined with the corresponding channel estimates g(t, τi).
Figure 1.2: Typical Four-Finger W-CDMA RAKE Receiver
1.
2. 3.
4.
5.
In a W-CDMA receiver the following steps take place: Descrambling: Received signals are multiplied by the scrambling code and delayed versions of the scrambling code. The delays are determined by a path searcher prior to descrambling. Each delay corresponds to a separate multipath that will eventually be combined by the Rake receiver. Despreading: The descrambled data of each path are despread by simply multiplying the descrambled data by the spreading code. Integration and Dump: The despread data is then integrated over one symbol period, giving one complex sample output per quadrature phase-shift keying (QPSK) symbol. This process is carried out for all the paths that will be combined by the RAKE receiver. The same symbols obtained via different paths are then combined together using the corresponding channel information using a combining scheme like maximum ratio combing (MRC). The combined outputs are then sent to a simple decision device to decide on the transmitted bits. The objective of the channel estimation block is to estimate the channel phase and amplitude [denoted in Figure 2 as g(t, τi)] for each of the identified paths. Once this information is known, it can be used for combining each path of the received signal.
Rake Receiver Requirements:
• RAKE receiver has to know – Multipath delays -> time delay synchronization – Phases of the multipath components -> carrier phase synchronization – Amplitudes of the multipath components -> amplitude tracking – Number of multipath components -> RAKE allocation – Adaptive channel estimation -> estimates the characteristics of the timevariant channel. • Time delay synchronization is based on correlation measurements – Delay acquisition – Delay tracking by feedback loops (delay-locked loops, DLL) • Due to fading channels conventional phase-locked loop (PLL) cannot be used in carrier and amplitude tracking • Number of available fingers depends on the channel profile and the chip rate – The higher the chip rate, the more resolvable paths there are – A very large number of fingers lead to combining losses and practical implementation problems • Adaptive channel estimation techniques may be: – Pilot carrier based – Decision Directed – Blind Estimation • The main challenges for RAKE receivers operating in fading channels are in receiver synchronization • In practical RAKE receivers synchronization sets some requirements
– Automatic Gain Control (AGC) loop is needed to keep the receiver at the dynamic range of the A/D converter (Analog-to-Digital) – AGC must be fast and accurate enough to keep receiver at the linear range – Frame-by-frame data range change may set higher AGC and A/D converter requirements – The high sampling rates of few tens of MHz and high dynamics of the input signal (80 dB) require fast A/D converters and high resolution
1.2: Motivation The ideal approach is to match the number of multipath signals with the number of correlators, but this would be a waste of resources and add unnecessary expense to the manufacture of the phone. This project aims to incorporate a new signal detection technique within the RAKE receiver, where the detection technique is used to determine the number of correlators required for demodulating the ‗important‘ multipath signals. This technique is unlike the method used in the current CDMA system, which has a fix number of correlators despite the variable number of multipath signals in the channel. The objective of this project is to develop a RAKE receiver through MATLAB® simulation that is able to increase the signal-to-noise ratio (SNR) performance with a minimum number of correlators. The proposed work ultimately aims at implementing a low-complexity RAKE receiver in FPGA domain by taking a few existing design challenges.
1.3: Literature Survey
R. Price and P. E. Green outlines the application of principles of statistical communication theory that had led to the-then new communication system, called Rake [1], designed expressly to work against the combination of
random multi-path and additive noise disturbances. By coding the MarkSpace sequence of symbols to be transmitted into a wide-band signal, it became possible at the receiver to isolate those portions of the transmitted signal arriving with different delays, using correlation detection techniques. Before being recombined by addition, for maximization of the SNR of the sum, these separated signals were continuously and automatically processed so as to 1) apply to each an optimum weighting coefficient, derived from a measurement of the ionosphere response, and to 2) introduce in each an appropriate delay such that they were all brought back into time coincidence. A functional description of the system is then presented. There follows a review of the communication theory studies, which indicate that such systems have certain optimal properties. Details of design of an experimental prototype RAKE system are followed by the results of limited field tests of this prototype.
Gregory E. Bottomley, proposed a generalized RAKE receiver [2] for interference suppression and multipath mitigation. The receiver exploits the fact that time dispersion significantly distorts the interference spectrum from each base station in the downlink of a wideband CDMA system. Compared to the conventional RAKE receiver, this generalized RAKE receiver may have more fingers and different combining weights. The weights are derived from a maximum likelihood formulation, modeling the intra-cell interference as colored Gaussian noise. This low-complexity detector is especially useful for systems with orthogonal downlink spreading codes, as orthogonality between own cell signals cannot be maintained in a frequency-selective channel. The performance of the proposed receiver is quantified via analysis and simulation for different dispersive channels, including Rayleigh fading channels. Gains on the order of 1 – 3.5 dB are achieved, depending on the dispersiveness of the channel, with only a modest increase in the number of fingers. For a Wideband CDMA (WCDMA) system and a realistic mobile radio channel, this translates to capacity gains on the order of 100%. Kyungwhoon Cheun derived error probability expressions for binary phase-shift keying (BPSK) and quaternary phase- shift keying (QPSK)
spread direct-sequence spread-spectrum (DSSS) systems employing random spreading sequences with RAKE receivers [3]. The derived expressions accurately take into account the effect of inter-path interference which usually has been neglected in previous analyses. Selection, equal gain, and maximal ratio techniques are considered for diversity combining. Two possible finger assignment strategies, one based on the instantaneous amplitudes and another based on the average powers of the multipath components, are considered for the assignment of multipath components to the available demodulating fingers in the RAKE receiver. Also, various simple, and in many cases, closedform approximations for the error probabilities are derived and their accuracies are assessed.
T. Ojanperä and R. Prasad , proposed a model [4] based on the concept that in CDMA (Code Division Multiple Access) spread spectrum systems, the chip rate is typically much greater than the flat fading bandwidth of the channel where as conventional modulation techniques require an equalizer to undo the inter-symbol interference (ISI) between adjacent symbols, CDMA spreading codes are designed to provide very low correlation between successive chips. Thus, propagation delay spread in the radio channel merely provides multiple versions of the transmitted signal at the receiver. If these multipath components are delayed in time by more than one chip duration, they appear like uncorrelated noise at a CDMA receiver, and equalization is not required. RAKE receiver, used specially in CDMA cellular systems, can combine multipath components, which are time-delayed versions of the original signal transmission. This combining is done in order to improve the signal to noise ratio (SNR) at the receiver. RAKE receiver attempts to collect the time-shifted versions of the original signal by providing a separate correlation receiver for each of the multipath signals. This can be done due to multipath components are practically uncorrelated from another when their relative propagation delay exceeds a chip period.
This paper presents the basics of RAKE receiver technique, implementation, and design in cellular systems. Also the usage of RAKE receiver is
introduced in CDMA-based systems such as IS-95 and WCDMA (Wideband Code Division Multiple Access).
Athanasios Doukas, Georgios Panitsas, Christos Masouros and Grigorios Kalivas, presented the implementation of a low complexity Rake Receiver (RR) and Channel Estimator (CE) [5] for Direct Sequence Spread Spectrum (DSSS) systems with main scopes to provide adaptability in receiver parameters while keeping the complexity at low levels. The trend in communication systems is towards dynamically adjusting system implementations that can adapt their structure to the continuously changing transmission characteristics. Following this trend, an architecture has been proposed, which is based on the spreading factor of the system, which controls the number of the taps that the CE and the RR will use depending on the current channel conditions. Moreover, based on a resource sharing approach of the main system components, that yet meets the standard bit rates, low complexity is achieved avoiding otherwise necessary complex structures such as complex multipliers. Furthermore the proposed system on FPGA is implemented that gives the ability to measure performance in terms of Bit Error Rate (BER) in addition to that of power dissipation and area. Thus the performance of the system is compared with the performance of a high level system simulation of the same system, accomplishing the same BER levels. Dajana Cassioli, Moe Z. Win, Francesco Vatalaro and Andreas F. Molisch, with the aim of keeping the receiver complexity low considered two schemes for reduced-complexity UWB Rake receivers [6], both of which combine a subset of the available resolved multipath components. The first method, called partial Rake (PRake), combines the first arriving multipath components. The second is known as selective Rake (SRake) and combines the instantaneously strongest multi- path components. We evaluate and compare the link performance of these Rake receivers in different UWB channels, whose models are based on extensive propagation measurements. We quantify the effect of the channel characteristics on the receiver performance, analyzing in particular, the influence of small-scale fading statistics. It is found that for dense channels the performance of the
simpler PRake receiver is almost as good as that of the SRake receiver, even for a small number of fingers. In sparse channels, however, the SRake outperforms the PRake significantly. We also see that for a fixed transmitted energy there is an optimum transmission bandwidth.
1.4: Problem formulation RAKE receivers designed so far for wideband applications are seen to use either PN or Gold sequences. We are trying to realize a simplified RAKE receiver model by virtue of an optimized code sequence. The spreading code used in a receiver plays a very crucial role and hence a proper code generator is very essential. Finally, the design and analysis of the model on a SOC platform viz. FPGA also carries a lot of challenges, which needs to be addressed.
CHAPTER 2 THEORITICAL CONSIDERATION 2.1: CDMA System Concepts
The rapid worldwide growth in cellular telephone subscribers over the past decade has evidently showed that the wireless communication is an effective means for transferring information in today‘s society. Time Division Multiple Access (TDMA) and Frequency Division Multiple Access (FDMA) are two approaches that have contributed to this advancement in the telecommunications industry. However, the widespread success of these communications systems has led to the development for newer and higher technology techniques and standards in order to facilitate high-speed communication for multimedia, data and video in addition to voice transmissions. Code Division Multiple Access (CDMA) is today‘s dominant technology for the evolution of third generation (3G) mobile communications
systems with the development of two major schemes: Wideband CDMA (WCDMA) and CDMA2000. The W-CDMA technology otherwise known as the Universal Mobile Telecommunications System (UMTS) is designed with the intention of providing an upgrade path for the existing Global System for Mobile Communications (GSM) while CDMA2000 is based on the fundamental technologies of IS-95, IS-95A (cdma One) as well as the 2.5G IS-95B systems. These two schemes are similar for their ability to provide high data rates and the efficient use of bandwidth but are incompatible as they use different chip rates. The following sections of this chapter will describe and explain the basic concepts behind the CDMA technology. 2.2: Rake Receiver
Due to reflection from obstacles a wideband radio channel can consists of many copies (multipaths) of originally transmitted signals having different amplitude, phase, and delays. If the signal components arrive more than duration of one chip apart from each other, a Rake Receiver can be used to resolve and combine them. The Rake Receiver uses a multipath diversity principle. The Rake Receiver processes several signal multipath components. The correlator outputs are combined to achieve improved communication reliability and performance. Bit decision based only a single correlation may produce a large bit error rate as the multipath component processed in that correlator can be corrupted by fading. In Rake Receiver, if the output from one correlator is corrupted by fading, the other may not be, and the corrupted signal may be discounted through the weighting process. Figure below shows the block diagram of Rake Receiver.
Figure 2.1: Block Diagram of a Rake Receiver
2.3: Spread Spectrum Multiple Access
The spread spectrum modulation techniques are originally developed for use in the military and intelligence communications systems due to their resistance against jamming signals and low probability of interception (LPI). They are immune to various kinds of noise and multipath distortion. Apart from these advantages, spread spectrum signals also have the capability to support multiple users at the same time by assigning each user with an orthogonal spreading code. A number of modulation techniques have been developed to generate spread spectrum signals. These can be generally classified as direct-sequence spread spectrum (DS-SS), frequency-hopping spread spectrum (FH-SS), time-hopping spread spectrum (TH-SS), chirp modulation and the hybrid combination modulation. We will look into the functionality of the DS-SS and how this modulation technique is incorporated to the CDMA system.
2.4: Direct Sequence Spread Spectrum
The DS-SS Modulation technique is one of the most popular forms of spread spectrum. This is probably due to the simplicity with which direct sequencing can be implemented. Figure shows the basic model and the key characteristics that make up the DS-SS communications system .In this form of modulation, a pseudorandom noise generator creates a spreading code or better known as the pseudonoise (PN) code sequence. Each bit of the original input data is directly modulated with this PN sequence and is represented by multiple bits in the transmitted signal. On the receiving end, only the same PN sequence is capable of demodulating the spread spectrum signal to successfully recover the input data.
Figure 2.2: Basic Model of the Direct Sequence Spread Spectrum Communication System
The bandwidth of the transmitted signal is directly proportional to the number of bits used for the PN sequence. A 7-bit code sequence spreads the signal across a wider frequency band that is seven times greater than a 1-bit code sequence, otherwise termed as having a processing gain of seven. Figure 2.2 illustrates the generation of a DS-SS signal using an exclusive-OR (XOR) operation. The XOR obeys the following rules:
0 xor 0=0
0 xor 1=1
1 xor 0= 1
1 xor 1=0
Figure 2.3: Generation of DS SS signal with processing gain =7
Note that an input data bit of zero causes the PN sequence coding bits to be transmitted without inversion, while an input data bit of one inverts the coding bits. Rather than to represent the binary data with bits 0‘s and 1‘s, the input data and PN sequence are converted into a bipolar waveform with amplitude values of ±1. This is further illustrated in figure
. Figure 2.4: Transmitter of DS SS System
From the figure, we are also able to identify two criteria that need to be met in order to be considered as a DS-SS system: (1) The bandwidth of the transmitted signal s(t) is much wider as compared to the input data m(t); and (2) This wide bandwidth is caused by the modulation of the spreading signal c(t) and the intended receiver requires this identical signal for retrieving the message signal m(t). In the next few sections, we will look into the functionality of the various components for a Direct-Sequence Code Division Multiple Access (DS-CDMA) system. 2.5: PN Sequence
The DS-CDMA system uses two general categories of spreading sequences: PN sequences and orthogonal codes. As mentioned above, the PN sequence is produced by the pseudo-random noise generator that is simply a binary linear feedback shift register, consisting of XOR gates and a shift register. This PN generator has the ability to create an identical sequence for both the transmitter and the receiver, and yet retaining the desirable properties of a noise-like randomness bit sequence. A PN sequence has many characteristics such as having a nearly equal number of zeros and ones, very low correlation between shifted versions of
the sequence and very low cross correlation with any other signals such as interference and noise. However, it is able to correlate very well with itself and its inverse. Another important aspect is the autocorrelation of the sequence as it decides the ability to synchronize and lock the spreading code to the received signal. This effectively combats the effects of multipath interference and improves the SNR. M-sequences, Gold codes and Kasami sequences are examples of this class of sequences. 2.6: Walsh Code
Walsh codes are the most common orthogonal codes used in CDMA applications. These codes correspond to the rows of a special square matrix known as the Hadamard matrix. For a set of Walsh codes of length n, there consists of n rows to form an n x n Walsh code square matrix. The IS-95 system uses a 64 by 64 Walsh function matrix. The first row of this matrix contains a string of all zeros with each of the subsequent rows containing different combinations of bit 0‘s and 1‘s. Every row is orthogonal and has an equal occurrence for the binary bits. When implemented with the CDMA system, each mobile user uses one of the 64 row sequences in the matrix as a spreading code, providing zero cross correlation among all other users. This matrix is defined recursively as follows:
where n is a power of 2 indicating the various dimensions of the matrix and n W denotes the logical NOT operation on all bits in that matrix. The three matrices W2, W4 and W8, show the Walsh function for dimension 2, 4 and 8 respectively.
Each row in the 64 by 64 Walsh Matrix corresponds to a channel number. Channel number 0 is mapped to the first row of the Walsh matrix, which is the all zeros code. This channel is also known as the pilot channel and is used to train and estimate the impulse response of the mobile radio channel. To compute the cross correlation between the sequences, we will need to convert the bits in the matrix to the antipodal form of values ±1. Shifted versions of the Walsh sequence can result in a high cross correlation thus requiring tight synchronization to be implemented. However, all users of the same CDMA channel can be synchronized to an accuracy of one chip interval with the use of a common long PN sequence that also functions as a data scrambler.
2.7: Gold Code A Gold code, also known as gold sequence, is a type of binary sequence, used in CDMA. Gold codes have bounded small cross-correlations within a set, which is useful when multiple devices are broadcasting in the same frequency range. A set of Gold code sequences consists of sequences each one with a period of . A set of Gold codes can be generated with the following steps. 1) Two maximum length sequences of the same length should be picked, such that their absolute cross-correlation is less than or equal to , where is the size of the LFSR used to generate the maximum length sequence (Gold '67). The set of the exclusive-ors of the two sequences in their various phases (i.e. translated into all relative positions) is a set of Gold codes. The highest absolute
cross-correlation in this set of codes is for odd .
for even
and
The exclusive or of two Gold codes from the same set is another Gold code in some phase. Within a set of Gold codes about half of the codes are balanced — the number of ones and zeros differs by only one.
2.8: BPSK Modulation
In BPSK, individual data bits are used to control the phase of the carrier. During each bit interval, the modulator shifts the carrier to one of two possible phases, which are 180 degrees or π radians apart. This can be accomplished very simply by using a bipolar baseband signal to modulate the carrier‘s amplitude, as shown in figure below. The output of such a modulator can be represented mathematically as x(t) = R(t) cos(ωct + θ) where R(t) is the bipolar baseband signal, ωc is the carrier frequency, and θ is the phase of the unmodulated carrier. If the output of the modulator is to be represented in complex-envelope form referenced to the carrier frequency, the modulated signal is given as x(t) = I (t) + jQ(t) where I (t) = R(t) cos θ Q(t) = R(t) sin θ In the special case of θ = 0, Eq. reduces to ˜ x(t) = R(t) and the real-valued baseband signal can be used directly as the complex-envelope representation of the modulator output. However, to allow for subsequent phase
shifting, the signal‘s complex-envelope representation should always be implemented as a complex-valued signal. For the special case of θ = 0, the imaginary part of the complex signal is simply set to zero.
Figure 2.5: BPSK Modulator
2.9: QPSK Modulation In Phase-Shift Keying (PSK), the phase of the carrier signal is shifted to represent data. For M-ary PSK, the number of bits to represent one symbol is given as: n=lod2m where n is the number of bits per symbol and m is the number of possible levels to represent the signal. From the above equation, we determine that the QPSK uses two bits to represent any one of its four-phasor symbols. Fig shows the constellation diagram for QPSK and how these four levels of signal correspond to carrier phases, θ of 45°, 135°, 225° and 315°.
Figure 2.6: Constellation Diagram for QPSK The modulating signal m(t) is a stream of binary bits with a data rate of R = 1/Tb , where Tb is the width of each bit. This input stream is divided into two separate bit streams known as the I (in-phase) and Q (quadrature phase) channel. The odd bits of the input stream are processed by the I-channel while the even bits are processed by the Q-channel. Both channels are modulated on the same carrier frequency, fc and have a bit rate of R/2 bits-per second. However, the carrier signal in the Qchannel is shifted by 90° to achieve a sine waveform. The difference between these two modulated signals is obtained for transmission over the radio channel.
Figure 2.7: Generalized Transmitter using QPSK Modulations on IQ-Channel
As depicted in the figure, QPSK is generated by using two quadrature carriers and its transmitted signal s(t) can be defined as:
where the complex envelope
is a function of the modulating signal m(t). Ac is a positive constant that specify the power level of the signal and θ is the phase angle of the signal. 2.10: Channelization The channelization operation for the downlink separates the downlink connections to different users within one cell. The channelization is performed by multiplying appropriate OVSF codes to the I and the Q branches. Through the channelization, a symbol is spread into a number of chips according to the spreading 8 factor, which results in the increase of the bandwidth. By using the different spreading factors for each channel, variable data rates can be obtained. Since the spread signal bandwidth is the same for all users, multiple spreading factors are needed for the multiple rate transmission. Channelization codes are picked from the code generation tree shown in Figure, which is based on the OVSF technique. Each stage has two sub branches. The upper branch is obtained by repeating the code of the former stage and the lower branch is obtained as the concatenation of the original and the reversed codes of the former stage. The process is summarized in Figure
Figure 2.8: OVSF Code Tree
Figure 2.9: One Stage of the Tree Structure OVSF codes should be selected to maintain the orthogonality between different downlink connections. When two channels having the same transmission rate are spread, they should pick two different OVSF codes with the desired spreading factor. In case two channels use different transmission rates, the OVSF code for the lower transmission rate should not be the child of the OVSF code for the higher transmission rate. Figure illustrates an example selection of OVSF codes. In case of Figure C4, 0 and C8, 1 are selected as OVSF codes for the channels, and C8, 1 is a child of C4, 0. The correlation value of the two OVSF codes during the symbol period for SF = 4 is four, though that of SF = 8 is zero. Hence, the selection is invalid. Case (b) selects C4, 1 and C8, 1, and note C8, 1 is not a child of C4, 1. The
correlation of the two OVSF codes is zero for both SF = 4 and SF = 8, which is a valid selection.
Figure 2.10: An example of the OVSF Code Selection for Orthogonality The two figures below, illustrate the correlation values between different OVSF codes. Figure shows the correlation values between C256, 100 and C256, i (255, 1, i ). The auto-correlation value of C256, 100 itself is 256, while all crosscorrelation values with C256, 100 are zero, which means that the two different OVSF codes are orthogonal. Figure 3.6 shows correlation values between OVSF codes C4, 0 and its children and non-children OVSF codes. As can be seen from the figure, there is no orthogonality between the OVSF code C4,0 and its children codes, while non-children codes are all orthogonal to it, independent of the spreading factor. Since CPICH is always spread by C256,0, the OVSF codes for DPCH should be chosen as CSF,k where SF is the spreading factor and SF k SF s not the parent of the OVSF code for DPCH, C256, 0. So the two channels are orthogonal.
Figure 2.11: Correlation between OVSF Codes having the Same Spreading Factor 256
Figure 2.12: Correlation between C4,0 and other OVSF Codes having Different Spreading Factors
2.11: Foundations
In this section we present the communication-theoretical arguments that led to the Rake receiver design. Two rather distinct mathematical treatments have been pursued, which between them encompass a fairly realistic and complete set of assumptions. Both analyses are based on statistical decision theory. We shall first discuss the simpler and more physical argument, and later briefly touch upon the more abstract analysis that actually first suggested the Rake configuration.
A. Analysis for Multipath Assumed to Be Perfectly Measurable Using this philosophy, it is straightforward to find the optimum receiver in the case of a channel perturbed solely by additive white Gaussian (thermal or shot-effect) noise. Ideal receiver in this case simply cross correlates the received waveform with the two stored references, and bases its decision on the symbol yielding the larger correlation. The introduction of an arbitrary linear or nonlinear filter into the channel, preceding the noise, can be accommodated by a simple extension of this result, provided that the receiver knows or can measure the filter characteristic exactly. It is apparent that the optimum receiver in this case first passes its local reference waveforms through filters identical to the one in the channel and then performs cross correlations as before. The above requirement that the receiver have complete knowledge of the channel filter is rather unrealistic for an ionospheric channel, since exact measurement of such a randomly-varying filter characteristic cannot be made so long as any noise is present. Fortunately, the multipath ―filter‖ usually changes fairly slowly, and, furthermore, can be considered linear, so that good measurement accuracy can be achieved by a number of procedures, such as the cross-correlation method outlined previously. It is the plausible to employ the results of the measurement in constructing filters to process the stored waveforms for correlation, as just stated, ignoring the small measurement errors.
We assume the transmitted signal x(t) to have a band-limited spectrum s(w), and the multipath to be varying so slowly relative to the transmission bandwidth that a quasi-stationary analysis is allowable. In order to measure everything about H(w) (the ―instantaneous‖ transfer function of the multipath) that is relevant, it is only necessary, and only possible, for the
receiver to measure that portion H M‘(w) of HM(w) occupied by the transmission. HM‘(w)={ HM(w); w is transmission band {0; elsewhere. (1) HM‘(w) may be found from the cross-correlation function Øxw(ζ)=x(t) w(t + ζ) of the transmitted signal x(t) and the received signal w(t). Now the Fourier transform of this Ø xw(ζ) is the cross-spectral power density spectrum, Øxw(w) which is equal to S(w) HM(w). So, HM‘(w)={ Øxw(w)/ S(w); w is transmission band {0; elsewhere. (2) If S(w) is now assumed to be constant within the band, (2) says that he impulse response hM‘(t) of the receiver filters that should correct each stored symbol is given directly by hM‘(t)=K Øxw(t) where k is a constant. Finally, since h M‘(t) has a spectrum limited to the transmission bandwidth W, it is only necessary to measure Ø xw(ζ) at points 1/2W apart in ζ, or, since S(w) is a bandpass spectrum, to find the envelope and phase of Øxw(ζ) at points 1/W apart. Even when the effect of channel noise is included in the measurement, any closer spacing of the sampling points gains nothing, since the error in measuring Øxw(ζ) for a particular received w(t) is, as a function of ζ, also limited to bandwidth W. The complete band-limited impulse response h M‘(t) may be found by interpolating from its sample values, using interpolation functions of the form (sin t /t). Likewise, the stored symbols which are to be passed through hM‘(t) can be expressed as a series of samples with interpolations of the same form. By virtue of the orthogonality of these interpolation functions, it is easy to show that the convolution resulting from filtering the stored waveforms with hM‘(t) is exactly equivalent to multiplying the sample values of the stored signal with those of h M‘(t) and summing the products. Hence both the measurement and correction operations can be performed on a discrete basis, using multiple-tap delay lines with taps 1/W apart.
Independent of the form of the reference signals employed, the output snr from the integrating filters is substantially the same under the assumption that the length of the delay line Td is significantly smaller than the baud length T. Each integrating filter responds to signals only within about ± 1/T of the frequency Δ. Therefore, the noise adding on the common bases can be considered sinusoids of frequency Δ having a fluctuation period no shorter than T, regardless of the form of the reference signal. In this analysis we have ignored the consequences of imperfect measurement of the path structure. The next path summarizes the theoretical study that originally led to the Rake configuration. B. Analysis for the Assumption of a Discrete Path Structure with Known Time Delays In order to extend the analysis to include random variations in the multipath structure, we must at present make the restriction that there are a finite number of discrete paths whose time delays are known to the receiver. The assumptions in Section A apply here, as well as the condition that the additive interference be white Gaussian noise. The paths are taken to be of the Booker-Gordon ―scatter‖ ty pe, and to vary independently of each other, the transmitted signal, and the noise. It is further assumed that the complete statistical description off each path is available to the receiver, in the form of Ø p(ζ). The quantity Ø p(ζ) is the ―correlation function of the pth path‖, placing in evidence its average strength and rate of variation.
Ideal receiver for the detection on isolated bauds has a tapped delay line, multiplying and integrating elements, and filters. The filters are matched in bandwidth to corresponding path stabilities, and may be viewed as performing measurement-correction function of section A.
CHAPTER 3
IMPLEMENTATION OF A RAKE RECEIVER ON MATLAB® SIMULINK 3.1 Introduction The design of Rake Receiver is simulated on the MATLAB SIMULINK platform which is a recognized software in the field of scientific research and simulation of engineering designs. 3.2 System Model CDMA systems use the spread spectrum technique with spreading codes designed to provide very low correlation between successive chips. Due to the signal propagation characteristics of the wireless communications channel, the receiver may receive one direct line-of-sight (LOS) wave and many multiple versions of the transmitted signal at a spread of arrival times. If these multipath signals are delayed in time by more than one chip interval, the despreading process will make the uncorrelated noise appear as negligible at the receiver. This leads to the implementation of a RAKE receiver within a CDMA system, as it is able to recover each multipath signal and combine them with the correct delays to achieve a significant improvement in the SNR of the output signal. The RAKE receiver however, works only on the basis that these multipath components are practically uncorrelated from one another when their relative propagation delays exceed a chip period. Fig shows the model of a RAKE receiver with three correlators. This RAKE receiver design is used in the IS-95 system, where each of the three strongest time-shifted multipath signals is demodulated and weighted independently. The spreading code in the despreading process needs to be synchronized to the delay spread of the multipath signal, so that the outputs of each correlator can be summed to produce a stronger and more accurate signal. Note that in a RAKE receiver, if the outputs from one correlator are corrupted by fading, the corrupted signal may be discounted through the weighting process. Decisions based on the combination of the three separate correlator outputs are able to provide a form of diversity, which can overcome fading and thereby improve the CDMA reception. The outputs of these three correlators are denoted as Z1, Z2 and Z3. The overall signal Z’ is given by:
where m represents each of the three correlators.
Figure 3.1: System Model
Figure 3.2: System Model Implemented in Simulink® 3.3: Bernoulli Binary Generator The Bernoulli Binary Generator block generates random binary numbers using a Bernoulli distribution. The Bernoulli distribution with parameter p produces zero with probability p and one with probability 1-p. The Bernoulli distribution has mean value 1-p and variance p(1-p). The Probability of a zero parameter specifies p, and can be any real number between zero and one. The output signal can be a frame-based matrix, a sample-based row or column vector, or a sample-based one-dimensional array. The number of elements in the Initial seed and Probability of a zero parameters becomes the number of columns in a frame-based output or the number of elements in a sample-based vector output. Also, the shape (row or column) of the Initial seed and Probability of a zero parameters becomes the shape of a sample-based two-dimensional output signal. .Parameters 1. Probability of Zero: 0.5 2. Initial Seed: 61 3. Sample Time: 1/8*1800
3.4: Walsh Code Generator
Walsh codes are defined using a Hadamard matrix of order N. The Walsh Code Generator block outputs a row of the Hadamard matrix specified by the Walsh code index, which must be an integer in the range [0, ..., N - 1]. If you set Walsh code index equal to an integer j, the output code has exactly j zero crossings, for j = 0, 1, ... , N - 1. Parameters 1. Code Length: 64 2. Code Index: 60 3. Sample Time: 1 4. Samples per Frame: 8 3.5: PN Sequence Generator
The PN Sequence Generator block generates a sequence of pseudorandom binary numbers using a linear-feedback shift register (LFSR). The LFSR is implemented using a simple shift register generator (SSRG, or Fibonacci) configuration. A pseudonoise sequence can be used in a pseudorandom scrambler and descrambler. It can also be used in a direct-sequence spread-spectrum system. The PN Sequence Generator block uses a shift register to generate sequences
Figure 3.3: PN Shift Register Parameters 1. Generator Polynomial: [1 0 0 0 0 1 1] 2. Initial state: [0 0 0 0 0 1] 3. Sample time: 1 4. Samples per Frame: 8 3.6: Gold Sequence Generator
The Gold Sequence Generator block generates a Gold sequence. Gold sequences form a large class of sequences that have good periodic cross-correlation properties. The Gold sequences are defined using a specified pair of sequences u and v, of period N = 2n - 1, called a preferred pair Parameters 1. Preferred Polynomial: (1): [1 0 0 0 0 1 1] 2. Initial state: (1): [0 0 0 0 0 1] 3. Preferred Polynomial: (2): [1 1 0 0 1 1 1] 4. Initial state: (2): [0 0 0 0 0 1] 5. Sample time: 1 6. Samples per Frame: 8
3.7: BPSK Modulator and Demodulator
The BPSK Modulator Baseband block modulates using the binary phase shift keying method. The output is a baseband representation of the modulated signal. For both integer and bit inputs, this block can accept the
data types int8, uint8, int16, uint16, int32, uint32, boolean, single, and double. The input must be a discrete-time binary-valued signal. If the input bit is 0 or 1, respectively, then the modulated symbol is exp(jθ) or -exp(jθ) respectively, where θ is the Phase offset parameter.
The BPSK Demodulator Baseband block demodulates a signal that was modulated using the binary phase shift keying method. The input is a baseband representation of the modulated signal. The input can be either a scalar or a frame-based column vector. The block accepts the data types double, single, and signed fixed-point (in hard-decision modes only). The input must be a discrete-time complex signal. The block maps the points exp(jθ) and -exp(jθ) to 0 and 1, respectively, where θ is the Phase offset parameter.
3.8: QPSK Modulator and Demodulator
The QPSK Modulator Baseband block modulates using the quaternary phase shift keying method. The output is a baseband representation of the modulated signal. The QPSK Demodulator Baseband block demodulates a signal that was modulated using the quaternary phase shift keying method. The input is a baseband representation of the modulated signal. The input must be a discrete-time complex signal. The input can be either a scalar or a frame-based column vector. The block accepts the data types double, single, and signed fixed-point (for both hard-decision modes and soft decision modes).
3.9: Spreader
This block performs the function of spreading of the incoming data at the transmitter, by multiplying it by the OVSF code to spread the information symbols, and spreading the data over the number of symbol periods. Thus in this block the incoming data rate is at the symbol rate and the output is at the chip rate . 3.10: Multipath Rayleigh Fading Channel
The Multipath Rayleigh Fading Channel block implements a baseband simulation of a multipath Rayleigh fading propagation channel. This block accepts only frame-based complex signals at its input. The block inherits sample time from the input signal. The i nput signal must have a discrete sample time greater than 0. Relative motion between the transmitter and receiver causes Doppler shifts in the signal frequency. We can specify the Doppler spectrum of the Rayleigh process using the Doppler spectrum type parameter. For channels with multiple paths, we can assign each path a different Doppler spectrum, by entering a vector of doppler objects in the Doppler spectrum field. Parameters 1. Maximum Doppler Shift: 40 2. Doppler Spectrum Type: Jakes 3. Discrete Path Delay Vector: [0 2e-6 4e-6] 4. Average Path Gain Vector: [0 -3 -6]
3.11: AWGN Channel
The AWGN Channel block adds white Gaussian noise to a real or complex input signal. When the input signal is real, this block adds real Gaussian noise and then produces a real output signal. When the input signal is complex, this block adds complex Gaussian noise and produces a complex output signal. This block inherits its sample time from the input signal. Parameters: 1. E b/No: 10 db 2. Number of Bits per Symbol: 8 3. Symbol Period: 1 3.12: Find Delay Block
This block finds the delay between two signals sRef & sDel by finding the maximum of the cross-correlation function between them. The signal sDel should be delayed relative to sRef. Parameter 1. Correlation Window Length: 8 3.13: Despreader
This block performs the function of dispreading the incoming data, by multiplying it by the same OVSF code that is used at the transmitter to spread the information symbols, and accumulating the result over each information symbol period. Thus in this block the incoming data rate is at the chip rate and the output is at the symbol rate. 3.14: Integrator and Dump Block
The Integrate and Dump block creates a cumulative sum of the discrete-time input signal, while resetting the sum to zero according to a fixed schedule. When the
simulation begins, the block discards the number of samples specified in the Offset parameter. After this initial period, the block sums the input signal along columns and resets the sum to zero every N input samples, where N is the Integration period parameter value. The reset occurs after the block produces its output at that time step. Parameter 1. Integration Period: 8 3.15: Maximal Ratio Combiner
In Maximal Ratio Combiner, strong signal components are given more weight than the weak signal components and ultimately combined for a healthy SNR. 3.16: Error Rate Calculation It computes the error rate of the received data by comparing it to a delay version the transmitted data. The block output is a three-element vector comprising error rate followed by the number of errors detected and total number of samples compared. 3.17 Experiment Results and Discussions: The detection guided RAKE receiver model is thoroughly tested and following the examination and analysis of the findings from the simulated results using MATLAB®, the results are compared with the standard RAKE receiver model. Several combinations of the design parameters are examined and discussed in the following sections of this chapter. The findings can be categorized into the following sections:
Impulse Response of the Rayleigh Fading Channel:
Figure 3.4: Impulse Response of the Rayleigh Fading Channel
Doppler Spread:
Figure 3.5: Doppler Spread
Multipath Fading Components:
Figure 3.6: Multipath Fading components
BER Performance
1) If we Change the Modulation Scheme, the BER Performance also Changes. Variation of BER with QPSK and BPSK Modulation Schemes:
Type of Modulation Scheme
BER
Type of Modulation Scheme
BER
QPSK
0.672
BPSK
0.4854
During the simulation it is also found that the BER rate also depends on the type of modulation scheme employed.
In BPSK one bit is used to represent a single symbol as opposed to two bits used to represent one symbol in QPSK. Hence loss of symbols in QPSK results in the loss of twice as many bits in BPSK. Hence the BER performance of BPSK is better than that of QPSK. BPSK thus offers acceptable BER while transmitting signals of relatively low energy. In other words BPSK requires less of signal to noise ratio than QPSK to achieve the same BER. Thus it is evident that BPSK modulation is preferred in cases where we need to consider small amounts of transmitting energy.
2) If we Increase the Code Length, the BER Performance Decreases.
Variation of BER with Walsh Code Length for QPSK Modulation: Walsh Code Length
BER
64
0.7937
32
0.7634
16
0.6897
8
0.6579
Variation of BER with Walsh Code Length for BPSK Modulation: Walsh Code Length
BER
64
0.5587
32
0.5405
16
0.5025
8
0.4975
Variation of BER with PN Sequence Code Length for QPSK Modulation: PN Sequence Length
BER
32
0.6875
16
0.6534
8
0.6382
Variation of BER with PN Sequence Code Length for BPSK Modulation: PN Sequence Length
BER
32
0.5263
16
0.5051
8
0.4950
Variation of BER with Gold Code Sequence Cod Length for BPSK Modulation: Gold code Sequence Length
BER
33
0.5208
22
0.4762
7
0.4650
Variation of BER with Gold Code Sequence Code Length for QPSK Modulation: Gold code Sequence Length
BER
33
0.7648
22
0.7462
7
0.6950
In case of CDMA each and every user uses the same bandwidth and the same spectrum. Introduction of a new user will hence contribute to cochannel interference to every other user. Again from the CDMA theory we know that the total co-channel interference contribution from a single user will be equally divided between all other users. This property is called graceful degradation which is not the case in other communication channels. Again effective AWGN at the back end of the receiver after despreading is equal to the AWGN at the front end of the receiver divided by the spreading code length which is a unique property of the CDMA. In case of a single user increasing the code length is equal to increasing the communication bandwidth which results in more ISI. To combat the ISI the dynamic path searching algorithm is a must, but we have not yet implemented a dynamic path searcher to select the maximum power taps and hence the degradation.
3) With the Increase in Doppler Shift the BER Increases.
Variation of BER with Doppler Shift for QPSK: Doppler Shift
BER
40
0.6579
100
0.6592
200
0.6623
Variation of BER with Doppler Shift for BPSK: Doppler Shift
BER
40
0.5263
100
0.5280
200
0.6374
Doppler shift is related to the coherence time of the channel with an inverse relationship. Coherence time is a measure of the channel variation with time. Within one coherence time one can assume the channel to b e static. As Doppler shift increases coherence time decreases and hence the channel will be more time varying. 4) BER Performance will also Increase, if we Increase the Number of Fingers in the Rake Receiver. Increasing the number of rake fingers lead to stronger MRC and hence better SNR. Better SNR in turn results in increase in BER performance. Thus BER decreases with the increase in the number of fingers in a rake receiver.
3.18 Conclusion The BER performance of Rake Receiver over a frequency selective multipath Rayleigh fading channel is evaluated by considering two modulation schemes and three code sequences. From the simulation results we have seen that the BER performance will increase if we use a rake receiver.
In a nut-shell, the rake receiver architecture allows an optimal combining of energy received over multiple paths with different delays. It avoids wave cancellation (fades) if delayed paths arrive with phase differences and appropriately weighs signals coming in with different signal-to-noise ratios. The rake receiver consists of multiple correlators, in which the received signal is multiplied by time-shifted versions of a locally generated code sequence. The intention is to separate signals such that each finger only sees signals coming in over a single (resolvable) path. The correlator outputs are (MRC) combined to achieve improved communications reliability and performance. The spreading code is chosen to have a very small autocorrelation value for any nonzero time offset. This avoids crosstalk between fingers.
CHAPTER 4 CONCLUSION 4.1 Future Directions The low-complexity RAKE Receiver has been designed in MATLAB® Simulink. The design and analysis of this model in an SOC platform viz. FPGA is required to be completed in the next phase by taking a few existing design challenges in to consideration. Our vision is to look at how the detection guided RAKE Receiver is able to detect and select the important multipath signals (implementing a dynamic path-searcher to select the maximum power taps) for demodulation, resulting in a better SNR and an overall lower computational cost. At the same time we look forward to estimating the time-varying channel characteristics using channel estimation techniques, may it either be by
virtue of the Pilot Carrier based Technique, the Decision Directed Technique, or be it with the help of the Blind Estimation Technique.
4.2 References [1] R. Price and P. E. Green, "A communication technique for multipath channels", in Proc. IRE, pp. 555--570, 1958. [2] Gregory E. Bottomley, ―Optimizing the RAKE receiver for the CDMA downlink‖, in Proc. IEEE Vehicular Technology Conf., pp. 742 – 745, Secaucus, NJ, 1993. [3] Kyungwhoon Cheun, ―Performance of Direct-Sequence SpreadSpectrum RAKE Receivers with Random Spreading Sequences‖, in IEEE Transactions on Communications, Vol. 45, No. 9, 1997.
[4] T. Ojanperä and R. Prasad, ―Low Complexity Rake Receiver and Channel Estimator Implementation for DSSS-CDMA Systems‖, in IEEE Ninth International Symposium on Spread Spectrum Techniques and Applications, 2006. [5] Athanasios Doukas, Georgios Panitsas, Christos Masouros and Grigorios Kalivas, ―Wideband CDMA for Third Generation Mobile communication‖, in Proc. IEEE Commun. Mag., vol. 36, pp. 82 – 95, Boston, MA: Artech, 1998.
[6] Dajana Cassioli, Moe Z. Win, Francesco Vatalaro and Andreas F. Molisch, ―Low Complexity Rake Receivers in Ultra-Wideband Channels‖, in IEEE Transactions on Wireless Communications, Vol. 6, No. 4, 2007. [7] R. Prasad, CDMA for Wireless Personal Communications, Artech House: Boston, 1996.
View more...
Comments