Professional Documents
Culture Documents
Rake Receiver PDF
Rake Receiver PDF
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.
CONTENTS
Chapter 1: INTRODUCTION
1.1: Background
1.2: Motivation
1.3: Literature Survey
1.4: Problem formulation
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.
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
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.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
Delay acquisition
Delay tracking by feedback loops (delay-locked loops, DLL)
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
Decision Directed
Blind Estimation
The main challenges for RAKE receivers operating in fading channels are
in receiver synchronization
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.
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.
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
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.
Figure 2.2: Basic Model of the Direct Sequence Spread Spectrum Communication
System
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
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:
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.
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.
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.
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.
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
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
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
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.
B. Analysis for the Assumption of a Discrete Path Structure with Known Time
Delays
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
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.
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.
.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
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
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
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 complex signal. The block maps the points
exp(j) and -exp(j) to 0 and 1, respectively, where is the Phase offset
parameter.
The QPSK Modulator Baseband block modulates using the quaternary phase
shift keying method. The output 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.
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]
Parameters:
1. Eb/No: 10 db
2. Number of Bits per Symbol: 8
3. Symbol Period: 1
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.
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
In Maximal Ratio Combiner, strong signal components are given more weight than
the weak signal components and ultimately combined for a healthy SNR.
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.
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:
Doppler Spread:
BER Performance
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.
64 0.7937
32 0.7634
16 0.6897
8 0.6579
64 0.5587
32 0.5405
16 0.5025
8 0.4975
32 0.6875
16 0.6534
8 0.6382
32 0.5263
16 0.5051
8 0.4950
Variation of BER with Gold Code Sequence Cod Length for BPSK Modulation:
33 0.5208
22 0.4762
7 0.4650
Variation of BER with Gold Code Sequence Code Length for QPSK Modulation:
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.
40 0.6579
100 0.6592
200 0.6623
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.
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
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
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.
4.2 References
[2] Gregory E. Bottomley, Optimizing the RAKE receiver for the CDMA
downlink, in Proc. IEEE Vehicular Technology Conf., pp. 742745,
Secaucus, NJ, 1993.