Systems and methods for parallel signal cancellation

09544044 ยท 2017-01-10

Assignee

Inventors

Cpc classification

International classification

Abstract

The present invention provides systems and methods for parallel interference suppression. In one embodiment of the invention, a processing engine is used to substantially cancel a plurality of interfering signals within a received signal. The processing engine includes a plurality of matrix generators that are used to generate matrices, each matrix comprising elements of a unique interfering signal selected for cancellation. The processing engine also includes one or more processors that use the matrices to generate cancellation operators. A plurality of applicators applies the cancellation operators to parallel but not necessarily unique input signals to substantially cancel the interfering signals from the input signals. These input signals may include received signals, interference cancelled signals and/or PN codes.

Claims

1. A processing engine, comprising: a plurality of matrix generators, wherein each of the plurality of matrix generators is configured for generating a matrix comprising elements representing components of a code of a different one of a plurality of interfering signals selected for suppression; a processor communicatively coupled to the plurality of matrix generators and configured for generating a plurality of suppression operators; a plurality of applicators, wherein each applicator is communicatively coupled to the processor and configured for applying at least one of the plurality of suppression operators to an input signal to substantially suppress at least one of the plurality of interfering signals; and an interference selector configured for selecting at least one of the plurality of interfering signals as an input to the plurality of matrix generators, wherein the interference selector selects at least one of the plurality of interfering signals based on a pre-determined criteria including at least one of amplitude, timing offset, phase, or code sequence; wherein the processing engine is in a receiver and wherein the processing engine further comprises a connection element configured for receiving one or more output signals from the plurality of applicators and for selecting one or more of the one or more output signals as inputs to one or more processing fingers of the receiver; wherein the connection element comprises one or more selectors configured for receiving one or more of the output signals and for selecting one or more of the output signals as inputs to one or more of the processing fingers; wherein the output signals are interference suppressed signals; and wherein the plurality of matrix generators are in parallel with each other.

2. The processing engine of claim 1, wherein at least one of the one or more selectors is further configured for receiving a digitized signal comprising one or more Code Division Multiple Access signals as an input to one of the processing fingers.

3. The processing engine of claim 1, wherein at least one of the one or more selectors is further configured for receiving a digitized signal comprising one or more Wideband Code Division Multiple Access signals as an input to one of the processing fingers.

4. The processing engine of claim 1, wherein each of the one or more selectors is further configured for receiving a digitized signal comprising one or more Global Positioning System signals as an input to one of the processing fingers.

5. The processing engine of claim 1, wherein the interference selector is further configured for providing on-time interfering pseudo noise (PN) codes of the interfering signals to the plurality of matrix generators.

6. The processing engine of claim 1, wherein the interference selector selects the at least one of the plurality of interfering signals based on amplitude.

7. The processing engine of claim 1, wherein the interference selector selects the at least one of the plurality of interfering signals based on timing offset.

8. The processing engine of claim 1, wherein the interference selector selects the at least one of the plurality of interfering signals based on phase.

9. The processing engine of claim 1, wherein the interference selector selects the at least one of the plurality of interfering signals based on code sequence.

10. A method of suppressing interference, comprising: generating a plurality of matrices, each of the plurality of matrices comprising elements of a different one of a plurality of interference signals selected for suppression; generating a plurality of suppression operators from the plurality of matrices; applying the plurality of suppression operators in parallel to an input signal to substantially suppress at least one of the interference signals; selecting one or more output signals generated in response to applying, for assignment of the one or more output signals to one or more processing fingers of a receiver; selecting at least one of the plurality of interference signals for input to the plurality of matrices, wherein the at least one of the plurality of interference signals is selected based on a pre-determined criteria including at least one of amplitude, timing offset, phase, or code sequence; wherein the one or more output signals are interference suppressed signals; and wherein the plurality of matrices are in parallel with each other.

11. The method of claim 10, further comprising providing one or more on-time interfering pseudo noise (PN) codes of the interfering signals to the matrices in response to selecting.

