Sparse ordered iterative group multi-antenna channel estimation

09686102 ยท 2017-06-20

Assignee

Inventors

Cpc classification

International classification

Abstract

Data can be received characterizing a first signal transmitted in an orthogonal frequency-division multiplexing (OFDM) system by a transmitter with one or more transmit antennas through a wireless channel and received by a receiver with a plurality of receive antennas, the first signal including a plurality of pilot pulses. A final estimated channel impulse response of the wireless channel can be determined for each pair of transmitter and receiver antennas by iteratively finding one or more significant delay taps of an intermediate channel impulse response estimate and adding the one or more significant delay taps to an error of the intermediate channel impulse response estimate. Data characterizing the final estimated channel impulse response can be provided. Related apparatus, systems, techniques, and articles are also described.

Claims

1. A method for implementation by one or more data processors forming part of at least one computing system comprising: receiving, by at least one data processor, data characterizing a first signal transmitted in an orthogonal frequency-division multiplexing (OFDM) system by a transmitter with one or more transmit antennas through a wireless channel and received by a receiver with a plurality of receive antennas, the first signal comprising a plurality of pilot pulses; determining, using at least one data processor and the first signal, a final estimated time-domain channel impulse response of the wireless channel for each pair of transmitter and receiver antennas by iteratively finding one or more significant delay taps of an intermediate time-domain channel impulse response estimate, calculating an error of the time-domain channel impulse response as a difference between an initial channel estimate and a scaled intermediate time-domain channel estimate, the intermediate time-domain channel impulse response estimate scaled by a product of a conjugate transpose of one or more complex exponentials of a frequency domain least-squares channel estimate and the one or more complex exponentials of the frequency domain least squares channel estimate, scaling the error by a non-negative factor, and feeding the scaled error of the intermediate time-domain channel impulse response estimate back to add to the one or more significant delay taps, the one or more significant delay taps forming entries in the intermediate time-domain channel estimate, wherein finding the one or more significant delay taps includes comparing, during an iteration, a plurality of entries in the intermediate channel impulse response estimate to a threshold; and providing, using at least one data processor, data characterizing the final estimated channel impulse response.

2. The method of claim 1, wherein the one or more significant delay taps are non-zero entries of the intermediate channel impulse response estimate.

3. The method of claim 1, further comprising determining an estimate of a channel frequency response for a plurality of sub-carriers.

4. The method of claim 1, further comprising determining an estimate of a length of a channel impulse response of the wireless channel.

5. The method of claim 1, further comprising determining, for each of the one or more transmit antennas, one or more of a maximum delay spread of the wireless channel, a minimum delay spread of the wireless channel, an average delay spread of the wireless channel, and a root-mean-square delay of the wireless channel.

6. The method of claim 1, further comprising determining for each of the one or more transmit antennas, an estimate of a channel coherence bandwidth.

7. The method of claim 1, wherein iteratively finding significant delay taps of the intermediate channel impulse response estimate and feeding an error of the intermediate channel impulse response estimate back to add to the one or more significant delay taps is performed according to H ^ k = ( H ~ 0 - G H ~ k - 1 ) + H ~ k - 1 [ MaxVal , Idx ] = max ( .Math. m = 1 M .Math. H ^ k ( 0 , m ) .Math. 2 , .Math. , .Math. m = 1 M .Math. H ^ k ( N CP , m ) .Math. 2 ) H ~ k = zeros ( N CP + 1 , M ) H ~ k ( Idx , m ) = H ^ k ( Idx , m ) m = 1 , 2 , .Math. , M } k = 1 , 2 , .Math. , N iter where M is a number of receive antennas; and G, N.sub.iter, N.sub.CP, and are predetermined, wherein G is F.sup.HermF, F is the one or more complex exponentials of the frequency domain least-squares channel estimate, N.sub.iter is a scalar, N.sub.CP is a length of cyclic prefix, is the non-negative error scaling factor, and Idx characterizes locations of the significant delay taps.

8. A non-transitory computer program product storing instructions, which when executed by at least one data processor of at least one computing system, implement a method comprising: receiving, by at least one data processor, data characterizing a first signal transmitted in an orthogonal frequency-division multiplexing (OFDM) system by a transmitter with one or more transmit antennas through a wireless channel and received by a receiver with a plurality of receive antennas, the first signal comprising a plurality of pilot pulses; determining, using at least one data processor and the first signal, a final estimated time-domain channel impulse response of the wireless channel for each pair of transmitter and receiver antennas by iteratively finding one or more significant delay taps of an intermediate time-domain channel impulse response estimate, calculating an error of the time-domain channel impulse response as a difference between an initial channel estimate and a scaled intermediate time-domain channel estimate, the intermediate time-domain channel impulse response estimate scaled by a product of a conjugate transpose of one or more complex exponentials of a frequency domain least-squares channel estimate and the one or more complex exponentials of the frequency domain least squares channel estimate, scaling the error by a non-negative factor, and feeding the scaled error of the intermediate time-domain channel impulse response estimate back to add to the one or more significant delay taps, the one or more significant delay taps forming entries in the intermediate time-domain channel estimate, wherein finding the one or more significant delay taps includes comparing, during an iteration, a plurality of entries in the intermediate channel impulse response estimate to a threshold; and providing, using at least one data processor, data characterizing the final estimated channel impulse response.

