Patent Description:
In a wireless communications network, multiple base stations (also referred to as "eNBs") use a standardized codebook for precoding transmission to their respective user equipments (UEs), using multiple transmit antennas. A typical problem of this procedure occurs where several base stations are serving their intended UEs while interfering with each other's signal. This scenario is called "inter-cell interference. " Inter-cell interference constrains the throughput of the wireless network.

<FIG> illustrates an exemplary wireless network <NUM>. In such example, base station (BS) <NUM> is the serving base station for subscriber station (SS) <NUM>, e.g., communications to and from SS <NUM> are conducted through BS <NUM>. BS <NUM> is the serving base station for SS <NUM>, e.g., communications to and from SS <NUM> are conducted through BS <NUM>. SS <NUM> is located in proximity to SS <NUM>. Further, BS <NUM> is communicating with SS <NUM> using the same frequency band that BS <NUM> is using to communicate with SS <NUM>. Therefore, SS <NUM> receives communications <NUM> from BS <NUM>. However, SS <NUM> also receives communications <NUM> (e.g., interfering communications) from BS <NUM>. Further, SS <NUM> receives communications <NUM> from BS <NUM>. Additionally, SS <NUM> also receives communications <NUM> (e.g., interfering communications) from BS <NUM>. Since SS <NUM> and SS <NUM> are in close proximity and using the same frequency band simultaneously, the communications between the subscriber stations, SS <NUM> and SS <NUM>, and their respective base stations, BS <NUM> and BS <NUM>, interfere with each other.

A device capable of performing channel estimation is provided. The device includes a processor; a memory; and a codebook partitioner. The codebook partitioner is configured to divide a codebook into two sets. A first set of said two sets corresponds to codebook information that will cause an interference in a received signal to be less than a threshold. Additionally, the processor is configured to send at least one of the two sets to a base station.

A wireless communications network is provided. The wireless communications network comprises a plurality of base stations, each one of the base stations is capable of selecting one of a plurality of codebooks for precoding. At least one of the base stations includes a receiver capable of receiving feedback information from at least one subscriber station. The feedback information includes at least one of a recommended set of codebook information and a restricted set of codebook information. The controller identifies either the recommended set of codebook information or restricted codebook information.

A method for interference avoidance is provided. The method includes estimating channel information. The method also includes identifying codebook information that will cause an interference in a received signal to be less than a threshold. Further, the method includes dividing a codebook into subsets, wherein at least one subset corresponds to the identified codebook information. Then, the method includes transmitting feedback information associated to the subset.

A method for interference avoidance is provided. The method includes receiving feedback information. The feedback information includes a set of codebook information that identifies a recommended set or a restricted set. A response to the feedback information is determined. A precoding matrix is selected based on the response.

Before undertaking the DETAILED DESCRIPTION OF THE INVENTION below, it may be advantageous to set forth definitions of certain words and phrases used throughout this patent document: the terms "include" and "comprise," as well as derivatives thereof, mean inclusion without limitation; the term "or," is inclusive, meaning and/or; the phrases "associated with" and "associated therewith," as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like; and the term "controller" means any device, system or part thereof that controls at least one operation, such a device may be implemented in hardware, firmware or software, or some combination of at least two of the same.

Those skilled in the art will understand that the principles of the present disclosure may be implemented in any suitably arranged wireless communication network.

With regard to the following description, it is noted that the LTE term "node B" is another term for "base station" used below. Further, the term "cell" is a logic concept which can represent a "base station" or a "sector" belongs to a "base station". In this patent, "cell" and "base station" are used interchangeably to indicate the actual transmission units (may be "sector" or "base station" etc.) in the wireless system. Also, the LTE term "user equipment" or "UE" is another term for "subscriber station" used below.

<FIG> illustrates exemplary wireless network <NUM> that is capable of decoding data streams according to one embodiment of the present disclosure. In the illustrated embodiment, wireless network <NUM> includes base station (BS) <NUM>, base station (BS) <NUM>, and base station (BS) <NUM>. Base station <NUM> communicates with base station <NUM> and base station <NUM>. Base station <NUM> also communicates with Internet protocol (IP) network <NUM>, such as the Internet, a proprietary IP network, or other data network.

Base station <NUM> provides wireless broadband access to network <NUM>, via base station <NUM>, to a first plurality of subscriber stations within coverage area <NUM> of base station <NUM>. The first plurality of subscriber stations includes subscriber station (SS) <NUM>, subscriber station (SS) <NUM>, subscriber station (SS) <NUM>, subscriber station (SS) <NUM>, subscriber station (SS) <NUM> and subscriber station (SS) <NUM>. Subscriber station (SS) may be any wireless communication device, such as, but not limited to, a mobile phone, mobile PDA and any mobile station (MS). In an exemplary embodiment, SS <NUM> may be located in a small business (SB), SS <NUM> may be located in an enterprise (E), SS <NUM> may be located in a WiFi hotspot (HS), SS <NUM> may be located in a residence, SS <NUM> may be a mobile (M) device, and SS <NUM> may be a mobile (M) device.

Base station <NUM> provides wireless broadband access to network <NUM>, via base station <NUM>, to a second plurality of subscriber stations within coverage area <NUM> of base station <NUM>. The second plurality of subscriber stations includes subscriber station <NUM> and subscriber station <NUM>. In alternate embodiments, base stations <NUM> and <NUM> may be connected directly to the Internet by means of a wired broadband connection, such as an optical fiber, DSL, cable or T1/E1 line, rather than indirectly through base station <NUM>.

In other embodiments, base station <NUM> may be in communication with either fewer or more base stations. Furthermore, while only six subscriber stations are shown in <FIG>, it is understood that wireless network <NUM> may provide wireless broadband access to more than six subscriber stations. It is noted that subscriber station <NUM> and subscriber station <NUM> are on the edge of both coverage area <NUM> and coverage area <NUM>. Subscriber station <NUM> and subscriber station <NUM> each communicate with both base station <NUM> and base station <NUM> and may be said to be cell-edge devices interfering with each other. For example, the communications between BS <NUM> and SS <NUM> may be interfering with the communications between BS <NUM> and SS <NUM>. Additionally, the communications between BS <NUM> and SS <NUM> may be interfering with the communications between BS <NUM> and SS <NUM>.

In an exemplary embodiment, base stations <NUM>-<NUM> may communicate with each other and with subscriber stations <NUM>-<NUM> using an IEEE-<NUM> wireless metropolitan area network standard, such as, for example, an IEEE-<NUM>. 16e standard. In another embodiment, however, a different wireless protocol may be employed, such as, for example, a HIPERMAN wireless metropolitan area network standard. Base station <NUM> may communicate through direct line-of-sight or non-line-of-sight with base station <NUM> and base station <NUM>, depending on the technology used for the wireless backhaul. Base station <NUM> and base station <NUM> may each communicate through non-line-of-sight with subscriber stations <NUM>-<NUM> using OFDM and/or OFDMA techniques.

Base station <NUM> may provide a T1 level service to subscriber station <NUM> associated with the enterprise and a fractional T1 level service to subscriber station <NUM> associated with the small business. Base station <NUM> may provide wireless backhaul for subscriber station <NUM> associated with the WiFi hotspot, which may be located in an airport, cafe, hotel, or college campus. Base station <NUM> may provide digital subscriber line (DSL) level service to subscriber stations <NUM>, <NUM> and <NUM>.

