METHOD AND APPARATUS FOR REDUCING SPREAD SPECTRUM NOISE

Information

  • Patent Application
  • 20020094020
  • Publication Number
    20020094020
  • Date Filed
    November 19, 1999
    25 years ago
  • Date Published
    July 18, 2002
    22 years ago
Abstract
Apparatus and a method for receiving spread-spectrum signals is provided. The method includes the steps of detecting a noisy user signal from a spread-spectrum signal including at least a first user signal (including data therein) and at least one pilot signal, and removing an interference effect of the pilot signal on the first user signal from the noisy user signal thereby to create a noise reduced user signal.
Description


FIELD OF THE INVENTION

[0002] The present invention relates to spread spectrum communication systems generally and to noise reducing units in mobile handsets of such communication systems in particular.



BACKGROUND OF THE INVENTION

[0003] A conventional spread spectrum signal can be viewed as the result of mixing a narrowband information-bearing signal i[t] with an informationless wideband “spreading” signal p[t]. If Bi and Bp denote the bandwidths of i[t] and p[t], respectively, then the “processing gain” available to the receiver is G=BpBi. The receiver synchronizes the incoming signal to a locally generated version p0[t] of p[t] and mixes the received signal with p0[t], thereby removing p[t] from the signal and “collapsing” the signal to the “information bandwidth” Bi.


[0004] The spreading signal p[t] is typically a coding sequence of some kind, such as a pseudo-random code. The United States space program initially utilized a Type 1 Reed-Muller code for deep-space communications. In many code division multiple access (CDMA) systems, the code is an M-sequence which has good “noise like” properties yet is very simple to construct.


[0005] For example, in the IS-95 standard for cellular communication, the forward channel (base to mobile units) employs, as a spreading code, the product of a 64 chip Walsh code (aimed at separating up to 64 different users per base) and a periodic PN sequence (aimed at separating the different bases). Thus, the spreading signal p[t] for each user is its Walsh code combined with the current 64 chips of the PN sequence of its base station.


[0006] In order to synchronize the local version p0[t] of the spreading signal with the original version p[t], the base station additionally transmits the current PN sequence via a pilot signal z[t] (the pilot signal z[t] is simply the current PN sequence multiplied by the all 1 Walsh code). The mobile unit then synchronizes its local code generator to the pilot signal after which the mobile unit can despread the received information bearing signals using its Walsh code and the current PN sequence.


[0007] The Walsh codes Wi, I=1, . . . 64 are perfectly orthogonal to each other such that, in a non-dispersive transmission channel, there will be complete separation among the users even despite being transmitted at the same time and on the same transmission frequencies.


[0008] Practical channels, however, are time dispersive, resulting in multipath effects where the receiver picks up many echoes of the transmitted signal each having different and randomly varying delays and amplitudes. In such a scenario, the code's orthogonality is destroyed and the users are no longer separated. Consequently, a mobile unit, when attempting to detect only a single user, regards all other channel users (including signals from other base stations) as creators of interference. This contributes to a decrease in signal-to-noise ratio (SNR) and thus, reduces the reception quality of the mobile unit.


[0009] In the presence of multipath channels, the mobile units additionally process the informationless pilot signal to identify and track the multipath parameters of the channel. For this purpose, the mobile units include a channel estimator which detects and tracks the attenuation, denoted by channel “tap” ĥi, and the relative delay, denoted by {circumflex over (τ)}i, for each of the main paths. The mobile units then utilize the channel information in their detection operations.


[0010] One exemplary multipath detector is a rake receiver which optimally combines the different paths into a single replica of the transmitted signal. Rake receivers are described in detail e.g. in the book Digital Communications by J. G. Proakis, McGraw-Hill, Third Edition, 1995. The book is incorporated herein by reference.


[0011] A multiple-user detection scheme, such as is often used in base stations, can be viewed as interpreting the cross-talk between the signals of the users as merely a part of the multiple-input, multiple-output channel distortion. The base station accounts for this distortion during the detection process and, in general, the distortion does not translate into an SNR reduction. Therefore, it is not surprising that, with practical multipath channels, multi-user detection schemes are far superior to single-user ones.