9. The non-transitory computer program product of claim 8, wherein the one or more significant delay taps are non-zero entries of the intermediate channel impulse response estimate.

10. The non-transitory computer program product of claim 8, the method further comprising determining an estimate of a channel frequency response for a plurality of sub-carriers.

11. The non-transitory computer program product of claim 8, the method further comprising determining an estimate of a length of a channel impulse response of the wireless channel.

12. The non-transitory computer program product of claim 8, the method further comprising determining, for each of the one or more transmit antennas, one or more of a maximum delay spread of the wireless channel, a minimum delay spread of the wireless channel, an average delay spread of the wireless channel, and a root-mean-square delay of the wireless channel.

13. The non-transitory computer program product of claim 8, the method further comprising determining for each of the one or more transmit antennas, an estimate of a channel coherence bandwidth.

14. The non-transitory computer program product of claim 8, wherein iteratively finding significant delay taps of the intermediate channel impulse response estimate and adding the one or more significant delay taps to the error of the intermediate channel impulse response estimate is performed according to H ^ k = ( H ~ 0 - G H ~ k - 1 ) + H ~ k - 1 [ MaxVal , Idx ] = max ( .Math. m = 1 M .Math. H ^ k ( 0 , m ) .Math. 2 , .Math. , .Math. m = 1 M .Math. H ^ k ( N CP , m ) .Math. 2 ) H ~ k = zeros ( N CP + 1 , M ) H ~ k ( Idx , m ) = H ^ k ( Idx , m ) m = 1 , 2 , .Math. , M } k = 1 , 2 , .Math. , N iter where M is a number of receive antennas; and G, N.sub.iter, N.sub.CP, and are predetermined, wherein G is F.sup.HermF, F is the one or more complex exponentials of the frequency domain least-squares channel estimate, N.sub.iter is a scalar, N.sub.CP is a length of cyclic prefix, is the non-negative error scaling factor, and Idx characterizes locations of the significant delay taps.

15. A system comprising: at least one data processor; memory storing instructions which, when executed by the at least one data processor, causes the at least one data processor to perform operations comprising: receiving data characterizing a first signal transmitted in an orthogonal frequency-division multiplexing (OFDM) system by a transmitter with one or more transmit antennas through a wireless channel and received by a receiver with a plurality of receive antennas, the first signal comprising a plurality of pilot pulses; determining a final estimated time-domain channel impulse response of the wireless channel for each pair of transmitter and receiver antennas by iteratively finding one or more significant delay taps of an intermediate time-domain channel impulse response estimate, calculating an error of the time-domain channel impulse response as a difference between an initial channel estimate and a scaled intermediate time-domain channel estimate, the intermediate time-domain channel impulse response estimate scaled by a product of a conjugate transpose of one or more complex exponentials of a frequency domain least-squares channel estimate and the one or more complex exponentials of the frequency domain least squares channel estimate, scaling the error by a non-negative factor, and feeding the scaled error of the intermediate time-domain channel impulse response estimate back to add to the one or more significant delay taps, the one or more significant delay taps forming entries in the intermediate time-domain channel estimate, wherein finding the one or more significant delay taps includes comparing, during an iteration, a plurality of entries in the intermediate channel impulse response estimate to a threshold; and providing data characterizing the final estimated channel impulse response.

16. The system of claim 15, wherein the one or more significant delay taps are non-zero entries of the intermediate channel impulse response estimate.

17. The system of claim 15, the operations further comprising determining an estimate of a channel frequency response for a plurality of sub-carriers.

18. The system of claim 15, the operations further comprising determining an estimate of a length of a channel impulse response of the wireless channel.

19. The system of claim 15, the operations further comprising determining, for each of the one or more transmit antennas, one or more of a maximum delay spread of the wireless channel, a minimum delay spread of the wireless channel, an average delay spread of the wireless channel, and a root-mean-square delay of the wireless channel.

20. The system of claim 15, the operations further comprising determining for each of the one or more transmit antennas, an estimate of a channel coherence bandwidth.

Description

DESCRIPTION OF DRAWINGS

(1) The accompanying drawings, which are incorporated in and constitute a part of this specification, show certain aspects of the subject matter disclosed herein and, together with the description, help explain some of the principles associated with the disclosed implementations. In the drawings,

