1. Field of the Invention
The invention generally relates to the field of communications. More specifically the invention is related to interference suppression for use in coded signal communications, such as Code Division Multiple Access (“CDMA”) communications, Wideband CDMA (“WCDMA”) communications, Global Positioning System (“GPS”) communications, Broadband CDMA communications, Universal Mobile Telephone Service (“UMTS”) communications and combinations thereof.
2. Discussion of the Related Art
In CDMA telephony, coded signals are used to communicate between devices. Some typical CDMA telephony systems use combinations of “spreading codes” and “covering codes” to encode signals. These encoded digital signals are used to convey digital voice, data and/or other forms of digital communication. As used herein, spreading codes generally refer to “on-time” pseudorandom number, or pseudo-noise (“PN”), sequence codes. The particular timing alignment of a selected signal may be used in the extraction of the data from the assigned signal tracked within a receiver. Spreading codes and covering codes are known to those skilled in the art.
A spreading code encodes a data signal by applying the noise-like code sequence to the data at a rate faster than that of the data. For example, the spreading code is applied to the data such that there are multiple “chips” of the code for any given element of data. Such an application of the spreading code is commonly referred to as direct sequence spreading of the data. A short code is an example of a spreading code. Chips and their associated chip rates are known to those skilled in the art.
A covering code further encodes the signal to provide “channelization” of a signal. For example, each unique covering code as it is applied to a spread signal provides a unique communication channel for the spread signal. This channelization allows a signal to be divided into a number of individual communication channels that may be either shared or assigned to specific users. Covering codes typically include families of codes that are either orthogonal (e.g., Walsh codes) or substantially orthogonal (e.g., Quasi Orthogonal Function codes, or “QOF” codes). Such codes are known to those skilled in the art.
Interference may degrade signal detection, tracking and processing capabilities of a receiver by hindering the reception of a selected signal. In CDMA communications, for example, interference can be the result of receiving one or more unwanted signals simultaneously with a selected signal. These unwanted signals can be coded signals having properties that are similar to that of the selected signal. Because of the non-orthogonality of the codes and the corresponding energy of the signals, the coded signals often have a tendency to interfere with one another and disrupt reception of the selected signal. The lack of orthogonality in the codes used to encode the transmitted signals results in leakage between signals. Examples of such interference include “cross-channel” interference and “co-channel” interference.
Co-channel interference may include multipath interference from the same transmitter, wherein separate transmission paths follow unique routes that cause an interfering signal path and a selected signal path to differentially arrive at a receiver, thereby hindering reception of the selected path. Cross-channel interference may include interference caused by signal paths of other transmitters hindering the reception of the selected signal path. Such interference can interfere with data recovery as long as it is present in any substantial form. Interference is a continuing problem in communications, particularly in CDMA telephony.
The present invention provides systems and methods for interference matrix construction. Such an interference matrix may be used to generate a cancellation operator that when applied to a signal may substantially cancel, or remove, certain interfering signals. In one embodiment of the invention, a system comprises an interference selector configured for selecting one or more interferers for interference cancellation. The system also comprises a matrix generator communicatively coupled to the interference selector and configured for receiving one or more interferers selected by the interference selector. The matrix generator is also configured for generating a matrix having one or more vectors. Each vector comprises elements of at least one of the selected interferers.
In one embodiment, the interference selector comprises a signal path selector and a channel selector. The channel selector may select certain channels from signal paths selected by the signal path selector for cancellation. For example, each signal path may have one or more associated channels. Further, each unique signal path may correspond to any of a unique base station or multipath. Once the interference selector provides a selected number of signal paths to the channel selector, the channel selector may select certain channels from the selected signal paths based on a predetermined criteria, such as thresholds and/or known processing requirements, as a matter of design choice (e.g., select for cancellation up to a predetermined number of channels that exceed a threshold). These selected channels may be used as inputs in the form of vectors in the construction of an interference matrix. Those skilled in the art should readily recognize that the process of selecting a signal path for cancellation and selecting a channel for cancellation may be done in any order.
For use in a typical CDMA telephony system, the interference matrix may be constructed from one or more vectors using 1) the covering code (e.g., a Walsh code or a QOF code) of a channel, 2) the on-time spreading code (e.g., the short code) corresponding to an associated signal path(s) as obtained or produced from processing fingers tracking those signal paths and 3) phase estimates also obtained or produced from the processing fingers tracking those signal paths. Once the interference matrix is constructed, the cancellation operator may be generated therefrom to subsequently cancel the selected interfering signals through the application of the cancellation operator to an input signal.
In constructing the vectors for the interference matrix, codes (i.e., short codes, Walsh codes and/or QOF covering codes) of a particular data symbol are typically used. For example, in a CDMA system using 128-chip Walsh codes, there may be 128 chips that are used to encode a single symbol of a channel. These code chips may be used in the construction of a vector in an interference matrix. The interference matrix can also be used to cancel these interfering channels as well as interferers employing shorter Walsh codes because, among other reasons, longer Walsh codes, such as the 128-chip Walsh codes, may be generated from a concatenation of so-called short Walsh codes (e.g., as can be seen from the generation of well known Hadamard matrices). These shorter Walsh codes are often referred to as supplemental channel codes and are used as higher rate data channels.
While interference vectors are described as being generated from the chips of one symbol, chips from multiple symbols or even sub symbols may be used. Accordingly, the invention is not intended to be limited to any particular number of chips or symbol lengths. A maximum length of a symbol in chips of one particular coding scheme (e.g. as specified by its Radio Configuration, or “RC” in cdma2000) is referred to as the nominal length. Thus, cancellation can be performed over the nominal length, some sub nominal length or a longer length. Additionally, these signals may be oversampled and the vectors, therefore, may comprise samples. Choice of oversampling rates may be a design choice associated with the requirements of the code tracking.
Optional features of the vector construction include the use of sign information and/or amplitude information of the transmitted symbols. The sign information as used herein is the estimated sign value of a symbol. The amplitude information as used herein is the estimated amplitude value of a channel selected for cancellation. This estimated amplitude may be an amplitude estimate relative to amplitudes of other channels selected for cancellation (e.g. the estimated amplitudes of the channels need only be substantially proportional to the received amplitudes). Alternatively, the estimated amplitude may be an absolute received amplitude. The amplitude estimates include estimated sign information. The code elements in the interference vector (i.e., the vector elements) may be multiplied with this optional information to impose the information upon the vector for improved cancellation.
With the options of sign information and amplitude information, interference matrix construction can be implemented in a variety of manners. For example, any given interference matrix may include one or more interference vectors constructed from code elements and phase estimates alone and/or interference vectors constructed from code elements, phase estimates with sign information and/or amplitude information.
Another feature allows for the generation of a “composite” interference vector (“CIV”). The CIV is a combination of a plurality of interference vectors employing the relative or absolute amplitude information of the vectors. For example, when constructing a matrix comprising a plurality of vectors as described above (i.e., one vector per channel), amplitude information of the symbols for any given channel may be imposed on the code elements of the vector. The elements of these amplitude imposed vectors may be summed using standard vector addition techniques to form a single CIV; although, alternative methods, such as those described in the '829 application, may be used. Effectively, the CIV is a linear combination of a plurality of interference vectors in which the weighting of the vectors is specified by amplitude estimates that include estimated sign. Such composition of interference vectors can improve performance by decreasing the number of computations in the generation of the cancellation operator. The number of vectors in a matrix can be reduced (e.g., a matrix can be reduced to a single CIV comprising information from multiple interfering channels and/or signal paths), thereby decreasing the rank of the matrix.
The matrix constructions shown and described herein are not intended to be limited to any particular embodiment. Matrices may be formed from various combinations of the vectors described to include even multiple CIVs. The projection operators generated from these matrices can be used to cancel selected interference component(s) from a digital signal conveying at least one selected interference component and a desired channel (such as a received signal y or a previously interference cancelled signal y′). The projection operators can also be generated from these matrices to cancel a selected interference component(s) from a reference signal (such as a reference code x or even a previously interference cancelled reference code x′). Moreover, the embodiments described herein can be implemented with either of a parallel signal cancellation embodiment (e.g., the '777 application) or a serial signal cancellation embodiment (e.g., the '836 application).
In one embodiment of the invention, a system comprises: an interference selector configured for selecting one or more interferers for interference cancellation; and a matrix generator communicatively coupled to the interference selector and configured for receiving selected said one or more interferers from the interference selector and for generating a matrix having one or more vectors, wherein each vector comprises elements of at least one of the selected said one or more interferers.
In another embodiment of the invention, the system further comprises a processor communicatively coupled to the matrix generator and configured for using the matrix to generate a cancellation operator.
In another embodiment of the invention, the cancellation operator substantially comprises the following form:
Ps⊥=I−S(STS)−1ST,
where Ps⊥ is the cancellation operator, I is an identity matrix, S is the matrix and ST is a transpose of the matrix.
In another embodiment of the invention, the system further comprises an applicator configured for applying the cancellation operator to an input signal to substantially cancel the selected said one or more interferers from the input signal and to generate a substantially interference cancelled signal.
In another embodiment of the invention, the input signal is one of a received digital signal or a reference code.
In another embodiment of the invention, the system is configurable with a receiver to provide a substantially interference cancelled received signal to a processing finger of the receiver.
In another embodiment of the invention, the receiver is configurable with a base station or a handset.
In another embodiment of the invention, the system further comprises a phase estimator configured for estimating phase information of the one or more interferers for application to the elements of the one or more vectors, wherein each vector has a phase estimate imposed thereon.
In another embodiment of the invention, the system further comprises a sign detector configured for detecting sign information of the one or more interferers for application to the elements of the one or more vectors.
In another embodiment of the invention, the system further comprises an amplitude estimator configured for estimating amplitude information of the one or more interferers for application to the elements of the one or more vectors.
In another embodiment of the invention, the estimated amplitude information is estimated relative amplitude information.
In another embodiment of the invention, the estimated amplitude information is estimated absolute amplitude information.
In another embodiment of the invention, the interference selector is further configured for selecting the one or more interferers based upon a threshold.
In another embodiment of the invention, the interference selector is further configured for selecting the one or more interferers based upon a predetermined number.
In another embodiment of the invention, at least one of the vectors comprises a nominal length number of elements.
In another embodiment of the invention, the elements comprise covering code elements and spreading code elements.
In another embodiment of the invention, the elements further comprise estimated phase elements.
In another embodiment of the invention, the matrix generator is further configured for combining at least two of the one or more vectors to generate a composite vector.
In another embodiment of the invention, the interference selector comprises a signal path selector configured for selecting one or more signal paths, wherein said one or more interferers comprise the one or more signal paths.
In another embodiment of the invention, the interference selector further comprises a channel selector communicatively coupled to the signal path selector and configured for selecting one or more channels for channel cancellation from the one or more signal paths.
In another embodiment of the invention, at least one of the vectors comprises elements from a sub-symbol, a single symbol or multiple symbols.
In another embodiment of the invention, the system is configurable as an Application Specific Integrated Circuit, a Digital Signal Processor, a Field Programmable Gate Array or an Advanced RISC Machine.
In another embodiment of the invention, the system is configurable with a handset and/or a base station.
In one embodiment of the invention, a system comprises: a channel selector configured for selecting two or more channels for channel cancellation; and a matrix generator communicatively coupled to the channel selector and configured for receiving selected said two or more channels from the channel selector and for generating a matrix having a vector comprising elements from at least two of the selected said two or more channels.
In one embodiment of the invention, an interference matrix comprises: a vector of elements, wherein each element is a composite of elements from selected interfering channels and wherein the interference matrix is used to substantially remove the selected interfering channels from a received signal or a reference signal.
In another embodiment of the invention, the vector is a composite vector and wherein the elements from the selected interfering channels are summed elements of two or more interfering channels.
In one embodiment of the invention, a receiver comprises: circuitry, comprising an analog to digital converter configured for converting a received analog signal into a digital signal; and a processing engine communicatively coupled to the circuitry and comprising an interference selector configured for selecting one or more interfering signals for cancellation, and a matrix generator communicatively coupled to the interference selector and configured for receiving selected said one or more interfering signals from the interference selector and for generating a matrix having a vector comprising elements from at least two of the selected said one or more interfering signals, wherein the matrix is used to generate a cancellation operator that substantially cancels said at least two of the selected said one or more interfering signals from the digital signal.
In another embodiment of the invention, the selected said one or more interfering signals comprise a Code Division Multiple Access signal, a Wideband Code Division Multiple Access signal, a Global Positioning System signal and/or a Universal Mobile Telephone Service signal.
In one embodiment of the invention, a method comprises: selecting one or more channels for cancellation from a first signal path; generating at least one vector comprising elements from at least one selected said one or more channels; and generating a matrix from said at least one vector, wherein the matrix is used for generating a cancellation operator.
In one embodiment of the invention, the method further comprises generating a cancellation operator from the matrix, wherein the cancellation operator is used to substantially cancel the selected said one or more channels from an input signal.
In one embodiment of the invention, the method further comprises generating a composite interference vector.
In one embodiment of the invention, the method further comprises estimating phase of the first signal path in response to selecting the one or more channels, wherein the one or more channels are associated with the first signal path via an on-time PN code.
In one embodiment of the invention, the method further comprises estimating a relative amplitude or an absolute amplitude of said at least one or more channels in response to selecting the one or more channels.
In one embodiment of the invention, the method further comprises estimating a sign of said at least one selected said one or more channels in response to selecting the one or more channels. The sign of said at least one selected said one or more channels is the sign of a symbol.
In one embodiment of the invention, the method further comprises selecting one or more channels for cancellation from a second signal path in response to selecting the one or more channels for cancellation from the first signal path.
In one embodiment of the invention, the method further comprises estimating phase of second signal path.
In one embodiment of the invention, the method further comprises imposing the estimated phase on vector elements associated with the second signal path.
In one embodiment of the invention, the method further comprises estimating a relative amplitude or an absolute amplitude of selected said one or more channels from the second signal path in response to selecting the one or more channels for cancellation.
In one embodiment of the invention, the method further comprises imposing the relative amplitude or the absolute amplitude on the vector elements of said at least one vector.
While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof have been shown by way of example in the drawings and are herein described in detail. It should be understood, however, that it is not intended to limit the invention to the particular form disclosed, but rather, the invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention as defined by the claims.
With reference to
Additionally, interference selector 101 receives reference signals x, which comprise other information, such as on-time spreading codes, of the interfering signals. This information can either be used by matrix generator 102 to generate matrix 103 and/or it can be used to assist in the selection of the interfering signals by identifying certain features (e.g., amplitude) of the interfering signals. For example, matrix generator 102 may construct one or more vectors 104, wherein each vector comprises code elements of a selected interfering signal. These vectors can be constructed directly from the reference signals x (i.e., wherein x represents code elements from stored or generated codes) as selected by the interference selector 101 being assisted by the reference signals x. Examples of codes that are representative of the reference signals x include spreading codes (e.g., short codes) and/or covering codes (e.g., Walsh codes and/or QOF codes).
Matrix generator 102 can impart other information from these interfering signals onto the elements of the vectors 104. For example, each of these interfering signals comprises amplitude information, sign information and/or phase information. Matrix generator 102 therefore may impart one or more of these types of information onto the vector elements (labeled v1 . . . vN) themselves. For example, each vector element may have one or more of these types of information imparted on it over each symbol, multiple symbols or over one sub symbol. If the vector elements comprise more than one symbol, each symbol or sub symbol of vector elements may have a different value imparted on it. The matrix 103 resulting from this construction can be used to generate a cancellation operator, which substantially cancels, or removes, these interfering signals from the received signal y.
In one embodiment of the invention, matrix 103 is used to generate a projection operator which projects a signal onto a subspace that is substantially orthogonal to a subspace of the interfering signals. In such an embodiment, the projection operator is generated according to the following form:
Ps⊥=I−S(STS)−1ST, (Eq. 1)
wherein Ps⊥ is the projection operator, I is an identity matrix, S is the interference matrix 103 and S is a transpose of the interference matrix.
In this embodiment, CSPE 200 comprises interference selector 201 and matrix generator 202 configured in an arrangement similar to that of the matrix generation system 100 of
A signal path in CDMA telephony is typically a set of signals encoded with a certain PN code sequence that corresponds to a single ray emanating from a transmitter. The PN code sequence has a particular timing alignment with respect to other signal paths. For example, in co-channel interference, a signal path of an interfering signal may be differentially aligned in time (i.e., having a different location in the PN code sequence) and/or varied in phase with respect to a selected signal because the interfering signal is a multipath signal corresponding to the same transmitter as the selected signal. In cross-channel interference, a signal path of an interfering signal may be differentially aligned in time and/or varied in phase with respect to the signal path of a selected signal because, among other reasons, the interfering signal and the selected signal emanate from unique base stations, each having a designated PN code timing offset.
The set of signals corresponding to a signal path (i.e., those associated with a certain PN code sequence or offset) are typically referred to as channels. Signals are often further encoded with a covering code to provide individual channels for a given PN code sequence. For example, in CDMA communication systems, each transmitted signal is typically encoded with either a unique covering code (e.g., Walsh code or QOF code) in addition to the PN code shared by each channel of a signal path in order to differentiate between different logical channels. Accordingly, the use of a unique covering code makes the channels among the same signal path distinct and allows recovery of each channel's transmitted data.
Path selector 205 selects an interfering signal path for matrix 203 construction based on the PN code of the signal path. Path selector 205 may select one or more of the signal paths based on a control determination by CSPE 200 or some other control functionality external to CSPE 200. Preferably, once the signal paths are selected, the channel selector 206, communicatively coupled to path selector 205, selects one or more interfering channels for cancellation from selected signal paths. Channel selector 206 may select one or more of these interfering channels for matrix 203 construction based on the covering codes of those channels and/or according to some predetermined criteria, such as amplitude of each channel. A channel selected for processing may experience interference from other channels within the same signal path if the covering codes are not completely orthogonal. This may occur when a transmitter employs different families of QOFs or combinations of Walsh codes and QOFs. As such, these interfering channels may be selected for matrix 203 construction and, thus, for cancellation. Those skilled in the art should readily recognize that selection order of channels or signal paths is not an essential feature of the invention.
To substantially cancel the interfering signals, CSPE 200 generates a cancellation operator from selected interfering signals (e.g., signal paths and/or channels) and applies the cancellation operator to either a received signal y or a selected reference signal x. This application of a cancellation operator generates an output cancelled signal (i.e., labeled OCS) wherein the selected interfering signal paths are substantially cancelled from the received signal y and/or reference signals x. In one embodiment of the invention, the cancellation operator is a projection operator that projects the received signal y or a selected reference signal x onto a subspace substantially orthogonal to the interfering signals, as described in Eq. 1. For example, the application of a cancellation operator to a received signal may be performed as follows:
yA=PsA⊥y, (Eq. 2)
where yA is the output cancelled signal with the signal path A substantially canceled from the received signal and where PsA⊥ is the projection operator generated from a matrix comprising information such as code elements from signal path A.
To generate the cancellation operator, matrix generator 202 generates an interference matrix 203 based on selected signal paths and channels. For example, to cancel certain channels within a selected signal path, covering code elements of the channels and their associated short code elements may be used in the construction of vectors 204 in the interference matrix 203. Although, those skilled in the art should readily recognize that other signal paths, channels or combinations thereof could be used as vectors 204 to the interference matrix 203. As matrix generator 202 constructs interference matrix 203, matrix generator 202 may also provide other information for the construction of the vectors 204, such as sign estimates, amplitude estimates (e.g., relative and/or absolute amplitude estimates) and/or phase estimates.
Matrix generator 202 may generate one or more vectors 204 for matrix 203, wherein each vector comprises elements that represent components of the interfering codes (e.g., short codes and covering codes). As one example, vector 204 may include elements representing a unique code of an interfering signal path as well as a unique code of a single interfering channel. In one embodiment, the vector 204 could comprise a composite interference vector of two or more vectors with each of the composite vectors representing an interfering signal path and channel combination with imparted amplitude information. Further, the vector 204 can be multiplied by a phase estimate of a corresponding selected interfering signal path and may even have additional information, such as the previously mentioned sign estimates, imparted on the vector as well exemplary phase estimation, amplitude estimation and sign estimation are described below in
Since multiple vectors 204 may each be used to represent multiple interfering signals, ach matrix 203 may be generated to cancel a plurality of interfering signal path and channel combinations. For example, matrix 203 may include a vector representing a channel of one interfering signal path A1 and another vector representing a channel of another interfering signal path A2. Accordingly, matrix 203 may be constructed to generate a cancellation operator that substantially cancels a plurality of channels associated with signal path A1 as well as a plurality of channels associated with signal path A2. The channels included in the generation of the cancellation operator may be channels that meet a predetermined criterion. Moreover, at least one vector of matrix 203 may represent one or more channels of a single signal path A.
As an alternative example, matrix 203 may comprise one or more vectors wherein each vector comprises composite elements of a selected signal path and selected interfering channels of that path. In such an example, elements representing a plurality of channels from signal path A1 may be combined to form a composite interference vector 204 of the selected interfering channels of signal path A1. Similarly, a plurality of channels from the signal path A2 may be combined to form a composite interference vector 204 of the selected interfering channels of signal path A2. Each composite interference vector 204 may therefore allow for the cancellation of channels corresponding to an interfering signal path with a single vector. Although described through examples, the invention is not intended to be limited to these examples; rather the invention is only intended to be limited by the claims and their equivalents.
Once matrix 203 is constructed, processor 207 processes the matrix to generate a cancellation operator as described above in Eq. 1. Processor 207 then transfers the cancellation operator to applicator 208 for application to an input signal (e.g., a received signal y or a reference signal x). Applicator 208 applies the cancellation operator to the input signal to substantially cancel the interfering signals and generate the output canceled signal OCS (e.g., according to Eq. 2).
Although described in great detail with respect to a particular embodiment, the invention is not intended to be limited to the embodiment shown and described herein. For example, CSPE 200 may include a plurality of matrix generators 202, processors 207 and/or applicators 208. A processor may be, although not limited to, a general purpose processor, an Application Specific Integrated Circuit (“ASIC”), a Digital Signal Processor (“DSP”), a Field Programmable Gate Array (“FPGA”), hardware, software, firmware and/or combinations thereof. The processor may be operably controlled via hardware, software and/or firmware instructions to generate the cancellation operator. Those skilled in the art are familiar with processors, ASICs, DSPs, FPGAs, software, firmware and their various combinations, which may be used to implement the embodiments described and shown herein. Moreover, those skilled in the art should readily recognize that the described CSPE 200 may, in general, be implemented through software, firmware, hardware and/or various combinations thereof. Accordingly, the invention is only intended to be limited to the claims below and their equivalents.
In this embodiment, receiver 302 receives a radio frequency (“RF”) signal through antenna 301 and subsequently converts that signal to a digital received signal y using Analog-to-Digital (“A/D”) converter 303. A/D converter 303 transfers the digital signal to receiver circuitry 304 for signal processing. Those skilled in the art should readily recognize that the received signal may include both In-phase (“I”) and Quadrature (“Q”) components.
Receiver circuitry 304 is configured for transferring the digitized received signal y and signal path tracking information to CSPE 308 for cancellation of selected interfering signals. CSPE 308 receives the signal y, as well as reference signals x (e.g., known codes from the interfering signal paths), and generates a cancellation operator that substantially cancels the selected interfering signals. For example, the interfering signals may be cross channel and/or co-channel interferers comprising known codes of a CDMA communication system. Such codes may be input to CSPE 308 on an as needed basis, stored within memory (not shown) local to CSPE 308 or generated by CSPE 308. Alternatively, the codes may be generated by a processor, such as processor 207 of
In this embodiment, CSPE 308 generates one or more cancellation operators based on the information of the selected interfering signal path(s) and the selected, associated channel(s) according to the principles shown and described hereinabove. In generating the cancellation operators, CSPE 308 may use amplitude estimates 305, phase estimates 306 and/or sign estimates 307 of the interfering signal(s) to be cancelled. Once the CSPE 308 applies the cancellation operators to input signals and generates output cancelled signals, the output cancelled signals are transferred to connection element 309 via R-channel connection 310. R-channel connection 310 may be a communicative connection such as a data bus that allows for the transfer of R number of channels to connection element 309, wherein the number of channels R may be greater than the number of output cancelled signals generated. For example, R-channel connection 310 may be able to transfer all of the output cancelled signals generated by CSPE 308 as well as other signals such as the received signal y and/or reference signals x. Accordingly, connection element 309 is configurable to receive such a R channel inputs.
Connection element 309 is also configured for selectively transferring signals (e.g., the output cancelled signals and/or other uncancelled signals) to receiver circuitry 304 of receiver 302 via “P” channel connection 311. For example, connection element 309 may be a switching device, multiplexer, a plurality of multiplexers or another similar communication device that selectively transfers R number of signals to P number of channels, where P is an integer greater than one. Similar to R, P-channel connection 311 may be a communicative connection such as a data bus that allows for the transfer of P number of channels from connection element 309. In one embodiment the P channels correspond to P processing fingers in the receiver circuitry 304.
The control for connection element 309 may be applied independently of cancellation processing. Consequently, connection element 309 may or may not be configured within CSPE 308. For example, should selected reception of the output cancelled signals be decided by receiver 302, then connection element 309 may reside outside of the embodied CSPE 308. In a preferred embodiment, CSPE 308 includes the control functionality for connection element 309 that determines which of the output cancelled signals are transferred to receiver circuitry 304. For example, control functionality for connection element 309 may be associated with the P signals that provide the largest SNR gains for each particular finger. The invention, however, should not be limited to the preferred embodiment described and shown herein.
The yI and xI components are multiplied element-wise in element 401. This product is summed with the element-wise product of yQ and xQ as multiplied by element 402. The sum of these products is then summed (e.g., averaged) via element 408I over an “M” length window to generate an I phase estimate component (i.e., φEstimateI), wherein M is the number of chips or samples. For example, if the number of samples per symbol is 512 and the given correlation period is two symbols, M is equal to 1024.Those skilled in the art should readily recognize that the correlation period may be selected as a matter of design choice. In an exemplary embodiment M is equal to an integer multiple of symbols.
Similarly, the yI component is element-wise multiplied by the xQ component in element 404. The product of element 404 is subtracted (elements 406 and 407) from the element-wise product of the yQ and xI components provided in element 405. This sum is then summed (e.g., averaged) via element 408Q over an M length window to generate a Q phase estimate component (i.e., φEstimateQ), wherein M is again the number of number of chips or samples. The I and Q phase estimate components can be used to estimate the angle, as specified by the components of the phase estimate components, of the selected signal path.
Once phase estimates are generated, the components may be multiplied with the interference vectors corresponding to that signal path. For example, a phase estimate may be generated such that a vector comprising 64 code element chips, or an integer multiple of samples in the case of oversampling, for that one symbol can be multiplied by the phase estimate to impose phase information (i.e., phase information of the signal path) on the vector. Such an imposition of phase may lead to improved signal cancellation of the interfering signal.
The embodiment shown herein is one example of how phase estimates may be generated. Phase estimator 400 may be incorporated into either a receiver, such as receiver 302 of
The embodiment shown herein is one example of how amplitude estimates are generated. Amplitude estimator 500 may be incorporated into either a receiver, such as receiver 302 of
Those skilled in the art should readily recognize that sign estimator 600 is not intended to be limited to the embodiment described and shown herein. Rather, other configurations may provide similar sign estimates that fall within the scope and spirit of the invention.
In this exemplary embodiment, indices i−1, i and i+1 represent symbols of a selected coded signal coinciding with symbols k−1, k and k+1 of interfering signals selected for cancellation. This embodiment illustrates the use of sign information in the construction of the interference matrix using Walsh codes in a simplified example. The selected interfering signals are shown as Walsh codes 0, 1 and 3. The Walsh codes exemplified herein are derived from a rank 8 Hadamard matrix. Those skilled in the art should readily recognize that the methods described herein can be applied to any length Walsh codes (e.g., 64 and 128 length Walsh codes). Similarly, other covering codes, such as QOFs may be used in an alternative embodiment.
This embodiment depicts matrix generation prior to the application of the spreading code and/or phase estimate. Walsh code 0 is a covering code used for a pilot channel in some CDMA communication systems, such as cdmaOne and cdma2000 systems, wherein the bit sequence of the transmitted coded symbols is a sequence of all +1's. The other illustrated Walsh codes (i.e., Walsh codes 1 and 3) in this embodiment are representative of other channels within a CDMA telephony system. Each of these Walsh codes has sign values corresponding to transmitted symbols. A sign estimator, such as sign estimator 600 of
In this example, the Walsh codes of the interfering symbols and the signal of interest (i.e., data 706 and 707, respectively) are illustrated with symbol boundaries 701, 702, 703 and 704. The symbol boundaries 702 and 704 provide demarcation of the symbols of the interfering Walsh codes as they overlap symbols of a selected signal of interest. The interfering multipath is exemplarily illustrated as having a 3 chip delay with respect to the signal path of interest. To the left of boundary 702 is the (k−1)th interfering symbol. Between boundaries 701 and 702 is the portion of the interfering symbol k−1 that interferes with symbol i of the signal of interest.
Between the boundaries 702 and 703 is the portion of the interfering symbol k that interferes with symbol i of the signal of interest. To the right of symbol boundary 704 is the (k+1)th interfering symbol. Each of the interfering symbols is modulated independently and as such has a symbol sign value that is independent of prior and subsequent symbols. In this example, the symbol sign values are
Interfering Walsh Code 0 Sign Values: +1, +1
Interfering Walsh Code 1 Sign Values: −1, +1
Interfering Walsh Code 3 Sign Values: +1, −1
Interference vectors are formed from the chip sequences of these interfering codes. For example, uw#L represents interference from the Walsh codes overlapping the left portion of the symbol “i” of data 705 (i.e., between symbol boundaries 701 and 702), wherein the “W#” subscript denotes the Walsh code number of the interfering Walsh code. Similarly, uw#R represents interference from the Walsh codes overlapping the right most portion of the symbol “i” of data 705 (i.e., between symbol boundaries 702 and 703).
Interference vectors are constructed from the interfering Walsh codes using the left and right overlapping portions (i.e., uw#L and uw#R, respectively) of those interfering unsigned Walsh (i.e., u′w#) codes that overlap data 705. Accordingly, the chips from both the left and right side portions may be multiplied by their respective estimate sign value and combined to form interference vectors uw# as follows:
uw0=(+1)*u′w0L+(+1)*u′w0R={+1, +1, +1, +1, +1, +1, +1, +1}
uw1=(−1)*u′w1L+(+1)*u′w1R={+1, −1, +1,+1, −1, +1, −1, +1}
uw3=(+1)*u′w3L+(−1)*u′w3R={−1, −1, +1, −1, +1, +1, −1, −1}.
These interference vectors may be multiplied by associated phase estimates and on-time PN codes to construct an interference matrix, such as matrix 203 of
While one embodiment of matrix generation has been shown, those skilled in the art should readily recognize that other embodiments may fall within the scope and spirit of the invention. Accordingly, the invention is not intended to be limited to the exemplary embodiment shown herein. Rather, the invention is intended to be limited to the language recited in the claims. Additionally, those skilled in the art should readily recognize Hadamard matrices of various ranks and the Walsh codes that may be derived therefrom may be used. Accordingly, matrix generation is not intended to be limited to the exemplary embodiment of length 8 Walsh codes.
In this exemplary embodiment, the interfering Walsh codes 0, 1 and 3 (i.e., data 706) have associated amplitude values of A, B and C, respectively with sign values dependent on estimated bits transmitted. For simplicity, the magnitude of the estimated amplitude is depicted as constant over multiple symbols. Accordingly, the interference vectors can be constructed as follows:
uw0=(+A)*u′w0L+(+A)*u′w0R={+A, +A, +A, +A, +A, +A, +A, +A}
uw1=(−B)*u′w1L+(+B)*u′w1R={+B, −B, +B, +B, −B, +B, −B, +B}
uw3=(+C)*u′w3L+(−C)*u′w3R={−C, −C, +C, −C, +C, +C, −C, −C}.
Amplitude estimates with sign such as those described herein can be generated by an amplitude estimator, such as amplitude estimator 500 of
In one embodiment of the invention, amplitude-scaled interference vectors can be combined to form a composite interference vector. For example, the interference vectors uw0, uw1 and uw3 can have corresponding elements summed using standard vector addition to form a CIV.
Accordingly, the interference vectors uw0, uw1 and uw3 may be used to form a CIV as follows:
CIV=<(A+B−C), (A−B−C), (A+B+C), (A+B−C), (A−B+C), (A+B+C), (A−B−C), (A+B−C)>.
In this example, the spreading code and/or phase estimate may be imposed on the CIV. However, if the CIV is formed from selected channels from more than one signal path, the spreading codes and/or phase estimates are imposed prior to the summation of vectors. Since composite interference vector construction can reduce the rank of a matrix through its combination of vectors, the CIV may reduce a number of matrix operations when generating the cancellation operator (e.g., according to Eq. 1). For example, the CIV may eliminate the need to calculate a full matrix inverse.
While one embodiment of matrix generation has been shown, those skilled in the art should readily recognize that other embodiments may fall within the scope and spirit of the invention. Accordingly, the invention is not intended to be limited to the exemplary embodiment shown and described herein. Rather, the invention is intended to only be limited by the claims and their equivalents. Additionally, those skilled in the art should readily recognize that sign estimates and/or corresponding amplitude estimates may simply serve as optional information in the construction of interference vectors and subsequently, a cancellation operator. Amplitude estimates and sign estimates may improve interference cancellation.
Interference vectors are generated from the elements of those interfering channels and signal paths, in element 903. For example, a matrix generator, such as matrix generator 202 of
Once the interference vectors are constructed, an interference matrix may be formed from the interference vectors, in element 905. The interference matrix can thereby be used to generate a cancellation operator, in element 906. For example, the cancellation operator may be a projection operator that is generated according to Eq. 1 in element 907. The cancellation operator, as previously described, can be applied to an input signal to substantially cancel the selected interfering signals.
While one embodiment has been shown and described in detail, those skilled in the art should readily recognize that other embodiments may fall within the scope and spirit of the invention. Accordingly, the invention is not intended to be limited to the specific embodiments shown and described herein. Rather, the invention is only intended to be limited by the language recited in the claims and their equivalents.
The embodiments described herein may substantially reduce interference caused by unwanted signals and improve data recovery. For example, poor signal quality due to interference may deleteriously affect acquisition, tracking and demodulation of selected signals. A reduction of interference may, therefore, result in improved data recovery. In regards to such benefits, the embodiments herein may advantageously require use within a CDMA communication system. Improved processing within a CDMA communication system may be exploited in terms of increased system capacity, increased system coverage, increased data rates and/or reduced transmit power. However, those skilled in the art should readily recognize that the above embodiments should not be limited to any particular type of signaling. For example, the embodiments disclosed herein may be advantageous to systems employing CDMA (e.g., such as cdmaOne and cdma2000), WCDMA, Broadband CDMA, UMTS and/or GPS signals.
Additionally, it should be noted that the above embodiments of the invention may be implemented in a variety of ways. For example, the above embodiments may be implemented from software, firmware, hardware or various combinations thereof. Those skilled in the art are familiar with software, firmware, hardware and their various combinations. To illustrate, those skilled in the art may choose to implement certain aspects of the invention in hardware using ASIC chips, DSPs, Reduced Instruction Set Computers (“RISC”), Advanced RISC Machines and/or other circuitry. Still, some aspects of the invention may be implemented through combinations of software using VHDL, Verilog, Java, C, C++, Matlab, and/or processor specific machine and assembly languages. Accordingly, those skilled in the art should readily recognize that such implementations are a matter of design choice and that the invention should not be limited to any particular implementation.
While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description is to be considered as exemplary and not restrictive in character. Accordingly, it should be understood that only the preferred embodiment and minor variants thereof have been shown and described and that all changes and modifications that come within the spirit of the invention are desired to be protected.
This application is a continuation-in-part of commonly owned and U.S. patent application Ser. No. 10/773,777 (filed Feb. 6, 2004; now U.S. Pat. No. 7,394,879 the “'777 application”) , Ser. No. 10/686,829 (filed Oct. 15, 2003; the “'829 application”) and the commonly owned U.S. Patents; U.S. patent application Ser. No. 10/294,834 (filed Nov. 15, 2002; the “'834 application”), issued on Apr. 3, 2007 as U.S. Pat. No. 7,200,183; U.S. patent application Ser. No. 10/686,359 (filed Oct. 15, 2003; the “'359 application”), issued on Jun. 27, 2006 as U.S. Pat. No. 7,068,706; and Ser. No. 10/247,836 (filed Sep. 20, 2002; the “'836 application”), issued on Jan. 2, 2007 as U.S. Pat. No. 7,158,559, which are all hereby incorporated by reference.
Number | Name | Date | Kind |
---|---|---|---|
3742201 | Groginsky | Jun 1973 | A |
4088955 | Baghdady | May 1978 | A |
4309769 | Taylor, Jr. | Jan 1982 | A |
4359738 | Lewis | Nov 1982 | A |
4601046 | Halpern | Jul 1986 | A |
4665401 | Garrard et al. | May 1987 | A |
4670885 | Parl et al. | Jun 1987 | A |
4713794 | Byington et al. | Dec 1987 | A |
4780885 | Paul et al. | Oct 1988 | A |
4856025 | Takai | Aug 1989 | A |
4893316 | Janc et al. | Jan 1990 | A |
4922506 | McCallister et al. | May 1990 | A |
4933639 | Barker | Jun 1990 | A |
4965732 | Roy, III et al. | Oct 1990 | A |
5017929 | Tsuda | May 1991 | A |
5099493 | Zeger et al. | Mar 1992 | A |
5105435 | Stilwell | Apr 1992 | A |
5109390 | Gilhousen et al. | Apr 1992 | A |
5119401 | Tsujimoto | Jun 1992 | A |
5136296 | Roettger et al. | Aug 1992 | A |
5151919 | Dent | Sep 1992 | A |
5218359 | Minamisono | Jun 1993 | A |
5218619 | Dent | Jun 1993 | A |
5220687 | Ichikawa et al. | Jun 1993 | A |
5224122 | Bruckert | Jun 1993 | A |
5237586 | Bottomley | Aug 1993 | A |
5263191 | Dickerson | Nov 1993 | A |
5280472 | Gilhousen et al. | Jan 1994 | A |
5305349 | Dent | Apr 1994 | A |
5325394 | Bruckert | Jun 1994 | A |
5343493 | Karimullah | Aug 1994 | A |
5343496 | Honig et al. | Aug 1994 | A |
5347535 | Karasawa et al. | Sep 1994 | A |
5353302 | Bi | Oct 1994 | A |
5377183 | Dent | Dec 1994 | A |
5386202 | Cochran et al. | Jan 1995 | A |
5390207 | Fenton et al. | Feb 1995 | A |
5394110 | Mizoguchi | Feb 1995 | A |
5396256 | Chiba et al. | Mar 1995 | A |
5437055 | Wheatley, III | Jul 1995 | A |
5440265 | Cochran et al. | Aug 1995 | A |
5448600 | Lucas | Sep 1995 | A |
5481570 | Winters | Jan 1996 | A |
5506865 | Weaver, Jr. | Apr 1996 | A |
5513176 | Dean et al. | Apr 1996 | A |
5533011 | Dean et al. | Jul 1996 | A |
5553098 | Cochran et al. | Sep 1996 | A |
5602833 | Zehavi | Feb 1997 | A |
5644592 | Divsalar | Jul 1997 | A |
5646964 | Ushirokawa et al. | Jul 1997 | A |
5736964 | Ghosh et al. | Apr 1998 | A |
5787130 | Kotzin et al. | Jul 1998 | A |
5844521 | Stephens et al. | Dec 1998 | A |
5859613 | Otto | Jan 1999 | A |
5872540 | Casabona | Feb 1999 | A |
5872776 | Yang | Feb 1999 | A |
5894500 | Bruckert et al. | Apr 1999 | A |
5926761 | Reed et al. | Jul 1999 | A |
5930229 | Yoshida et al. | Jul 1999 | A |
5953369 | Suzuki | Sep 1999 | A |
5978413 | Bender | Nov 1999 | A |
5995499 | Hottinen et al. | Nov 1999 | A |
6002727 | Uesugi | Dec 1999 | A |
6014373 | Schilling et al. | Jan 2000 | A |
6018317 | Dogan et al. | Jan 2000 | A |
6032056 | Reudink | Feb 2000 | A |
6088383 | Suzuki et al. | Jul 2000 | A |
6101385 | Monte et al. | Aug 2000 | A |
6104712 | Robert et al. | Aug 2000 | A |
6115409 | Upadhyay et al. | Sep 2000 | A |
6127973 | Choi et al. | Oct 2000 | A |
6131013 | Bergstrom et al. | Oct 2000 | A |
6137788 | Sawahashi et al. | Oct 2000 | A |
6141332 | Lavaen | Oct 2000 | A |
6154443 | Huang et al. | Nov 2000 | A |
6157685 | Tanaka et al. | Dec 2000 | A |
6157842 | Kaisson et al. | Dec 2000 | A |
6157847 | Buehrer et al. | Dec 2000 | A |
6163696 | Bi et al. | Dec 2000 | A |
6166690 | Lin et al. | Dec 2000 | A |
6172969 | Kawakami et al. | Jan 2001 | B1 |
6175587 | Madhow et al. | Jan 2001 | B1 |
6192067 | Toda et al. | Feb 2001 | B1 |
6201799 | Huang et al. | Mar 2001 | B1 |
6215812 | Young et al. | Apr 2001 | B1 |
6219376 | Zhodzishsky et al. | Apr 2001 | B1 |
6222828 | Ohlson et al. | Apr 2001 | B1 |
6230180 | Mohamed | May 2001 | B1 |
6233229 | Ranta et al. | May 2001 | B1 |
6233459 | Sullivan et al. | May 2001 | B1 |
6240124 | Wiedeman et al. | May 2001 | B1 |
6252535 | Kober et al. | Jun 2001 | B1 |
6256336 | Rademacher et al. | Jul 2001 | B1 |
6259688 | Schilling et al. | Jul 2001 | B1 |
6263208 | Chang et al. | Jul 2001 | B1 |
6266529 | Chheda | Jul 2001 | B1 |
6275186 | Kong | Aug 2001 | B1 |
6278726 | Mesecher et al. | Aug 2001 | B1 |
6282231 | Norman et al. | Aug 2001 | B1 |
6282233 | Yoshida | Aug 2001 | B1 |
6285316 | Nir et al. | Sep 2001 | B1 |
6285319 | Rose | Sep 2001 | B1 |
6285861 | Bonaccorso et al. | Sep 2001 | B1 |
6301289 | Bejjani et al. | Oct 2001 | B1 |
6304618 | Hafeez et al. | Oct 2001 | B1 |
6308072 | Labedz et al. | Oct 2001 | B1 |
6310704 | Dogan et al. | Oct 2001 | B1 |
6317453 | Chang | Nov 2001 | B1 |
6321090 | Soliman | Nov 2001 | B1 |
6324159 | Mennekens et al. | Nov 2001 | B1 |
6327471 | Song | Dec 2001 | B1 |
6330460 | Wong et al. | Dec 2001 | B1 |
6333947 | van Heeswyk et al. | Dec 2001 | B1 |
6351235 | Stilp | Feb 2002 | B1 |
6351642 | Corbett et al. | Feb 2002 | B1 |
6359874 | Dent | Mar 2002 | B1 |
6362760 | Kober et al. | Mar 2002 | B2 |
6363104 | Bottomley | Mar 2002 | B1 |
6377636 | Paulraj et al. | Apr 2002 | B1 |
6380879 | Kober et al. | Apr 2002 | B2 |
6385264 | Terasawa | May 2002 | B1 |
6396804 | Odenwalder | May 2002 | B2 |
6404760 | Holtzman et al. | Jun 2002 | B1 |
6430216 | Kober et al. | Aug 2002 | B1 |
6459693 | Park et al. | Oct 2002 | B1 |
6501788 | Wang | Dec 2002 | B1 |
6515980 | Bottomley | Feb 2003 | B1 |
6570909 | Kansakoski | May 2003 | B1 |
6574270 | Madkour | Jun 2003 | B1 |
6580771 | Kenney | Jun 2003 | B2 |
6584115 | Suzuki | Jun 2003 | B1 |
6590888 | Ohshima | Jul 2003 | B1 |
6680727 | Butler | Jan 2004 | B2 |
6798737 | Dabak | Sep 2004 | B1 |
6801565 | Bottomley | Oct 2004 | B1 |
20010003443 | Velazquez et al. | Jun 2001 | A1 |
20010020912 | Naruse et al. | Sep 2001 | A1 |
20010021646 | Antonucci et al. | Sep 2001 | A1 |
20010046266 | Rakib et al. | Nov 2001 | A1 |
20020001299 | Petch et al. | Jan 2002 | A1 |
20020051433 | Affes et al. | May 2002 | A1 |
20020172173 | Schilling et al. | Nov 2002 | A1 |
20020176488 | Kober et al. | Nov 2002 | A1 |
20030053524 | Dent | Mar 2003 | A1 |
20030053526 | Reznik | Mar 2003 | A1 |
20030092456 | Dent | May 2003 | A1 |
20030231702 | Oates et al. | Dec 2003 | A1 |
Number | Date | Country |
---|---|---|
4201439 | Jul 1993 | DE |
4326843 | Feb 1995 | DE |
4343959 | Jun 1995 | DE |
0558910 | Jan 1993 | EP |
0610989 | Jan 1994 | EP |
2280575 | Feb 1995 | GB |
2000-13360 | Jan 2000 | JP |
WO 9312590 | Jun 1993 | WO |
Number | Date | Country | |
---|---|---|---|
20050031060 A1 | Feb 2005 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10773777 | Feb 2004 | US |
Child | 10935015 | US | |
Parent | 10686829 | Oct 2003 | US |
Child | 10773777 | US | |
Parent | 10686359 | Oct 2003 | US |
Child | 10686829 | US | |
Parent | 10294834 | Nov 2002 | US |
Child | 10686359 | US | |
Parent | 10247836 | Sep 2002 | US |
Child | 10294834 | US |