12. The method of claim 10, further comprising transferring the one or more output signals to the one or more processing fingers in response to selecting said output signals as input signals to the processing fingers.

13. The method of claim 10, further comprising receiving a Code Division Multiple Access signal.

14. The method of claim 10, further comprising receiving a Wideband Code Division Multiple Access signal.

15. The method of claim 10, further comprising receiving a Global Positioning System signal.

16. The method of claim 10, wherein the at least one of the plurality of interference signals is selected based on amplitude.

17. The method of claim 10, wherein the at least one of the plurality of interference signals is selected based on timing offset.

18. The method of claim 10, wherein the at least one of the plurality of interference signals is selected based on phase.

19. The method of claim 10, wherein the at least one of the plurality of interference signals is selected based on code sequence.

20. A system for suppressing interference, comprising: means for generating a plurality of matrices, each matrix comprising elements of a different one of a plurality of interference signals selected for suppression; means for generating a plurality of suppression operators from the plurality of matrices; means for applying the plurality of suppression operators in parallel to an input signal to substantially suppress at least one of the plurality interference signals to form one or more output signals; and means for selecting at least one of the plurality of interfering signals as inputs to the plurality of matrices, wherein the at least one of the plurality of interfering signals is selected based on a pre-determined criteria including at least one of amplitude, timing offset, phase, or code sequence; and wherein the plurality of matrices are in parallel with each other.

21. The system of claim 20, further comprising means for providing on-time interfering pseudo noise (PN) codes of one or more of the plurality of interfering signals to the one or more matrices in response to selecting.

22. The system of claim 21, further comprising means for receiving a Wideband Code Division Multiple Access signal.

23. The system of claim 20, further comprising means for selecting the one or more output signals for assignment of the one or more output signals to one or more processing fingers of a receiver.

24. The system of claim 23, further comprising means for transferring one or more output signals to the one or more processing fingers in response to selecting said output signals.

25. The system of claim 23, wherein the one or more output signals are interference suppressed signals.

26. The system of claim 20, further comprising means for receiving a Code Division Multiple Access signal.

27. The system of claim 20, further comprising means for receiving a Global Positioning System signal.

28. The system of claim 20, wherein the at least one of the plurality of interfering signals is selected based on amplitude.

29. The system of claim 20, wherein the at least one of the plurality of interfering signals is selected based on timing offset.

30. The system of claim 20, wherein the at least one of the plurality of interfering signals is selected based on phase.

31. The system of claim 20, wherein the at least one of the plurality of interfering signals is selected based on code sequence.

32. A mobile handset, comprising: a receiver configured for receiving a signal; a processing engine communicatively coupled to the receiver and comprising a plurality of matrix generators, wherein each of the plurality of matrix generators is configured for generating a matrix comprising elements of a different one of a plurality of interfering signals selected for suppression; a processor communicatively coupled to the plurality of matrix generators and configured for generating a plurality of suppression operators; a plurality of applicators, wherein each of the plurality of applicators is communicatively coupled to the processor and configured for applying at least one of the plurality of suppression operators to an input signal to substantially suppress at least one of the plurality of interfering signals; and an interference selector configured to select at least one of the plurality of interfering signals as inputs to the plurality of matrix generators, wherein the at least one of the plurality of interfering signals is selected based on a pre-determined criteria including at least one of amplitude, timing offset, phase, or code sequence; wherein the plurality of matrix generators are in parallel with each other.

33. The mobile handset of claim 32, wherein the processing engine further comprises a connection element configured for receiving output signals from the plurality of applicators and for selecting one or more output signals as inputs to one or more processing fingers of the receiver.

34. The mobile handset of claim 33, wherein the connection element comprises one or more selectors configured for receiving one or more output signals and for selecting one or more of the one or more output signals as inputs to one or more of the processing fingers.

35. The mobile handset of claim 34, wherein one or more of the one or more selectors is further configured for receiving a digitized signal comprising one or more Code Division Multiple Access signals as one of the inputs to one of the processing fingers.