(2) FIG. 1 is a system diagram illustrating an example Multi-User Equipment Multi-stream spatial-division multiple access system with a receiver with Sparse Ordered Iterative Multi Antenna Channel Estimation (SOI-MA-CE) located at a base station;

(3) FIG. 2 is a system diagram illustrating a base station transmitter and a User Equipment (UE) with a receiver with SOI-MA-CE;

(4) FIG. 3 is a functional block diagram of an example uplink transmitter signal chain within a UE for a single data stream;

(5) FIG. 4 is a functional system diagram of components of an example receiver with SOI-MA-CE;

(6) FIG. 5 is a functional block diagram illustrating an iterative SOI-MA-CE process to estimate a channel impulse response;

(7) FIG. 6 describes the symbol and slot structure for the Physical Uplink Shared Channel of the 3GPP LTE system with normal cyclic-prefix (CP) mode;

(8) FIG. 7 describes the symbol and slot structure for the Physical Uplink Shared Channel of the 3GPP LTE system with extended cyclic-prefix mode;

(9) FIG. 8 describes the symbol and slot structure for the Physical Uplink Control Channel, Formats 1, 1a and 1b, of the 3GPP LTE system with normal cyclic-prefix mode;

(10) FIG. 9 describes the symbol and slot structure for the Physical Uplink Control Channel, Formats 1a and 1b, of the 3GPP LTE system with normal cyclic-prefix mode, and sounding reference symbol;

(11) FIG. 10 describes the symbol and slot structure for the Physical Uplink Control Channel, formats 1, 1a and 1b, of the 3GPP LTE system with extended cyclic-prefix mode;

(12) FIG. 11 describes the symbol and slot structure for the Physical Uplink Control Channel, Formats 2, 2a and 2b, of the 3GPP LTE system with normal cyclic-prefix mode;

(13) FIG. 12 describes the symbol and slot structure for the Physical Uplink Control Channel, Format 2, of the 3GPP LTE system with extended cyclic-prefix mode;

(14) FIG. 13 describes the symbol and slot structure for the Physical Uplink Shared Channel of the 3GPP LTE system with normal cyclic-prefix mode, and sounding reference symbol;

(15) FIG. 14 describes the symbol and slot structure for the Physical Uplink Shared Channel of the 3GPP LTE system with extended cyclic-prefix mode, and sounding reference symbol;

(16) FIG. 15 describes the reference symbol locations for normal cyclic-prefix with one antenna port for the downlink of 3GPP LTE system; and

(17) FIG. 16 is a system diagram illustrating an example implementation of a computing system.

(18) Like reference symbols in the various drawings indicate like elements.

DETAILED DESCRIPTION

(19) A Sparse Ordered Iterative Group Multi-Antenna Channel Estimation (SOI-MA-CE) scheme is described, which can be used to estimate channel characteristics (e.g., a channel response) between a transmitter with one or more antennas and a receiver equipped with multiple receiver antennas. SOI-MA-CE can iteratively estimate channel characteristics by, for example, iteratively finding significant (e.g., non-zero) delay taps of a channel estimate and adding the significant delay taps to an error measure of the channel estimate to form a sparse ordered channel estimate. The SOI-MA-CE scheme can iteratively process the sparse ordered channel estimate by finding significant delay taps until a predetermined number of iterations have occurred or another stopping criterion is satisfied.

(20) SOI-MA-CE can be implemented in a number of systems including at a base station or at user equipment (UE). For example, FIG. 1 is a system diagram illustrating an example Multi-UE Multi-stream spatial-division multiple access (SDMA) system 100 (or MU-MIMO) with a receiver with SOI-MA-CE 130 located at a base station 120. The system 100 includes multiple UEs (105.sub.1, 105.sub.2, . . . , 105.sub.k), each having multiple transmit antennas (110.sub.1,1, 110.sub.1,2, . . . , 110.sub.1,v), which communicate with the base station 120 having multiple receive antennas (125.sub.1, 125.sub.2, . . . , 125.sub.k) via the wireless channel 140 (also denoted as H(n)). While FIG. 1 illustrates that the number of antennas on each UE 105 and the number of the antennas on the base station 120 are equal, the number of antennas on either the UE 105 and/or base station 120 can vary. In some example implementations, the number of streams per UE does not exceed the number of transmit antennas at that UE, and the total number of streams (summed across all the UEs) does not exceed the number of receive antennas at the base station.

(21) As a second example, FIG. 2 is a system diagram illustrating a base station 120 transmitter and a UE 105 with a receiver with SOI-MA-CE 130. As described herein, the receiver with SOI-MA-CE 130 can operate either in the uplink or downlink.

