Language selection

Search

Patent 2620101 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 2620101
(54) English Title: QUADRIPHASE SPREADING CODES IN CODE DIVISION MULTIPLE ACCESS COMMUNICATIONS
(54) French Title: CODES D'ETALEMENT DE PHASE QUADRIVALENTE DANS DES COMMUNICATIONS A ACCES MULTIPLE PAR CODE DE REPARTITION
Status: Expired
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04J 13/10 (2011.01)
  • H04B 1/7103 (2011.01)
  • H04B 7/216 (2006.01)
  • H04W 16/14 (2009.01)
(72) Inventors :
  • POPOVIC', BRANISLAV M. (Sweden)
(73) Owners :
  • TELEFONAKTIEBOLAGET L M ERICSSON (PUBL) (Sweden)
(71) Applicants :
  • TELEFONAKTIEBOLAGET L M ERICSSON (PUBL) (Sweden)
(74) Agent: ERICSSON CANADA PATENT GROUP
(74) Associate agent:
(45) Issued: 2012-08-07
(22) Filed Date: 1999-06-11
(41) Open to Public Inspection: 1999-12-23
Examination requested: 2008-02-25
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data:
Application No. Country/Territory Date
09/097,916 United States of America 1998-06-16

Abstracts

English Abstract

Optimal code sequences are generated for use in spreading and de-spreading functions in a code division multiple access (CDMA) communications system. In particular, a family of quadriphase spreading codes is employed that provides a maximal number of spreading codes to achieve a high capacity in the CDMA communications system while at the same time having a minimal peak cross-correlation between any two spreading codes within that family to ensure cross-correlation interference is kept at or below acceptable levels. That optimal quadriphase spreading code family is the S(2) family of four phase code sequences of length L = 2m-1 where m is an integer greater than or equal to 5. The size of the S(2) family of quaternary spreading codes is (L + 2)(L + 1)2, and the maximum cross-correlation is 1 + 4.sqroot.(L +1). The spreading codes are preferably allocated to base stations using specific code subsets of the S(2) family having the same cross-correlation properties of the S(O) and/or S(1) family of codes. Spreading codes are advantageously extended by one or more code symbols as necessary or otherwise desirable. For example, to support variable transmission rate services, it is desirable to employ spreading codes whose length may be expressed as an integer multiple of each spreading factor in the mobile communications system. Since individual spreading codes have a length of 2m-1, one code symbol is added to the generated spreading code.


French Abstract

Des séquences de codes optimaux sont produites pour les fonctions d'étalement et de « désétalement » dans un système de communications à accès multiple par répartition en code (CDMA). En particulier, l'utilisation d'une famille de codes d'étalement en quadrature fournit le nombre maximal de codes pour obtenir une grande capacité du système de communications CDMA, tout en ayant une corrélation croisée de crête minimale entre deux codes d'étalement quelconques au sein de cette famille, pour s'assurer que le brouillage de corrélation croisée est maintenu à des niveaux ou en deçà de niveaux acceptables. Cette famille de codes d'étalement en quadrature optimale est la famille S(2) de séquences de codes à quatre phases de longueur L = 2m-1, où m est un nombre entier supérieur ou égal à 5. La taille de la famille S(2) des codes d'étalement quaternaire est (L + 2)(L + 1)2, et la corrélation croisée maximale est 1 + 4 racine carrée de (L + 1). Les codes d'étalement sont de préférence attribués aux stations de base au moyen de sous-ensembles de codes spécifiques de la famille S(2) présentant les mêmes propriétés de corrélation croisée de la famille de codes S(0) et S(1). Les codes d'étalement sont avantageusement étendus par un ou plusieurs symboles, au besoin. Par exemple, pour prendre en charge des services à vitesse de transmission variable, il est judicieux de faire appel à des codes d'étalement dont la longueur peut être exprimée sous la forme d'un nombre entier multiple de chaque facteur d'étalement du système de communications mobile. Étant donné que les codes d'étalement individuels ont une longueur de 2m-1, un symbole de code est ajouté au code d'étalement produit.

Claims

Note: Claims are shown in the official language in which they were submitted.





29

CLAIMS


1. In a code division multiple access (CDMA) mobile communications system in
which a plurality of mobile radio stations communicate over a radio channel
with one
or more radio base stations located in corresponding geographic areas, each
radio
channel corresponding to one of a set of spreading codes, a radio station
comprising:
a code generator for selectively providing quadriphase spreading codes,
said codes determined from an S(2) set of quaternary spreading codes
generated by a modulo-4 summing of two binary sequences, each of which
multiplied
by two, and a quaternary sequence, said sequences produced by different
initial shift
register states;
said codes having a maximal number of quaternary spreading codes with a
minimal cross-correlation and extending the length of the S(2) quaternary
spreading
codes by a code symbol to make the code length a power of 2;
said codes for supporting multi-rate communications in the CDMA mobile
communications system;
a spreader for spreading an information signal to be transmit by the radio
station using one of the quadriphase spreading codes allocated to the radio
station to
provide a spread signal; and
a modulator for modulating the spread signal onto a radio carrier.

2. The radio station in claim 1, further comprising:
a demodulator for demodulating a received CDMA signal from the radio
carrier; and
a de-spreader for de-spreading the received CDMA signal using the one
quadriphase spreading code to provide a received information signal.


3. The radio station in claim 1, wherein information signals to be transmit
are
allocated into a real data stream and an imaginary data stream, the radio
station further
comprising:
a real channel spreader for spreading the real data stream using a real
channelization code;
an imaginary channel spreader for spreading the imaginary data stream using
an imaginary channelization code; and




30


a combiner for combining outputs from the real and imaginary channel
spreaders to generate a complex signal,
wherein the spreader spreads the complex signal using the one quadriphase
spreading code allocated to the mobile radio.


4. The radio station in claim 3, wherein the modulator is a quadrature phase
shift
keying (QPSK) modulator and wherein the complex signal is split into real and
imaginary components which are then input to real and imaginary inputs of the
QPSK
modulator.


5. The radio station in claim 4, wherein the code generator maps the
quaternary
spreading code to a quadriphase spreading code.


6. The radio station in claim 1, wherein the code generator extends the length
of
the S(2) quaternary spreading codes periodically.


7. The radio station in claim 1, wherein the S(2) quaternary spreading codes
are
extended by one quaternary symbol so that the S(2) spreading code length is a
multiple of each of multiple spreading factors used in the CDMA mobile
communications system.


8. In a code division multiple access (CDMA) communications system in which
a plurality of communications devices communicate using allocated
communications
channels, each channel corresponding to one of a set of CDMA spreading codes,
a
method comprising:
generating a family of original S(2) quaternary spreading codes, each original

quaternary spreading code having a predetermined length, by modulo-4 summing
of
two binary sequences, each of which multiplied by two, and a quaternary
sequence,
said sequences produced by different initial shift register states; and
extending, in order to generate a family of CDMA spreading codes, the length
of the original S(2) quaternary spreading codes from the family of original
quaternary spreading codes by a code symbol to make the code length a power of
2.

9. The method in claim 8, wherein the extending further comprises:




31


detecting the end of one of the original S(2) quaternary spreading codes, and
adding the code symbol to the end of one of the original S(2) quaternary
spreading codes.


10. The method in claim 8, wherein the added code symbol is the same for all
of
the original S(2) quaternary spreading codes in the family.


11. The method in claim 8, wherein the added code symbol to the one original
quaternary spreading code is the same as the first code symbol in the one
original
code.


12. The method in claim 8, wherein the added code symbol is added to the end
of
one of the original S(2) quaternary spreading codes periodically.


13. The method in claim 8, wherein the family of original S(2) quaternary
spreading codes are quadriphase codes, and each added code symbol used to
extend
the original S(2) quaternary spreading code has four possible values.


14. The method in claim 8, wherein the added code symbol is selected to
minimize cross-correlation between CDMA spreading codes.


15. The method in claim 8, further comprising the steps of:
allocating a first subset of the S(2) code family to a first base station or
first
base station sector, and
allocating a second subset of the S(2) code family to a second base station or