36. The mobile handset of claim 34, wherein one or more of the one or more selectors is further configured for receiving a digitized signal comprising one or more Wideband Code Division Multiple Access signals as one of the inputs to one of the processing fingers.

37. The mobile handset of claim 34, wherein one or more of the one or more selectors is further configured for receiving a digitized signal comprising one or more Global Positioning System signals as one of the inputs to one of the processing fingers.

38. The mobile handset of claim 33, wherein the output signals are interference suppressed signals.

39. The mobile handset of claim 32, wherein the interference selector is further configured for providing on-time interfering pseudo noise (PN) codes of the plurality of interfering signals to the plurality of matrix generators.

40. The mobile handset of claim 32, wherein the signal comprises a Code Division Multiple Access signal.

41. The mobile handset of claim 32, wherein the signal comprises a Wideband Code Division Multiple Access signal.

42. The mobile handset of claim 32, wherein the signal comprises a Global Positioning System signal.

43. The mobile handset of claim 32, wherein the at least one of the plurality of interfering signals is selected based on amplitude.

44. The mobile handset of claim 32, wherein the at least one of the plurality of interfering signals is selected based on timing offset.

45. The mobile handset of claim 32, wherein the at least one of the plurality of interfering signals is selected based on phase.

46. The mobile handset of claim 32, wherein the at least one of the plurality of interfering signals is selected based on code sequence.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) FIG. 1 is a block diagram of an exemplary coded signal processing engine in one embodiment of the invention.

(2) FIG. 2 is a block diagram of the exemplary coded signal processing engine configurable with a receiver in one embodiment of the invention.

(3) FIG. 3 is a block diagram of exemplary receiver circuitry.

(4) FIG. 4 is another block diagram of exemplary receiver circuitry.

(5) FIG. 5 is a flow chart illustrating one exemplary methodical embodiment of the invention.

DETAILED DESCRIPTION OF THE DRAWINGS

(6) While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and are herein described in detail. It should be understood, however, that it is not intended to limit the invention to the particular form disclosed, but rather, the invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the claims.

(7) FIG. 1 is a block diagram of exemplary coded signal processing engine 100 in one embodiment of the invention. Coded signal processing engine (CSPE) 100 is used to substantially cancel interfering components from signals. Examples of such interfering components include co-channel interference and cross-channel interference typical of CDMA telephony. CSPE 100 substantially cancels selected interfering components by applying a cancellation operator to either a received signal y or selected coded reference signals. CSPE 100 thereby generates a plurality of output cancelled signals (i.e., labeled Output Cancelled Signals.sub.1 . . . N, where N is an integer greater than one), wherein the selected interfering components are substantially removed from the received signal y/coded reference signals. The coded reference signals may be on-time PN codes of signals used to decode signals selected for demodulation. On-time as used herein refers to a particular timing alignment for a PN code. Such a timing alignment may be relevant to extracting data from a signal being tracked within a receiver.

(8) In this embodiment, CSPE 100 includes interference selector 101 for selecting interfering components and for providing selected on-time interfering PN codes to matrix generators 102 of CSPE 100. The interference selector may select the interfering signals based on pre-determined criteria, such as amplitude, timing offset, phase and/or code sequence. Matrix generators 102 are configured for using selected interfering codes and phase estimates (labeled .sub.1 . . . N Est.) corresponding to those codes to generate matrices 103 (labeled matrices 103.sub.1 . . . N). Each matrix 103 comprises one or more vectors 104 (labeled matrices 104.sub.1 . . . N). Further, the vectors 104 comprise elements representing components of the interfering codes (e.g., such as those elements described in the '346 and the '360 applications). For example, each vector may include elements representing a unique code of an interfering signal (e.g., co-channel interference or cross-channel interference). The codes are typically Walsh covering codes and on-time PN codes of selected interferers. Each interference vector is multiplied by a phase estimate of a corresponding selected interferer. Phase estimation is exemplified in the '346 application.