(22) FIG. 3 is a functional block diagram of an example uplink transmitter signal chain 300 within a UE 105 for a single data stream (e.g., a single data stream of the system configured as shown in FIG. 1). An information bit stream 305 can be passed through an encoder block 310. The coded bit stream at the output of the encoder can be scrambled at 315, and the scrambled sequence can be modulation mapped at 320 using a constellation such as BPSK, QPSK, or any higher order constellation. To maintain low peak-to-average power ratio, the modulation symbols can be DFT precoded at 325. The precoded complex-valued symbols can be mapped to a set of resource elements (REs) at 330. One RE can be a frequency tone associated with an OFDM symbol (when DFT precoding is applied, the symbol can also be referred to as an SC-FDMA symbol). Separately, a pilot sequence can generated at 335 using pilot sequence parameters 340. Pilot symbols of the generated pilot sequence can be multiplexed with modulation symbols in the Resource Mapper 330 before applying an inverse FFT (IFFT) at 345 to convert the frequency-domain symbols into a time-domain symbol stream 355. To minimize the inter-symbol interference (ISI) caused by the channel frequency-selectivity, a cyclic prefix can be added to the OFDM/SC-FDMA symbol at 350. The length of CP can be larger than the maximum expected channel delay to reduce or eliminate the ISI completely. The time-domain symbol stream 355 can be further processed and transmitted over the wireless channel (H(n)) 140 to the base station 120.

(23) FIG. 4 is a functional system diagram 400 of components of an example receiver with SOI-MA-CE 130 (e.g., in a system configured as shown in FIG. 1) for initial physical layer processing including channel estimation and channel equalization. A transmitted signal, having traveled through the wireless channel 140 is received by one or more receive antennas (125.sub.1, . . . , 125.sub.K).

(24) With a single receiver antenna 125.sub.1, the time-varying and frequency-selective channel between the transmitter and the receiver can be described as

(25) h ( t , ) = .Math. l = 1 L ( t ) h l ( t ) ( - l ( t ) )
where the variable t corresponds to time variations, the variable corresponds to the delay-domain, and the actual delay is denoted by .sub.l(t). The delays are varying with time, therefore .sub.l is a function of t. The number of paths, L(t), and the channel gains, h.sub.l(t), are also time-varying. Channel coherence in time-domain can be defined as the time duration during which the delays .sub.l (t), the number of paths L(t), and the channel gains h.sub.l(t) do not change with time. If T.sub.C denotes the channel coherence, then for all tT.sub.C,

(26) h ( ) = .Math. l = 1 L h l ( - l )

(27) Assuming sampling of the continuous received signal is at a rate of 1/T.sub.S, then the sample-spaced impulse response can be given by

(28) h ( ) = .Math. n = 0 N h ( n ) ( - nT S )
where N is the number of samples, and h(n) now is the n-th sample of the impulse response with a delay of nT.sub.S. However, since the channel length cannot be more than the length of cyclic prefix, N.sub.CP, there is effectively up to N.sub.CP non-zero samples of the channel h(n).

(29) At the example receiver with SOI-MA-CE 130, for each receiver antenna 125.sub.i (where i=1, 2, . . . , K), after performing down-conversion processing, automatic gain control (AGC) can be performed at 405.sub.i, CP removal can be performed at 410.sub.i leaving OFDM or SC-FDMA symbols, which can be processed using an FFT at 415.sub.i into the frequency domain. The effect of CP removal 410.sub.i, and FFT 415.sub.i is that the linear convolution, in time-domain, of the transmitted signal with the channel response becomes frequency-domain multiplication of the transmitted signal with the channel response.

(30) The pilot symbols, having been previously multiplexed with modulation symbols in the Resource Mapper 330, as shown in FIG. 3, can be de-multiplexed from the frequency domain data at 420.sub.i. The pilot pulses and de-multiplexed data can be provided for channel estimation at 425.sub.i, which will estimate the channel response 140. Once the channel estimation at 425.sub.i is complete, channel equalization for each receive data stream can be performed at 430.

(31) Regarding channel estimation at 425.sub.i, the frequency-domain version of the sample-spaced impulse response can denoted by H(f), and can be given by

(32) H ( f ) = .Math. n = 0 N CP h ( n ) - j2 nfT S

(33) With pilot symbols inserted at frequency tones f.sub.1, f.sub.2 . . . , f.sub.P, where P is the number of pilot tones, the received frequency-domain signal can be given by
R(f.sub.p)=S.sub.pH(f.sub.P)+W.sub.p,p=1,2, . . . ,P
where S.sub.p the p-th pilot symbol, and W.sub.p is frequency-domain noise added on the p-th pilot symbol.

(34) The frequency-domain least-squares channel estimate (FDLSCE) on the p-th pilot symbol can given by

(35) Y ( f p ) = R ( f p ) S p = H ( f p ) + V p , p = 1 , 2 , .Math. , P
where

(36) V p = W p S p .

(37) For convenience, the FDLSCE can be written compactly in the matrix-vector form as

(38) Y = [ Y ( f 1 ) Y ( f 2 ) .Math. Y ( f P ) ] = [ 1 - j2 f 1 T S .Math. - j2 f 1 N CP T S 1 - j2 f 2 T S .Math. - j2 f 2 N CP T S .Math. .Math. .Math. 1 - j2 f p T S .Math. - j f p N CP T S ] [ h ( 0 ) h ( 1 ) .Math. h ( N CP ) ] + [ V 1 V 2 .Math. V P ] = Fh + V
where F is the matrix of complex exponentials, h is the vector of unknown channel impulse response, and V is a noise vector. Given the number of pilot tones P, the pilot tone locations f.sub.1, f.sub.2 . . . , f.sub.P, the sampling rate 1/T.sub.S, and the cyclic-prefix length, in some implementations, the matrix F can be pre-computed and stored.

(39) FIG. 5 is a functional block diagram illustrating an iterative SOI-MA-CE process 500 to estimate the channel response 140 (H(n)). More specifically, in this example implementation, the estimate is of the time domain channel denoted by {tilde over (h)}.sub.N.sub.iter. Initialization of the processing can occur at 505. An initial channel estimate {tilde over (h)}.sub.0 can provided at 505 and can be computed as
{tilde over (h)}.sub.0=F.sup.HermY
where Herm is the Hermitian operator (i.e., conjugate the entries of the matrix first, and then the matrix transpose). Additionally, an initial error can be provided at 505 and can be computed as
={tilde over (h)}.sub.0G{tilde over (H)}.sub.0
where G can be computed as G=F.sup.HermF.

(40) At 510, an intermediate channel estimate .sub.k can be computed by adding the prior computed channel estimate {tilde over (H)}.sub.k-1 to the error . The error can be scaled by a factor . In some implementations, .sub.k can be computed according to
.sub.k=+{tilde over (h)}.sub.k-1=({tilde over (h)}.sub.0G{tilde over (h)}.sub.k-1)+{tilde over (h)}.sub.k-1
Where is non-negative and can be obtained from link-level or system-level simulations. Additionally, K can be initialized to 1.

(41) At 515, significant delay taps can be determined from .sub.k. Delay taps can be significant when they are non-zero, or when they are above a predetermined threshold. For example, finding significant delay taps can be performed by finding the nonzero entries of (|.sub.k (0)|, . . . , |.sub.k (N.sub.CP)|). The significant delay taps can form the non-zero entries in a sparse vector describing the channel estimate {tilde over (h)}.sub.k.

(42) At 520, variable K can be incremented (e.g., k=k+1) and at 525 it can be determined whether N.sub.iter iterations have completed. N.sub.iter can be a predetermined or predefined number of iterations for processing the sparse ordered channel estimate {tilde over (h)}.sub.k.

(43) If the processing is to continue (e.g., there have not be N.sub.iter iterations completed), then at 530, the error between the initial estimate {tilde over (h)}.sub.0 and the most recent estimate {tilde over (h)}.sub.k-1 can be computed according to
={tilde over (h)}.sub.0G{tilde over (h)}.sub.k-1

(44) The process can iterate (e.g., through 510, 515, 520, 525, and 530) until a predetermined number of iterations has completed (e.g., N.sub.iter), or until another stopping criterion is reached. Other stopping criterion can include, for example, when {tilde over (h)}.sub.k includes a predetermined number of non-zero delay taps.

(45) Once the iteration is complete, a final channel response estimate (denoted by {tilde over (h)}.sub.N.sub.iter) can, at 535, be used to compute channel delay spread and channel coherence bandwidth. The maximum and minimum delay spreads can be determined by max (I.sub.1, I.sub.2, . . . , I.sub.Q) and min (I.sub.1, I.sub.2, . . . , I.sub.Q), respectively, where the locations of non-zero entries in {tilde over (h)}.sub.N.sub.iter are denoted by (I.sub.1, I.sub.2, . . . , I.sub.Q), and where Q is the number of non-zero taps. The average delay spread can be given by

(46) D Avg = .Math. c = 1 N c .Math. k = 1 Q .Math. h ~ N iter ( c ) ( I k ) .Math. 2 I k .Math. c = 1 N c .Math. k = 1 Q .Math. h ~ N iter ( c ) ( I k ) .Math. 2
where c is the channel estimate index within the coherence window of N.sub.C symbols.

(47) The Root Mean Squared (RMS) delay-spread can be given by

(48) 0 D RMS = .Math. c = 1 N c .Math. k = 1 Q .Math. h ~ N iter ( c ) ( I k ) .Math. 2 I k 2 .Math. c = 1 N c .Math. k = 1 Q .Math. h ~ N iter ( c ) ( I k ) .Math. 2 - ( D Avg ) 2

(49) The frequency-domain channel estimate on a given frequency tone can be obtained as

(50) H ~ ( f ) = .Math. k = 1 Q h ~ N iter ( I k ) - j 2 d k fT s

(51) The channel coherence is inversely proportional to the channel delay spread. A typical coherence bandwidth measure, based on the RMS delay spread, with 90% correlation in frequency domain can be given by

(52) W coherence = 1 50 D RMS
With 50% correlation in frequency domain, the coherence bandwidth is given by

(53) W coherence = 1 5 D RMS

(54) The following is an algorithm for an example implementation of a receiver with SOI-MA-CE 130. 1. Obtain the initial channel estimate as {tilde over (h)}.sub.0=F.sup.HermY 2. Perform the following computations for each of the N.sub.iter iterations

(55) h ^ k = ( h ~ 0 - G h ~ k - 1 ) + h ~ k - 1 [ MaxVal , Idx ] = max ( .Math. h ^ k ( 0 ) .Math. , .Math. , .Math. h ^ k ( N CP ) .Math. ) h ~ k = zeros ( N CP + 1 , 1 ) h ~ k ( Idx ) = MaxVal } k = 1 , 2 , .Math. , N iter 3. The final estimate of the time-domain channel is given by {tilde over (h)}.sub.N.sub.iter. The number of non-zero positions in the above vector is the length of the channel response in time, and the locations of non-zero values are the sample-spaced tap delays. 4. Compute the maximum, minimum, average and RMS delay spread and channel coherence bandwidth.

(56) The following extends the above-described SOI-MA-CE scheme to multiple receiver antennas.

(57) With M receiver antennas, the sample-spaced time-domain channel from the transmitter antennas to the m.sup.th receiver antenna is given by

(58) h ( , m ) = .Math. n = 0 N CP h ( n , m ) ( - nT S )
And the FDLSCE on m.sup.th receiver antenna can be described as

(59) Y ( m ) = [ Y ( f 1 , m ) Y ( f 2 , m ) .Math. Y ( f p , m ) ] = [ 1 - j2 f 1 T S .Math. - j 2 f 1 N CP T S 1 - j2 f 2 T S .Math. - j2 f 2 N CP T S .Math. .Math. .Math. 1 - j 2 f P T S .Math. - j 2 f P N CP T S ] [ h ( 0 , m ) h ( 1 , m ) .Math. h ( N CP , m ) ] + [ V 1 ( m ) V 2 ( m ) .Math. V P ( m ) ] = Fh ( m ) + V ( m )

(60) Upon stacking Y(1), Y(2), . . . , Y(M) in columns for all the receiver antennas, Y can be described as

(61) Y = [ Y ( 1 ) Y ( 2 ) .Math. Y ( M ) ] = F [ h ( 1 ) h ( 2 ) .Math. h ( M ) ] + = FH + V [ V ( 1 ) V ( 2 ) .Math. V ( M ) ]

(62) The following is an algorithm for an example implementation of a receiver with SOI-MA-CE 130 having multiple receiver antennas. 1. Obtain the initial channel estimate as {tilde over (H)}.sub.0=F.sup.HermY 2. Perform the following computations for each of the N.sub.iter iterations

(63) H ^ k = ( H ~ 0 - G H ~ k - 1 ) + H ~ k - 1 [ MaxVal , Idx ] = max ( .Math. m = 1 M .Math. H ^ k ( 0 , m ) .Math. 2 , .Math. , .Math. m = 1 M .Math. H ^ k ( N CP , m ) .Math. 2 ) H ~ k = zeros ( N CP + 1 , M ) H ~ k ( Idx , m ) = H ^ k ( Idx , m ) m = 1 , 2 , .Math. , M } k = 1 , 2 , .Math. , N iter 3. The final estimate of the time-domain channel is given by {tilde over (H)}.sub.N.sub.iter. The number of non-zero positions in the above vector is the length of the channel response in time, and the locations of non-zero values are the sample-spaced tap delays. 4. Compute the maximum, minimum, average and RMS delay spread and channel coherence bandwidth.

(64) Delay spread and channel coherence bandwidth for multiple receive antennas can be computed as follows. The maximum and minimum delay spreads for receive antenna m can be determined by D.sub.max,m=max (I.sub.1,m, I.sub.2,m, . . . , I.sub.Q.sub.m.sub.,m) and D.sub.min,m=min(I.sub.1,m, I.sub.2,m, . . . , I.sub.Q.sub.m.sub.,m), respectively, where the location of non-zero entries in {tilde over (H)}.sub.N.sub.iter (:,m) are denoted by (I.sub.1,m, I.sub.2,m, . . . , I.sub.Q.sub.m.sub.,m), and where Q.sub.m is the number of non-zero taps and is a function of receiver antenna index. The average delay spread can be given by

