This application relates generally to communication systems, and, more particularly, to wireless communication systems.
Wireless communication systems typically deploy numerous base stations (or other types of wireless access points such as eNodeBs) for providing wireless connectivity to user equipment such as mobile units or other wireless-enabled devices. Each base station is responsible for providing wireless connectivity to the mobile units located in a particular cell or sector served by the base station. The air interface between the base station and the mobile unit supports downlink (or forward link) channels for carrying information from the base station to the mobile unit and uplink (or reverse link) channels for carrying information from the mobile unit to the base station. The uplink and/or downlink channels typically include data channels for carrying data traffic such as voice information and control channels for carrying control signal such as pilot signals, synchronization signals, acknowledgment signals, and the like.
Multiple-input-multiple-output (MIMO) techniques may be employed when the base station and, optionally, the user terminals include multiple antennas. For example, a base station that includes multiple antennas can transmit multiple independent and distinct signals to multiple users concurrently and on the same frequency band. MIMO techniques are capable of increasing the spectral efficiency (e.g., the number of bits/second/Hertz) of the wireless communication system roughly in proportion to the number of antennas available at the base station. However, the base station also requires information about the state of the downlink channel(s) to each of the users to select users that have approximately orthogonal downlink channels for concurrent transmission. The channel feedback may be provided by the users on the reverse link, but this increases overhead associated with the MIMO transmissions, which reduces the spectral efficiency of the wireless communication system.
Random fluctuations in the channel states can create sets of downlink channels that are approximately orthogonal. Thus, if the number of users associated with a base station is large, these random fluctuations naturally tend to create groups of users that have approximately orthogonal downlink channels. Opportunistic MIMO schemes identify these groups of users so that the interference between the concurrent transmissions from the base station to the users in the selected group is within an acceptable tolerance level. For example, let nT denote the number of transmit antennas at the base station and let K indicate the number of users connected to the base station. In conventional systems, the number of transmit antennas at the base station nT is smaller than the number of users K connected to the base station. Each user is equipped with nR receive antennas. The channel coefficients between each transmit antenna and each receive antenna at user k can be assembled into an nR×nT matrix Hk, k=1, . . . , K.
In a multi-user MIMO system that employs linear unitary pre-coding matrices, the base station can transmit concurrently to as many as nT users, which can be chosen from the population of K users. The relationship between transmit and receive signals can be represented as:y=HUs+n  (1)where s is an nT-dimensional vector containing the transmit signals, y is the nR-dimensional vector of received signals, n is an nR-dimensional noise vector, and U is an nT×nT unitary pre-coding matrix, i.e., a matrix satisfying UUH=I. Note that some of the entries of s may be zero if the base station chooses to transmit to less than nT users (this is sometimes termed “rank adaptation”). Each base station typically stores a codebook consisting of L pre-coding matrices, Ui, i=1, . . . , L. Altogether, the L pre-coding matrices amount to nT·L column vectors, where each column vector has nT entries.
The pre-coding matrices map the signals onto the available channels. The base station can vary this mapping to adapt to the channel conditions by selecting different pre-coding matrices based on the base station's knowledge of the matrices Hk, k=1, . . . , K. Information about the matrix Hk, can be reported to the base station using feedback from the mobile unit. For example, when the base station implements an opportunistic scheme, each user periodically reports a preferred subset of the column vectors in the codebook via the reverse link to the base station. The users also report a quality indicator corresponding to a hypothetical transmission associated with each preferred column. The size of the subset of columns that can be selected and reported by each user is a parameter that can be anywhere between 1 and nT·L. For each pre-coding matrix U, in the codebook, the base station identifies those users that have expressed preference for a column vector from that matrix Ui and associates those users with that matrix Ui. Only one user can be associated with each column, so if several users have expressed preference for the same column vector of that matrix Ui, only one of those users is retained in the association (this can be done randomly or based on priorities). Thus, there are at most nT users associated with each matrix Ui. Note that each user could be associated with multiple pre-coding matrices Ui.
The base station selects one of the pre-coding matrices, e.g. on the basis of priorities of the users associated with the matrices Ui. The priorities can be determined by a scheduler in the base station. Once the matrix and associated users have been identified, the base station can begin concurrent transmission to the selected users using the corresponding pre-coding matrices Ui.
Base stations in conventional MIMO systems use a relatively small number of antennas (e.g., typically 2-4 antennas) to transmit and receive signals. The number of antennas is also typically significantly smaller than the number of users served by the base station. Consequently, the spatial channels can be determined using a reasonable amount of overhead to transmit feedback to the base station from the user equipment. Moreover, brute force techniques can be used to schedule packet transmissions over the channels by considering all possible combinations of users.