Method and apparatus for extracting large-scale features in propagation channels via non-orthogonal pilot signal designs

10594459 ยท 2020-03-17

Assignee

Inventors

Cpc classification

International classification

Abstract

A method and apparatus for data transmission in a cellular system are disclosed herein In one embodiment, the method comprises receiving transmissions of uplink pilot signals made in each slot, by a number of UEs, over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; estimating large-scale radio-channel propagation strengths of a plurality of nearby UEs to a base station; estimating radio-propagation channel coefficients between each base-station antenna and each UE, in a subset of UEs in the plurality of nearby UEs that have large-scale radio-channel propagation strengths to the base station that are stronger than those UEs in the plurality of nearby UEs not part of the subset; and transmitting to in-cell UEs via multi-user beamforming, including suppressing interference to one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs.

Claims

1. A method for data transmission in a cellular system, the method comprising: receiving transmissions of uplink pilot signals made in each slot, by a number of user equipments (UEs), over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; estimating large-scale radio-channel propagation strengths of a plurality of nearby UEs to a base station; estimating radio-propagation channel coefficients between each base-station antenna and each UE in a subset of UEs in the plurality of nearby UEs that have the large-scale radio-channel propagation strengths to the base station that are stronger than those UEs in the plurality of nearby UEs not part of the subset, the subset of UEs including in-cell UEs and one or more nearby out-of-cell UEs; and transmitting data to the in-cell UEs via multi-user beamforming, including the data suppressing interference to the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs based on the radio-propagation channel coefficients estimates.

2. The method defined in claim 1 wherein suppressing interference to the one or more nearby out-of-cell UEs comprises zero forcing the one or more nearby out-of-cell UEs.

3. The method defined in claim 1 further comprising estimating a channel covariance matrix of a received signal vector based on the received transmissions of uplink pilot signals.

4. The method defined in claim 1 further comprising determining pilot code indices of UEs in the subset of UEs.

5. The method defined in claim 4 further comprising determining a subset of pilot code indices of the one or more nearby out-of-cell UEs in the subset of UEs, the base station being operable to use the subset of pilot code indices to select the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs for which the base station suppresses interference.

6. The method defined in claim 1 further comprising allocating a set of pilot signals to each of its scheduled users for pilot transmission.

7. The method in claim 1, wherein the allocated pilot signals comprise a unique pilot code allocated to each scheduled user in the vicinity of at least one base station.

8. The method defined in claim 1 further comprising allocating a set of radio resource elements in each slot for uplink pilot transmission.

9. The method in claim 3, wherein estimating channels of the subset of UEs in the plurality of nearby UEs comprises estimating strength of multipath components in the radio channel propagation between each scheduled user in the vicinity of the base station.

10. A non-transitory computer readable storage medium that stores instructions, which when executed on a base station, causes the base station to perform a method comprising: receiving transmissions of uplink pilot signals made in each slot, by a number of UEs, over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; estimating large-scale radio-channel propagation strengths of a plurality of nearby UEs to a base station; estimating radio-propagation channel coefficients between each base-station antenna and each UE in a subset of UEs in the plurality of nearby UEs that have the large-scale radio-channel propagation strengths to the base station that are stronger than those UEs in the plurality of nearby UEs not part of the subset, the subset of UEs including in-cell UEs and one or more nearby out-of-cell UEs; and transmitting data to the in-cell UEs via multi-user beamforming, including the data suppressing interference to the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs based on the radio-propagation channel coefficients estimates.

11. The non-transitory computer readable storage medium defined in claim 10 wherein suppressing interference to the one or more nearby out-of-cell UEs comprises zero-forcing the one or more nearby out-of-cell UEs.

12. The non-transitory computer readable storage medium defined in claim 10 further comprising estimating a channel covariance matrix of a received signal vector based on the received transmissions of uplink pilot signals at the base station.

13. The non-transitory computer readable storage medium defined in claim 10 further comprising determining pilot code indices of UEs in the subset of UEs.

14. The non-transitory computer readable storage medium defined in claim 13 farther comprising determining a subset of pilot code indices of the one or more nearby out-of-cell UEs in the subset of UEs, the base station being operable to use the subset of pilot code indices to select the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs for which the base station suppresses interference.

15. The non-transitory computer readable storage medium defined in claim 10 further comprising allocating, by the base station, a unique pilot code allocated to each scheduled user in the vicinity of at least one base-station.

16. A base station comprising: a plurality of antennas operable to receive transmissions of uplink pilot signals made in each slot, by a number of UEs, over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; transmitter and receiver logic coupled to the plurality of antennas; a processor coupled to the transmitter and receiver logic and operable to estimate large-scale radio-channel propagation strengths of a plurality of nearby UEs to a base station, estimate radio-propagation channel coefficients between each base-station antenna and each UE in a subset of UEs in the plurality of nearby UEs that have the large-scale radio-channel propagation strengths to the base station that are stronger than those UEs in the plurality of nearby UEs not part of the subset, the subset of UEs including in-cell UEs and one or more nearby out-of-cell UEs, and transmit data to the in-cell UEs via multi-user beamforming, including the data suppressing interference to the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs based on the radio-propagation channel coefficients estimates.

17. The base station defined in claim 16 wherein the base station is operable to suppress interference to the one or more nearby out-of-cell UEs by zero-forcing the one or more nearby out-of-cell UEs.

18. The base station defined in claim 16 wherein the processor is operable to estimate a channel covariance matrix of a received signal vector based on the received transmissions of uplink pilot signals at the base station.

19. The base station defined in claim 16 wherein the processor is operable to determine pilot code indices of UEs in the subset of UEs.

20. The base station defined in claim 19 wherein the processor is operable to determine a subset of pilot code indices of the one or more nearby out-of-cell UEs in the subset of UEs, the base station being operable to use the subset of pilot code indices to select the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs for which the base station suppresses interference.

21. The base station defined in claim 16 wherein the processor is operable to assign a unique pilot code allocated to each scheduled user in the vicinity of at least one base station.

22. A wireless communication system comprising: a base station in a cell; and a plurality of UEs, a first group of the plurality of UEs being in cell with respect to the base station and a second group of the plurality of UEs being out-of-cell with respect to the base station, wherein the base station is operable to: detect pilots transmitted by nearby out-of-cell UEs, learn channels of the nearby out-of-cell UEs, and suppress interference to one or more of the nearby out-of-cell UEs, wherein the base station comprises: a plurality of antennas operable to receive transmissions of uplink pilot signals made in each slot, by a number of UEs, over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; transmitter and receiver logic coupled to the plurality of antennas; and a processor coupled to the transmitter and receiver logic and operable to: estimate large-scale channel gains of a plurality of nearby UEs to the base station, estimate channels of a subset of UEs in the plurality of nearby UEs that have the large-scale channel gains that are stronger than those UEs in the plurality of nearby UEs not part of the subset, the subset of UEs including in-cell UEs and one or more nearby out-of-cell UEs and transmit data to the in-cell UEs via multi-user beamforming, including the data suppressing interference to the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs based on the channels estimates.

23. The system defined in claim 22 wherein the base station suppresses interference by zero forcing the interference to at least one nearby out-of-cell UE.

24. The system defined in claim 22 wherein the base station comprises a memory to store UE pilot codes of out-of-cell UEs and is operable to use the out-of-cell UE pilot codes to identify the nearby out-of-cell UEs.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) The present invention will be understood more fully from the detailed description given below and from the accompanying drawings of various embodiments of the invention, which, however, should not be taken to limit the invention to the specific embodiments, but are for explanation and understanding only.

(2) FIGS. 1A-C illustrate pilot dimension assignment over cells.

(3) FIG. 2 illustrates base station suppression of interference of out-of-cell user terminals (users).

(4) FIG. 3 illustrates a flow diagram of one embodiment of a process for suppressing interference to nearby out-of-cell user terminals.

(5) FIG. 4 illustrates an example of base station-user associations in cellular networks.

(6) FIG. 5 illustrates an example of random accesses in cellular networks.

(7) FIG. 6 is a block diagram of one embodiment of a base station.

DETAILED DESCRIPTION OF THE PRESENT INVENTION

(8) In the following description, numerous details are set forth to provide a more thorough explanation of the present invention. It will be apparent, however, to one skilled in the art, that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form, rather than in detail, in order to avoid obscuring the present invention.

(9) Methods and apparatuses for allowing an increase of the network spectral efficiency per unit area in dense antenna/antenna-site network deployments are disclosed. In one embodiment, the techniques disclosed herein rely on the combined use of appropriately designed pilot codes for use in the uplink by active (scheduled) users in a cellular network, and of mechanisms in each cell in the network for on-the-fly estimation of the interference levels at nearby active out-of-cell users. Note that in the following disclosure, the terms user, user equipment, and user terminal are used interchangeably.

(10) Embodiments exploit large antenna arrays at each base station which, together with appropriately designed pilot codes, allow the base station to estimate the large-scale channel gains of a very large number of nearby active out-of-cell users. This can be in turn used for a variety of purposes. In the context of time-division duplex (TDD) transmission and reciprocity-based training, they can be used at the base station for proactively reducing interference (during downlink (DL) transmission) to nearby out-of-cell users to which the base station has estimated significant large-scale channel gains. These estimates can also be used for designing precoding vectors and adjusting MCS levels, etc. Although the disclosed mechanisms are described in the context of TDD and reciprocity-based training, they can also have a much broader scope. For instance, they can be used to perform interference mitigation in the uplink (UL) (either frequency division duplex (FDD) or TDD) to adjust user-base station re-associations in the network and to update multiplexing gains locally at each base station, etc.

(11) In one embodiment, UL signaling pilot protocols for the users and subsequent user-channel estimation methods at a base station allow the base station to estimate the large-scale gains between the base station and each user in a potentially large set of users served by nearby base stations. According to one embodiment, each base station is allocated a set of pilot codes for assignment among its users, and each base station is assumed to know the codes assigned to nearby base stations, but not the identity (and thus the relative location and received signal strengths) of the users to which nearby base stations assign these codes for UL pilot transmission in each resource block (RB). In one embodiment, the base station estimates the large-scale gains of nearby active in-cell and out-of-cell users by observing the UL pilot transmissions, where the number of (active in-cell and out-of-cell) users (of which the large-scale gains are estimated) is potentially much larger than the pilot dimensions.

(12) The estimates of the large-scale gains of users served by nearby base stations can be used for various purposes. In one embodiment, they can be used to adapt the transmission from the base station to mitigate the interference caused by that base station to a subset of nearby users that experience sufficiently high signal strength from that base station. In one embodiment, the large-scale gain estimates of out-of-cell users can be used for collecting statistics regarding the fraction and identities of out-of-cell users that are strongly interfered by a base station. In one embodiment, these statistics are used for re-association of users to base stations and/or for adapting the multiplexing gains (number of streams served per RB) at each base station. In another embodiment, the large-scale gain estimates of all nearby users close to a base station can also be used for random access of users to a nearby base station.

(13) Massive MIMO arrays at the base stations of a cellular network can substantially simplify scheduler operations. In sharp contrast to conventional MIMO, in massive MIMO, the rate provided to an active (scheduled) user by its serving base station does not depend on the channels of the other active users in the same cell and in all nearby cells and can be in fact predicted a priori. Such type of operation has been exploited over macro-cellular massive MIMO deployments to obtain large cell and cell-edge throughput gains with respect to their conventional MIMO counterparts. This rate-hardening approach has been extended to include operation over heterogeneous networks comprising of macro and small cells with massive MIMO arrays. In this context, near optimal user-base station association and load balancing can be achieved with simple user-base station association mechanisms and rudimentary round-robin schedulers at each base station.

(14) Embodiments of the invention have one or more of the following advantages with respect to the state-of-the-art network densification approaches: 1) Allow a substantial increase in the spectral efficiency (and throughputs) per unit area in hotspot areas by means of massive MIMO small cell systems, aggressive pilot reuse and fast (sub ms) user-proximity detection. 2) Allow a substantial increase in the spectral efficiency (and throughputs) per unit area in serving static and mobile users. 3) Rely on having users broadcast coordinated pilots over a set of concurrent RBs to assist in detection of users in the proximity of a base station. 4) Involve a broad range of pilot code designs combined with pseudorandom pilot allocation over the OFDM plane and channel estimation. 5) Allow channel estimation combined with compressed sensing in high frequency bands (include the mmWave band). 6) Allow pilot-code based user-proximity detection that can be also combined with a broad range of channel estimation algorithms based on UL pilot transmission to allow enhancing the multiplexing gains achieved in a variety of wireless transmission scenarios over a broad range of carrier frequencies.

(15) One or more problems solved by one or more embodiments include the following: 1) Mechanisms for on-the-fly estimation at each base station of the large-scale channel coefficients of out-of-cell active users. 2) Mechanisms for on-the-fly estimation at each base station of the propagation channels between the base station and the strongest received out-of-cell active users. The estimated channels can be used for interference suppression to out-of-cell users in the DL, or to suppress interference in the UL from the strongest received out-of-cell active users. 3) Pilot code designs for UL pilot transmissions to be used across a cellular network.

(16) Embodiments of the invention include methods and apparatuses for fast (e.g., sub ms) user-proximity detection and identification based on UL pilot transmission from a number of users sharing a common set of pilot dimensions over a set of concurrent RBs (or scheduling slots).

(17) In one embodiment, the mechanism can be applied at each base station of a cellular network. This allows each base station to determine a subset of user channels that can be reliably estimated, and subsequently which user streams to transmit, and the beams for carrying these streams. Embodiments of the invention relies on judiciously choosing: (a) the number of users that use a common set of pilot dimensions across a set of concurrent RBs; (b) the design of pilot codes used by these users; (c) the mechanism for estimating the large-scale channel gains of nearby users; (d) the identity of the active nearby users in proximity of the base station, according to the estimate of the large-scale gains; and (e) the mechanism for estimating the small-scale channel coefficients of these users. As a result, the base station in the phase of data transmission can suppress the interference to nearby unintended users so as to increase the throughput of the nearby unintended users served by the base stations in other cells, translating in gains in spectral efficiencies achieved per unit area.

(18) Embodiments of the invention enable a wireless network operator to increase the cell and cell-edge throughputs in massive MIMO cellular deployments. Embodiments of the invention allow users using the same pilot resources to be served simultaneously by the massive MIMO small cell systems. This allows network densification benefits to be realized together with large antenna arrays benefits, thereby enabling very large spectral efficiencies (and throughputs) per unit area. These deployments would allow the network operator to substantially increase the throughput per unit.

Detailed of Embodiments

(19) Embodiments of this invention include protocols for aggressive uplink pilot sequence generation, pilot reuse and assignment across cellular network, in conjunction with methods and apparatuses for base stations to estimate large-scale channel gains of nearby users, fast active-user proximity detection at the associated base stations, and estimating small-scale channel coefficients of these identified nearby users. Embodiments of the invention can enable large densification benefits to be realized in the DL of wireless networks. In one embodiment, fast channel estimation is performed at the base station in TDD systems owing to the channel reciprocity. The techniques described herein can increase the user throughput per unit area by applying multi-user MIMO and by suppressing the interference received at cell-edge users.

(20) Although not described in detail, the same UL pilot reuse protocols and the corresponding on-the-fly user proximity detection mechanisms can be used also for UL data transmission.

(21) The methods disclosed herein are henceforth described in detail in the context of a cellular system with massive MIMO small cells. Without loss of generality, embodiments of this invention focuses on a setting involving a layout of J small cells with massive MIMO base stations, all operating on the same band and serving a set N of users. In one embodiment, OFDM transmission resources are split into slots or resource blocks (RBs), with each slot/RB corresponding to a contiguous block of OFDM subcarriers and symbols. In one embodiment, within each RB/slot, a subset of users are active, i.e., scheduled for transmission, in each cell.