[0012] Unfortunately, multi-user detection schemes are also significantly more complex than single-user ones. Not only does multi-user detection require (either explicitly or implicitly) processing the received signal with a bank of PN code generators (with each generator being matched to a distinct user), the outputs of this generator bank must further be processed according to some a priori criterion, such as maximum likelihood criterion, whose complexity is exponential in the number of users, or the decorrelation/minimum mean squared error (MMSE) criterion, whose complexity is quadratic in the number of users.


[0013] The article “Minimum Probability of Error for Asynchronous Gaussian Multiple-Access Channels” by S. Verdu, IEEE Transactions on Information Theory, January 1986, pp. 85-96, incorporated herein by reference, describes a multi-user detection scheme using the maximum likelihood criterion. The following articles, also incorporated herein by reference, describe multi-user schemes using the decorrelation/MMSE criterion:


[0014] L. Rusch and Poor, “MultiUser Detection Techniques for Narrowband Interference Suppression”, IEEE Transactions on Communications, Vol. 43, Nos. 2-3-4, pp. 1725-1737, February-March-April 1995;


[0015] R. Lupas and S. Verdu, “Linear Multiuser Detectors for Synchronous Code-Division Multiple-Access Channels”, IEEE Transactions on Information Theory, Vol. 35, No. 1, January 1989, pp. 123-136;


[0016] Z. Xie, R. Short and C. Rushforth, “A Family of Suboptimum Detectors for Coherent Multiuser Communications, IEEE Journal on Selected Areas In Communications, Vol. 8, No. 4, May 1990, 683-690;


[0017] Since the number of simultaneous channel users may be quite large, the computational burden associated with multi-user schemes prohibits their implementation in some applications, such as in mobile CDMA receivers.


[0018] U.S. Pat. No. 5,506,861 to Bottomley describes a plurality of methods for demodulating multiple CDMA signals which are similar to those presented in the book Digital Communications by J. G. Proakis, Chapter 15, section 15.3, but extended to the multi-path channel case. A common feature of these approaches is that they require a bank of despreaders each of which corresponds to the spreading code of a different channel user. The outputs of this bank of despreaders are then processed according to the MLSE criterion via the Viterbi algorithm or according to the decorrelation/MMSE criterion. However, a bank of despreaders is expensive in terms of complexity and power consumption. Thus, it cannot be implemented in a mobile handset. Furthermore, the Viterbi algorithm and the decorrelation/MMSE detectors are also quite complicated.


[0019] U.S. Pat. No. 5,323,418 to Ayerst describes a base station which includes an interference cancellation operation. The cancellation involves sequentially subtracting the interfering signals from the received signal in accordance with their relative power. In this manner, the effects of each user are separately removed, leaving the signal of the desired user for decoding.


[0020] U.S. Pat. No. 5,105,435 to Stilwell describes a method and apparatus for canceling user-code noise in spread-spectrum systems. Like most multi-user detection schemes, the system substantially removes the signals of the other users from the received signal, thereby producing the user signal of interest. Stilwell also indicates that, for the mobile receiver, it is enough to remove just the pilot signal out of the received signal, especially considering that the pilot signal is typically a very strong signal, significantly stronger than the user signals.


[0021] The article “Spread Spectrum Multiple Access System with Intrasystem Interference Cancellation” by Tatsuro Masamura, The Transactions of the IEICE, Vol. E71, No. 3, March 1988, pp. 224-231 describes an interference recovery circuit which includes a bank of units. Each unit contains a conventional despreader followed by a band pass filter and a respreader. The circuit filters out the interfering signal components from the desired signal and thus, attempts to reduce the overall distortion of the desired signal.


[0022] However, Stilwell, Ayerst and Masamura suggest canceling the user-code noise by despreading and respreading the received signal several times. These operations are computationally expensive and, therefore, the methods cannot be utilized in mobile units.



SUMMARY OF THE PRESENT INVENTION

[0023] It is an object of the present invention to provide a detection method and apparatus which is particularly useful for the mobile handset. Rather than detecting and removing one or more user/pilot signals from the received signal before detecting the desired user's signal, as per the prior art, the present invention detects the signal of the desired user and then corrects the resultant signal by removing from it the interference effect of the pilot signal. It is noted that the present invention does not respread the received signal after the correction operation nor does the present invention require the despreading of the pilot signal, both operations which occur in the prior art.


