Abstract:
Interference is cancelled from a baseband signal by synthesizing interference from estimated symbols in interfering subchannels. The estimated symbols are hard-coded, soft weighted, or zeroed, depending on the value of an estimated pre-processed signal-to-interference-and-noise ratio (SINR) in each subchannel in order to maximize a post-processed SINR. The estimated pre-processed SINR is obtained from averages of estimated symbol energies and estimated noise variances, or from related statistical procedures.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation-in-part of commonly owned and U.S. patent applications Ser. No. 11/100,935, filed Apr. 7, 2005 now abandoned, entitled “Construction Of Projection Operators for Interference Cancellation”, and Ser. No. 11/233,636, filed Sep. 23, 2005, entitled “Optimal Soft Weighted Subtractive Cancellation for CDMA Systems”. 
    
    
     BACKGROUND 
     1. Field of the Invention 
     The present invention relates generally to interference cancellation in received wireless communication signals and, more particularly, to forming a composite interference signal for interference cancellation. 
     2. Discussion of the Related Art 
     In an exemplary wireless multiple-access system, a communication resource is divided into subchannels and allocated to different users. For example, subchannels may include time slots, frequency slots, multiple-access codes, spatio-temporal subchannels, or any combination thereof. A plurality of subchannel signals received by a wireless terminal (e.g., a subscriber unit or a base station) may correspond to different users and/or different subchannels allocated to a particular user. In some systems, a plurality of subchannels may be allocated to at least one user such that the number of users is less than the number of subchannels. 
     If a single transmitter broadcasts different messages to different receivers, such as a base station in a wireless communication system broadcasting to a plurality of mobile terminals, the channel resource is subdivided in order to distinguish between messages intended for each mobile. Thus, each mobile terminal, by knowing its allocated subchannel(s), may decode messages intended for it from the superposition of received signals. Similarly, a base station typically separates signals it receives into PN-coded subchannels in order to differentiate between users. 
     In a multipath environment, received signals are superpositions of time delayed (and complex scaled) versions of the transmitted signals. Multipath can cause co-channel and cross-channel interference that correlates the allocated subchannels. For example, co-channel interference may occur when time-delayed reflections of transmitted signals interfere with a line-of-sight signal from the same source. Cross-channel interference occurs when signals in a subchannel leak into and, thus, impair acquisition and tracking of other subchannels. 
     Co-channel and cross-channel interference can degrade communications by causing a receiver to incorrectly decode received transmissions, thus increasing a receiver&#39;s error floor. Interference may also have other degrading effects on communications. For example, interference may diminish the capacity of a communication system, decrease the region of coverage, and/or decrease maximum data rates. For these reasons, a reduction in interference can improve reception of selected signals by addressing the aforementioned limitations due to interference. 
     SUMMARY OF THE INVENTION 
     In view of the foregoing background, embodiments of the present invention may provide for identifying interference components for the purpose of forming a composite interference signal for use in any subtractive or projective interference canceller. The identification of interference components and the cancellation of such components may be implemented using a parallel, serial, iterative, or one-shot mode of operation. 
     Embodiments of the invention may be employed in any receiver configured to support one or more CDMA standards, such as (1) the “TIA/EIA-95-B Mobile Station-Base Station Compatibility Standard for Dual-Mode Wideband Spread Spectrum Cellular System” (the IS-95 standard), (2) the “TIA/EIA-98-C Recommended Minimum Standard for Dual-Mode Wideband Spread Spectrum Cellular Mobile Station” (the IS-98 standard), (3) the standard offered by a consortium named “3rd Generation Partnership Project” (3GPP) and embodied in a set of documents including Document Nos. 3G TS 25.211, 3G TS 25.212, 3G TS 25.213, and 3G TS 25.214 (the WCDMA standard), (4) the standard offered by a consortium named “3rd Generation Partnership Project 2” (3GPP2) and embodied in a set of documents including “TR-45.5 Physical Layer Standard for cdma2000 Spread Spectrum Systems,” the “C.S0005-A Upper Layer (Layer 3) Signaling Standard for cdma2000 Spread Spectrum Systems,” and the “C.S0024 CDMA2000 High Rate Packet Data Air Interface Specification” (the CDMA2000 standard), and (5) other CDMA standards. 
     Embodiments of the invention may provide for analytically characterizing the received signal-to-interference-and-noise ratio (SINR), estimating it in a composite signal or in an interfering user subchannel, and choosing feedback terms (e.g., adaptive weights from a companding function) to construct an interference-cancelled signal that maximizes this quantity. In one embodiment of the invention, a means for determining an SINR estimate in each subchannel uses an estimated SINR for each estimated symbol. In this case, each estimated symbol may be generated by a means for producing symbol estimates from a received baseband signal. Alternatively, symbol estimates may include resolutions of the baseband signal into multiple antenna copies, multipath components, or the like. A means for determining whether to use weighted soft decisions or hard decisions for each subchannel compares each subchannel&#39;s SINR estimate to a predetermined threshold. A means for generating hard decisions and/or weighted soft decisions for each symbol estimate produces either a hard estimate or a weighted soft estimate for each symbol estimate based on how the corresponding SINR estimate compares to the threshold. A means for producing a synthesized interference signal may synthesize a composite interference vector from the hard or soft-weighted symbol estimates. A means for emulating channel distortions in the synthesized interference signal may simulate channel effects corresponding to paths other than a predetermined path of interest. A means for producing an interference-cancelled signal combines a received baseband signal with the synthesized interference signal in order to subtract or project out interference in the received baseband signal, or in one or more rake-resolved components of the baseband signal. 
     The means for producing symbol estimates corresponding to a received baseband signal may include, by way of example, a rake receiver, a plurality of rake receivers coupled to a rake combiner, an equalizer, and/or any CDMA receiver employing antenna diversity, equalizers, and/or other elements of an advanced receiver. 
     The means for determining an SINR estimate in each subchannel may include, by way of example, an apparatus or method configured for filtering complex amplitudes and estimated variances of the complex amplitudes for each subchannel. The means for determining an SINR estimate may include an apparatus or process configured for calculating a mean-squared error due to noise plus interference or a component or method for computing a broadband noise plus interference floor. 
     The means for determining whether to use weighted soft decisions or hard decisions for each subchannel may include, by way of example, any apparatus or method configured for comparing estimated SINRs to at least one predetermined threshold. 
     The means for generating hard decisions and/or weighted soft decisions for each pre-processed symbol estimate may include, by way of example, an apparatus or method for generating hard decisions, an apparatus or method for generating weights on soft estimates, and/or an apparatus or method for discarding soft estimates with a low estimated SINR. 
     The means for producing a synthesized interference signal may include, by way of example, a CDMA signal generator configured for performing an inverse fast Walsh transform (IFWT), PN covering, pulse shaping, and channel emulation. 
     The means for emulating channel distortions may include, by way of example, an apparatus or method configured for convolving the synthesized interference signal with a channel profile, which in some cases, excludes channel effects corresponding to one or more predetermined paths or rake fingers of interest. 
     The means for producing an interference-cancelled signal may include, by way of example, a subtractive canceller, a weighted subtractive canceller, a projective canceller, and/or a weighted projective canceller. 
     Receivers and cancellation systems described herein may be employed in subscriber-side devices (e.g., cellular handsets, wireless modems, and consumer premises equipment) and/or server-side devices (e.g., cellular base stations, wireless access points, wireless routers, wireless relays, and repeaters). Chipsets for subscriber-side and/or server-side devices may be configured to perform at least some of the receiver and/or cancellation functionality of the embodiments described herein. 
     Various functional elements, separately or in combination, depicted in the figures may take the form of a microprocessor, digital signal processor, application specific integrated circuit, field programmable gate array, or other logic circuitry programmed or otherwise configured to operate as described herein. Accordingly, embodiments may take the form of programmable features executed by a common processor or discrete hardware unit. 
     These and other embodiments of the invention are described with respect to the figures and the following description of the preferred embodiments. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       Embodiments according to the present invention are understood with reference to the schematic block diagrams of  FIGS. 1 ,  2 A, and  2 B, and the flow diagrams of  FIGS. 3 ,  4 A, and  4 B. Various functional units depicted in the figures may take the form of a microprocessor, digital signal processor, application specific integrated circuit, field programmable gate array, or other logic circuitry programmed or otherwise configured to operate as described herein. Accordingly, embodiments shown herein may take the form of programmable features executed by a common processor or a discrete hardware unit. 
         FIG. 1  is a system diagram illustrating a communication system configuration in which embodiments of the present invention may be configured to operate. 
         FIG. 2A  is a block diagram of an interference-cancelling circuit, which may be configured for removing interference from a predetermined multipath component. 
         FIG. 2B  is a block diagram showing an embodiment of an interference-cancelling circuit configured to cancel interference in a receiver employing antenna diversity. 
         FIG. 3  is a flow chart that illustrates a cancellation method in accordance with an embodiment of the invention. 
         FIG. 4A  illustrates a method for estimating subchannel symbols as part of an interference-cancellation technique. 
         FIG. 4B  illustrates a method for estimating subchannel symbols for a system (e.g., an HSDPA system) that employs different signal constellations and spreading codes for different data rates. 
     
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which preferred embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. 
       FIG. 1  shows an exemplary CDMA system configuration for the purpose of illustrating embodiments of the invention configured to perform soft-weighted subtractive cancellation. In the present example, a k th  user terminal  100  receives communications from sources (e.g., base stations)  101  and  102  via signal paths  111  and  112 , respectively. In an alternative embodiment not shown, the sources  101  and  102  may correspond to two propagation paths from one base station. The sources  101  and  102  employ orthogonalizing (e.g., Walsh) codes W j  with PN/Scrambling code covers P j , where j=1 or 2. The orthogonalizing codes spread the symbol transmission by a factor of N. 
     A data symbol for a k th  user of a j th  base-station may be represented by a jk . A received signal r[n] at the k th  user terminal  100  for an n th  chip and a symbol duration that spans N chips is expressed by 
                 r   ⁡     [   n   ]       =         c   1     ⁢       P   1     ⁡     [   n   ]       ⁢       ∑     k   =   1       K   1       ⁢         W     1   ⁢   k       ⁡     [   n   ]       ⁢       a     1   ⁢   k       ⁡     [   l   ]             +       c   2     ⁢       P   2     ⁡     [   n   ]       ⁢       ∑     k   =   1       K   2       ⁢         W     2   ⁢   k       ⁡     [   n   ]       ⁢       a     2   ⁢   k       ⁡     [   l   ]             +     u   ⁡     [   n   ]           ,     
     ⁢     lN   ≤   n   ≤         (     l   +   1     )     ⁢   N     -   1             
where W jk [n] denotes the n th  chip of the k th  user from the j th  source, and u[n] is additive white Gaussian noise of variance σ u   2 . Although this exemplary embodiment excludes pulse-shape filtering effects, alternative embodiments that consider pulse shaping may be provided. The variables K 1  and K 2  denote the number of user channels multiplexed by the 1 st  and 2 nd  transmit sources, respectively. If both sources correspond to the same base station, then K 1 =K 2 . The values c j  are complex channel gains corresponding to the signal from the j th  base station to the receiver. Although a single path per base station is described, embodiments of the invention may be configured to account for multiple paths from each base station.
 
     If the first base station  101  transmits a signal of interest, then transmissions from the second base station  102  may comprise interference. Interference cancellation, such as subtractive and/or projective cancellation may be employed. According to one aspect of the present invention, a receiver may synthesize interference from a combination of soft-weighted and hard-coded pre-processed symbol estimates. A synthesized interference signal s 2 [n] corresponding to the second base station  102  may be expressed by 
                   s   2     ⁡     [   n   ]       =       c   2     ⁢       P   2     ⁡     [   n   ]       ⁢       ∑     k   =   1       K   2       ⁢         W     2   ⁢   k       ⁡     [   n   ]       ⁢       λ     2   ⁢   k       ⁡     (         a   ~       2   ⁢   k       ⁡     [   l   ]       )       ⁢           ⁢         a   ~       2   ⁢   k       ⁡     [   l   ]               ,     lN   ≤   n   ≤         (     l   +   1     )     ⁢   N     -   1             