(22) In one embodiment, a block-fading channel model is assumed where the channel coefficients remain constant within each RB/slot. Let S.sub.j denote the multiplexing gain of base station j, so that base station j schedules (up to) S.sub.j users for data transmission within each RB/slot. In addition, each user has been (uniquely) associated to a base station (e.g., via the user-centric association method in D. Bethanabhotla, O. Y. Bursalioglu, H. C. Papadopoulos, and G. Caire, Optimal user-cell association for massive MIMO wireless networks, submitted to IEEE Trans. Wireless Comm., 2014. Available at arXiv: http://arxiv.org/abase station/1407.6731) and j*(k) denotes the index of the base station associated with user k. Also, let N.sub.j denote the set of users associated with base station j with cardinality |N.sub.j|=N.sub.j, and .sub.k denote the activity fraction of user k with respect to its uniquely associated base station j*(k).

(23) In one embodiment, each base station j uses the knowledge of activity fractions of the user set it serves, i.e., of the .sub.k's for all the user indices k that belong to N.sub.j, to construct a scheduling policy over a set of RBs, which schedules each user kin the set N.sub.j at a fraction that is approximately equal to a desired activity fraction .sub.k. With round-robin scheduling within each cell, all N.sub.j users in cell j equally share the transmission resources, and thus the activity fraction .sub.k's of all these users equal min(1, S.sub.j/N.sub.j), implying that every user should be scheduled by base station j for (UL pilot+DL data) transmission on a fraction of the RBs that is min(1, S.sub.j/N.sub.j). In one embodiment, each base station performs such scheduling independently of the other base stations and the scheduling policy used by base station j (i.e., the IDs of the users scheduled in each scheduling slot) is not shared with any other base station. Also, without loss of generality, the wireless communication system is a sufficiently loaded system, so that N.sub.j is not smaller than the base station multiplexing gain S.sub.j, i.e., N.sub.jS.sub.j, so that the activity fraction .sub.k's of all users in cell j are given by S.sub.j/N.sub.j.

(24) In one embodiment, all users' channels remain constant during the set of time-frequency resource elements (REs) comprising an RB/slot. In each RB, each of the S.sub.j active users at cell j (i.e., each user scheduled for transmission in the cell with base station j) transmits an UL pilot over Q pilot dimensions (over Q REs) that have been allocated for pilot transmission. In one embodiment, for every base station j, the multiplexing gain S at base station satisfies Q>S so that there are extra available signaling dimensions at each cell for combating interference imposed to users in nearby cells. That is, the multiplexing gain offered by the base station in each cell is given by min(Q, S.sub.j). If and only if Q>S.sub.j, then there are extra QS.sub.j resource elements available for uplink pilot transmission that will allow the base station to estimate the channels of nearby out-of-cell users. Subsequently, in addition to serving its own S.sub.j in-cell users, the base station can also mitigate interference to some (or all) of these nearby out-of-cell users.

(25) K.sub.j and K denote the set of active users at cell j and throughout the network, respectively. To simplify notation, let K={1, 2, , K} where K=.sub.j=1.sup.JS.sub.j and S.sub.j=|K.sub.j|. Also, note that j*(k) is the unique index for which k belongs to the set K.sub.j. Consider a generic RB and for any given active user k in the set K, and assume that user has been assigned to transmit an Q1 uplink pilot {square root over (.sub.p)}a.sub.k, where a.sub.k denotes the unit-norm normalized version of the UL pilot vector used by the k-th active user and .sub.p represents the a priori known UL pilot transmit energy.

(26) In one embodiment, each base station knows all the pilot vectors (including those used at nearby base stations). From an implementation point of view, each of the S.sub.k active users in cell k within any given slot is given a distinct pilot code out of a set of S.sub.k pilot codes available at base station k and these codes are assumed known a priori to the neighboring base stations. In a practical system, this would imply that the pilots are specific to each base station, i.e., base station j assigns S.sub.j codes to its active users and that set of codes is known to all nearby base stations. On the other hand, a base station is assumed not to know the scheduling policies of nearby base stations. Hence, the identities of nearby active users scheduled within each RB by nearby base stations (and thus the users in nearby cells using these uplink pilots) are unnecessary at base station j.

(27) The received signal at the M-dimensional array of base station j from all the pilot transmissions in the network during the Q REs allocated for UL pilots (after rescaling by 1/.sub.p) can be expressed in the form of the following QM matrix:

(28) Y j = .Math. k = 1 K a k h kj T + W j ( Eqn . 1 )
where h.sub.kj denotes the M1 channel between the antenna of the k-th active user (i.e., the user assigned the k-th UL pilot code) and the M antennas of base station j. This invention assumes that h.sub.kj comprises of Ccustom character(O, g.sub.kj) IID entries and the h.sub.kj's are independent in k and j. Also, W represents the noise, and each entry is modeled as IID and obtained from the distribution Ccustom character(O, .sub.w.sup.2), where .sub.w.sup.2=N.sub.o/.sub.p and N.sub.o denotes the thermal noise power.

(29) In one embodiment of a cellular system in which each cell independently schedules its users, any given base station does not know the identities of the scheduled users in the neighboring cells. In one embodiment, base station j knows the g.sub.kj's for all users with index k in the set K.sub.j (intra-cell users), but it does not know the g.sub.kj's for any k that is not in the set K.sub.j. In another embodiment, base station j does not know g.sub.kj's for all active users, including those in its cell. Without loss of generality, embodiments described herein are presented in the context of the latter scenario.

(30) In one embodiment, the disclosed techniques are used to enable interference suppression in the DL of a TDD system with reciprocity-based training. Based on the received signal over the Q UL pilot resource elements, in the data portion of the RB, base station j sends dedicated information-bearing signals to each of its active users on a locally designed precoder. Without loss of generality, in one embodiment, linear precoding options are used where (during the data transmission portion of the RB) base station j transmits the following M1 signal vector over its M-dimensional array

(31) x j = .Math. k �� j v k u k ( Eqn . 2 )
where u.sub.k is the information bearing signal for user k and v.sub.k denotes the corresponding precoding vector satisfying v.sub.k.sup.2=1. Also, let E[|u.sub.k|.sup.2]=p.sub.k and assume a power constraint of the form

(32) .Math. k �� j p k P j . ( Eqn . 3 )
The received signal at the active user k during the data-transmission portion is given by

(33) y k DL = .Math. j J h kj T x k + w k DL ( Eqn . 4 )
where w.sub.k.sup.DL represents the thermal noise and comprises of ED Ccustom character(0, N.sub.o) entries.

(34) The disclosed techniques can be also be used for enabling interference suppression in the UL (for either TDD or FDD transmissions) as well as for other purposes. Specifically, the techniques disclosed below can be used at base station j to estimate the large-scale gains of active users not only inside but also outside cell j from the observation of Y.sub.j. In principal, Y.sub.j allows estimating the large-scale gains of as many as Q.sup.2 users. Subsequently, base station j determines the nearby users in the nearby cells (e.g., it can determine the indices of the pilot codes with the largest gains to base station j). With this information, base station j then estimates the channels of these dominant users from Y.sub.j. These channel estimates can then be taken into consideration in designing the precoder, i.e., in order to choose the sets {v.sub.k, p.sub.k} at base station j for all users with index kin the set K.sub.j, so as to mitigate the pilot contamination levels to the out-of-cell users with significant channel gains.

(35) In one embodiment, channel estimation at a given base station j is based on observation of (Eqn. 1) resulting from the L pilots that are transmitted over a generic RB by the set of active users, i.e., scheduled in that RB. To simplify the notation, the dependence of variables on the base station index j is omitted and (Eqn. 1) is restated in the following form:

(36) Y = .Math. k = 1 K a k h k T + W ( Eqn . 5 )
where the M1 vector h.sub.k has IID Ccustom character(0, g.sub.k) entries and the large-scale gains g.sub.k's are unknown to the base station. Note that although K is used to denote the total number of all active users in the network, only the active users sufficiently close to cell j matter. Thus, K is possibly large but finite. In accordance with (Eqn. 1), the noise matrix W in (Eqn. 5) is assumed to have ED Ccustom character(0, .sub.w.sup.2) entries, and the random variables in W and h.sub.k are assumed to be independent. It is convenient to also express Y in the form
Y=[y(1)y(2)y(M)](Eqn. 6a)
where
y(n)=Ah(n)+w(n)(Eqn. 6b)
where w(n) is the n-th column of W, and
h(n)=[h.sub.1nh.sub.2nh.sub.Kn].sup.T(Eqn. 6c)
where h.sub.kn is the channel between the antenna of user k and the n-th antenna of base station j, and
A=[a.sub.1a.sub.2a.sub.K](Eqn. 6d)

(37) In one embodiment, based observation of Y, the base station first estimates the large-scale gains of all users (sufficiently close to the base station) and subsequently estimates the small-scale fading coefficients.

(38) In one embodiment, consider the problem of estimating the vector of the large-scale user-channel gains
g=[g.sub.1g.sub.2g.sub.K].sup.T(Eqn. 7)
based on observation of Y from (Eqn. 5). Let R.sub.y denote the covariance matrix of each Q1 column of the matrix Y, i.e.,

(39) R y = E [ y ( n ) y H ( n ) ] = .Math. k = 1 K g k a k a k H + w 2 I . ( Eqn . 8 )

(40) Embodiments of the invention leverage the presence of a large array of the base station (for large M) which allows the base station to accurately estimate the covariance matrix R.sub.y from observation of Y. In one embodiment, the base station obtains the estimate the sample covariance matrix

(41) R ^ y = 1 M .Math. n = 1 M y ( n ) y H ( n ) . ( Eqn . 9 )
Provided M is sufficiently large, {circumflex over (R)}.sub.y is an accurate estimate of R.sub.y. Consequently, it is worth considering first the problem of estimating (or rather being able to determine) the g.sub.k's based on knowledge of R.sub.y. To do this, define R.sub.s=R.sub.y.sub.w.sup.2I and r.sub.s=vec(R.sub.s) where the vec() operator takes a matrix and concatenates its elements column-by-column to build one large column-vector containing all the elements of the matrix. (Eqn. 8) can then re-expressed in the following equivalent form:
r.sub.s=Dg+z(Eqn. 10)
with the Q.sup.2K matrix D which is given by
D=[d.sub.1d.sub.2d.sub.K](Eqn. 11a)
where
d.sub.k=vec(a.sub.ka.sub.k.sup.H)(Eqn. 11b)
and
z=vec(.sub.w.sup.2I).(Eqn. 11c)
Inspection of (Eqn. 10) reveals that if K>Q.sup.2 the system of linear equations is under-determined, so g cannot be uniquely determined from r.sub.s. In contrast, if KQ.sup.2 the vector g can be uniquely determined from r.sub.s, provided the pilot matrix A (i.e., the pilot vectors a.sub.k for each k) is chosen such that D from (Eqn. 11) has full column rank.

(42) First, consider the scenario where KQ.sup.2. There are several approaches of constructing A for which D obtained from (Eqn. 11) has full column rank.

(43) In one embodiment, a set of pilot codes {a.sub.k} are generated offline, and only a subset of these codes is assigned to each base station. In one embodiment, each pilot code a.sub.k is generated as a pseudo-random vector (for each k) with complex-valued Ccustom character(0,1) entries and then is rescaled to unit norm. This approach yields a matrix D which has full column rank almost surely. In one embodiment, each pilot code a.sub.k is generated as a vector (for each k), where each entry is with the amplitude 1/{square root over (M)} and a random phase followed from the uniform distribution custom character(0, 2). This approach also yields a matrix D which has full column rank almost surely. In one embodiment, each pilot code a.sub.k is generated through Grassmannian line packing, which provides a property that the angle between any two lines is as larger as possible (the resolution between any two lines cannot be too small), so as to avoid the possibility of rank deficiency of the matrix D. Specifically, Grassmannian line packing is equivalent to solving the optimization problem:

(44) max a k , k = 1 , K min i j .Math. a i H a j .Math. F 2 subject to .Math. a k .Math. F 2 = 1 , k = 1 , , K . ( Eqn . 12 a )
for designing both amplitude and phase of each entry of code vectors, and to solving the optimization problem:

(45) max a k , k = 1 , .Math. K min i j .Math. a i H a j .Math. F 2 subject to ( a k ) i = 1 / M , i = 1 , .Math. , M , and k = 1 , .Math. , K . ( Eqn . 12 b )
for designing only the phase of each entry of code vectors. Also, optimization problems defined in Eqn. 12a and Eqn. 12b have modified versions, including, but not limited to, restricting the codes to be real-valued. There is a large body of literature on the design and testing of Grassmannian line packing algorithms. See for example, J. H. Conway, R. H. Hardin, N. J. A. Sloane, Packing Lines, Planes, etc.: Packings in Grassmannian Space, Experimental Mathematics, No. 5, 1996, pp. 139-159.

(46) In another embodiment, a set of pilot codes {a.sub.k} are generated offline for a group of adjacent F cells, and reused for every group of F cells cross the entire network. In addition, within each group, each user k is assigned a unique pilot code. This is similar to the spatial reuse concept for UL training in TDD systems and/or DL training and data transmission in FDD systems. Specifically, start from the first group where each pilot code a.sub.k is. Without loss of generality, denote by the matrix A.sub.1 the pilot vectors generated and assigned to all the users in the first group. Next, a QQ unitary matrix U is generated. Finally, the pilot matrix A.sub.n=U.sup.n-1A.sub.1 (consisting of Q vectors) is computed and assigned to the n-th cell group. Among the three steps above, the construction of A.sub.1 in the first step can follow from any of the three approaches described in last paragraph; in the second step, there are two approaches disclosed herein to construct the unitary matrix U. In one embodiment, U is generated via matrix decomposition, such as Singular Value Decomposition. In one embodiment, U can be carefully designed so that the distance between any two vectors assigned to neighboring cell groups is as large as possible. Given the construction of A.sub.1 in the first step, it is equivalent to solving the optimization problem

(47) 0 max U min i j n = 1 , 2 , .Math. a i H U n - 1 a j .Math. F 2 subject to U H U = 0 ( Eqn . 13 )
where a.sub.i and a.sub.j are every possible two column vectors chosen from A.sub.1.

(48) Besides the approaches of generating the pilot codes {a.sub.k} for all users described above, there are two approaches to assign pilot dimensions, i.e., the set of Res, to the adjacent F cells comprising a cell group. In one embodiment, the Q pilot dimensions (REs) assigned to each cell are orthogonal that assigned to the other cells as long as K.sub.jQ.sup.2 for each jJ where J is the set of the base stations to form a group. In one embodiment, the Q pilot dimensions (REs) assigned to each cell are allowed to have overlap dimensions with others as long as .sub.jJK.sub.j|.sub.jJcustom character.sub.j|.sup.2 where custom character.sub.j is the set of Q pilot dimensions (REs) assigned to base station j. FIGS. 1A-1C show one such example of orthogonal pilot dimension assignment and non-orthogonal pilot dimension assignment.

(49) Next, given that D has full column rank (of course this means KQ.sup.2), the sample covariance matrix {circumflex over (R)}.sub.y from (Eqn. 11) is used in place of (the unknown) R.sub.y, and the base station estimates the vector g as follows. First, an estimate of R.sub.s=R.sub.y.sub.w.sup.2I is formed. In particular, the following matrix is computed.
R.sub.s={circumflex over (R)}.sub.y.sub.w.sup.2I.(Eqn. 12a)
Since the matrix R.sub.s is Hermitian by construction, i.e., R.sub.s=R.sub.s.sup.H, its eigen-decomposition is of the form
R.sub.s=V.sub.s.sub.sV.sub.s.sup.H(Eqn. 12b)
where V.sub.s and .sub.s=diag(.sub.1 .sub.2 .sub.Q) are the eigenvector and eigenvalue matrices in its eigen-decomposition. Note that although the eigenvalues are guaranteed to be real they are not guaranteed to be non-negative (as required for R.sub.s to be a valid covariance matrix). Hence, to guarantee the estimate of R.sub.s to be a valid covariance matrix, the following matrix is formed as the estimate of R.sub.s:

(50) R ^ s = V _ s ^ s V _ s H where ( Eqn . 12 b ) ^ s = diag ( ^ 1 ^ 2 ^ Q ) and ( Eqn . 12 d ) ^ q = { _ q if _ q 0 0 otherwise . ( Eqn . 12 e )
Given R.sub.s has been computed, the estimate of the vector g can be obtained by means of solving the following problem

(51) min g .Math. R ^ s - .Math. k = 1 K g k a k a k H .Math. F 2 subject to g 0 ( Eqn . 13 )
This is a standard quadratic programming (QP) problem that can be readily solved by standard QP solvers. Aside from designing the pilot codes described above, efficient algorithms can be designed to allow solutions with low complexities to the QP problem in (Eqn. 13).

(52) There is also the issue of which estimator to use for estimating R.sub.y. In one embodiment, the sample covariance estimator is designed as (Eqn. 9) where M>>Q and each h.sub.k has ED entries, and thus the bias of the sample covariance estimator is small. In another embodiment, if the degrees of freedom in the channel h.sub.k's are possibly much fewer than M, then the bias of the sample covariance estimator (Eqn. 9) could prove a factor and other techniques can be used to estimate the g.sub.k's, such as G-estimation type techniques.

(53) After considering the scenario where KQ.sup.2, next consider the scenario where K>Q.sup.2 and the QM.sub.matrix D has full row rank but only a small subset of K users, less than Q users, have dominant g.sub.k's. Since the number of users for which the pilot codes are designed is not limited by Q, each user can be assigned a permanent code to use, even when users move from one cell to another. There are two methods to estimate g.sub.k's. In one embodiment, follow the several approaches described above until (Eqn. 13) for the scenario where KQ.sup.2, and the problem can be readily solved by standard QP solvers. In another embodiment, since the channel matrix comprising of the channel gains of all the K users is sparse (only a small subset of K users, less than Q, have dominant g.sub.k's, and thus the vector g is sparse), a compressed sensing type of formulation can be leveraged. For more information on compressed sensing, see Bajwaet al, Compressed channel sensing: A new approach to estimating sparse multipath channels, Proc. of the IEEE, vol. 98, no. 6, pp. 1058-1076, June 2010 and Ao et al., Compressed Sensing-based Pilot Assignment and Reuse for Mobile UEs in mmWave Cellular Systems, Proc. of 2016 IEEE ICC, Kuala Lumpur, Malaysia, May 2016.

(54) Consequently, starting from (Eqn. 10) and replacing r.sub.s in r.sub.s=Dg+z with {circumflex over (r)}.sub.s where {circumflex over (r)}.sub.s=vec({circumflex over (R)}.sub.s), results in
{circumflex over (r)}.sub.sz=Dg,(Eqn. 14)
and then g can be obtained by means of solving the following compressed sensing problem

(55) min g .Math. g .Math. 1 subject to .Math. D H ( r ^ s - z ) .Math. .Math. g 0 ( Eqn . 15 )
where and .sub.1 and .sub. represent the 1-norm and the infinity norm, respectively, and is a system parameter that can be chosen to control the error.

(56) Once the estimate is obtained by solving (Eqn. 13) or (Eqn. 15), the base station proceeds to obtain the estimates of the h.sub.k's. This description discloses the general form where the base station estimates all the out-of-cell user channels. However, in one embodiment, the base station estimates the channel h.sub.k only for user k for which the estimate .sub.k is non-negligible. In general, this would be true only for a small subset of the out-of-cell users.

(57) First, consider the problem of estimating h.sub.k based on Yin (Eqn. 5) with g known. The solution to this problem is well-known. It is a special case of the standard problem of estimating a signal via observation of linear functions of it in the additive white Gaussian noise. For completeness, the estimator is restated next. First, let
H=[h(1)h(2)h(M)],(Eqn. 16)
and the estimation problem can be recast as: estimate H via observation of Y=AH+W. Since
R.sub.h=Eh(n)h.sup.H(n)=G=diag(g.sub.1g.sub.2g.sub.K)(Eqn. 17)
the MMSE estimate of H is given by
.sub.MMSE=GA.sup.H[AGA.sup.H+.sub.w.sup.2I].sup.1Y.(Eqn. 18)
Given that g.sub.k's (and thus G) are unknown, the base station uses instead the estimate of g.sub.k's obtained by solving (Eqn. 13) or (Eqn. 15). Specifically, the base station obtains the following estimate of H
=A.sup.H[AA.sup.H+.sub.w.sup.2I].sup.1Y(Eqn. 19a)
where is given by
=diag(.sub.1,.sub.2.sub.K)(Eqn. 19b)
where the .sub.k's are given by the solution of (Eqn. 13). Noting that
=[(1)(2)(M)]=[.sub.1.sub.2.sub.k].sup.T(Eqn. 20)
As mentioned above, only the rows of corresponding to significant .sub.k's values would be computed by the base station in practice.

(58) Although embodiments focused the exposition assuming quasi-static channels, the techniques can be extended in principle to the general setting where wideband pilots are sent in the uplink by all users, and assuming sparsity in the channel (in AoA, AoD, multipath spread) users are detected and their channels are subsequently estimated. Such on-the-fly large-scale channel estimation is ideally suited for mmWave scenarios, where user channels decorrelate even faster. An extension of the techniques of this section for frequency-selective time-nonselective user channels over the RB is discussed next.

(59) Embodiments Over OFDM for Linear Time Invariant (LTI) Channels

(60) In this section, consider the problem of channel estimation at a given base station based on UL pilots broadcasted by a set of K scheduled users in the UL. In one embodiment, all these K users are active and known to be in the vicinity of base station j, OFDM type transmission is used and over the set of T OFDM symbols spanning the RB (and thus used for UL training and data transmission) the channel between active user k and base station j is time-invariant. In particular, the channel between user k and the m-th antenna of the base station during time-frequency element [t, f] is given by

(61) h k [ t , f ; m ] = .Math. n = 1 N h k , n ( m ) e j k , n f ( Eqn . 19 )
where h.sub.k,n(m) is the channel impulse of the n-th of N multipaths at the m-th antenna of the base station. Also, assume that the h.sub.k,n(m)'s are independent in k, n, m, and h.sub.k,n(m)Ccustom character(0, .sub.k,n) with .sub.k,n unknown. In addition, let

(62) g k = .Math. n = 1 N k , n . ( Eqn . 20 )
The K users transmit UL pilots over all [t, f] elements with t{1, 2, K, T} and f{1, 2, K, F}. Denoted by a.sub.k[t, f] the scalar (complex-valued) pilot transmitted by user k over [t, f]. Thus, the m-th antenna of the base station receives:

(63) y [ t , f ; m ] = .Math. k h k [ t , f ; m ] a k [ t , f ] + w [ t , f ; m ] ( Eqn . 21 )
Averaging over the massive array results in accurate estimates of
R.sub.y[t.sub.1,f.sub.1;t.sub.2,f.sub.2]=E[Y[t.sub.1,f.sub.1;m]y*[t.sub.1,f.sub.1;m]](Eqn. 22)
for all t.sub.1, t.sub.2{1, 2, K, T} and f.sub.1, f.sub.2{1, 2, K, F}. Thus, estimates are given by:

(64) R y [ t 1 , f 1 ; t 2 , f 2 ] = .Math. k = 1 K .Math. n = 1 N k , n e j k , n ( f 1 - f 2 ) a k [ t 1 , f 1 ] a k * [ t 2 , f 2 ] + w 2 [ t 1 - t 2 ] [ f 1 - f 2 ] ( Eqn . 23 )
for all t.sub.1, t.sub.2{1, 2, K, T} and f.sub.1, f.sub.2{1, 2, K, F} where R.sub.y[t.sub.1, f.sub.1; t.sub.2, f.sub.2] is known via the base station's observation but {.sub.k,n, .sub.k,n} (and thus the g.sub.k's) are unknown. Since the multipath channel of user k has N taps (of unknown delays and magnitudes), there are a total of T.sup.2F.sup.2 equations and 2NK unknowns.

(65) In one embodiment, proximity detection is used, i.e., identifying the subset of users with significant g.sub.k levels. Evaluating (Eqn. 23) for f.sub.1=f.sub.2=f results in

(66) R y [ t 1 , f ; t 2 , f ] = .Math. k = 1 K g k a k [ t 1 , f ] a k * [ t 2 , f ] + w 2 [ t 1 - t 2 ] ( Eqn . 24 )
which is valid for any t.sub.1, t.sub.2{1, 2, K, T} and f{1, 2, K, F} Noting that rewrite the set of T.sup.2F observations (Eqn. 24) in the form (Eqn. 8) with K unknowns, and then all the analysis and statements regarding estimation of the g.sub.k's above based on (Eqn. 8) carry through. For instance, by properly designing the a.sub.k[t, f] set, the g.sub.k's can be recovered from (Eqn. 24) provided T.sup.2FK. This mechanism can also be used to eliminate users not in proximity, and then perform channel estimation over the remaining subset of users. If T.sup.2F<K, compressed sensing type channel estimation (exploiting channel tap sparsity) can be used, based on (Eqn. 15) over mm-wave channels as described in W. U. Bajwa, J. Haupt, A. M. Sayeed, and R. Nowak, Compressed channel sensing: A new approach to estimating sparse multipath channels, Proc. of the IEEE, vol. 98, no. 6, pp. 1058-1076, June 2010. In one embodiment, a mechanism can use the virtual or canonical representation of each user's channel such as described in David Tse, Pramod Viswanath, Fundamentals of Wireless Communication, Cambridge University Press, 2005, where N is the multipath length, .sub.k,n=2n/N.sub.c, and N.sub.c is the number of tones in the OFDM system (one important option is of course to have F=N.sub.c). Note that any sparse channel reconstruction algorithm can be applied at this stage.

(67) In one embodiment, evaluating (Eqn. 23) for t.sub.1=t.sub.2=t results in

(68) R y [ t , f 1 ; t , f 2 ] = .Math. k = 1 K .Math. n = 1 N k , n e j k , n ( f 1 - f 2 ) a k [ t , f 1 ] a k * [ t , f 2 ] + w 2 [ f 1 - f 2 ] ( Eqn . 25 )
which is valid for any t{1, 2, K, T} and f.sub.1, f.sub.2{1, 2, K, F}. Noting that rewriting the set of TF.sup.2 observations (Eqn. 25) in the form (Eqn. 8) is associated with 2NK unknowns {.sub.k,n, .sub.k,n}, each pair for the same n is coupled into one term .sub.k,ne.sup.j.sup.k,n.sup.(f.sup.1.sup.-f.sup.2.sup.). Thus, collecting the observations R.sub.y[t, f.sub.1; t, f.sub.2] over f.sub.1, f.sub.2{1, 2, K, F} and substituting .sub.k,n=2n/N.sub.c, (Eqn. 25) can be further rewritten into a compact matrix form which is linear with the .sub.k,n's:

(69) 0 R y [ t , f 1 ; t , f 2 ] - w 2 [ f 1 - f 2 ] = .Math. n = 1 N e j 2 n N c ( f 2 - f 1 ) .Math. k = 1 K k , n q k [ t , f 1 , f 2 ] where q k [ t , f 1 , f 2 ] = a k [ t , f 1 ] a k * [ t , f 2 ] . Thus , ( Eqn . 26 ) R y [ t , f 1 ; t , f 2 ] - w 2 [ f 1 - f 2 ] = .Math. n = 1 N e j 2 n N c ( f 2 - f 1 ) .Math. k = 1 K k , n q k [ t , f 1 , f 2 ] = b ( t , f 2 - f 1 ) Gq ( t , f 1 , f 2 ) ( Eqn . 27 ) where b ( t , f 2 - f 1 ) = [ e j 2 N c ( f 2 - f 1 ) e j 2 2 N c ( f 2 - f 1 ) e j 2 N c N c ( f 2 - f 1 ) ] , ( Eqn . 28 a ) G = [ 1 , 1 2 , 1 K , 1 1 , 2 2 , 2 K , 2 M M O M 1 , N 2 , N K , N ] , ( Eqn . 28 b ) q ( t , f 1 , f 2 ) = [ q 1 ( t , f 1 , f 2 ) q 2 ( t , f 1 , f 2 ) q K ( t , f 1 , f 2 ) ] T . ( Eqn . 28 c )
Similar to (Eqn. 10), (Eqn. 27) can also be written into the following more compact matrix form by letting f.sub.1, f.sub.2 choose every possible entry in the set {1, 2, K, F}. Specifically, let
R.sub.s[t]=R.sub.y[t].sub.w.sup.2I(Eqn. 29)
where R.sub.y [t] is an FF matrix with its m-th row n-th column entry given by R.sub.y[t, f.sub.i; t, f.sub.j], and then define R.sub.s[t]=R.sub.y[t].sub.w.sup.2I, r.sub.s[t]=vec(R.sub.s[t]) and g=vec(G). Then (Eqn. 26) is re-expressed in the following equivalent form:
r.sub.s[t]=D[t]g(Eqn. 30)
where D[t] is an F.sup.2NK matrix, and its l-th row is given by vec(q(t, f.sub.m, f.sub.n)b(t, f.sub.mf.sub.n).sup.T).sup.T and the corresponding foot script variables m and n can be determined by the equation l=(n1)F+m. Since (Eqn. 30) has F.sup.2 linear equations NK unknowns, the approaches introduced above can be directly applied to find out the multipath channel impulse g of all the K users, each with N multipaths.
Related Embodiments for Data Transmission

(70) In one set of embodiments, the wireless communication system operates using TDD operation with reciprocity-based channel state information (CSI) acquisition, according to which each base station learns the DL channel on a given slot between its antenna array and an active user based on an UL pilot transmitted by the user within the given slot. Within each slot, Q pilot dimensions are allocated for UL pilots. In one embodiment, the Q pilot dimensions correspond to the Q time-frequency REs of the slot. In one embodiment, for the K.sub.j active users in cell j, each of the Q pilot dimensions can also be a code over Q pilot REs, with the Q pilot codes being orthogonal to one another. In one embodiment, these REs are elements of OFDM symbols preceding the OFDM REs used for DL data transmission. In one embodiment, the time-frequency elements on one or more OFDM symbols immediately following the OFDM symbols allocated to UL pilots are dedicated to base station processing (and may also allow the system to transition from UL (pilot) transmissions to DL data transmission). They provide the computation time necessary for the base station to process the received pilot transmissions and construct the precoded DL data signal that is to be transmitted over the remaining REs of the slot that follow.

(71) In one embodiment, the channel estimates of out-of-cell users are used to design the transmission signal for in-cell users so as to proactively mitigate interference to a subset of out-of-cell users. In one embodiment, the subset is determined based on the large-scale estimates of out-of-cell users. In one embodiment, the subset is determined as those out-of-cell users with large-scale channel gains exceeding a certain threshold. In one such example, the interference to an out-of-cell user by a base station transmission is considered acceptable if the received (interfering-signal) power level in the downlink at the user terminal is within a certain amount of dB (e.g., 3 dB) in excess of the noise level. Using this value, together with the transmit power at the BS this can be turned into a threshold on the large-scale user channel gain and, in turn, a threshold on the maximum received uplink pilot signal level. In one embodiment, the subset corresponds to a set of out-of-cell users with the largest large-scale channel gains.

(72) FIG. 2 illustrates the procedure to suppress the interference to a subset of out-of-cell users. Referring to FIG. 2, a central controller 001 is communicably connected to base stations 101, 201, etc. In one embodiment, the pilot sequence of each user spans Q dimensions, and each base station simultaneously serves K users and K<Q. Then each base station can first identify the indices of nearby users after estimating the large-scale channel gains. Next, the base station estimates the small-scale channel coefficients of the nearby users with significantly non-zero large-scale channel gains. In one embodiment, significantly non-zero large scale channel gains are those that are larger than a predetermined threshold where the predetermined threshold is, for example, the threshold in the paragraph immediately above, or the large-scale estimates divided by the largest large-scale estimate (so the ratio is no greater than one). Finally, in the phase of data transmission, the base station can zero-force the channels of nearby out-of-cell users. For example, after the base station 101 identifies the users with assigned pilots a.sub.1, a.sub.2, a.sub.3, a.sub.4, a.sub.5, a.sub.7, the identified users with assigned the pilots a.sub.5, a.sub.7 are out-of-cell users to base station 101.

(73) FIG. 3 is a data flow diagram of one embodiment of a process for suppressing interference to out-of-cell users with significantly non-zero large-scale channel gains. Referring to FIG. 3, a central controller provides a pilot code assignment (001) to base stations 101 and 201. That is, the pilot codes for use by UEs in the cells containing base stations 101 and 201 are provided to both base stations 101 and 201. In FIG. 3, UEs 1, 2, 3 and 4 are associated with base station 101 while UEs 5, 6, 7, and 8 are associated with base station 201. In one embodiment, the operations in the cells containing base stations 101 and 201 are synchronized (002) and thereafter UL pilot transmission occurs (003) in which UEs 1, 2, 3, and 4 transmit pilots for base station 101, which causes interference, shown as the interference signal, to base station 201. At the same time, UEs 5, 6, 7, and 8 transmit pilots for base station 201, which causes interference, shown as the interference signal, to base station 101.

(74) In response to the pilot transmissions, base stations 101 and 201 perform the same operations described above using processing logic that may comprise hardware, software, firmware or a combination of the three. More specifically, base station 101 receives the pilot transmissions (processing block 102), estimates the channel covariance matrix (processing block 103), extracts the large-scale gain of all nearby UEs (processing block 104) and determines the code indices of nearby UEs that are close enough (processing block 105). For example, in one embodiment, based on FIG. 2, the closest are UEs 1, 2, 3, 4, 5 and 7. Using this information, base station 101 determines the codes used by the nearby out-of-cell UEs (processing block 106). In the example, these would be UEs 5 and 7. Base station 101 generates channel estimates for the channels for that set of nearby UEs, namely UEs 1, 2, 3, 4, 5 and 7 in the example (processing block 107). Once the channel estimates are generated, base station 101 performs zero-forcing on the nearby out-of-cell UEs for interference suppression (processing block 108) (namely, UEs 5 and 7 in the example) and performs multi-user beamforming to in-cell UEs (processing block 109) (namely, UEs 1, 2, 3, and 4 in the example).

(75) Similarly, and at the same time, base station 201 is performing the same set of operations. That is, base station 201 receives the pilot transmissions (processing block 202), estimates the channel covariance matrix (processing block 203), extracts the large-scale gain of all nearby UEs (processing block 204) and determines the code indices of nearby UEs that are close enough (processing block 205). For example, in one embodiment, based on FIG. 2, the closest are UEs 5, 6, 7, 8, 1 and 3. Using this information, base station 201 determines the codes used by the nearby out-of-cell UEs (processing block 206). In the example, these would be UEs 1 and 3. Base station 201 generates channel estimates for the channels for that set of UEs, namely UEs 5, 6, 7, 8, 1 and 3 in the example (processing block 207). Once the channel estimates are generated, base station 201 performs zero-forcing on the nearby out-of-cell UEs for interference suppression (processing block 208) (namely, UEs 1 and 3 in the example) and performs multi-user beamforming to in-cell UEs (processing block 209) (namely, UEs 5, 6, 7 and 8 in the example).

(76) Besides interference suppression to nearby out-of-cell users, there are also several applications of the techniques described herein in cellular networks. In one embodiment, FIG. 4 shows user association after estimating the large-scale channel gains. Specifically, the base station collects a set of user indices with significantly non-zero large-scale channel gains, and then the base station associated with the users located in the service range of the base station from that set. In one embodiment, FIG. 5 shows a random access network where there are K users and each user accesses to the base station with probability p. Then the techniques described herein can be applied directly as long as KQ.sup.2 and KpQ.

(77) FIG. 6 is a block diagram of one embodiment of a base station. Referring to FIG. 6, base station 600 includes standard modules for MIMO wireless transmission. A transmit processor 615 at base station 600 receives data for one or more UTs from a data source 610, processes the data for each UT and provides data symbols to all UTs. Processor 615 also receives and processes control information from a controller/processor 670 and provides control symbols. Processor 670 also generates reference symbols for one or more reference signals. A transmit (TX) MIMO processor 620 performs precoding on the data symbols, the control symbols, and/or the reference symbols for each UT as well as for reference signals for antennas co-located at the same base station 600 or to other wireless entities such as other base stations, remote radio heads (RRHs), etc.

(78) Processor 620 provides parallel output symbols streams to modulators (MODS) 630a through 630t. Each modulator 630 further processes (e.g., convert to analog, amplify, filter, and upconvert) the output sample stream to obtain a downlink signal. The downlink signals from modulators 630a through 630t are transmitted via antennas 635a through 635t, respectively.

(79) At base station 600, the uplink signals from various UTs or by other antennas, collocated at the same base station 600 or located at different base stations or other wireless entities, are received by antennas 635a through 635t and demodulated by demodulators (DEMODs) 630a-630t. The demodulated signals are detected by MIMO detector 640 and further processed by a receive processor 645 to obtain decoded data and control information sent by UTs and other wireless entities. Receive processor 645 receives detected signals from MIMO detector 640 and provides decoded data to a data sink 650 and control information to controller/processor 670. The demodulated signals output by DEMODs 630a through 630t are also provided to channel processor 680 where the uplink channel is estimated and provided to controller/processor 670.

(80) In one embodiment, base station 600 also includes a calibration processor 685. Calibration processor 685 exchanges control information with controller/processor 670. In one embodiment, calibration processor 685 calculates calibration values, which may be used at controller/processor 670 together with uplink (UL) channel estimation to construct a downlink channel estimation, which is provided to TX MIMO Processor 620 for precoding. In one embodiment, processing at calibration processor 685 involves both the signaling and data collection aspects of calibration, which are based on the collected data, and, possibly additional parameters.

(81) In one embodiment, base station 600 also includes scheduler 616. Scheduler 616 exchanges scheduling information with transmit processor unit 615. According to this information, transmit processor 615 requests the data of the scheduled users from data source 610. Scheduler 616 also provides the information of which uplink channel estimates belong to which users to channel processor 680. Scheduler 616 processes the information provided by one or more controllers, such as a controller in FIG. 6. The information provided by the one or more controllers includes activity fractions, various scheduling constraints, re-use constraints. Scheduler 616 takes input from resource partitioning (allocation) unit 675. Resource partitioning unit 675 takes, as input from base station local admission policy unit 690, the list of UTs that are currently associated to the base station, and possibly information indicative of UT-specific service differentiation. In turn, resource-partitioning unit 675 determines activity fractions to be provided to each UT associated with the base station. In one embodiment, this determination is performed according to the fairness objective chosen by an operator of the base station.

(82) In one embodiment, base station local admission policy unit 690, which determines the local admission policy at the base station, is as disclosed herein.

(83) In one embodiment, the uplink operation in FIG. 3 is performed by antennas 635a-635t and DEMODs 630a-630t which receive the UL signals; channel processor 680 that performs the channel estimation according to the method set forth herein. The downlink operation in FIG. 3 is performed by 610, 615, 620, antennas 635a-635t, DEMODs 630a-630t for transmitting DL signals. Some other blocks such as channel processor 680, controller/processor 670, calibration processor 685, etc. are also used to perform standard procedures as part of the method described herein.

(84) There are a number of example embodiments described herein.

(85) Example 1 is a method for data transmission in a cellular system comprising receiving transmissions of uplink pilot signals made in each slot, by a number of user equipments (UEs), over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; estimating large-scale radio-channel propagation strengths of a plurality of nearby UEs to a base station; estimating radio-propagation channel coefficients between each base-station antenna and each UE in a subset of UEs in the plurality of nearby UEs that have large-scale radio-channel propagation strengths to the base station that are stronger than those UEs in the plurality of nearby UEs not part of the subset; and transmitting to in-cell UEs via multi-user beamforming, including suppressing interference to one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs.

(86) Example 2 is the method for data transmission in a cellular system of example 1 that may optionally include that suppressing interference to one or more nearby out-of-cell UEs comprises zero forcing the one or more nearby out-of-cell UEs.

(87) Example 3 is the method for data transmission in a cellular system of example 1 that may optionally include estimating a channel covariance matrix of a received signal vector based on the received transmissions of uplink pilot signals.

(88) Example 4 is the method for data transmission in a cellular system of example 1 that may optionally include determining pilot code indices of UEs in the subset of UEs.

(89) Example 5 is the method for data transmission in a cellular system of example 4 that may optionally include determining a subset of pilot code indices of out-of-cell UEs in the subset of UEs, the base station being operable to use the subset of pilot code indices to select the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs for which the base station suppresses interference.

(90) Example 6 is the method for data transmission in a cellular system of example 1 that may optionally include allocating a set of pilot signals to each of its scheduled users for pilot transmission.

(91) Example 7 is the method for data transmission in a cellular system of example 1 that may optionally include that the allocated pilot signals comprise a unique pilot code allocated to each scheduled user in the vicinity of at least one base station.

(92) Example 8 is the method for data transmission in a cellular system of example 1 that may optionally include allocating a set of radio resource elements in each slot for uplink pilot transmission.

(93) Example 9 is the method for data transmission in a cellular system of example 1 that may optionally include that estimating channels of a subset of UEs in the plurality of nearby UEs comprises estimating strength of multipath components in the radio channel propagation between each scheduled user in the vicinity of the base station.

(94) Example 10 is a non-transitory computer readable storage medium that stores instructions, which when executed on a base station, causes the base station to perform a method for data transmission in a cellular system comprising receiving transmissions of uplink pilot signals made in each slot, by a number of UEs, over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; estimating large-scale radio-channel propagation strengths of a plurality of nearby UEs to a base station; estimating radio-propagation channel coefficients between each base-station antenna and each UE in a subset of UEs in the plurality of nearby UEs that have large-scale radio-channel propagation strengths to the base station that are stronger than those UEs in the plurality of nearby UEs not part of the subset; and transmitting to in-cell UEs via multi-user beamforming, including suppressing interference to one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs.

(95) Example 11 is the computer readable storage medium of example 10 that may optionally include that suppressing interference to one or more nearby out-of-cell UEs comprises zero-forcing the one or more nearby out-of-cell UEs.

(96) Example 12 is the computer readable storage medium of example 10 that may optionally include estimating a channel covariance matrix of a received signal vector based on the received transmissions of uplink pilot signals at the base station.

(97) Example 13 is the computer readable storage medium of example 10 that may optionally include determining pilot code indices of UEs in the subset of UEs.

(98) Example 14 is the computer readable storage medium of example 13 that may optionally include determining a subset of pilot code indices of out-of-cell UEs in the subset of UEs, the base station being operable to use the subset of pilot code indices to select the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs for which the base station suppresses interference.

(99) Example 15 is the computer readable storage medium of example 10 that may optionally include allocating, by the base station, a unique pilot code allocated to each scheduled user in the vicinity of at least one base-station.

(100) Example 16 is a base station comprising a plurality of antennas operable to receive transmissions of uplink pilot signals made in each slot, by a number of UEs, over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; transmitter and receiver logic coupled to the plurality of antennas; a processor coupled to the transmitter and receiver logic and operable to estimate large-scale radio-channel propagation strengths of a plurality of nearby UEs to a base station, estimate radio-propagation channel coefficients between each base-station antenna and each UE in a subset of UEs in the plurality of nearby UEs that have large-scale radio-channel propagation strengths to the base station that are stronger than those UEs in the plurality of nearby UEs not part of the subset, and transmit to in-cell UEs via multi-user beamforming, including suppressing interference to one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs.

(101) Example 17 is the base station of example 16 that may optionally include that the base station is operable to suppress interference to one or more nearby out-of-cell UEs by zero-forcing the one or more nearby out-of-cell UEs.

(102) Example 18 is the base station of example 16 that may optionally include that the processor is operable to estimate a channel covariance matrix of a received signal vector based on the received transmissions of uplink pilot signals at the base station.

(103) Example 19 is the base station of example 16 that may optionally include that the processor is operable to determine pilot code indices of UEs in the subset of UEs.

(104) Example 20 is the base station of example 19 that may optionally include that the processor is operable to determine a subset of pilot code indices of out-of-cell UEs in the subset of UEs, the base station being operable to use the subset of pilot code indices to select the one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs for which the base station suppresses interference.

(105) Example 21 is the base station of example 16 that may optionally include that the processor is operable to assign a unique pilot code allocated to each scheduled user in the vicinity of at least one base station.

(106) Example 22 is a wireless communication system comprising: a base station in a cell; a plurality of UEs, a first group of the plurality of UEs being in cell with respect to the base station and a second group of the plurality of UEs being out-of-cell with respect to the base station, wherein the base station is operable to detect pilots transmitted by nearby out-of-cell UEs, learns their channels, and suppresses interference to one or more of the nearby out-of-cell UEs.

(107) Example 23 is the wireless communication system of example 22 that may optionally include that the base station suppresses interference by zero forcing the interference to at least one nearby out-of-cell UE.

(108) Example 24 is the wireless communication system of example 22 that may optionally include that the base station comprises a memory to store UE pilot codes of out-of-cell UEs and is operable to use the out-of-cell UE pilot codes to identify the nearby out-of-cell UEs.

(109) Example 25 is the wireless communication system of example 22 that may optionally include that the base station comprises: a plurality of antennas operable to receive transmissions of uplink pilot signals made in each slot, by a number of UEs, over the radio resource elements in slots that are allocated for uplink pilot transmission, wherein the number of UEs in the vicinity of at least one base station exceeds the number of radio resource elements that have been allocated for uplink pilot transmission in the slot; transmitter and receiver logic coupled to the plurality of antennas; a processor coupled to the transmitter and receiver logic and operable to estimate large-scale channel gains of a plurality of nearby UEs, estimate channels of a subset of UEs in the plurality of nearby UEs that have large-scale channel gains that are stronger than those UEs in the plurality of nearby UEs not part of the subset, and transmit to in-cell UEs via multi-user beamforming, including suppressing interference to one or more nearby out-of-cell UEs that are part of the plurality of nearby UEs.

(110) Embodiments of the present technology may be described herein with reference to flowchart illustrations of methods and systems according to embodiments of the technology, and/or procedures, algorithms, steps, operations, formulae, or other computational depictions, which may also be implemented as computer program products. In this regard, each block or step of a flowchart, and combinations of blocks (and/or steps) in a flowchart, as well as any procedure, algorithm, step, operation, formula, or computational depiction can be implemented by various means, such as hardware, firmware, and/or software including one or more computer program instructions embodied in computer-readable program code. As will be appreciated, any such computer program instructions may be executed by one or more computer processors, including without limitation a general purpose computer or special purpose computer, or other programmable processing apparatus to produce a machine, such that the computer program instructions which execute on the computer processor(s) or other programmable processing apparatus create means for implementing the function(s) specified.

(111) Accordingly, blocks of the flowcharts, and procedures, algorithms, steps, operations, formulae, or computational depictions described herein support combinations of means for performing the specified function(s), combinations of steps for performing the specified function(s), and computer program instructions, such as embodied in computer-readable program code logic means, for performing the specified function(s). It will also be understood that each block of the flowchart illustrations, as well as any procedures, algorithms, steps, operations, formulae, or computational depictions and combinations thereof described herein, can be implemented by special purpose hardware-based computer systems which perform the specified function(s) or step(s), or combinations of special purpose hardware and computer-readable program code.

(112) Furthermore, these computer program instructions, such as embodied in computer-readable program code, may also be stored in one or more computer-readable memory or memory devices that can direct a computer processor or other programmable processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory or memory devices produce an article of manufacture including instruction means which implement the function specified in the block(s) of the flowchart(s). The computer program instructions may also be executed by a computer processor or other programmable processing apparatus to cause a series of operational steps to be performed on the computer processor or other programmable processing apparatus to produce a computer-implemented process such that the instructions which execute on the computer processor or other programmable processing apparatus provide steps for implementing the functions specified in the block(s) of the flowchart(s), procedure (s) algorithm(s), step(s), operation(s), formula(e), or computational depiction(s).

(113) It will further be appreciated that the terms programming or program executable as used herein refer to one or more instructions that can be executed by one or more computer processors to perform one or more functions as described herein. The instructions can be embodied in software, in firmware, or in a combination of software and firmware. The instructions can be stored local to the device in non-transitory media, or can be stored remotely such as on a server, or all or a portion of the instructions can be stored locally and remotely. Instructions stored remotely can be downloaded (pushed) to the device by user initiation, or automatically based on one or more factors.

(114) It will further be appreciated that as used herein, that the terms processor, hardware processor, computer processor, central processing unit (CPU), and computer are used synonymously to denote a device capable of executing the instructions and communicating with input/output interfaces and/or peripheral devices, and that the terms processor, hardware processor, computer processor, CPU, and computer are intended to encompass single or multiple devices, single core and multicore devices, and variations thereof.

(115) In the claims, reference to an element in the singular is not intended to mean one and only one unless explicitly so stated, but rather one or more. All structural and functional equivalents to the elements of the disclosed embodiments that are known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the present claims. Furthermore, no element, component, or method step in the present disclosure is intended to be dedicated to the public regardless of whether the element, component, or method step is explicitly recited in the claims. No claim element herein is to be construed as a means plus function element unless the element is expressly recited using the phrase means for. No claim element herein is to be construed as a step plus function element unless the element is expressly recited using the phrase step for.

(116) In addition to any other claims, the applicant(s)/inventor(s) claim each and every embodiment of the technology described herein, as well as any aspect, component, or element of any embodiment described herein, and any combination of aspects, components or elements of any embodiment described herein.

(117) Whereas many alterations and modifications of the present invention will no doubt become apparent to a person of ordinary skill in the art after having read the foregoing description, it is to be understood that any particular embodiment shown and described by way of illustration is in no way intended to be considered limiting. Therefore, references to details of various embodiments are not intended to limit the scope of the claims which in themselves recite only those features regarded as essential to the invention.