[0024] In an alternative embodiment, the present invention additionally removes the interference effects of the pilot signals of neighboring base stations.


[0025] Furthermore, in accordance with a preferred embodiment of the present invention, the interference effect is generated from a priori existing channel and pilot information.


[0026] There is therefore provided, in accordance with a preferred embodiment of the present invention, a method for receiving spread-spectrum signals including the steps of a) detecting a noisy user signal from a spread-spectrum signal including at least a first user signal and at least one pilot signal, the first user signal including data therein and b) removing an interference effect of the pilot signal on the first user signal from the noisy user signal thereby to create a noise reduced user signal.


[0027] Alternatively, in accordance with an alternative embodiment of the present invention, the step of detecting can detect multiple user signals from the received spread-spectrum signal. The method removes the interference effect of the pilot signal on at least one of the user signals from the corresponding one of the noisy user signals thereby to create noise reduced user signals.


[0028] Additionally, in accordance with a preferred embodiment of the present invention, the method also includes the step of decoding the data in the noise reduced user signal.


[0029] Moreover, in accordance with a preferred embodiment of the present invention, the step of removing interference includes the steps of determining the interference effect per pilot signal and subtracting the interference effect from the noisy user signal.


[0030] Further, in accordance with a preferred embodiment of the present invention, the spread spectrum signal has been transmitted along a multipath channel and the step of determining includes, per selected pilot signal, the steps of a) generating the cross-talk effect of the selected pilot signal on the user signal between different paths of the multipath channel and b) generating the interference effect of the selected pilot signal on the user signal.


[0031] Finally, in accordance with a preferred embodiment of the present invention, the first step of generating includes the steps of a) determining a transmission effect of transmitter and receiver shaping filters on a transmitted signal per variable amount of delay, b) generating cross-correlations, for variable amounts of delay, between the spreading code of the selected pilot signal and the spreading code of the user signal and c) determining the cross-talk effect between two channel paths i and j from channel tap estimates defining the gain and relative delay of the ith and jth paths, from a selected portion of the cross-correlations in the vicinity of a difference delay defined by the difference of channel delays associated with these channel paths from a selected portion of the transmission effect in the vicinity of the difference delay.


[0032] The present invention incorporates the methods described and claimed herein and various receivers and processors which implement the method.







BRIEF DESCRIPTION OF THE DRAWINGS

[0033] The present invention will be understood and appreciated more fully from the following detailed description taken in conjunction with the drawings in which:


[0034]
FIG. 1 is a block diagram illustration of a data detector for a mobile unit, constructed and operative in accordance with a preferred embodiment of the present invention;


[0035]
FIG. 2 is a block diagram illustration of an interference processor useful in the detector of FIG. 1.;


[0036]
FIG. 3A is a block diagram of a standard prior art rake receiver useful in the data decoder of FIG. 1;


[0037]
FIG. 3B is a block diagram of a pilot interference removing rake receiver, constructed and operative in accordance with an alternative preferred embodiment of the present invention;


[0038]
FIG. 4 is a block diagram illustration of an alternative data detector for a mobile unit which removes the interference effect of multiple pilot signals, constructed and operative in accordance with a preferred embodiment of the present invention; and


[0039]
FIG. 5 is a block diagram illustration of a base station multi-user data detector constructed and operative in accordance with a preferred embodiment of the present invention.







DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0040] Reference is now made to FIGS. 1 and 2 which illustrate a first embodiment of the mobile unit data detector of the present invention. FIG. 1 illustrates the detector in general and FIG. 2 illustrates the elements of an interference processor forming part of the detector of FIG. 1.


[0041] Detector 10 forms part of a mobile communication unit which, like prior art detectors, receives a signal r(n) and comprises a rake receiver 12, a pilot processor 11 and an optional decoder 18. As in the prior art, the pilot processor 11 includes a synchronizer 13 and a channel estimator 14. However, in accordance with a preferred embodiment of the present invention, detector 10 also comprises an interference processor 20 which utilizes the output of the existing channel estimator 14 and synchronizer 13.


