Skip to main content

Opportunistic channel estimation with LTE signals of limited bandwidth for positioning applications


The positioning problem is interesting in a variety of applications, especially in indoor environments or in urban canyons, where the position information obtainable with traditional Global Navigation Satellite Systems is limited. In this paper, we deal with the problem of estimating, for the purposes of positioning, the time of arrival (TOA) and the angle of arrival (AOA) by processing LTE 3GPP signals, with particular attention to the uplink signals. The main contribution of this paper is the definition of new opportunistic methods to estimate the TOA and the AOA using the upstream demodulation reference signal (DM-RS) instead of the Sounding Reference Signal. We will show that the use of DM-RS and of estimation algorithms such as the Space-Alternating Generalized Expectation-Maximization and the Iterative Adaptive Approach for Amplitude and Phase estimation (IAA-APES) allows an efficient estimate of the parameters, in spite of the small, occupied bandwidth.

1 Introduction

Nowadays, positioning and navigation technologies are commonly used in a large variety of contexts [1,2,3,4,5]. The most popular applications are in the transportation field, where positioning systems are used to guide the users. In the majority of the positioning applications, the localization task is performed by Global Navigation Satellite Systems (GNSSs), which are typically very precise. However, in some scenarios, the GNSSs may not work effectively [6], for instance in urban canyons and indoor environments. GNSSs also suffer from other issues, such as the vulnerability to jamming and spoofing.

One alternative to GNSS is offered by the exploitation of wireless terrestrial signals and networks, which provide good coverage. In this context, localization by means of the cellular system looks a promising approach, also considering that 5 G technology will require the deployment of a large number of micro/pico-cells. For instance, the exploitation of 5 G downlink wireless terrestrial signals for localization purposes (using both time and angular information, as in the present contribution) has been addressed in [7, 8], and some comparisons between uplink and downlink localization schemes can be found in [9, 10]. Addressing the positioning problem using Third Generation Partnership Project (3GPP) and Long Term Evolution (LTE) downlink signals has become increasingly relevant for research and industrial applications, also in view of possible solutions included in future standards.

The 3GPP LTE protocol introduced the support for positioning, and indeed, 4 G LTE can provide good coverage in those scenarios where the GNSS fails. The network usually measures the Time of Arrival (TOA), the Time Difference of Arrival (TDOA), the Received Signal-Strength (RSS), or the Angle of Arrival (AOA) [2]. These measurements are used to perform positioning, using techniques like Enhanced Cell Identity (E-CID), Assisted GNSS (A-GNSS), Observed Time Difference of Arrival (OTDOA) and Uplink Time Difference of Arrival (UTDOA) [2]. 3GPP introduces two stand-alone network-based TDOA measures, i.e., OTDOA and UTDOA, which exploit downlink and uplink transmissions, respectively. In OTDOA, the User Equipment (UE) measures the TDOA of neighbour eNodeBs with respect to a reference eNodeB, exploiting the Positioning Reference Signal (PRS). Meanwhile, in UTDOA, the UE uplink Sounding Reference Signals (SRSs) are measured at some eNodeBs or at some Location Measurement Units (LMUs), these being standalone units integrated in the eNodeBs or, alternatively, located in some known strategic locations.

The reference system, which we also consider in this paper, is shown in Fig. 1. The LMUs, normally synchronized together, and in known locations, measure the TOA and AOA of the uplink signals from the user equipment and pass the measurements to a central server for processing. The positioning engine combines the noisy measurements of the distances between the UE and the LMUs, i.e., their pseudoranges, to perform localization using optimized trilateration techniques. The LMUs are principally active as receivers, so are relatively easy to deploy, providing good flexibility. In particular, it is possible to deploy units with a vertical distribution, for example, on different floors in a building. If the uplink signal can then be received by at least four LMUs distributed vertically and horizontally, then the 3D location and local time of the UE can be estimated. In [11], a system is described that avoids explicit synchronization of the LMUs, by using the information of an additional transmitting unit in known position. In general, LTE uplink signals have generated little attention in the positioning research, and the support for uplink positioning was introduced only in the latest versions of the LTE standard.

Fig. 1
figure 1

Positioning with cellular uplink signals

Note that the opportunistic use of uplink signals can be particularly interesting for any application where LMUs receive signals of many different UEs, such as in vehicular applications where each vehicle is interested in its position relative to the others.

In this paper, we focus on the problem of estimating, for positioning purposes, the time of arrival (TOA) and the angle of arrival (AOA) of 3GPP LTE signals, with a focus on uplink signals. The main contribution of this paper is to define new opportunistic methods to estimate the TOA and AOA using the uplink demodulation reference signal (DM-RS) instead of the SRS.

In practice, the transmission of the SRS by the eNodeB occurs at the discretion of the network operator, which may request its transmission in order to gather extra information on the uplink propagation environment. So it can be that it is only rarely transmitted, or indeed not transmitted at all. The advantage of using the DM-RS is that the UE itself triggers the sending of the signal and decides when to do the uplink transmission, possibly in a collaborative scenario with other UEs. In this case, we disengage from how the eNodeB is managed.

Moreover, transmitting SRS (or PSR) signals at a more frequent rate, as desirable for positioning, would use channel resources, decreasing the capacity available for carrying traffic. In contrast, frequent transmission of the DM-RS is an intrinsic part of the data communications system, and so is always available. In this way, we do not rely on any particular actions or processing by the network operator and infrastructure, and we opportunistically use signals that happen to be transmitted, even if they are designed for other purposes.

However, for the uplink case, a possible drawback of DM-RS, is that it typically occupies, in each transmission, a smaller bandwidth than the SRS, potentially making the estimation less precise. Our purpose is to investigate the approach of measuring the uplink DM-RS signal and its feasibility for the positioning problem. In particular, we show that its use, together with algorithms such as the Space-Alternating Generalized Expectation-Maximization (SAGE) [12,13,14,15] and the Iterative Adaptive Approach for Amplitude and Phase estimation (IAA–APES) [16], can provide sufficiently precise estimates of TOA and AOA. We also propose an initialization method for SAGE, which is relevant for the considered case of a small bandwidth occupation. With multiple antenna receivers, we also show that AOA estimates are not significantly affected by the signal bandwidth, and we compare the performance of IAA–APES with that obtained with SAGE and joint AOA, TOA estimation. Some preliminary results of our research, including some promising experiments in real-world scenarios, are reported in [17,18,19].

In this paper, Sect. 2.1 briefly present the model of the uplink DM-RS. Section 2.2 and 2.3 review the basics of the SAGE algorithm and the IAA–APES algorithms, respectively. Section 3.1 focuses on single antenna receivers and on the uplink Time of Arrival (ToA) measurement of the uplink DM-RS signals, showing simulations and experimental results using the proposed SAGE and IAA–APES algorithms. In Sect. 3.2, we consider multiple antennas receivers and AOA estimation with IAA–APES and SAGE, with joint AOA and TOA estimation with SAGE. We compare simulation results in order to show the performance of the proposed approaches. Finally, the conclusions follow.

2 Methods

2.1 The LTE uplink reference signals for positioning

In the LTE protocol, some Reference Signals (RSs) are transmitted during downlink and uplink transmission. These signals are known in advance at the receiver and generally are used for coherent demodulation, channel estimation, determination of some indicator of the status of the network, and resource allocation in case of multiple users connected to the same eNodeB. Thus, the estimation of the k-th frequency sample of the channel frequency response (CFR) can be obtained asFootnote 1

$$\begin{aligned} \hat{H}_k = \frac{R_k}{S_k} = H_k + \frac{W_k}{S_k}, \end{aligned}$$

where \(S_k\) is the known reference complex signal or data value assigned to the k-th subcarrier, and \(R_k\) is the received signal value affected by noise \(W_k\). The CFR samples are the input to the SAGE and IAA–APES algorithms, which we will describe later. These algorithms exploit the CFR bins in order to estimate parameters like the TOA and the AOA of the received signal.

2.1.1 Uplink reference signals

As mentioned in Sect. 1, in LTE uplink, there are two types of RSs, the DM-RS and the SRS [20,21,22]. The DM-RS is designed for coherent demodulation of the data and for channel estimation. In this work, we show that even if the DM-RS is not designed for positioning, it is possible to exploit it opportunistically for this purpose.