where ã 2k [l] is a pre-processed soft estimate of a k th  user&#39;s symbol on symbol period l, and λ 2k (ã 2k [l]) is a companding function acting on the estimated symbol ã 2k [l]. Although the expression for the synthesized interference s 2 [n] may assume perfect channel estimates c 2 , uncertainty in the channel estimates may be factored into the functions λ 2k (ã 2k [l]). The receiver may subtract the synthesized interference s 2 [n] from the received signal r[n]. An interference-cancelled version of the first path  111 , {circumflex over (r)} 1 , is given by
 
                   r   ^     1     ⁡     [   n   ]       =         r   ⁡     [   n   ]       -       s   2     ⁡     [   n   ]         =         c   1     ⁢       P   1     ⁡     [   n   ]       ⁢       ∑     k   =   1       K   1       ⁢         W     1   ⁢   k       ⁡     [   n   ]       ⁢       a     1   ⁢   k       ⁡     [   l   ]             +       c   2     ⁢       P   2     ⁡     [   n   ]       ⁢       ∑     k   =   1       K   2       ⁢         W     2   ⁢   k       ⁡     [   n   ]       ⁢     (         a     2   ⁢   k       ⁡     [   l   ]       -         λ     2   ⁢   k       ⁡     (         a   ~       2   ⁢   k       ⁡     [   l   ]       )       ⁢         a   ~       2   ⁢   k       ⁡     [   l   ]           )           +     u   ⁡     [   n   ]                 
Each chip of a corresponding PN-stripped output x 1 [n] is given by
 
                 x   1     ⁡     [   n   ]       =           P   1   *     ⁡     [   n   ]       ⁢         r   ^     1     ⁡     [   n   ]         =         c   1     ⁢       ∑     k   =   1       K   1       ⁢         W     1   ⁢   k       ⁡     [   n   ]       ⁢       a     1   ⁢   k       ⁡     [   l   ]             +       c   2     ⁢       P   1   *     ⁡     [   n   ]       ⁢       P   2     ⁡     [   n   ]       ⁢       ∑     k   =   1       K   2       ⁢         W     2   ⁢   k       ⁡     [   n   ]       ⁢     (         a     2   ⁢   k       ⁡     [   l   ]       -         λ     2   ⁢   k       ⁡     (         a   ~       2   ⁢   k       ⁡     [   l   ]       )       ⁢         a   ~       2   ⁢   k       ⁡     [   l   ]           )           +         P   1   *     ⁡     [   n   ]       ⁢     u   ⁡     [   n   ]                   