Subscriber stations <NUM>-<NUM> may use the broadband access to network <NUM> to access voice, data, video, video teleconferencing, and/or other broadband services. In an exemplary embodiment, one or more of subscriber stations <NUM>-<NUM> may be associated with an access point (AP) of a WiFi WLAN. Subscriber station <NUM> may be any of a number of mobile devices, including a wireless-enabled laptop computer, personal data assistant, notebook, handheld device, or other wireless-enabled device. Subscriber station <NUM> may be, for example, a wireless-enabled personal computer, a laptop computer, a gateway, or another device.

Dotted lines show the approximate extents of coverage areas <NUM> and <NUM>, which are shown as approximately circular for the purposes of illustration and explanation only. It should be clearly understood that the coverage areas associated with base stations, for example, coverage areas <NUM> and <NUM>, may have other shapes, including irregular shapes, depending upon the configuration of the base stations and variations in the radio environment associated with natural and man-made obstructions.

Also, the coverage areas associated with base stations are not constant over time and may be dynamic (expanding or contracting or changing shape) based on changing transmission power levels of the base station and/or the subscriber stations, weather conditions, and other factors. In an embodiment, the radius of the coverage areas of the base stations, for example, coverage areas <NUM> and <NUM> of base stations <NUM> and <NUM>, may extend in the range from less than <NUM> kilometers to about fifty kilometers from the base stations.

As is well known in the art, a base station, such as base station <NUM>, <NUM>, or <NUM>, may employ directional antennas to support a plurality of sectors within the coverage area. In <FIG>, base stations <NUM> and <NUM> are depicted approximately in the center of coverage areas <NUM> and <NUM>, respectively. In other embodiments, the use of directional antennas may locate the base station near the edge of the coverage area, for example, at the point of a cone-shaped or pear-shaped coverage area.

The connection to network <NUM> from base station <NUM> may comprise a broadband connection, for example, a fiber optic line, to servers located in a central office or another operating company point-of-presence. The servers may provide communication to an Internet gateway for internet protocol-based communications and to a public switched telephone network gateway for voice-based communications. In the case of voice-based communications in the form of voice-over-IP (VoIP), the traffic may be forwarded directly to the Internet gateway instead of the PSTN gateway. The servers, Internet gateway, and public switched telephone network gateway are not shown in <FIG>. In another embodiment, the connection to network <NUM> may be provided by different network nodes and equipment.

In accordance with an embodiment of the present disclosure, one or more of base stations <NUM>-<NUM> and/or one or more of subscriber stations <NUM>-<NUM> comprises a receiver that is operable to decode a plurality of data streams received as a combined data stream from a plurality of transmit antennas using an MMSE-SIC algorithm. As described in more detail below, the receiver is operable to determine a decoding order for the data streams based on a decoding prediction metric for each data stream that is calculated based on a strength-related characteristic of the data stream. Thus, in general, the receiver is able to decode the strongest data stream first, followed by the next strongest data stream, and so on. As a result, the decoding performance of the receiver is improved as compared to a receiver that decodes streams in a random or pre-determined order without being as complex as a receiver that searches all possible decoding orders to find the optimum order.

<FIG> illustrates a MIMO system <NUM> that is capable of decoding data streams according to an embodiment of the present disclosure. MIMO system <NUM> comprises a transmitter <NUM> and a receiver <NUM> that are operable to communicate over a wireless interface <NUM>.

Transmitter <NUM> comprises a multi-codeword MIMO encoder <NUM> and a plurality of antennas <NUM>, each of which is operable to transmit a different data stream <NUM> generated by encoder <NUM>. Receiver <NUM> comprises a spatial processing block <NUM> and a plurality of antennas <NUM>, each of which is operable to receive a combined data stream <NUM> from a plurality of sources including antennas <NUM> of transmitter <NUM>. Spatial processing block <NUM> is operable to decode the combined data stream <NUM> into data streams <NUM>, which are substantially identical to the data streams <NUM> transmitted by antennas <NUM>.

Spatial processing block <NUM> is operable to decode data streams <NUM> from the combined data stream <NUM> using an MMSE-SIC procedure that selects an order for decoding the streams <NUM> based on a decoding prediction metric (DPM) for each stream <NUM>. The DPM for each data stream <NUM> is based on a strength-related characteristic associated with the data stream <NUM>. Thus, for example, the DPM may be based on a capacity of the channel associated with the data stream <NUM>, an effective signal-to-interference and noise ratio (SINR) for the data stream <NUM> and/or any other suitable strength-related characteristic. Using this process for decoding, receiver <NUM> is able to provide better performance than a receiver that decodes streams in a random order without introducing the complexity of a receiver that searches all possible decoding orders to find an optimum decoding order.

<FIG> illustrates details of multi-codeword MIMO encoder <NUM> according to an embodiment of the present disclosure. For this embodiment, encoder <NUM> comprises a demultiplexer (demux) <NUM>, a plurality of cyclic redundancy code (CRC) blocks <NUM>, a plurality of coders <NUM>, a plurality of modulators <NUM>, and a pre-coder <NUM>. Encoder <NUM> is operable to receive an information block and to generate data streams <NUM> based on the information block for transmission over antennas <NUM>. Although the illustrated embodiment shows two sets of components <NUM>, <NUM> and <NUM> to generate two streams 230a-b for transmission by two antennas 225a b, it will be understood that encoder <NUM> may comprise any suitable number of component sets <NUM>, <NUM>, <NUM> and <NUM> based on any suitable number of streams <NUM> to be generated.

Demultiplexer <NUM> is operable to demultiplex the information block into a plurality of smaller information blocks, or streams <NUM>. Each CRC block <NUM> is operable to add CRC data to the associated stream <NUM>. Following the addition of CRC data, each coder <NUM> is operable to code the stream <NUM> and each modulator <NUM> is operable to modulate the coded stream <NUM>. After coding and modulation, the resulting streams, which are equivalent to data streams <NUM>, are processed through a precoding algorithm <NUM> and transmitted from separate antennas <NUM>.

Because encoder <NUM> is a multi-codeword MIMO encoder, different modulation and coding may be used on each of the individual streams <NUM>. Thus, for example, coder 315a may perform different coding from coder 315b and modulator 320a may perform different modulation from modulator 320b. Using multi-codeword transmission, a CRC check may optionally be performed on each of the codewords before the codeword is canceled form the overall signal at receiver <NUM>. When this check is performed, interference propagation may be avoided in the cancellation process by ensuring that only correctly received codewords are canceled.

Precoding <NUM> is used for multi-layer beamforming in order to maximize the throughput performance of a multiple receive antenna system. The multiple streams of the signals are emitted from the transmit antennas with independent and appropriate weighting per each antenna such that the link through-put is maximized at the receiver output. Precoding algorithms for multi-codeword MIMO can be sub-divided into linear and nonlinear precoding types. Linear precoding approaches can achieve reasonable throughput performance with lower complexity relateved to nonlinear precoding approaches. Linear precoding includes unitary precoding and zero-forcing (hereinafter "ZF") precoding. Nonlinear precoding can achieve near optimal capacity at the expense of complexity. Nonlinear precoding is designed based on the concept of Dirty paper coding (hereinafter "DPC") which shows that any known interference at the transmitter can be subtracted without the penalty of radio resources if the optimal precoding scheme can be applied on the transmit signal.

