US20070009013A1 - Efficient spreader for spread spectrum communication systems - Google Patents

Efficient spreader for spread spectrum communication systems Download PDF

Info

Publication number
US20070009013A1
US20070009013A1 US11/515,168 US51516806A US2007009013A1 US 20070009013 A1 US20070009013 A1 US 20070009013A1 US 51516806 A US51516806 A US 51516806A US 2007009013 A1 US2007009013 A1 US 2007009013A1
Authority
US
United States
Prior art keywords
code
spreading
sequence
complex
symbol
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US11/515,168
Inventor
Raj Misra
Gregory Teal
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
InterDigital Technology Corp
Original Assignee
InterDigital Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by InterDigital Technology Corp filed Critical InterDigital Technology Corp
Priority to US11/515,168 priority Critical patent/US20070009013A1/en
Publication of US20070009013A1 publication Critical patent/US20070009013A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/16Code allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0074Code shifting or hopping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/10Code generation
    • H04J13/102Combining codes
    • H04J13/107Combining codes by concatenation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B2201/00Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
    • H04B2201/69Orthogonal indexing scheme relating to spread spectrum techniques in general
    • H04B2201/707Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
    • H04B2201/70703Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation using multiple or variable rates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B2201/00Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
    • H04B2201/69Orthogonal indexing scheme relating to spread spectrum techniques in general
    • H04B2201/707Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
    • H04B2201/70706Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation with means for reducing the peak-to-average power ratio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0077Multicode, e.g. multiple codes assigned to one user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/10Code generation