[0042] The signal r(n) is the version of the received signal after the latter has been filtered and down converted to a baseband signal and has been sampled at rate of M samples per chip and N chips per symbol where M and N are typically integers. In the IS-95 CDMA standard, there are 64 chips per symbol n and the chip rate is 1.2288×106 chips per second, i.e. Tchip is about 0.8 μsec. For simplicity, M is set to 1, i.e. upon receipt, the signal r(n) is sampled once per chip.


[0043] Synchronizer 13 synchronizes the detector to the PN sequence of the base station and provides the current PN sequence to the rake receiver 12 and the interference processor 20. Channel estimator 14 estimates the channel tap ĥi and the delay {circumflex over (τ)}i associated with each finger. Rake receiver 12 despreads the user data signal of the current user using the user's Walsh code (which is known a priori), the current PN sequence, the estimated channel taps ĥi and the estimated finger delays {circumflex over (τ)}i. Rake receiver 12, shown in detail in FIG. 3A, produces the estimated user data signal x(n), sampled once per symbol.


[0044] It is noted that the received signal r(n) consists of the data signals of all of the active users (of the current base station and possibly of other, neighboring base stations) the pilot signals of at least the current base station and other interference terms caused by different noise sources in transmission, reception, etc. For the present discussion, the “pilot signal” will refer to the pilot signal of the current base station which is, by far, the strongest pilot signal received by the mobile unit.


[0045] In accordance with a preferred embodiment of the present invention, interference processor 20 determines the cross-talk interference effect c(n) of the pilot signal on the user data signal x(n). Since the power of the pilot signal is typically significantly larger than that of any other channel user (to ensure that every synchronizer 13 can synchronize to it), removing the interference effect c(n) of the pilot signal (via a subtractor 22) should considerably improve the estimated user data signal x(n). Furthermore, as described hereinbelow, the interference effect is relatively simple to calculate and thus, interference processor 20 can generally easily be implemented in a mobile handset where the computational burden must be minimized.


[0046] Subtractor 22 removes the interference effect c(n) from the rake receiver output x(n) thereby producing a new version x′(n) of the data signal. The new version x′(n) is decoded, via known methods, by optional decoder 18.


[0047] Interference processor 20 determines the cross-talk through the rake receiver 12 due to the pilot signal and from this, generates the interference effect caused by the pilot signal. The cross-talk is of the form Re{ĥiĥjα(k,n)ρp(k′)}, i≠j, where * indicates the complex conjugate, the function Re{} indicates the real portion of a complex number, ρα(k,n) is the cross-correlation of the user and pilot spreading codes for the nth transmitted symbol, ρp(k′) depends on the baseband filter taps and defines the effect of transmit and receive shaping filters on a transmitted signal, k is a delay defined in integral chips (i.e. k is an integer number) and k′ is a delay defined in fractional chips (i.e. k′ is a real number). Typically, k′ is measured in units of Tchip/M.


[0048] Since the baseband filter taps are known a priori and do not change over time, ρp(k′) can be determined a priori for all possible values of k′ and stored in a lookup table 30. A priori transmitter-receiver shaping filter effect generator 32 determines ρp(k′) as follows:
1ρp(k)=-α(t-k)β(-t)tEquation  1


[0049] where k′ typically varies from −LTchip/M<k′<+LTchip/M in steps of Tchip/M, α(t) is the impulse response of the overall transmit shaping filter and β(t) is the impulse response of the overall receive shaping filter. Since ρp(k′) decays as k′ increases, L is chosen to indicate that point where ρp(k′) is very small. In other words, L is chosen such that ρp(LTchip/M)<<ρp(0). The transmit filter impulse response α(t) is defined in the IS-95 and IS-98 CDMA standards. For IS-95 it is found in section 6.1.3.1.10 “Baseband Filtering” (pages 6-31-6-33 of IS-95-A+TSB74). The receive filter impulse response β(t) is a design option and is typically chosen to be equal to α(t) in order to maximize the expected signal to noise ratio. The impulse responses α(t) and β(t) are thus known a priori. The output of generator 32 is stored in lookup table 30, per value of k′.