<FIG> illustrates wireless subscriber station <NUM> according to embodiments of the present disclosure. The embodiment of wireless subscriber station <NUM> illustrated in <FIG> is for illustration only. Other embodiments of the wireless subscriber station <NUM> could be used without departing from the scope of this disclosure.

Wireless subscriber station <NUM> comprises antenna <NUM>, radio frequency (RF) transceiver <NUM>, transmit (TX) processing circuitry <NUM>, microphone <NUM>, and receive (RX) processing circuitry <NUM>. SS <NUM> also comprises speaker <NUM>, main processor <NUM>, input/output (I/O) interface (IF) <NUM>, keypad <NUM>, display <NUM>, memory <NUM> and a codebook partitioner <NUM>. Memory <NUM> further comprises basic operating system (OS) program <NUM> and threshold ε <NUM>.

Radio frequency (RF) transceiver <NUM> receives from antenna <NUM> an incoming RF signal transmitted by a base station of wireless network <NUM>. Radio frequency (RF) transceiver <NUM> down-converts the incoming RF signal to produce an intermediate frequency (IF) or a baseband signal. The IF or baseband signal is sent to receiver (RX) processing circuitry <NUM> that produces a processed baseband signal by filtering, decoding, and/or digitizing the baseband or IF signal. Receiver (RX) processing circuitry <NUM> transmits the processed baseband signal to speaker <NUM> (i.e., voice data) or to main processor <NUM> for further processing (e.g., web browsing).

Transmitter (TX) processing circuitry <NUM> receives analog or digital voice data from microphone <NUM> or other outgoing baseband data (e.g., web data, e-mail, interactive video game data) from main processor <NUM>. Transmitter (TX) processing circuitry <NUM> encodes, multiplexes, and/or digitizes the outgoing baseband data to produce a processed baseband or IF signal. Radio frequency (RF) transceiver <NUM> receives the outgoing processed baseband or IF signal from transmitter (TX) processing circuitry <NUM>. Radio frequency (RF) transceiver <NUM> up-converts the baseband or IF signal to a radio frequency (RF) signal that is transmitted via antenna <NUM>.

In some embodiments of the present disclosure, main processor <NUM> is a microprocessor or microcontroller. Memory <NUM> is coupled to main processor <NUM>. Memory <NUM> can be any computer readable medium, for example, the memory <NUM> can be any electronic, magnetic, electromagnetic, optical, electro-optical, electro-mechanical, and/ or other physical device that can contain, store, communicate, propagate, or transmit a computer program, software, firmware, or data for use by the microprocessor or other computer-related system or method. According to such embodiments, part of memory <NUM> comprises a random access memory (RAM) and another part of memory <NUM> comprises a Flash memory, which acts as a read-only memory (ROM).

Main processor <NUM> executes basic operating system (OS) program <NUM> stored in memory <NUM> in order to control the overall operation of wireless subscriber station <NUM>. In one such operation, main processor <NUM> controls the reception of forward channel signals and the transmission of reverse channel signals by radio frequency (RF) transceiver <NUM>, receiver (RX) processing circuitry <NUM>, and transmitter (TX) processing circuitry <NUM>, in accordance with well-known principles.

Main processor <NUM> is capable of executing other processes and programs resident in memory <NUM>. Main processor <NUM> can move data into or out of memory <NUM>, as required by an executing process. Main processor <NUM> is also coupled to I/O interface <NUM>. I/O interface <NUM> provides mobile station <NUM> with the ability to connect to other devices such as laptop computers and handheld computers. I/O interface <NUM> is the communication path between these accessories and main controller <NUM>.

Main processor <NUM> is also coupled to keypad <NUM> and display unit <NUM>. The operator of SS <NUM> uses keypad <NUM> to enter data into SS <NUM>. Display <NUM> may be a liquid crystal display capable of rendering text and/or at least limited graphics from web sites. Alternate embodiments may use other types of displays.

Main processor <NUM> also is operable to estimate the channel matrix from the serving base station (e.g., BS <NUM>). Main processor <NUM> further is operable to estimate channel matrices from the strong interfering base stations (e.g., BS <NUM>) when the subscriber station (e.g., SS <NUM>) is in an edge-cell (e.g., the edge of two or more coverage areas <NUM>, <NUM>).

Codebook partitioner <NUM> is coupled to main processor <NUM>. Codebook partitioner <NUM> is configured to divide a codebook into two subsets. Based on the estimated channel matrices, the codebook partitioner <NUM> searches the codebook vector or matrix which maximizes the subscriber station's own receive signal power, or some other performance measures together with the codebook vectors or matrices from the interfering base stations, subject to threshold ε <NUM>. The codebook partitioner <NUM> divides the codebook based on the channel estimations performed by the main processor <NUM>. The codebook partitioner <NUM> creates a preferred set corresponding to codebook information, e.g., codebook vectors or matrices, that will cause an interference in a received signal to be less than or equal to (≤) the threshold ε <NUM>. The codebook partitioner <NUM> also creates a restricted set. The restricted set is the complement of the preferred set. As such, the restricted set corresponds to codebook information, e.g., codebook vectors or matrices, that will cause the interference in the received signal to be greater than (>) the threshold ε <NUM>.

In some embodiments, codebook partitioner <NUM> is a plurality of instructions contained within memory <NUM>. In such embodiments, codebook partitioner <NUM> is configured to cause the main processor <NUM> to perform the functions described herein above with respect to the component codebook partitioner <NUM>. For example, in such embodiments the main processor <NUM> divides the codebook into the preferred set and the restricted set.

The threshold ε <NUM> is a configurable parameter indicating an interference that SS <NUM> is able to tolerate. In some embodiments, the main processor <NUM> is operable to adjust threshold ε <NUM>. The threshold ε <NUM> is adjusted to increase or decrease an identified number of codebook vectors or matrices that will cause an interference in a received signal to be less than or equal to (≤) the threshold ε <NUM>. In some embodiments, BS <NUM>, e.g., the serving base station, is operable to adjust threshold ε <NUM>. The threshold ε <NUM> is adjusted to increase or decrease an identified number of codebook vectors or matrices that will cause an interference in a received signal to be less than or equal to (≤) the threshold ε <NUM>.

Conventionally, in a so called "closed-loop MIMO system," a feedback based mechanism is used to provide information related to the channel gains from BS <NUM> (e.g., the serving base station) to SS <NUM> based on various criteria. For example, after performing the channel estimation using the training signals, SS <NUM> informs BS <NUM> which codebook vector or matrix that maximizes the signal-to-noise ratio (SNR) of the received signal based on the channel from BS <NUM> to SS <NUM>. SS <NUM> also includes a value of the expected SNR. Then, BS <NUM> adapts the format of the data based on the information fed back from the SS <NUM>. BS <NUM> transmits the data to SS <NUM>. In this way, the performance (mainly the throughput) of the wireless system improves under the standardized codebook constraint.