Definitions

  • the present invention relates generally to digital communication systems. More specifically, the invention relates to a system and method for spreading a data signal for spread spectrum communications.
  • a communication system typically transmits information or data using a continuous frequency carrier with modulation techniques that vary its amplitude, frequency or phase.
  • the information to be transmitted is mapped onto a predetermined constellation that defines symbols and is transmitted over a communication medium.
  • the communication medium may be guided or unguided, (comprising copper, optical fiber or air) and is commonly referred to as the communication channel.
  • FIG. 1 A prior art multiple-access communication system is shown in FIG. 1 .
  • Protocols such as time division multiple access (TDMA), carrier sense multiple access (CSMA), code division multiple access (CDMA) and frequency related protocols such as frequency division multiple access (FDMA) and orthogonal frequency division multiplexing (OFDM) allow a plurality of users to access the same communication media to transmit or receive information.
  • TDMA time division multiple access
  • CSMA carrier sense multiple access
  • CDMA code division multiple access
  • FDMA frequency division multiple access
  • OFDM orthogonal frequency division multiplexing
  • TDD time division duplex
  • the access protocol specified by a communication system is typically executed after the data undergoes modulation.
  • FM frequency modulation
  • FSK frequency shift keying
  • PSK phase shift keying
  • BPSK binary phase shift keying
  • DPSK differential phase shift keying
  • QAM quadrature amplitude modulation
  • QPSK quadrature phase shift keying
  • quadrature modulation assigns a symbol to represent more than two binary values.
  • the use of a symbol allows for a greater degree of transmitted information since the bit content of each symbol dictates a unique pulse shape.
  • Symbols which consist of x bits per sample, may represent a quantized version of an analog sample or digital data. Depending upon the number of symbols used, an equal number of unique pulseshapes or waveshapes exist. The number of data bits determine the combinations of amplitude and phase that define a constellation pattern.
  • Quadrature modulation is based on two distinct waveforms that are orthogonal to each other. If two waveforms are transmitted simultaneously and do not interfere with each other, they are orthogonal. Quadrature modulation modulates two different signals into the same bandwidth creating a two-dimensional signal space as shown in FIG. 2 .
  • the cosine carrier is called the in-phase (I), real component of the signal and the sine carrier is the quadrature (Q), imaginary component of the signal.
  • Linear combinations of the form a 1 cos(2 ⁇ f c t)+a 2 sin(2 ⁇ f c t), (where a 1 and a2 are real numbers), generated from the two basic waveforms define symbols in the modulation alphabet.
  • a QAM symbol consists of at least one sample from both the in-phase I and quadrature Q signals. Signal amplitude is indicated by the distance from the origin; phase by the angular distance around the unit circle. After the data is assembled as symbols, the symbols are processed in accordance with an access protocol chosen for the communication system.
  • CDMA is a communication technique in which data is transmitted with a broadened band (spread spectrum) by modulating the data to be transmitted with a pseudo-noise sequence.
  • the data signal to be transmitted may have a bandwidth of only a few thousand Hertz distributed over a frequency band that may be several million Hertz.
  • the communication channel is used simultaneously by k independent subchannels. For each subchannel k, all other subchannels appear as interference.
  • a single subchannel of a given bandwidth is mixed with a unique spreading code which repeats a predetermined pattern generated by a wide bandwidth, pseudo-noise (pn) sequence generator.
  • These unique user spreading codes are typically pseudo-orthogonal to one another such that the cross-correlation between the spreading codes is close to zero.
  • the spreading codes in a CDMA system are chosen to minimize interference between a desired subchannel and all other subchannels.
  • a data signal is multiplied with the pn-sequence to spread the data signal and produce a digital spread spectrum signal.
  • a carrier signal is modulated with the digital spread spectrum signal and transmitted on the communication channel.
  • a receiver demodulates the transmission to extract the digital spread spectrum signal.
  • the transmitted data is reproduced after correlation with the matching pn sequence.
  • the spreading codes are orthogonal with one another, the received signal can be correlated with a particular user signal related to a particular spreading code such that only the desired user signal related to the particular spreading code is enhanced, while the other signals for all other
  • Each element of the spreading code is known as a chip and belongs to the set ⁇ 1, ⁇ 1 ⁇ .
  • the chip frequency or rate is the same or faster than the data rate.
  • the ratio between the chip rate and the subchannel data rate is referred to as the spreading factor and is equal to the number of chips that are used to spread one symbol of user data. The number of chips is divisible by the largest spreading factor allowed. The larger the spreading factor, the more resistant a symbol is to noise and interference. For the case of synchronous CDMA, a symbol from the user with the largest spreading factor may constitute an entire block of data.
  • CDMA is one access protocol called for in the proposed 3 rd generation wireless communication standards.
  • Shown in FIG. 4 is a system architecture of a CDMA spreader making use of variable spreading factors.
  • Variable spreading factors allow a transmitter to fine tune overall system processing gain. Higher data rate users are assigned spreading codes having a lower spreading factor at the expense of reduced processing gain. Lower data rate users are assigned spreading codes having a higher spreading factor. Therefore, the overall bandwidth of the spread signal of all users is maintained to be the same.
  • different spreading codes are used for cell separation and user separation, resulting in a two-part spreading operation for each subchannel.
  • Channelization codes are used for user separation and scrambling codes for cell separation.
  • a two-part spreading operation is characteristic of cellular CDMA systems, a single spreading operation may be used in other applications.
  • the channelization and scrambling codes are replaced by a single code that separates each user.
  • linear spreading methods are executed as fixed gate arrays, microprocessors, digital signal processors (DSPs), application specific integrated circuits (ASICs) and the like.
  • DSPs digital signal processors
  • ASICs application specific integrated circuits
  • Fixed logic systems allow for greater system speed while microprocessor driven systems offer programming flexibility.
  • Either implementation that is responsible for performing the spreading functions perform a sequence of mathematical operations.
  • the following variables typically define the structure and operation of a spreader:
  • the resulting spread symbol sequence SF max chips long is multiplied by a complex scrambling code ⁇ tilde over (v) ⁇ of length SF max to produce a final chip sequence z of length SF max .
  • the scrambling code ⁇ tilde over (v) ⁇ is derived from a real integer scrambling code ⁇ multiplied with a complex operator j n .
  • the result of the two-part spreading process is a vector z of length SF max chips.
  • the present invention is a spreading system and method for CDMA applications that requires fewer integer multiplications.
  • User data is spread using real or complex integer-based spreading codes of length SF to SF max chips. At least one of the codes is of the form j n ⁇ v[n] where v[n] is a spreading code.
  • the invention provides increased user separation using a plurality of spreading codes.
  • FIG. 1 is a simplified block diagram of a prior art multiple access communication system.
  • FIG. 2 is a plot of a quadrature signal space.
  • FIG. 3 is a simplified block diagram of a prior art CDMA communication system.
  • FIG. 4 is a system architecture of a prior art two-part spreader.
  • FIG. 5 is a system architecture of the present invention.
  • FIGS. 6 a - d are control flow diagrams of the method of the present invention.
  • FIGS. 7 a - d is a data flow diagram of the present invention.
  • FIG. 5 Shown in FIG. 5 is a system diagram of the spreader 17 of present invention for use in communication systems employing CDMA.
  • the spreader 17 comprises a plurality of processors having collateral memory which perform various vector and matrix operations. Alternate physical embodiments of the invention include fixed gate arrays, ASICs, DSPs and the like performing the equivalent functions of the various processors. As one skilled in this art recognizes, optimization techniques tailored for each physical embodiment may vary when implementing the spreader 17 .
  • the spreader 17 also comprises a plurality of data inputs d (1) . . . d (k) for inputting modulated user data d of subchannel k and an output z (G) for outputting a combined spread spectrum signal in the form of an output vector.
  • Each data input d (1) . . . d (k) may have from one to a plurality of channelization codes and from one to a plurality of scrambling codes assigned depending upon the degree of user and cell separation.
  • channelization and scrambling are arbitrary and represent a plurality of spreading codes that vary in length depending upon the assigned spreading factor SF of a subchannel k and the requirements of a communication system.
  • At least one assigned spreading code for each subchannel k must be exclusive to all other codes in the communication system to maintain subchannel separation for each user.
  • Each assigned code must have the same length, either as a periodic short code assembly or a code having the maximum spreading factor SF max length.
  • Alternative embodiments of the spreader 17 result from the number of codes assigned for a subchannel k.
  • a plurality of spreaders 17 may be deployed in transmitters for a communication system.
  • the spreader 17 spreads the data symbols of subchannel k using a plurality of channelization and scrambling codes. These codes may be all real, all complex or some may be real while others may be complex.
  • the spreader 17 comprises an intermediate code generator 21 , a group N processor 19 , a phaser adjustor 23 , a rotator 25 , two multipliers 27 r and 27 i and a summer 29 .
  • the intermediate code generator 21 concatenates N periods of each real code of spreading factor SF. It also concatenates N periods of the real part of each complex code of spreading factor SF. Thus each code of spreading factor SF yields a long code of length SF max . It then multiplies all of these long codes via an element-by-element multiplication of the resulting vector with all real codes of spreading factor SF max and the real part of all complex codes of length SF max . This results in the final output of the intermediate code generator 21 , which is a single real code of length SF max .
  • the group N processor 19 determines the group size N as the ratio SF max , and then SF assembles a group of N symbols.
  • the spreader 17 spreads one such group at a time.
  • the phase adjuster 23 imparts an initial phase to each of the N symbols in the group assembled by the group N processor 19 .
  • the phase imparted to a symbol is a function of the position of the symbol within its group.
  • the output of the phase adjustor 23 is a group of N symbols where each symbol has been given a specific phase rotation.
  • the complex sequence output of the rotator 25 is multiplied, element-by-element, with the intermediate code generator 21 output. This multiplication is accomplished via the multipliers 27 r and 27 i.
  • the multipliers 27 r and 27 i multiply the real intermediate code with the real and imaginary parts, respectively, of the complex sequence output of the rotator 25 .
  • the output of the multipliers 27 r and 27 i is the final spread sequence of the group of N symbols of a subchannel.
  • the summer 29 adds the final spread sequence of all subchannels to form a single sequence output of the spreader 17 .
  • channelization codes are employed for user separation and scrambling codes are employed for cell separation, the channelization code and scrambling codes are known a priori according to cell location and are transmitted to a respective user from a cell base station via a learning transmission. The learning transmission is beyond the scope of this disclosure.
  • M channelization codes are available for use, ⁇ tilde over (c) ⁇ i . . . ⁇ tilde over (c) ⁇ M 1 , c M1+1 . . . c M of which the first M 1 are complex and the remaining are real.
  • the subchannel k also can utilize P scrambling codes, ⁇ tilde over (v) ⁇ 1 . . . ⁇ tilde over (v) ⁇ P 1 , v P i+1 . . . v P of which the first P 1 are complex and the remaining are real.
  • data d which has undergone modulation and comprises a series of data symbols is input into the spreader 17 .
  • An intermediate real code s is computed (step 103 ) from each concatenated channelization code sequence c p and the real scrambling code v by performing an element-by-element multiplication of the two vectors in the intermediate code s generator 21 . Multiplication is allowed since both vectors are of the same length.
  • Intermediate real code s of length SF max is computed (step 103 ) using v and c and is made up of M+P real codes.
  • the intermediate code s is computed once for a given (k th ) subchannel. Efficiency is gained since the computation is performed once for the entire data sequence for transmission of subchannel k.
  • Group N count (step 105 ) is initialized and a vector d comprising N symbols is assembled (step 107 ) in the group N processor 19 . Symbol d i count is initialized (step 109 ).
  • the spreader 17 of the present invention obviates a plurality of multiplications by recognizing that each multiplication with the complex operator j is equivalent to an anticlockwise rotation of the multiplicand that varies in the number of degrees.
  • the rotation involves an exchange of the real and imaginary parts with a change of sign.
  • Equation 13 initializes ⁇ tilde over (d) ⁇ i [0] by imparting an initial phase d i , which is a function of the spreading factor SF, the position i within the group of the symbols being spread and the number of complex scrambling codes P 1 .
  • Step 111 performs the first step of this initialization.
  • the rotator 25 rotates the (n ⁇ 1) th element of ⁇ tilde over (d) ⁇ i by 0 degrees to obtain its n th element.
  • the rotator 25 rotates the (n ⁇ 1) th element of ⁇ tilde over (d) ⁇ i by 90 degrees anti-clockwise to obtain its n th element.
  • the rotator 25 rotates the (n ⁇ 1) th element of d i by 180 degrees anti-clockwise to obtain its n th element.
  • the rotator 25 rotates the (n ⁇ 1) th element of ⁇ tilde over (d) ⁇ i by 270 degrees anti-clockwise to obtain its n th element.
  • the resultant SF chip long intermediate chip sequence ⁇ tilde over (d) ⁇ i is computed for the i th symbol in the group of N symbols by employing SF rotations as described by Equations 15-22. Actual multiplication is replaced by the rotator 25 performing shift operations shown in FIGS. 7 a - d that correspond to the aforementioned 0 degrees, 90 degrees, 180 degrees and 270 degrees rotations respectively to compute the SF chip long vector ⁇ tilde over (d) ⁇ 1 .
  • the 0 th element of ⁇ tilde over (d) ⁇ i is initialized from the new complex data symbol d i per Equation 13. If the determined amount of symbol rotation is 90 degrees, 180 degrees or 270 degrees, the real and imaginary components of ⁇ tilde over (d) ⁇ i [0] are loaded into a register holding the real ⁇ tilde over (d) ⁇ i, real [n] and imaginary ⁇ tilde over (d) ⁇ i, imag [n] components of ⁇ tilde over (d) ⁇ i [n].
  • the real and imaginary components of ⁇ tilde over (d) ⁇ i [n] are shifted around in the register at the chip rate.
  • the register has two memory elements, which together with a feedback path accomplish the derivation of the real and imaginary components of the n th element of ⁇ tilde over (d) ⁇ i from the imaginary and real components, respectively, of its (n ⁇ 1) th element, (Equations 17-22).
  • the multiplication with ⁇ 1 accounts for required sign changes.
  • Rotator 25 outputs z real , z imag tapped at the n th chip interval as ⁇ tilde over (d) ⁇ i, real [n] and ⁇ tilde over (d) ⁇ i, imag [n].
  • a phase rotation of 0 degrees on the complex plane ( FIG. 2 ) implemented by the rotator 25 shown in FIG. 7 a outputs the same real ⁇ tilde over (d) ⁇ i, real [n] and imaginary ⁇ tilde over (d) ⁇ i, imag [n] component values of the data symbol input.
  • the symbol does not undergo any phase change.
  • a phase rotation of 90 degrees implemented by the rotator 25 shown in FIG. 7 b outputs as the imaginary symbol component ⁇ tilde over (d) ⁇ i, imag [n] the real data symbol component input and outputs as the real symbol component ⁇ tilde over (d) ⁇ i, real [n] the imaginary symbol component input along with a change of sign.
  • a phase rotation of 180 degrees implemented by the rotator 25 shown in FIG. 7 c outputs as the imaginary symbol component ⁇ tilde over (d) ⁇ i, imag [n] the imaginary data symbol component input along with a change of sign and outputs as the real symbol component ⁇ tilde over (d) ⁇ i, real [n] the real symbol component input along with a change of sign.
  • a phase rotation of 270 degrees implemented by the rotator 25 in FIG. 7 d outputs as the imaginary symbol component ⁇ tilde over (d) ⁇ i, imag [n] the imaginary data symbol component input, and outputs as the real symbol component ⁇ tilde over (d) ⁇ i, real [n] the real symbol component input along with a change of sign.
  • the process is repeated for remaining groups (step 137 ) and the group index is incremented (step 139 ) if needed.