[0050] Since all Walsh codes and the entire PN sequence are known a priori (recall that the PN sequence is finite and periodic), and since each symbol is transmitted with N values of the PN sequence, ρα(k,n) can also be generated a priori, for all possible values of k and n and stored in a lookup table 34. A priori spreading code cross-correlator 36 determines ρα(k,n) as follows.
2ρa(k,n)=12Nm=0N-1qpilot(m+k,s)quser(m,n)*qx(m,n)=x_Walsh(m)*PN(m+nN)x=pilotoruser0mL-1persymboln-nPN(m+nN+kQ)=PN(m+nN)m,n,kEquation  2


[0051] where, as defined in the above equation, the pilot and user Walsh codes q(m,n) are sequences of N chips and PN(n) is a periodic extension of a pseudo-random number sequence of length Q where, for the IS-95 standard, Q is 215.


[0052] Interference processor 20 additionally comprises a finger cross-talk determiner 38 which receives the estimated channel taps ĥi and the estimated finger delays {circumflex over (τ)}i from the channel estimator 14 and utilizes them and the information stored in the two lookup tables 30 and 34 to determine the cross-talk effect of two fingers i,j for the given channel, channel delays and pilot signal.


[0053] Specifically, interference processor 20 begins by determining the value of k0′, where k0′={circumflex over (τ)}i−{circumflex over (τ)}j, after which interference processor 20 activates cross-talk effect determiner 38 to determine the cross-talk effect ai,j(n) as follows:
3ai,j(n)=k,kRe{h^ih^j*ρa(k,n)ρp(k)}Equation  3


[0054] where the sum is performed for all k and k′ within the ranges around k0′ defined by |k−int(k0′)|<J and |k′−k0′|<J, respectively. J is a design parameter and is typically in the range of 1 to 10. It is noted that the delay differences k′ and k are stepped by steps of one chip, where all delay difference k′ includes the fractional portion of k0′. Thus, if k0′ is, for example, 7.25 chips, then k′ might have values of 5.25, 6.25, 7.25, 8.25 and 9.25 and k might have values 5, 6, 7, 8 and 9.


[0055] The quantity ai,j(n) can be shown to be an estimate of the interference of the pilot signal along finger i to the user signal at finger j. Any number of fingers can be assumed though three is common. For three fingers, i and j vary from 0 to 2. In the IS-95 standard the Walsh codes are perfectly orthogonal, the term ai,j(n) is identically zero. However, with non-orthogonal codes, this term is generally non-zero.


[0056] To calculate ai,j(n), interference processor 20 retrieves the value of ρα(k,n) for each value of k and for the nth symbol from lookup table 34 and the value of ρp(k′) for each value of k′ from lookup table 30. Interference processor 20 activates the cross-talk effect determiner 38 for each set (i,j) of fingers where, for each set, the value of k0′ is first determined as are the ranges of k and k′.


[0057] Interference processor 20 additionally comprises a finger interference effect determiner 40 and a total interference effect determiner 42. Finger interference effect determiner 40 determines the interference effect Bj(n) per finger as:
4Bj(n)=iai,j(n)Equation  4


[0058] where the sum is performed over the number of fingers in the channel.


[0059] Total interference effect determiner 42 determines the total interference effect C(n) as the sum of the Bj(n). The total interference effect C(n) is the output of interference processor 20. As shown in FIG. 3B described in detail hereinbelow, the rake receiver 12 can subtract the individual finger interferences Bj(n) from the individual finger contribution, thereby directly producing the corrected, estimated user data signal x′(n).


[0060] It will be appreciated that, by removing the interference effect of the pilot signal, a significant portion, though not all, of the noise which affects the user signal x(n) has been removed, thus increasing the performance quality of optional decoder 18. Furthermore, as can be seen from the discussion hereinabove, the computational burden of interference processor 20 is relatively small, in particular since the two cross-correlations ρα(k,n) and ρp(k′) can be determined a priori and stored in the lookup tables 30 and 34. Alternatively, ρα(k,n) can be determined “on-the-fly”, from equation 2, since its computation only involves summation on PN “chips” which, in the IS-95 standard, accept only the values of ±1.


[0061] Reference is now briefly made to FIG. 3A which illustrates the elements of rake receiver 12 for a three finger channel and to FIG. 3B which illustrates an alternative version 12′ of rake receiver 12 which performs the interference correction therewithin.