(9) As multiple vectors 104 may be used to represent multiple interfering signals, each matrix 103 may be representative of a unique plurality of interfering signals. For example, matrix 103.sub.1 may include a single vector representing one interfering signal A.sub.1 (not shown), whereas matrix 103.sub.2 may include a single vector representing another interfering signal A.sub.2 (not shown). The invention, however, is not intended to be limited to the exemplary embodiment shown herein.

(10) CSPE 100 uses each matrix 103 to generate unique cancellation operators for selective cancellation of the interfering components. Accordingly, CSPE 100 includes processor 105 configured for processing matrices 103 to generate the cancellation operators. The cancellation operators may be projection operators that are used to project selected coded signals substantially orthogonal to the interference (e.g., the interference represented by the matrices 103) so as to substantially cancel or remove the interference from the selected coded signals. In a projection operator embodiment, processor 105 uses matrices 103 to generate the projection operators according to the following form:
P.sub.s.sup.=IS(S.sup.TS).sup.1S.sup.T,(Eq. 1)

(11) where P.sub.s.sup. is the projection operator, I is an identity matrix, S is an interference matrix 103 and S.sup.T is a transpose of the matrix 103. Such projection operators and their associated constructions are described in the '346, the '360, the '829, the '219 and the '834 applications.

(12) CSPE 100 applies the cancellation operator to selected input signals (labeled Input Signal). Each applicator 106 (labeled 106.sub.1 . . . N) applies one of the cancellation operators to an input signal. Each application of a cancellation operator typically provides a unique output cancelled signal which is the input signal with the selected interfering signal substantially removed. For example, using the same signal notations of A as described above, applicator 106.sub.1 may apply a projection operator P.sub.s A1.sup. to an input signal. The projection operator P.sub.s A1.sup., in this example, is generated from a matrix 103 comprising an interfering component of signal A.sub.1. Once applied to the received signal y as the input signal, applicator 106.sub.1 produces an Output Cancelled Signal.sub.1 that corresponds to y.sub.A1=P.sub.s A1.sup.y, where y.sub.A1 is the received signal with the interfering component A.sub.1 substantially removed.

(13) Similarly, applicators 106.sub.2 and 106.sub.N may apply projection operators in parallel with applicator 106.sub.1 to produce the respective unique signals Output Cancelled Signal.sub.2 and Output Cancelled Signal.sub.N. For example, applicator 106.sub.2 may apply a projection operator P.sub.s A2.sup. such that the applicator produces an Output Cancelled Signal.sub.2 corresponding to y.sub.A2=P.sub.s A2.sup.y, where y.sub.A2 is the received signal with the interfering component A.sub.2 substantially removed. Parallel as used herein implies the substantially simultaneous generations of unique cancellation operators and the subsequent applications of the cancellation operators to independent input signals.

(14) In an alternative embodiment, cancellation may be performed by applying a construction of the matrices as follows:
y=yS(S.sup.TS).sup.1S.sup.Ty.(Eq. 2)
In such an embodiment, the received signal y is multiplied by the interference matrix construction of Eq. 1. However, that product is subtracted from the received signal y to produce an output cancelled signal y, such as y.sub.A1 and y.sub.A21. Those skilled in the art should readily recognize that the two approaches produce substantially the same result.

(15) While one exemplary embodiment has been shown in detail, the invention is not intended to be limited to the examples described and illustrated herein. For example, applicators 106 may apply other cancellation operators to other input signals to produce a variety of output cancelled signals. One example of another input signal is an on-time reference PN code, such as that described below in FIG. 4. Examples of other methods for the production of cancellation operators include subtractive methods, decorrelators and decision feedback.

(16) Additionally, the invention is not intended to be limited to the number of applicators 106, input signals, output cancelled signals, matrix generators 102 and processors 105. For example, processor 105 may be either a single processor configured for generating a plurality of cancellation operators or processor 105 may represent a plurality of processors each of which is similarly configured for generating a unique cancellation operator. Examples of such processors include general purpose processors and Application Specific Integrated Circuits (ASIC). Accordingly, the processor may be operably controlled via software and/or firmware instructions to generate the cancellation operators. Those skilled in the art are familiar with processors, ASICs, software, firmware and the various combinations thereof which may be used in such implementations.

