Você está na página 1de 48

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 the signal at the receiver to distort and fade 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
2.11: Foundations

Chapter 3: IMPLEMENTATION OF A RAKE RECEIVER ON
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


LIST OF FIGURES




CHAPTER 1
INTRODUCTION
1.1 Background
With the technology advancement in todays 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 greater than
in conventional cellular systems.

RAKE receiver, used specially in CDMA cellular systems, can combine
multipath components
To improve the signal to noise ratio (SNR) at the receiver
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

In a W-CDMA receiver the following steps take place:
1. 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.
2. Despreading: The descrambled data of each path are despread by simply
multiplying the descrambled data by the spreading code.
3. 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.
4. 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).
5. 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 time-
variant 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 Mark-
Space 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 13.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, closed-
form 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 todays 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 todays dominant
technology for the evolution of third generation (3G) mobile communications
systems with the development of two major schemes: Wideband CDMA (W-
CDMA) 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 pseudo-
random noise generator creates a spreading code or better known as the pseudo-
noise (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 0s and 1s, 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 0s and 1s. 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 even and
for odd .
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 carriers 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 signals 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 Q-
channel 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 cross-
correlation 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 HM(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 hM(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 hM(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 hM(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 type, 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 input 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. Eb/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 co-
channel 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. 742745,
Secaucus, NJ, 1993.
[3] Kyungwhoon Cheun, Performance of Direct-Sequence Spread-
Spectrum 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. 8295, 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.
[8] S. Buckley, 3G Wireless: Mobility Scales New Heights,
Telecommunications Magazine, 2000.

[9] P. H. Wong, Signed LMS Adaptive Filtering with Detection,
Undergraduate Thesis, The University of Queensland, School of Information
and Technology and Electrical Engineering, 2001.

[10] J. Homer, Detection guided LMS estimation of sparse channels. Global
Telecommunications Conference, 6:3704-3709, 1998.

[11] J. G. Proakis, Digital Communications, McGraw-Hill, New York.
[12] Theodore S. Rappaport, Wireless Communications Principles and
Practice, Prentice Hall, New Jersey.
[13] CDMA Development Group, RAKE Receiver: Another Advantage of
CDMA over Other Systems,
http://www.cdg.org/tech/abcs/lec1/text/abc_1_3_36.txt

[14] CDMA Development Group, CDMA Technology: The Drive towards
Third Generation (3G) Systems, http://www.cdg.org

Você também pode gostar