[0062] Rake receiver 12 has three fingers, each performing approximately the same operation on its associated finger. Each finger includes a despreader 50, a windowing summer 52, a sampler 54, a finger gain multiplier 56 and a complex-to-real converter 58. In addition, the second and third fingers include delays 60.


[0063] The first finger, known as the 0th finger, serves as the reference finger. The second and third fingers (referred to as the 1st and 2nd fingers), respectively, have delays defined by {circumflex over (τ)}1 and {circumflex over (τ)}2, respectively, relative to the 0th finger. Delays 60 delay the received signal r(n) by their delay relative to the 0th finger. For completion, we set {circumflex over (τ)}0=0.


[0064] Despreaders 50 despread the received signal r(n) (the 0th finger) or the delayed signal (the 1st and 2nd fingers) via the spreading signal quser, defined hereinabove. Windowing summer 52 sums the output of despreaders 50 over a window of N samples and divides the result by N, as indicated. Samplers 54 sample every Nth datapoint. Finger gain multipliers 56 multiply the sampled signal by the complex conjugate of the associated channel tap ĥi. Converters 58 take the real portion of the resultant signal. A summer 62 sums the output of each finger and produces therefrom the data signal x(n).


[0065] The rake receiver 12′ of FIG. 3B is similar to that of FIG. 3A (and therefore, similar elements carry similar reference numerals) with the addition of three subtractors 64 between their respective multiplier 56 and converter 58. Subtractors 64 subtract the finger interference effect Bi(n) of the relevant finger from the output of the relevant multiplier 56.


[0066] It will be appreciated that, in this embodiment, the output of rake receiver 12′ is the corrected data signal x′(n).


[0067] Reference is now briefly made to FIG. 4 which illustrates a data detector 10′ capable of reducing multi-pilot interference. The detector of FIG. 4 is particularly useful for mobile units when they are approximately equidistant between two or more base stations. At this position, the mobile units receive the pilot signals of the multiple base stations with approximately equal strength. Both pilot signals interfere with the transmitted data signal.


[0068] The data detector 10′ is similar to data detector 10 of FIG. 1 in that it includes rake receiver 12, subtractor 22 and optional decoder 18. Data detector 10′ also includes a plurality NB of interference processors 20, one per base station that is interfering, and associated pilot processors 11. As described hereinabove, each pilot processor 11 includes a synchronizer, a channel estimator and a delay estimator. However, in data detector 10′, each pilot processor 11 synchronizes to the pilot of a different base station and, accordingly, each interference processor 20 generates the interference effect of the pilots of the different base stations. Subtractor 22 removes the multiple interference effect outputs of processors 20 from the data signal x(n) in order to produce the corrected signal x′(n) which optional decoder 18 then decodes.


[0069] It will be appreciated that the pilot and interference processors 11 and 20, respectively can also be incorporated in a base station, for synchronizing to the pilot signal of a neighboring base station and for determining the interference effect of the neighboring pilot signal on each of the plurality NU of user signals which the base station receives. Thus, as shown in FIG. 5, the base station includes a detector 80 which produces NU data signals xi(n). In accordance with a preferred embodiment of the present invention, the base station includes at least one pilot processor 11 for the neighboring base station's pilot signal and NU interference processors 20, one per user, for determining the interference effect of the neighboring pilot signal on the data signal of each user. The base station also includes NU subtractors 22, one per user, for removing the interference effect Ci(n) of the relevant interference processor 20 from the corresponding data signal xi(n).


[0070] It will be appreciated by persons skilled in the art that the present invention is not limited to what has been particularly shown and described hereinabove. Rather the scope of the present invention is defined only by the claims which follow.


Claims
  • 1. A spread-spectrum receiver comprising: a) a decoder for detecting a noisy user signal from a spread-spectrum signal including at least a first user signal and at least one pilot signal, said at least first user signal including data therein; and b) an interference reducer operatively coupled to said decoder for removing an interference effect of said at least one pilot signal on said first user signal from said noisy user signal thereby to create a noise reduced user signal.
CROSS-REFERENCE TO PREVIOUS APPLICATIONS

[0001] This application is a continuation of U.S. patent application Ser. No. 08/873,880 filed Jun. 11, 1997, which is incorporated by reference herein.

Continuations (1)
Number Date Country
Parent 08873880 Jun 1997 US
Child 09443864 Nov 1999 US