(17) Moreover, those skilled in the art should readily recognize that CSPE 100 in general as described herein may be implemented through software, firmware, hardware and/or various combinations thereof. For example, the generations of the cancellation operators and the subsequent cancellations of interfering signals may be computed through the use of software instructions (e.g., firmware) operable within a processor or specified in hardware architecture.

(18) FIG. 2 is a block diagram of the exemplary CSPE 100 of FIG. 1 configurable with receiver 204 in one embodiment of the invention. In this embodiment, receiver 204 receives a radio frequency (RF) signal through antenna 201 and subsequently converts that signal to a digital received signal y using Analog-to-Digital (A/D) converter 202. A/D converter 202 transfers the digital signal to receiver circuitry 203 for signal processing. Those skilled in the art should readily recognize that the processing of CDMA signals typically includes both In-phase (I) and Quadrature (Q) components. As such, the digital received signal y may include both I and Q components as well.

(19) In this embodiment, receiver circuitry 203 is configured for transferring the digitized received signal y to CSPE 100 for cancellation of interfering signals. CSPE 100 receives the signal y as well as known codes from the interfering signals. For example, the interfering signals may be cross channel and/or co-channel interfering signals comprising known codes of CDMA telephony systems. Such codes may be input to CSPE 100 on an as needed basis or stored within a memory (not shown) local to the CSPE 100. Alternatively, the codes may be generated by processor 105 on an as needed basis.

(20) Operable characteristics of CSPE 100 are the same as those described in FIG. 1. However, again using the same signal notations of A as described above, in this preferred receiver embodiment, CSPE 100 uses applicators 106.sub.1 . . . N to apply cancellation operators to the input signals in the following manner:

(21) Applicator 106.sub.1 produces an Output Cancelled Signal.sub.1 that corresponds to y.sub.A1=P.sub.s A1.sup.y, where again y.sub.A1 is the received signal with the interfering component A.sub.1 substantially removed;

(22) Applicator 106.sub.2 produces an Output Cancelled Signal.sub.2 corresponding to y.sub.A2=P.sub.s A2.sup.y; and where again y.sub.A2 is the received signal with the interfering component A.sub.2 substantially removed.

(23) These Output Cancelled Signal.sub.1 . . . N are transferred to connection element 206 via N channel connection 205. For example, N channel connection 205 may be a communicative connection such as a data bus that allows for the transfer of N number of channels to connection element 206. Consequently, connection element 206 may be configurable to receive such an N channel connection.

(24) Connection element 206 is configured for selectively transferring Output Cancelled Signal.sub.1 . . . N to receiver circuitry 203 of receiver 204 via M channel connection 207. For example, connection element 206 may be a switching device, multiplexer, a plurality of multiplexers or another similar communication device that selectively transfers N number of signals to M number of channels, where M is also a number greater than one. As such, M channel connection 207 is similar to N channel connection 205.

(25) The control for connection element 206 may be applied independently of cancellation processing. Consequently, connection element 206 may or may not be configured within the CSPE 100. For example, should the selection of Output Cancelled Signal.sub.1 . . . N be received by receiver circuitry 203 be decided by receiver 204, then connection element 206 may reside outside of the embodied CSPE 100. In a preferred embodiment, however, CSPE 100 includes the control functionality for connection element 206 that determines which of the Output Cancelled Signal.sub.1 . . . N are transferred to receiver circuitry 203. Accordingly, the invention should not be limited to the preferred embodiment described and shown herein.