In the frequency domain, the DM-RS occupies the same subcarriers used by data or by control data transmission, and in time, it is located in some SC-FDMA symbols. The SRS occupies the last SC-FDMA symbol in the subframe, but usually the SRS occupies different subcarriers with respect to the ones assigned to data transmission, and in general, the number of occupied subcarriers is larger. As mentioned, it is possible that the SRS is sent rarely or never transmitted. This was actually observed in our experience. We therefore propose the use of DM-RS instead of SRS for uplink AOA and TOA measurements. Moreover, one benefit is that each time there is some data (or control) transmission, there is an opportunity to make a measurement, since DM-RS is transmitted, too. The possible drawback of using the DM-RS is that it occupies only the portion of the bandwidth reserved for data (or control) transmission, while in some configurations, the SRS can occupy the whole bandwidth. This leads to a higher estimation variance when the DM-RS is used.

In general, the uplink RSs include particular reference sequences, which are allocated to some Resource Blocks (RBs). If the RBs allocated for the RS transmission are less than or equal to two, the RS is based on special QPSK sequences. If three or more RB are allocated, the RS sequence is based on a Zadoff-Chu (ZC) sequence. Uplink reference sequences are described in more detail in [20, 22, 23].

2.2 Joint parameters estimation with SAGE

2.2.1 Problem statement

We are typically interested in the joint estimation of the TOA and the AOA, since these are essential to provide information to the actual positioning engine. We consider a general propagation scenario, with a transmitter equipped with a single antenna and a receiver with an antenna array composed of M antenna elements. This type of channel is referred to as a single-input multiple-output (SIMO) channel, and the antenna array steering vector is described as \(\textbf{a}\left( \phi \right) \in \mathbb {C}^M\), where \(\phi\) is the azimuth angle. In the special case of a single omni-directional antenna receiver, the channel will be referred to as a single-input single-output (SISO) channel. In this case, \(M=1\) and \(\textbf{a}\left( \phi \right) =1, \forall \phi\) since we are considering the uplink, a SISO and SIMO set-up are more common and relevant. In fact, in most cases, the terminals will not be equipped with multiple antennas but more likely with a single isotropic antenna. In addition, in our approach, the idea is to opportunistically estimate at the LMUs the parameters of interest of the signals transmitted by the terminals, without adding extra complexity at the terminals themselves.

Let us assume that the M antenna array elements are located at positions \(\textbf{p}_1, \dots , \textbf{p}_M, \; \textbf{p}_i \in \mathbb {R}^2\), with respect to an arbitrary origin.

Assuming that the channel presents a finite number of multipath components L, it is possible to describe the received baseband signal, in vector notation, as

$$\begin{aligned} \textbf{y}\left( t,\varvec{\theta }\right)&= \left[ y_1\left( t,\varvec{\theta }\right) , \dots , y_M\left( t,\varvec{\theta }\right) \right] ^T \nonumber \\&= \sum _{l=1}^{L}\alpha _l s\left( t-\tau _l\right) e^{j2\pi \nu _l t} \textbf{a}\left( \phi _l\right) . \end{aligned}$$

where \(\varvec{\theta } = \left[ \varvec{\theta }_1, \dots , \varvec{\theta }_L\right] ^T\) represents the channel parameter vector of the L paths, with \(\varvec{\theta }_l = [{\text {Re}}\left\{ \alpha _l \right\} , {\text {Im}}\left\{ \alpha _l \right\} , \tau _l, \nu _l, \phi _l ]\). Note that, in the considered scenario, delays \(\tau _l\) can be identified with the reception timestamps collected by the LMU anchor nodes, according to their local clocks. Using the technique described, for instance, in [11], actual delays can be computed by the positioning engine during the data processing stage, also without requiring synchronization of the LMUs. This is done by taking into account the intrinsic redundancy of multiple reception of the same packet by the different anchor nodes, and by exploiting the information provided by a transmitting unit. In the following, we will therefore focus on the problem of accurate arrival time estimation within each transmission slot. Considering the l-th incident wave, the signal is indeed characterized by the complex amplitude \(\alpha _l\), the delay \(\tau _l\), the incident angle \(\phi _l\), while \(\nu _l\) represents the frequency shift, which takes into account the Doppler frequency and the frequency offset between the transmitter and the receiver. Considering the l-th path, the steering vector is \(\textbf{a}\left( \phi _l\right) = \left[ a_1\left( \phi _l\right) , \dots , a_M\left( \phi _l\right) \right] ^{T}\) and its components depend on the antenna array geometry. Assuming a uniform linear array (ULA) the steering vector \(\textbf{a}\left( {\phi _l}\right)\) has elements

$$\begin{aligned} \textbf{a}\left( {\phi _l}\right) _i=\exp \left( {j 2 \pi \frac{\left( i-1\right) d}{\lambda } \sin \phi _l}\right) , \, i=1,\ldots ,M, \end{aligned}$$

where d is the distance between the antenna elements and \(\lambda\) is the wavelength. Based on this model, the corresponding channel impulse response (CIR) and CFR are respectively given by

$$\begin{aligned} \textbf{h}\left( t; \tau ; \varvec{\theta }\right) = \sum _{l=1}^{L} \alpha _l \delta \left( \tau -\tau _l\right) e^{j2\pi \nu _l t} \textbf{a}\left( \phi _l\right) \end{aligned}$$
$$\begin{aligned} \textbf{H}\left( t; f; \varvec{\theta }\right) = \sum _{l=1}^{L} \alpha _l e^{j2\pi \left( \nu _l t - f \tau _l\right) } \textbf{a}\left( \phi _l\right) \end{aligned}$$

Let us assume that the CFR is observed through \(N_{sc}\) samples in frequency domain, at frequencies \(f_k\) separated by \(\Delta f\) (e.g., each sample can represent the channel estimate obtained at different subcarriers from an LTE reference signal). Different \(N_t\) CFR snapshots are then estimated at each \(t_n\), separated by \(\Delta t\) (e.g., each CFR can be estimated in each LTE slot exploiting different RSs). Thus, the m-th antenna element of the array detects the channel sample

$$\begin{aligned} \hat{{H}}_m\left( t_n; f_k\right) = \sum _{l=1}^{L} \alpha _l e^{j2\pi \left( \nu _l t_n - f_k \tau _l\right) } \cdot a_m\left( \phi _l\right) +{n}(t_n;f_k ). \end{aligned}$$

At the receiver, \(N_t N_{sc} M\) complex valued observations are available, i.e.,

$$\begin{aligned} \hat{\textbf{H}}\left( t_n; f_k\right) = \begin{bmatrix} \hat{{H}}_1\left( t_n; f_k\right) \\ \vdots \\ \hat{{H}}_M\left( t_n; f_k\right) \\ \end{bmatrix} \in \mathbb {C}^M, \nonumber \\ \quad n=1,\dots ,N_t; \quad k=1,\dots ,N_{sc}. \end{aligned}$$

We will refer to the complete set of channel observations as \(\hat{\textbf{H}}\left( \varvec{t}; \varvec{f}\right)\), which are the sum of the true channel samples plus complex Gaussian noise \(\textbf{n}(\varvec{t}; \varvec{f})\), with \(\sigma ^2=N_0/2\) variance per dimension. It is possible to write

$$\begin{aligned} \hat{\textbf{H}}\left( \varvec{t}; \varvec{f}\right) = {\textbf{H}}\left( \varvec{t}; \varvec{f}; \varvec{\theta }\right) +\textbf{n}\left( \varvec{t}; \varvec{f}\right) , \end{aligned}$$

where the noise samples are assumed independent and identically distributed (i.i.d.) for each \(t_n \in \varvec{t}\) and \(f_k \in \varvec{f}\). Now the problem to solve is the estimation of the unknown channel parameter vector \(\varvec{\gamma }=\left[ \sigma ^2; \varvec{\theta }\right] \in \mathbb {C}^{5\,L+1}\) starting from the channel observations \(\hat{\textbf{H}}\left( \varvec{t}; \varvec{f}\right)\). Under the Gaussian additive noise assumption, the final ML channel parameter estimate becomes

$$\begin{aligned}{} & {} \hat{\varvec{\theta }}_{ML} = \arg \min _{\varvec{\theta }} \sum _{n=1}^{N_t}\sum _{k=1}^{N_{sc}}\Vert \hat{\textbf{H}}\left( t_n, f_k\right) -\textbf{H}\left( t_n; f_k; \varvec{\theta }\right) \Vert ^2, \end{aligned}$$
$$\begin{aligned}{} & {} \hat{\sigma }^2_{ML} = \frac{1}{2N_t N_{sc}M} \sum _{n=1}^{N_t}\sum _{k=1}^{N_{sc}}\Vert \hat{\textbf{H}}\left( t_n, f_k\right) -\textbf{H}\left( t_n; f_k; \varvec{\theta }_{ML}\right) \Vert ^2. \end{aligned}$$