When the two adjacent subscriber stations (SS <NUM> and SS <NUM>) are scheduled to receive their data in the same frequency band, inter-cell interference can occur. The received signals for SS <NUM> and SS <NUM> are represented by Equation <NUM>:
MathFigure <NUM>
[Math. <NUM>] <MAT>.

For use with Equation <NUM>, NT is the number of transmit antennas at BS <NUM> and BS <NUM>, NR is the number of receive antennas at the user equipments. In Equation <NUM>, H<NUM>, H <NUM>, H<NUM>, and H<NUM> are the respective channel gains; where Yi is the NR × <NUM> vector of received signal at subscriber station i; Xi is the NT × <NUM> vector of transmitted signal at base station i; and Ni is the NR × <NUM> AWGN noise vector. In Equation <NUM>, SS <NUM> is denoted as "<NUM>" such that Y<NUM> is the NR × <NUM> vector of received signal at SS <NUM>. Further, SS <NUM> is denoted as "<NUM>" such that Y<NUM> is the the NR × <NUM> vector of received signal at SS <NUM>. Additionally, BS <NUM> is denoted as "<NUM>" such that X<NUM> is the NT × <NUM> vector of transmitted signal at BS <NUM>. Further, BS <NUM> is denoted as "<NUM>" such that X<NUM> is the NT × <NUM> vector of transmitted signal at BS <NUM>.

Conventionally subscriber stations only reports to serving base stations about the preferred codebook vector or matrix based on the channels from the serving base station to the served subscriber station. For example, SS <NUM> chooses the transmitted codebook vector at BS <NUM> based on H<NUM> and SS <NUM> chooses the transmitted codebook vector at BS <NUM> based on H<NUM>. By doing this, a strong interference may be created to the received signal at the other subscriber stations from different cells using the same bandwidth. Especially for the case where the subscriber stations are cell-edge users, the received power level of the interference signal and that of the intended signal are usually comparable which leads a very low signal-to-interference-and-noise ratio (SINR) at the subscriber station. In this particular example, the transmitted signal from BS <NUM> to SS <NUM> (X<NUM>) <NUM> may cause strong interference for the received signal at SS <NUM> (X<NUM>) <NUM> and vice-versa. When either of the subscriber stations in <FIG> is at a cell-edge, the throughput of the cell-edge subscriber station suffers greatly from the interference because the received power levels of the intended signal and interference are comparable. This is one of the reasons why the average cell-edge throughput is significantly lower than the average cell throughput.

Using Precoding Matrix Indicator (PMI) Restriction, each subscriber stations indirectly feeds back the codebook vector that will cause the highest interference to the subscriber stations own signal. The codebook vector is fed-back to the interfering base station. Then the interfering base station excludes the reported codebook vector from the codebook and performs codebook vector selection on a restricted. In this way, the cell-edge throughput can be improved. However, using this approach, the user equipment will only report the codebook vector which causes the strongest interference and even with restrict codebook, the interference caused by the interfering base station (interfering eNB) may still be very high if not the highest.

In some embodiments, the cell-edge throughput is improved by coordinating between BS <NUM>, BS <NUM> and SS <NUM> in a unified way. When SS <NUM> is a cell-edge user, SS <NUM> may experience a low throughput. The low throughput of SS <NUM> results mainly the interference from BS <NUM>. However, interference avoidance operations, conducted by BS <NUM>, result in the significant reduction or elimination of the interference. This can be shown as follows for the case where NT = <NUM> and NR = <NUM>. The singular value decomposition (SVD) of the interfering channel matrix H<NUM> is defined by Equation <NUM>:
MathFigure <NUM>
[Math. <NUM>] <MAT>.

In Equation <NUM>, U is a 2X2 unitary matrix, Λ is a <NUM>×<NUM> matrix, and V is a 4X4 unitary matrix. Further, Λ has a structure as defined by Equation <NUM>:
MathFigure <NUM>
[Math. <NUM>] <MAT>.

Therefore, as long as the first two elements of VX<NUM> are zero, there will be no interference for signal X<NUM> <NUM> at SS <NUM>. In other words, as long as NT > NR there are some codebook vectors that can be used by BS <NUM> that will cause little or even no interference for the signal from BS <NUM>. As such, if SS <NUM> estimates the channel matrix H<NUM>, SS <NUM> can send (inform) BS <NUM> through BS <NUM> a recommended direction to transmit in terms of little or no interference to the signal between BS <NUM> and SS <NUM>.

<FIG> illustrate a codebook partitioner <NUM> according to embodiments of the present disclosure. The embodiments of the codebook partitioner <NUM> shown in <FIG> are for illustration only. Other embodiments of the codebook partitioner <NUM> can be used without departing from the scope of this disclosure.

In some embodiments, illustrated in <FIG>, where there is one strong interference in the received signal, SS <NUM> can divide the standardized codebook into two subsets. The codebook partitioner <NUM> divides the codebook by creating a first set <NUM> (set one) and a second set <NUM> (set two) based on the configurable parameter threshold ε <NUM>. Set one <NUM>, also referred to as the preferable set, contains the codebook vectors or matrices that will cause interference to the receive signals less than threshold ε <NUM>. Set two <NUM>, also referred to as the restricted set, contains the complement of the first set <NUM>.

The main processor <NUM> estimates the channel matrices for BS <NUM> (e.g., an interfering base station). The codebook partitioner <NUM> receives the interfering channel gain H<NUM>. The codebook partitioner <NUM> applies Equation <NUM> to identify codebook information for the preferred set and for the restricted set. MathFigure <NUM>
[Math. <NUM>] [<NUM>] <MAT> is a checking function. The checking function checks whether the precoding vector Pi satisfies a specified criteria. If a Pi satisfies the specified criteria, Pi is placed in the preferred set S<NUM> <NUM>. If Pi does not satisfy the specified criteria, Pi is placed in the restricted set S<NUM> <NUM>. Equation <NUM> illustrates the checking function according to one exemplary criterion. In Equation <NUM>, V is a filter at SS <NUM>.

SS <NUM> then sends feedback information to BS <NUM>. The feedback information (also referred herein as precoding matrix information) is related to the indices of the codebook vectors or matrices of either set, or both, depending on predetermined criteria. For example, one criterion might be the cardinality of the set. That is, SS <NUM> may use one bit to indicate which set of the indices are chosen, either from the preferable set or the restricted set.

In some embodiments illustrated in <FIG>, where there are several strong interferences in the received signal, SS <NUM> can feedback a combination of the precoding vectors and matrices for each interfering base station such that a total interference level is less than (<) a tolerable threshold ε <NUM>. In such embodiments, the checking function is <MAT>.

In the checking function, K is the number of base stations seen by SS <NUM> such that K-<NUM> is the number of interfering base stations. Further, H<NUM>,. , HK1 <NUM> are the channel matrices from the K-<NUM> interfering base stations to SS <NUM>, <MAT> are the K-<NUM> codebooks for the K-<NUM> interfering base stations, while Si <NUM> and <MAT> <NUM> are the preferred set and restricted set for an interfering base station "i".

In one example, SS <NUM> divides the interference level threshold ε <NUM> into several components. Each of the components corresponds to one interference level for one particular interfering base station. In such example, the information related to the codebook vectors and matrices is obtained for each interfering base stations using methods as described above with respect to <FIG>.

At least some of the components in <FIG>, <FIG>, <FIG> may be implemented in software while other components may be implemented by configurable hardware or a mixture of software and configurable hardware.

<FIG> illustrates a time diagram for interference avoidance according to embodiments of the present disclosure. The embodiment of the time diagram <NUM> shown in <FIG> is for illustration only. Other embodiments of the time diagram <NUM> can be used without departing from the scope of this disclosure.

In an example wherein SS <NUM> and SS <NUM> are edge-cell subscriber stations located in proximity to each, the communications between SS <NUM> and BS <NUM> can cause interference in the signals between SS <NUM> and BS <NUM>. Further, the communications between SS <NUM> and BS <NUM> can cause interference in the signals between SS <NUM> and BS <NUM>.

SS <NUM> performs channel estimation in step <NUM>. SS <NUM> performs measurements based on reference signals received from BS <NUM> and from BS <NUM>. SS <NUM> divides the codebook and identifies the preferred set <NUM> and restricted set <NUM>. Thereafter, SS <NUM> sends feedback information (e.g., a precoding matrix information message) to BS <NUM> in step <NUM>. The feedback information includes the codebook information such as the preferred set <NUM>, restricted set <NUM> or both.

Additionally, SS <NUM> performs channel estimation in step <NUM>. SS <NUM> performs measurements based on reference signals received from BS <NUM> and from BS <NUM>. SS <NUM> divides the codebook and identifies the preferred set <NUM> and restricted set <NUM>. Thereafter, SS <NUM> sends feedback information to BS <NUM> in step <NUM>. The feedback information includes the codebook information such as the preferred set <NUM>, restricted set <NUM> or both.

BS <NUM> and BS <NUM> exchange information in step <NUM>. BS <NUM> sends the feedback information received from SS <NUM> to BS <NUM>. Additionally, BS <NUM> sends feedback information received from SS <NUM> to BS <NUM>. The exchange of information in step <NUM> may occur simultaneously or at different times such that BS <NUM> sends sends the feedback information received from SS <NUM> to BS <NUM> either before or after BS <NUM> sends the feedback information received from SS <NUM> to BS <NUM>.

In step <NUM>, BS <NUM> decides the precoding to be utilized in future transmissions. BS <NUM> determines if a codebook vector or matrix identified within the preferred set from SS <NUM> can be utilized without significant impairment to the communications to SS <NUM>. For example, BS <NUM> can determine if an average SNR will pass beyond a base station threshold ξ. Thereafter, BS <NUM> selects a codebook and transmits data to SS <NUM> in step <NUM>.

In some embodiments, SS <NUM> sends the feedback information directly to BS <NUM> in step <NUM>. In such embodiments, BS <NUM> does not need to exchange information with BS <NUM> in step <NUM>. BS <NUM> can use the feedback information received from SS <NUM> to decided precoding in step <NUM>. However, in such embodiments, BS <NUM> can still send the feedback information received from SS <NUM> to BS <NUM>.

It will be understood that illustration of the sequence of the operations by SS <NUM> and SS <NUM> can occur in any order or simultaneously. For example, the channel estimation performed by SS <NUM> may occur before, after or concurrently with the channel estimation performed by SS <NUM>. Further, the illustration of the sequence of the operations by BS <NUM> and BS <NUM> can occur in any order or simultaneously. For example, the decide precoding <NUM> performed by BS <NUM> may occur before, after or concurrently with the decide precoding <NUM> performed by BS <NUM>.

<FIG> illustrates a process for interference avoidance according to embodiments of the present disclosure. The embodiment of the interference avoidance process <NUM> shown in <FIG> is for illustration only. Other embodiments of the interference avoidance process <NUM> can be used without departing from the scope of this disclosure.

In some embodiments, interfering base stations can avoid interference with each other by choosing different codebook vectors within a standardized codebook. This is achieved by allowing the base stations to choose codebook vectors or matrices to transmit their own signals in the space which creates little or even no interference to the other cells' subscriber stations in the same bandwidth.

In step <NUM>, SS <NUM> performs channel estimation. SS <NUM> may be, for example, a cell-edge subscriber station. SS <NUM> estimates the channel matrix from BS <NUM> (e.g., the serving base station). Further, SS <NUM> estimates the channel matrices from BS <NUM> (e.g., a strong interfering base station). SS <NUM> estimates the channel matrices from BS <NUM> and BS <NUM>, respectively, through reference signals.

SS <NUM> generates feedback information in step <NUM>. SS <NUM> identifies preferred codebook vectors or matrices. Based on the estimated channel matrices, SS <NUM> searches for a codebook vector or matrix that maximizes a receive signal power for SS <NUM>. Thus, SS <NUM> generates a precoding vector or matrix for its own serving cell (e.g. from BS <NUM>) to maximize the received power for SS <NUM>. Additionally, SS <NUM> can search for a codebook vector or matrix that maximizes some other performance measures. SS <NUM> searches the codebook vector or matrix from BS <NUM> together with the codebook vectors or matrices from BS <NUM> subject to the configurable parameter threshold ε <NUM>. Thus, SS <NUM> identifies or calculates a number of precoding vectors or matrices such that, when used by BS <NUM>, an interference in the signal between SS <NUM> and BS <NUM> will be below threshold ε <NUM>. In some embodiments, SS <NUM> identifies only the codebook vectors or matrices from BS <NUM> that will cause an interference in the received signal from BS <NUM>. For example, the codebook information to each interfering base station can be either the combination of the precoding vectors or matrices that will create interference less than or equal to the threshold ε <NUM> or the combination of the precoding vectors or matrices that will create interference greater than the threshold ε <NUM>. In some additional and alternative embodiments, SS <NUM> divides the standardized codebook into a preferred set <NUM> and a restricted set <NUM>.

In step <NUM>, SS <NUM> sends the feedback information (also referred to as precoding matrix message) to BS <NUM>. The feedback information includes codebook information related to the codebook vectors or matrices. The feedback information is reported by SS <NUM> to BS <NUM>. Additionally, information related to the average SNR (or some other performance measures) together with the SNR improvement (or some other performance measures) when BS <NUM> is using the preferred codebook vectors or matrices are also reported.

For example, for all the channels connected to SS <NUM>, SS <NUM> sends feedback information including codebook information related to either the directions of strong eigen-channels or those of the weak eigen-channels. SS <NUM> sends this codebook information either to BS <NUM> or to BS <NUM> directly.

For the system shown in <FIG>, the interfering channel matrix received at SS <NUM> is H<NUM> <NUM>. SS <NUM> can send the direction of the eigen-channels of H <NUM> <NUM> where the corresponding singular value is substantial. Furthermore, SS <NUM> may also elect to feedback the receive channel vector from each antenna to BS <NUM> directly or indirectly through BS <NUM>. For example, for the interfering channel matrix H<NUM> <NUM>, SS <NUM> can feedback quantized directions of <MAT> where is defined by Equation <NUM>:
MathFigure <NUM>
[Math. <NUM>] <MAT>.