Abstract

A spreading system and method for CDMA applications that requires fewer integer multiplications. User data is spread using real or complex integer based spreading codes of length SF to SFmax chips. At least one of the codes is of the form jn·v[n] where v[n] is a spreading code. The invention provides increased user separation using a plurality of spreading codes.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application a continuation of U.S. patent application Ser. No. 11/114,397, filed Apr. 26, 2005, which is a continuation of U.S. patent application Ser. No. 09/810,596, filed Mar. 16, 2001, now U.S. Pat. No. 6,885,692, issued Apr. 26, 2005 which claims the benefit of U.S. Provisional Patent Application No. 60/191,884, filed Mar. 23, 2000, which are incorporated by reference as if fully set forth.
  • BACKGROUND
  • The present invention relates generally to digital communication systems. More specifically, the invention relates to a system and method for spreading a data signal for spread spectrum communications.
  • A communication system typically transmits information or data using a continuous frequency carrier with modulation techniques that vary its amplitude, frequency or phase. The information to be transmitted is mapped onto a predetermined constellation that defines symbols and is transmitted over a communication medium. The communication medium may be guided or unguided, (comprising copper, optical fiber or air) and is commonly referred to as the communication channel.
  • Deployed communication systems rarely are single access. A prior art multiple-access communication system is shown in FIG. 1. Protocols such as time division multiple access (TDMA), carrier sense multiple access (CSMA), code division multiple access (CDMA) and frequency related protocols such as frequency division multiple access (FDMA) and orthogonal frequency division multiplexing (OFDM) allow a plurality of users to access the same communication media to transmit or receive information. These techniques can be mixed together creating hybrid varieties of multiple-access communication schemes such as time division duplex (TDD). The access protocol specified by a communication system is typically executed after the data undergoes modulation.
  • Prior art modulation techniques that are in use are frequency modulation (FM), frequency shift keying (FSK), phase shift keying (PSK), binary phase shift keying (BPSK) and differential phase shift keying (DPSK). The most commonly used high-speed methods for data modulation are quadrature amplitude modulation (QAM) and quadrature phase shift keying (QPSK). These techniques vary a predefined carrier frequency amplitude and phase according to an input signal to transmit multiple bits per baud thereby using available bandwidth more efficiently.
  • To extend the possible range of data signal values, quadrature modulation assigns a symbol to represent more than two binary values. The use of a symbol allows for a greater degree of transmitted information since the bit content of each symbol dictates a unique pulse shape. Symbols, which consist of x bits per sample, may represent a quantized version of an analog sample or digital data. Depending upon the number of symbols used, an equal number of unique pulseshapes or waveshapes exist. The number of data bits determine the combinations of amplitude and phase that define a constellation pattern.
  • Quadrature modulation is based on two distinct waveforms that are orthogonal to each other. If two waveforms are transmitted simultaneously and do not interfere with each other, they are orthogonal. Quadrature modulation modulates two different signals into the same bandwidth creating a two-dimensional signal space as shown in FIG. 2. Two waveforms generally used for quadrature modulation are sine and cosine waveforms at the same frequency. The waveforms are defined as:
    s 1(t)=A cos(2πf c t)   (1)
    and;
    s 2(t)=A sin(2πf c t)   (2)
    where fc is the carrier frequency of the modulated signal and A is the amplitude applied to both signals. By convention, the cosine carrier is called the in-phase (I), real component of the signal and the sine carrier is the quadrature (Q), imaginary component of the signal. Linear combinations of the form a1 cos(2πfct)+a2 sin(2πfct), (where a1 and a2 are real numbers), generated from the two basic waveforms define symbols in the modulation alphabet. The symbols can be represented as complex numbers, a1+ja2, where j is defined as j=z√{square root over (−1)}.
  • A QAM symbol consists of at least one sample from both the in-phase I and quadrature Q signals. Signal amplitude is indicated by the distance from the origin; phase by the angular distance around the unit circle. After the data is assembled as symbols, the symbols are processed in accordance with an access protocol chosen for the communication system.
  • A prior art CDMA communication system is shown in FIG. 3. CDMA is a communication technique in which data is transmitted with a broadened band (spread spectrum) by modulating the data to be transmitted with a pseudo-noise sequence. The data signal to be transmitted may have a bandwidth of only a few thousand Hertz distributed over a frequency band that may be several million Hertz. The communication channel is used simultaneously by k independent subchannels. For each subchannel k, all other subchannels appear as interference.
  • As shown, a single subchannel of a given bandwidth is mixed with a unique spreading code which repeats a predetermined pattern generated by a wide bandwidth, pseudo-noise (pn) sequence generator. These unique user spreading codes are typically pseudo-orthogonal to one another such that the cross-correlation between the spreading codes is close to zero. The spreading codes in a CDMA system are chosen to minimize interference between a desired subchannel and all other subchannels. A data signal is multiplied with the pn-sequence to spread the data signal and produce a digital spread spectrum signal. A carrier signal is modulated with the digital spread spectrum signal and transmitted on the communication channel. A receiver demodulates the transmission to extract the digital spread spectrum signal. The transmitted data is reproduced after correlation with the matching pn sequence. When the spreading codes are orthogonal with one another, the received signal can be correlated with a particular user signal related to a particular spreading code such that only the desired user signal related to the particular spreading code is enhanced, while the other signals for all other users are not enhanced.
  • Each element of the spreading code is known as a chip and belongs to the set {1, −1}. The chip frequency or rate is the same or faster than the data rate. The ratio between the chip rate and the subchannel data rate is referred to as the spreading factor and is equal to the number of chips that are used to spread one symbol of user data. The number of chips is divisible by the largest spreading factor allowed. The larger the spreading factor, the more resistant a symbol is to noise and interference. For the case of synchronous CDMA, a symbol from the user with the largest spreading factor may constitute an entire block of data.
  • CDMA is one access protocol called for in the proposed 3rd generation wireless communication standards. Shown in FIG. 4 is a system architecture of a CDMA spreader making use of variable spreading factors. Variable spreading factors allow a transmitter to fine tune overall system processing gain. Higher data rate users are assigned spreading codes having a lower spreading factor at the expense of reduced processing gain. Lower data rate users are assigned spreading codes having a higher spreading factor. Therefore, the overall bandwidth of the spread signal of all users is maintained to be the same.
  • To reduce the overall number of spreading codes for each user in a given communication system, different spreading codes are used for cell separation and user separation, resulting in a two-part spreading operation for each subchannel. Channelization codes are used for user separation and scrambling codes for cell separation. Although a two-part spreading operation is characteristic of cellular CDMA systems, a single spreading operation may be used in other applications. Here, the channelization and scrambling codes are replaced by a single code that separates each user.
  • To effect the spreading operation of k subchannel users in a physical system, linear spreading methods are executed as fixed gate arrays, microprocessors, digital signal processors (DSPs), application specific integrated circuits (ASICs) and the like. Fixed logic systems allow for greater system speed while microprocessor driven systems offer programming flexibility. Either implementation that is responsible for performing the spreading functions perform a sequence of mathematical operations. The following variables typically define the structure and operation of a spreader:
      • c=the real integer channelization spreading code presented as a vector for subchannel k corresponding with a given spreading factor SF. The length of the channelization code c varies with different spreading factors SF.
      • d=the data transmitted in a subchannel k.
      • d=the data in a subchannel k after modulation. The data is presented in the form of a vector, where a vector is an array of data indexed by a single index variable. For the purposes of vector operations which follow, all vectors are defined as column vectors.
      • k=one subchannel, (k=1, 2, 3, . . . K).
      • N=the number of data symbols in a group of the kth subchannel, (N=SFmax/SF). For the case of synchronous CDMA, a symbol from the user with the largest spreading factor may constitute an entire block of data. Each subchannel k has its own group size N where N can equal 1 (for SF=SFmax) to SFmax/SFmin.
      • i=the ith symbol of data d, (i=1, 2, 3, . . . N).
      • n=the element reference of a vector, ([n]).
      • SF=the spreading factor of subchannel k.
      • SFmin=the minimum spreading factor of the communication system.
      • SFmax=the maximum spreading factor of the communication system.
      • v=the real, integer part of the scrambling code.
      • {tilde over (v)}=the complex scrambling code presented as a vector of length SFmax. {tilde over (v)}[n]=jn·v[n], where n=1 . . . SFmax. Note that v[n] & {tilde over (v)}[n] reference the nth element of the vectors v & {tilde over (v)}. Thus, {tilde over (v)}[n]=jn·v[n] defines the rule for deriving the nth element of {tilde over (v)} from the nth element of v.
      • z i=the final spread chip sequence resulting from the application of the channelization and scrambling codes on the ith symbol of subchannel k. zi[n]=di·c[n]·jSF(i−1)+n·v[SF(i+1)+n], where n=1 . . . SF. z i is SF chips long; the spreading factor chosen for that particular subchannel k. N such SF long z i form z of length SFmax.
  • To simplify the description that follows, a two-part, prior art spreader for a kth subchannel is discussed. One skilled in this art appreciates that a plurality of k spread subchannels can be summed as shown in FIG. 4. After data has been modulated, where data d of subchannel k is assembled as symbols defining a predetermined constellation, a sequence of complex data symbols d is divided into groups containing N symbols each, defined by: N = SF max SF . ( 3 )
    Each complex data symbol d within a group of N symbols is spread by a real integer channelization code c of length SF chips. The channelization code c is unique to a user k. All N channelization code c spread symbols d of the group N are concatenated.
  • The resulting spread symbol sequence SFmax chips long is multiplied by a complex scrambling code {tilde over (v)} of length SFmax to produce a final chip sequence z of length SFmax. The scrambling code {tilde over (v)} is derived from a real integer scrambling code υ multiplied with a complex operator jn. The relation is:
    {tilde over (v)}[n]=jn A v[n], where n=1 . . . SFmax.   (4)
  • The result of the two-part spreading process is a vector z of length SFmax chips. This vector {tilde over (z)} can be expressed as a concatenation of N subvectors, {tilde over (z)}i, where i=1, 2, 3, . . . N, where z i is defined as the segment of length SF chips within z that represents the contribution of subchannel k's ith spread symbol, di, in the group. The nth element of z i is given by:
    z i [n]=d i ·c[n]·j SF(i−1)+n ·v[SF(i+1)+n], where n=1, . . . SF and i=1, 2, 3,   (5)
    v[SF(i+1)+n], where n=1, . . . SF, defines a different set of SF elements of v, starting with the (SF(i−1)+1)th element depending upon i.
  • Implementing the two-code spreading operation defined by Equation 5 would require 8(N)(SF) integer multiplications to spread a symbol sequence d of length N symbols for one subchannel k. 2(SF) multiplications are required for the di A c[n] (where n=1, . . . SF) product (for one symbol) and 2(SF) multiplications are required for the jSF(i−1)+n·v[n] product (for one symbol) (where n=1, . . . SF) since di and jn are complex numbers multiplied with real numbers. Since both intermediate products are complex, the partial product multiplication requires four operations per symbol yielding a total of 8(N)(SF) multiplications.
  • In order to conserve power for operation in a mobile/portable communication system while increasing data throughput, an efficient process is needed to implement multiple code spreading operations.
  • SUMMARY
  • The present invention is a spreading system and method for CDMA applications that requires fewer integer multiplications. User data is spread using real or complex integer-based spreading codes of length SF to SFmax chips. At least one of the codes is of the form jn·v[n] where v[n] is a spreading code. The invention provides increased user separation using a plurality of spreading codes.
  • Accordingly, it is an object of the invention to provide a less complex system and method for spreading a data signal using more than one spreading code
  • Other objects and advantages of the system and method will become apparent to those skilled in the art after reading a detailed description of the preferred embodiment.
  • BRIEF DESCRIPTION OF THE DRAWING(S)
  • FIG. 1 is a simplified block diagram of a prior art multiple access communication system.
  • FIG. 2 is a plot of a quadrature signal space.
  • FIG. 3 is a simplified block diagram of a prior art CDMA communication system.
  • FIG. 4 is a system architecture of a prior art two-part spreader.
  • FIG. 5 is a system architecture of the present invention.
  • FIGS. 6 a-d are control flow diagrams of the method of the present invention.
  • FIGS. 7 a-d is a data flow diagram of the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)
  • The present invention will be described with reference to the drawing figures where like numerals represent like elements throughout.
  • Shown in FIG. 5 is a system diagram of the spreader 17 of present invention for use in communication systems employing CDMA. The spreader 17 comprises a plurality of processors having collateral memory which perform various vector and matrix operations. Alternate physical embodiments of the invention include fixed gate arrays, ASICs, DSPs and the like performing the equivalent functions of the various processors. As one skilled in this art recognizes, optimization techniques tailored for each physical embodiment may vary when implementing the spreader 17. The spreader 17 also comprises a plurality of data inputs d(1) . . . d(k) for inputting modulated user data d of subchannel k and an output z (G) for outputting a combined spread spectrum signal in the form of an output vector.
  • To simplify the explanation of the present invention that follows, only one subchannel k spreading operation will be described, thereby eliminating the need for unique subchannel identification throughout. Each data input d(1) . . . d(k) may have from one to a plurality of channelization codes and from one to a plurality of scrambling codes assigned depending upon the degree of user and cell separation. The terms channelization and scrambling are arbitrary and represent a plurality of spreading codes that vary in length depending upon the assigned spreading factor SF of a subchannel k and the requirements of a communication system. At least one assigned spreading code for each subchannel k must be exclusive to all other codes in the communication system to maintain subchannel separation for each user.
  • Each assigned code must have the same length, either as a periodic short code assembly or a code having the maximum spreading factor SFmax length. Alternative embodiments of the spreader 17 result from the number of codes assigned for a subchannel k. A plurality of spreaders 17 may be deployed in transmitters for a communication system.
  • The spreader 17 spreads the data symbols of subchannel k using a plurality of channelization and scrambling codes. These codes may be all real, all complex or some may be real while others may be complex. The spreader 17 comprises an intermediate code generator 21, a group N processor 19, a phaser adjustor 23, a rotator 25, two multipliers 27 r and 27 i and a summer 29.
  • Recall that length of a code is equal to its spreading factor SF. The intermediate code generator 21 concatenates N periods of each real code of spreading factor SF. It also concatenates N periods of the real part of each complex code of spreading factor SF. Thus each code of spreading factor SF yields a long code of length SFmax. It then multiplies all of these long codes via an element-by-element multiplication of the resulting vector with all real codes of spreading factor SFmax and the real part of all complex codes of length SFmax. This results in the final output of the intermediate code generator 21, which is a single real code of length SFmax.
  • The group N processor 19 determines the group size N as the ratio SF max, and then SF assembles a group of N symbols. The spreader 17 spreads one such group at a time.
  • The phase adjuster 23, imparts an initial phase to each of the N symbols in the group assembled by the group N processor 19. The phase imparted to a symbol is a function of the position of the symbol within its group. Thus, the output of the phase adjustor 23 is a group of N symbols where each symbol has been given a specific phase rotation.
  • The rotator 25 accounts for the complex codes by forming a sequence of length SF corresponding to each of these symbols in the group of N symbols obtained from the output of the phase adjustor 23. It does so by rotating each phase-adjusted symbol SF times, with the degree of rotation being a function of the total number of complex codes in the system. Then, the N such complex sequences corresponding to each of the N symbols in the group are concatenated to form a single complex sequence of length N·SF=SFmax, which forms the final output of the rotator 25.
  • The complex sequence output of the rotator 25 is multiplied, element-by-element, with the intermediate code generator 21 output. This multiplication is accomplished via the multipliers 27 r and 27 i. The multipliers 27 r and 27 i multiply the real intermediate code with the real and imaginary parts, respectively, of the complex sequence output of the rotator 25.
  • The output of the multipliers 27 r and 27 i is the final spread sequence of the group of N symbols of a subchannel. The summer 29 adds the final spread sequence of all subchannels to form a single sequence output of the spreader 17.
  • Since channelization codes are employed for user separation and scrambling codes are employed for cell separation, the channelization code and scrambling codes are known a priori according to cell location and are transmitted to a respective user from a cell base station via a learning transmission. The learning transmission is beyond the scope of this disclosure. M channelization codes are available for use, {tilde over (c)} i . . . {tilde over (c)} M 1 ,c M1+1 . . . cM of which the first M1 are complex and the remaining are real. The nth element of the ith complex channelization code is defined as:
    {tilde over (c)} i [n]=j n ·c i [n], where n=1, . . . SF and where c i is real.   (6)
    The subchannel k also can utilize P scrambling codes, {tilde over (v)} 1 . . . {tilde over (v)}P 1 ,v P i+1 . . . v P of which the first P1 are complex and the remaining are real. The nth element of the ith complex scrambling code is defined as:
    {tilde over (v)} i [n]=j n ·v i [n], where n=1, . . . SF max and where v i is real.   (7)
  • Referring to the flow diagram of the method 97 of the present invention shown on FIGS. 6 a-d, data d which has undergone modulation and comprises a series of data symbols is input into the spreader 17. A symbol group size N for subchannel k is determined by the group N processor 19 using Equation 3 (step 99). Since different channelization codes c have different lengths due to their different spreading factors SF, N periods of the respective channelization codes c are concatenated (step 101) to form a periodic long code c p, equal in length to the maximum spreading factor SFmax of the communication system. Concatenation is not required when N is equal to one (SF=SFmax).
  • In order to simplify the explanation of the method 97, c represents the product of all real channelization codes that have been concatenated c p. Included in c are the real codes from which the complex channelization codes are derived. The nth element of c is defined as:
    c[n]=c 1 [n]·c 2 [n] . . . c M [n], where n=1, . . . SF.   (8)
    Additionally, v represents the product of all real scrambling codes. Included in υ are the real codes from which the complex scrambling codes are derived. The nth element of v is defined as:
    v[n]=v 1 [n]·v 2 [n] . . . v P [n], where n=1, . . . SF max.   (9)
  • An intermediate real code s is computed (step 103) from each concatenated channelization code sequence c p and the real scrambling code v by performing an element-by-element multiplication of the two vectors in the intermediate code s generator 21. Multiplication is allowed since both vectors are of the same length. The nth element of the intermediate code s is defined by:
    s [n]=cp [n]·v[n], where n=1, . . . SF max  (10)
    where cp , is a product of the periodic extensions of the subchannel k channelization codes c, containing N periods of c corresponding to the spreading factor SF. Intermediate real code s of length SFmax is computed (step 103) using v and c and is made up of M+P real codes.
  • The intermediate code s is computed once for a given (kth) subchannel. Efficiency is gained since the computation is performed once for the entire data sequence for transmission of subchannel k. Group N count (step 105) is initialized and a vector d comprising N symbols is assembled (step 107) in the group N processor 19. Symbol di count is initialized (step 109).
  • The spreader 17 improves processing speed by recognizing that the generation of each subsequence z i (Equation 5) involves the complex sequence jSF(i−1)+n where n=1, . . . SF. This sequence arises since each complex code {tilde over (c)}, {tilde over (v)} is derived from a real scrambling code c, v via multiplication with the complex sequence jn (Equation 4). Referring to Equation 5 and using the commutative property of multiplication, the product of the real channelization codes c p and the real scrambling codes v are available via the intermediate code s (step 103). Equation 5 representing the nth element of zi, (where z i is the segment of SF chips within z that represents the contribution of subchannel k's ith spread symbol, di in the group), becomes:
    z i [n]=d i ·c[n]·v[SF(i−1)+n]·j P 1 SF(i−1) ·j (P 1 +M 1 )n where n=1 . . . SF and i=1, 2, . . . N.   (11)
  • To complete the spreading process for a group, a multiplication of the intermediate code s with a concatenation of all symbols in the group is required. The spreader 17 of the present invention obviates a plurality of multiplications by recognizing that each multiplication with the complex operator j is equivalent to an anticlockwise rotation of the multiplicand that varies in the number of degrees. The rotation involves an exchange of the real and imaginary parts with a change of sign. The nth element of {tilde over (d)} i is obtained from a multiplication of its (n−1)th element with the complex operator j(P 1 +M 1 ) and is defined as:
    {tilde over (d)} i [n]=j (P 1 +M 1 ) {tilde over (d)} i [n−1], where n=1, . . . SF   (12)
    where the 0th element of {tilde over (d)} i is initialized as:
    {tilde over (d)} i[0]=d i j SF(i−1)P 1   (13)
    Equation 13 initializes {tilde over (d)}i[0] by imparting an initial phase di, which is a function of the spreading factor SF, the position i within the group of the symbols being spread and the number of complex scrambling codes P1. Step 111 performs the first step of this initialization.
  • Invoking the equivalence between a multiplication with a complex operator j and an anticlockwise rotation of the multiplicand by 90 degrees, the real and imaginary components of the nth element of {tilde over (d)}i are derived from the imaginary and real components, respectively, of its (n−1)th element. Since a group of N symbols is spread with N periods of the subchannel k spreading factor SF channelization codes c, i takes the value from i=1, . . . N.
  • After a symbol count i is initialized (step 109), a group of N symbols is processed and di[0] is initialized (step 111). When the spreading factor SF satisfies the following:
    SF·P 1=4q, for any integer p,   (14)
    Equation 12 reduces to {tilde over (d)}i[0]=di since j4q=1 for any integer q. For the case when SF does not satisfy the condition of Equation 14 (step 113), {tilde over (d)}i[0] is obtained by imparting an initial phase of {tilde over (d)}i[0]=jSF(i−1)P 1 {tilde over (d)}i[0] to the symbol di (step 115).
  • The method 97 proceeds with four tests to determine the amount of symbol rotation required depending upon the number of complex spreading codes in use. For the case when M1+P1=4p (step 117), where p is any integer, the real and imaginary components of the nth element of {tilde over (d)}i are derived from the real and imaginary components with the complex operator being j(P 1 +M 1 )=1, and its (n−1)th elements as shown by Equations 15 and 16 in step 119. The rotator 25 rotates the (n−1)th element of {tilde over (d)}i by 0 degrees to obtain its nth element.
  • For the case when M1+P1=4p+1 (step 121), where p is any integer, the real and imaginary parts of the nth element of {tilde over (d)}i are derived from the imaginary and real parts with the complex operator being j(P 1 +M 1 )=j, and its (n−1)th elements as shown by Equations 17 and 18 in step 123. The rotator 25 rotates the (n−1)th element of {tilde over (d)}i by 90 degrees anti-clockwise to obtain its nth element.
  • For the case when M1+P1=4p+2 (step 125), where p is any integer, the real and imaginary parts of the nth element of {tilde over (d)}i are derived from the real and imaginary components with the complex operator being j(P 1 +M 1 )=−1, and its (n−1)th element as shown by Equations 19 and 20 in step 127. The rotator 25 rotates the (n−1)th element of d i by 180 degrees anti-clockwise to obtain its nth element.
  • For the remaining case when M1+P1=4p+3 (step 129), where p is any integer, the real and imaginary parts of the nth element of {tilde over (d)}i are derived from the real and imaginary components with the complex operator being j(P 1 +M 1 )=−j′ and its (n−1)th element as shown by Equations 21 and 22 in step 131. The rotator 25 rotates the (n−1)th element of {tilde over (d)}i by 270 degrees anti-clockwise to obtain its nth element.
  • The resultant SF chip long intermediate chip sequence {tilde over (d)}i is computed for the ith symbol in the group of N symbols by employing SF rotations as described by Equations 15-22. Actual multiplication is replaced by the rotator 25 performing shift operations shown in FIGS. 7 a-d that correspond to the aforementioned 0 degrees, 90 degrees, 180 degrees and 270 degrees rotations respectively to compute the SF chip long vector {tilde over (d)}1.
  • As shown in the FIGS. 7 a-d, at the ith symbol interval, the 0th element of {tilde over (d)}i is initialized from the new complex data symbol d i per Equation 13. If the determined amount of symbol rotation is 90 degrees, 180 degrees or 270 degrees, the real and imaginary components of {tilde over (d)}i[0] are loaded into a register holding the real {tilde over (d)}i, real[n] and imaginary {tilde over (d)}i, imag[n] components of {tilde over (d)}i[n]. The real and imaginary components of {tilde over (d)}i[n] are shifted around in the register at the chip rate. The register has two memory elements, which together with a feedback path accomplish the derivation of the real and imaginary components of the nth element of {tilde over (d)}i from the imaginary and real components, respectively, of its (n−1)th element, (Equations 17-22). The multiplication with −1 accounts for required sign changes. Rotator 25 outputs zreal, zimag tapped at the nth chip interval as {tilde over (d)}i, real[n] and {tilde over (d)}i, imag[n]. Thus, the rotator outputs over n=1, . . . SF chip intervals to represent the SF chip long vector {tilde over (d)}i, i.e., the product of the data symbol {tilde over (d)}i with the jSF(i−1)+n, n=1, . . . SF.
  • As one skilled in the art should realize, a phase rotation of 0 degrees on the complex plane (FIG. 2) implemented by the rotator 25 shown in FIG. 7 a outputs the same real {tilde over (d)}i, real[n] and imaginary {tilde over (d)}i, imag[n] component values of the data symbol input. The symbol does not undergo any phase change. A phase rotation of 90 degrees implemented by the rotator 25 shown in FIG. 7 b outputs as the imaginary symbol component {tilde over (d)}i, imag[n] the real data symbol component input and outputs as the real symbol component {tilde over (d)}i, real[n] the imaginary symbol component input along with a change of sign. A phase rotation of 180 degrees implemented by the rotator 25 shown in FIG. 7 c outputs as the imaginary symbol component {tilde over (d)}i, imag[n] the imaginary data symbol component input along with a change of sign and outputs as the real symbol component {tilde over (d)}i, real[n] the real symbol component input along with a change of sign. A phase rotation of 270 degrees implemented by the rotator 25 in FIG. 7 d outputs as the imaginary symbol component {tilde over (d)}i, imag[n] the imaginary data symbol component input, and outputs as the real symbol component {tilde over (d)}i, real[n] the real symbol component input along with a change of sign.
  • Referring to FIG. 6 d, after all remaining symbols in the group are similarly processed (step 133), their {tilde over (d)}i, i=1, . . . N are concatenated to form SFmax long {tilde over (d)}i and then multiplied by the intermediate code s to arrive at the final spread sequence z of the group (step 135). The process is repeated for remaining groups (step 137) and the group index is incremented (step 139) if needed.
  • Alternative embodiments of spreader 17 may be realized when a specific number of codes are used and do not vary. For example, if the spreader 17 was deployed in transmitters for a communication system that only required two codes for separation, one real and one complex, the total number of complex codes equals one, satisfying the test M1+P1=4p+1 (j(number of complex codes)modulo 4) (step 121) thereby requiring only a 90 degree rotation. The remaining tests for 0, 180 and 270 degree rotations ( steps 117, 125, 129) and their associated rotations ( steps 119, 127 and 131) are obviated. Any number of codes may be combined to spread the data assembled in the group N processor 19.
  • While the present invention has been described in terms of the preferred embodiments, other variations which are within the scope of the invention as outlined in the claims below will be apparent to those skilled in the art.

Claims (14)

1. A method for spreading a sequence of symbols using at least two spreading codes in a wireless communication system where the first spreading code is used for distinguishing users and the second spreading code is used for distinguishing base stations, the method comprising:
generating a single symbol spreading code from the at least two spreading codes;
generating a complex code sequence from the sequence of symbols; and,
generating a spread sequence by multiplying the symbol spreading code and the complex code sequence bit by bit.
2. The method of claim 1, further comprising:
defining a plurality of groups, each group comprising N symbols, wherein spreading is conducted group by group.
3. The method of claim 2, wherein the step of generating the symbol spreading code comprises multiplying the first spreading code and the second spreading code bit by bit.
4. The method of claim 3, wherein the first spreading code is concatenated N times.
5. The method of claim 4, wherein the number N is determined by dividing the maximum spreading factor (SF) of the system by the SF of the first code.
6. The method of claim 1, wherein the complex code sequence is generated by adjusting a phase of the symbols, and rotating each phase-adjusted symbol SF times in the complex plane.
7. The method of claim 6, wherein each rotation is determined by an integer multiple of 90 degrees counterclockwise, the integer being calculated by maximum SF modulo 4.
8. A sequence spreader for spreading a sequence of symbols using at least two spreading codes for transmission in a wireless communication system; where the first spreading code is used for distinguishing users and the second spreading code is used for distinguishing base stations, the spreader comprising:
a code generator for generating a spread code from the at least two spreading codes;
a complex code sequence generator for generating a complex code sequence from the spread code; and
two multipliers for generating a final spread code by multiplying the spread code and the complex code sequence bit by bit.
9. The sequence spreader of claim 8, wherein the spread code comprises a plurality of groups of N symbols.
10. The sequence spreader of claim 9, wherein the code generator generates the spreading code by multiplying the first spreading code and the second spreading code bit by bit.
11. The sequence spreader of claim 10, wherein the first spreading code is concatenated N times.
12. The sequence spreader of claim 11, wherein the number N is determined by dividing the maximum spreading factor (SF) of the system by the SF of the first code.
13. The sequence spreader of claim 12, wherein the complex code sequence generator further comprises:
a phase adjuster for adjusting a phase of a symbol; and
a rotator for rotating each phase-adjusted symbol SF times in the complex plane.
14. The sequence spreader of claim 13, wherein each rotation is determined by an integer multiple of 90 degrees counterclockwise, the integer being calculated by maximum SF modulo 4.
US11/515,168 2000-03-23 2006-09-01 Efficient spreader for spread spectrum communication systems Abandoned US20070009013A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/515,168 US20070009013A1 (en) 2000-03-23 2006-09-01 Efficient spreader for spread spectrum communication systems

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US19188400P 2000-03-23 2000-03-23
US09/810,596 US6885692B2 (en) 2000-03-23 2001-03-16 Efficient spreader for spread spectrum communication systems
US11/114,397 US7103088B2 (en) 2000-03-23 2005-04-26 Efficient spreader for spread spectrum communication systems
US11/515,168 US20070009013A1 (en) 2000-03-23 2006-09-01 Efficient spreader for spread spectrum communication systems

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/114,397 Continuation US7103088B2 (en) 2000-03-23 2005-04-26 Efficient spreader for spread spectrum communication systems

Publications (1)

Publication Number Publication Date
US20070009013A1 true US20070009013A1 (en) 2007-01-11

Family

ID=22707294

Family Applications (3)

Application Number Title Priority Date Filing Date
US09/810,596 Expired - Lifetime US6885692B2 (en) 2000-03-23 2001-03-16 Efficient spreader for spread spectrum communication systems
US11/114,397 Expired - Fee Related US7103088B2 (en) 2000-03-23 2005-04-26 Efficient spreader for spread spectrum communication systems
US11/515,168 Abandoned US20070009013A1 (en) 2000-03-23 2006-09-01 Efficient spreader for spread spectrum communication systems

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US09/810,596 Expired - Lifetime US6885692B2 (en) 2000-03-23 2001-03-16 Efficient spreader for spread spectrum communication systems
US11/114,397 Expired - Fee Related US7103088B2 (en) 2000-03-23 2005-04-26 Efficient spreader for spread spectrum communication systems

Country Status (16)

Country Link
US (3) US6885692B2 (en)
EP (1) EP1269645B9 (en)
JP (1) JP2003528532A (en)
KR (3) KR100528605B1 (en)
CN (2) CN1248421C (en)
AT (2) ATE293309T1 (en)
AU (2) AU2001220988B2 (en)
CA (1) CA2401896A1 (en)
DE (2) DE60033705T2 (en)
ES (2) ES2236013T3 (en)
HK (1) HK1058583A1 (en)
IL (2) IL151895A0 (en)
MX (1) MXPA02009295A (en)
NO (1) NO20024530L (en)
TW (4) TWI275256B (en)
WO (1) WO2001071938A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8787425B2 (en) 2009-01-19 2014-07-22 Continental Automotive Gmbh Signal processing arrangement and signal processing method
US9230557B2 (en) 2009-01-30 2016-01-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus, method and computer program for manipulating an audio signal comprising a transient event
US10848360B1 (en) * 2019-07-11 2020-11-24 Wisig Networks Private Limited Receiver for receiving discrete fourier transform-spread-OFDM with frequency domain precoding
US11245562B2 (en) 2016-09-30 2022-02-08 Huawei Technologies Co., Ltd. Data processing method, apparatus, and system

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2236013T3 (en) * 2000-03-23 2005-07-16 Interdigital Technology Corporation EFFICIENT SPREADER FOR SPLIT SPECTRUM COMMUNICATIONS SYSTEM.
US7035201B2 (en) * 2001-04-20 2006-04-25 Mediatek Inc. Programmable transceiver structure of multi-rate OFDM-CDMA for wireless multimedia communications
AU2002368040A1 (en) * 2002-06-21 2004-01-06 Telefonaktiebolaget Lm Ericsson (Publ) Generation of orthogonal codes
US7302023B2 (en) * 2002-07-25 2007-11-27 Yang George L Application of multipath combiner and equalizer in a multi-channel direct sequence spread spectrum communication system
WO2006017730A2 (en) * 2004-08-06 2006-02-16 Nextel Communications, Inc. System and method for dividing subchannels in a ofdma network
US7711028B2 (en) * 2005-08-02 2010-05-04 The Mitre Corporation Spectrum shaping using code-hopping CDMA
CN1921362B (en) * 2005-08-23 2011-09-21 中兴通讯股份有限公司 Orthogonal variable spread-spectrum code distribution method in code division multiple access communication system
US8139660B2 (en) * 2006-04-14 2012-03-20 Qualcomm Incorporated Methods and apparatus related to using a wireless terminal scrambling identifier
US8825099B2 (en) 2007-01-09 2014-09-02 Qualcomm Incorporated CQI reporting for MIMO transmission in a wireless communication system
US8837337B2 (en) 2007-01-12 2014-09-16 Qualcomm Incorporated Signaling of power information for MIMO transmission in a wireless communication system
US8054919B2 (en) 2007-03-22 2011-11-08 Samsung Electronics Co., Ltd Method and apparatus for generating training sequence codes in a communication system
DE102008015702B4 (en) * 2008-01-31 2010-03-11 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for bandwidth expansion of an audio signal
JP4935701B2 (en) * 2008-02-04 2012-05-23 Kddi株式会社 Orthogonal frequency division multiplex communication apparatus and method
US8638834B2 (en) * 2009-07-15 2014-01-28 Cisco Technology, Inc. Signal sequence detection techniques for OFDM/OFDMA systems
CN105591994B (en) * 2014-10-21 2019-08-02 中兴通讯股份有限公司 The multi-user communication method and device of CDMA access
CN110999237B (en) * 2017-08-11 2022-05-27 中兴通讯股份有限公司 Symbol block processing and transmission in wireless communications

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6031865A (en) * 1997-08-04 2000-02-29 Motorola, Inc. Rapidly decorrelating spreading sequences for DS-CDMA transceivers
US6097714A (en) * 1996-12-20 2000-08-01 Fujitsu Limited Code multiplexing transmitting apparatus
US6151328A (en) * 1998-12-31 2000-11-21 Lg Information & Communications Ltd. Apparatus and method for controlling power in code division multiple access system
US6493376B1 (en) * 1997-10-10 2002-12-10 Qualcomm, Inc. Multi-layered PN code spreading in a multi-user communications system
US6512737B1 (en) * 1997-02-24 2003-01-28 Beamreach Networks, Inc. Stacked carrier discrete multiple tone communication system
US6728286B2 (en) * 2002-08-07 2004-04-27 Honeywell International Inc. Method of joining mirrors to ring laser gyro block assemblies
US6963600B1 (en) * 1999-01-29 2005-11-08 Pingzhi Fan Adaptive interference-free spread-spectrum system employing binary code sequence sets with zero correlation zone properties

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2526510B2 (en) * 1993-10-22 1996-08-21 日本電気株式会社 Wireless data communication device
JP2734955B2 (en) * 1993-12-24 1998-04-02 日本電気株式会社 Wireless data communication device
GB2300545B (en) * 1995-05-03 1999-10-27 Motorola Ltd A method for processing signals
KR100311968B1 (en) * 1996-03-05 2001-12-28 다치카와 게이지 Signal transmission method in a mobile communication system, transmitter, receiver and spreading code synchronization method
JP3093679B2 (en) * 1997-06-03 2000-10-03 三菱電機株式会社 CDMA communication method and CDMA communication device
AU4220197A (en) * 1997-06-20 1999-01-04 Mitsubishi Denki Kabushiki Kaisha Method and device for variable-speed transmission
US6393047B1 (en) * 1998-06-16 2002-05-21 Telefonaktiebolaget Lm Ericsson (Publ) Quadriphase spreading codes in code division multiple access communications
DE19852571C1 (en) * 1998-11-13 2000-06-21 Siemens Ag Method for data transmission in a radio communication system with CDMA subscriber separation and variable spreading factors
ES2236013T3 (en) * 2000-03-23 2005-07-16 Interdigital Technology Corporation EFFICIENT SPREADER FOR SPLIT SPECTRUM COMMUNICATIONS SYSTEM.

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6097714A (en) * 1996-12-20 2000-08-01 Fujitsu Limited Code multiplexing transmitting apparatus
US6512737B1 (en) * 1997-02-24 2003-01-28 Beamreach Networks, Inc. Stacked carrier discrete multiple tone communication system
US6031865A (en) * 1997-08-04 2000-02-29 Motorola, Inc. Rapidly decorrelating spreading sequences for DS-CDMA transceivers
US6493376B1 (en) * 1997-10-10 2002-12-10 Qualcomm, Inc. Multi-layered PN code spreading in a multi-user communications system
US6151328A (en) * 1998-12-31 2000-11-21 Lg Information & Communications Ltd. Apparatus and method for controlling power in code division multiple access system
US6963600B1 (en) * 1999-01-29 2005-11-08 Pingzhi Fan Adaptive interference-free spread-spectrum system employing binary code sequence sets with zero correlation zone properties
US6728286B2 (en) * 2002-08-07 2004-04-27 Honeywell International Inc. Method of joining mirrors to ring laser gyro block assemblies

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8787425B2 (en) 2009-01-19 2014-07-22 Continental Automotive Gmbh Signal processing arrangement and signal processing method
US9230557B2 (en) 2009-01-30 2016-01-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus, method and computer program for manipulating an audio signal comprising a transient event
US11245562B2 (en) 2016-09-30 2022-02-08 Huawei Technologies Co., Ltd. Data processing method, apparatus, and system
US10848360B1 (en) * 2019-07-11 2020-11-24 Wisig Networks Private Limited Receiver for receiving discrete fourier transform-spread-OFDM with frequency domain precoding

Also Published As

Publication number Publication date
ATE355656T1 (en) 2006-03-15
ES2236013T3 (en) 2005-07-16
IL151895A0 (en) 2003-04-10
JP2003528532A (en) 2003-09-24
HK1058583A1 (en) 2004-05-21
TWI275256B (en) 2007-03-01
KR100528605B1 (en) 2005-11-15
KR100793675B1 (en) 2008-01-10
TW200746659A (en) 2007-12-16
TW200620854A (en) 2006-06-16
EP1269645A1 (en) 2003-01-02
CA2401896A1 (en) 2001-09-27
KR20050046022A (en) 2005-05-17
DE60033705T2 (en) 2007-10-31
CN1452814A (en) 2003-10-29
NO20024530D0 (en) 2002-09-20
NO20024530L (en) 2002-11-19
KR20060083235A (en) 2006-07-20
IL151895A (en) 2008-03-20
TWI239157B (en) 2005-09-01
KR100696232B1 (en) 2007-03-21
MXPA02009295A (en) 2004-08-12
CN1248421C (en) 2006-03-29
AU2098801A (en) 2001-10-03
EP1269645B1 (en) 2005-04-13
ATE293309T1 (en) 2005-04-15
US7103088B2 (en) 2006-09-05
DE60033705D1 (en) 2007-04-12
CN1812280A (en) 2006-08-02
US6885692B2 (en) 2005-04-26
US20050195885A1 (en) 2005-09-08
DE60019469T2 (en) 2006-01-26
US20020009127A1 (en) 2002-01-24
ES2280068T3 (en) 2007-09-01
DE60019469D1 (en) 2005-05-19
EP1269645B9 (en) 2006-03-08
AU2001220988B2 (en) 2004-04-29
WO2001071938A1 (en) 2001-09-27
KR20020080006A (en) 2002-10-21
TW200419954A (en) 2004-10-01

Similar Documents

Publication Publication Date Title
US7103088B2 (en) Efficient spreader for spread spectrum communication systems
AU2001220988A1 (en) Efficient spreader for spread spectrum communication systems
KR100340829B1 (en) Method and device for variable-speed transmission
US7443906B1 (en) Apparatus and method for modulating data message by employing orthogonal variable spreading factor (OVSF) codes in mobile communication system
CN100397809C (en) Pseudo-noise state generating device and method
US6826169B1 (en) Code multiplexing transmitting apparatus
US20070070968A1 (en) Frequency-division multiplexing transceive apparatus and method
KR960043571A (en) Communication System with Transmitter and Receiver for Orthogonal Frequency Division Multiple Signal
KR20050107442A (en) Application of spreading codes to signals
WO2005006623A1 (en) Spread code generation method, cdma transmission device, and cdma reception device
EP2141820B1 (en) Method for generating complex quasi-orthogonal code and apparatus and method for spreading channel data using the quasi-orthogonal code in CDMA communication system
JPH07183829A (en) Radio data communication equipment
EP1564904B1 (en) Efficient spreader for spread spectrum communication systems
AU2004203483A1 (en) Efficient Spreader for Spread Spectrum Communication Systems
KR100321998B1 (en) Method for generating complex quasi-orthogonal code and apparatus and method for spreading channel data using the quasi-orthogonal code in cdma communication system
JPH10294715A (en) Spread spectrum radio communication system
US8315291B2 (en) Method and apparatus for generating scrambling codes

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION