Sparse ordered iterative group multi-antenna channel estimation
09686102 ยท 2017-06-20
Assignee
Inventors
Cpc classification
H04L27/26134
ELECTRICITY
International classification
H04L27/28
ELECTRICITY
H04L25/02
ELECTRICITY
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
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
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)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(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,
(21) As a second example,
(22)
(23)
(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)
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)
(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)
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
(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)
(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)
where
(36)
(37) For convenience, the FDLSCE can be written compactly in the matrix-vector form as
(38)
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)
{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.
(46)
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)
(49) The frequency-domain channel estimate on a given frequency tone can be obtained as
(50)
(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)
With 50% correlation in frequency domain, the coherence bandwidth is given by
(53)
(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)
(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)
And the FDLSCE on m.sup.th receiver antenna can be described as
(59)
(60) Upon stacking Y(1), Y(2), . . . , Y(M) in columns for all the receiver antennas, Y can be described as
(61)
(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)
(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.
(65)
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)
(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)
(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)
(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
(77) In some implementations, the current subject matter can be configured to be implemented in a system 1600, as shown in
(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.