SS <NUM> may also send, directly to BS <NUM>, the feedback information related to the interfering channel gains with or without the scheduling information. For example, SS <NUM> can send the scheduling information to the BS <NUM>. Upon receiving the scheduling information, BS <NUM> may get the information about interference level and information related to the channel matrices from previous coordination between BS <NUM> and SS <NUM> for the particular frequency band.

BS <NUM> receives the feedback information in step <NUM>. BS <NUM> processes the information and identifies that the interfering base station is BS <NUM>. Then BS <NUM> forwards the feedback information to BS <NUM> in step <NUM>.

BS <NUM> receives the feedback information from BS <NUM> in step <NUM>. In some embodiments, BS <NUM> receives the feedback information directly from SS <NUM> in step <NUM>.

In steps <NUM> and <NUM>, BS <NUM> and BS <NUM> respectively select codebook vectors or matrices for future transmissions. In step <NUM>, upon receiving feedback information from either BS <NUM> or SS <NUM>, BS <NUM> chooses a codebook vector or matrix to send to SS <NUM> (e.g., the intended subscriber station for BS <NUM>). BS <NUM> can select the codebook vector or matrix to send to SS <NUM> based on the feedback information from SS <NUM>. BS <NUM> also chooses a codebook vector or matrix to send to SS <NUM> in step <NUM>.

For example, BS <NUM> may choose to restrict the codebook vectors or matrices, or BS <NUM> can choose the codebook vectors or matrices from the preferred set based on the average SNR values of SS <NUM>. To be specific, BS <NUM> may decide the precoding vectors or matrices to SS <NUM> depending on the performance improvement for SS <NUM> and whether an average SNR for the communications between BS <NUM> and SS <NUM> passes beyond a certain base station threshold ξ. As another example, if BS <NUM> identifies that one or more of the codebook vectors or matrices in the preferred set <NUM> can be used without affecting the SINR of the signal between BS <NUM> and SS <NUM>, BS <NUM> may select one of the codebook vectors or matrices in the preferred set. Additionally, BS <NUM> may avoid selection of a codebook vector or matrix in the restricted set if the restricted set is the feedback information that is provided.

In some embodiments, SS <NUM> sends a special indicator to enable a dynamic inter-cell interference coordination. This dynamic overload indicator is obtained in the "Feedback Information Generating" step <NUM> where either all (or most of) the combinations of the codebook vectors or matrices will bring an interference level greater than the threshold ε <NUM> or all the combinations will produce an interference level smaller than the threshold ε <NUM>. After obtaining this indicator, BS <NUM> and BS <NUM> can jointly perform inter-cell interference coordination to avoid inter-cell interference.

For example, BS <NUM> schedules SS <NUM> to another frequency band (or other resource blocks) if BS <NUM> receives the dynamic overload indicator from SS <NUM> indicating that all (or most of) the combinations of the codebook vectors or matrices cannot bring the interference level to be smaller than threshold ε <NUM>.

In some such embodiments, where the SNR between BS <NUM> and SS <NUM> reaches a predetermined level, SS <NUM> is configured to raise the threshold ε <NUM> such that all the combinations will produce an interference level smaller than the threshold ε <NUM>. In some additional and alternative embodiments, where the SNR is above a certain threshold ξ, BS <NUM> is configured to adjust the threshold ε <NUM>. In such embodiments, BS <NUM> can send a separate signal to SS <NUM> or BS <NUM> can include the adjustment command within existing signaling between BS <NUM> and SS <NUM>.

In an additional example, BS <NUM> may request that BS <NUM> not schedule subscriber stations (e.g., SS <NUM>) in the particular frequency bands (resource blocks) upon receiving the dynamic overload indicator from SS <NUM>.

In some such embodiments, SS <NUM> informs BS <NUM> that all (or most of) the combinations of the codebook vectors or matrices cannot bring the interference level to be smaller than threshold ε <NUM>. Thereafter, BS <NUM> utilizes other means, such as, but not limited to, using a different frequency band, to transmit to SS <NUM>.

<FIG> illustrates another process for interference avoidance according to embodiments of the present disclosure. The embodiment of the interference avoidance process <NUM> shown in <FIG> is for illustration only. Other embodiments of the interference avoidance process <NUM> can be used without departing from the scope of this disclosure.

In some embodiments, interfering base stations can avoid interference with each other by choosing different codebook vectors within a standardized codebook. In such embodiments, BS <NUM> and BS <NUM> share information related to all the channel matrices. BS <NUM> and BS <NUM> iteratively find good precoding vectors and matrices that avoid interference in the others respective signals.

SS <NUM> generates channel feedback information in step <NUM> based on the estimated channel matrices. SS <NUM> sends, to BS <NUM>, channel feedback information related to the channel matrices to BS <NUM> and the channel matrices to BS <NUM> in step <NUM>. In some embodiments, SS <NUM> sends the channel feedback information directly to BS <NUM> in step <NUM>.

For example, for all the interfering channels connected to SS <NUM>, SS <NUM> sends channel feedback information related to either the directions of strong eigen-channels or those of the weak eigen-channels of HHH (where H is the interfering channel matrix). The channel feedback information is sent either to BS <NUM> or to BS <NUM> directly. For the system shown in <FIG>, the interfering channel matrix received at SS <NUM> is H<NUM>. SS <NUM> can send the direction of the eigen-channels of <MAT> where the corresponding singular value is substantial.

In some additional embodiments, SS <NUM> sends quantized information about <MAT> where <MAT> is the Frobenius norm of matrix H. For example, a different codebook of <MAT> can be designed for sending the channel feedback information related to the interfering channel matrix.

BS <NUM> receives and process the channel feedback information received from SS <NUM> in step <NUM>. BS <NUM> processes the channel feedback information and identifies that the interfering base station is BS <NUM>. Then BS <NUM> forwards the channel feedback information related to all the channel matrices obtained from SS <NUM> to BS <NUM> in step <NUM>.

BS <NUM> receives the channel feedback information from BS <NUM> in step <NUM>. In some embodiments, BS <NUM> receives the channel feedback information directly from SS <NUM> in step <NUM>.

In steps <NUM>, BS <NUM> and BS <NUM> respectively iteratively select codebook vectors or matrices for future transmissions. BS <NUM> and BS <NUM> iteratively select codebook vectors or matrices for future transmissions independent of each other. Upon receiving information from either BS <NUM> or SS <NUM>, BS <NUM> chooses a codebook vector or matrix to send to SS <NUM> (e.g., the intended subscriber station for BS <NUM>). BS <NUM> also chooses a codebook vector or matrix to send to SS <NUM>.

<FIG> illustrates a process for codebook selection according to embodiments of the present disclosure. The embodiment of the codebook selection process <NUM> shown in <FIG> is for illustration only. Other embodiments of the codebook selection process <NUM> can be used without departing from the scope of this disclosure.

The codebook selection process step <NUM> for BS <NUM> is detailed in <FIG>. BS <NUM> and BS <NUM> each apply an iterative method to find the codebook vector or matrix. Without loss of generality, the procedures performed at BS <NUM> are illustrated. However, it will be understood that the procedures outlined for BS <NUM> apply equally to BS <NUM>. In such embodiments, the precoding vector or matrix of BS <NUM> depends on the precoding vector or matrix of BS <NUM> (since it will determine the interference caused to SS <NUM>).