second base station sector,
wherein the spreading codes in the first and second subsets have lower cross-
correlation than spreading codes in the particular spreading code family.


16. The method in claim 15, wherein the first and second subsets are
associated
with one or both of the S(0) and S(1) code families.


17. The method in claim 16, wherein each of the first and second spreading
code
subsets is defined by three component sequences such that a first component
sequence




32


includes an index of r = 0, 1, 2..., L + 1, where L is the spreading code
length, and
one or more of indices for the second and third component sequences are
different for
the first and second base stations.


18. The method in claim 15, further comprising:
for a particular call, assigning a mobile station associated with the first
base
station an assigned code from the first subset of spreading codes;
associating a flag with the assigned code;
setting the flag to a first value when the mobile station is involved in the
call;
setting the flag to a second value after a prescribed time expires; and
prohibiting assignment of the assigned code to another mobile station until
after the prescribed time expires.


19. The method in claim 18, further comprising:
setting the flag to the first value at the beginning of the call, and
measuring the prescribed time from the beginning of the call.


20. The method in claim 18, wherein the mobile station employs the assigned
code
for the duration of the call even when the call is handed-over to the second
base
station.


21. The method in claim 20, further comprising:
setting the flag to the first value when the mobile is involved in the call;
measuring the prescribed time from a time associated with the hand-over; and
if the mobile station has not been in a handover during the call, the flag is
set
to the second value at the end of call.


22. A CDMA code generator providing CDMA spreading codes, comprising:
one or more feedback shift registers having m stages, where m is an integer,
where an output of a last stage is fed back to an input of a first stage, the
output of the
one or more feedback shift registers corresponding to one of a family of 9(2)
quaternary spreading codes of length L = 2m-1;




33


means for generating codes in the S(2) family including means for multiplying
two binary sequences by two and means for modulo-4 summing of said two binary
sequences and a quaternary sequence;
electronic circuitry for adding an additional code symbol to the one
quaternary spreading code to provide an extended S(2) quaternary spreading
code
corresponding to one of the CDMA spreading codes.


23. The CDMA code generator in claim 22, further comprising:
a comparator for detecting an end of the one code and signaling the electronic

circuitry to add to the additional code symbol to the end of the one code.


24. The CDMA code generator in claim 22, further comprising:
a counter for generating a counter output at the end of an extended code
period
which causes the shift registers to be set respective initial states.


25. The CDMA code generator in claim 22, wherein the added code symbol is the
same for all of the codes in the family.


26. The CDMA code generator in claim 22, wherein the added code symbol to the
one original code is the same as the first code symbol in the one original
code.


27. The CDMA code generator in claim 22, wherein a value of the additional
code
symbol is selected to reduce cross-correlation between the CDMA spreading
codes.

28. The CDMA code generator in claim 22, wherein the family of codes
correspond to a family of quaternary sequences of length L = 2m-1, where m is
an
integer greater than or equal to 5, having code elements from an alphabet {0,
1, 2, 3},
generated by summing modulo-4 three component sequences including a first
component quaternary sequence a, a second component binary sequence b, and a
third
component binary sequence c, wherein the one or more feedback shift registers
includes first, second, and third feedback shift registers that generate the
first, second,
and third component quaternary sequences, respectively, with the output of the
second




34


and third shift registers being multiplied by 2 before the first, second, and
third
component quaternary sequences are modulo-4 summed.


29. The CDMA code generator in claim 22, wherein the code generator maps the
extended quaternary sequence to complex quadriphase CDMA spreading codes.

Description

Note: Descriptions are shown in the official language in which they were submitted.



CA 02620101 2008-02-25

QUADRIPHASE SPREADING CODES IN CODE DIVISION
MULTIPLE ACCESS COMMUNICATIONS

This is a divisional application of Canadian Patent Application Serial No.
2,335,018 filed on June 11, 1999.

FIELD OF THE INVENTION

The present invention relates to spread spectrum communications, and

more particularly, to the generation of optimal code sequences used to perform
spreading
and de-spreading functions in a code division multiple access communication.
It should
be understood that the expression "the invention" and the like encompasses the
subject-
matter of both the parent and divisional applications.

BACKGROUND AND SUMMARY OF THE INVENTION

A direct sequence spread spectrum (DSSS) system is a wide-band system
in which the entire frequency bandwidth of the system is available to each
user all the
time. A DSSS system employs a spreading signal that expands or "spreads" the

bandwidth of the transmitted signal much more than it is required for the
transmission of
information symbols. The spreading signal is usually called a spreading or
scrambling
code or sequence. The term spreading code is generally adopted for this
description.
Different users in a DSSS system are distinguished using the different
spreading codes.
This is why DSSS systems are also referred to as Direct Sequence-Code Division

Multiple Access (DS-CDMA) systems. In general, spreading codes are usually bi-
phase,
with elements belonging to the set {+1, -1 }, or polyphase, with elements
belonging to the
set of complex numbers corresponding to equidistant points on the unit circle
in the


CA 02620101 2008-02-25
la

complex plane. For example, quadriphase corresponds to four points of unit
length from
the origin.

In general, there is a trade-off between increasing the number of spreading
codes and decreasing interference. The number of spreading codes used to
distinguish

mobile station users, particularly on the uplink direction from a mobile
station to a base


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
2
station, should be as large as possible. This is because more spreading codes
provide
more radio channels so that niore mobile stations can communicate at the same
time in
the same geographic area. But increasing capacity in a CDMA system comes at a
cost--
interference which reduces the quality of communication for all users.
However, it is

desirable that the amount of correlation between any two of the spreading
codes be
reduced to niinimize the interference between the mobile stations
communicating using
those codes. More fornially, the maximum, periodic, cross-correlation between
any two
spreading codes should be as low as possible.

The periodic cross-correlation, also called even correlation, is equal to a
io correlation output under the assumption that the data modulation format
does not
change during the correlation operation. In practice, successive data
modulation
symbols have randoni rather than periodic values. Therefore, an bdd
correlation
function better represents the correlation output when a data symbol of
interfering
signal changes during the correlation operation. While both the even and odd

correlation functions should be evaluated to obtain an interference measure
for any two
spreading codes assigned to a pair of mobile stations to determine the degree
of cross-
correlation, odd cross-correlation is difficult to determine theoretically for
a given set ot'
spreading codes. Therefore, the even correlation function is used to compare
different
families or sets of spreading codes to deterniine an optimal family/set.

The present invention provides an optimal set of spreading codes for use
for example in a wideband-CDMA (WCDMA) mobile radio communications system.
Although this set of spreading codes may be employed in synchronized, downlink
transniissions from the base station, it is particularly useful in the uplink
direction froni
the mobile station to the base station whcre the different niobile stations
are not

mutually synchronized. 'I'hc optinial spreading code family provides a large
number of
codes that also have low cross-correlation between spreadi g codes for all
possible tinie
shifts betwecn the different mobile stations. In this way, the niobile
communications


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
3
system capacity is significantly increased while still providing satisfactory
radio
communications with minimum interference to/from the other mobile stations.

In a preferred embodiment, the optimal code family is the S(2) family of
four-phase code sequences of length L 2"' - 1, where m is an integer greater
than or
equal to 5. The codes in the S(2) family are generated by summing modulo-4
three

component sequences including a first component quaternary sequence a(n), a
second
component binary sequence b(n), and a third component binary sequence c(n),
where
the binary scquences b(n) and c{n) are multiplied by two before summing. The
size of
the family, i.e., the number of quaternary spreading codes, is (L + 2)(L + 1)2
, and the

to maximuni cross-correlation between any two of the codes is I + 4 (L + l) .
The three
component sequences may be generated using corresponding linear feedback shift-

register generators. The set of (L + 2)(L + 1)2 different S(2) sequences is
obtained by
combining the different component sequences produced by the different initial
shift
register states: (L + 2) initial states for an a(n) sequence and (L + 1)
initial states for

t 5 b(n) and i'or c(n) scquences.

As an example, the number of S(2) spreading codes having a length (L)
of 255 chips is 16,842,752 with a maximum, absolute, even cross-correlation of
65.
Over 16 million uplink spreading codes provides considerable system capacity.
If one
assumes that no more that 256 mobile stations will be served in a single base
station