(65) D Avg , m = .Math. c = 1 N c .Math. k = 1 Q m .Math. H ~ N iter ( c ) ( I k , m , m ) .Math. 2 I k , m .Math. c = 1 N c .Math. k = 1 Q m .Math. H ~ N iter ( c ) ( I k , m , m ) .Math. 2
where c is the channel estimate index within the coherence window of N.sub.C symbols.

(66) The Root Mean Squared (RMS) delay-spread can be given by

(67) 0 D RMS , m = .Math. c = 1 N c .Math. k = 1 Q m .Math. H ~ N iter ( c ) ( I k , m , m ) .Math. 2 I k , m 2 .Math. c = 1 N c .Math. k = 1 Q m .Math. H ~ N iter ( c ) ( I k , m , m ) .Math. 2 - ( D Avg , m ) 2

(68) Aggregate delay statistics across all the receiver antennas can be determined by using total channel power across the receiver antennas. The frequency-domain channel estimate on a given frequency tone, and on a given receiver antenna, can be obtained as

(69) H ~ ( f , m ) = .Math. k = 1 Q m H ~ N iter ( I k , m , m ) - j2 d k , m fT S

(70) The channel coherence is inversely proportional to the channel delay spread. A typical coherence bandwidth measure, based on the RMS delay spread, with 90% correlation in frequency domain can be given by