where * denotes a complex conjugate and the identity P 1 *[n]P 1 [n]=1 is enforced. This step is followed by matching to an m th  code for a user of interest. The result of this operation, â 1m , is
 
                   a   ^       1   ⁢   m       ⁡     [   l   ]       =         ∑     n   =   1     N     ⁢         W     1   ⁢   m     *     ⁡     [   n   ]       ⁢       x   1     ⁡     [   n   ]           -       c   1     ⁢       a     1   ⁢   m       ⁡     [   l   ]         +       c   2     ⁢       ∑     k   =   1       K   2       ⁢       ρ   mk     ⁡     (         a     2   ⁢   k       ⁡     [   l   ]       -         λ     2   ⁢   k       ⁡     (         a   ~       2   ⁢   k       ⁡     [   l   ]       )       ⁢         a   ~       2   ⁢   k       ⁡     [   l   ]           )           +       ∑     n   =   1     N     ⁢         W     1   ⁢   m     *     ⁡     [   n   ]       ⁢       P   1   *     ⁡     [   n   ]       ⁢     u   ⁡     [   n   ]                   
where the orthogonality
 
                 ∑     n   =   1     N     ⁢         W     1   ⁢   m     *     ⁡     [   n   ]       ⁢       W     1   ⁢   k       ⁡     [   n   ]           =     δ   mk           
has been enforced, and ρ mk  is the correlation between the m th  code of the first base station  101  and the k th  code of the second base station  102  that includes the effects of the PN covers:
 
               ρ   mk     =       ∑     n   =   1     N     ⁢         W     1   ⁢   m     *     ⁡     [   n   ]       ⁢       P   1   *     ⁡     [   n   ]       ⁢       P   2     ⁡     [   n   ]       ⁢         W     2   ⁢   k       ⁡     [   n   ]       .               
Symbol estimates ã 1m [l] for the m th  user signal from the first base station  101  are
 
                   a   ~       1   ⁢   m       ⁡     [   l   ]       =         c   1   *     ⁢         a   ^       1   ⁢   m       ⁡     [   l   ]         =                c   1          2     ⁢       a     1   ⁢   m       ⁡     [   l   ]         +       c   1   *     ⁢     c   2     ⁢       ∑     k   =   1       K   2       ⁢       ρ   mk     ⁡     (         a     2   ⁢   k       ⁡     [   l   ]       -         λ     2   ⁢   k       ⁡     (         a   ~       2   ⁢   k       ⁡     [   l   ]       )       ⁢         a   ~       2   ⁢   k       ⁡     [   l   ]           )           +       c   1   *     ⁢       ∑     n   =   1     N     ⁢         W     1   ⁢   m     *     ⁡     [   n   ]       ⁢       P   1   *     ⁡     [   n   ]       ⁢     u   ⁡     [   n   ]                       
The post-processed SINR for user m is given by
 
               SINR   m     =         E     1   ⁢   m       ⁢            c   1          4                      c   1   *     ⁢     c   2            2     ⁢       ∑     k   =   1       K   2       ⁢     E   ⁢            ρ   mk          2     ⁢   E   ⁢              a     2   ⁢   k       -         λ     2   ⁢   k       ⁡     (       a   ∼       2   ⁢   k       )       ⁢       a   ∼       2   ⁢   k                2           +              c   1          2     ⁢     σ   w   2                 
where the noise
 
               w   ⁡     [   l   ]       =       ∑     n   =   1     N     ⁢         W     1   ⁢   m     *     ⁡     [   n   ]       ⁢       P   1   *     ⁡     [   n   ]       ⁢     u   ⁡     [   n   ]                 
is modeled as a complex random variable with zero mean and variance σ w   2 , and E 1m  is the expected value of |a 1m | 2 .
 
     The post-processed SINR is maximized by minimizing the expectation terms per subchannel (e.g. Walsh channel). This is accomplished by decomposing the function λ 2k (ã 2k ) into its real and imaginary components and differentiating with respect to each component. The minimizing function is the real scalar weighting λ 2k ã 2k . 
     The symbol estimates ã 2k  may be assumed to be uncorrelated symbol estimates, which have mean a 2k  and variance σ 2k   2 . The post-processed SINR m  for a particular subchannel m may be maximized by selecting weights for the other subchannels as 
                 λ     2   ⁢   k       =         E     2   ⁢   k           E     2   ⁢   k       +     σ     2   ⁢   k     2         =         E     2   ⁢   k         E   ⁢              a   ~       2   ⁢   k            2         =           E   ⁢              a   ~       2   ⁢   k            2       -     σ     2   ⁢   k     2         E   ⁢              a   ~       2   ⁢   k            2         =       SINR     2   ⁢   k       (   1   )           SINR     2   ⁢   k       (   1   )       +   1               ,         