In step <NUM>, an algorithm is initialized. BS <NUM> computes a possible precoding vector or matrix for BS <NUM> (let P<NUM> be the precoding vector or matrix). Also, BS <NUM> searches the precoding vector or matrix to maximize (or minimize) some performance measures based on the assumption that BS <NUM> is using P<NUM> (let P<NUM> be the resulting precoding vector or matrix). For example, BS <NUM> can search the precoding vector or matrix which maximizes the SNR or throughput.

In step <NUM>, BS <NUM> computes a precoding vector and matrix for BS <NUM> to maximize or minimize some performance measures based on the fact that BS <NUM> is using P<NUM> (update the resulting vector or matrix to P<NUM>). BS <NUM> further updates its precoding vector or matrix under some performance measures based on the assumption that BS <NUM> is using P<NUM> (update the resulting vector or matrix to P<NUM>).

In step <NUM>, BS <NUM> determines if P<NUM> and P<NUM> are stable such that a steady state has been achieved. If P<NUM> and P<NUM> are not stable, then BS <NUM> returns to step <NUM>. If P<NUM> and P<NUM> are stable (no change or minimal change), then BS <NUM> uses P<NUM> as the precoding vector or matrix. A similar procedure will take place in BS <NUM> to find P<NUM>.

In some embodiments, SS <NUM> sends an interference avoidance message to BS <NUM>. In such embodiments, the interference avoidance message (IAM) is a value that represents the codebook information, e.g., represents either the preferred set or restricted set of the codebook, or both. For example, the IAM may be a single PMI vector and a variable. In response, BS <NUM> calculates the preferred set based on the single PMI vector and variable.

Then, BS <NUM> sends a configuration message to SS <NUM> in step <NUM>. The configuration message includes the threshold ε <NUM>. In some embodiments, the configuration message contains commands for SS <NUM> to adjust the threshold ε <NUM>. Threshold ε <NUM> indicates the interference level at SS <NUM>. In some embodiments, the threshold ε <NUM> may represent a target interference level (e.g., tolerable interference level) for SS <NUM>. Receiving the threshold ε <NUM> by SS <NUM> triggers precoding vector or matrix reporting for inter-cell interference avoidance (or mitigation).

In step <NUM>, SS <NUM> performs feedback information generation. SS <NUM> identifies preferred codebook vectors or matrices. Based on the estimated channel matrices, SS <NUM> searches for a codebook vector or matrix that maximizes a receive signal power for SS <NUM>. Additionally, SS <NUM> can search for a codebook vector or matrix that maximizes some other performance measures. SS <NUM> searches the codebook vector or matrix from BS <NUM> together with the codebook vectors or matrices from BS <NUM> subject to the configurable parameter threshold ε <NUM>. In some embodiments, SS <NUM> identifies only the codebook vectors or matrices from BS <NUM> that will cause an interference in the received signal from BS <NUM>. For example, the codebook information to each interfering base station can be either the combination of the precoding vectors or matrices that will create interference less than or equal to the threshold ε <NUM> or the combination of the precoding vectors or matrices that will create interference greater than the threshold ε <NUM>. In some additional and alternative embodiments, SS <NUM> divides the standardized codebook into a preferred set <NUM> and a restricted set <NUM>. From the interference level parameter (i.e., threshold ε <NUM>) obtained from BS <NUM>, SS <NUM> also computes the IAM. The IAM indicates the set of recommended or restricted precoding vectors or matrices for the interfering base stations (e.g., BS <NUM>).

In some embodiments, BS <NUM> and SS <NUM> negotiate to feedback the combination of the precoding vectors or matrices that will create interference less than or equal to threshold ε <NUM>. Additionally, if SS <NUM> cannot find any combination of the precoding vectors or matrices that will create interference less than or equal to threshold ε <NUM>, SS <NUM> can feedback codebook vector or matrix only for BS <NUM>.

In additional and alternative embodiments, BS <NUM> and SS <NUM> negotiate to feedback the combination of the precoding vectors or matrices that will create interference greater than threshold ε <NUM>. Additionally, if SS <NUM> cannot find any combination of the precoding vectors or matrices that will create interference greater than threshold ε <NUM>, SS <NUM> can feedback codebook vector or matrix only for BS <NUM>.

SS <NUM> sends feedback information to BS <NUM> in step <NUM>. The feedback information that SS <NUM> sends includes several elements. In some embodiments, the feedback information includes one or more of:.

In some embodiments, the information related to the average SINR improvement is a change in channel quality information (ΔCQI) when BS <NUM> is using the recommended set of precoding vectors or matrices.

For example, ΔCQI can be the difference between the expected SINR when BS <NUM> is using the recommended set and an expected SINR when BS <NUM> is not using the recommended set.

In another example, ΔCQI can be the difference between the worst case SINR when BS <NUM> is using the recommended sets and the worst case SINR when BS <NUM> is not using the recommended sets.

In yet another example, ΔCQI can be the difference between the worst case SINR when BS <NUM> is using the recommended sets and the expected SINR when BS <NUM> is not using the recommended sets.

In still another example, ΔCQI can be the difference between the expected SINR when BS <NUM> is using the recommended sets and the worst case SINR when BS <NUM> is not using the recommended sets.

In some embodiments, SS <NUM> sends the feedback information directly to BS <NUM>. In such embodiments, SS <NUM> sends one or more of the codebook information related to codebook vector or matrices for the interference channel, the IAM message indicating the set of recommended (e.g., preferred) or restricted precoding vectors or matrices, and the information related to SINR improvement if the set is applied at BS <NUM>.

BS <NUM> receives the feedback information in step <NUM>. BS <NUM> processes the information and identifies that the interfering base station is BS <NUM>. Then BS <NUM> forwards the feedback information to BS <NUM> in step <NUM>. The IAM indicating the recommended (preferred) or the restricted set of the precoding vectors or matrices are reported to BS <NUM>. The corresponding IAMs for different base stations and the SINR (or other performance measures) improvements are forwarded to their respective base stations as well.

In steps <NUM> and <NUM>, BS <NUM> and BS <NUM> respectively select codebook vectors or matrices for future transmissions. In step <NUM>, upon receiving information from either BS <NUM> or SS <NUM>, BS <NUM> chooses a codebook vector or matrix to send to SS <NUM> (e.g., the intended subscriber station for BS <NUM>) based on the feedback information (e.g., one or more of the precoding codebook vector or matrix, the IAM, and the SINR improvement ΔCQI).

BS <NUM> also chooses a codebook vector or matrix to send to SS <NUM> in step <NUM>. BS <NUM> may choose a codebook vector or matrix to send to SS <NUM> based on the feedback information (e.g., one or more of the precoding codebook vector or matrix, the IAM, and the SINR improvement ΔCQI) received from another base station or subscriber station.

In some embodiments, when BS <NUM> receives a request from BS <NUM>, BS <NUM> chooses to follow the recommendation based the SINR improvement report. Once BS <NUM> decides to follow the recommendation, BS <NUM> may choose a precoding codebook vector or matrix among the set specified by the IAM. In some such embodiments, BS <NUM> chooses the precoding codebook vector or matrix which maximizes the SINR (or other performance measures) from BS <NUM> to SS <NUM> within the set.

