CDMA Concept
CDMA Concept
8.1 INTRODUCTION
CDMA protocols constitute a class of protocols in which the multiple access property is
primarily achieved by means of coding. Each user is assigned a unique code sequence
used to encode the information-bearing signal. The receiver, knowing the code
sequences of the user, decodes a received signal after reception and recovers the
original data. Since the bandwidth of the code signal is chosen to be much larger than
the bandwidth of the information-bearing signal, the encoding process enlarges
(spreads) the spectrum of the signal and is therefore also known as spread-spectrum
modulation. The resulting encoded signal is also called a spread-spectrum signal, and
the CDMA protocols are often denoted as spread-spectrum multiple access (SSMA)
protocols.
It is the spectral spreading of the coded signal that gives the CDMA protocols
their multiple access capability. It is therefore important to know the techniques to
generate spread-spectrum signals and the properties of these signals.
The precise origin of spread-spectrum communications may be difficult to pin-
point because modern spread-spectrum communication is the outcome of developments
in many directions, such as high-resolution radars, direction finding, guidance,
correlation detection, matched filtering, interference rejection, jamming avoidance,
information theory, and secured communications [1–10].
The spread-spectrum modulation techniques were originally developed for use
in military radar and communication systems because of their resistance against
jamming signals and a low probability of detection. Only in recent years with new and
253
254
cheap technologies emerging and a decreasing military market have the manufacturers
of spread-spectrum equipment and researchers become interested in the civil
applications.
To qualify as a spread-spectrum modulation technique, two criteria must be
fulfilled [9]:
1. The transmission bandwidth must be much larger than the information bandwidth;
2. The resulting radio-frequency bandwidth is determined by a function other than the
information being sent (so the bandwidth is independent of the information signal).
This excludes modulation techniques like FM and pulse modulation (PM).
Bt
PG = (8.1)
Bi
transmit their spread-spectrum signals at the same time. At the receiver only the
signal of user 1 is “despread” and the data recovered.
1
1&2
1
1
2
2 2
(a) (b)
Figure 8.1 Principle of spread-spectrum multiple access.
2. Protection against multipath interference. In a radio channel there is not just one
path between a transmitter and receiver. Due to reflections (and refractions), a
signal is received from a number of different paths. The signals of the different
paths are all copies of the transmitted signal but with different amplitudes and
phases. Adding these signals at the receiver is constructive at some of the
frequencies and destructive at others. In the time domain, this results in a dispersed
signal. Spread-spectrum modulation can combat this multipath interference;
however, the way in which this is done depends very much on the type of
modulation used. In the next section where CDMA protocols based on different
modulation methods are discussed, we show for each protocol how multipath
interference rejection is obtained.
3. Privacy. The transmitted signal can only be despread and the data recovered if the
code is known to the receiver.
4. Interference rejection. Cross-correlating the code signal with a narrowband signal
spreads the power of the narrowband signal, thereby reducing the interfering power
in the information bandwidth. This is illustrated in Figure 8.2. The spread-spectrum
signal (s) receives a narrowband interference (i). At the receiver the spread-
spectrum signal is despread while the interference signal spreads, making it appear
as background noise compared with the despread signal.
5. Anti-jamming capability, especially narrowband jamming. This is more or less the
same as interference rejection except the interference is now willfully inflicted on
the system. It is this property together with the next one that makes spread-spectrum
modulation attractive for military applications.
6. Low probability of interception (LPI) or covert operation. Because of its low power
density, the spread-spectrum signal is difficult to detect.
256
i s
s i
We can classify the SSMA or CDMA protocols in two different ways: by concept or by
modulation method. The first classification gives us two protocol groups, averaging
systems and avoidance systems. The averaging systems reduce the interference by
averaging the interference over a wide time interval. The avoidance systems reduce the
interference by avoiding it for a large part of the time.
Classifying by modulation gives us five protocols, direct-sequence (or pseudo-
noise), frequency hopping, time-hopping, protocols based on chirp modulation, and
hybrid methods. Of these, the first (DS) is an averaging spread-spectrum protocol,
257
while the hybrid protocols can be averaging protocols depending on whether DS is used
as part of the hybrid method. All the other protocols are of the avoidance type. Table
8.1 summarizes both ways of classification.
Table 8.1
Classifying SSMA Protocols
DS TH FH Chirp Hybrid
Averaging x x
Avoidance x x x x
In the following sections, CDMA protocols are discussed where a division has
been made that is based on the modulation technique.
8.2.1 DS
In the DS-CDMA protocols, the modulated information-bearing signal (the data signal)
is directly modulated by a digital code signal. The data signal can be either an analog or
digital signal. In most cases it will be a digital signal. What we often see in the case of a
digital signal is that the data modulation is omitted and the data signal is directly
multiplied by the code signal and the resulting signal modulates the wideband carrier. It
is from this direct multiplication that the DS-CDMA protocol gets its name.
Data
Data Data
Data Wideband
Wide-band
modulator code
code
modulator modulation
modulation
Carrier Code
Code
generator generator
generator generator
In Figure 8.3, a block diagram of a DS-CDMA transmitter is given. The binary data
signal modulates a radio frequency (RF) carrier. The modulated carrier is then
modulated by the code signal. This code signal consists of a number of code bits or
“chips” that can be either +1 or −1. To obtain the desired spreading of the signal, the
chip rate of the code signal must be much higher than the chip rate of the information
signal. For the code modulation various modulation techniques can be used but usually
258
some form of PSK such as BPSK, differential BPSK (D-BPSK), quadrature PSK
(QPSK), or MSK is employed.
If we omit the data modulation and use BPSK for the code modulation, we get
the block diagram given in Figure 8.4.
Binary data
Binary data Wide-band
Wideband
X modulator
modulator
Code
Code Carrier
Carrier
generator generator
generator generator
Data signal
Code signal
BPSK-modulated signal
time
Figure 8.5 Generation of a BPSK-modulated spread-spectrum signal.
The DS-SS signal resulting from this transmitter is shown in Figure 8.5. In this figure,
ten code signals per information signal are transmitted (the code chip rate is 10 times
the information chip rate), so the processing gain is equal to 10. In practice, the
processing gain is much larger (in the order of 102 to 103).
After transmission of the signal, the receiver (seen in Figure 8.6) uses coherent
demodulation to despread the spread-spectrum signal using a locally generated code
sequence. To perform the despreading operation, the receiver must not only know the
259
code sequence used to spread the signal, but the codes of the received signal and the
locally generated code must also be synchronized.
This synchronization must be accomplished at the beginning of the reception
and maintained until the whole signal is received. The synchronization/tracking block
performs this operation. After despreading, a data-modulated signal results and after
demodulation the original data are recovered.
Data
Code
Code Data
Data Data
demodulator demodulator
demodulator demodulator
Code
Code Code
Code Carrier
Carrier
synchr./
synchr. generator generator
tracking
/tracking generator generator
• Multiple access. If multiple users use the channel at the same time, multiple DS
signals will overlap in time and frequency. At the receiver, coherent demodulation
is used to remove the code modulation. This operation concentrates the power of the
desired user in the information bandwidth. If the cross-correlation between the code
of the desired user and the code of the interfering user is small, coherent detection
will only put a small part of the power of the interfering signals into the information
bandwidth.
• Multipath interference. If the code sequence has an ideal autocorrelation function,
the correlation function is zero outside the interval [ −Tc,Tc] where Tc is the chip
duration. This means that if the desired signal and a version that is delayed for more
than 2Tc are received, coherent demodulation treats the delayed version as an
interfering signal, putting only a small part of the power in the information
bandwidth.
• Narrowband interference. The coherent detection at the receiver involves a
multiplication of the received signal by a locally generated code sequence.
260
8.2.2 FH
Frequency Frequency
frequency
frequency
FH DS time
time
Time Time
Synchr.
tracking
Code Frequency
Frequency Code
generator syntheziser
syntheziser generator
• Multiple access. It is quite easy to visualize how the F-FH and S-FH CDMA
protocols obtain their multiple access capability. In the F-FH protocol, 1 bit is
transmitted in different frequency bands. If the desired user is the only one to
263
transmit in most of the frequency bands, the received power of the desired signal is
much higher than the interfering power and the signal is received correctly.
In the S-FH protocol, multiple bits are transmitted at one frequency. If the
probability of other users transmitting in the same frequency band is low enough, the
desired user is received correctly most of the time. For those times that interfering
users transmit in the same frequency band, error-correcting codes are used to recover
the data transmitted during that period.
• Multipath interference. In the F-FH CDMA protocol the carrier frequency changes a
number of times during the transmission of 1 bit. Thus, a particular signal frequency
is modulated and transmitted on a number of carrier frequencies. The multipath
effect is different at the different carrier frequencies. As a result, signal frequencies
that are amplified at one carrier frequency will be attenuated at another carrier
frequency and vice versa. At the receiver, the responses at the different hopping
frequencies are averaged, thus reducing the multipath interference. This is not as
effective as the multipath interference rejection in a DS-CDMA system but it still
gives quite an improvement.
• Narrowband interference. Suppose a narrowband signal is interfering on one of the
hopping frequencies. If there are PG hopping frequencies (where PG is the
processing gain), the desired user will (on the average) use the hopping frequency
where the interferer is located 1/PG percent of the time. The interference is therefore
reduced by a factor PG.
• LPI. The difficulty in intercepting an FH signal lies not in its low transmission
power. During a transmission, it uses as much power per hertz as does a continuous
transmission. But the frequency at which the signal is going to be transmitted is
unknown and the duration of the transmission at a particular frequency is quite
small. Therefore, although the signal is more readily intercepted than a DS signal, it
is still a difficult task to perform.
+ Synchronization is much easier with FH-CDMA than with DS-CDMA. With FH-
CDMA, synchronization has to be within a fraction of the hop time. Since spectral
spreading is not obtained by using a very high hopping frequency but by using a
large hop-set, the hop time will be much longer than the chip time of a DS-CDMA
system. Thus, an FH-CDMA system allows a larger synchronization error.
+ The different frequency bands that an FH signal can occupy do not have to be
contiguous, because we can make the frequency synthesizer easily skip over certain
parts of the spectrum. Combined with the easier synchronization, this allows much
higher spread-spectrum bandwidths.
264
8.2.3 TH
In the TH-CDMA protocols, the data signal is transmitted in rapid bursts at time
intervals determined by the code assigned to the user.
Buffer Buffer
The time axis is divided into frames and each frame is divided into M time slots.
During each frame the user will transmit in one of the M time slots. Which of the M
time slots is transmitted depends on the code signal assigned to the user. Since a user
transmits all of its data in 1, instead of M time slots, the frequency it needs for its
transmission has increased by a factor M. A block diagram of a TH-CDMA system is
given in Figure 8.9.
265
Frequency
Time
• Multiple access. The multiple access capability of TH-SS signals is acquired in the
same manner as that of the FH-SS signals, namely by making the probability of
users’ transmissions in the same frequency band at the same time small. In the case
of time hopping, all transmissions are in the same frequency band so the
probability of more than one transmission at the same time is small. This is again
achieved by assigning different codes to different users. If multiple transmissions
do occur, error-correcting codes ensure that the desired signal can still be
recovered.
If there is synchronization among the users, and the assigned codes are such that no
more than one user transmits at a particular slot, then the TH-CDMA protocol
reduces to a TDMA protocol where the slot in which a user transmits is not fixed
but changes from frame to frame.
• Multipath interference. In the TH-CDMA protocol, a signal is transmitted in
reduced time. The signaling rate therefore increases and dispersion of the signal
will lead to overlap of adjacent bits much sooner. Therefore, no advantage is
gained with respect to multipath interference rejection.
• Narrowband interference. A TH-CDMA signal is transmitted in reduced time. This
reduction is equal to 1/PG where PG is the processing gain. At the receiver we only
266
receive an interfering signal during the reception of the desired signal. Thus, we
only receive the interfering signal 1/PG percent of the time, reducing the interfering
power by a factor PG.
• LPI. With TH-CDMA, the frequency at which a user transmits is constant but the
times at which a user transmits are unknown and the durations of the transmissions
are very short. Particularly when multiple users are transmitting, this makes it
difficult for an intercepting receiver to distinguish the beginning and end of a
transmission and to decide which transmissions belong to which user.
Although chirp spread spectrum is not yet adapted as a CDMA protocol, for the sake of
completeness a short description is given here.
f f2
2
BB
f f1
1
TT
t1
t1 tt22
PG = BT (8.2)
The hybrid CDMA systems include all CDMA systems that employ a combination of
two or more of the above-mentioned spread-spectrum modulation techniques. If we
limit ourselves to DS, FH, and TH modulations, we have four possible hybrid systems:
DS/FH, DS/TH, FH/TH, and DS/FH/TH.
The idea of the hybrid system is to combine the specific advantages of each of
the modulation techniques. If we take, for example, the combined DS/FH system, we
have the advantage of the antimultipath property of the DS system combined with the
favorable near-far operation of the FH system. Of course, the disadvantage lies in the
increased complexity of the transmitter and receiver. For illustration purposes, we give
a block diagram of a combined DS/FH CDMA transmitter in Figure 8.12.
Data Up
Up converter
converter
Code clock
The data signal is first spread using a DS code signal. The spread signal is then
modulated on a carrier whose frequency hops according to another code sequence. A
code clock ensures a fixed relation between the two codes.
The objective of this section is to present an overview of the design and properties of
code sequences for CDMA systems. The choice of the type of code sequence for
CDMA systems is important with respect to the resistance against both multipath and
multiuser interference.
8.3.1 Basics
To combat these types of interference, two properties are very important: (1) Each code
sequence in the set must be easy to distinguish from a time-shifted version of itself, and
(2) each code sequence in the set must be easy to distinguish from (a possibly tune-
shifted version of) every other signal in the set.
The first property is important with respect to multipath propagation effects that
occur in mobile outdoor and indoor radio environments The second property plays an
important role with respect to the multiple access capability of the communications
system. In this chapter, we describe three types of code sequences: maximum length,
Gold, and kasami.
Before describing the construction of these code sequences and discussing the
correlation properties with respect to the requirements mentioned above, we present in
the next section some basic definitions of correlation functions and some information
about shift register sequences. Finally, some numerical examples of the aforementioned
code sequences are given.
Correlation functions
Primarily because system implementation is simpler, code sequences used for CDMA
communications systems are required to be periodic. If T is the period of the code
sequence denoted as X(t), then periodicity implies that X(t) = X(t+T) for all time
instants t and for each code sequence X in the set. For the code symbols of X we use the
notation Xm. Furthermore, we assume that the code symbols are {−1,1} The distinction
between code sequences X(t) and Y(t) is measured in terms of the correlation function
defined as
rX ,Y (τ ) = ∫ X (t )Y (t + τ )dt
0
(8.3)
∞
X (t ) = ∑ a ϕ (t − iT )
i =−∞
i
x c (8.4)
where axi is the ith code symbol user of x, ϕ(t) is the basic pulse wave form, and Tc is
the time duration of the pulse, termed chip duration and
Tc
∫ ϕ (t − iT )ϕ (t − jT )dt = 0
0
c c if i ≠ j (8.5)
If the delay τ is taken as a multiple of the chip duration (τ = lTc), then (8.3) is written as
N −1
rX ,Y (l ) = λ ∑ a ix a xi+1 (8.6)
i =0
where
Tc
λ = ∫ ϕ 2 (t )dt (8.7)
0
N c Tc
Λ
R XY (τ ) = ∫τ X (t )Y (t − τ )dt (8.9)
b y0 by–1
Nc–1 0 Nc–1 0 Y
X
Nc–1 I–1 0
270
Figure 8.13 Cross-correlation of code sequence X of the reference user, and code sequence Y
being the code sequence of an interfering user or a delayed version of the reference
code sequence.
Assuming that τ is a multiple of the chip duration Tc implying τ = lTc, these partial
correlation functions are written as
l −1
R xy (l ) = ∑ a xi a iy−1 (8.10)
i =0
Λ N c −1
R xy (l ) = ∑a a
l =1
l
x
l −1
y (8.11)
If X = Y, then (8.10) and (8.11) are the partial autocorrelation functions and in the case
X ≠ Y, (8.10) and (8.11) are the partial cross-correlation functions.
With respect to the sign of by0 and by–1, there are two possibilities: either by0 and
–1
by have the same sign or they have the opposite sign. For the first case we have the
periodic correlation function:
Λ N c −1
θ xy (l ) = Rxy (l ) + R xy (l ) = ∑a a
m= 0
l
x
l −1
y (8.12)
θx , y ( N c − l ) = θ y , x (l ) (8.13)
Λ Λ l −1 N c −1
θ xy (l ) = R xy (l ) − R xy (l ) = ∑ a a i
x
i −1
y − ∑a a i
x
i −1
y (8.14)
i =0 n=l
Λ Λ
θ x , y ( N c − l ) = − θ y , x (l ) (8.15)
271
{
θc = max θxy (l ):0 ≤ l ≤ N c − 1, x ∈ χ , y ∈ χ , x ≠ y } (8.16)
{
θa = max θx (l ) :0 ≤ l ≤ N c − 1, x ∈ χ } (8.17)
Λ
Λ
θ c = max θ xy (l ):0 ≤ l ≤ N c − 1, x ∈ χ , y ∈ χ , x ≠ y (8.18)
and
Λ
Λ
θ a = max θ x (l ) :0 ≤ l ≤ N c − 1, x ∈ χ (8.19)
Λ Λ Λ
The larger of θ c and θ a is denoted as θ max .
The two requirements mentioned in the introduction are now equivalently
reformulated: (1) For each sequence in the set, both the periodic out-of-phase
autocorrelation function and the a-periodic out-of-phase autocorrelation function must
be small for 1≤ l ≤ Nc–1. (2) For each pair of sequences x and y, both the periodic
autocorrelation and the a-periodic cross-correlation function must be small for all l.
input of register 4. The shift direction of the shift register is from left to right (4-3-2-1-
0).
The register in Figure 8.14 with five sections generates a code sequence with length
Nc=25–1=31. We show in the next section that the feedback connections are chosen
very carefully in order to generate a code sequence with satisfactory correlation
properties. In general, the configuration of a linear binary shift register of n sections is
described by a generator polynomial, which is a binary polynomial of degree n. The
number n is the number of sections of the shift register:
h( x ) = h0 x n + h1 x n −1 +...+ hn −1 x + hn (h ∈{0,1})
i (8.20)
+
.
4 3 2 1 0
h(x) = x5 + x2 + 1
We use the notation used by Sarwate and Pursley [11] where h0 = hn = 1 and hi = 1 for i
≠ 0 and i ≠ n if there is a feedback connection from the ith cell. It is convenient and
conventional to represent the polynomial h(x) by a binary vector h = (h0, h1, ..., hn) and
to express this vector in octal notation. For example, the shift register in Figure 8.14 is
represented by generator polynomial h(x) = x5 + x2 +1. The binary representation of this
polynomial is 100101 and the octal representation is 45. If the sequence generated by
h(x) is denoted as u, then a circular shifted version of u is denoted as Tu where i is the
number of shifts. For instance, if u = 10011101 then Tu = l001110. Note that TNu =
T0u = u.
8.3.2 PN Codes
Three basic classes of code sequences suitable for CDMA applications are discussed in
this section:
Irreducible polynomial
This is a polynomial that can not be decomposed into other polynomials. Example: The
polynomial x2 + 2x +1 is not irreducible since x2 + 2x +1 = (x + 1)(x +1). The
polynomial x2 + x +1 is irreducible.
Exponent
The smallest positive integer p for which the polynomial h(x) is a divisor of (1 – xp) is
called the exponent of h(x).
Primitive polynomial
A primitive polynomial of degree n is an irreducible polynomial with exponent 2n –1.
It has been proven that the periodic autocorrelation for a maximum length
sequence u is given by
N l = 0 mod N c
θu (l ) = c (8.21)
− 1 l ≠ 0 mod N c
( n + 1)
1+ 2 2 n odd
t ( n) = ( n+2 )
(8.22)
1 + 2 2 n even
θ a = θ c = t ( n) (8.23)
274
Figures 8.15 to 8.17 show preferred pairs of maximum length sequences for periods 31,
63, and 127, respectively.
Figure 8.15 Preferred pairs of maximum length sequences of period 31. The vertices of every
triangle form a maximal connected set.
It is clear from these figures that only very small sets of maximum length
sequences can have good periodic cross-correlation properties. For multiple access
systems, it is desirable to obtain larger sets of sequences of period Nc = 2n – 1 which
have the same bound θ≤ t(n) on the peak periodic cross-correlation as do the
maximal connected sets. Although there are no analytical results that give the values of
Λ
the maximal a-periodic cross-correlation θ c for maximum length sequences generated
Λ
by preferred pairs, Massey and Uhran [13] have obtained bounds on θ c . They state that
if the maximum of the periodic cross-correlation and the periodic autocorrelation θmax
equals t(n), then the bound for the a-periodic cross-correlation is
n −1
2 + 2 2 + 1
n
Λ n even
θc = (8.24)
2 n −1 + 2 2 + 1
( n −1 )
n odd
We did not find a bound in the literature for out-of-phase a-periodic autocorrelation.
275
Figure 8.16 Preferred pairs of maximum length sequences of period 63. Every pair of adjacent
vertices is a maximal connected set.
Gold Sequences
One important class of periodic sequences that provides larger sets of sequences with
good periodic cross-correlation is the class of Gold sequences. A set of Gold sequences
of period N = 2n−1 consists of (Nc + 2) sequences for which the maximum periodic
cross-correlation θc = t(n) with t(n) given by (8.22). A set of Gold sequences is
constructed from appropriately selected maximum length sequences. Suppose a shift
Λ Λ
register polynomial f(x) factors into h(x) h( x ) where h(x) and h( x ) have no factors in
common. Then the set of all sequences generated by f(x) is just the set of all sequences
of the form a ⊕ b, where a is some sequence generated by h(x), b is some sequence
Λ
generated by h( x ) , and a and b are not necessarily nonzero sequences. Now suppose
Λ
that h(x) and h( x ) are two different primitive binary polynomials of degree n that
generate the maximum length sequences u and v, respectively, of period Nc = 2n −1. If y
Λ
denotes a nonzero sequence generated by f(x) = h(x) h( x ) , then either
276
Figure 8.17 Preferred pairs of maximum length sequences of period 127. Every set of six
consecutive vertices is a maximal connected set.
y = T iu (8.25)
or
y = T jv (8.26)
or
y = T iu ⊕ T jv (8.27)
Λ
G ( u, v ) = {u, v, u ⊕ v, u ⊕ Tv, u ⊕ T 2
v ,..., u ⊕ T N c −1v} (8.28)
n −1
2 + 2 +1
n
Λ 2
n even
θc = ( n − 1)
(8.29)
2 n −1 + 2 2 + 1 n odd
We did not find a bound in the literature for out-of-phase a-periodic autocorrelation.
h(x) = 1+x5 + x6
+
5 4 3 2 1 0
+ + + +
5 4 3 2 1 0
Λ
4 5 6
h( x ) = l + x + x + x + x
Figure 8.18 Shift register configuration for set of Gold codes with length Nc = 63.
Kasami Sequences
Let n be even and u denote an maximum length sequence of period Nc = 2n −1
generated by h(x). Consider the sequence w of period 2n/2 −1, which is generated by the
Λ
polynomial h( x ) whose roots are the s(n)th powers of the roots of h(x), where
s( n ) = 1 + 2
n
2
(8.30)
278
Λ
Furthermore, since h( x ) is shown to be a polynomial of degree n/2, w is a maximum
length sequence of period 2n/2 −1. Now consider the sequences generated by the
Λ
polynomial h(x) h( x ) of degree 3n/2. Clearly, any such sequence must be of one of the
forms T iu, T jw or T iu ⊕ T jw, where 0 ≤ i ≤ 2n −1 and 0 ≤ j≤ 2n/2 −1. Thus, any
Λ
sequence y of period 2n −1 generated by h(x) h( x ) is one of the sequences in the set
G(u,w) defined by
{u, w, u ⊕ w, u ⊕ Tw, u ⊕ T }
Λ
G ( u , w) = w,..., u ⊕ T 2 w
2 2n
(8.31)
This set of sequences is called the small set of Kasami sequences denoted by Ks(u) in
honor of Kasami, who discovered that the correlation functions for sequences belonging
to Ks(u) take on the values in the set {−1, −s(n), s(n) −2} with s(n) given by (8.30).
Consequently, for the set Ks(u),
θ max = s(n) = 1 + 2
n
2
(8.32)
Notice that θmax for the set Ks(u) is approximately one half of the value of θmax achieved
by the sets discussed previously. On the other hand, Ks(u) contains only 2n/2 = (Nc+1)1/2
sequences, while the sets of Gold code sequences contain Nc +2 sequences. An example
for a shift register configuration that produces a small set of Kasami codes of length Nc
= 63 is presented in Figure 8.19. The octal representation of the shift registers
Λ
producing u and v are 103 and 15, respectively, h(x) = 1 + x + x6 = 1000011 and h( x )
= 1 + x2 + x3 = 1101.
Besides the small sets of Kasami sequences, there are also large sets of Kasami
sequences. Let n be even and let h(x) denote a primitive binary polynomial of degree n
that generates the maximum length sequence u. Let w = u[s(n)] denote a maximum
length sequence of period 2n/2 −1 generated by the primitive polynomial h ′ (x) of degree
Λ
n/2 and let h( x ) denote the polynomial of degree n that generates u[t(n)].
Λ
Then, the set of sequences of period Nc generated by h(x) h’(x) h( x ) , called the
large set of Kasami sequences and denoted by KL(u), is as follows:
1. If n = 2 mod 4, then
2 2 − 2
n
{
K L (u) = G (u, v )U U T i w ⊕ G (u, v ) } (8.33)
i = 0
where v = u[t(n)] and G(u,v) is defined in (8.28).
279
h(x) = 1 + x + x6
+
5 4 3 2 1 0
+ +
2 1 0
Λ
2 3
h( x ) = 1 + x + x
Figure 8.19 Shift register configuration for the small set of Kasami codes with length Nc = 63.
2. If n = 0 mod 4 then
2 2 − 2 i
n
{
K L (u) = H t ( n ) (u)U U T w ⊕ H t ( n ) (u) }
i =0
where v(t) is the result of decimating T i(u) by t(n) and Ht(n)(u) is defined as
H t ( n ) (u) = u, u ⊕ v (1) , u ⊕ Tv (1) , ..., u ⊕ T 3 −1v (1)
Nc
(8.35)
u, u ⊕ v ( 2 ) , u ⊕ Tv ( 2 ) , ..., u ⊕ T N c 3 −1v ( 2 )
In either case, the correlation functions for KL(u) take on the values in the set {−1,−t(n),
t(n) −2, −s(n), s(n) −2} and θmax = t(n). If n = 2 mod 4 then KL(u) contains 2n/2(2n + 1)
sequences while if n = 0 mod 4, KL(u) contains 2n/2(2n + 1) sequences.
An example of a shift register configuration that produces a large set of Kasami
codes of length Nc = 63 is presented in Figure 8.20. The octal representation of the shift
280
registers producing the sequences u, v, and w are 103, 15, and 147, respectively, (h(x) =
Λ
1 + x + x6 , h( x ) = 1 + x2 + x3, and h ′ (x) = 1 + x + x2 + x5 + x6).
Λ
6
h( x ) = 1 + x + x
5 4 3 2 1 0
h(x) = 1 + x2 + x3
2 1 0 +
+ + +
5 4 3 2 1 0
2 5 6
h ′ (x) = 1 + x + x + x + x
Figure 8.20 Shift register configuration for the large set of Kasami codes with length Nc = 63.
Numerical Examples
Table 8.2 presents a number of examples of PN code sequences. Three types of
sequences are considered. Gold sequences (G), small-set Kasami sequences (KS), and
large-set Kasami sequences (KL). The first column denotes the code length Nc, the third
column shows the maximum number of code sequences per set, and in the fourth
column the values that periodic cross-correlation can take are given. The last three
columns show the octal representation of the polynomials describing the linear binary
shift registers used to generate the desired code sequence. Table 8.2 only shows some
examples for pseudo-random code sequences.
281
Table 8.2
Examples of Gold Codes, Small Sets of Kasami Codes, and
Large Sets of Kasami Codes and Their Basic Properties
G, Gold codes; KS, small sets of Kasami codes; KL, large set of Kasami codes.
From Table 8.2 it is clear that for a code sequence with length Nc = 63, the small
set of Kasami codes has better correlation properties than the set of Gold codes.
However, the number of code sequences in the set is less (8 instead of 33 in the case of
Gold codes). The large set of Kasami sequences has the same cross-correlation
properties as the set of Gold codes, but the number of code sequences in the set is
higher (520).
We plotted the correlation functions of some Gold and Kasami code sequences.
For the autocorrelation we used the code generated by the unshifted registers. The
cross-correlation function was produced by considering one code generated by
unshifted registers and one code generated by shifting one of the registers 1 chip period.
Figures 8.21(a) and 8.21(b) show the periodic autocorrelation and cross-
correlation of a Gold code with length Nc=127. We considered the codes x = u ⊕ w and
y = u ⊕ T1w. It is clear that the periodic out-of-phase autocorrelation and cross-
correlation have the values {–17, –1, 15}. Figures 8.22(a) and 8.22(b) show the a-
periodic out-of-phase autocorrelation and cross-correlation for the same code sequence.
The results of these figures are consistent with Table 8.2.
It is not possible to find preferred pairs with sequence-length Nc = 255, and
hence Gold codes with length Nc = 255 having a three-valued periodic cross-correlation
function do not exist. Figures 8.23(a) and 8.23(b) show the periodic autocorrelation
and cross-correlation for a code sequence generated by the XOR-sum of two not
preferred maximum length sequence with length Nc = 255.
282
Autocorrelation Cross-correlation
Figure 8.21 (a) Periodic autocorrelation and (b) cross-correlation for Gold code with code length
Nc = 127. Generator polynomials 211 and 277 (octal).
Cross-correlation
Autocorrelation
Figure 8.22 (a) a-Periodic autocorrelation and (b) cross-correlation for Gold code with code
length Nc = 127. Generator polynomials 211 and 277 (octal).
Autocorrelation Cross-correlation
283
Figure 8.23 (a) Periodic autocorrelation and (b) cross-correlation for Gold code with Nc = 255.
Generator polynomials 717 and 765 (not preferred sequences).
Autocorrelation Cross-correlation
Figure 8.24 (a) Periodic autocorrelation and (b) cross-correlation functions for small-set Kasami
code with Nc=255. Generator polynomials 435 and 023.
Code sequences with length Nc=255 that have better correlation properties are
the Kasami sequences. Figures 8.24(a) and 8.24(b) show the autocorrelation and cross-
correlation of a small set of Kasami codes. Figures 8.25(a) and 8.25(b) show the
autocorrelation and cross-correlation of a large set of Kasami codes.
284
Figure 8.25 (a) Periodic autocorrelation and (b) cross-correlation functions for large Kasami
code with Nc = 255. Generator polynomials 435, 023, and 675.
Path 1 = j, user 1
Figure 8.26 Overlap of bits (and code sequences) due to multipath interference.
285
It is worth mentioning here that the interference power is related to this variance. In
(8.36), b1−1 and b10 are, respectively, the previous and the next bit with values {−1,1}
Λ
having equal probability of occurrence. The functions R(τ) and R (τ ) are the partial
correlation functions. If the delay is a multiple of the chip duration (τ = pTc), then the
expressions for the discrete correlation functions are
p
1
R ( p) =
Nc
∑a a i
1
i− p
k (8.37)
i =0
Λ N c −1
1
R ( p) =
Nc
∑a a i
1
i− p
k (8.38)
i = p +1
where aki is the ith code symbol of the sequence of user k and Nc is the length of the
code sequence. To compute the variance in (8.36), we average over all possible time
delays and over all possibilities for b1−1 and b10. The time delays in a multipath
environment are obviously not multiples of the code symbol duration. However, if we
know the discrete correlation function, then the correlation for a non discrete time delay
is very easy to calculate by considering that the correlation function is linear between
two discrete time delays, as shown in Figure 8.27.
To find an expression for the variance in (8.36), we approximate the Gold and
Kasami sequences by a random code sequence consisting of Nc code symbols. For a
random code sequence, the code symbols aki = 1 and aki = −1 occur with equal
probability. Assuming that the data bits are –1 or 1 with equal probability, the variance
in (8.36) is written as
2 2
1
E R(τ ) + R(τ ) + E R(τ ) − R(τ )
Λ 1 Λ
ψa = (8.39)
2 2
aki
2τ
0 1
i-1
ak ak i
For the two chips aki and akj−1 there are two possibilities: either they have the same sign
or they have opposite sign. Both situations occur with the same probability in case of a
random sequence. The overlap area denoted here by AO determines the contribution of
chip aki to the correlation function (normalized on the code length Nc). In the case of
equal bits, the overlap area, normalized on the code length N is 1/N, while in the case of
unequal bits, the part between 0 and τ cancels the part between τ and 2τ, implying that
the overlap area is (1−2τ)/Nc. In terms of the overlap area:
1
A0 = if a ki−1 = a ki
Nc
(8.40)
287
1 − 2τ
A0 = if a ki−1 = a ki
Nc
Now, the expectation of A02 is calculated by averaging over all possible delays
1 (1 − 2τ ) 2
1
E[ A ] =
1 1 2
2
0
2 Nc 2 + ∫
2 0 Nc 2 dτ =
3N c 2
(8.41)
ψ a = N c E[ A 2 ] =
2
(8.42)
3N c
Code number
(e)
Figure 8.29 (a) Gold code (Nc = 31), (b) Kasami code (Nc = 31), (c) Gold code (Nc = 127), (d)
Kasami code (Nc = 255), and (e) Gold code (Nc = 511).
Table 8.3
Quantitative Comparison of Simulation Results and Approximation
for Correlation Variance for Several Practical Code Sequences
289
.
8.3.4 Conclusions
REFERENCES