where E 2k =E|a 2k | 2  is the average energy of subchannel k for source  2 , E|ã 2k | 2 =E 2k +σ 2k   2 , and
 
               SINR     2   ⁢   k       (   1   )       =       E     2   ⁢   k         σ     2   ⁢   k     2             
is the pre-processed SINR.
 
     If E 2k  is known, the soft weight λ 2k  may be estimated as 
                 λ     2   ⁢   k       =       E     2   ⁢   k         avg   ⁡     (              a   ~       2   ⁢   k            2     )           ,         
where avg(.) denotes an average of the variable (.) over a sequence of symbol transmissions. This average may be quite general, and it may be based on prior knowledge or probability models for E 2k  and/or σ 2k   2 .
 
     If E 2k  is unknown and σ 2k   2  is known, then λ 2k  may be estimated as 
     
       
         
           
             
               
                 λ 
                 ^ 
               
               
                 2 
                 ⁢ 
                 k 
               
             
             = 
             
               
                 max 
                 ⁡ 
                 
                   ( 
                   
                     0 
                     , 
                     
                       
                         
                           avg 
                           ⁡ 
                           
                             ( 
                             
                               
                                  
                                 
                                   
                                     a 
                                     ~ 
                                   
                                   
                                     2 
                                     ⁢ 
                                     k 
                                   
                                 
                                  
                               
                               2 
                             
                             ) 
                           
                         
                         - 
                         
                           σ 
                           
                             2 
                             ⁢ 
                             k 
                           
                           2 
                         
                       
                       
                         avg 
                         ⁡ 
                         
                           ( 
                           
                             
                                
                               
                                 
                                   a 
                                   ~ 
                                 
                                 
                                   2 
                                   ⁢ 
                                   k 
                                 
                               
                                
                             
                             2 
                           
                           ) 
                         
                       
                     
                   
                   ) 
                 
               
               . 
             
           
         
       
     
     If {circumflex over (λ)} 2k  is quantized to zero or one, such as for selecting active subchannels, then {circumflex over (λ)} 2k  is 
                 λ   ^       2   ⁢   k       =     {           1   ,               avg   ⁡     (              a   ~       2   ⁢   k            2     )       /     σ     2   ⁢   k     2       &gt;   z               0   ,         otherwise                 
where z is a predetermined threshold value. In one embodiment of the invention, the threshold value z=2 may be used.
 
     If neither E 2k  nor σ 2k   2  is known, then σ 2k   2  may be estimated from another subchannel having a common value σ 2m   2 m=σ 2k   2 , known E 2m , and known symbols. Then λ 2k  may be estimated as 
                 λ   ^       2   ⁢   k       =     max   ⁡     (     0   ,         avg   ⁡     (              a   ~       2   ⁢   k            2     )       -     avg   ⁡     (       σ   ~       2   ⁢   k     2     )           avg   ⁡     (              a   ~       2   ⁢   k            2     )           )             
or with a corresponding quantized version. In some cases, avg({tilde over (σ)} 2k   2 ) can be obtained from avg({tilde over (σ)} 2m   2 ) as an estimate of
 
                 σ     2   ⁢   m     2     =     E   ⁢                a   ∼       2   ⁢   m       -         E     2   ⁢   m         ⁢     a     2   ⁢   m                2         ,         
where a 2m  is a known symbol on a pilot channel. Similarly, other channels having known values of a 2m  and
 
               E     2   ⁢   m             
may be used.
 
     If there is prior information about the distribution of E 2k , then λ 2k  may be estimated as the posterior mean, given a sequence of symbol estimates {ã 2k [l], l=1,2, . . . , L}: 
                 λ   ^       2   ⁢   k       =     E   ⁡     [         λ     2   ⁢   k       ❘                a   ∼       2   ⁢   k            2     ⁡     [   l   ]         ,     l   =   1     ,   2   ,   …   ⁢           ,   L     ]             
The expectation is over the posterior distribution of E 2k , given the sequence
 
               {         a   ∼       2   ⁢   k     2     ⁡     [   l   ]       }     .         
When the posterior mean is intractable to compute, it may be numerically approximated to produce estimates of
 
               λ     2   ⁢   k       =     E   ⁢              a     2   ⁢   k            2     /     (       E   ⁢            a     2   ⁢   k            2       +     σ     2   ⁢   k     2       )               
that are companded versions of
 
                        a   ~       2   ⁢   k            2     /     (                a   ~       2   ⁢   k            2     +     σ     2   ⁢   k     2       )           
or companded versions of
 
     
       
         
           
             
               ( 
               
                 
                   
                      
                     
                       
                         a 
                         ~ 
                       
                       
                         2 
                         ⁢ 
                         k 
                       
                     
                      
                   
                   
                     2 
                     ⁢ 
                     
                         
                     
                   
                 
                 - 
                 
                   σ 
                   
                     2 
                     ⁢ 
                     k 
                   
                   2 
                 
               
               ) 
             
             / 
             
               
                 
                    
                   
                     
                       a 
                       ~ 
                     
                     
                       2 
                       ⁢ 
                       k 
                     
                   
                    
                 
                 2 
               
               . 
             
           
         
       
     
     In some embodiments, hard decisions may be made for the pre-processed symbol estimates when λ 2k  exceeds a predetermined threshold. The derivation for the SINR in such embodiments is described in the co-pending application, entitled “Soft-weighted subtractive interference cancellation systems,” which is hereby incorporated by reference. 
     Some embodiments may employ weighted soft decisions on some subchannels and hard decisions on others. In one such embodiment, all subchannels having a pre-processed SINR (1)  between two predetermined thresholds employ soft weighted (e.g., companded) estimates for interference synthesis. Subchannels having values of SINR (1)  below the lower threshold may be zeroed. Subchannels having values of SINR (1)  above the upper threshold may be hard-coded to a nearest constellation point (i.e., hard decisions are used). A CDMA2000 system in which symbols are drawn from a single QPSK constellation may use a combination of soft and hard decisions based on predetermined thresholds. However, in a system where W-CDMA and HSDPA coexist, constellations for various users may differ. Thus, the constellations of interfering users are typically unknown at the receiver, making hard decisions impractical, unless constellation classification is performed per user. However, the estimation of E 2k +σ 2k   2  remains unchanged. Other embodiments may quantize the weighting of soft estimates. 
       FIG. 2A  is a block diagram that shows a receiver embodiment of the invention that may be employed in a CDMA system. The receiver includes a baseband receiver  201  coupled to an SINR-estimation module  202  and a companding module  204 . A thresholding module  203  is coupled between the SINR-estimation module  202  and the companding module  204 . The companding module  204  is coupled to an interference synthesizer  205 , followed by a channel emulator  206 , and a canceller  207 . 
     The baseband receiver  201  provides pre-processed symbol estimates for subchannels of a received baseband signal. For example, a rake receiver may be employed for producing pre-processed estimates for all of the received CDMA subchannels. In another embodiment, symbol estimates may be chosen per rake finger. In some embodiments, the baseband receiver  201  may comprise an equalizer receiver. 
     The pre-processed estimates are coupled into the SINR-estimation module  202 , which estimates a pre-processed SINR (1)  for each subchannel. SINR estimates may be extracted from EVMs. Alternatively, the noise-plus-interference variance may be measured on a representative subchannel (e.g., a pilot channel) and used for all subchannels. The value avg 
             (              a   ~       2   ⁢   k            2     )         
may be used to estimate E 2k +σ 2k   2  directly without resolving onto a constellation.
 
     The thresholding module  203  compares estimated SINR to a predetermined threshold for determining whether soft or hard decisions are to be used for generating interference-symbol estimates for each subchannel. The companding module  204  generates the hard decisions and/or weighted soft decisions for each pre-processed symbol estimate. The companding module  204  may employ filtering for each subchannel to estimate user amplitudes, and amplitude scaling may be employed prior to hard decisions. The estimated SINR may be used to generate weights used to soft weight symbol estimates for each subchannel. 
     The interference synthesizer  205  performs source-specific operations on the symbol estimates (which may be soft and/or hard symbol estimates) to produce a synthesized interference signal. For example the interference synthesizer  205  may perform an Inverse Fast Walsh Transform (IFWT) to respread user symbol estimates, followed by a PN covering that provides for PN/Scrambling cover codes. A transmitter pulse-shaping filter may be used to shape the scrambled, code-multiplexed signal. 
     The channel emulator  206 , which may optionally be part of the interference synthesizer  205 , adds channel distortions to the synthesized interference signal. In one embodiment, a path of interest is selected from a multipath signal. For example, the first signal path  111  from base station  101  corresponding to a first finger of a rake receiver may be denoted as the path of interest. In this case, the channel emulator  206  may convolve the synthesized interference with a channel profile that excludes the channel effects corresponding to the first finger (i.e., the first signal path  111 ). This enables a canceller (e.g., canceller  207 ) to remove effects of other multipath components from the path of interest (i.e., signal path  111 ). Receiver embodiments of the invention may be configured to remove any number of multipath components from a path of interest. Furthermore, when multiple transmit sources are present, signals from sources other than the source corresponding to the path of interest may be removed. 
     The canceller  207  may include a subtractive canceller or a projective canceller configured to remove interference from the received baseband signal, which may be obtained from a receiver pulse-shaping filter (not shown). Thus, the interference synthesizer  205  or the channel emulator  206  may optionally emulate the effects of receiver pulse-shaping for the synthesized interference. 
     In some embodiments of the invention, the canceller  207  may provide for a scale factor α to adjust the amount of interference that is removed. In some cases, the received signal and the synthesized interference are not to scale. For example, Walsh Codes and PN codes typically are not normalized. Walsh stripping and Walsh insertion together introduce a scale equal to the code length N, and PN code stripping and insertion together introduce an additional factor of 2. Furthermore, MRC combining for M paths results in a scaling factor given by 
               η   =       ∑     i   =   1     M     ⁢            b   i          2         ,         
where b i  is a weighting factor employed for an i th  finger. For example,
 
                      b   i          2     =            c   i          2           
or
 
                      b   i          2     =              c   i          2     /       σ   2     .             
The normalizing factor in this case is
 
               α   =     1     2   ⁢   N   ⁢           ⁢   η         ,         
and the interference-cancelled signal is given by
 
 r   c   =r−αs.  
 
The term α may also represent a projective cancellation factor that accounts for path correlations. An example of α for such a case is given by
 
                 α   ⁢           ⁢   s     =       P   s     ⁢   r       ,     α   =         s   H     ⁢   r         s   H     ⁢   s         ,         
where P s  is a projection operator P s =ss H /s H s.
 
     Interference-cancelled signals output by the canceller  207  may be coupled to one or more rake fingers. In an exemplary rake receiver configured to process four multipath components, interference-cancelled signals in which the effects of a third and a fourth path are removed may be coupled to fingers configured for processing first and second multipath components. A comparator (not shown) may optionally be employed for selecting one of the interference-cancelled signal and the uncancelled signal for processing by a rake receiver. 
     Embodiments of the invention may be configured for receivers having more than one receive antenna. For example, in  FIG. 2B , each of a plurality N of rake receivers  201 . 1 - 201 .N corresponding to a different receive antenna (not shown) may include an interference canceller  207 . 1 - 207 .N, respectively. A generalized combiner may be used to combine paths that are common to two or more receive antennas. A combiner  211  may perform maximal ratio combining across the rake  201 . 1 - 201 .N fingers. Alternative types of combining may be performed. Pre-processed soft estimates are output by the combiner  211  and used to produce synthesized interference, such as described previously. The synthesized interference is coupled to a plurality of channel emulators  206 . 1 - 206 .N, wherein each channel emulator  206 . 1 - 206 .N has an associated rake receiver  201 . 1 - 201 .N. 
     In an exemplary two-antenna system configured for receiving two multipath components from a single transmit source, a first channel emulator produces two interference signals corresponding to the two paths received by the first antenna. Similarly, a second channel emulator produces two interference signals corresponding to the two paths received by the second antenna. In this case, the receiver may include four rake fingers, each matched to one of the four paths. The first finger may be assigned to the signal received by the first antenna, wherein interference due to the second path is removed via subtractive or projective cancellation. The second finger may be assigned to the signal received by the first antenna wherein the interference due to the first path is removed. Similarly, the third and fourth fingers may be matched to the multipath components received by the second receive antenna. 
     In “data optimized” CDMA, such as High-Speed Downlink Packet Access (HSDPA), multiple subchannels transmitting high data rates have the same frequency-selective fade and each of these coded subchannels has the same transmission amplitude. These subchannels coexist with voice channels, which have a lower data rate. Unlike the high-rate subchannels, these low-rate channels may have different amplitudes. In such systems, only one weight may be calculated for each of the K subchannels carrying high data rates. Signal amplitudes may be averaged over time and/or across subchannels, and the noise power may also be averaged over subchannels to obtain a single SINR estimate. In one embodiment of the invention, an SINR estimate may be compared to a predetermined threshold for determining whether to perform hard decisions, weighted soft decisions, or zeroing for all of the high data rate subchannels. 
       FIG. 3  is a flow chart that illustrates a cancellation method in accordance with an embodiment of the invention. Rake synthesis  301 . 1  processes a received baseband signal to produce soft symbol estimates for data symbols modulated on subchannels by a first source (e.g., a first base station). Similarly, rake synthesis  301 .N produces soft symbol estimates for data symbols modulated on subchannels by an N th  source. The rake synthesis steps  301 . 1 - 301 .N may optionally be cross-coupled if source diversity is present for at least some of the subchannels, such as may typically occur during a soft hand over. For each source, an SINR estimate or a vector magnitude is made from the soft symbol estimates  302 . 1 - 302 .N. These measurements are used to determine the reliability of the soft symbol estimates. Based on this reliability determination, either a hard decision or a weighted soft-decision is produced for each soft symbol estimate  303 . 1 - 303 .N. This companding process  303 . 1 - 303 .N may implement subchannel selection, such as by discarding subchannels that have a signal energy that falls below a predetermined threshold. Interference synthesis (such as providing for PN covering, Walsh covering, pulse shaping, and channel emulation)  304 . 1 - 304 .N is performed to synthesize interference received from each source (i.e., each base station and/or multipath). 
     Interference for a particular rake finger is synthesized  305  using synthesized multipath signals from each of the first source to the N th  source. Scaling  306  may optionally be used to scale interference received from the different sources. Some form of interference cancellation  307  (such as subtractive cancellation, weighted subtractive cancellation, projective cancellation, or weighted projective cancellation) is provided for cancelling interference from a predetermined path of interest. Rake finger input selection  308  is performed to select between an interference-cancelled signal and the original received baseband signal (depending on which signal has the highest value of estimated SINR or an alternative figure of merit) prior to coupling the resulting selected signal into a rake finger. Rake synthesis  309  produces soft estimates for each subchannel. Signal and noise powers are measured  310 , followed by another selection process  311  configured to select either soft estimates produced by some combination of rake synthesis  301 . 1  to  301 .N or soft estimates produced by rake synthesis  309 . The selected signals may be output for further processing. 
     Those skilled in the art should recognize that method and apparatus embodiments described herein may be implemented in a variety of ways, including implementations in hardware, software, firmware, or various combinations thereof. Examples of such hardware may include Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs), general-purpose processors, Digital Signal Processors (DSPs), and/or other circuitry. Software and/or firmware implementations of the invention may be implemented via any combination of programming languages, including Java, C, C++, Matlab™, Verilog, VHDL, and/or processor specific machine and assembly languages. 
     Computer programs (i.e., software and/or firmware) implementing the method of this invention may be distributed to users on a distribution medium such as a SIM card, a USB memory interface, or other computer-readable memory adapted for interfacing with a consumer wireless terminal. Similarly, computer programs may be distributed to users via wired or wireless network interfaces. From there, they will often be copied to a hard disk or a similar intermediate storage medium. When the programs are to be run, they may be loaded either from their distribution medium or their intermediate storage medium into the execution memory of a wireless terminal, configuring an onboard digital computer system (e.g. a microprocessor) to act in accordance with the method of this invention. All these operations are well known to those skilled in the art of computer systems. 
       FIG. 4A  illustrates a method for estimating subchannel symbols as part of an interference-cancellation technique. For a given pre-processed SINR, hard decisions are employed if the SINR is higher than a first predetermined threshold  401 . Weighted soft decisions may be employed for an intermediate range of SINRs defined by an upper bound (e.g., the first predetermined threshold) and a lower bound  402  (e.g., a second predetermined threshold). Subchannel symbol values may be discarded (e.g., set to zero) if the pre-processed SINR falls below the second predetermined threshold  403 . In a related embodiment, an interference cancellation circuit may be turned off if the measured SINR falls below a predetermined threshold, since, in some embodiments of the invention, it is known that interference cancellation may not be as useful as power conservation at lower pre-processed SINRs. 
       FIG. 4B  illustrates a method for estimating subchannel symbols for a given system that employs different signal constellations corresponding to different data rates. A system identification  400  is performed for each subchannel. For example, system identification  400  may distinguish between HSDPA subchannels and non-HSDPA subchannels, which have a lower data rate. For subchannels (e.g., HSDPA subchannels) having a higher data rate, some predetermined strategy may be used to estimate subchannel symbols based on whether the symbol constellation for those subchannels is known or unknown. Weighted soft estimates may be employed or cancellation may be bypassed for HSDPA subchannels in which the constellation is unknown. If the constellation is known, hard decisions  411 , weighted soft decisions  412 , and/or no cancellation  413  may be performed. For non-HSDPA (e.g., WCDMA) subchannels, it is assumed that the constellation is known. Thus, hard decisions  421 , weighted soft decisions  422 , and/or no cancellation  423  may be performed. 
     The functions of the various elements shown in the drawings, including functional blocks labeled as “modules” may be provided through the use of dedicated hardware, as well as hardware capable of executing software in association with appropriate software. When provided by a processor, the functions may be performed by a single dedicated processor, by a shared processor, or by a plurality of individual processors, some of which may be shared. Moreover, explicit use of the term “processor” or “module” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor DSP hardware, read-only memory (ROM) for storing software, random access memory (RAM), and non-volatile storage. Other hardware, conventional and/or custom, may also be included. Similarly, the function of any component or device described herein may be carried out through the operation of program logic, through dedicated logic, through the interaction of program control and dedicated logic, or even manually, the particular technique being selectable by the implementer as more specifically understood from the context. 
     The method and system embodiments described herein merely illustrate particular embodiments of the invention. It should be appreciated that those skilled in the art will be able to devise various arrangements, which, although not explicitly described or shown herein, embody the principles of the invention and are included within its spirit and scope. Furthermore, all examples and conditional language recited herein are intended to be only for pedagogical purposes to aid the reader in understanding the principles of the invention. This disclosure and its associated references are to be construed as applying without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting principles, aspects, and embodiments of the invention, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future, i.e., any elements developed that perform the same function, regardless of structure.