In some embodiments, when BS <NUM> receives multiple requests from different base stations, BS <NUM> may choose to follow a recommendation based on the SINR improvement reports from various base stations. A rank of the requests can be ordered based on ΔCQI and the channel between BS <NUM> and SS <NUM>.

In some embodiments, BS <NUM> sends an activation message indicating which subscriber stations are allowed to participate in the interference avoidance process. In such embodiments, BS <NUM> sends the activation message to SS <NUM> indicating that SS <NUM> is to report feedback information (e.g., reporting the preferred set or restricted set or sending the IAM). In some embodiments, BS <NUM> sends the activation message to subscriber stations, such as SS <NUM>, indicating that those respective subscriber stations will not participate in interference avoidance. SS <NUM> may or may not be an edge-cell device.

In some embodiments, by default all subscriber stations participate in the interference avoidance process and report feedback information. In such embodiments, BS <NUM> sends a deactivation message to subscriber stations that are not to participate in the interference avoidance process.

In some embodiments, the IAM includes a distance measurement. In such embodiments, SS <NUM> generates the IAM based on a distance measure that partitions the precoding codebook vectors into two parts. Part one (preferable set S<NUM> <NUM>) contains the codebook vectors or matrices that will cause interference to the receive signals less than threshold ε <NUM>; while part two (restricted set S<NUM> <NUM>) contains the complement of the first set. The IAM is actually a threshold to distinguish these two sets under different distance measures. The codebook partitioner <NUM> applies Equation <NUM> to identify codebook information for the preferred set and for the restricted set.

Again, <MAT> is a checking function. The checking function checks whether the precoding vector Pi satisfies a specified criteria. If a Pi satisfies the specified criteria, Pi is placed in the preferred set S<NUM> <NUM>. If Pi does not satisfy the specified criteria, Pi is placed in the restricted set S<NUM> <NUM>. Equation <NUM> illustrates the checking function according to one exemplary criterion. In Equation <NUM>, V is a filter at SS <NUM>.

Once the two sets are formed, the codebook partitioner <NUM> computes the distance from the elements in one particular set to the precoding codebook vector or matrix that maximizes the interference power (or other performance measure) received at SS <NUM>. An IAM threshold δ can then be used to distinguish these two sets.

For example, a chordal distance can be used to measure the distance between different precoding codebook matrices and set the threshold to be the maximum distance from the elements of preferred set to the precoding matrix which maximizes the interference power.

In some embodiments, BS <NUM> configures the target tolerable interference level threshold ε <NUM> and a target SINR improvement ΔCQI. BS <NUM> sends the target tolerable interference level threshold ε <NUM> and a target SINR improvement ΔCQI to SS <NUM> in the configuration message discussed hereinabove with respect to <FIG>, step <NUM>. Then, SS <NUM> performs feedback information generation (discussed hereinabove with respect to <FIG>, step <NUM>). In such embodiments, SS <NUM> reports the feedback information only if the SINR improvement ΔCQI is greater than the target SINR improvement ΔCQI. If SS <NUM> calculates that the SINR improvement ΔCQI is not greater than the target SINR improvement ΔCQI, then SS <NUM> does not send the feedback information to BS <NUM> or BS <NUM>. In some such embodiments, if SS <NUM> calculates that the SINR improvement ΔCQI is not greater than the target SINR improvement ΔCQI, then SS <NUM> sends a message to BS <NUM> indicating that SS <NUM> cannot meet the target SINR improvement ΔCQI. Accordingly, based on the feedback information related to the average SINR for SS <NUM>, BS <NUM> may decide to choose different strategies to serve SS <NUM>. For example, when the average SINR (or some other performance measures) is large for SS <NUM>, BS <NUM> may choose not to do anything. When the average SINR (or some other performance measures) is small for SS <NUM>, BS <NUM> may choose to reschedule SS <NUM> on different resource blocks.

In some embodiments, SS <NUM> configures the target tolerable interference level threshold ε <NUM> and a target SINR improvement ΔCQI. In such embodiments, BS <NUM> sends the activation message, discussed hereinabove, to SS <NUM> in step <NUM>. Then, SS <NUM> performs feedback information generation (discussed hereinabove with respect to <FIG>, step <NUM>). SS <NUM> configures the IAM threshold δ locally to be sent to BS <NUM>. For example, IAM threshold δ is computed based on the locally configured tolerable interference level threshold ε <NUM> through different distance measures. In such embodiments, SS <NUM> includes a locally configurable target tolerable interference level threshold ε <NUM>. After estimating the channels to BS <NUM> (e.g., the interfering base stations), SS <NUM> can partition the precoding codebook vectors and matrices into two sets <NUM>, <NUM> and compute the IAM threshold δ based on different distance measures. The examples of the distance measures can be the cross-correlation between different precoding codebook vectors and the chordal distance between different precoding codebook matrices.

In some embodiments, serving base stations configure the target tolerable interference level threshold ε <NUM> and a target SINR improvement ΔCQI for participating subscriber stations. In such embodiments, BS <NUM> sends the configuration message and activation message as unified message to SS <NUM>. Then, SS <NUM> performs feedback information generation (discussed hereinabove with respect to <FIG>, step <NUM>). SS <NUM> configures the IAM threshold δ locally to be sent to BS <NUM>. SS <NUM> reports the feedback information only if the SINR improvement ΔCQI is greater than the target SINR improvement ΔCQI. If SS <NUM> calculates that the SINR improvement ΔCQI is not greater than the target SINR improvement ΔCQI, then SS <NUM> does not send the feedback information to BS <NUM> or BS <NUM>. In some such embodiments, if SS <NUM> calculates that the SINR improvement ΔCQI is not greater than the target SINR improvement ΔCQI, then SS <NUM> sends a message to BS <NUM> indicating that SS <NUM> cannot meet the target SINR improvement ΔCQI. Accordingly, based on the feedback information related to the average SINR for SS <NUM>, BS <NUM> may decide to choose different strategies to serve SS <NUM>. For example, when the average SINR (or some other performance measures) is large for SS <NUM>, BS <NUM> may choose not to do anything. When the average SINR (or some other performance measures) is small for SS <NUM>, BS <NUM> may choose to reschedule SS <NUM> on different resource blocks.

Claim 1:
A method performed by a user equipment, UE (<NUM>) in a wireless communication system, the method comprising:
performing channel estimation based on a reference signal received from a first base station (<NUM>) and a reference signal received from a second base station (<NUM>); receiving, from the first base station (<NUM>), a configuration message related to an interference in a signal between the UE (<NUM>) and the first base station (<NUM>), wherein the interference is associated with a signal of the second base station (<NUM>);
obtaining first feedback information for the first base station (<NUM>) and second feedback information for the second base station (<NUM>) based on the channel estimation, wherein the first feedback information includes information associated with a first precoding matrix for the first base station (<NUM>) and the second feedback information includes information associated with a second precoding matrix for the second base station (<NUM>); and
transmitting, to the first base station (<NUM>), the first feedback information and the second feedback information.