20 sector, then 65, 792 code sets may be re-used in the mobile cotnmunications
svstenl.
This large ntimber of codc sets provides considerable flexibility in network
planning.
Although'spreading codes from the S(2) family may be randonily

selected and allocated to various users in a CDMA niobile communications
system, a
preferred example embodinient of the present invention allocates the spreading
codes in
25 accordanci~ with a specific code allocation procedure that achieves inore
advantageous


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
4
results compared with random code selection. Assuming the entire mobile
communications system employs the S(2) family of codes, specific spreading
code
subsets of the S(2) family of codes are allocated to each base station (or
base station
sector). The spreading code subsets have the same cross correlation properties
of the

S(O) and/or S(l) families of codes and provide reduced interference for mobile
stations
operating in the same base station (or same base station sector) as compared
to
randomlv selected codes from the S(2) family of codes.

Capacity is one important aspect of a conimunications system, but
services are also very important. There are certain services provided in
mobile

communications systems like WCDMA cellular systems that may require or support
more than one data rate. For variable rate and other services, it is desirable
to provide
spreading codes whose length may be expressed as an integer multiple of each
spreading factor in the mobile cominunications system. The spreading factor
corresponds to the number of chips used to spread a single data synlbol.
Relatively

short spreading codes, whose code period covers one or more data symbols, are
desirable in order to support low-complexity, multi-user detection at the CDMA
radio
base stations.

One way of iniplementing multiple data rates is to use those data rates
which allow corresponding spreading factors (SF) to be expressed as SF(k) =
L12k
where L is the length of each spreading codes in the code family and k is a
positive

integer and varies in proportion to the data rate. Therefore, the spreading
code length
should be some power of two. Having the spreading code length expressible as
an
integer niultiple of each possible spreading factor in the system
significantly alleviates
overall svnchronization in the receiver making it independent of the data
rate. In other

words, if the spreading code period contains an integer number of data
symbols, data
frame and data synchronization in the receiver are derived automatically when
the
receiver despreading sequence is synchronized with the incoming signal.
Otherwise,


CA 02620101 2008-02-25

the data symbol position with respect to the (relatively small) spreading code
period
fluctuates over the time, i.e., it is different in consecutive spreading code
periods. As a
result, it is difficult to attach a single data synchronization signal to a
spreading code
period, and consequently, a separate circuit in addition to a code
synchronization circuit

5 must be employed to acquire and track data synchronization.

However, the length (L) of the codes in typical spreading code families is
2'n -1, like the S(2) spreading code family described above. For example, if
m=8, the
code length is 255. In order to obtain the advantages of optimal high capacity
at
minimal cross-correlation code interference as well as support the variable
data rate
applications, the present invention extends the length of each spreading code
by a code
symbol to make the spreading code length a power of 2. In a preferred example
embodiment, an additional code symbol is added to the end of each spreading
code.
More specifically, the extended spreading code is obtained by adding another
code
symbol after L symbols of the original (non-extended) code of length L.

In one example embodiment, the added code symbol may be fixed, i.e.,
have the same value, for all spreading codes in the family. In other example
embodiments, the added code symbol has the same value as the first chip in the
original
spreading code. In the case of quaternary spreading codes like those in the
S(2)
family, the additional spreading code symbol may have four possible values,
i.e., 0, 1,
2, or 3. Preferably, the value of the additional spreading code symbol is
selected to
optimize the mutual cross-correlation between the extended spreading codes.
Broadly in one aspect, the invention provides in a direct sequence spread
spectrum (DSSS) mobile communications system in which a plurality of mobile
radio
stations communicate with one or more radio base stations located in
corresponding
geographic areas over a radio channel, each radio channel corresponding to one
of a set
of spreading codes, one or more of the radio stations comprising:
a spreading code generator configured to provide quaternary spreading codes
from a
family of quaternary sequences of length L=2' -1, where m is an integer
greater than or
equal to 5, having code elements from an alphabet {0, 1, 2, 3}, generated by
summing


CA 02620101 2008-02-25
5a
modulo-4 three,component sequences including a first component quatemary
sequence a,
a second component binary sequence b, and a third component binary sequence c,
where
the component binary sequences b and c are multiplied by 2 before the modulo-4
summing;
a spreader configured to spread an information signal to be transmitted by the
mobile
radio using one of the quaternary spreading codes to provide a spread signal;
and
a de-spreader configured to de-spread a received signal using one of the
quatemary
spreading codes.

Broadly in one aspect, the invention provides in a code division multiple
access
(CDMA) mobile communications system in which a plurality of mobile radio
stations
communicate with one or more radio base stations located in corresponding
geographic
areas over a radio channel, each radio channel corresponding to one of a set
of spreading
codes, one or more of the radio stations comprising:
a code generator configured to provide quadriphase spreading codes determined
from an
S(2) set of quaternary spreading codes having a maximal number of quaternary
spreading
codes with a minimal cross-correlation and to extend a length of the S(2)
quatemary
spreading codes to support multi-rate communications in the CDMA mobile
communications system;
a spreader configured to spread an information signal to be transmit by the
radio station
using one of the quadriphase spreading codes allocated to the radio station to
provide a
spread signal; and
a modulator configured to modulate the spread signal onto a radio carrier.

Broadly in one aspect, the invention provides in a code division multiple
access
(CDMA) communications system in which a plurality of communicationsdevices
communicate using allocated communications channels, each channel
corresponding to
one of a set of CDMA spreading codes, a method comprising:
generating a family of original codes, each original code having a
predetermined length;
and
extending the length of original codes from the family of spreading codes by a
code
symbol to generate a family of CDMA spreading codes by detecting the end of
one of the
original codes, and adding the code symbol to the end of one of the original
codes;


CA 02620101 2008-02-25

5b
wherein the family of original codes has a length of L=201-1, where m is an
integer, and
a single code symbol is added to the end of the original code periodically.

Broadly in one aspect, the invention provides in a code division multiple
access
(CDMA) communications system in which a plurality of communications devices
communicate using allocated communications channels, each channel
corresponding to:
generating a family of original codes, each original code having a
predetermined length;
and
extending the length of original codes from the family of spreading codes by a
code
symbol to generate a fainily of CDMA spreading codes by detecting the end of
one of the
original codes, and adding the code symbol to the end of one of the original
codes;
wherein the family of original codes are an S(2) family of codes and the code
symbol is
selected to minimize cross-correlation between CDMA spreading codes.

Broadly in once aspect, the invention provides a CDMA code generator providing
CDMA spreading codes, the generator comprising:
one or more feedback shift registers having m stages, where m is an iriteger,
where an
output of a last stage is fed back to an input of a first stage, the output of
the one or more
feedback shift registers corresponding to one of a family of codes; and
electronic circuitry for adding an additional code symbol to the one code to
provide an
extended code corresponding to one of the CDMA spreading codes.

Broadly in one aspect, the invention provides in a mobile communications
system
including plural base stations for communicating with mobile stations and
employing
spreading codes from a particular spreading code family for radio
communications
between the mobile stations and the base stations, a method comprising:
allocating a first subset of the particular spreading code family to a first
base station;
and
allocating a second subset of the particular spreading code family to a second
base
station;
wherein the spreading codes in the first and second subsets have lower cross-
correlation
than spreading codes in the particular spreading code family.


CA 02620101 2008-02-25
5c
Broadly in one aspect, the invention provides in a mobile communications
system
including base station having plural sectors for communicating with mobile
stations and
employing spreading codes from a particular spreading code family for radio
communications between the mobile stations and the base station, a method
comprising:
allocating a first subset of the particular spreading code family to a first
base station
sector; and
allocating a second subset of the particular spreading code family to a second
base
station sector;
wherein the spreading codes in the first and second subsets have lower cross-
correlation
than spreading codes in the particular spreading code family.

Broadly in one aspect, the invention provides in a code division multiple
access
(CDMA) communications system in which a plurality of communications devices
communicate using allocated communications channels, each channel
corresponding to
one of a set of CDMA spreading codes, a method comprising:
generating a family of original S(2) quaternary spreading codes, each original
code
having a predetenmined length; and
extending the length of original codes from the family of original S(2)
quatemary
spreading codes by a code symbol to generate a family of CDMA spreading codes
without having to increase the number of the original codes from the family.

