Source: http://www.google.com/patents/US20040052305?dq=7,517,222
Timestamp: 2016-12-06 01:06:09
Document Index: 106093869

Matched Legal Cases: ['Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60', 'Application No. 60']

Patent US20040052305 - Construction of an interference matrix for a coded signal processing engine - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inPatentsA novel method for generating an interference matrix S is disclosed. The method comprises the following steps: A) Determining the number of active channels N in a transmitter; B) Selecting the transmitter to be canceled and assigning the transmitters sequentially to the variable t; C) Selecting the channel...http://www.google.com/patents/US20040052305?utm_source=gb-gplus-sharePatent US20040052305 - Construction of an interference matrix for a coded signal processing engineAdvanced Patent SearchTry the new Google Patents, with machine-classified Google Scholar results, and Japanese and South Korean patents.Publication numberUS20040052305 A1Publication typeApplicationApplication numberUS 10/294,834Publication dateMar 18, 2004Filing dateNov 15, 2002Priority dateNov 16, 2001Also published asCN1636331A, CN100385814C, EP1540860A2, US7200183, WO2003044969A2, WO2003044969A3Publication number10294834, 294834, US 2004/0052305 A1, US 2004/052305 A1, US 20040052305 A1, US 20040052305A1, US 2004052305 A1, US 2004052305A1, US-A1-20040052305, US-A1-2004052305, US2004/0052305A1, US2004/052305A1, US20040052305 A1, US20040052305A1, US2004052305 A1, US2004052305A1InventorsEric Olson, John ThomasOriginal AssigneeOlson Eric S., Thomas John K.Export CitationBiBTeX, EndNote, RefManPatent Citations (14), Referenced by (18), Classifications (15), Legal Events (8) External Links: USPTO, USPTO Assignment, EspacenetConstruction of an interference matrix for a coded signal processing engine
US 20040052305 A1Abstract
A novel method for generating an interference matrix S is disclosed. The method comprises the following steps: A) Determining the number of active channels N in a transmitter; B) Selecting the transmitter to be canceled and assigning the transmitters sequentially to the variable t; C) Selecting the channel to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; D) Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E) Generating a sequence of column vectors V; F) Repeating steps B, C, D, E, F and G for each column vector of interest; and G) Defining the S matrix as S=[V1 V2 . . . Vc] wherein the index denotes the column index c. In addition, an apparatus for generating the interference matrix is also disclosed. Images(10) Claims(96)
What is claimed is: 1. A method for generating an interference matrix S, the method comprising the steps of: A. Determining the number of active channels N in a transmitter; B. Selecting the transmitter to be canceled and assigning said transmitters sequentially to the variable t; C. Selecting the channel to be cancelled and assigning said channels sequentially to the variable n, where n is less than or equal to N; D. Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E. Generating a sequence of column vectors V; F. Repeating steps B, C, D, E, F and G for each column vector of interest; and G. Defining said S matrix as S=[V1 V2 . . . Vc] wherein the index denotes the column index c. 2. The method recited in claim 1, further comprising the steps of: E1. Determining the relative amplitude of an interference signal (θ); and E2. Multiplying an interference vector s by θ to produce the vector sp; where V = s p  ∑ t ∑ n ∑ M = ∑ t  ∑ n  ∑ M  s p  t n M where spt0 represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled and M>0 representing the multipaths interference signals of interest. 3. The method recited in claim 1, wherein said sequence of column vectors of the form V=sbt0-i 0-M produced over the indices corresponding to channel number (0-i), multipath number (0-M) and transmitter number t where sbti 0 represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled where the knowledge of bits is known and M>0 representing the multipaths interference signals of interest. 4. The method recited in claim 1, wherein said sequence of column vectors of the form V=st0-n 0-M produced over the indices corresponding to channel number (0-n), multipath number (0-M) and transmitter number t where st0 represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled and M>0 representing the multipaths interference signals of interest. 5. The method recited in claim 1, wherein said determining step is conducted by pre-selecting a value for n. 6. The method recited in claim 1, wherein n is dynamically selected based upon a system criterion. 7. The method recited in claim 6, wherein said system criterion is a threshold criterion. 8. The method recited in claim 6, wherein said system criterion is a subset based upon a ranking procedure. 9. The method recited in claim 1, wherein said selecting the transmitter step is conducted by pre-selecting a value for t. 10. The method recited in claim 9, wherein t=1, which represents a single transmitter. 11. The method recited in claim 1, wherein said selecting the transmitter step is conducted by dynamically selecting a value for t. 12. The method recited in claim 1, wherein the number of columns c in said S matrix is predetermined. 13. The method recited in claim 1, wherein the number of columns c in said S matrix is less than or equal to the total number of active channels in all transmitters t, LOS and multipath signals M. 14. The method recited in claim 1, wherein M is dynamically selected based upon a system criterion. 15. The method recited in claim 14, wherein said system criterion is a threshold criterion. 16. The method recited in claim 14, wherein said system criterion is a subset based upon a ranking procedure. 17. The method recited in claim 1, wherein M is pre-selected. 18. The method recited in claim 3, further comprising the step of determining the sign of a transmitted symbol in data to determine whether said symbol is used in the construction of said S matrix or said symbol's inverse is used. 19. The method recited in claim 18, wherein said sign of the symbol is determined dynamically for each channel at the symbol rate. 20. The method recited in claim 18, wherein said step of determining the sign of a symbol in a channel comprises the following steps: A. Receiving a data signal y and producing a reference signal x0 with the appropriate code offset, phase and/or frequency; B. Correlating said data signal y with the code used for channelization; C. Determining the sign of the symbol via the correlation step; and D. Utilizing said sign information to determine whether symbol used in the correlation is used in the construction of said S matrix or said symbol's inverse is used. 21. The method recited in claim 20, wherein said at least one code used for channelization is a pilot reference signal. 22. The method recited in claim 20, wherein said correlation is conducted by a Fast Hadamard Transform (FHT). 23. The method recited in claim 20, wherein said correlation is conducted by a Fast Walsh Transform (FWT). 24. The method recited in claim 18, further comprising the step of determining if the power of a channel exceeds a predetermined threshold in order to determine whether to use said symbol in the construction of said S matrix. 25. The method recited in claim 24 wherein said predetermined threshold is based upon the synchronization channel. 26. The method recited in claim 18, wherein a predetermined number of traffic channels are used in the construction of said S matrix. 27. The method recited in claim 2, wherein said step of determining the relative amplitude of a symbol in a channel comprises the following steps: A. Receiving a data signal y and producing a reference signal x0 with the appropriate code offset, phase and/or frequency; B. Correlating said data signal y with the symbol used for channelization; C. Determining the relative amplitude, including sign, of the symbol via the correlation step; D. Scaling each symbol with said relative amplitude, including sign; and E. Utilizing said relative amplitude information, including sign, to determine whether the symbol used in the correlation is used in the construction of said S matrix. 28. The method recited in claim 27, wherein said at least one symbol used for channelization is a pilot reference signal. 29. The method recited in claim 27, wherein said correlation is conducted by a Fast Hadamard Transform (FHT). 30. The method recited in claim 27, wherein said correlation is conducted by a Fast Walsh Transform (FWT). 31. The method recited in claim 27, further comprising the step of determining if the power of a channel exceeds a predetermined threshold in order to determine whether to use said symbol in the construction of said S matrix. 32. The method recited in claim 31 wherein said predetermined threshold is based upon the synchronization channel. 33. The method recited in claim 27, wherein a predetermined number of traffic channels are used in the construction of said S matrix. 34. An apparatus for generating an interference matrix S, said apparatus comprising: means for determining the number of active channels N in a transmitter; means for electing the transmitter to be canceled and assigning said transmitters sequentially to the variable t; means for selecting the channel to be cancelled and assigning said channels sequentially to the variable n, where n is less than or equal to N; means for determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; and means for generating a sequence of column vectors V; wherein said S matrix is defined as S=[V1 V2 . . . Vc] and wherein the index denotes the column index c. 35. A method for generating an interference matrix S, the method comprising the steps of: A. Determining the number of active channels N in a transmitter; B. Selecting the transmitters to be canceled and assigning said transmitters sequentially to the variable t; C. Selecting the channels to be cancelled and assigning said channels sequentially to the variable n, where n is less than or equal to N; D. Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E. Generating a sequence of column vectors of the form V=st0-n 0-M where st0 represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled and M>O representing the multipaths interference signals of interest; F. Repeating steps B, C, D and E for each column vector of interest over the channel subscript from 0 to n, over the multipath superscript from 0 to M and over the transmitter variable t; and G. Defining said S matrix as S=[V, V2 VC] wherein the index denotes the column index c. 36. The method recited in claim 35, wherein said determining step is conducted by pre-selecting a value for n. 37. The method recited in claim 35, wherein n is dynamically selected based upon a system criterion. 38. The method recited in claim 37, wherein said system criterion is a threshold criterion. 39. The method recited in claim 37, wherein said system criterion is a subset based upon a ranking procedure. 40. The method recited in claim 35, wherein said selecting the transmitter step is conducted by pre-selecting a value for t. 41. The method recited in claim 38, wherein t=1, which represents a single transmitter. 42. The method recited in claim 35, wherein said selecting the transmitter step is conducted by dynamically selecting a value for t. 43. The method recited in claim 35, wherein the number of columns c in said S matrix is predetermined. 44. The method recited in claim 35, wherein the number of columns c in said S matrix is less than or equal to the total number of active channels in all transmitters t, LOS and multipath signals M. 45. The method recited in claim 35, wherein M is dynamically selected based upon a system criterion. 46. The method recited in claim 45, wherein said system criterion is a threshold criterion. 47. The method recited in claim 45, wherein said system criterion is a subset based upon a ranking procedure. 48. The method recited in claim 35, wherein M is pre-selected. 49. An apparatus for generating an interference matrix S, said apparatus comprising: means for determining the number of active channels N in a transmitter; means for electing the transmitters to be canceled and assigning said transmitters sequentially to the variable t; means for electing the channels to be cancelled and assigning said channels sequentially to the variable n, where n is less than or equal to N; means for determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; and means for generating a sequence of column vectors of the form V=st0-n 0-M where st0 represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled and M>0 representing the multipaths interference signals of interest; wherein said S matrix is defined as S=[V1 V2 . . . Vc] and wherein the index denotes the column index c. 50. A method for generating an interference matrix S, the method comprising the steps of: A. Determining the number of active channels N in a transmitter; B. Selecting the transmitters to be canceled and assigning said transmitters sequentially to the variable t; C. Selecting the channel to be cancelled and assigning said channels sequentially to the variable n, where n is less than or equal to N; D. Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E. Generating a sequence of column vectors of the form V=sbt0-i 0-M where sbti 0 represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled where the knowledge of bits is known and M>0 representing the multipaths interference signals of interest; F. Repeating steps B, C, D and E for each column vector of interest over the channel subscript from 0 to i, over the multipath superscript from 0 to M and over the transmitter variable t; and G. Defining said S matrix as S=[V1 V2 . . . Vc] wherein the index denotes the column index c. 51. The method recited in claim 50, wherein said determining step is conducted by pre-selecting a value for n. 52. The method recited in claim 50, wherein n is dynamically selected based upon a system criterion. 53. The method recited in claim 52, wherein said system criterion is a threshold criterion. 54. The method recited in claim 52, wherein said system criterion is a subset based upon a ranking procedure. 55. The method recited in claim 50, wherein said selecting the transmitter step is conducted by pre-selecting a value for t. 56. The method recited in claim 53, wherein t=1, which represents a single transmitter. 57. The method recited in claim 50, wherein said selecting the transmitter step is conducted by dynamically selecting a value for t. 58. The method recited in claim 50, wherein the number of columns c in said S matrix is predetermined. 59. The method recited in claim 50, wherein the number of columns c in said S matrix is less than or equal to the total number of active channels in all transmitters t, LOS and multipath signals M. 60. The method recited in claim 50, wherein M is dynamically selected based upon a system criterion. 61. The method recited in claim 60, wherein said system criterion is a threshold criterion. 62. The method recited in claim 60, wherein said system criterion is a subset based upon a ranking procedure. 63. The method recited in claim 50, wherein M is pre-selected. 64. The method recited in claim 50, further comprising the step of determining the sign of a transmitted symbol in data to determine whether said symbol is used in the construction of said S matrix or said symbol's inverse is used. 65. The method recited in claim 64, wherein said sign of the symbol is determined dynamically for each channel at the symbol rate. 66. The method recited in claim 64, wherein said step of determining the sign of a symbol in a channel comprises the following steps: A. Receiving a data signal y and producing a reference signal x0 with the appropriate code offset, phase and/or frequency; B. Correlating said data signal y with the code used for channelization; C. Determining the sign of the symbol from the correlation step; and D. Utilizing said sign information to determine whether symbol used in the correlation is used in the construction of said S matrix or said symbol's inverse is used. 67. The method recited in claim 66, wherein said at least one code used for channelization is a pilot reference signal. 68. The method recited in claim 66, wherein said correlation is conducted by a Fast Hadamard Transform (FHT). 69. The method recited in claim 66, wherein said correlation is conducted by a Fast Walsh Transform (FWT). 70. The method recited in claim 64, further comprising the step of determining if the power of a channel exceeds a predetermined threshold in order to determine whether to use said symbol in the construction of said S matrix. 71. The method recited in claim 70, wherein said predetermined threshold is based upon the synchronization channel. 72. The method recited in claim 64, wherein a predetermined number of traffic channels are used in the construction of said S matrix. 73. An apparatus for generating an interference matrix S, said apparatus comprising: means for determining the number of active channels N in a transmitter; means for selecting the transmitters to be canceled and assigning said transmitters sequentially to the variable t; means for selecting the channel to be cancelled and assigning said channels sequentially to the variable n, where n is less than or equal to N; means for determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; and means for generating a sequence of column vectors of the form V=sbt0-i 0-M where sbt0-i 0-M represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled where the knowledge of bits is known and M>0 representing the multipaths interference signals of interest; wherein said S matrix is defined as S=[V1 V2 . . . Vc] and wherein the index denotes the column index c. 74. A method for generating an interference matrix S, the method comprising the steps of: A. Determining the number of active channels N in a transmitter; B. Selecting the transmitters to be canceled and assigning said transmitters sequentially to the variable t; C. Selecting the channels to be cancelled and assigning said channels sequentially to the variable n, where n is less than or equal to N; D. Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E. Determining the relative amplitude of the interference signal (θ) corresponding to the channel, transmitter and multipath of interest; F. Multiplying an interference vector s by 0 to produce the vector SP G. Generating a column vector V = s p  ∑ t ∑ n ∑ M = ∑ t  ∑ n  ∑ M  s p  t n M where spt0 represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled and M>0 representing the multipaths interference signals of interest; H. Repeating steps B, C, D, E, F and G for each column vector of interest over the channel subscript n, over the multipath superscript M and the transmitter index t; and I. Defining said S matrix as S=[V1 V2 V . . . Vc] wherein the index denotes the column index c. 75. The method recited in claim 74, wherein said determining step is conducted by pre-selecting a value for n. 76. The method recited in claim 74, wherein n is dynamically selected based upon a system criterion. 77. The method recited in claim 76, wherein said system criterion is a threshold criterion. 78. The method recited in claim 76, wherein said system criterion is a subset based upon a ranking procedure. 79. The method recited in claim 74, wherein said selecting the transmitter step is conducted by pre-selecting a value for t. 80. The method recited in claim 79, wherein t=1, which represents a single transmitter. 81. The method recited in claim 74, wherein said selecting the transmitter step is conducted by dynamically selecting a value for t. 82. The method recited in claim 74, wherein the number of columns c in said S matrix is predetermined. 83. The method recited in claim 74, wherein the number of columns c in said S matrix is equal to 1. 84. The method recited in claim 74, wherein the number of columns in said S matrix is less than or equal to the total number of active channels in all transmitters t, LOS and multipath signals M. 85. The method recited in claim 74, wherein M is dynamically selected based upon a system criterion. 86. The method recited in claim 85, wherein said system criterion is a threshold criterion. 87. The method recited in claim 85, wherein said system criterion is a subset based upon a ranking procedure. 88. The method recited in claim 74, wherein M is pre-selected. 89. The method recited in claim 74, wherein said step of determining the relative amplitude of a symbol in a channel comprises the following steps: A. Receiving a data signal y and producing a reference signal x0 with the appropriate code offset, phase and/or frequency; B. Correlating said data signal y with the code used for channelization; C. Determining the relative amplitude, including sign, of the symbol from the correlation step; D. Scaling each symbol with said relative amplitude, including sign; and E. Utilizing said amplitude information to determine whether the symbol used in the correlation is used in the construction of said S matrix. 90. The method recited in claim 89, wherein said at least one symbol used for channelization is a pilot reference signal. 91. The method recited in claim 89, wherein said correlation is conducted by a Fast Hadamard Transform (FHT). 92. The method recited in claim 89, wherein said correlation is conducted by a Fast Walsh Transform (FWT). 93. The method recited in claim 89, further comprising the step of determining if the power of a channel exceeds a predetermined threshold in order to determine whether to use said symbol in the construction of said S matrix. 94. The method recited in claim 93, wherein said predetermined threshold is based upon the synchronization channel. 95. The method recited in claim 89, wherein a predetermined number of traffic channels are used in the construction of said S matrix. 96. An apparatus for generating an interference matrix S, said apparatus comprising: means for determining the number of active channels N in a transmitter; means for selecting the transmitters to be canceled and assigning said transmitters sequentially to the variable t; means for selecting the channels to be cancelled and assigning said channels sequentially to the variable n, where n is less than or equal to N; means for determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; means for determining the relative amplitude of the interference signal (θ) corresponding to the channel, transmitter and multipath of interest; means for multiplying an interference vector s by θ to produce the vector sp; and means for generating a column vector V
where spt0 represents the line of sight (LOS) interference signal from said channel to be cancelled of said transmitter to be cancelled and M>0 representing the multipaths interference signals of interest; wherein said S matrix is defined as S=[V1 V2 . . . Vc] and wherein the index denotes the column index c.
CROSS-REFERENCE TO RELATED APPLICATIONS [0001] This application makes reference to: U.S. Provisional Patent Application No. (TCOM-0012-1), entitled “Alternate Correlator Design for Coded Signal Processing Engine,” filed Oct. 31, 2002; U.S. Provisional Patent Application No. (TCOM-0011-1), entitled “A Projection Based Receiver for WCDMA Systems,” filed Oct. 28, 2002; U.S. Provisional Patent Application No. (TCOM-0010-1), entitled “Interference Suppression with Efficient Matrix Inversion in a DS-CDMA System,” filed Oct. 15, 2002; U.S. Provisional Patent Application No. (TCOM-0009-1), entitled “Carrier Phase Recovery Circuit,” filed Oct. 15, 2002; U.S. Provisional Patent Application No. (TCOM-0008-1), entitled “Method for Channel Amplitude Estimation and Interference Vector Construction,” filed Oct. 15, 2002; U.S. Provisional Patent Application No. 60/412,550, entitled “A Controller for Interference Cancellation in Spread Spectrum Systems,” filed Sep. 23, 2002; U.S. Provisional Patent Application No. 60/354,093, entitled “A Parallel CPSE Based Receiver for Communication Signal Processing,” filed Feb. 5, 2002; U.S. patent application Ser. No. 10/247,836, entitled “Serial Cancellation Receiver Design for a Coded Signal Processing Engine,” filed Sep. 20, 2002; U.S. Provisional Patent Application No. 60/348,106, entitled “Serial Receiver Design for a Coded Signal Processing Engine,” filed Jan. 14, 2002; U.S. patent application Ser. No. 10/178,541, entitled “Method and Apparatus to Compute the Geolocation of a Communication Device Using Orthogonal Projection Methods,” filed Jun. 25, 2002; U.S. Provisional Patent Application No. 60/333,143, entitled “Method and Apparatus to Compute the Geolocation of a Communication Device Using Orthogonal Projection Methods,” filed Nov. 27, 2001; U.S. Provisional Patent Application No. 60/331,480, entitled “Construction of an Interference Matrix for a Coded Signal Processing Engine,” filed Nov. 16, 2001; U.S. patent application Ser. No. 09/988,219, entitled “A Method and Apparatus for Implementing Projections in Signal Processing Applications,” filed Nov. 19, 2001; U.S. Provisional Patent Application No. 60/325,215, entitled “An Apparatus for Implementing Projections in Signal Processing Applications,” filed Sep. 28, 2001; U.S. patent application Ser. No. 09/988,218, entitled “Interference Cancellation in a Signal,” filed Nov. 19, 2001; U.S. Provisional Patent Application No. 60/326,199, entitled “Coded Signal Processing Engine (CSPE) Architecture,” filed Oct. 2, 2001; U.S. Pat. No. 6,380,879, entitled “Method and Apparatus for Acquiring Wide-Band Pseudorandom Noise Encoded Waveforms,” issued on Apr. 30, 2002; U.S. Pat. No. 6,362,760, entitled “Method and Apparatus for Acquiring Wide-Band Pseudorandom Noise Encoded Waveforms,” issued Mar. 26, 2002; U.S. Pat. No. 6,252,535, entitled “Method and Apparatus for Acquiring Wide-Band Pseudorandom Noise Encoded Waveforms,” issued Jun. 26, 2001; U.S. Provisional Patent Application No. 60/251,432, entitled “Architecture for Acquiring, Tracking and Demodulating Pseudorandom Coded Signals in the Presence of Interference,” filed Dec. 4, 2000; U.S. patent application Ser. No. 09/612,602, entitled “Rake Receiver for Spread Spectrum Signal Demodulation,” filed Jul. 7, 2000, and issued as U.S. Pat. No. 6,430,216 on Aug. 6, 2002; and U.S. patent application Ser. No. 09/137,183, entitled “Method and Apparatus for Acquiring Wide-Band Pseudorandom Noise Encoded Waveforms,” filed Aug. 20, 1998. The entire disclosure and contents of these applications are hereby incorporated by reference.
BACKGROUND OF THE INVENTION [0002] 1. Field of the Invention [0003] The present invention relates generally to a method and apparatus for the cancellation of interference in the reception of wide-band, sequence encoded waveforms, and more particularly to a method and apparatus for the construction of interference matrices for a Coded Signal Processing Engine (CSPE) with the intent to cancel interference and improve reception, in terms of signal-to-noise (SNR) and bit error rate (BER). The CSPE may be used to improve the acquisition, tracking and demodulation of a sequence encoded (spread spectrum) signal in an interference-limited environment, where interference is defined as signals intended for other receivers. Such improvements may enhance capacity, coverage and data rates of spread spectrum systems, such as those that employ code-division multiple access (CDMA). Furthermore, such improvements may enhance the ability to determine the receiver's geographical location, namely a mobile unit in a cellular system (geo-location). [0004] 2. Description of the Prior Art [0005] In spread spectrum systems, whether it is a wireless communication system, a Global Positioning System (GPS) or a radar system, each transmitter may be assigned a unique code and in many instances each transmission from a transmitter is assigned a unique code. The code is nothing more than a sequence (often pseudorandom) of bits. Examples of codes include Gold codes (used in GPS—see Kaplan, Elliot D., Editor, Understanding GPS: Principles and Applications, Artech House 1996), Barker codes (used in radar—see Stimson, G. W., “An Introduction to Airborne Radar”, SciTech Publishing Inc., 1998) and Walsh codes (used in communications systems, such as cdmaOne—See IS-95). These spreading codes may be used to spread the signal across a specified range of frequencies in the electromagnetic spectrum. [0006] Assigning a unique code to each transmitter allows the receiver to distinguish between different transmitters. An example of a spread spectrum system that uses unique codes to distinguish between transmitters is a GPS system. [0007] In some instances, such as in a coded radar system, each pulse is assigned a unique code so that the receiver is able to distinguish between different pulses by the codes. [0008] If a single transmitter has to broadcast different messages to different receivers, such as a base station in a wireless communication system broadcasting to multiple mobiles, one may use codes to distinguish between messages for each mobile. In this scenario, each symbol for a particular user is encoded using the code assigned to that user. By coding in this manner, the receiver, by knowing its own code, may decipher the message intended for it from the superposition of message signals received. [0009] In some communication systems, a symbol is assigned to a sequence of bits that comprise a message. For example, a digital message may be grouped into sets of M bit sequences where each unique sequence is assigned a symbol. For example, if M=6, then each set of 6 bits may assume one of 26=64 possibilities. Such a system would broadcast a waveform, called a symbol, which would represent a sequence of transmitted bits. For example, the symbol α might denote the sequence 101101 and the symbol β might denote the sequence 110010. In a spread spectrum system, these symbols are referred to as codes. An example of such a communication system is the mobile to base station (forward/down) link of cdmaOne. [0010] Of course, all of these techniques may be combined to distinguish between transmitters, messages, pulses and symbols in a single system. The key idea in all of these coded systems is that the receiver knows the code(s) of the message intended for it. By applying the code(s) correctly to the received signal, the receiver may extract the message for which it is intended. However, such receivers are more complex than receivers that distinguish between messages by time and/or frequency alone. Complexity arises because the signal received is a linear combination of all the coded signals present in the spectrum of interest at any given time. The receiver must be able to extract the message intended for it from this linear combination of coded signals. [0011] The following section presents the problem of interference in linear algebraic terms and provides a method by which it may be cancelled. [0012] Let H be a matrix containing the spread signal from source number 1 and let θ1 be the amplitude of the signal from this source. Let si be the spread signals for the remaining sources and let Φi be the corresponding amplitudes. Suppose that the receiver is interested in source number 1. The signals from the other sources may be considered to be interference. The received signal is: y=Hθ 1 +s 2Φ2 +s 3Φ3 + . . . +s pΦp +n (1) [0013] where n is the additive noise term and p is the number of sources in the spread spectrum system. Let the length of the vector y be N, where N is the number of points in the integration window. The value of N is selected as part of the design process and is a trade-off between processing gain and complexity. N consecutive points of y will be referred to as a segment corresponding to a correlation length. [0014] In a wireless communication system, the columns of the matrix H represent the various coded signals of interest and the elements of the vector θ are the amplitudes of the respective coded signals. For example, in the base station to mobile link of a cdmaOne system, the coded signals may include the various channels, i.e., pilot, paging, synchronization and traffic, of each base station's line-of-sight (LOS) or multipath signals. In the mobile to base station link, the columns of the matrix H may be the coded signals from a mobile LOS and/or one of its multipath signals. [0015] In a GPS system, the columns of the matrix H are the coded signals being broadcast by the GPS satellites at the appropriate code, phase and frequency offsets. [0016] In an array application, the columns of the matrix are steering vectors, or equivalent array pattern vectors. These vectors characterize the relative phase recorded by each antenna in the array as a function of the location and motion dynamics of the source as well as the arrangement of the antennas in the array. In the model presented above, each column of the matrix H signifies a steering vector corresponding to a particular source. [0017] Equation (1) may now be written in the following matrix form: y = H   θ + S   φ + n = [ HS ]  [ θ φ ] + n ( 2 ) [0018] where [0019] H: spread signal matrix of the signal of interest [0020] θ: amplitude vector of the source of interest [0021] S=[s2 . . . sp]: spread signal matrix of all the other signals, i.e., the interference [0022] Φ=[Φ2 . . . Φp]: interference amplitude vector [0023] Baseline receivers correlate the measurement, y, with a replica of H or a column vector of H to determine if H or the column vector is present in the measurement. If H is detected, then the receiver knows the bit-stream transmitted by source number 1. Mathematically, this correlation operation is: correlation function=(H T H)−1 H T y (3) [0024] where T is the transpose operation. [0025] Substituting for y from equation (2) illustrates the source of the power control requirement: ( H T  H ) - 1  H T  y = ( H T  H ) - 1  H T  ( H   θ + S   φ + n ) = ( H T  H ) - 1  H T  H   θ + ( H T  H ) - 1  H T  S   φ + ( H T  H ) - 1  H T  n = θ + ( H T  H ) - 1  H T  S   φ + ( H T  H ) - 1  H T  n ( 4 ) [0026] The middle term, (HTH)−1HTSΦ, in the above equation is the source of the near-far problem. If the codes are orthogonal, then this term reduces to zero, which implies that the receiver has to detect θ in the presence of noise, i.e., (HTH)−1HTn only. As the amplitudes of the other sources with non-orthogonal codes increase, the term (HTH)−1HTSΦ contributes a significant amount to the correlation, which interferes with the detection of θ. [0027] The normalized correlation function, (HTH)−1HT, defined above, is in fact a matched filter and is based on an orthogonal projection of y onto the space spanned by H. When H and S are not orthogonal to each other, there is leakage of the components of S into the orthogonal projection of y onto H. This leakage is geometrically illustrated in FIG. 1. Note in FIG. 1, that if S were orthogonal to H, the leakage component is zero as is evident from equation 4. The CSPE utilizes projective methods to provide a solution to this interference leakage issue. [0028] The coded signal-processing engine (CSPE) was designed to address non-orthogonal leakage. The CSPE may mitigate at least two types of interference: cross-channel and co-channel. The first kind of interference results from one source's signals bleeding into the acquisition and tracking channels of another source. This will be referred to as cross-channel interference. The second type of interference occurs when one or more signals, e.g, a line-of-sight and/or multipath signal, interfere with the ability to acquire a second, third or fourth multipath signal from the same source. This type of interference will be referred to as co-channel interference. [0029] The analysis of cross-channel and co-channel interference mitigation begins by considering the measurement model of equation (2). An orthogonal projection onto the space spanned by the columns of H and S may be decomposed as shown in FIG. 2. P HS =P S +P P S ⊥ H =P S +P G (5) [0030] where: Ps=S(STS)−1ST, PP S ⊥ H=PS ⊥H(HTPS ⊥H)−1HTPS ⊥ and PS ⊥=1−PS are projection matrices, and G=PS ⊥H. [0031] Two cases of the detection problem were considered. In the first case, it is assumed that the measurement noise variance is known, while in the second case it is assumed that it is unknown. [0032] Case 1: Known Measurement Noise Variance [0033] Assuming that the variance of the measurement noise is known to be σ2, the test statistic for detecting signals in the subspace H, with interference from S is given by Scharf L. L. and B. Friedlander, “Matched Subspace Detectors,” IEEE Trans Signal Proc SP-42:8,pp. 2146-2157 (August 1994): φ  ( y ) = y T  P G  y σ 2 ( 8 ) [0034] Case 2: Unknown Measurement Noise Variance [0035] The uniformly most powerful (UMP) test for detecting contributions from H, while rejecting contributions from S, when the measurement noise variance is unknown, has been derived in the literature and is given by: φ  ( y ) = y T  P G  y y T  P S ⊥  P G ⊥  P S ⊥  y ( 9 ) [0036] A concept presented by Scharf & Friedlander is to project the measurement y onto the space G and to perform the detection test in G. This projection onto G may be viewed in the following equivalent ways: parallel to the space S, perpendicular to the space that is perpendicular to S, and oblique to the space H. [0037] Therefore, an efficient process by which an interference matrix may be constructed for the purpose of interference mitigation in the reception of coded signals is needed. In addition, a method and apparatus is needed that will construct an interference matrix for a coded signal-processing engine (CSPE). Several specific methods are discussed to implement the method and apparatus to provide efficient signal cancellation, which may facilitate acquisition, tracking and demodulation of the signal of interest. SUMMARY OF THE INVENTION [0038] It is therefore an object of the present invention to provide a method for constructing an interference matrix S to provide interference mitigation through its use in a coded signal-processing engine (CSPE) to facilitate acquisition, tracking and demodulation of the signal of interest. [0039] It is a further object to provide a method for providing interference mitigation, without requiring knowledge of absolute power, using various methods of constructing the interference matrix S. Interference selected for cancellation may include a plurality of channels from each transmitter, a plurality of transmitters and a plurality of multipath signals. [0040] It is yet another object to provide a method for the cancellation of one or a plurality of channels from one transmitter. [0041] It is yet another object to provide a method for the cancellation of one or a plurality of channels from a plurality of transmitters. [0042] It is yet another object to provide a method for the cancellation of a plurality of channels from one transmitter and a plurality of its multipath signals. [0043] It is yet another object to provide a method for the cancellation of a plurality of channels from a plurality of transmitters and a plurality of multipath signals. [0044] It is yet another object to provide interference mitigation using no knowledge of relative signal amplitude between the channels, absolute power of the channels or the bits transmitted. [0045] It is yet another object to provide interference mitigation using knowledge of the bits transmitted, but no knowledge of relative signal amplitude between the channels or absolute power of the channels. [0046] It is yet another object to provide interference mitigation with knowledge of relative signal amplitude between the channels, but no knowledge of the absolute power of the channels. [0047] It is yet another object to provide interference mitigation by combinations of the above embodiments. [0048] In all of the above embodiments, it is an object to provide an improved method for interference mitigation. [0049] Finally, it is an object of the invention to provide a method for constructing the interference matrix S for use in the CSPE for interference mitigation. [0050] According to one broad aspect of the present invention, there is provided a method for constructing an interference matrix S. The interference matrix, used by the CSPE module in the receiver architecture, may mitigate interference and provide better acquisition, tracking and demodulation of coded signals based on signal to noise ration (SNR) or bit error rate (BER). Furthermore, it may provide for the acquisition, tracking and demodulation of coded signals that were previously concealed by interference. [0051] According to one broad aspect of the present invention, there is provided a method for generating an interference matrix S, the method comprising the steps of: A) Determining the number of active channels N in a transmitter; B) Selecting the transmitters to be canceled and assigning the transmitters sequentially to the variable t; C) Selecting the channels to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; D) Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E) Generating a sequence of column vectors of the form V=st0-n 0-M where st0 represents the line of sight (LOS) interference signal from the channel to be cancelled of the transmitter to be cancelled and M>0 representing the multipaths interference signals of interest; F) Repeating steps B, C, D and E for each column vector of interest over the channel subscript from 0 to n, over the multipath superscript from 0 to M and over the transmitter variable t; and G) Defining the S matrix as S=[V0 V2 . . . Vc] wherein the index denotes the column index c. [0052] According to another broad aspect of the present invention, there is provided an apparatus for generating an interference matrix S, the apparatus comprising: means for determining the number of active channels N in a transmitter; means for electing the transmitters to be canceled and assigning the transmitters sequentially to the variable t; means for electing the channels to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; means for determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; and means for generating a sequence of column vectors of the form V=st0-n 0-M where st0 represents the line of sight (LOS) interference signal from the channel to be cancelled of the transmitter to be cancelled and M>0 representing the multipaths interference signals of interest; wherein the S matrix is defined as S=[V1 V2 . . . Vc] and wherein the index denotes the column index c. [0053] According to another broad aspect of the present invention, there is provided a method for generating an interference matrix S, the method comprising the steps of: A) Determining the number of active channels N in a transmitter; B) Selecting the transmitters to be canceled and assigning the transmitters sequentially to the variable t; C) Selecting the channel to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; D) Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E) Generating a sequence of column vectors of the form V=Sbt0-i 0-M where sbti 0 represents the line of sight (LOS) interference signal from the channel to be cancelled of the transmitter to be cancelled where the knowledge of bits is known and M>0 representing the multipaths interference signals of interest; F) Repeating steps B, C, D and E for each column vector of interest over the channel subscript from 0 to i, over the multipath superscript from 0 to M and over the transmitter variable t; and G) Defining the S matrix as S=[V1 V2 . . . Vc] wherein the index denotes the column index c. [0054] According to another broad aspect of the present invention, there is provided an apparatus for generating an interference matrix S, the apparatus comprising: means for determining the number of active channels N in a transmitter; means for selecting the transmitters to be canceled and assigning the transmitters sequentially to the variable t; means for selecting the channel to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; means for determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; and means for generating a sequence of column vectors of the form V=sbt0-i 0-M where sbti 0 represents the line of sight (LOS) interference signal from the channel to be cancelled of the transmitter to be cancelled where the knowledge of bits is known and M>0 representing the multipaths interference signals of interest; wherein the S matrix is defined as S=[V1 V2 . . . Vc] and wherein the index denotes the column index c. [0055] According to another broad aspect of the present invention, there is provided a method for generating an interference matrix S, the method comprising the steps of: A) Determining the number of active channels N in a transmitter; B) Selecting the transmitters to be canceled and assigning the transmitters sequentially to the variable t; C) Selecting the channels to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; D) Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E) Determining the relative amplitude of the interference signal (θ) corresponding to the channel, transmitter and multipath of interest; F) Multiplying an interference vector s by θ to produce the vector sp; G) Generating a column vector V = s p  ∑ t ∑ n ∑ M   = ∑ t  ∑ n  ∑ M  s p  t n M [0056] where s t represents the line of sight (LOS) interference signal from the channel to be cancelled of the transmitter to be cancelled and M>0 representing the multipaths interference signals of interest; H) Repeating steps B, C, D, E, F and G for each column vector of interest over the channel subscript n, over the multipath superscript M and the transmitter index t; and I) Defining the S matrix as S=[V1 V2 . . . Vc] wherein the index denotes the column index c. [0057] According to another broad aspect of the present invention, there is provided an apparatus for generating an interference matrix S, the apparatus comprising: means for determining the number of active channels N in a transmitter; means for selecting the transmitters to be canceled and assigning the transmitters sequentially to the variable t; means for selecting the channels to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; means for determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; means for determining the relative amplitude of the interference signal (θ) corresponding to the channel, transmitter and multipath of interest; means for multiplying an interference vector s by θ to produce the vector sp; and means for generating a column vector V = s p  ∑ t ∑ n ∑ M   = ∑ t  ∑ n  ∑ M  s p  t n M [0058] where spt0 represents the line of sight (LOS) interference signal from the channel to be cancelled of the transmitter to be cancelled and M>0 representing the multipaths interference signals of interest; wherein the S matrix is defined as S=[V1 V2 . . . Vc] and wherein the index denotes the column index c. [0059] According to another broad aspect of the present invention, there is provided a method for generating an interference matrix S, the method comprising the steps of: A) Determining the number of active channels N in a transmitter; B) Selecting the transmitter to be canceled and assigning the transmitters sequentially to the variable t; C) Selecting the channel to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; D) Determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; E) Generating a sequence of column vectors V; F) Repeating steps B, C, D, E, F and G for each column vector of interest; and G) Defining the S matrix as S=[V1 V2 . . . Vc] wherein the index denotes the column index c. [0060] According to another broad aspect of the present invention, there is provided an apparatus for generating an interference matrix S, the apparatus comprising: means for determining the number of active channels N in a transmitter; means for electing the transmitter to be canceled and assigning the transmitters sequentially to the variable t; means for selecting the channel to be cancelled and assigning the channels sequentially to the variable n, where n is less than or equal to N; means for determining if a multipath signal should be canceled and assigning the multipaths of interest to the respective variable M; and means for generating a sequence of column vectors V; wherein the S matrix is defined as S=[V1 V2 . . . Vc] and wherein the index denotes the column index c. [0061] Other objects and features of the present invention will be apparent from the following detailed description of the preferred embodiment.
BRIEF DESCRIPTION OF THE DRAWINGS [0062] The invention will be described in conjunction with the accompanying drawings, in which: [0063] [0063]FIG. 1 is a graph illustrating the leakage of undesired source codes into the space spanned by the code of interest in a prior art coded communication system; [0064] [0064]FIG. 2 is a graph illustrating the projection of a data vector onto the signal and interference subspaces in accordance with a preferred embodiment of the invention; [0065] [0065]FIG. 3 is a block diagram of the processing architecture of a conventional, baseline PN coded receiver; [0066] [0066]FIG. 4 is a depiction of the architecture for the simultaneous mitigation of both cross and co-channel interference constructed in accordance with a preferred embodiment of the invention; [0067] [0067]FIG. 5 is a depiction of the general, CSPE-enabled receiver constructed in accordance with a preferred embodiment of the invention; [0068] [0068]FIGS. 6a and 6 b are depictions of issues concerning the use of a correlation length that includes multiple modulated signals; [0069] [0069]FIG. 7 is a depiction of the sign determination module for determining the sign of modulated symbols that is constructed in accordance with a preferred embodiment of the invention; [0070] [0070]FIG. 8 is a depiction of the signal amplitude determination module for determining the relative amplitude of modulated symbols that is constructed in accordance with a preferred embodiment of the invention; and [0071] [0071]FIG. 9 is a depiction of symbol misalignment and its implication on signal cancellation associated with the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT [0072] It is advantageous to define several terms before describing the invention. It should be appreciated that the following definitions are used throughout this application. Definitions [0073] Where the definition of terms departs from the commonly used meaning of the term, applicant intends to utilize the definitions provided below, unless specifically indicated. [0074] For the purposes of the present invention, the term “analog” refers to any measurable quantity that is continuous in nature. [0075] For the purposes of the present invention, the term “base-band” refers to a signal with zero frequency, i.e., no carrier signal. [0076] For the purposes of the present invention, the term “base station” refers to a transmitter and receiver that is capable of communicating with multiple mobile units in a wireless environment. [0077] For the purposes of the present invention, the term “baseline finger processor” refers to a processing finger in a baseline receiver that tracks a finger. [0078] For the purposes of the present invention, the term “baseline receiver” refers to a conventional CDMA receiver against which an interference cancellation enabled receiver of the present invention may be compared. [0079] For the purposes of the present invention, the term “basis” refers to a set of basis vectors that completely span the space under consideration. For example, in 3-D space, any three linearly independent vectors comprise a “basis” for the 3-D space, and for 2-D space, any 2 vectors that are linearly independent comprise a “basis.”
[0080] For the purposes of the present invention, the term “bit” refers to the conventional meaning of “bit,” i.e., a fundamental unit of information having one of two possible values; a binary 1 or 0. [0081] For the purposes of the present invention the term “Code-Division Multiple Access (CDMA)” refers to a method for multiple access in which all users share the same spectrum but are distinguishable from each other by a unique code. [0082] For the purposes of the present invention, the term “channel” refers to a logical conduit from a transmitter, distinguished by a unique PN code or code offset, over which a transmitter may broadcast a message. For example, a base station communicating with multiple mobile units, broadcasts to each mobile on a separate channel in order to differentiate messages intended for different mobiles. [0083] For the purposes of the present invention, the term “chip” refers to a non-information bearing unit that is smaller than a bit, the fundamental information bearing unit. Use of spreading codes produce fixed length sequences of chips that constitute bit(s). [0084] For the purposes of the present invention the term “code” refers to a specified sequence of numbers that is applied to a message and is known by the intended recipient of the message. [0085] For the purposes of the present invention the term “Code-Division Multiple Access (CDMA)” refers to a method for multiple access in which all users share the same spectrum but are distinguishable from each other by a unique code. [0086] For the purposes of the present invention, the term “code offset” refers to a location within a code. For example, base stations in certain wireless environments distinguish between each other by their location within a code, often a pseudorandom number (PN) sequence. [0087] For the purposes of the present invention, the term “co-channel interference” refers to the type of interference that occurs when one or more signals, e.g., a line-of-sight signal; interferes with the ability to acquire a second, third or other multipath signal from the same source. [0088] For the purposes of the present invention, the term “correlation” refers to the inner product between two signals scaled by the length of the signals. Correlation provides a measure of how alike two signals are. The operation consists of element-wise multiplication, the addition of the resulting product terms and division by the number of elements. If the result is complex, the magnitude is typically taken of the result. [0089] For the purposes of the present invention, the term “composite interference vector (CIV)” refers to an interference reference vector formed as a linear combination of interference vectors scaled according to each channel's relative amplitude. [0090] For the purposes of the present invention, the term “composite method” refers to a method of cancellation in which composite interference vectors are used for the purpose of interference cancellation. [0091] For the purposes of the present invention, the term “cross-channel interference” refers to the type of interference that results from one source's signals bleeding into the acquisition and tracking channels of another source. [0092] For the purposes of the present invention, the terms “decomposition” and “factorization” refer to any method used in simplifying a given matrix to an equivalent representation. [0093] For the purposes of the present invention, the term “digital” refers to the conventional meaning of the term digital, i.e., relating to a measurable quantity that is discrete in nature. [0094] For the purposes of the present invention, the term “Doppler” refers to the conventional meaning of the term Doppler frequency, i.e., a shift in frequency that occurs due to movement of a receiver, transmitter and/or background that alters the properties of the channel. [0095] For the purposes of the present invention, the term “Dynamically Selected” or “Dynamically Determined” refers to the process by which channels are selected to be included in the construction of the interference matrix based on dynamic criteria. For example, the number of active channels p may be dynamically selected by selecting those that exceed a specified threshold, a subset of the strongest channels based upon the ranking of channels or by other such methods of selection; the multipath of interest M may be dynamically selected based upon a threshold criterion or a subset based upon a ranking procedure; the transmitter of interest t may be dynamically selected based upon a threshold criterion or a subset based upon a ranking procedure; and where the channels to be canceled n is dynamically selected by a threshold criterion or a subset based upon a ranking procedure. [0096] For the purposes of the present invention, the term “finger” refers to a signal processing entity in a receiver that may be capable of tracking and demodulating a signal. A receiver is comprised of multiple fingers, each of which is assigned to either a unique source or a multipath version of an assigned source. [0097] For the purposes of the present invention, the product STS where S denotes a matrix, is called the “Grammian” of S. [0098] For the purposes of the present invention, the term “Global Positioning System (GPS)” refers to the conventional meaning of this term, i.e., a satellite-based system for position location. [0099] For the purposes of the present invention, the term “in-phase” refers to the component of a signal that is aligned in phase with a particular signal, such as a reference signal. [0100] For the purposes of the present invention, the term “interference” refers to the conventional meaning of the term interference, i.e., a signal that is not of interest but that interferes with the ability to detect the signal of interest. Generally, interference is structured noise that is created by other processes that are attempting to do the same thing as with the signal of interest, e.g., other base stations communicating with mobiles, or multipath versions of the signal of interest. [0101] For the purposes of the present invention, the term “linear combination” refers to the combining of multiple signals or mathematical quantities in an additive way with nonzero scaling of the individual signals. [0102] For the purposes of the present invention, a vector is “linearly dependent” with respect to a set of vectors if it may be expressed as an algebraic sum of any of the set of vectors. [0103] For the purposes of the present invention, the term “LOS signal” refers to the line-of-sight signal that follows the direct path from receiver to transmitter. If all signals follow non-direct paths, then the first and likely strongest signal that arrives at the receiver may be referred to as the LOS signal. [0104] For the purposes of the present invention, the term “matched filter” refers to a filter that is designed to facilitate the detection of a known signal by effectively correlating the received signal with an uncorrupted replica of the known signal. [0105] For the purpose of the present invention, the term “matrix inverse” refers to the inverse of a square matrix S, denoted by S−1, that is defined as that matrix which when multiplied by the original matrix equals the identity matrix, I, i.e., a matrix which is all zero save for a diagonal of all ones. [0106] For the purposes of the present invention, the term “misalignment” refers to a situation in which modulated symbols from different transmission channels or sources do not align temporally, i.e., the boundaries of the symbols do not align with each other. [0107] For the purposes of the present invention, the term “mobile” refers to a mobile, wireless unit which functions as a transmitter and receiver, communicating with base stations. [0108] For the purposes of the present invention, the term “modulation” refers to imparting information on a signal. Typically, this is accomplished by manipulating signal parameters, such as phase, amplitude, frequency or a plurality of these quantities. [0109] For the purposes of the present invention, the term “multipath” refers to copies of a signal that travel different paths between the transmitter and the receiver. [0110] For the purposes of the present invention, the term “multipath finger” refers specifically to either an LOS or multipath signal from a single source. Moreover, it may consist of a plurality of channels. For example, an IS-95 multipath finger may consist of the pilot, paging, synchronization channels and a plurality of traffic channels. [0111] For the purposes of the present invention, the term “noise” refers to the conventional meaning of noise with respect to the transmission and reception of signals, i.e., a random disturbance that limits the ability to detect a signal of interest. Specifically, it refers to processes that are attempting to do something different than the signal of interest. Additive noise adds linearly with the power of the signal of interest. Examples of noise in cellular systems may include automobile ignitions, power lines and microwave communication links. [0112] For the purposes of the present invention, the term “norm” refers to a measure of the magnitude of a vector. [0113] For the purposes of the present invention, the term “normalization” refers to a scaling relative to another quantity. [0114] For the purposes of the present invention, two nonzero vectors, e1 and e2 are said to be “orthogonal” if their inner product (defined as e1 Te2, where T refers to the transpose operator) is identically zero. Geometrically, this refers to vectors that are perpendicular to each other. [0115] For the purposes of the present invention, any two vectors are said to be “orthonormal” if, in addition to being orthogonal, each of their norms are unity. Geometrically, this refers to two vectors that, in addition to lying perpendicular to each other, are each of unit length. [0116] For the purposes of the present invention, the term “processing finger” refers to a signal-processing element in a receiver that tracks a single multipath finger and processes a single channel contained in that multipath finger. Namely, each processing finger tracks a LOS or single multipath finger copy of a channel. [0117] For the purposes of the present invention, the term “processing gain” refers to the signal to noise ratio (SNR) of the processed signal to the SNR of the unprocessed signal. [0118] For the purposes of the present invention, the term “projection”, with respect to any two vectors x and y, refers to the projection of the vector x onto y in the direction of a y with a length equal to that of the component of x, which lies in the y direction. [0119] For the purposes of the present invention, the term “pseudorandom number (PN)” sequences refer to sequences that are often used in spread spectrum applications as codes to distinguish between users while spreading the signal in the frequency domain. [0120] For the purposes of the present invention, the term “quadrature” refers to the component of a signal that is 90° out of phase with a particular signal, such as a reference signal. [0121] For the purposes of the present invention, the term “quasi-orthogonal functions (QOF)” refers to a set of covering codes used in cdma2000. QOFs are orthogonal to codes within a set, but between different QOF sets and Walsh codes there exists non-zero correlation between at least one pair of codes from these different sets. [0122] For the purposes of the present invention, the term “rake receiver” refers to an apparatus for combining multipath signals in order to increase the SNR. [0123] For the purposes of the present invention, the term “rank” refers to the dimensionality of the row space and the column space of a matrix. In the CSPE, the number of independent interference vectors included as columns in the matrix S determines the rank of the interference matrix. [0124] For the purposes of the present invention, the term “signal to noise ratio (SNR)” refers to the conventional meaning of signal to noise ratio, i.e., the ratio of the signal to noise (and interference). [0125] For the purposes of the present invention, the term “singular matrix” refers to a matrix for which the inverse does not exist. In a “singular matrix” at least one of the row or column vectors is not linearly independent of the remaining vectors. Moreover, the matrix has a determinant of zero. [0126] For the purposes of the present invention, the term “spread spectrum” refers to a method of using spreading codes to increase the bandwidth of a signal to more effectively use bandwidth while being resistant to frequency selective fading. [0127] For the purposes of the present invention, the term “spreading code” refers to pseudorandom number sequences that are used to increase the width of the signal in frequency space in spread spectrum systems. Examples of spreading codes include: Gold, Barker, Walsh codes, etc. [0128] For the purposes of the present invention, the term “steering vector” refers to a vector that contains the phase history of a signal that is used in order to focus the signal of interest. [0129] For the purposes of the present invention, the term “symbol” refers to the fundamental information-bearing unit transmitted over a channel in a modulation scheme. A symbol may be composed of one or more bits that may be recovered through demodulation [0130] For the purposes of the present invention, the term “transpose” refers to a mathematical operation in which a matrix is formed by interchanging rows and columns of another matrix. For example, the first row becomes the first column; the second row becomes the second column, and so on. Description [0131] In the following detailed description, reference is made to the accompanying drawings that form a part hereof, and in which is shown by way of illustration specific illustrative embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, mechanical, and electrical changes may be made without departing from the spirit and scope of the invention. The following detailed description is, therefore, not to be taken in a limiting sense. [0132] The forward link of a communication system includes a plurality of base stations or sources that are configured for radio communication with one or more receivers or mobile units, such as wireless telephony devices. The mobile units are configured to receive and transmit direct sequence code division multiple access (DS-CDMA) signals to communicate with a plurality of base stations. The base station transmits radio frequency (RF) signals, the RF signals formed by modulating an RF carrier with a baseband signal. The baseband signal is formed by spreading data symbols with a periodic spreading sequence having a period substantially greater than the number of chips per symbol. [0133] In a CDMA system, each source and each receiver is assigned a unique time varying code that is used to spread that source's digital bit stream. These spread signals from all sources are observed by the receiver and the received signal may be modeled as a linear combination of signals from a plurality of sources in additive noise. The weighting of each source is determined from the amplitude of each source's signal and the square of the amplitude represents the transmission power of the source. Signals intended for other receivers appear as structured interference. [0134] The processing architecture of current PN coded receivers is illustrated in FIG. 3. A PN coded signal 300 at radio frequency (RF) is received at receiver antenna 302. Frequency down-conversion from RF to intermediate frequency (IF) is performed by conversion circuit 304 prior to sampling and conversion from analog to digital by an A/D circuit 306. The digital IF signal is passed to a number of processing channels 308, 310 and 312 that may perform signal processing operations of acquisition, tracking and demodulation. It should be appreciated that any number of signal processing channels may be utilized in conjunction with the teachings of the present invention. While the detailed description may include signal acquisition in each receiver finger, the invention is inclusive of receivers that do not perform signal acquisition individually in each finger. For illustrative purposes, only three fingers, 308, 310, and 312 have been illustrated. However, the invention is not limited to that number of fingers, but instead is inclusive of an arbitrary number of processing fingers. Additional processing stages A, B and C may be included in each processing channel. Furthermore, in all descriptions the signals are not decomposed into in-phase (I) and quadrature (Q) components. However, the receiver architectures depicted are inclusive of receivers that perform this decomposition into I and Q and process these representations separately. [0135] The baseline receiver converts the received signal from a radio frequency (RF) signal 300 to either an intermediate frequency (IF) or baseband signal and then discretely samples the digital signal generated by A/D circuit 306. In the detailed description, IF will be inclusive of the case of a zero frequency carrier, namely baseband. For example, the RF reference signal is given as: s RF(t)=cos(ωRF t+m) (5) [0136] where ωRF is the RF angular frequency and m is one of the four possible values of phase in π/4-QPSK. [0137] Effectively, the baseline receiver multiplies received RF signal 300 by a reference carrier to produce a signal composed of an IF or baseband component and a high frequency component. s(t)=s RF(t)*2 cos(ωt)=cos((ωRF−ω)t+m)+cos((ωRF+ω))t+m) (6) [0138] Low-Pass Filtering removes the high frequency component and yields the analog signal defined by: s(t)=cos((ωRF−ω)t+m) (7) [0139] which may be discretely sampled to provide digital data downstream of converter 306. [0140] Within each processing channel shown in FIG. 3, we focus on signal acquisition (314, 316 and 318) and signal tracking functions (320, 322 and 324) within a channel. Note that an alternative embodiment has a single acquisition finger that is shared by all other processing fingers, eliminating the need for an acquisition stage in every processing finger. Blocks 326, 328 and 330 may be provided to perform additional functionality. These functions are presented in FIG. 4 and discussed in detail, below. [0141] In FIG. 4 the architectural layout is presented of a single data processing channel for eliminating both cross-channel and co-channel interference. A single data processing channel is designed to acquire and track the signal from a single source. [0142] In the architecture presented, the single data processing channel consists of multiple fingers 400, 400′ and 400″ where each finger consists of a code generation module 402, 402′ and 402″ (for building S matrix); PS ⊥ modules 404, 404′ and 404″; an acquisition module 410, 410′, and 410″ and a tracking module 412, 412′ and 412″. The tracking module consists of frequency lock loops (FLLs) or frequency estimators 822, 822′ and 822″; phase locked loops or phase estimators (PLLs) 420, 420′ and 420″; as well as delay locked loops or code offset estimators (DLLs) 818, 818′ and 818″. Each processing finger 400, 400′ and 400″ within a channel has the function of acquiring and tracking a distinct multipath signal from the same source. While only three fingers are depicted, this invention is inclusive of an arbitrary number of fingers. [0143] In order to understand how the architecture depicted in FIG. 4 works, the starting assumption may be used that this channel has just been assigned to track the signals from a particular source and that the system is already in the process of acquiring and tracking other sources. [0144] The input data to this channel arrives in the form of a digital IF data stream. Since there are other sources being tracked, replicate code generator module 402, 402′ and 402″ would generate the appropriate S matrix and this matrix is used to create PS ⊥ 404, 404′ and 404″. In this case, the digital IF data stream y is provided as input into PS ⊥ module. The output of this module 404 is fed into acquisition module 410 in the same finger. However, this invention is also inclusive of a single acquisition module architecture, in which the results are provided to a plurality of tracking fingers. [0145] In case the system was not tracking any other sources, then there would be no S matrix generated and therefore no PS ⊥ function. In this case, the input digital IF data stream is passed directly into the acquisition stage. [0146] The acquisition stage identifies the LOS signal and all its multipath copies from the source of interest. If the acquisition stage identifies more than one multipath, then multiple tracking sections are used for each multipath signal individually. The outputs of tracking stages 412, 412′ and 412″ may be the code, phase, and Doppler offsets that are used to build the S matrix in the other channels. [0147] Now suppose that due to co-channel interference, acquisition stage 410 was only able to acquire fewer multipaths than there are available processing fingers, i.e., a plurality of multipath signals are buried in co-channel interference. In that case, the information from the acquisition stage is used to track the signals identified. Information about the code, phase and Doppler offsets of the first signals being tracked are obtained from tracking system 412 and are provided as input into replicate code generator modules 402′ and 402″ and are used in producing a reference code that includes the correct code offset, phase and/or frequency. [0148] As a result, the S matrix built in processing finger 400′ includes the code of the lone signal being processed in finger 400. As a result, finger 400′ will eliminate interference from all the other sources as well as the dominant signal from the source of interest tracked by processing finger 400. Acquisition module 410′ in processing finger 400′ then acquires the multipath signal which is now visible because interference from the dominant signal has been eliminated. That multipath is then tracked in tracking module 412′ and the tracking information may be provided to both finger 400 (to improve its ability to track the dominant signal) as well as to the other fingers, e.g., 400″ to aid in identifying and tracking additional weak multipath signals. The tracking information from all these modules is used to perform Rake combining operation 420 for data demodulation. [0149] Now that the overall system architecture has been discussed, the discussion will focus on the creation of interference matrix S. The interference matrix S is a column matrix composed of interference signal vectors s and is of the form [s1 s2 . . . sp]. It is an N×p matrix where N denotes the segment length of the signal and p is the number of interference signal vectors where p may be dynamically selected. The number of active channels p may be dynamically selected by selecting those that exceed a specified threshold, a subset of the strongest channels based upon the ranking of channels or by other such methods of selection. The determination of the p channels to be included in the construction of interference matrix S may be performed for each symbol (at the symbol rate) or if the cancellation is performed over more than one symbol, the determination may be determined at that rate. Each column vector s is of the form [s(t0) s(t1) . . . s(tN)]T where s(ti) denotes a discrete signal, part of a signal or composite signal, sampled in time. The rank of the matrix is p, where p≧N, to avoid rank deficiency. [0150] In the following discussion, each vector s will be specified with a number of indices, i.e., sijk m, where the subscript i denotes whether the method uses additional information such as bits transmitted or relative power, j is the transmitter identification number, the subscript k is the channel identification number and the superscript m is the multipath identification number (line-of-sight (LOS) is 0 and the multipath signals are 1, 2, 3, and so on based on time of arrival at the receiver). The i subscript is ‘b’ if the method uses knowledge of bits transmitted, ‘p’ if the method uses relative signal amplitude or the subscript is absent for methods that do not use knowledge of bits transmitted or signal amplitude. [0151] The simplest construction of S uses no knowledge of symbols transmitted or relative signal amplitude. However, use of knowledge of the symbols transmitted in the construction of S may be used to resolve ambiguities that may appear due to symbol boundary misalignment. If a symbol changes value in successive intervals it may interfere with the construction of interference matrix S. If the symbols are estimated through relative power computations or by determining the bit(s) transmitted and used in the construction of S then boundary alignment problem between multiple signals is effectively solved. Boundary misalignment problems occur whenever an interference vector is constructed that contains any portion of more than one modulated symbols. [0152] Furthermore, another method for cancellation is the composite method that facilitates rank reduction of S by using information of the relative signal amplitude of the interfering signal channels. The amplitude of each channel is estimated and that estimate is used to scale each replica signal. [0153] Construction of interference matrix S will be categorized into four primary embodiments with secondary embodiments under each. The primary embodiments consist of the construction of interference matrix S for a single transmitter, multiple transmitters, a single transmitter with multipath and multiple transmitters with multipath. Each primary embodiment includes different representations in the sections containing the secondary embodiments. These representations include the following categories: no knowledge of bits transmitted or power; knowledge of bits transmitted, but not of power; and knowledge of relative signal amplitude. Single Transmitter with No Multipath [0154] The simplest embodiment is an interference matrix S constructed for the cancellation of only one transmitter with one or more channels, where each channel is distinguished by a unique PN code. This method for constructing S is discussed in the following subsections. [0155] No Knowledge [0156] Cancellation of one channel without any knowledge of power or bits transmitted is accomplished using the following interference matrix S: S=[sl1 0]
[0257] The first two vectors use no information of bits or power to cancel LOS signal from channel 1 of transmitter one and the first multipath of channel 4 from transmitter two; the next two vectors use bit information to cancel LOS signal of channel 2 from transmitter 4 and the third multipath signal of channel 3 from transmitter three; and the last two vectors use relative signal amplitude information to cancel the sixth multipath of channels 1-10 from transmitter five and the seventh and eighth multipath of channels 3-5, 7, 10 of transmitter seven and the eighth multipath of channels 1-3 for transmitter eight. [0258] It should be appreciated that the above-identified specific examples are provided to illustrate the concepts of constructing interference matrix S, the inventive concept is not limited to the specific example. General CSPE Receiver Architecture [0259] [0259]FIG. 5 provides a generalized CSPE receiver architecture 500. The generation of interference matrix S is conducted in CSPE module 520. Transmitted signal 501 is received by antenna 502 and frequency down-converted and sampled in ADC box 504. Control/logic module 506, depicted as two modules to simplify the connections and for clarity, provides appropriate information to the assignment of fingers 508, 510 and 512 and data flow to and from fingers 508, 510 and 512. For a detailed discussion of control/logic module 506, the reader is referred to U.S. Provisional Patent Application No. 60/412,550, entitled “A Controller for Interference Cancellation in Spread Spectrum Systems,” filed Sep. 23, 2002, and hereby incorporated in its entirety by reference. Searcher module 514 continually searches for signals to acquire. Fingers 508, 510, 512 are preferably identical, arbitrary fingers in the receiver. It should be appreciated that these fingers 508, 510, and 512 are illustrative and only the interactive elements in each finger are illustrated. Preferably, each finger has the structure that is illustrated in exemplary finger 510. A finger processor 516 is what is typically contained in finger 510 of a baseline receiver. It may perform acquisition depending on the receiver architecture and tracks the assigned signal of interest. Power estimation module 518 does power estimation that is used by control/logic module 506 to manage finger assignment, Coded Signal Processing Engine (CSPE) 520 performs the projection operation to remove interference and demodulator 522 demodulates the signal of interest. For a detailed discussion of power estimation module 518, the reader is referred to U.S. Provisional Patent Application No. (TCOM-0008-1), entitled “Method for Channel Amplitude Estimation and Interference Vector Construction,” filed Oct. 15, 2002, which is hereby incorporated by reference in its entirety. The projection operator or the data that has been operated on by the projection operator is sent to control logic module 506 and may be used by subsequent fingers to perform acquisition and/or tracking of signals with the benefit of interference cancellation. As discussed above, both control/logic modules 506 are preferably the same module and are illustrated as separate items for clarity. For a detailed discussion of receiver architectures, the reader is referred to U.S. Provisional Patent Application No. 60/354,093, entitled “A Parallel CPSE Based Receiver for Communication Signal Processing,” filed Feb. 5, 2002; U.S. patent application Ser. No. 10/247,836, entitled “Serial Cancellation Receiver Design for a Coded Signal Processing Engine,” filed Sep. 20, 2002; and U.S. Provisional Patent Application No. 60/348,106, entitled “Serial Receiver Design for a Coded Signal Processing Engine,” filed Jan. 14, 2002; which are hereby incorporated in their entirety by reference hereto. [0260] Correlation Length Issues [0261] Interference signal vectors used in the construction of interference matrix S may, in general, be of an arbitrary segment length N. If the correlation length spans no more than one modulated symbol there is no sign ambiguity and the discussed embodiments hold true. However, if the correlation length spans more than one modulated symbol, there is a sign ambiguity existing between the modulated symbols within the segment. The projection operation, in the context of the CSPE, effectively projects a signal on a subspace orthogonal to an interference subspace that is in the direction of both the interference signal vector and its negative (anti-parallel direction). If the interference vector is composed of more than one modulated symbol then there are more than the two possible directions, i.e., the vector and the negative of the vector. Namely, portions of the vector may change sign, thereby changing the direction of the vector by some amount other than 180 degrees. [0262] For example, an interference vector consisting of two symbols has four possible directions and, in general, a vector containing n modulated symbols may point in 2n different directions, depending on the sign of each modulated symbol. Therefore, interference subspace cancellation, without information regarding the bits transmitted or the transmitted relative amplitude is not possible in general, when the correlation length spans more than one modulated symbol, since there are multiple possible interference subspaces. FIG. 6 depicts interference signals based on one modulated symbol and multiple modulated symbols. [0263] In FIG. 6a, element 600 depicts an arbitrary n-dimensional space with a single modulated symbol vector 602 corresponding to the direction of the projection operator based on a positive modulated symbol in the interference vector. The two possibilities for the true interference vector are 604 and 606, vectors representing a positive and a negative modulated symbol, respectively. Thus, with no information regarding the bit transmitted or relative signal amplitude it is possible to remove an interference signal vector by constructing a projection operator based upon the positive symbol. Element 608 illustrates that the correlation length spans no more than one modulated symbol. [0264] In FIG. 6b, element 610 depicts an arbitrary n-dimensional space with a multiple modulated symbol vector 612 corresponding to the direction of the projection operator based on all positive modulated symbols in the interference vector. The multiple possibilities for the true interference vector include vectors 614, 616, 618, 620, 622, 624, 626 and 628, which represent different combinations of positive and negative modulated symbols comprising the interference vector. Thus, with no information regarding bits transmitted or relative signal amplitude it is not possible to correctly remove the interference signal vector by constructing a projection operator based upon all positive symbols. Therefore, it is necessary to have either bit information or relative signal amplitude information, both of which provide the appropriate sign for each of the modulated symbols contained in the interference vector in order to cancel across symbol boundaries. Element 630 illustrates that the correlation length spans more than one modulated symbol. [0265] Knowing either the bits transmitted (sign of the signal) or the relative signal amplitude of the transmitted signals specifies the interference subspace. The previously discussed embodiments will then hold true with the exception of the no information case. [0266] Estimation of Bits Transmitted [0267] Some embodiments of the invention depend on estimation of the sign of the symbols (bits) transmitted in order to construct an interference matrix S. Correlating the real symbol in the data with a corresponding real reference signal provides an estimate of the bits transmitted. After correlation of the two symbol length vectors, a binary decision is made as to whether the symbol was sent or its inverse (negative). The correlation is performed with a real reference signal in order to determine the symbol sign. Namely, zero is the threshold: if the result is positive, then the symbol used for the reference signal was transmitted, otherwise if the result is negative, the inverse of the symbol was transmitted. This estimate is used in the construction of the corresponding interference vector. Depending on the sign decision, either the symbol used in the correlation is used in the construction of the interference matrix or its inverse. It is possible that channels may be inactive. It may be useful to set a threshold, such that below a particular threshold the channel will be ignored and considered inactive. For example, in IS-95 inactive traffic channels may be ignored by setting the threshold equal to the amplitude of the synchronization channel, which may be the weakest active channel, and only including channels whose amplitude is greater than the threshold. [0268] [0268]FIG. 7 illustrates the location of bit determination module 706 and process flow 700 associated therewith. After an acquisition module 702 and tracking module 704, the data y and a reference signal x0 are passed to bit determination module 706. In bit determination module 706, the data is correlated with all codes used for channelization. For example, in cdmaOne the data and pilot reference signal (Walsh code 0) is passed to bit determination module 706 and the data is correlated with the 63 other Walsh codes. Since IS-95 Walsh codes are based upon a rank 64 Hadamard matrix it is possible to use a Fast Hadamard Transform (FHT) module to perform the correlation. In order to deal with the supplementary channels in cdma2000 a Fast Walsh Transform (FWT) may be used as well. A base-band example (zero carrier frequency) illustrates how the bit determination is performed. The data vector contains two consecutive modulated symbols, 708 and 710, where the brackets denote the symbol boundaries. The vector is correlated symbol by symbol with a reference signal 712. The correlation does not require normalization since a threshold decision is made about zero. However, if there is a bias in the signal the threshold may be displaced from zero. The correlation of modulated symbol 708 and reference signal 712 provides a positive result, implying that the symbol used in constructing reference signal 712 was transmitted (positive). In the present example, the correlation of y1 with X, (−1)(−1)+(1)(1)+(1)(1)+(−1)(−1)+(1)(1), would yield a value of positive 5. The correlation of modulated symbol 710 and reference symbol 712 provides a negative result, implying that the inverse of the symbol used in constructing reference symbol 712 was transmitted (negative). In the present example, the correlation of y2 with X, (−1)(1)+(1)(−1)+(1)(−1)+(−1)(1)+(1)(−1), would yield a value of negative 5. It should be appreciated that the above-identified specific examples are provided to illustrate the concept of estimating the sign of bits transmitted; the inventive concept is not limited to the specific example. [0269] Estimation of Relative Amplitude [0270] Some embodiments of the invention depend on estimation of the relative signal amplitude of the symbols transmitted in order to construct an interference matrix S, particularly the composite method. The methodology is similar to how the estimation of bits transmitted is performed. Correlating the real symbol in the data with a corresponding real reference signal provides an estimate of the relative amplitude of transmission. The correlation is performed with real vectors since it is important to capture the sign of the correlation, which corresponds to the sign of the symbol, along with the amplitude. It is possible that channels may be inactive. It may be useful to set a threshold, such that below a particular threshold the channel will be ignored. For example, in IS-95 inactive traffic channels may be ignored by setting the threshold as the power of the synchronization channel, which is typically the weakest active channel. [0271] [0271]FIG. 8 illustrates the location of bit determination module 806 and process flow 800 associated therewith. This process is similar to process 700. Acquisition module 802 and tracking module 804 provide the data vector y and reference vector x0 to amplitude determination module 806. In module 806 the data is correlated with each of the codes used for channelization and is normalized according to the length of the vectors. For example, in CDMAOne the data is correlated with the other 63 Walsh codes. Since IS-95 Walsh codes are based upon a rank 64 Hadamard matrix it is possible to use a Fast Hadamard Transform (FHT) module to perform the correlation. Vectors 808, 810, 812, 814 and 816 provide a simple base-band example of signal amplitude determination. Data vector 808 is correlated with 4 reference codes 810, 812, 814 and 816 and normalized. For example, yTX1=¼[(2)(1)+(−4)(−1)+(0)(1)+(10)(1)]; yTX2=¼[(2)(1)+(−4)(−1)+(0)(1)+(10)(−1)]; yTX3=¼[(2)(1)+(−4)(1)+(0)(−1)+(10)(−1)]; and yTX4=¼[(2)(1)+(−4)(−1)+(0)(−1)+(10)(1)]. The normalized correlations provide the results 2, −1, −3 and 4, respectively. If these interference vectors are used to construct a composite interference vector, vectors 810, 812, 814 and 816 should be scaled by the results of the correlation prior to summing. Thus, vector 810 is multiplied by 2, vector 812 is multiplied by −1, vector 814 is multiplied by 3 and vector 816 is multiplied by 4. It should be appreciated that the above-identified specific examples are provided to illustrate the concept of estimating the amplitude of bits transmitted; the inventive concept is not limited to the specific example. [0272] Misalignment Issues [0273] Knowledge of either the bits transmitted or the relative amplitude of the signals transmitted allows much greater flexibility in terms of cancellation as previously discussed. However, this induces some dependencies in terms of timing when performing the cancellation operation on signals whose symbol boundaries do not align. In effect, this induces a timing delay between the processing of signals in the order of the cancellation of signals. [0274] [0274]FIG. 9 shows that in order to cancel signal 1 from segment 2 a, reference signals need to be generated for 1 a and 1 b. Furthermore, in order to cancel signals 1 and 2 from segment 3 a, reference signals for 1 a, 1 b, 1 c, 2 a and 2 b need to be generated. This cascading effect leads to inherent timing delay due to symbol misalignment. [0275] A serial approach for cancellation of multiple signals from the received data may be performed by successively canceling signals from the data in a cascading manner. Thus, signal 1 is cancelled from the data y, producing y(1), in order to facilitate the detection of signal 2 where the superscript denotes the number of signals canceled. Similarly, signal 2 may be cancelled from y(1) yielding y(2), allowing for the detection of an even weaker signal 3. For every signal cancellation, the minimum delay between the strongest signal and the weakest is increased by at minimum one correlation length. [0276] Another approach to the cancellation of multiple signals is to “back-calculate” the reference signals, thereby augmenting interference matrix S and performing parallel cancellation. Rather than cancellation in a serial manner, all projection operators thereby operate on the received data y in a parallel sense. However, for each additional cancellation another interference vector is added to interference matrix S. Cancellation of the first base station proceeds in the same manner as described in the serial cancellation method described above. The additional cancellations are performed in a slightly different manner than the serial cancellation method. Rather than canceling the second signal from y(1) the interference reference signal is used in conjunction with the interference reference signal used to create y(1) to form a higher rank interference matrix. Namely, the interference matrix for the first projection operator is of rank 1, the second projection operator is of rank 2, etc. Every cancellation operation is performed on the original y data vector. Note that this method still induces a delay for every signal cancelled. EXAMPLE 1 [0277] This example is of a telecommunications embodiment of the construction of the S matrix and issues involved with the formation of S. These issues are discussed in detail in the following sub-sections. [0278] In the case of wireless communication in the forward link, it is assumed that the mobile does not have any prior knowledge about which channels are active other than the pilot, paging and synchronization channels. Moreover, it does not have any prior knowledge of the relative powers of the various channels including the traffic channels. Specifically in CDMAOne (see IS-95), one could cancel all 64 channels (for complete cancellation of a base station) or a subset of the channels at the appropriate code, Doppler and phase offsets estimated from the pilot channel. The following discussion pertains directly to IS-95, but with some changes, e.g., the addition of QOF codes, supplementary channels and QPSK modulation, it would be possible to easily extend this telecommunications embodiment to cdma2000 and is contemplated within the scope of the present invention. [0279] No Prior Knowledge: [0280] Recall that all the channels in the forward link are perfectly synchronized with the pilot channel in each finger. In order to entirely cancel each base station, all active channels must be cancelled in each LOS and multipath signal. The most straightforward approach to canceling the interference of one base station is to cancel all 64 channels from each signal corresponding to the same source. Under this scheme, for each multipath of the base station one wishes to cancel, the matrix S would be augmented with an additional 64 columns. However, one could also cancel a subset of the channels of one base station and its multipath signals to simplify the computational complexity and exploit the number of inactive channels and channels transmitting at low power relative to the threshold. Similarly, for each base-station and its multipath signals, we could continue to augment the S matrix with interference column vectors. Under the cdma2000 standards, one would also have to include the Quasi Orthogonal Function (QOF) codes, longer Walsh codes, supplementary channels (short Walsh codes) and QPSK modulation for the additional forward link channels. However, all of this is predicated on the correct alignment of the modulated symbols (Walsh symbols boundaries) in the received data. [0281] Pilot only cancellation does not require symbol alignment, but the issue has relevance for all other cancellation methods. Pilot-only cancellation may be performed over arbitrary correlation lengths with no bit or relative amplitude information since there is no information transmitted on the pilot channel and thus no possibility of sign changes between consecutive symbols. Moreover, the pilot channel only cancellation methods have no limitation on correlation length. With misalignment, all the other methods require that cancellation occur on the scale of a Walsh symbol unless sign information or relative amplitude is used, thus the corresponding interference vector may only contain one Walsh symbol. Therefore, the methods that involve cancellation of more than just the pilot channel are limited to only one Walsh symbol for cancellation purposes. [0282] Pilot Only [0283] Pilot only cancellation is accomplished by generating an interference reference vector s or matrix S consisting solely of pilot channel(s). In its simplest form, this consists of one pilot signal from one base station in the interference matrix S. The interference matrix may also include pilot signals from other base stations in the form of additional column vectors. The total number of pilot signals to be cancelled determines the rank of the interference matrix S. [0284] For example, a rank 1 pilot only cancellation matrix is a [N×1] vector containing one pilot signal. A multi-rank pilot only S matrix contains a pilot channel from a different base stations or multipath in each column. The following equation describes the structure of a rank M pilot only S matrix for M base stations. Note that the pilot channel is channel zero. S=[s10 0 s20 0 . . . sM0 0]
[0340] The complexity of the interference matrices generated is limited by the time and computational requirements set forth by the processing capabilities of the mobile unit. [0341] It should be appreciated that the above-identified specific examples are provided to illustrate the concepts of constructing the interference matrix S, the inventive concept is not limited to the specific example. [0342] A number of techniques have been studied for combining signals for improved performance. Some of the techniques include Maximal Ratio Combiner, Ratio-squared Combiner, Post-detection Combiner, Pre-detection Combiner, Selective Combiner and the Rake Receiver. The key idea behind these techniques is to combine the signals from a plurality of channels after scaling the signal in each channel by a quantity that is proportional to the power of that signal, i.e., ensuring that stronger signals are weighted more heavily in the sum, and inversely proportional to the power of the noise in that channel. [0343] The method of the present invention involves canceling all those signals that might create interference (pilot, service channels, data channels and all their multipath signals) prior to performing the combining. The architecture discussed in this application accomplishes this via interference cancellation. [0344] cdma2000 [0345] Additional modifications have to be made to accommodate features and enhancements made to CDMA2000. Quasi-orthogonal (QOF) and concatenated functions may be used after exhausting the Walsh family of orthogonal codes available for traffic channels. Variable length supplementary Walsh codes are also used to attain higher data rates. Specifically, shorter Walsh codes down to 4 chips in length are used to increase the data rate. The limitation on Walsh codes is a length limit of 128 for 1× rates and 256 for 3× rates, except for the auxiliary pilot and auxiliary transmit diversity pilot channels. [0346] Due to the varying lengths of the Walsh codes, it will become increasingly important to have bit or relative amplitude information to facilitate interference cancellation. If the interference matrix contains non-pilot interference vectors composed of different length Walsh codes, it becomes imperative that the vectors of shorter length Walsh codes use either bit or relative amplitude information in order to correctly cancel interference. For information bearing channels it is necessary for no Walsh symbol boundaries to appear in the interference matrix if bit or relative amplitude information is not used. The benefit of canceling over one Walsh symbol is that it is not necessary to know bit or relative amplitude information. However, it may not be feasible to cancel interference over only 4 chip symbols since a longer data record may provide better cancellation properties. [0347] Correlation will have to be accounted for when a mix of QOFs and variable length Walsh codes are used for channelization. While the goal is to minimize the correlation between QOFs and variable length Walsh codes, the codes are truly not orthogonal and there is a nonzero correlation. Even with perfect time alignment QOFs are not orthogonal to the original Walsh code set. Within a QOF set, orthogonality is preserved, but there is a correlation between code vectors from different sets. A critical difference is that when QOFs are used, channels within the same finger may no longer be orthogonal to each other. Therefore, the present invention may be applied to cancellation of channels within a single finger. [0348] For example, to acquire, track and demodulate an arbitrary channel, for example, channel 25, in a finger that uses Walsh codes and QOFs it may be necessary to cancel all channels with a non-zero correlation. Without loss of generality, consider the channels with nonzero correlation relative to channel 25 to be channels 1-10 and 32. The following interference matrix S may be constructed for a LOS finger: S=[s11 0 s12 0 . . . s110 0 s132 0]
[0349] Depending on variable length Walsh codes and the interference vector length it may be necessary to use bit or relative amplitude information when constructing the interference matrix. [0350] It should be appreciated that the above-identified specific examples are provided to illustrate the concepts of constructing the interference matrix S, the inventive concept is not limited to the specific example. [0351] Relative Power Through the Standards Committee [0352] An alternative method for relaying the relative powers (which are very accurately known at the base-station), which is not in the current standards, is to have the base-station broadcast the relative powers through the broadcast channel or some other channel. The mobile may receive this information from the appropriate channel and build the most accurate interference subspace vector possible. The mobile may build the matrix S with these vectors and then proceed to cancel the interference. [0353] Interference Invariant Diversity Combining [0354] A number of techniques have been studied for combining signals for improved performance. Some of the techniques include Maximal Ratio Combiner, Ratio-squared Combiner, Post-detection Combiner, Pre-detection Combiner, Selective Combiner and the Rake Receiver. The key idea behind these techniques is to combine the signals from multiple channels after scaling the signal in each channel by a quantity that is proportional to the amplitude of that signal, i.e., ensuring that stronger signals are weighted more heavily in the sum, and inversely proportional to the amplitude of the noise in that channel. [0355] The approach of the present invention involves canceling all those signals that might create interference (pilot, paging, synchronization, traffic channels, data channels, all other channels and their multipath copies) prior to performing the raking. The architecture discussed here accomplishes this interference cancellation. [0356] Although the present invention has been fully described in conjunction with the preferred embodiment thereof with reference to the accompanying drawings, it is to be understood that various changes and modifications may be apparent to those skilled in the art. Such changes and modifications are to be understood as included within the scope of the present invention as defined by the appended claims, unless they depart therefrom. Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS5995499 *Oct 5, 1995Nov 30, 1999Nokia Telecommunications OySignal detection in a TDMA systemUS6002727 *Oct 16, 1997Dec 14, 1999Matsushita Electric Industrial Co., Ltd.Interference signal cancellation systemUS6127973 *Apr 18, 1997Oct 3, 2000Korea Telecom Freetel Co., Ltd.Signal processing apparatus and method for reducing the effects of interference and noise in wireless communication systemsUS6131013 *Jan 30, 1998Oct 10, 2000Motorola, Inc.Method and apparatus for performing targeted interference suppressionUS6201799 *May 1, 1997Mar 13, 2001Lucent Technologies, IncPartial decorrelation for a coherent multicode code division multiple access receiverUS6222828 *Oct 30, 1996Apr 24, 2001Trw, Inc.Orthogonal code division multiple access waveform format for use in satellite based cellular telecommunicationsUS6256336 *Jun 13, 1997Jul 3, 2001Siemens AktiengesellschaftMethod and apparatus for detecting items of information transmitted according to the DS-CDMA principle in a receiver apparatusUS6282231 *Dec 14, 1999Aug 28, 2001Sirf Technology, Inc.Strong signal cancellation to enhance processing of weak spread spectrum signalUS6304618 *Aug 31, 1998Oct 16, 2001Ericsson Inc.Methods and systems for reducing co-channel interference using multiple timings for a received signalUS6324159 *May 6, 1999Nov 27, 2001Sirius Communications N.V.Method and apparatus for code division multiple access communication with increased capacity through self-noise reductionUS6377636 *Nov 2, 1999Apr 23, 2002Iospan Wirless, Inc.Method and wireless communications system using coordinated transmission and training for interference mitigationUS6459693 *Jul 7, 1999Oct 1, 2002Samsung Electronics, Co., Ltd.Device and method for cancelling code interference in a CDMA communication systemUS20030053524 *Aug 31, 2001Mar 20, 2003Dent Paul W.Interference cancellation in a CDMA receiving systemUS20030092456 *Jul 26, 2001May 15, 2003Dent Paul WilkinsonCommunication system employing transmit macro-diversity* Cited by examinerReferenced byCiting PatentFiling datePublication dateApplicantTitleUS7626542 *Feb 23, 2006Dec 1, 2009Data Fusion CorporationMitigating interference in a signalUS7738534Dec 5, 2006Jun 15, 2010Telefonaktiebolaget Lm Ericsson (Publ)Multi-transmitter interference suppression using code-specific combiningUS7751463Dec 5, 2006Jul 6, 2010Telefonaktiebolaget Lm Ericsson (Publ)Method and apparatus for suppressing interference based on channelization code power estimation with bias removalUS7995641Nov 6, 2007Aug 9, 2011Telefonaktiebolaget Lm Ericsson (Publ)Method and apparatus for code power parameter estimation for received signal processingUS8036312 *Mar 30, 2007Oct 11, 2011Freescale Semiconductor, Inc.System and method for determining signal phaseUS8406280 *Mar 18, 2009Mar 26, 2013Argon St, Inc.System and method for mitigating severe multipath interference for geolocation and navigationUS8737451 *Mar 9, 2007May 27, 2014Qualcomm IncorporatedMMSE MUD in 1x mobilesUS9001867 *Feb 13, 2013Apr 7, 2015Qualcomm IncorporatedMethod and apparatus for managing interference in full-duplex communicationUS9304184Feb 22, 2013Apr 5, 2016The Boeing CompanySystem and method for mitigating severe multipath interference for geolocation and navigationUS9363125 *Jul 2, 2015Jun 7, 2016Commissariat A L'energie Atomique Et Aux Energies AlternativesBlind phase tracking method for a filter bank multi-carrier (FBMC)receiverUS20070104254 *Dec 5, 2006May 10, 2007Bottomley Gregory EMulti-Transmitter Interference Suppression Using Code-Specific CombiningUS20080130719 *Dec 5, 2006Jun 5, 2008Bottomley Gregory EMethod and Apparatus for Suppressing Interference Based on Channelization Code Power Estimation with Bias RemovalUS20080219325 *Mar 9, 2007Sep 11, 2008Qualcomm IncorporatedMMSE MUD IN 1x MOBILESUS20080240292 *Mar 30, 2007Oct 2, 2008Freescale Semiconductor, Inc.System and method for determining signal phaseUS20090116455 *Nov 6, 2007May 7, 2009Bottomley Gregory EMethod and Apparatus for Code Power Parameter Estimation for Received Signal ProcessingUS20090141775 *Feb 23, 2006Jun 4, 2009Data Fusion CorporationMitigating interference in a signalUS20130051434 *Mar 18, 2009Feb 28, 2013Argon St, Inc.System and method for mitigating severe multipath interference for geolocation & navigationUS20140226538 *Feb 13, 2013Aug 14, 2014Qualcomm IncorporatedMethod and apparatus for managing interference in full-duplex communication* Cited by examinerClassifications U.S. Classification375/148, 375/E01.025, 375/285International ClassificationH04B7/26, H04B1/10, H04B1/707, H04B1/7117, H04B1/7107, H04B1/7105Cooperative ClassificationH04B1/7105, H04B1/7107, H04B1/7117European ClassificationH04B1/7105, H04B1/7107, H04B1/7117Legal EventsDateCodeEventDescriptionFeb 19, 2003ASAssignmentOwner name: TENSORCOMM INCORPORATED, COLORADOFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:THOMAS, JOHN K.;OLSON, ERIC S.;REEL/FRAME:013785/0880Effective date: 20021202Apr 8, 2010ASAssignmentOwner name: TENSORCOMM, INC.,COLORADOFree format text: CORRECTIVE ASSIGNMENT TO CORRECT THE APPLICATION NUMBER PREVIOUSLY RECORDED ON REEL 013785 FRAME 0880. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNORS:THOMAS, JOHN;OLSON, ERIC;SIGNING DATES FROM 20091218 TO 20100331;REEL/FRAME:024202/0414Apr 9, 2010ASAssignmentOwner name: RAMBUS, INC.,CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TENSORCOMM, INC.;REEL/FRAME:024202/0630Effective date: 20100405Owner name: RAMBUS, INC., CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:TENSORCOMM, INC.;REEL/FRAME:024202/0630Effective date: 20100405Jul 19, 2010ASAssignmentOwner name: RAMBUS INC., CALIFORNIAFree format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE INFORMATION PREVIOUSLY RECORDED ON REEL 024202 FRAME0630. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:TENSORCOMM, INC.;REEL/FRAME:024706/0648Effective date: 20100405Oct 4, 2010FPAYFee paymentYear of fee payment: 4Mar 14, 2014SULPSurcharge for late paymentApr 9, 2014ASAssignmentOwner name: III HOLDINGS 1, LLC, DELAWAREFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RAMBUS INC.;REEL/FRAME:032642/0115Effective date: 20140317Sep 24, 2014FPAYFee paymentYear of fee payment: 8RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services