(71) W coherence = { 1 50 D RMS , m specific to antenna m 1 50 D RMS Across antennas

(72) The subject matter described herein provides many advantages. For example, the current subject matter does not require channel statistics, and in fact estimates the channel statistics (such as the delay spread, the number of taps) along with estimation of both time-domain and frequency-domain channels. Traditional channel estimation schemes often employ both time- and frequency-domain filtering to smooth the channel variations across time and frequency. However, designing optimal time- and frequency-domain filters require the knowledge of the channel second order statistics.

(73) Additionally, the current subject matter may not require either interpolation or extrapolation, thereby improving the quality of the estimate channel. Implementation of traditional channel estimation algorithms can involve, along with frequency-domain least squares channel estimation, interpolation and extrapolation. Both interpolation and extrapolation approaches introduce additional noise, which reduce the channel estimation reconstruction quality.

(74) Furthermore, the current subject matter can require very few frequency-domain signal samples relative to traditional channel estimation techniques. Once the time-domain channel taps are estimated, the current subject matter can allow for the flexibility of estimating the channel response over a selected sub-set of available frequency tones, which can apply to resource allocation in frequency-domain in multi-user OFDMA/SC-FDMA systems. With multiple users trying to access the same set of frequency resources, the current subject matter can first estimate the frequency-domain channel over the tones in a given allocation for all the users that compete for that allocation. The user that has the best channel quality (e.g., by estimating the channel power) can be given access to that allocation.

(75) As yet another non-limiting example advantage, the current subject matter can provide an estimate of the channel coherence bandwidth. Since channel coherence bandwidth is a measure of channel selectivity in frequency domain, knowledge of the channel coherence bandwidth can enable a scheduler (or resource allocation unit) to make allocations that are diversity in frequency-domain. Frequency-diversity resource allocations provide multi-user frequency-selective scheduling gains.

(76) By way of illustration and as an example of pilot pulse configurations, the LTE data channel (PUSCH) has a single demodulation reference symbol (DMRS) within a slot of seven symbols for normal CP (or six symbols for extended CP), as shown in FIGS. 6 and 7. If the channel bandwidth is 20 MHz, and if the PUSCH allocation size is one resource block (RB), which corresponds to 12 consecutive sub-carriers on the DRMS, then the channel estimation task is to obtain the channel estimate on the 1200 useful data tones (in LTE with 20 MHz channel bandwidth, the maximum number of resource blocks is 100, or the maximum number of data tones is 1200 sub-carriers), which is a difficult task with an allocation size of one RB. As a second example, the symbol and slot structure for various uplink control channel (PUCCH) formats are depicted in FIGS. 8 through 12. Here, the PUCCH allocations are made towards the edges of the RB allocations, and estimation of the overall frequency domain channel using traditional approaches can be prone to extrapolation errors. In a similar manner, in FIG. 15 the downlink reference signal structure is detailed for normal CP with one antenna port. Here, in each slot of seven OFDM symbols, there are only four reference signals available for channel estimation. Estimation of the channel on 12 subcarriers across seven OFDM symbols using four reference symbols can be a difficult task with conventional channel estimation algorithms as they incur both interpolation and extrapolation errors, along with errors due to channel variation across 12 subcarriers over seven OFDM symbols.

(77) In some implementations, the current subject matter can be configured to be implemented in a system 1600, as shown in FIG. 16. The system 1600 can include one or more of a processor 1610, a memory 1620, a storage device 1630, and an input/output device 1640. Each of the components 1610, 1620, 1630 and 1640 can be interconnected using a system bus 1650. The processor 1610 can be configured to process instructions for execution within the system 600. In some implementations, the processor 1610 can be a single-threaded processor. In alternate implementations, the processor 1610 can be a multi-threaded processor. The processor 1610 can be further configured to process instructions stored in the memory 1620 or on the storage device 1630, including receiving or sending information through the input/output device 1640. The memory 1620 can store information within the system 1600. In some implementations, the memory 1620 can be a computer-readable medium. In alternate implementations, the memory 1620 can be a volatile memory unit. In yet some implementations, the memory 1620 can be a non-volatile memory unit. The storage device 1630 can be capable of providing mass storage for the system 1600. In some implementations, the storage device 1630 can be a computer-readable medium. In alternate implementations, the storage device 1630 can be a floppy disk device, a hard disk device, an optical disk device, a tape device, non-volatile solid state memory, or any other type of storage device. The input/output device 1640 can be configured to provide input/output operations for the system 1600. In some implementations, the input/output device 1640 can include a keyboard and/or pointing device. In alternate implementations, the input/output device 1640 can include a display unit for displaying graphical user interfaces.

(78) The systems and methods disclosed herein can be embodied in various forms including, for example, a data processor, such as a computer that also includes a database, digital electronic circuitry, firmware, software, or in combinations of them. Moreover, the above-noted features and other aspects and principles of the present disclosed implementations can be implemented in various environments. Such environments and related applications can be specially constructed for performing the various processes and operations according to the disclosed implementations or they can include a general-purpose computer or computing platform selectively activated or reconfigured by code to provide the necessary functionality. The processes disclosed herein are not inherently related to any particular computer, network, architecture, environment, or other apparatus, and can be implemented by a suitable combination of hardware, software, and/or firmware. For example, various general-purpose machines can be used with programs written in accordance with teachings of the disclosed implementations, or it can be more convenient to construct a specialized apparatus or system to perform the required methods and techniques.

(79) The systems and methods disclosed herein can be implemented as a computer program product, i.e., a computer program tangibly embodied in an information carrier, e.g., in a machine readable storage device or in a propagated signal, for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers. A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.

(80) As used herein, the term user can refer to any entity including a person or a computer.

(81) Although ordinal numbers such as first, second, and the like can, in some situations, relate to an order; as used in this document ordinal numbers do not necessarily imply an order. For example, ordinal numbers can be merely used to distinguish one item from another. For example, to distinguish a first event from a second event, but need not imply any chronological ordering or a fixed reference system (such that a first event in one paragraph of the description can be different from a first event in another paragraph of the description).

(82) The foregoing description is intended to illustrate but not to limit the scope of the invention, which is defined by the scope of the appended claims Other implementations are within the scope of the following claims.

(83) These computer programs, which can also be referred to programs, software, software applications, applications, components, or code, include machine instructions for a programmable processor, and can be implemented in a high-level procedural and/or object-oriented programming language, and/or in assembly/machine language. As used herein, the term machine-readable medium refers to any computer program product, apparatus and/or device, such as for example magnetic discs, optical disks, memory, and Programmable Logic Devices (PLDs), used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term machine-readable signal refers to any signal used to provide machine instructions and/or data to a programmable processor. The machine-readable medium can store such machine instructions non-transitorily, such as for example as would a non-transient solid state memory or a magnetic hard drive or any equivalent storage medium. The machine-readable medium can alternatively or additionally store such machine instructions in a transient manner, such as for example as would a processor cache or other random access memory associated with one or more physical processor cores.

(84) To provide for interaction with a user, the subject matter described herein can be implemented on a computer having a display device, such as for example a cathode ray tube (CRT) or a liquid crystal display (LCD) monitor for displaying information to the user and a keyboard and a pointing device, such as for example a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well. For example, feedback provided to the user can be any form of sensory feedback, such as for example visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including, but not limited to, acoustic, speech, or tactile input.

(85) The subject matter described herein can be implemented in a computing system that includes a back-end component, such as for example one or more data servers, or that includes a middleware component, such as for example one or more application servers, or that includes a front-end component, such as for example one or more client computers having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described herein, or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, such as for example a communication network. Examples of communication networks include, but are not limited to, a local area network (LAN), a wide area network (WAN), and the Internet.

(86) The computing system can include clients and servers. A client and server are generally, but not exclusively, remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

(87) The implementations set forth in the foregoing description do not represent all implementations consistent with the subject matter described herein. Instead, they are merely some examples consistent with aspects related to the described subject matter. Although a few variations have been described in detail above, other modifications or additions are possible. In particular, further features and/or variations can be provided in addition to those set forth herein. For example, the implementations described above can be directed to various combinations and sub-combinations of the disclosed features and/or combinations and sub-combinations of several further features disclosed above. In addition, the logic flows depicted in the accompanying figures and/or described herein do not necessarily require the particular order shown, or sequential order, to achieve desirable results. Other implementations can be within the scope of the following claims.