Broadly in one aspect, the invention provides a CDMA code generator providing
CDMA spreading codes, the generator comprising:
one or more feedback shift registers having m stages, where m is an integer,
where an
output of a last stage is fed back to an input of a first stage, the output of
the one or more
feedback shift registers corresponding to one of a family of S(2) quatemary
spreading
codes of length L=2m -1; and
electronic circuitry for adding an additional code symbol to the one S(2)
quaternary
spreading code to provide an extended S(2) quaternary spreading code
corresponding to
one of the CDMA spreading codes.


CA 02620101 2008-02-25

5d
BRIEF DESCRIPTION OF THE DRA.WINGS

The foregoing and other objects, features, and advantages of the invention
will be apparent from the following description of preferred embodiments as
well as
illustrated in the accompanying drawings in which reference characters refer
to the


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
6
same parts throughout the various views. The drawings are not necessarily to
scale,
emphasis instead being placed upon illustrating the principles of the
invention.

Fig. I is a function block diagram of an example mobile communications
system in which the present invention may be advantageously employed;

Fig. 2 is a function block diagram of an example radio station transceiver
in which the present invention may be advantageously employed;

Fig. 3 is a function block diagram illustratina additional details of the
spreader and modulator blocks shown in Fig. 2;

Fig. 4 illustrates a unit circle diagram illustrating four quadriphase values
in a complex plane;

Fig. 5 is a flowchart diagram illustrating example procedures for
providing a spreading code from an optimal S(2) spreading code family in
accordance
with the present invention;

Fig. 6 is a schematic diagram illustrating in further detail the code
generator shown in Fig. 2;

Fig. 7 is a schematic diagram illustrating an extended spreading code
generator in accordance with a fixed extended symbol example embodiment; and

Fig. 8 is a schematic diagram illustrating an example extended spreading
code generator in accordance with a periodic extended symbol example
embodiment;
Fig. 9 is a function block diagrani illustrating example procedures in

accordance with an extended spreading code embodiment of the present
invention; and
Fig. 10 is a graph illustrating a performance of the fixed and periodic
extended spreading codes.


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
7
DETAILED DESCRIPTION OF THE DRAWINGS

In the following description, for purposes of explanation and not
limitation, specific details are set forth, such as particular embodiments,
procedures,
techniques, etc., in order to provide a thorough understanding of the present
invention.

However, it will be apparent to one skilled in the art that the present
invention may be
practiced in other embodiments that depart from these specific details. For
example,
while the present invention is sometimes described in the context of a mobile
radio
station using uplink spreading codes, the present invention is equally
applicable to other
radio stations, e.g., radio base stations, and indeed, to anv spread spectrum

io communications system. In other instances, detailed descriptions ofwell-
known
methods, interfaces, devices, and signaling techniques are omitted so as not
to obscure
the description of the present invention with unnecessary detail.

The present invention is described in the context of a universal niobile
telecomniunications system (UMTS) 10 shown in Fig. 2. A representative,
connection-
oriented, external core network, shown as a cloud -2 niay he for example the
Public

Switched Tclephone Network (PSTN) and/or the lntegrated Services Digital
Network
(ISDN). A representative, connectionless-oriented external core network shown
as a
cloud 14, may be for example the Internet. Both core networks are coupled to
corresponding service nodes 16. The PSTN/ISDN connection-oriented network 12
is

connected to a connection-oriented service node shown as a Mobile Switching
Center
(MSC) node 18 that provides circuit-switched services. In the existing GSM
inodel, the
MSC 18 is connected over an interface A to a Base Station Subsystem (BSS) 22
which
in turn is connected to radio base station 23 over interface A'. The Internet

connectionless-oriented network 14 is connected to a General Packet Radio
Service
(GPRS) node 20 tailored to provide packet-switched type services. Each of the
core
network service nodes 18 and 20 connects to a UMTS Radio Access Network

(URAN) 24 over a radio access network (RAN) interface. URAN 24 includes one or


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
8
more radio network controllers 26. Each RNC 26 is connected to a plurality of
base
stations (BS) 28 and to any other RNC's in the URAN 24.

In the preferred embodiment, radio access is based upon wideband, Code
Division Multiple Access (WCDMA) with individual radio channels allocated
using

CDMA spreading codes. WCDMA provides wide bandwidth for multimedia services
and other high rate demands as well as robust features like diversity handoff
and RAKE
receivers to ensure high quality. Each mobile station 24 is assigned its own
spreading
code in order for a base station 20 to identify transmissions from that
particular niobile
station as well as for the mobile station to identify transmissions from the
base station

io intended for that mobile station from all of the other transmissions and
noise present in
the same arca.

A CDMA radio statioil transceiver 30 in which the present invention may
be employed is shown in Fig. 2 in function block format. Those skilled in the
art will
appreciate that other radio transceiver functions used in CDMA transceivers
not

is particularly relevant to the present invention are not shown. In the
transmit branch,
information bits to be transmit are received by a spreader 32 which spreads
those
information bits over the available frequency spectrum, (for wideband CDMA
this
frequency band could be for example 5 MHz, 10 MHz, 15 MHz or more), in
accordance

with a spreading code generated by a spreading code generator 40. Controller
44
20 determines which spreading code should be provided by code generator 40 to

spreader 32. The spreading code provided by code generator 40 corresponds to a
radio
channel in a CDMA conimunications system. Because a very large number of code
symbols (sometimes called "chips") may be used to code each information bit,
(depending on the current data rate in a variabie data rate svstem such as a
WCDNIA

25 system), the spreading operation considerably increases the data rate
thereby expandin~
the signal bandwidth. The spread signal is provided to a modulator 34 which
niodulates
the spread signal onto an Ri: carrier. An oscillator 42 generates an
appropriate radio
frequency carrier at a freqtiency selected by the controller 44. The
inodulated RF signal


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
9
is then filtered and amplified in RF processing block 36 before being
transmitted over
the radio interface by way of antenna 38.

Similar but reverse operations are carried out in the receive branch of the
transceiver 30. An RF signal is received by antenna 38 and filtered in RF
processing

s block 150. The processed signal is then demodulated to extract the baseband
signal
from the RF carrier in a demodulator 48 using a suitable RF carrier signal
provided by
the oscillator 44. The demodulated signal is de-spread in a de-spreader 46 in
accordance with a code selected by the controller 44 and generated by the code
generator 40. The de-spread signal corresponds to the received information
bits at

baseband which are then typically fut-ther processed. While individual
functional
blocks are shown in the radio station transceiver 30, those skilled in the art
will
appreciate that these functions may be performed by individual hardware
circuits, by a
suitably programmed digital nlicroprocessor, by an application specific
integrated
circuit (ASIC), and/or by one or more digital signaling processors (DSPs).

ts Fig. 3 illustrates in schematic form further example details of the
spreader 32 and the modulator 34. A similar scheniatic would apply to the
demodulator 48 and the de-spreader 46 with opposite functions in the reverse
direction.
Quadrature phase shifl keying (QPSK) is used both for the data modulation
(performed
by spreader 32), and the spreading modulation (perfornied by quadrature
modulator 34).

Fig. 4 illustrates four quadriphase points in the unit circle corresponding to
the complex
plane defined by a real axis I and an imaginary axis Q. 7'he four quadriphase
alphabet
values correspond to

n .3,T3z ;r
j- J--.. -j-- -j-
C' 4,E 4 e 4 ande 4
where j = ~ .


CA 02620101 2008-02-25

The example spreader 32 in Fig. 3 includes two biphase (+/- 1)
information streams to be demodulated separately, such as a traffic data
stream and a
control data stream, which are input to respective multipliers 52 and 54 in
order to be
spread and IQ multiplexed. The traffic and control data streams are spread by
different