It is important to point out that the estimation of \(\hat{\varvec{\theta }}_{ML}\), from which we derive the time delays for positioning purposes, is a very complex problem because it is a \(5 L-\)dimensional minimization problem, considering the estimation of complex amplitude (real and imaginary part), delay, incident angle, and doppler frequency shift. In order to decrease the complexity of the problem, the SAGE algorithm [12,13,14,15] can be used to evaluate the ML estimation of \(\hat{\varvec{\theta }}_{ML}\). The SAGE algorithm breaks the 5L minimization problem into a sequence of 5L iterative mono dimensional problems [12,13,14,15].

2.2.2 The SAGE algorithm

Determining the number of multipath components L is not completely straightforward, as we will briefly discuss in Sect. 2.2.4. We assume in the following that L is known. Starting from the channel observations \(\hat{\textbf{H}}\left( \varvec{t}; \varvec{f}\right)\), one can isolate the l-th term relating to the l-th path. This term can be calculated by canceling the interference caused by the other paths. Thus, having one previous estimate of the channel parameter vector \(\varvec{\hat{\theta }'}\), the term relating to the l-th path can be isolated as

$$\begin{aligned} \hat{\textbf{H}}_l\left( t_n;f_k\right) = \hat{\textbf{H}}\left( t_n, f_k\right) - \sum _{l'=1,l'\ne l}^{L} \textbf{H}\left( t_n;f_k;\varvec{\hat{\theta }'}_{l'}\right) . \end{aligned}$$

After isolating the CFR relative to the single path l, its channel parameter vector \(\varvec{\theta }_l\) can be estimated by solving Eq. (9) for a single path, namely

$$\begin{aligned} \varvec{\hat{\theta }}_{l,ML} = \arg \min _{\varvec{\theta }_l}\left\{ \sum _{n=1}^{N_t}\sum _{k=1}^{N_{sc}} \Vert \hat{\textbf{H}}_l\left( t_n;f_k\right) - \textbf{H}\left( t_n;f_k;\varvec{{\theta }}_l\right) \Vert ^2 \right\} . \end{aligned}$$

Now the 5L dimensional maximization problem of Eq. (9) has been turned into L five-dimensional minimization problems. The value \(\alpha _l\) can be determined in closed form assuming that the values \(\tau _l\), \(\nu _l\) and \(\phi _l\), are known. Indeed, we have

$$\alpha _{{l,ML}} (\tau _{l} ,\phi _{l} ,\nu _{l} ) = \arg \;\min _{{\alpha _{l} }} \left\{ {\sum\limits_{{n = 1}}^{{N_{t} }} {\sum\limits_{{k = 1}}^{{N_{{sc}} }} {\left\| {\widehat{{\mathbf{H}}}_{l} \left( {t_{n} ;f_{k} } \right) - \alpha _{l} e^{{i2\pi \left( {\nu _{l} t_{n} - f_{k} \tau _{l} } \right)}} {\mathbf{a}}\left( {\phi _{l} } \right)} \right\|^{2} } } } \right\}.$$

It is possible to arrange the values \(\hat{\textbf{H}}_l\left( t_n;f_k\right)\) and \(e^{i2\pi \left( \nu _l t_n - f_k \tau _l\right) }\textbf{a}\left( \phi _l\right)\) in the complex vectors \(\varvec{H}_l\) and \(\varvec{W}_l\), respectively, so that the minimization problem can be written as

$$\begin{aligned} \alpha _{l,ML} (\tau _l, \phi _l, \nu _l )= \min _{\alpha _l}\left\{ \Vert \varvec{H}_l-\alpha _l\varvec{W}_l \Vert ^2 \right\} . \end{aligned}$$

It is well known that the vector \(\alpha _l\varvec{W}_l\) minimizing (14), is the orthogonal projection \(\varvec{U}_l\) of \(\varvec{H}_l\) onto \(\varvec{W}_l/\left\| \varvec{W}_l\right\|\), namely

$$\begin{aligned} \varvec{U}_l = \frac{\varvec{H}_l\cdot \varvec{W}_l}{\left\| \varvec{W}_l\right\| ^2}\varvec{W}_l \qquad \alpha _{l,ML}(\tau _l, \phi _l, \nu _l ) = \frac{\varvec{H}_l\cdot \varvec{W}_l}{\left\| \varvec{W}_l\right\| ^2}. \end{aligned}$$

The inner product can be written as

$$\begin{aligned} \begin{aligned} \varvec{H}_l\cdot&\varvec{W}_l = z\left( \tau , \phi , \nu , \hat{\textbf{H}}_l\right) = \\ {}&\sum _{n=1}^{N_t}\sum _{k=1}^{N_{sc}} e^{-i2\pi \left( {\nu _l}t_n - f_k {\tau _l}\right) }\textbf{a}^{H}\left( \phi _l\right) \hat{\textbf{H}}_l\left( t_n;f_k\right) , \end{aligned} \end{aligned}$$

and, furthermore, \(\left\| \varvec{W}_l \right\| ^2 = N_t N_{sc} M\). Note that \(z\left( \tau , \phi , \nu , \hat{\textbf{H}}_l\right)\) can be interpreted as a three-dimensional correlation function. It can be shown [12] that the values \(\tau _l\), \(\phi _l\) and \(\nu _l\) can be obtained by solving the problem

$$\begin{aligned} \left( \hat{\tau }_l, \hat{\phi }_l, \hat{\nu }_l\right) _{ML} = \arg \max _{\left[ \tau , \phi , \nu \right] }\left\{ \left| z\left( \tau , \phi , \nu , \hat{\textbf{H}}_l\right) \right| \right\} \end{aligned}$$

so that the overall problem now becomes that of finding the maximum of a three-dimensional correlation function. The procedure explained so far is an expectation-maximization (EM) algorithm. The EM algorithm proceeds iteratively by considering one multipath component at a time, cancelling all the other components from the observations based on the previous parameter estimates \(\hat{\varvec{\theta }}'\) (E step), and updating the current parameters by maximizing the three-dimensional correlation function (M step). This results in the new parameters \(\hat{\varvec{\theta }}''\), which will be used in the next iteration. The iterations can be stopped when convergence is reached. The vector parameters obtained at the \(\mu\) iteration is called \(\hat{\varvec{\theta }}\left( \mu \right)\). The sequence of likelihood values at each iteration is called \(\Lambda \left( \varvec{\theta }\left( \mu \right) \right)\) and has the property that it is always monotonically non decreasing through the successive iterations [12]. Once the final ML channel parameter estimates are computed, the ML estimate \(\sigma ^2_{ML}\) of the noise variance is easily derived using (10).

The SAGE algorithm further simplifies the EM algorithm, decomposing the 3D correlation maximization problem for each path into a sequence of 3 successive one dimensional maximization problems. In other words, the SAGE algorithm uses alternate optimization over the four parameters \(\tau _l\), \(\phi _l\) \(\nu _l\) and \(\alpha _l\), starting from an initial guess of their values. It optimizes only one variable at a time, keeping the others fixed. The process is then repeated until the variables have converged (Fig. 2).

Fig. 2
figure 2

SAGE. The flow chart of the SAGE algorithm

2.2.3 Uplink DM-RS transmission issues using SAGE

Fig. 3
figure 3

Time-frequency pattern. The typical time-frequency pattern available with DM-RS

Since the DM-RS is transmitted inside an uplink data transmission, the band occupied by the data is scheduled by the eNodeB. Therefore, in correspondence with a bandlimited DM-RS input, the CFRs can be estimated only in those portions of the band where the data transmission is scheduled. The typical resulting available time-frequency pattern \(\varvec{\hat{H}(t;f)}\) is depicted in Fig. 3. Due to this particular pattern, one can expect a performance degradation caused by the relatively small bandwidth available for TOA estimation in each subframe. Suppose that the channel is observed at different subcarriers \(f_k=k\Delta f\), and at different time snapshots \(t_n=n \Delta t\), (corresponding to different measurements of the CFR) and through M different antennas, This defines a uniform grid of coordinates \(I= \left\{ (n,k,m)\right\}\). It is apparent in this case that the correlation function defined in Eq. (16), whose absolute value we wish to maximize, is a three-dimensional DFT that can be easily computed via FFT algorithms.

In the case, we are considering, where the channel estimates are known only in a non-uniform grid in time-frequency, we can still use FFT and embed the data in a uniform grid, by simply setting to zero the missing values. This allows to still exploit the efficiency advantages that the FFT brings. In other words, the increase in the data by the extra zeros is outweighed by the efficiency gain of the FFT.

In [12], the initial conditions are calculated using a non-coherent accumulation during the M-step, while a successive cancellation is used during the E-step. For instance, the initial value of the parameter \(\hat{\tau _l}\) is calculated as

$$\begin{aligned} \hat{\tau }_l = \arg \max _{\tau }\left\{ \sum _{m=1}^{M}\sum _{n=1}^{N_t}\left|\sum _{k=1}^{N_{sc}} e^{j2\pi f_k \tau }\hat{H}_{m,l}\left( t_n;f_k\right) \right|^2\right\} . \end{aligned}$$

Initial values of the other parameters \((\hat{\phi _l},\hat{\nu _l})\), are computed similarly. This procedure is called non-coherent accumulation because in this case the summations are calculated outside the absolute value, and the phase of the complex samples is not considered. The procedure starts by estimating the initial condition of the first path, based on the values of the full observation matrix \(\hat{\textbf{H}}\left( \varvec{t}; \varvec{f}\right)\), which are influenced by all the paths undetected so far. Then, the first path estimation is cancelled during the E-step and another non-coherent accumulation procedure is performed. This process continues until the last path initial parameter values are estimated.

We found out experimentally that the use of non-coherent accumulation often ends up in wrong initial estimates, corresponding to local maxima of the correlation function \(z\left( \tau _l, \phi _l, \nu _l\right)\) of Eq. (16). This has serious implications, since, during the E-step, the estimate is subtracted from the data, and the initial error propagates. The problem is particularly critical with uplink transmissions. Indeed, when no information about the CFR is available, we pad with zeros the unknown CFR bins. One can notice that the squared modulus of the correlation function \(z\left( \tau _l, \phi _l, \nu _l\right)\) of Eq. (16) corresponds to a periodogram in the delay-angle-Doppler domain, which will exhibit maximum values at \(\left( \tau _l;\nu _l;\phi _l\right)\) that correspond to the parameters of the paths. By setting the missing values to zero, we implicitly multiply the data by a three-dimensional window. This causes a convolution in the transform domain, possibly originating spurious local maxima in \(z\left( \tau _l, \phi _l, \nu _l\right)\) which make it problematic to recognize correct maxima after non-coherent accumulation.

Based on this, we propose a new method to estimate the initial conditions of SAGE. In particular, the initial conditions of the first path is made by searching the values corresponding to \(\left( \tau , \phi , \nu \right)\) (or to \(\left( \tau ;\nu \right)\) in the 2D single antenna case) corresponding to a maximum of the periodogram calculated using the full observation matrix \(\hat{\textbf{H}}\left( \varvec{t}; \varvec{f}\right)\). Then, we perform the path cancellation and we calculate the second path parameters, again calculating a periodogram. This procedure is repeated until the last path initial conditions are estimated. In general, this method requires more computational effort with respect to the simplest non-coherent accumulation because it performs the search of the maximum in a 2D or 3D function, but the search for the maximum has to be done only once to estimate the initial conditions. Actually, we found out that using the FFT in subsequent stages does not provide significant advantages with respect to the SAGE greedy approach, with a significant increase in the computational complexity. Nevertheless, the proposed initialization procedure improves the overall algorithm performance. The number of iterations to convergence can be regulated by choosing an appropriate stop criterion, which in our implementation is determined by the variation of the parameters between one iteration and the next. In our experiments, the algorithm stops when the delay variation is below 0.5 ns, the doppler estimate variation is below 0.5 Hz and the angle variation is less than \(1^\circ\). With these values, the algorithm converges, on average, after 15 iterations. In the following sections, we refer to our proposed method as 2D initialization (or 3D initialization in case of AOA, TOA and Doppler estimation), and to non-coherent initialization when the method proposed in [12] is used.

2.2.4 Detection of the number of paths

The SAGE algorithm does not provide a method for the estimation of the number L of multipath components, and previously we assumed to know the number of paths L. Conventional information criteria [24] can be used to estimate L. According to [25], in our problem, it is possible to use the Minimum Description Length (MDL) criterion, also referred to as Bayesian Information Criterion (BIC), in order to estimate L. In the next simulation results, we assume to know the number of paths L, in order to compare the performance of the different algorithms.

2.3 The IAA–APES algorithm

Turning now to the estimation of the AOA, we start by considering the problem of AOA estimation only, then we move to a brief explanation of the joint estimation. Since the number of different AOAs is usually small, the AOA estimation can be viewed as a sparse data reconstruction problem where AOAs are associated to those directions that have non-zero amplitudes. In this approach, the first step is to find a sparse representation of the array output data. We assume that there are L sources that arrive at the array with angles \(\varvec{\phi } = \left[ \phi _1, \dots , \phi _L\right]\). In the presence of additive noise the output of an antenna array with M elements is

$$\begin{aligned} \textbf{y} \left[ n\right] = \textbf{A}\left( \varvec{\phi }\right) \textbf{s}\left[ n\right] + \textbf{n}\left[ n\right] \quad n = 1, \dots , N \end{aligned}$$

where N is the number of snapshots, \(\textbf{A}\left( \varvec{\phi }\right)\) is the \(M \times L\) steering matrix defined as \(\textbf{A}\left( \varvec{\phi }\right) = \left[ \textbf{a}\left( \phi _1\right) , \dots , \textbf{a}\left( \phi _L\right) \right]\) and \(\textbf{s}\left[ n\right] = \left[ s_1\left[ n\right] , \dots , s_L\left[ n\right] \right] ^T\) is the source vector signal at time n. By comparing with the model in Eq. (2), we can see that \(\textbf{y} \left[ n\right]\) is the noisy sampled version of \(\textbf{y}\left( t,\varvec{\theta }\right)\), with sampling instants at each snapshot. As a consequence, \(s_l[n]\) is the sampled version of \(\alpha _l s\left( t-\tau _l\right) e^{j2\pi \nu _l t}\). Considering a ULA, the steering vector of the l-th source is given by Eq. (3). It is important to note that if the geometry of the array changes, only the expression of the steering vector has to be modified. Usually, the number L of source angles of arrival is unknown, and in order to estimate the AOAs of the different sources, a K point grid with \(K \gg L\) is considered. In other words, the considered region of the angles of interest is subdivided into a grid \(\varvec{\tilde{\phi }} = \left[ \tilde{\phi }_1, \dots , \tilde{\phi }_K\right]\) of K points and for each point the power is estimated. Indeed, assuming that the set \(\tilde{\varvec{\phi }}\) contains the \(\phi _l\) values corresponding to all sources, the \(K-\)dimensional vector \(\textbf{s}\left[ n\right]\) in Eq. (19) has only a few significant components, and is therefore “sparse.”

The IAA–APES algorithm is a data-dependent, non-parametric approach based on the weighted least square algorithm [16]. Assuming that \(\textbf{P} \in \mathbb {R}^{K \times K}\) is the diagonal matrix whose non-zero elements are the power at each angle of the scanning grid, its \(k-\)th diagonal element can be expressed as

$$\begin{aligned} P_k = \frac{1}{N} \sum _{n = 1}^{N} \left| s_k\left[ n\right] \right| ^2, \quad k = 1,\dots ,K, \end{aligned}$$

where \(s_k\left[ n\right]\) has to be estimated. Considering that \(\phi _k\) is the current angle of interest, it is possible to define the interference plus noise covariance matrix as

$$\begin{aligned} \textbf{Q}\left( \phi _k\right) = \textbf{R} - P_k\textbf{a}\left( \phi _k\right) \textbf{a}^H\left( \phi _k\right) \end{aligned}$$

where the correlation matrix is \(\textbf{R} = \textbf{A}\left( \varvec{\phi }\right) \textbf{P}\textbf{A}^H\left( \varvec{\phi }\right)\). Then, it is possible to define the WLS cost function as [16, 26]:

$$\begin{aligned} \sum _{n = 1}^{N} \left\Vert \textbf{y} \left[ n\right] - s_k\left[ n\right] \textbf{a}\left( \phi _k\right) \right\Vert _{\textbf{Q}^{-1}\left( \phi _k\right) }^{2} \end{aligned}$$


$$\begin{aligned} \left\Vert \textbf{x} \right\Vert _{\textbf{Q}^{-1}\left( \phi _k\right) }^{2} = \textbf{x}^H\textbf{Q}^{-1}\left( \phi _k\right) \textbf{x}. \end{aligned}$$

Minimizing the cost function with respect to \(s_k\left[ n\right]\), which is considered deterministic and unknown, it is possible to obtain the estimate [16]

$$\begin{aligned} \hat{s}_k\left[ n\right] = \frac{\textbf{a}^H\left( \phi _k\right) \textbf{R}^{-1}\textbf{y}\left[ n\right] }{\textbf{a}^H\left( \phi _k\right) \textbf{R}^{-1}\textbf{a}\left( \phi _k\right) }, \quad n = 1,\dots ,N \end{aligned}$$

Since IAA–APES requires the correlation matrix \(\textbf{R}\), which depends on the unknown signal powers, it has to be implemented iteratively, and usually the initialization is made with a conventional beamformer [16, 27]. In IAA–APES, the estimation of \(\textbf{P}\) and \(\textbf{R}\), are calculated using the signal estimation obtained in the previous iteration. This makes the IAA–APES algorithm robust to coherent or highly correlated sources. Also, it can have good performance using only few snapshots [27].

The illustrative AOA estimation can be extended to TOA and Doppler estimation, or to joint TOA, AOA and Doppler estimation, by appropriately defining matrix \(\textbf{A}\) in (19). For example, a joint AOA, TOA estimation can be obtained by considering the following matrix

$$\begin{aligned} \begin{aligned} \textbf{A}\left( \varvec{\tau },\varvec{\phi }\right) =&\bigl [\textbf{a}\left( \tau _1,\phi _1\right) ,\textbf{a}\left( \tau _2,\phi _1\right) , \dots , \\&\textbf{a}\left( \tau _I,\phi _1\right) ,\textbf{a}\left( \tau _1,\phi _2\right) , \dots , \textbf{a}\left( \tau _I,\phi _K\right) \bigr ], \end{aligned} \end{aligned}$$

where, in case of ULA, we have, denoting with P the number of frequency bins,

$$\begin{aligned} \textbf{a}\left( \tau _i,\phi _k\right) = \begin{bmatrix} e^{j 2 \pi f_1 \tau _i} \\ \vdots \\ e^{j 2 \pi f_P \tau _i} \\ e^{j 2 \pi \left( f_1 \tau _i + \frac{d}{\lambda } \sin \phi _k\right) } \\ \vdots \\ e^{j 2 \pi \left( f_1 \tau _i + \frac{2d}{\lambda } \sin \phi _k\right) } \\ \vdots \\ e^{j 2 \pi \left( f_P \tau _i +\left( M-1\right) \frac{d}{\lambda } \sin \phi _k\right) } \\ \end{bmatrix}. \end{aligned}$$

The frequencies in Eq. (26), in contrast to the simpler model in (19), come into play because we perform a joint estimation of the TOA and AOA, as opposed to the simpler AOA estimation, which does not involve the \(\tau _i\) factors. Also in this case, the parameters’ estimates are obtained from the pairs \((\hat{\tau _i},\hat{\phi _k})\) that maximize the power. Let us denote with I the number of grid points for the delay, K the number of grid points for the angle, M the number of antennas and P the number of channel frequency bins. We can notice that one issue of the IAA–APES implementation is related to the inversion of the correlation matrix \(\textbf{R}\), which has dimension \(MP\times MP\). Moreover, to achieve a proper resolution, I and K have to be selected large. For instance, matrix \(\textbf{A}\left( \varvec{\tau },\varvec{\phi }\right)\) has dimension \(MP \times KI\). In practical scenarios, the large dimensions of matrix \(\textbf{R}\) and \(\textbf{A}\) make it prohibitive to use IAA–APES for joint estimation. Because of this, in the following we decided not to use IAA–APES for joint estimation, while we use it to estimate each parameter separately.

3 Results and discussion

3.1 Uplink TOA estimation

This section focuses on measurement of the time of arrival, thus considering the case of single antenna receivers, so we are not considering the effect of different angles of arrival. The joint estimation of TOA and AOA will be considered in Sect. 3.2. We compare the performance of the SAGE algorithm, the IAA–APES algorithm and a simpler correlation peak detector in three different scenarios. The first scenario considers an optimistic situation which allows us to establish a bound for the performance that can be obtained in more realistic settings, considered in the other two scenarios which simulate typical uplink transmissions. We also perform simulations of some pedestrian and vehicular models defined in the 3GPP standard [28, 29], described in Sect. 3.1.3.

3.1.1 Simulation setup

In our simulations, we generate a random sequence of bits that are converted to complex symbols for each subframe according to the SC-FDMA modulation scheme, and we include the DM-RSs, according with the specifications in [22]. Then, the channel is simulated and the convolution with the generated input is calculated. The channel is updated at every slot by taking the value of the Doppler into account.

Fig. 4
figure 4

Simulation setup. Block diagram of the simulation setup.

Complex white Gaussian noise is added to the signal based on the SNR value, which is a simulation parameter. The resulting complex signal plus noise represents the received signal. The peak position obtained correlating the received signal with the known DM-RS sequence provides a first TOA estimation, which is usually not precise. Using the TOA correlation information and discarding the Cyclic Prefix, we are able to find the DM-RS location in the received signal and perform the CFR estimation as in Eq. (1). Since the time distance between a DM-RS and the following one is fixed and equal to \(\Delta t = 0.5\) ms, once we have the position of the first DM-RS, we can easily find the position of the other DM-RS in the received signal. This provides an estimate of the CFR for each slot. This collected information constitutes the input of the SAGE and IAA–APES algorithms. These steps are summarized in the block diagram of Fig. 4. In details, the setup for the three scenarios we consider are:

  1. 1

    Full band We simulate a transmission that occupies the whole available LTE uplink bandwidth, and in particular we select the bandwidth with \(N_{sc} = 1200\) subcarriers. It is well known that the variance of the delay estimation is inversely proportional to the occupied bandwidth, so this case provides a lower bound for TOA estimation in LTE uplink;

  2. 2

    Simulated ping The second scenario simulates a data transmission using \(N_{sc}=1200\) subcarriers, but in this case, the occupied bandwidth is limited. In particular, we model an uplink transmission where the allocated band changes every two slots. Moreover, in this scenario, the allocated band occupies a minimum of 4 RBs and a maximum of 18 RBs. For each subframe, two uniform random values are generated, we call them \(r_{{\text {NRB}}}\) and \(r_{{\text {start}}}\). The value \(r_{{\text {NRB}}}\) represents the number of occupied RBs, and it is uniformly generated between 4 and 18. Moreover, \(r_{\text {start}}\) represents the starting RB and is uniformly generated between 1 and \(100 - r_{{\text {NRB}}}\);

  3. 3

    Real ping In the third scenario, a real uplink data transmission pattern originated by a ping command to a server was considered. The scheduled uplink frequencies are obtained from the commercial u-blox LTE module Toby L20 [30]. Figure 5 shows the time-frequency pattern of the transmission. Note that the DM-RS signal is transmitted every 0.5 ms using the same time-frequency pattern of the ping data.

Fig. 5
figure 5

Time-frequency pattern of the “real” ping signal

3.1.2 Simulation results with different initialization procedures

This section presents some simulation results that show the performance of the 2D SAGE initialization and the non-coherent initialization, in different scenarios. For completeness, we compare the results obtained with these two initialization procedures with other techniques in order to give an idea of the overall performance. We test the ability of the algorithms to discriminate close paths in delay domain.

For each scenario, we set the SNR to 10 dB and we simulate 3 paths with the same amplitude \(\left| \alpha _l\right| ^2 = 0\) dB and random phase, \(l \in 1,\dots ,3\), fixed Doppler frequencies \(\nu _l = 10\) Hz, \(l \in 1,\dots ,3\). Then, the delay is selected as

$$\begin{aligned} \tau _1 = 15 \text{ ns }, \; \tau _2 = \tau _1+\Delta \tau , \; \tau _3&= \tau _1+2\Delta \tau \end{aligned}$$

according to different \(\Delta \tau\) values. In particular, the simulated transmission has a duration in time of 25 subframes, i.e., 50 CFRs snapshots are available in each scenario. These values are selected because the uplink data transmission associated to ping a server has approximately this duration. Then, we iterate the simulation for \(n=500\) times using different seeds for the random number generator. Thus, in the simulated ping scenario, the bandwidth allocation changes at every iteration, while in the real ping scenario and in the full band scenario, the allocation is fixed and only the noise changes during each trial. The following plots report the RMSEE of the results obtained in the different trials

$$\begin{aligned} \text{ RMSEE }=\sqrt{\frac{\sum {(\hat{\tau }_{1,i}-\tau _1)^2}}{n}}, \end{aligned}$$

where n is the number of trials and \(\hat{\tau }_{1,i}\) is the estimate of the first path delay in each simulation. Assuming a zero mean Gaussian distribution with unknown variance \(\sigma ^2\) for the difference \(\hat{\tau }_{1,i}-\tau _1\), the RMSEE is an estimator of the standard deviation \(\sigma\) [31], for which we can compute confidence intervals, resulting in

$$\begin{aligned} \text{ CI }=\left[ \sqrt{\frac{n}{\chi ^2_{1-\alpha /2,n}}}\text{ RMSEE },\sqrt{\frac{n}{\chi ^2_{\alpha /2,n}}}\text{ RMSEE } \right] , \end{aligned}$$

where \({\chi ^2_{a,n}}\) is the a critical value of the chi-squared distribution, and \(1-\alpha\) if the confidence level. For \(n=500\) and \(1-\alpha =0.95\), we obtain CI/RMSEE=[0.9417 1.0661], meaning that the 95% confidence interval is between \(\pm 6\%\) of the calculated RMSEE. Similar conclusions can be drawn for the RMSEE of the other parameters that we will consider in the following. Figure 6 shows the RMSEE of the first path delay in the full band scenario. For the correlation peak detector, we consider two strategies. The first one correlates the transmitted DM-RS of each slot with the received signal. In the second one, two contiguous DM-RSs belonging to the same subframe are correlated with the received signal, and the samples between the two DM-RS are filled with zeros. We can notice that the two correlation methods are less precise then the other algorithms. When \(\Delta \tau\) is above 50 ns, the IAA–APES, SAGE 2D and SAGE non-coherent algorithms have almost the same performance, with an error below 2 ns.

Figure 7 shows the RMSEE of the first path delay in the simulated ping scenario. In this case, the SAGE 2D initialization outperforms all the other methods. As expected, with a limited band occupation, the correlation methods perform badly with a very large error. Note that SAGE, with non-coherent initialization, has an error that increases even with increasing \(\Delta \tau\). This is due to the erroneous initialization, which is incorrect when the bandwidth is small. Also IAA–APES exhibits an increasing error with increasing \(\Delta \tau\). This happens because IAA–APES in this case is not able to separate the three paths and only one path, with erroneous delay, is estimated. Finally, Fig. 8 shows the RMSEE of the first path delay in the real ping scenario. Also in this case, we can see that the SAGE 2D algorithm outperforms the other algorithms. The behaviour is similar to that of the simulated ping scenario.

Fig. 6
figure 6

RMSEE of the first path delay. Comparison between different algorithms in the full band scenario

Fig. 7
figure 7

RMSEE of the first path delay. Comparison between different algorithms in the simulated ping scenario

Fig. 8
figure 8

RMSEE of the first path delay. Comparison between different algorithms in the real ping scenario

In summary, we can point out that the 2D initialization of SAGE in case of the simulated ping and real ping scenarios have performance comparable to the other algorithms in the full band scenario. Indeed, 2D SAGE initialization in the two ping scenarios gives results close to the full band scenario, with estimation errors below 20 ns when \(\Delta \tau\) is higher than 40 ns. These results confirm that using DM-RS can be appropriate for opportunistic positioning.

3.1.3 Simulation results using standard channel models

In this section, we present simulation results for more realistic channel realizations. We assume the number of paths L is known. In particular, we consider the RMSEEs in the three scenarios described in the previous section, i.e., full band, simulated ping and real ping. However, in this case, the channel is derived from three different models, based on the EPA, EVA and ETU channel models described in the LTE standard [28, 29], whose parameters are reported in Table 1.

Table 1 Channel models used in simulation

The phase of the complex channel gain \(\alpha _l\) for each path is generated randomly, i.e., \(\alpha _l = \left| \alpha _l\right| e^{j\phi }\) with \(\phi\) uniform in \([0, 2\pi ]\). We simulate the transmission of 25 consecutive subframes, which are approximately the number of subframes occupied by a ping. We generate 500 different channel realizations for each SNR value, ranging from − 15 to 20 dB with 5 dB steps. We report the results relative to a a random Doppler for each path, uniform between \(-\nu _{l,\max }\) and \(\nu _{l,\max }\). Similar conclusions can be drawn when a fixed Doppler frequency equal to \(\nu _{l,\max }\) is set for each path.

3.1.4 EPA random Doppler results

In Figs. 9 and 10, the RMSEEs of the first path delay is shown. In particular, we compare the results obtained with SAGE, IAA–APES and the correlation peak detector, considering the EPA channel model in the three different scenarios with random Doppler. Figure 10 shows a detail of Fig. 9. In the full band case, the correlation RMSEE is comparable with the other methods. IAA–APES has the best performance in the full band scenario and when the SNR is low in all the scenarios evaluated. At low SNR, in the two ping scenarios, the error in pseudorange is around 15 m. On the contrary, in the real ping and simulated ping scenarios with SNR higher than − 5 dB, the SAGE algorithm gives a slightly better estimation, with errors in pseudorange around 13 m. So, SAGE has a slightly better performance compared to IAA–APES, while IAA–APES appears to be the best choice in the full band case with the EPA channel.

Fig. 9
figure 9

RMSEE of the first path delay. Comparison between SAGE, IAA–APES and the correlator peak detector, considering the EPA channel model in the three different scenarios with random Doppler

Fig. 10
figure 10

RMSEE of the first path delay. Inset of the comparison between SAGE, IAA–APES and the correlator peak detector, considering the EPA channel model the three different scenarios with random Doppler generation

3.1.5 EVA random Doppler results

In Figs. 11 and 12, we show the RMSEE of the first path delay, considering the EVA channel model in the three different scenarios with random Doppler. Figure 12 shows a detail of Fig. 11. From this figures, we can observe that the correlation based estimation has a high error at low SNR and in the two ping scenarios.

SAGE outperforms in this case the other algorithms, in particular when the two ping scenarios are considered, while in the full band scenario SAGE and IAA–APES have similar performance. The RMSEE of SAGE in the simulated ping scenario is close to the SAGE RMSEE in the full band scenario, with an RMSEE in pseudorange equal to about to 1.5 m. SAGE, in the real ping scenario, reaches an RMSEE of about 20 m in pseudorange. This value is rather large, but considerably smaller compared to the RMSEE of IAA–APES in the real ping scenario.

Fig. 11
figure 11

RMSEE of the first path delay. Comparison between SAGE, IAA–APES and the correlator peak detector, considering the EVA channel model in the three different scenarios with random Doppler

Fig. 12
figure 12

RMSEE of the first path delay. Inset of the comparison between SAGE, IAA–APES and the correlator peak detector, considering the EVA channel model in the three different scenarios with random Doppler

3.1.6 ETU random Doppler results

Figures 13 and  14 show the RMSEE of the first path delay, considering the ETU channel model in the three different scenarios with random Doppler. Figure 14 shows a detail of Fig. 13. From these figures, we can observe that the correlation based estimation has a high error at low SNR and in the two ping scenarios. IAA–APES has good performance in the full band scenario and also performs better than SAGE when the SNR is below − 10 dB in the simulated ping scenario. In the full band scenario, IAA–APES has an error in pseudorange approximately between 4.8 and below 1 m at low and high SNR, respectively. The SAGE algorithm in this case outperforms the other algorithms, in particular in the two ping scenarios when the SNR is above − 10 dB. In the real ping scenario, SAGE has an RMSEE in pseudorange of about 15 m. These values are considerably smaller compared to the RMSEE of the first path obtained with IAA–APES in the real ping scenario, which is around 52 m.

Fig. 13
figure 13

RMSEE of the first path delay. Comparison between SAGE, IAA–APES and the correlator peak detector, considering the ETU channel model in the three different scenarios with random Doppler

Fig. 14
figure 14

RMSEE of the first path delay. Inset of the comparison between SAGE, IAA–APES and the correlator peak detector, considering the ETU channel model in the three different scenarios with random Doppler

3.1.7 Simulation results summary

In summary, IAA–APES appears to be more reliable when the SNR is below − 10 dB in all scenarios. This is because IAA–APES uses the time snapshots to average the results, whereas SAGE uses all the snapshots in order to estimate the Doppler frequency. When the SNR is larger then − 10 dB, in the full band scenario, IAA–APES and the SAGE algorithm with the proposed 2D initialization have similar performance in all the different channel realizations. The RMSEE in this scenario is generally small, and in some cases, the pseudorange error is less then 1 m. However, this scenario is not completely realistic, because, in an LTE uplink transmission, UE data do not occupy the whole bandwidth. When a limited bandwidth data transmission is simulated at an SNR larger than − 10 dB, SAGE outperforms all the other methods and provides estimates with an RMSEE smaller than the other algorithms. In the simulated ping scenario, where the occupation bandwidth is random and between 4 to 18 RBs, SAGE has a performance similar to the full band case. This means that SAGE is not affected by the decrease of the bandwidth. This is due by the fact that considering the 25 subframe simulation we have information of the CFR spread in the whole 1200 subcarriers. When we consider a real ping transmission pattern, which has a lower overall band occupation compared to the simulated ping scenario, SAGE performance degrades but still remains much better than the other algorithms.

It can be seen from the figures that the noise level affects the estimation in many cases, and in particular for the method based on the correlation. Note that IAA–APES is, in general, more robust with respect to noise, due to the intrinsic average calculated by the algorithm. SAGE appears in some cases to be more affected by noise than in other cases. This is certainly due to the different transmission time-frequency patterns and to the delay distance between paths. The simulations suggest that the accuracy of the estimates may be in some cases slightly affected by the noise level as soon as it is below a threshold that allows to discriminate the parameters to be estimated.

In [18], we reported some preliminary results about measuring the distance between two antennas using real DM-RS signals generated by an LTE module. The results confirm the feasibility of the proposed approach.

3.2 Joint TOA and AOA estimation

This section presents the simulation set-up used to evaluate the AOA estimation performance of IAA–APES and SAGE. As discussed in Sect. 2.3, we report for SAGE with 3D initialization (see Sect. 2.2.3), the results relative to the joint estimation of AOA, TOA and Doppler, while IAA–APES can be used, due to its complexity, for AOA estimation only. We consider here the case of receivers equipped with an antenna array.

3.2.1 AOA and TOA simulation set-up

The simulations use the same set-up described in Sect. 3.1.2, and the block diagram of the setup is the same as shown in Fig. 4. In the simulations, we consider the case of four antennas. We evaluate the root mean square error (RMSEE) performance in the three scenarios described in Sect. 3.1.2, namely, the full band scenario, the simulated ping scenario and the real ping scenario.

The simulation objective is to test the ability of SAGE and IAA–APES to separate close paths in the angle domain. So, similarly to the processing in Sect. 3.1.2, for each scenario we set the SNR to 10 dB and we simulate three paths, where the delays are set to \(\tau _1 = 15\) ns, \(\tau _2 = 65\) ns and \(\tau _3 = 115\) ns, the Doppler frequencies are generated uniformly with values between \(-70\) Hz and 70 Hz, and the angles are set to \(\phi _1 = 0^\circ , \phi _2 = \phi _1+\Delta \phi , \phi _3 = \phi _1-\Delta \phi .\)

Table 2 Parameter used in simulations for AOA estimation

The magnitude of the complex gain \(\alpha _l\) is equal for all the three paths, while the phase for each path is generated randomly, i.e., \(\alpha _l = \left| \alpha _l\right| e^{j\phi }\) with \(\phi\) uniform in \([0, 2\pi ]\). We simulate the transmission of 25 consecutive subframes. For each scenario, we vary \(\Delta \phi\) from 1\(^\circ\) to 35\(^\circ\) with step 1\(^\circ\), we perform 100 different channel realizations for each angle, and we consider an ULA antenna array with \(M = 4\) antennas. Table 2 summarizes the adopted parameters.

3.2.2 AOA and TOA simulation results

Figure 15 shows the RMSEE in logarithmic scale, of the first path delay obtained with SAGE, in the three considered scenarios. We can notice that the RMSEE of the delay of the first path is always below 5 ns in all scenarios. As a matter of fact, the results obtained for the other two paths (not shown in the figure) indicate that the RMSEE is always below 20 ns in all scenarios. In particular, when the distance in the angle domain between paths exceeds 5\(^\circ\), the RMSEE for all the paths in all scenarios is below 1 ns, that is lower than 1 m accuracy. The obtained results are rather precise because in this case we are performing a joint estimation in three domains (delay, angle, and Doppler). Indeed, if some close paths are not separable in some domains (e.g., delay and Doppler), they can be separable in others (e.g., angle), and the additional information can be exploited by SAGE in order to separate and properly estimate close paths.

Fig. 15
figure 15

RMSE of the first path delay estimation. The three scenarios are considered, using SAGE with 3D initial conditions

Figure 16 shows the RMSEE of the first path AOA, on a logarithmic scale, obtained with a joint AOA and TOA estimation with SAGE and an AOA estimation with IAA–APES, in the three scenarios, as a function of \(\Delta \phi\). Focusing first on the full band scenario, considering first the results for IAA–APES, we do not show the first path angle RMSEE between 1\(^\circ\) and 6\(^\circ\) which is actually 0 (note that the first path angle \(\phi _1=0^\circ\) belongs to the grid used in the algorithm). Between 1\(^\circ\) and 13\(^\circ\), only one path is discriminated by the algorithm, thus explaining the error increase with \(\Delta \phi\). For greater \(\Delta \phi\), IAA–APES starts to estimate a second path and the error stabilizes. Starting at \(\Delta \phi = 26^\circ\), also the third path could be estimated, but not for all the channel realizations. Above an angle separation of 28\(^\circ\), the three paths are always estimated and the error is consistently below 0.2\(^\circ\) for all of them. While the RMSEE obtained with IAA–APES for the first path is approximately between 0.003\(^\circ\) and 0.2\(^\circ\) in the whole range considered, we can see that SAGE gives an error always below 0.001\(^\circ\), which is a very precise estimation.

Fig. 16
figure 16

RMSEE of the angle. Comparison between SAGE and IAA–APES in the full band scenario

Similar RMSEE behaviours can be observed for the simulated and real ping scenarios. In the simulated ping scenario (Fig. 17), IAA–APES does not discriminate the second and third paths for angles below \(\Delta \phi = 8^\circ\), and \(\Delta \phi = 21^\circ\), respectively. The IAA–APES angle RMSEE for the first path is always below 0.1\(^\circ\) and always below 0.8\(^\circ\) for all the three paths and for the entire \(\Delta \phi\) range. SAGE in this case presents a slightly higher RMSEE compared to the full band scenario, and the RMSEE is always below 0.003\(^\circ\) when \(\Delta \phi\) is low, and reaches values below 0.001\(^\circ\) when \(\Delta \phi\) is greater than approximately 23\(^\circ\).

Fig. 17
figure 17

RMSEE of the angle. Comparison between SAGE and IAA–APES in the simulated ping scenario

In the real ping scenario, the behaviour of the IAA–APES curves can be explained as before. We obtain an RMSEEs always below 0.1\(^\circ\) for the first path, while with SAGE the error is approximately 0.001\(^\circ\) except at very low \(\Delta \phi\) values (Fig. 18).

Fig. 18
figure 18

RMSEE of the angle. Comparison between SAGE and IAA–APES in the real ping scenario

The results obtained in this simulations show that the angle estimation is in general very precise, with a weak dependence on the particular bandwidth used. This is in accordance with the Cramer-Rao lower bound (CRLB) which can be obtained for the AOA estimation [12].

4 Conclusion

The main contributions of this paper are twofold. First, a new method for the estimation of TOA using the uplink DM-RS instead of the SRS is proposed. In this way, any single data transmission, e.g., a simple ping in uplink, can give the opportunity to estimate the UE position. We point out that a reliable positioning opportunistic system, with the support of the eNodeB, can therefore be implemented using the DM-RS instead of the SRS, which in most cases is never transmitted or is transmitted rarely. To demonstrate the feasibility of the method, we compared different algorithms for TOA estimation in the single antenna scenario. We proposed a novel initialization method for the SAGE algorithm, and we demonstrated by means of extensive simulations that the proposed procedure provides better performance compared to the non-coherent accumulation method proposed in [12], when uplink scenarios are considered. The results are confirmed by simulations with more sophisticated channel models like EPA, EVA and ETU. The SAGE algorithm with our initialization method performs better than the correlation based method and the IAA–APES algorithms. Meanwhile, the simulations show that IAA–APES is more reliable then SAGE at low SNR values, typically below − 10 dB. We can conclude that the SAGE algorithm with our proposed initialization outperforms the other algorithms when a real DM-RS transmission pattern is used. Furthermore, we have shown that by combining measurements of signal transmissions on different frequencies, the performance results are similar to those obtained by processing a large bandwidth transmission.

In the second part of the paper we demonstrated, by means of simulations, that the AOA estimation results do not depend significantly on the signal bandwidth. Indeed, using the DM-RS, we saw that missing data in the time frequency pattern do not have a real impact on the AOA estimation. The RMSEE obtained in the simulations is small, and in particular IAA–APES allows to obtain an RMSEE below \(1^\circ\), while, with SAGE, we have RMSEE values always below 0.01\(^\circ\). For SAGE, we evaluate also the delay estimates and we obtain RMSEE values below 1 ns, when the paths were well separated in the angle domain. We conclude that the proposed SAGE implementation allows AOA and TOA estimation in uplink transmissions, and that it can provide joint AOA, TOA estimates to exploit hybrid positioning techniques. Furthermore these results can also apply to downlink signals. We are aware of the fact that the channel response in real scenarios is continuous. Nevertheless, the considered models are quite general and, even if they consider a discrete number of multipath components, the delays and arrival angles are continuous. The numerical results actually consider certain fixed parameters in order to give a proof of concept. Certainly future work (even experimental in real-world environments) will be able to consider more general set-ups. Future work will consist of an intensive campaign of measurements, in order to evaluate possible practical limitations of the proposed approach. A further future research topic can go in the direction of integrating the estimates provided by the proposed methods in an actual position tracking engine, in order to assess the impact of the estimate precision on the overall positioning accuracy.


  1. It is assumed the use of OFDM with sufficiently long cyclic prefix.



3Rd Generation Partnership Project


Angle of arrival


Bayesian information criterion


Channel frequency response


Demodulation reference signal


Extended pedestrian A model


Extended vehicular A model


Extended typical Urban model


Global Navigation Satellite Systems


Iterative adaptive approach for amplitude and phase estimation


Location Measurement Unit


Long Term Evolution


Minimum description length


Positioning reference signal


Resource Block


Root-mean-square error


Reference signal


Received signal-strength


Space-Alternating Generalized Expectation-Maximization


Single-carrier frequency-division multiple access


Signal-to-noise ratio


Sounding reference signal


Time difference of arrival


Time of arrival


User equipment


  1. E.D. Kaplan, C.J. Hegarty, Understanding GPS (Principles and Applications, Artech House, 2006)

    Google Scholar 

  2. S.A. Reza Zekavat, R. Michael Buehrer, Handbook of Position Location Theory, Practice, and Advances (Wiley-IEEE Press, 2011)

    Book  Google Scholar 

  3. N. Patwari, J.N. Ash, S. Kyperountas, A.O. Hero, R.L. Moses, N.S. Correal, Locating the nodes: cooperative localization in wireless sensor networks. IEEE Signal Process. Mag. 22, 54–69 (2005)

    Article  Google Scholar 

  4. J. Figueiras, S. Frattasi, Mobile Positioning and Tracking (From Conventional to Cooperative Techniques, Whiley, 2010)

    Book  Google Scholar 

  5. D. Dardari, E. Falletti, M. Luise, Satellite and Terrestrial Radio Positioning Techniques (Elsevier, 2012)

    Google Scholar 

  6. D. Schneider, You are here. IEEE Spectrum 50(12), 34–39 (2013)

    Article  Google Scholar 

  7. H. Wymeersch et al., Locating the nodes: cooperative localization in wireless sensor networks. IEEE Trans. Wirel. Commun. 18, 4479–4490 (2019)

    Google Scholar 

  8. N. Garcia et al., 5G mm wave downlink vehicular positioning, in 2018 IEEE Global Communications Conference (GLOBECOM) (2018)

  9. A. Colucci et al., Low-complexity accurate mmwave positioning for single-antenna users based on angle-of-departure and adaptive beamforming,’ in IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) (2020)

  10. Z. Abu-Shaban et al., Performance of location and orientation estimation in 5G mmwave systems: uplink vs downlink, in IEEE Wireless Communications and Networking Conference (WCNC) (2018)

  11. N. Facchi, F. Gringoli, F. Ricciato, A. Toma, Emitter localisation from reception timestamps in asynchronous networks. Comput. Netw. 88, 202–2017 (2015)

    Article  Google Scholar 

  12. B.H. Fleury, M. Tschudin, R. Heddergott, D. Dahlhaus, K.I. Pedersen, Channel parameter estimation in mobile radio environments using the SAGE algorithm. IEEE J. Sel. Areas Commun. 17, 434–450 (1999)

    Article  Google Scholar 

  13. J. Fessler, A. Hero, Space-alternating generalized expectation-maximization algorithm. IEEE Trans. Signal Process. 42, 2664–2677 (1994)

    Article  Google Scholar 

  14. K.I. Pedersen, B.H. Fleury, P. Mogensen, High resolution of electromagnetic waves in time-varying radio channels, in Proceedings of 8th International Symposium on Personal, Indoor and Mobile Radio Communications—PIMRC ’97 (1997), pp. 650–654

  15. B.H. Fleury, D. Dahlhaus, R. Heddergott, M. Tschudin, Wideband angle of arrival estimation using the SAGE algorithm, in Proceedings of ISSSTA’95 International Symposium on Spread Spectrum Techniques and Applications (1996), pp. 79–85

  16. T. Yardibi, J. Li, P. Stoica, M. Xue, A.B. Baggeroer, Source localization and sensing: a nonparametric iterative adaptive approach based on weighted least squares. IEEE Trans. Aerosp. Electron. Syst. 46, 425–443 (2010)

    Article  Google Scholar 

  17. A. Pin, R. Rinaldo, A. Tonello, C. Marshall, M. Driusso, A. Biason, LTE uplink TOA opportunistic measurement based on DM-RS, in WSA Workshop on Smart Antenns (Austria, Vienna, 2019), pp. 1–6

  18. A. Pin, R. Rinaldo, A. Tonello, C. Marshall, M. Driusso, A. Biason, A. Dalla Torre, LTE ranging measurement using uplink opportunistic signals and the SAGE algorithm, in 27th European Signal Processing Conference (EUSIPCO) (2019), pp. 1–5

  19. C. Marshall, A. Dalla Torre, M. Driusso, A. Pin, F. Pittino, R. Rinaldo, Positioning indoors with LTE communications signals of different bandwidth, in International Conference on Indoor Positioning and Indoor Navigation (IPIN) (2019)

  20. S. Sesia, M. Baker, I. Toufik, LTE: The UMTS Long Term Evolution: From Theory to Practice (Wiley, 2011)

    Book  Google Scholar 

  21. Evolved Universal Terrestrial Radio Access (E-UTRA); LTE Positioning Protocol (LPP),, 3GPP Std. TS 36.355, Rev. 15.4.0, (2019), [Online Accessed Oct. 31 2019]

  22. Evolved Universal Terrestrial Radio Access (E-UTRA); Physical channels and modulation,, 3GPP Std. TS 36.211, Rev. 15.12.0, (2021), [Online Accessed May 12 2021]

  23. A. Sassan, LTE-Advanced 1st Edition, A Practical Systems Approach to Understanding 3GPP LTE Releases 10 and 11 Radio Access Technologies. Academic Press (2013)

  24. P. Stoica, Y. Selen, Model-order selection: a review of information criterion rules. IEEE Signal Process. Mag. 21(4), 36–47 (2004)

    Article  Google Scholar 

  25. P. Djuric, Asymptotic MAP criteria for model selection. IEEE Trans. Signal Process. 46(10), 2726–2735 (1998)

    Article  Google Scholar 

  26. S. Petre, M. Randolph, Spectral Analysis of Signals (Academic Press, 2013)

    Google Scholar 

  27. L. Du, T. Yardibi, J. Li, P. Stoica, Review of user parameters-free robust adaptive beamforming algorithms. Digital Signal Process. 19, 567–582 (2009)

    Article  Google Scholar 

  28. Evolved Universal Terrestrial Radio Access (E-UTRA); User Equipment (UE) radio transmission and reception,, 3GPP Std. TS 36.101, Rev. 16.8.0, (2021), [Online Accessed May 12 2021]

  29. Evolved Universal Terrestrial Radio Access (E-UTRA); Base Station (BS) Radio Transmission and Reception,, 3GPP Std. TS 36.104, Rev. 10.14.0, (2021), [Online Accessed May 12 2021]

  30. u-blox TOBY-L2 series. [Online Accessed May 12 2021]

  31. R. Hogg, A. Craig, Introd. Math. Stat. (Macmillan Publishing Co. Inc, New York, 1978)

    Google Scholar 

Download references


No direct funding was received for this research.

Author information

Authors and Affiliations



AP, RR, AT, CM, MD, AB, ADT conceived the study, participated in its design and coordination and helped to draft the manuscript. AP made a substantial contribution to the creation of new software used in the work. All authors read and approved the final manuscript.

Corresponding author

Correspondence to R. Rinaldo.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Pin, A., Rinaldo, R., Tonello, A. et al. Opportunistic channel estimation with LTE signals of limited bandwidth for positioning applications. J Wireless Com Network 2023, 72 (2023).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: