This disclosure relates generally to apparatus and methods for interference cancellation. More particularly, the disclosure relates to two-stage linear/non-linear interference cancellation
Wireless communication systems are widely deployed to provide various types of communication content such as voice, data, and so on. These systems may be multiple-access systems capable of supporting communication with multiple users by sharing the available system resources (e.g., bandwidth and transmit power). Examples of such multiple-access systems include code division multiple access (CDMA) systems, time division multiple access (TDMA) systems, frequency division multiple access (FDMA) systems, 3rd Generation Partnership Project (3GPP) Long Term Evolution (LTE) systems, and orthogonal frequency division multiple access (OFDMA) systems.
Generally, a wireless multiple-access communication system can simultaneously support communication for multiple wireless terminals. Each terminal communicates with one or more base stations via transmissions on the forward and reverse links. The forward link (or downlink) refers to the communication link from the base stations to the terminals, and the reverse link (or uplink) refers to the communication link from the terminals to the base stations. This communication link may be established via a single-input single-output (SISO), multiple-input single-output (MISO) or a multiple-input multiple-output (MIMO) system.
Disclosed is an apparatus and method for a two-stage linear/non-linear interference cancellation. According to one aspect, a method for a two-stage linear/nonlinear interference cancellation comprising processing a receive signal to produce a first descrambled signal; and processing the first descrambled signal to produce a detected signal. In one aspect, a first interference canceller module is used for processing the received signal and a second interference canceller module is used for processing the first descrambled signal. In one aspect, the first interference canceller is a linear interference canceller (IC) and the second interference canceller is a linear/nonlinear interference canceller (IC).
According to another aspect, an apparatus for a two-stage linear/nonlinear interference cancellation, the apparatus comprising a processor and a memory, the memory containing program code executable by the processor for performing the following: processing a receive signal to produce a first descrambled signal; and processing the first descrambled signal to produce a detected signal. In one aspect, a first interference canceller module is used for processing the received signal and a second interference canceller module is used for processing the first descrambled signal. In one aspect, the first interference canceller is a linear interference canceller (IC) and the second interference canceller is a linear/nonlinear interference canceller (IC).
According to another aspect, an apparatus for a two-stage linear/nonlinear interference cancellation comprising means for processing a receive signal to produce a first descrambled signal; and means for processing the first descrambled signal to produce a detected signal. In one aspect, a first interference canceller module is used for processing the received signal and a second interference canceller module is used for processing the first descrambled signal. In one aspect, the first interference canceller is a linear interference canceller (IC) and the second interference canceller is a linear/nonlinear interference canceller (IC).
According to another aspect, a computer-readable medium for a two-stage linear/nonlinear interference cancellation, the computer-readable medium storing a computer program, wherein execution of the computer program is for processing a receive signal to produce a first descrambled signal; and processing the first descrambled signal to produce a detected signal. In one aspect, a first interference canceller module is used for processing the received signal and a second interference canceller module is used for processing the first descrambled signal. In one aspect, the first interference canceller is a linear interference canceller (IC) and the second interference canceller is a linear/nonlinear interference canceller (IC).
Advantages of the present disclosure may include improved interference cancellation performance.
It is understood that other aspects will become readily apparent to those skilled in the art from the following detailed description, wherein it is shown and described various aspects by way of illustration. The drawings and detailed description are to be regarded as illustrative in nature and not as restrictive.
The detailed description set forth below in connection with the appended drawings is intended as a description of various aspects of the present disclosure and is not intended to represent the only aspects in which the present disclosure may be practiced. Each aspect described in this disclosure is provided merely as an example or illustration of the present disclosure, and should not necessarily be construed as preferred or advantageous over other aspects. The detailed description includes specific details for the purpose of providing a thorough understanding of the present disclosure. However, it will be apparent to those skilled in the art that the present disclosure may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form in order to avoid obscuring the concepts of the present disclosure. Acronyms and other descriptive terminology may be used merely for convenience and clarity and are not intended to limit the scope of the present disclosure.
While for purposes of simplicity of explanation, the methodologies are shown and described as a series of acts, it is to be understood and appreciated that the methodologies are not limited by the order of acts, as some acts may, in accordance with one or more aspects, occur in different orders and/or concurrently with other acts from that shown and described herein. For example, those skilled in the art will understand and appreciate that a methodology could alternatively be represented as a series of interrelated states or events, such as in a state diagram. Moreover, not all illustrated acts may be required to implement a methodology in accordance with one or more aspects.
The techniques described herein may be used for various wireless communication networks such as Code Division Multiple Access (CDMA) networks, Time Division Multiple Access (TDMA) networks, Frequency Division Multiple Access (FDMA) networks, Orthogonal FDMA (OFDMA) networks, Single-Carrier FDMA (SC-FDMA) networks, etc. The terms “networks” and “systems” are often used interchangeably. A CDMA network may implement a radio technology such as Universal Terrestrial Radio Access (UTRA), cdma2000, etc. UTRA includes Wideband-CDMA (W-CDMA) and Low Chip Rate (LCR). Cdma2000 covers IS-2000, IS-95 and IS-856 standards. A TDMA network may implement a radio technology such as Global System for Mobile Communications (GSM). An OFDMA network may implement a radio technology such as Evolved UTRA (E-UTRA), IEEE 802.11, IEEE 802.16, IEEE 802.20, Flash-OFDM®, etc. UTRA, E-UTRA, and GSM are part of Universal Mobile Telecommunication System (UMTS). Long Term Evolution (LTE) is an upcoming release of UMTS that uses E-UTRA. UTRA, E-UTRA, GSM, UMTS and LTE are described in documents from an organization named “3rd Generation Partnership Project” (3GPP). cdma2000 is described in documents from an organization named “3rd Generation Partnership Project 2” (3GPP2). These various radio technologies and standards are known in the art.
The access node/UE system 100 includes an access node 101 (e.g., base station) and a user equipment or UE 201 (e.g., wireless communication device or mobile station). In the downlink leg, the access node 101 (e.g., base station) includes a transmit (TX) data processor A 110 that accepts, formats, codes, interleaves and modulates (or symbol maps) traffic data and provides modulation symbols (e.g., data symbols). The TX data processor A 110 is in communication with a symbol modulator A 120. The symbol modulator A 120 accepts and processes the data symbols and downlink pilot symbols and provides a stream of symbols. In one aspect, symbol modulator A 120 is in communication with processor A 180 which provides configuration information. Symbol modulator A 120 is in communication with a transmitter unit (TMTR) A 130. The symbol modulator A 120 multiplexes the data symbols and downlink pilot symbols and provides them to the transmitter unit A 130.
Each symbol to be transmitted may be a data symbol, a downlink pilot symbol or a signal value of zero. The downlink pilot symbols may be sent continuously in each symbol period. In one aspect, the downlink pilot symbols are frequency division multiplexed (FDM). In another aspect, the downlink pilot symbols are orthogonal frequency division multiplexed (OFDM). In yet another aspect, the downlink pilot symbols are code division multiplexed (CDM). In one aspect, the transmitter unit A 130 receives and converts the stream of symbols into one or more analog signals and further conditions, for example, amplifies, filters and/or frequency upconverts the analog signals, to generate an analog downlink signal suitable for wireless transmission. The analog downlink signal is then transmitted through antenna 140.
In the downlink leg, the UE 201 includes antenna 210 for receiving the analog downlink signal and inputting the analog downlink signal to a receiver unit (RCVR) B 220. In one aspect, the receiver unit B 220 conditions, for example, filters, amplifies, and frequency downconverts the analog downlink signal to a first “conditioned” signal. The first “conditioned” signal is then sampled. The receiver unit B 220 is in communication with a symbol demodulator B 230. The symbol demodulator B 230 demodulates the first “conditioned” and “sampled” signal (e.g., data symbols) outputted from the receiver unit B 220. One skilled in the art would understand that an alternative is to implement the sampling process in the symbol demodulator B 230. The symbol demodulator B 230 is in communication with a processor B 240. Processor B 240 receives downlink pilot symbols from symbol demodulator B 230 and performs channel estimation on the downlink pilot symbols. In one aspect, the channel estimation is the process of characterizing the current propagation environment. The symbol demodulator B 230 receives a frequency response estimate for the downlink leg from processor B 240. The symbol demodulator B 230 performs data demodulation on the data symbols to obtain data symbol estimates on the downlink path. The data symbol estimates on the downlink path are estimates of the data symbols that were transmitted. The symbol demodulator B 230 is also in communication with a RX data processor B 250.
The RX data processor B 250 receives the data symbol estimates on the downlink path from the symbol demodulator B 230 and, for example, demodulates (i.e., symbol demaps), interleaves and/or decodes the data symbol estimates on the downlink path to recover the traffic data. In one aspect, the processing by the symbol demodulator B 230 and the RX data processor B 250 is complementary to the processing by the symbol modulator A 120 and TX data processor A 110, respectively.
In the uplink leg, the UE 201 includes a TX data processor B 260. The TX data processor B 260 accepts and processes traffic data to output data symbols. The TX data processor B 260 is in communication with a symbol modulator D 270. The symbol modulator D 270 accepts and multiplexes the data symbols with uplink pilot symbols, performs modulation and provides a stream of symbols. In one aspect, symbol modulator D 270 is in communication with processor B 240 which provides configuration information. The symbol modulator D 270 is in communication with a transmitter unit B 280.
Each symbol to be transmitted may be a data symbol, an uplink pilot symbol or a signal value of zero. The uplink pilot symbols may be sent continuously in each symbol period. In one aspect, the uplink pilot symbols are frequency division multiplexed (FDM). In another aspect, the uplink pilot symbols are orthogonal frequency division multiplexed (OFDM). In yet another aspect, the uplink pilot symbols are code division multiplexed (CDM). In one aspect, the transmitter unit B 280 receives and converts the stream of symbols into one or more analog signals and further conditions, for example, amplifies, filters and/or frequency upconverts the analog signals, to generate an analog uplink signal suitable for wireless transmission. The analog uplink signal is then transmitted through antenna 210.
The analog uplink signal from UE 201 is received by antenna 140 and processed by a receiver unit A 150 to obtain samples. In one aspect, the receiver unit A 150 conditions, for example, filters, amplifies and frequency downconverts the analog uplink signal to a second “conditioned” signal. The second “conditioned” signal is then sampled. The receiver unit A 150 is in communication with a symbol demodulator C 160. One skilled in the art would understand that an alternative is to implement the sampling process in the symbol demodulator C 160. The symbol demodulator C 160 performs data demodulation on the data symbols to obtain data symbol estimates on the uplink path and then provides the uplink pilot symbols and the data symbol estimates on the uplink path to the RX data processor A 170. The data symbol estimates on the uplink path are estimates of the data symbols that were transmitted. The RX data processor A 170 processes the data symbol estimates on the uplink path to recover the traffic data transmitted by the wireless communication device 201. The symbol demodulator C 160 is also in communication with processor A 180. Processor A 180 performs channel estimation for each active terminal transmitting on the uplink leg. In one aspect, multiple terminals may transmit pilot symbols concurrently on the uplink leg on their respective assigned sets of pilot subbands where the pilot subband sets may be interlaced.
Processor A 180 and processor B 240 direct (i.e., control, coordinate or manage, etc.) operation at the access node 101 (e.g., base station) and at the UE 201, respectively. In one aspect, either or both processor A 180 and processor B 240 are associated with one or more memory units (not shown) for storing of program codes and/or data. In one aspect, either or both processor A 180 or processor B 240 or both perform computations to derive frequency and impulse response estimates for the uplink leg and downlink leg, respectively.
In one aspect, the access node/UE system 100 is a multiple-access system. For a multiple-access system (e.g., frequency division multiple access (FDMA), orthogonal frequency division multiple access (OFDMA), code division multiple access (CDMA), time division multiple access (TDMA), space division multiple access (SDMA), etc.), multiple terminals transmit concurrently on the uplink leg, allowing access to a plurality of UEs. In one aspect, for the multiple-access system, the pilot subbands may be shared among different terminals. Channel estimation techniques are used in cases where the pilot subbands for each terminal span the entire operating band (possibly except for the band edges). Such a pilot subband structure is desirable to obtain frequency diversity for each terminal.
In another example, the second interference canceller operates as a linear/nonlinear interference canceller at the symbol level. In one aspect, the second interference canceller provides iterative intra-cell interference cancellation for a target cell only. In another aspect, it provides high gains when close to the cell center, for example, at high geometry.
In one aspect, a receive signal r(n) is modeled as a convolution of a transmit signal x(n) and a channel impulse response h(n):
r(n)=x(n)*h(n)
As shown in
h*(−·)/∥h∥.
In one example, the CMF can be a general channel equalizer such as a minimum-mean-squared-error (MMSE) equalizer.
The CMF output is denoted as p(n) and is added to a first estimated transmit signal t̂(n) to generate a modified filtered signal m(n). The modified filtered signal m(n) is then descrambled by multiplying with a conjugate pseudonoise sequence of a given cell denoted as (PN)* to yield a first descrambled signal y1(n). The first descrambled signal y1(n) is next sent to a first fast Hadamard transform (FHT) module to yield a first despread signal for all OSVF codes. The first despread signal for all OSVF codes is then processed by an optimal scaling module to yield a first scaled symbol signal for all OSVF codes. The first scaled symbol signal for all OSVF codes is next sent to an inverse fast Hadamard transform (IFHT) module to yield a first spread output signal. The first spread output signal is next scrambled by multiplying with a pseudonoise sequence of a given cell denoted as PN to yield the first estimated transmit signal t̂(n). The first estimated transmit signal t̂(n) is supplied to a channel filter with transfer function given by:
h*(·)/∥h∥.
In one aspect, an FHT is used to obtain the despread signals for all OVSF codes, from which symbol estimation can be performed. In another aspect, an optimal scaling module, or symbol estimator, applies a scale on each OVSF code to obtain estimates of symbols. In one example, the optimal scaling module may be based on a given criterion, such as minimum-mean-squared error (MMSE) or quasi-linear interference cancellation (QLIC).
The output of the channel filter is denoted as the estimated interference signal Î(n) mentioned above. In one aspect, the first stage chip-level interference cancellation may be iterated several times to obtain a cleaner cancelled signal before being supplied to the second stage. In one example, the last iteration is performed on the serving cell, and the signal, obtained after adding back estimated serving cell transmit signal t̂(n), is sent to the second stage for symbol level interference cancellation within the serving cell.
In another aspect, the first descrambled signal y1(n) serves as an input to the second interference canceller. In one example, the first descrambled signal y1(n) is sent to a second fast Hadamard transform (FHT) module to yield a second despread symbol z(n). The second despread symbol z(n) is sent to a detect multi-user transmission (MUT) module to yield a detected signal b(n). The detected signal b(n) is sent to a cancel module to generate a cancelled symbol z˜(n). In one example, the cancel module also receives the second despread symbol z(n). In another example, a matrix module generates three matrices, A0, A1, A−1 which are used by the detect MUT module and the cancel module to generate the cancelled symbol z˜(n). The cancelled symbol z˜(n) is then sent to a re-detect MUT module to generate a second detected symbol b(2). The second detected symbol b(2) is also sent to a delay module to generate a delayed output signal. In one example, the cancel module also receives the delayed output signal. In another example, the symbol-level re-detect MUT module and re-cancel process may be iterated several times to yield a refined symbol estimate. According to certain aspects, A−1 A0, A1, are Nu×Nu multi-user interference (MUI) and shoulder matrices, where Nu is the number of code channels in a serving cell. In one aspect, the multi-user interference matrix A0 is a Nu×Nu matrix that relates each received symbol z1(m) to zNu(m) to the corresponding user symbol and to the other user symbols. For example, for received symbol z1(m), coefficient [A0(m)] 1, 1 of the multi-user interference matrix A0(m) relates the received symbol z1(m) to the corresponding user symbol b1(m). In addition, the other coefficients [A0(m)] 1, 2 to [A0(m)] 1, Nu in the first row of the multi-user interference matrix A0(m) relate the received symbol z1(m) to the other user symbols b2(m) to bNu(m), respectively. The same relationship applies to the other received symbols.
In one example, as shown in
One skilled in the art would understand that the steps disclosed in the example flow diagram in
Those of skill would further appreciate that the various illustrative components, logical blocks, modules, circuits, and/or algorithm steps described in connection with the examples disclosed herein may be implemented as electronic hardware, firmware, computer software, or combinations thereof. To clearly illustrate this interchangeability of hardware, firmware and software, various illustrative components, blocks, modules, circuits, and/or algorithm steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware, firmware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope or spirit of the present disclosure.
For example, for a hardware implementation, the processing units may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described therein, or a combination thereof. With software, the implementation may be through modules (e.g., procedures, functions, etc.) that perform the functions described therein. The software codes may be stored in memory units and executed by a processor unit. Additionally, the various illustrative flow diagrams, logical blocks, modules and/or algorithm steps described herein may also be coded as computer-readable instructions carried on any computer-readable medium known in the art or implemented in any computer program product known in the art.
In one or more examples, the steps or functions described herein may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
In one example, the illustrative components, flow diagrams, logical blocks, modules and/or algorithm steps described herein are implemented or performed with one or more processors. In one aspect, a processor is coupled with a memory which stores data, metadata, program instructions, etc. to be executed by the processor for implementing or performing the various flow diagrams, logical blocks and/or modules described herein.
The previous description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects without departing from the spirit or scope of the disclosure.