5 channelization codes and then mapped to the I and Q branches. Channelization
codes
are employed to separately identify and distinguish the real and imaginary
information
streams at the receiver, even if there is imperfect I and Q phase
synchronization at the
receiver. In the situation where plural traffic and control data streams are
to be transmit
in parallel from a single mobile user, (e.g., multicode transmissions --
intended for very
io high data rates), plural orthogonal channelization codes are used to make
the necessary
parallel code channels. The channelization codes can be based on so-called
Orthogonal
Variable Spreading Factor (OVSF) codes which maintain orthogonality even if
different spreading factors are used. The channelization codes are common for
all
mobile stations.

The I and Q information streams represent the real and imaginary parts
of a complex data stream to be transniit over a CDMA radio channel. In the
present
description, separate real and imaginary information streams and corresponding
different channelization codes have been employed to generate a complex signal
to be
spread using a corresponding radio CDMA spreading code. However, the signal
need
not be complex. Indeed, the present invention may be employed to spread any
type of
information signal.

The spreading code generated by spreading code generator 40 is
employed by the complex multiplier 60 to spread the complex information
signal. The
complex multiplier 60 in a QPSK data modulator performs complex multiplication

between the complex data stream I + jQ and a complex spreading code (e.g.,
temporarily allocated to a mobile station) to provide the spread signal output
to the
modulator 34. Quadrature modulator 34 splits the spread signal into real (I)
and
imaginary (Q) streams which are processed by a corresponding pulse shaping
filter 62,


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
11
64, such as a root-raised cosine filter, and then provided to respective
mixers 66 and 68
which also receive in-phase and quadrature versions of the RF carrier. The
modulated
carrier quadrature signals are summed in summer 70 and output to the RF
processing
block 36.

As mentioned above, the number of CDMA spreading codes used to
distinguish mobile station users, particularly on the uplink direction from a
mobile
station to a base station should be as large as possible to allow more mobile
stations to
communicate at the same time in the same geographic area. On the other hand,
the
number of spreading codes cannot be too large; otherwise, there is too much

to interference generated amona mobile stations to have an acceptable
communication.
The present invention provides a set of spreading codes with an optimal
balance: a
relatively large number of spreading codes with only niinimal periodic cross-
correlation
between any two of the spreading codes in the fanlily.

For comparison, parameters of various bi-phase and quadriphase

is spreading code families are shown in Table I below. The alphabet size
corresponds to
the number of different valties that each code svnibol may assunie. For bi-
phasc codes,
the alphabet size is two: for quadriphase codes the alphabet size is four. The
sequence
length (L) is the number of code symbols ("chips") in each code and for all
code

families in the Table I is equal to 2" - I, where m is a positive integer
whose possible
20 values may be restricted depending on how the particular code family is
constructed.
The family size (M) is the number of codes in a particular spreading code
family. The
larger the family size M, the greater the capacity. The niaximum absolute
cross-
correlation is the maximum, periodic, cross-correlation between any two
spreading codes in the spreading code family.


CA 02620101 2008-02-25

WO 99166645 PCTISE99101040
12
TABLE(
Spreading Alphabet Sequence Length Family Size (M) Max. Abs. Cross-
Code Size (p) Length (L) Restriction Corr. (C~~..,)
Family

Gold 2 2'_ 1 rn= I mod 2 L+2 1+ 2 L+ I
Gold 2 2M-1 rn=2mod4 L+2 1+2 L+l
Gold-like 2 2m - 1 nt = 0 mod 4 L+ 1 }+ 2,F1 + 1
Reciprocal 2 2n1- 1 m= 0 mod 2 L + 2 2 L+ I- 1
Gold-like

Small 2 2M-1 nr=0mod2 L+l 1+ L+1
Kasanii

Large 2 2" - 1 nr = 2 inod 4 ( L+ 2) L+ l I + 2 L+ 1
Kasami

Large 2 2"' -I m=0mod4 ~L+2) L+l-I I+2 L+l
Kasami

Very Large 2 2" _1 n1 =0mod2 (L + 2)2i.+l 1+4 L+I
Kasami

Very Large 4 2u_! nr = 0 mod 2 ( L+ 2)' L+ 1 ~(l + 4 L+ I)
Kasami

Family s(o) 4 2," - I None L+ 2 {+ L+ I
Family s(l) 4 218'- 1 in> 3 (L+2)(L+1) 1+2 L+ 1
Family S(2) 4 2 ,- t rtr 5 ( L+ 2)( L+ 1)2 1 + 4 L+ I

Based on this analysis of various characteristics of these code families, the
inventor determined that the S(2) family of spreading codes offers the optimal
cotnproniisc between the largest nunibcr (M) of sprcading codcs, (L + 2)(L +
1)2 , and
the smallest cross-correlation, 1+4 L+ I. In other words, for the S(2)
spreading

s codes, the ratio of the number of spreading codes to the cross-correlation
peak is
maximized for a given spreading code length L. The S(1) and S(2) spreading
code
families are obtained by generalizing from the construction of the S(O) family
of


CA 02620101 2008-02-25

I3
quadriphase spreading codes. The S(2) spreading code family includes the S(l)
family, which is the subset of (L + 2XL + 1) spreading codes obtained by
combining
different a(n) and b(n) component sequences. The S(2) and S(l) spreading code
families include the S(0) family, which is the subset of (L + 2) spreading
codes

obtained by different initial states of an a(n) component sequence shift-
register. The
S(0) spreading code family has the same number of spreading codes as the Gold
spreading code family, but the S(O) family has a snialler cross-correlation at
least by
factor of -vF2.

In order to provide a better understanding of the present invention,
construction of the S(2) family of spreading codes is now described. Let

h(x) = x"' + h,xii-1 +...+h",-ix + h, where hk, x E Z4 , be a primitive
polynomial over
Z4 of degrec m, where Z4 is the set of-integers {0,1,2,3} , i.e., the ring of
modulo-4
integers. A list of all the primitive polynomials over Z,i up to degree m = 15
can be
found in "On a Recent 4-Phase Sequence Desigii for CDMA," Hammons et al.,
IEICE
is Trans. Commun:, vol. E76-B, no. 8, pp. 804-813. The inth-order linear
recurrence
a, (n) over Z4, defined by h(x) as

a,.(n) = hla,(n-1)-h2a,.(n-2)-. ..-hma,.(n-m) (mod 4), n>_ m, (1)

produces a quaternary sequence of period L = 2"' - 1. The above recurrence may
be
implemented using a shift register with feedback connections.

There are L + 2 cyclically distinct sequences which can be obtained from
the recurrence defined in equation (1) by choosing an appropriate initial
state of the
recurrence, i.e., of the shift register. The initial state rr is a vector of m
elements.
which can be represented as


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
14
Tr = (ar (n7 - 1), ar (-n - 2), ... ar (0)].

The L+ 2 initial states ro, ri , r2 ,... , TL+i can be chosen according to the
following
algorithm

Tr = I I 1 Yrx ), ~(YrX ), ... T(Yrx), T(Yr (2)
)
where

~ a ~m-I
T(~) = + ~- + ~ + + ~' (niod h(x). mod 4)] (mod x), (3)
and

Yn=1= Yi =2. Y2 =3.

Y3 =1- X, Ya = 1- x2 Y c+i = l- x L-1 (mod Iz(x), mod 4) (4)

The set. of sequences {ar(n)} defined by equations (l)-(4) represents the S(O)
family
of sequences whose paramctcrs arc given in Tablc 1.

The set of sequences {ar(n)} of length 255 can be generated by a degree
8 primitive polynomial over Z4. The primitive polynomial of dcgree 8, which
provides
the simplest feedback connections of the corresponding shift-register
generator, is as

follows:

h(x) =xx+x5+3x3+x'+2x+1. (5)
The S(1) family of sequences {yõ(n)} , u = 0,1,...,(L + 2)(L + 1) - 1, is the
generalization of the S(0) sequence family obtained by combining the
quaternary
sequences from the set {ar(n)} . r = 0,1,2,...,(L + 1), with the binary
sequences


CA 02620101 2008-02-25

(bs (n)) , s 0, I, 2,..., L, of the same length. The exact algorithm is given
by the
following relation:

yõ (n) = ar (n) + 2bs (n) (mod 4), n = 0,1, ... , L -1.. (6)
The sequences bT (n) are obtained by a linear recurrence over Z, , defined by
the
s polynomial g(x) = xe + g,xe-I +...+ ge_lx + I as

bs(n)=gjb,4(n-1)+g2b,s(n-2)+...+bs(n-e) (mod 2), n ? e, (7)
where e_< ni is a minimum integer satisfying (3- 20 mod ~ 2"' - 1) = 3.

The polynomial g(x) is related to the polynomial h(x) and is obtained
from the polynomial g(x) given by

10 g(x), = ( x-.C3)(x - (x3)2)(X tll
- lfx'~)ZZ ... x-(x3)Z'.-l (mod h(x),mod 2), (8)
according to the following relation

g(x), e < m

g(x) [h(x) g(x) ]mod2. 'e= m (9)

For h(x) given by equation (5). the corresponding g(x) is equal to
g(x)=xx+X7+xs+x+l. (10)
is The set of L + I distinct (but not cyclically distinct) sequences bs(n) is
defined by the

appropriate initial states of the recurrence defined in equation (7)_ The L +
I initial
states %, tSi , S, ,..., SL are defined as


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
16
11
82 = x, 83 = x Z..., gL = x L- 1 (mod h(x), mod 2). (

The actual initiai state [b.s (m - 1), bs (m - 2), ... , bs (0)] is given by
the coefficients of
corresponding polynomial SS defined by equation (11) according to the
following
notation:

S~ =bs(m- l)xm-I +br(m-2)x"'_Z+...+bS(0)

The S(2) family of sequences {z,,(n)}, v = 0, l, 2, ... (L + 1)(L + 1)2 - 1,
is a further generalization using the S(0) and S(l) families. It is obtained
by
combining the sequences from the previously defined sets {a,. (j7)} and {bs
(n)j with an
additional set {e, (n)} of L + I binary sequences. according to the following
relation:

lo zõ(n)=a,.(n)+2b,(n)+2c,(n) (mod4), (12)
n=0,1,...,L- 1.

An enumeration algorithm for the set S(2) can be defined by
v~ j 2(r.+')(/.+i) +s.2r.+i +1

r=0,1,2,...,L+1 (13)
s0,1,2,...,L
t=0,1,2,...,L
The sequences c, (n) are obtained by a linear recurrence over Z, , defined
by the polynomiat f(x) = s" + fix''-l +...+ f,-tx + 1 as

c,(n)= f1c,(n-1)+ f2c,(n-2)+...+cr(n-e) (mod 2), n>_e, (14)


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
17
where e S m is a minimum integer satisfying (5.2e) mod (2'" - 1) = 5. The
polynomial
f(x) is related to the polynomial h(x) and is obtained from the polynomial
f(x)I ,
given by

f(x) = (x - x5)(x - (x5)2)(x - (x5)22]...(x - (x5),e ' (mod h(x), mod ?),(1 5)
according to the following relation

') Y f(x) e<m (16)
r , lfhod2. Ch(x) + f(x) e = ni

For h(x) given by equation (5), the corresponding f(x) is equal to

f(x)=xR + x 7 +x' 1-x4 + 1- (17)

The set of L + I distinct (but not cyclically distinct) sequences c, (n) is
defined by the
lo appropriate initial states of the recurrence (14). These initial states are
already defined
by equation (11).

The above constructions for the S(2) spreading code family produce
quaternary codes with elements belonging to the set { 0, 1, 2_ 3} . To obtain
complcx
quadriphase spreading codes having a constant envelope, with real and
imaginary parts

being bi-phase I T values, i.e., with elements belonging to the set

,t a n A
j- j3- -i3-- -i-
e 4, e a, e 4, e 4, the following transformation is applied

R R
f - f --'-1-(q)
s2(n)=e 4 -e 2
(18)


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
18
With this mathematical explanation of how the S(2) family of spreading

codes is constructed, reference is now made to a Mobile Call routine (block
80)
illustrated in function block format in Fig. 5. Initially, a mobile station
requests a traffic
channel (TCH) by sending a traffic cliannel request over a random access
channel

(RACH) (block 82). The random access channel has one or more corresponding
spreading codes which the mobile station employs to transceive over that
random access
channel. In response to the mobile's request, the base station sends over the
randoni
access channel to the mobile station the number"v" of a spreading code zv(n)
from

the S(2) spreading code family (block 84) corresponding to an allocated radio
channel.
io Zjn) is defined in equation (12), and v is defined in equation (13) above.
Using the
spreading code number v, the mobile station determines the ordinal numbers r,
s, and
t which uniquely identify the initial states of shift re,isters used to
generate the three
component sequences a,.(n), b,(n). and c,(t) delined abovc in equations (1),
(7)

and (14), respectivcly. Thosc thrcc component scqucnccs arc conibined to
provide a

corresponding S(2) quaternary spreading code z, (n) in accordance with
equation (12)
(block 88). 'T'he S(2) qtiatcrnary spreading codc is thcn mappcd to a
corresponding
quadripliase spreading code (block 90) and used to spread/de-spread (depending
upon
transmit or receive operation currently being performed in the mobile station)
information using the generated quadriphase spreading code (block 92).

Fig. 6 illustrates an example shift register implementation of a code
generator 40 for generating S(2) quadriphase spreading (and de-spreading)
codes in
accordance with one example embodiment of the present invention. Code
generator 40
includes three linear, feedback shift registers 100, 102, and 104. Each shift
re-ister
includes eight niemory elements (shift stages) 0-7. At the beginning of each
chip

interval, the content of each memory elenient is moved (sliihed) to the
adjacent, right-
hand memory elenient. The outputs of the memory elements are multiplied by the
coefficients oCthe respective recurrence equation and then sunimed modulo 4
(or 2).


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
19
The result of summation is stored in the left-most memory element at the
beginning of
the subsequent chip interval.

Shift register 104 implements the linear recurrence a,(n) defined in
equation (1). Shift register 102 generates the bs(n) sequences, and shift
register 100

generates the c, (n) sequences in accordance with equations (7) and (14). The
outputs
of shift registers 100 and 102 arc multiplied by two in respective multipliers
106

and 108. Each of the three sequences output by the corresponding' three shift
registers is
summed in summer 110 to generate an S(2) quaternary code which is converted to
a
corresponding S(2) quadriphase spreading code by way of niapper 112. Of
course, the

io S(2) quaternary code output depends on the actual initial state set in the
shilt remsters
which are determined in accordance with equations (2), (3), (4), (11). Those
initial
states may be input into the appropriate shift registers by the transceiver
controller 44,
which sets the appropriate valucs of the adjustable parameters in the
transmitter and
receiver, both in the mobile and base station transceivers. Althougli in a
preferred

is embodinient. the spreading code generator 40 is implemented using shift
registers
which generate the necessary S(2) spreading codes as needed, those S(2)
spreading
codes could be generated in advance. stored in memory, and retrieved using a
table
lookup function.

Thus, the present invention provides a family of quadriphase, CDMA
20 spreading codes that provide a maximal number of CDMA spreading codes of a
particular length having a minimal cross-correlation. At the same time, these
spreading
codes have a sniall signaling alphabet wliich is very convenient for the
practical
implementation of the sprcadcr and the despreader.

Although the S(2) faniily of spreading codes may be allocated randonily.
25 a preferred embodiment allocates codes from the S(2) family in a niore
advantageous
fashion. As shown above, the S(l) and S(0) spreading code faniilies are
subsets of the


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
S(2) code family and have better cross-correlation properties, and therefore
produce
less interference between mobile users. Table I above shows that the S(1) code
family
and the S(0) code faniily have one half and one fourth of the maximum absolute
cross-
correlation as the S(2) code family, respectively.

~ In this preferred embodiment, the large number of codes provided by the
S(2) family is employed by the mobile communications system, but specific
subsets of
the S(2) codes are allocated to particular base stations or base station
sectors.
Consequently, depending on the number of mobile users in a particular area of
a CDMA
cellular network, service quality is improved, i.e., less interference between
mobile

10 users connected to the same base station or base station sector. For
example, the mobile
communications system may use S(2) spreading codes of lengtli L = 255. A first
base
station BSO is allocated the subset of S(2) codes defined by the component
sequences
having indices r = 0,1,2...,256; s = 0; and t= 0. In other words, BSO is
allotted the
"pure" S(0) family of codes. A second neighboring base station BS I is
allocated

15 another subset of S(2) spreading codes defined by the coinponent sequences
corresponding to indices r = 0,1,2...,256; s=1; and t= 0. The second base
station
codes are very similar to the pure S(0) codes, (the S(0)codes are multiplied
chip-by-
chip with a common component sequence bi(n)), and have essentially the same
characteristics. As a result of this S(2) code subset allocation, the cross-
correlation

20 between those allocated S(2) codes for each base station is the same as for
the S(0)
code faniily. i.e., less cross-correlation between codes as compared to that
for the S(2)
family in general.

Using such an S(2) subset code allocation strategy, mutual interfcrcnc:c
between mobile stations connected to the same base station is minimized, and
the

interference between the base stations is also bounded according to the
properties of the


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
21
S(2) codes. The S(2) subset code allocation strategy may be generally defined
as
follows: each BS (or BS sector) has at least L + 2 spreading codes from the
S(2)
family defined by three component sequences having an index r = 0,1,2..., L+ 1
and
indices s and t that are unique for each base station (or base station
sector), i.e.. the

indices s and I have different integer values for different base stations.

While this subset code allocation scheme is advantageous in that it
reduces cross-correlation between mobile users in a base station/sector as
conipared to
the general S(2) code family, hand-over situations require some special
provision. For
the duration of a call, the mobile station keeps the same spreading code
allocated at the

io beginning of the call by the source base station/sector even if the mobile
changes from
the original source base station during hand-over to a destination base
station. Using
the code allocated by the source base station while connected to the
destinatioti base
station may produce interference greater than that for the S(0) family. But
that

interference is still no greater than that defined for the S(2) code set.

In the hand-over situation where the source base station allocated a
particular spreading code to the mobile station, the source base station is
prevented fronl
allocating that same spreading code befoce the handed-over mobile station
finishes the
call to avoid the situation where two niobile stations are assigned the same
code. One
way of accomplishing this is for the source base station to assign a time-out
flag to each

available spreading code. The tinie-out flag is set, meaning that the code may
be
allocated to another mobile only if a predefined time interval has passed
since the code
was allocated. Alternatively, the flag has a non-zero time-out value only when
the
mobile is in handover with the time out interval commencing at the tinie of
handover.
Either way, the same code is prevented from being assigned to two mobile
stations at

the same tinie when the mobiles are connected to the neighboring base
stations.


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
22
The construction of the S(2) or other family of spreading codes produces

spreading codes that each have a length L= 2' - 1. Consequently, each code's
length
is not a power of 2. However, in a CDMA system that supports different data
rates over
the same physical radio channel depending on which of different services is
currently

operating, the spreading code length should be expressed as a multiple of each
spreading factor existing in the multi-rate CDMA systeni. The spreading factor
is the
number of chips (plural chips are used to spread one data bit) within the data
symbol.
One way of implementing multiple data rates is to use those data rates that
permit the
corresponding spreading factors (SF) to be expressed as

io SF(k) = Ll 2A ,

where the variable k is proportional to the data rate. Moreover, since the
number of
chips witliin the data symbol should be an integer, the spreading sequence
length should
be a power of 2.

Consequently, spreading code sequences belonging to the S(2) failiily
is should be extended with one quaternary symbol for optimal use in a multi-
rate CDMA
system. The present invention resolves this need by providing a spreading code
extension without increasing the maximum cross-correlation between spreading
codes
in the spreading code family. with minimum hardware inipleinentation
coniplexity.

In a preferred embodiment that tries to reduce hardware implementation
20 complexity. the spreading code synibol is added to the end of the original
spreading
code in order to extend the code by one symbol. Of course, the length of the
original
spreading code could be extended by adding a code symbol to other locations in
the
original code. In other words, extended spreading codes may be obtained by
adding an
additional spreading code symbol, after the L symbols of the original, non-
extended

21 spreading code of length L = 2" - I


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
23
In one fixed code extension example embodiment, the additional

spreading code symbol is fixed, i.e., the same for all spreading codes. In the
case of
quaternary codes like the S(2) family of spreading codes, the additional
spreading code
symbol can have four possible values. The particular code symbol value, i.e.,
chip

value, may be chosen to niinimize the mutual cross-correlation between
extended
sequences in a set i.e., the S(2) sequences.

An example of the fixed code extension embodiment is shown in Fig. 7
for original S(2) spreading codes of length 255 where like reference numbers
refer to
like elements from Fig. 6. The code generator 40' in Fig. 7 includes
comparator 120

lo connected to the outputs of each memory eiement of the shift reQister 104
which
generates the component sequence ar(n). In additioii, a corresponding register
122
containing the initial state rr of the shift register 104 is connected to the
remaining
available inputs of the comparator 120. Still further, a switch block 124 is
connected at
one input terminal to the output of summer I 10. The other input terminal is
connected

is to the fixed code symbol value x, and the output of the switch is connected
to
mapper 112. Outputs froni coniparator 120 suspend the shifting operation of
all three
registers 100, 102, and 104 as well as control the state of the switch 110.

In operation, the comparator 120 detects the end of an original S(2)
spreading code by detecting the end of component sequence a, (n). Only the

20 component sequence a, (n) has the same period as the S(2) spreading code.
The other
two component sequences, b., (n) and c,(n), have shorter periods which are
contained
in the period of an S(2) spreading code, and tlierefore, they are not used to
detect the
end of S(2) spreading code. The end of component sequence a,. (n) is detected
by
detecting the subsequent periodic occurrence of the same state of the shift
register 104

25 which was loaded in register 104 at the initialization of the code
generator 40 operation.
During the initialization of the code generator 40, all three shift registers
100, 102,


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
24
and 104 are loaded with the corresponding initial states and then released to
run in
parallel. However, only the intemal state of the shift register 104 is
monitored by the
comparator 120.

When the end of the original spreading code is detected by the

-5 comparator 120, the comparator 120 generates a shift suspend operation
during the next
spreading code symbol cycle. At that time, the extension symbol x, which can
be any
one of the set of values 0, 1, 2, or 3, is added to the end of the code when
the switch 124
is momentarily connected to the x terminal in accordance with an output from
the
comparator 120. During that time, the internal states of all three shift
registers remain

unchanged. As a result, the S(2) spreading code is extended by one symbol for
a total
of 256 symbols which is a power of 2, i.e., 2R = 256. After inserted chip
interval, three
shift registers start shifting from the corresponding initial states without
actual re-
loading of those iilitial states.

Fig. 8 shows an example of a periodic code extension embodiment in

which the original spreading code is extended by a single chip whose value is
the same
as that of the first symbol in the original spreading code. The structure and
operation of
the code gcnerator 40" shown in Fig. 8 is similar to that described above for
the code
generator 40' shown in Fig. 7. However, the switch 124 is not employed; nor is
there
any external source "x" that supplies the extra chip. Instead, when the end of
the

original spreading code is detected by the comparator 120, the corresponding
output of
the code generator 40 represents the extended (256 - th) chip value. The
shifting in all
shift registers is suspended during the next chip cycle-so the same state,
equal to the
initial state, appears in thc first chip cycle of the next spreading code
period. After the
inserted chip interval, the three shift registers continue shifting from their
corresponding

initial states without actually re-loading those initial states.

Accordingly, an additional symbol code equal to the first symbol in the
original spreading code is inserted after the last synibol in the original
spreading code


CA 02620101 2008-02-25
.= '

WO 99/66645 PCT/SE99/01040
with no added hardware. This same periodic extension may be implemented using
a
modulo counter, modulo-256 in this example where L = 255, (more generally the
modulus of the counter is equal to the period of the extended spreading code),
which
indicates the end of extended spreading code. In operation, the shift
registers are

5 reinitialized as usual at the end of the code period and generate as the
next chip output
the first chip of the code as determined by the initial states of the shift
registers. But
after this lirst chip is outPut, (thereby extending the generated spreading
code by onc
chip), the counter generates an output that causes the shift registers to re-
load their
respective initial states so that the extended code generation operation is
again re-

lo started.

Reference is now made to an extended code routine (block 200) which
illustrates an example procedure in accordance with the present invention.
Initially, a
family of original spreading codes is generated, each code having a length L

(block 202). For each generated spreading code, the end of tllat original
spreading code
ts is detected (block 204). Shifting and linear feedback operations in the
code generator
are momentarily suspended (block 206). A decision is made in block 208 whether
the
fixed spreading code extension procedure or the periodic spreading code
extension
procedure described in the two example embodiments immediately above is
selected.
For periodic spreading code extension, a spreading code symbol equal to the
first

20 symbol in that code is added to the end of the spreading code (block 210).
For a fixed
spreading code extension, a fixed code symbol is added to the end of the
spreading code
(block 212). The code extension process is repeated for each generated code

(block 214). Of course, once the decision has been made as to the particular
type of
extension, the decision in block 208 no longer need be made.

25 For the S(2) family of spreading codes, both of the extension procedures
described above can be performed easily and with minimal hardware. These
extended
S(2) codes provide the necessary flexibility to optimize multirate
communications
while permitting the largest number of users balanced with minimal cross-
correlation


CA 02620101 2008-02-25
~ =.
~

WO 99/66645 PCT/SE99/01040
26
between extended codes. Because the cross-correlation properties of extended
codes is
difficult to predict theoretically, the following performance evaluation of
extended S(2)
spreading codes is done numerically.

The performance of the fixed and periodic spreading code extensions is
considered now in conjunction with Fig. 10 and is based on the calculation of
the
average bit error probability Pe in a multiple access system with K concurrent
users.
The bit error probability calculation is implemented relying on a numezical
evaluation
of an analytical formula that_includes (K-2)-fold convolution of the code-pair
cross-
correlation probability density function as follows:

PQ = f fl (z)O 2Eh 1-? dz, (19)
N,, Eh

where

Q(z) Je_t212d1,
2ir
Eb is the data bit (spreading sequence) energy, No is the additive white
Gaussian noise
power spectral density, and f/ (z) is the multiple access interference
probability density

function (PDF). The function f, (z) is obtained by ( K- 2) -fold convolution
of the
code-pair cross-correlation PDF fPQ;'(z'), i.e.,

K-i

J ! (z) - 1 parr (Z,) * f pair W). . . * fP-ir (Z I ) . (20)

A BPSK data modulation format and time shifts between users
corresponding to the integer multiples of the code symbol (chip) period were
assumed
so that the cross-correlation probability density function can be presumed
discrete. The

cross-correlation probability density function was obtained by counting all
the different


CA 02620101 2008-02-25
. P ,

WO 99/66645 PCT/SE99/01040
27
values of the real part of even and odd cross-correlations within a given set
of spreading
codes. Cross-correlation probability density function was evaluated for the
extended
S(1) spreading codes (which fomi a subset of S(2) spreading codes) of length L
= 32.

It was found that both the fixed and periodic extension approaches have

about the same performance. The average bit error probabilitv PQ for K = 4
concurrent
users using periodically extended S(i) sequences of length 32, as well as S(1)

sequences extended by a fixed synibol (equal to 3) is shown in Fig. 10.
Comparing
performance between the non-extended and extended S(1) sequences, one would
expect, based on the niaximum absolute period cross-correlation (C1,,;Li),
that the non-

lo extended spreading codes should have better performance because they have a
snialler
C,,,,,., value. If the number of users is K = 4, the periodically extended
spreading codes
produce a slightly higher average bit error rate. However, when the number
of.users
increases to K = 6, the extended codes surprisingly produce a lower average
bit error
rate than non-extended spreading codes. This latter relationship remains valid
for all

other numbers of users greater than 6 which is another advantage of the
extended
spreading code embodinients of the present invention. The explanation may lie
in the
properties of the odd cross-correlation function, which dominantly influences
the shape
of the code-pair cross-correlation probability density function fpQi,.(z'),
both for the
non-extended and extended spreading codes. The shape of the multiple access

interference probability density function f, (z) , which directly determines
the averagc
bit error rate, is influenced both by the shape of the function fp;,.(z') and
by the
number of self-convolutions of fpa;,.(z) in equation (20), i.e., by the number
of
concurrent users.

While the present invention has been described with respect to a particular
embodiment, those skilled in the art will recognize that the present invention
is not
limited to the specific embodiments described and illustrated herein.
Different forniats,


CA 02620101 2008-02-25

WO 99/66645 PCT/SE99/01040
28
embodiments, and adaptations besides those shown and described as well as many
modifications, variations, and equivalent arrangements may also be used to
implement
the invention. Thcrcforc, whilc thc prescnt invention has bccn dcscribcd in
rciation to
its preferred embodiments, it is to be understood that this disclosure is only
illustrative

s and exemplary of the present invention and is merely for the purposes of
providing a
full and enabling disclosure of the invention. Accordingly, it is intended
that the
invention be limited only by the spirit and scope of the claims appended
hereto.

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date 2012-08-07
(22) Filed 1999-06-11
(41) Open to Public Inspection 1999-12-23
Examination Requested 2008-02-25
(45) Issued 2012-08-07
Expired 2019-06-11

Abandonment History

There is no abandonment history.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Request for Examination $800.00 2008-02-25
Registration of a document - section 124 $100.00 2008-02-25
Application Fee $400.00 2008-02-25
Maintenance Fee - Application - New Act 2 2001-06-11 $100.00 2008-02-25
Maintenance Fee - Application - New Act 3 2002-06-11 $100.00 2008-02-25
Maintenance Fee - Application - New Act 4 2003-06-11 $100.00 2008-02-25
Maintenance Fee - Application - New Act 5 2004-06-11 $200.00 2008-02-25
Maintenance Fee - Application - New Act 6 2005-06-13 $200.00 2008-02-25
Maintenance Fee - Application - New Act 7 2006-06-12 $200.00 2008-02-25
Maintenance Fee - Application - New Act 8 2007-06-11 $200.00 2008-02-25
Maintenance Fee - Application - New Act 9 2008-06-11 $200.00 2008-02-25
Maintenance Fee - Application - New Act 10 2009-06-11 $250.00 2009-05-28
Maintenance Fee - Application - New Act 11 2010-06-11 $250.00 2010-05-25
Maintenance Fee - Application - New Act 12 2011-06-13 $250.00 2011-05-30
Final Fee $300.00 2012-05-08
Maintenance Fee - Application - New Act 13 2012-06-11 $250.00 2012-05-24
Maintenance Fee - Patent - New Act 14 2013-06-11 $250.00 2013-05-24
Maintenance Fee - Patent - New Act 15 2014-06-11 $450.00 2014-05-27
Maintenance Fee - Patent - New Act 16 2015-06-11 $450.00 2015-05-25
Maintenance Fee - Patent - New Act 17 2016-06-13 $450.00 2016-05-06
Maintenance Fee - Patent - New Act 18 2017-06-12 $450.00 2017-05-26
Maintenance Fee - Patent - New Act 19 2018-06-11 $450.00 2018-05-28
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
TELEFONAKTIEBOLAGET L M ERICSSON (PUBL)
Past Owners on Record
POPOVIC', BRANISLAV M.
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Abstract 2008-02-25 1 36
Description 2008-02-25 33 1,270
Claims 2008-02-25 7 265
Drawings 2008-02-25 8 153
Representative Drawing 2008-05-22 1 8
Cover Page 2008-05-28 2 56
Claims 2011-10-03 6 249
Cover Page 2012-07-17 2 57
Correspondence 2011-03-01 1 15
Correspondence 2008-03-12 1 37
Assignment 2008-02-25 4 141
Correspondence 2008-05-27 1 16
Correspondence 2008-03-27 1 31
Correspondence 2009-05-25 9 276
Correspondence 2009-05-25 9 279
Correspondence 2009-06-25 1 16
Correspondence 2009-06-29 1 20
Prosecution-Amendment 2011-04-04 3 115
Prosecution-Amendment 2011-10-03 9 361
Correspondence 2012-05-08 1 28