(26) FIG. 3 is a block diagram of exemplary receiver circuitry 203. In this embodiment, receiver circuitry 203 is configured with CSPE 100 via connection element 206 for selectively tracking signals through receiver fingers f1, f2 and f3 (labeled 302.sub.f1, 302.sub.f2 and 302.sub.f3). For example, connection element 206 may allow the receiver circuitry 203 to track and subsequently demodulate a selected combination of Output Cancelled Signal.sub.1 . . . N and the received signal y through the receiver fingers f1, f2 and f3.

(27) In a preferred embodiment, a first receiver finger f1 receives the signal y via a corresponding selector (the selectors are labeled 301.sub.f1 . . . f3). The phase estimate .sub.f1 and the PN code.sub.f1 outputs of the first receiver finger flare transferred from the finger to CSPE 100 for producing the output cancelled signal y.sub.A1 described in FIGS. 1 and 2. A second receiver finger f2 selectively receives either y or y.sub.A1 via a corresponding selector for tracking of a second assigned signal. If y is transferred to the second receiver finger f2, the phase estimate .sub.f2 and the PN code outputs of that second receiver finger are transferred to CSPE 100 to produce the output cancelled signal y.sub.A2 also described in FIGS. 1 and 2. Consequently, a third receiver fingers f3 has a selection of signals y and output cancelled signals y.sub.A1 and y.sub.A2 to track and demodulate a third assigned signal.

(28) In many instances, tracking, demodulation and cancellation of the signals described and shown herein the preferred embodiment is all that is necessary in CDMA telephony because there are typically only one or two signals (e.g., A1 and A2) that degrade reception beyond the point of intended data recovery. Accordingly, selective cancellation of only one or two signals may decrease processor consumption requirements and thereby improve overall processing performance of the system. As such, the embodiment should not be limited to the number of receiver fingers shown and described. More receiver fingers than those illustrated in this exemplary embodiment may be used to selectively track and demodulate signals according to the principles described herein.

(29) FIG. 4 is another block diagram of exemplary receiver circuitry 203. In this alternative embodiment, the received signal y is transferred to receiver fingers f1, f2 and f3 (labeled 405.sub.f1 . . . f3) and CSPE 100. Time tracking and phase estimation of the received signal y may be performed for each finger in corresponding elements 401.sub.f1 . . . f3. Such tracking and phase estimation is used to generate on-time reference PN codes (PN code.sub.f1 . . . f3) and is described in greater detail in the '346 application. Elements 401.sub.f1 . . . f3 transfer the on-time reference PN codes as well as the phase estimates (labeled .sub.f1 . . . f3) to CSPE 100 and to corresponding selectors 402.sub.f1 . . . f3. CSPE 100 uses these on-time PN codes and phase estimates to generate cancellation operators that remove interfering signals from the received signal y.

(30) Differing from the embodiment of FIG. 3, CSPE 100 uses the applicators 106 of FIGS. 1 and 2 to apply cancellation operators to the on-time PN codes to produce output cancelled versions of the codes (labeled output reference codes). Such an embodiment may conform to a cancellation of the form P.sub.s.sup.x, where x is an on-time reference PN code. These output cancelled reference codes are selectively transferred to demodulators 403.sub.f1 . . . f2 via selectors 402.sub.f1 . . . f2 of connection element 206. These codes are used by the demodulators 403.sub.f1 . . . f2 to demodulate the received signal y. Such demodulation may be performed with a correlation of a reference code and a received signal over a period of a symbol and is well known to those skilled in the art.

(31) In a preferred embodiment, a first receiver finger f1 receives the on-time reference PN code x.sub.f1 via a first selector 402.sub.f1 and produces the phase estimate .sub.f1 and the PN code.sub.f1 outputs. The first finger f1 then demodulates the received signal y using the code x.sub.f1. These phase estimate .sub.f1, and the PN code.sub.f1 outputs of that first receiver finger f1 may be transferred from the finger f1 to CSPE 100 for producing the output cancelled signal x.sub.A1, where x.sub.A1 is the on-time reference PN code of the signal selected for demodulation without the interfering effects of the signal A1. A second receiver finger f2 selectively receives either x or x.sub.A1 via corresponding selector 402.sub.f2. If x is transferred to the second receiver finger 12, the phase estimate .sub.f2 and the PN code outputs of receiver finger f2 are transferred to CSPE 100 to produce the output cancelled signal x.sub.A2, where x.sub.A2 is the on-time reference PN code of the signal selected for demodulation without the interfering effects of the signal A2. Consequently, a third receiver finger f3 has a selection of signals x.sub.f3 and output cancelled on-time reference PN codes x.sub.A1 and x.sub.A2 which can be used to track and demodulate the received signal y.

(32) Again, those skilled in the art should readily recognize that the preferred embodiment should not be limited to that which is shown and described herein. More receiver fingers than those illustrated and described herein the exemplary embodiment may be used to selectively track and demodulate signals according to the principles described herein.

(33) FIG. 5 is a flow chart 500 illustrating one exemplary methodical embodiment of the invention. In this embodiment, one or more interference components of a received signal are selected, in element 501. These interference components are used to generate an interference matrix, in element 502. A cancellation operator is generated from the interference matrix, in element 503. The cancellation operator may be a projection operator as described in FIG. 1 that is generated in element 504 to substantially orthogonally project a received signal from interfering components. Such a projection operator may substantially cancel or remove the interfering components from the received signal. The cancellation operator is applied to either the received signal or an on-time reference PN code, in element 505.

(34) Elements 501 through 505 are performed in parallel based on the number of receiver fingers used for tracking and demodulation in a receiver. For example, in a receiver comprising three fingers, such as the receiver circuitry 203 in FIGS. 4 and 5, elements 501 through 505 may be performed three times in a substantially simultaneous fashion. Moreover, control functionality may be configured to only select information of particular fingers. For example, if a signal does not contribute significantly to the interference, it may be selectively excluded from the cancellation process to decrease processing. Such a selection process is described in the '954 application.

(35) The application of the cancellation operators in element 505 produces output cancelled signals such as those described herein. Once those output cancelled signals are produced, the signals are selected for finger assignments, in element 506. Such a selection process may be performed by connection element 206 in FIG. 3. Selected output cancelled signals are transferred to the receiver fingers according to their respective finger assignments, in element 507. Within their respective fingers, the output cancelled signals are either tracked and demodulated as in FIG. 3 or are used to track and demodulate a received signal as in FIG. 4.

(36) The embodiments described herein may substantially reduce interference caused by unwanted signals and improve signal processing. For example, poor signal quality due to interference may deleteriously affect acquisition, tracking and demodulation of selected signals. A reduction of interference may, therefore, result in improved signal processing and error reduction. In regards to such benefits, the embodiments herein may advantageously require use within a CDMA telephony system. Improved processing within a CDMA telephony system may be exploited in terms of increased system capacity, transmit power reduction, system coverage and/or data rates. However, those skilled in the art should readily recognize that the above embodiments should not be limited to any particular method of signaling. For example, the embodiments disclosed herein may also be advantageous to systems employing CDMA (e.g., such as cdmaOne and cdma2000), WCDMA, Broadband CDMA and GPS signals.

(37) Additionally, it should be noted that the above embodiments of the invention may be implemented in a variety of ways. For example, the above embodiments may be implemented from software, firmware, hardware or various combinations thereof. Those skilled in the art are familiar with software, firmware, hardware and their various combinations. To illustrate, those skilled in the art may choose to implement aspects of the invention in hardware using ASIC chips, Digital Signal Processors (DSP) and/or other integrated circuitry (e.g., custom designed circuitry and Xilinx chips). Alternatively, aspects of the invention may be implemented through combinations of software using Java, C, C++, Matlab, and/or processor specific machine and assembly languages. Accordingly, those skilled in the art should readily recognize that such implementations are a matter of design choice and that the invention should not be limited to any particular implementation.

(38) While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description is to be considered as exemplary and not restrictive in character. Accordingly, it should be understood that only the preferred embodiment and minor variants thereof have been shown and described and that all changes and modifications that come within the spirit of the invention are desired to be protected.