The present disclosure relates to the field of digital signal comparison and in particular to determining a relation between time-domain signals based on frequency domain coefficients of only one part (real or imaginary).
In many situations, it is useful to determine a relation between two received wireless signals. For instance, time, phase and/or power differences between multiple received signals from a single source can be used to determine a position, or to enable coherent combining (e.g. equal-gain or maximal ratio combining) of the multiple received signals.
One known method of determining a relation between signals is to perform a cross-correlation between two (or more) received signals from the same source. Such correlation can be calculated in the time domain using the definition of cross-correlation. Also, this calculation can be performed in the frequency domain, in a more computational efficient manner.
However, when data compression is applied in a fronthaul link from a reception point to an aggregation point such that one part (real or imaginary) is included on the fronthaul link, complex number cross-correlation is not readily available, other than transforming back to the time domain and performing cross-correlation based on the time-domain signal or yet another transform to the frequency domain. Such a solution requires a lot of resources.
One object is to enable complex cross-correlation in the frequency domain, even when one part (real or imaginary) of the frequency-domain signal is not available.
According to a first aspect, it is provided a method for determining a relation between a first time-domain signal and a second time-domain signal received from a single source by different antennas. The time domain signals are respectively processed with a Fourier-related transform with overlapping input frames to indirectly or directly provide respective first and second frequency-domain signals being made up of frames of frequency-domain coefficients. Only one part, of the real part and the imaginary part from the Fourier-related transform, is included in the frequency-domain signals. A first part is the part, real or imaginary, that is included in the frequency-domain signals and a second part is the part, real or imaginary, that is not included in the frequency-domain signals. The method is performed by a relation determiner. The method comprises the steps of: receiving the first frequency-domain signal and the second frequency-domain signal; determining a first part cross-correlation between the first frequency-domain signal and the second frequency-domain signal by cross-correlating corresponding frames in the first frequency-domain signal and the second frequency-domain signal, for the first part; and determining a second part cross-correlation between the first frequency-domain signal and the second frequency-domain signal by cross-correlating non-corresponding frames in the first frequency-domain signal and the second frequency-domain signal, for the second part.
In the determining a second part cross-correlation step, the cross-correlation may be performed for frames where the frame in the first frequency-domain signal is one frame ahead of the frame in the second frequency-domain signal, and/or vice versa.
The method may further comprise the step of: determining a time difference, phase difference, or power ratio, between the first frequency-domain signal and the second frequency-domain signal based on the first part cross-correlation and the second part cross-correlation.
The method may further comprise the step of: determining a position of the single source based on at least one of the time difference, phase difference and power ratio.
The method may further comprise the step of: performing signal combining based on at least one of the time difference, phase difference and power ratio.
The method may further comprise the step of: selecting bins and frames to use for the first part cross-correlation and second part cross-correlation based on bins and frames assigned for a particular user.
The method may further comprise the step of: determining one of the received frequency-domain signals to be used as a reference signal.
The step of receiving may comprise receiving the first frequency-domain signal, the second frequency-domain signal and a third frequency-domain signal. Furthermore, the steps of determining a first part cross-correlation and determining a second part cross-correlation may comprise cross-correlating each one of the frequency-domain signals that is not the reference signal against the reference signal.
The step of determining a reference signal may comprise determining the reference signal to be the one of the frequency-domain signals that has the greatest received signal power.
The step of determining a reference signal may comprise determining the reference signal to be the one of the frequency-domain signals that has the most concentrated autocorrelation or the flattest spectrum.
The method may further comprise the step of: normalising the first part cross-correlation and the second part cross-correlation on a bin-by-bin basis.
The step of normalising may be performed equally for the first part cross-correlation and the second part cross-correlation.
The method may further comprise the step of: scaling the first part cross-correlation and/or the second part cross-correlation to enable time-domain alias cancellation.
The step of receiving the first frequency-domain signal and the second frequency-domain signal may comprise receiving the first frequency-domain signal from a first reception device and the second frequency-domain signal from a second reception device.
According to a second aspect, it is provided a relation determiner for determining a relation between a first time-domain signal and a second time-domain signal received from a single source by different antennas. The time domain signals are respectively processed with a Fourier-related transform with overlapping input frames to indirectly or directly provide respective first and second frequency-domain signals being made up of frames of frequency-domain coefficients. Only one part, of the real part and the imaginary part from the Fourier-related transform, is included in the frequency-domain signals. A first part is the part, real or imaginary, that is included in the frequency-domain signals and a second part is the part, real or imaginary, that is not included in the frequency-domain signals. The relation determiner comprises: a processor; and a memory storing instructions that, when executed by the processor, cause the relation determiner to: receive the first frequency-domain signal and the second frequency-domain signal; determine a first part cross-correlation between the first frequency-domain signal and the second frequency-domain signal by cross-correlating corresponding frames in the first frequency-domain signal and the second frequency-domain signal, for the first part; and determine a second part cross-correlation between the first frequency-domain signal and the second frequency-domain signal by cross-correlating non-corresponding frames in the first frequency-domain signal and the second frequency-domain signal, for the second part.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to perform the cross-correlation for the second part for frames where the frame in the first frequency-domain signal is one frame ahead of the frame in the second frequency-domain signal, and/or vice versa.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to: determine a time difference, phase difference, or power ratio, between the first frequency-domain signal and the second frequency-domain signal based on the first part cross-correlation and the second part cross-correlation.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to: determine a position of the single source based on at least one of the time difference, phase difference and power ratio.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to: perform signal combining based on at least one of the time difference, phase difference and power ratio.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to: select bins and frames to use for the first part cross-correlation and second part cross-correlation based on bins and frames assigned for a particular user.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to: determine one of the received frequency-domain signals to be used as a reference signal.
The instructions to receive may comprise instructions that, when executed by the processor, cause the relation determiner to receive the first frequency-domain signal, the second frequency-domain signal and a third frequency-domain signal. Furthermore, the instructions to determine a first part cross-correlation and determine a second part cross-correlation may comprise instructions that, when executed by the processor, cause the relation determiner to cross-correlate each one of the frequency-domain signals that is not the reference signal against the reference signal.
The instructions to determine a reference signal may comprise instructions that, when executed by the processor, cause the relation determiner to determine the reference signal to be the one of the frequency-domain signals that has the greatest received signal power.
The instructions to determine a reference signal may comprise instructions that, when executed by the processor, cause the relation determiner to determine the reference signal to be the one of the frequency-domain signals that has the most concentrated autocorrelation or the flattest spectrum.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to: normalize the first part cross-correlation and the second part cross-correlation on a bin-by-bin basis.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to perform the instructions to normalize equally for the first part cross-correlation and the second part cross-correlation.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to: scale the first part cross-correlation and/or the second part cross-correlation to enable time-domain alias cancellation.
The relation determiner may further comprise instructions that, when executed by the processor, cause the relation determiner to receive the first frequency-domain signal from a first reception device and the second frequency-domain signal from a second reception device.
According to a third aspect, it is provided a computer program for determining a relation between a first time-domain signal and a second time-domain signal received from a single source by different antennas. The time domain signals are respectively processed with a Fourier-related transform with overlapping input frames to indirectly or directly provide respective first and second frequency-domain signals being made up of frames of frequency-domain coefficients. Only one part, of the real part and the imaginary part from the Fourier-related transform, is included in the frequency-domain signals. A first part is the part, real or imaginary, that is included in the frequency-domain signals and a second part is the part, real or imaginary, that is not included in the frequency-domain signals. The computer program comprises computer program code which, when executed on a relation determiner causes the relation determiner to: receive the first frequency-domain signal and the second frequency-domain signal; determine a first part cross-correlation between the first frequency-domain signal and the second frequency-domain signal by cross-correlating corresponding frames in the first frequency-domain signal and the second frequency-domain signal, for the first part; and determine a second part cross-correlation between the first frequency-domain signal and the second frequency-domain signal by cross-correlating non-corresponding frames in the first frequency-domain signal and the second frequency-domain signal, for the second part.
According to a fourth aspect, it is provided a computer program product comprising a computer program according to the third aspect and a computer readable means comprising non-transitory memory in which the computer program is stored.
Generally, all terms used in the claims are to be interpreted according to their ordinary meaning in the technical field, unless explicitly defined otherwise herein. All references to “a/an/the element, apparatus, component, means, step, etc.” are to be interpreted openly as referring to at least one instance of the element, apparatus, component, means, step, etc., unless explicitly stated otherwise. The steps of any method disclosed herein do not have to be performed in the exact order disclosed, unless explicitly stated.
Aspects and embodiments are now described, by way of example, with reference to the accompanying drawings, in which:
embodiments presented herein can be applied;
The aspects of the present disclosure will now be described more fully hereinafter with reference to the accompanying drawings, in which certain embodiments of the invention are shown. These aspects may, however, be embodied in many different forms and should not be construed as limiting; rather, these embodiments are provided by way of example so that this disclosure will be thorough and complete, and to fully convey the scope of all aspects of invention to those skilled in the art. Like numbers refer to like elements throughout the description.
The wireless transmission can occur over a cellular communication network that can comply with any one or a combination of 6G, 5G NR (New Radio), LTE (Long Term Evolution), LTE Advanced, W-CDMA (Wideband Code Division Multiplex), EDGE (Enhanced Data Rates for GSM (Global System for Mobile communication) Evolution), GPRS (General Packet Radio Service), CDMA2000 (Code Division Multiple Access 2000), or any other current or future wireless network, as long as the principles described hereinafter are applicable.
While
Each one of the antennas 5a-c is connected to a respective reception point 3a-c. The antennas 5a-c receive the wireless signals and provide these as respective time-domain signals 7a-c, consisting of complex-value samples, to each one of the reception points 3a-c. As described in more detail below, each one or the reception points 3a-c performs a Fourier-related transform to transform the time-domain signals 7a-c to respective frequency-domain signal 6a-c.
The frequency-domain signals 6a-c contain values of only one part (real or imaginary), despite the input to the transform being complex. The reason for this is to reduce resource requirements for communicating the frequency-domain signals 6a-c on a front haul link for subsequent aggregation. Details of this process is provided below. The frequency-domain signals 6a-c are then provided to a relation determiner 1 on the fronthaul link.
As explained in more detail below, the relation determiner 1 determines a relation between at least two frequency-domain signals, e.g. phase difference, time difference, power ratio, etc. This relation can be used for positioning the single source 2, e.g. based on multi-alteration of a time-difference on arrival and/or power ratio.
The relation determiner 1 can also be used to aggregate the frequency-domain signals and optionally also to reconstitute a time-domain signal based on the received frequency-domain signals 6a-c. Alternatively, aggregation and decoding can be performed by devices after the relation determiner 1.
The input is a time-domain signal 7, in the form of IQ (in-phase quadrature) samples for a single carrier, or for multiple frequency- and/or time-multiplexed carriers. An input framer 21 arranges the time-domain signal in overlapping frames, for instance 50% overlap (in time). A time-domain window function α(n) is applied by a time-domain window module 22. A transform module 23 applies a Fourier-related transform to transform the signal to the frequency domain, also denoted the transform domain herein. The Fourier-related transform is a transform function related to Fourier analysis and can e.g. be in the form of a Discrete Fourier Transform (DFT), Short-time Fourier transform (STFT), Generalized Discrete Fourier Transform (GDFT), Modified Discrete Cosine Transform (MDCT) and Modified Discrete Sine Transform (MDST). or any other suitable transform, resulting in, for each frame, a number of coefficients provided in respective frequency bins. A frequency-domain window function W*(k) where k is the frequency bin index, is applied by a frequency-domain window module 24, resulting in a frequency-domain signal 6. The operator * denotes complex conjugate. Optionally, the transform applied in the transform module is configured to include W*(k) as part of the transform, in which case the separate frequency-domain window module is not needed. In this case, the transform is in the form of a GDFT. The examples described hereinafter are based on the transform module applying a DFT. Other transforms can be applied, but would result in different window functions W*(k) and a(n).
Embodiments presented herein are based on only one part (real or imaginary) of the coefficients forming part of the frequency-domain signal 6. In the following, for making the description clearer, it is mainly referred to imaginary part being removed, but it is to be noted that the same procedure can be applied for the real part being removed.
The imaginary part of the transform can be discarded as part of the transform, as part of the multiplication with the frequency-domain window W*(k) or as a separate step. Discarding of the imaginary part is done to achieve data compression, compensating for the overlap in the input framing. For practical use of transform coding, a quantization step is also used for bitrate reduction, but this is omitted herein to improve clarity. Errors due to quantization can be modelled as noise. Another step that can be performed to improve data compression is to omit coefficients lower than a threshold value.
Time difference, phase difference or power ratio between signals can be estimated using cross-correlation. In the time-domain, this involves convolution operations, which implies high computational complexity. Further, for transform coded signals as in embodiments presented herein, each signal would have to be decoded before such a convolution. For signals that are to be combined, this means additional complexity increase since it is no longer sufficient to have a single decoder for the combined signal. Also, information from the correlation can be exploited to improve the combining (e.g. for co-phasing based on time-difference and/or phase-difference estimates, and/or for scaling based on power ratio to achieve Maximal-Ratio Combining). Calculating cross-correlation in the transform frequency domain is problematic since we in embodiments presented herein, only have access to real-valued samples. With a real-valued cross-correlation, there will be aliasing in the time-domain, which means e.g. that it is not possible to tell if a delay difference is positive or negative.
According to embodiments presented herein, a complex cross-correlation is determined, despite only having real-valued samples per frequency bin k.
The process correlation of frequency-domain signals according to embodiments presented herein will now be described with more mathematical rigour.
Our time delay estimates in the transform domain are based on the time-domain signals at a first reception point 3a and a second reception point 3b, indexed 0 and 1 hereinafter, respectively, before the Fourier-related transform, assuming line-of-sight propagation (multipath could be handled at least to some extent by superposition):
where z is a time-domain signal sample, n is a sample index, A0 and A1 are complex amplitudes of the received signals, s is the transmitted signal, θ0 and θ1 are the signal delays, m is the transform frame number, M is the number of samples between start of two adjacent frames. It is to be noted that, for reasons of clarity, we here consider baseband representations of all signals. Hence, there is no RF (Radio Frequency) modulation e.g. in s. The frame shifts, d, is typically ±1 or zero, but could be expanded to other values, as long as there remains any correlation between the two frames, z1,m+d(n1) and z0,m(n0). Further, we assume that WW*=1 holds for the frequency-domain window, at least for the set of transform bins k where we have desired signal. Thus, it will disappear in the correlation formulas below.
We first derive the correlation between the complex signals in the transform domain.
where C is the correlation, E is the expected value, k is the transform bin number, θ=θ1−θ0 and rs(τ)=E{s(t+τ)s*(τ)}, since we assume time independent auto correlation of s(t).
Changing one summation variable to be n=(n1−n0+d·M−θ) gives
where ha(n) is the magnitude of the time-domain window function α(n). It is to be noted that a in α(n) and in the subscript to h implies that it is the analysis window, i.e. the encoder window. In the last step we have used that the window α(n)=hα(n)·v*(n), where v(n)=eiπ/Nn. Typically, ha(n) is a smooth window, such as Kaiser-Bessel-derived, or a Kaiser window, having low sidelobe levels while not too wide main lobe.
Inserting
and inserting the time correlation for ha(n0) as rha(τ)=Σn
Using
gives
and after breaking out the dependency of θ we get
We now use double length for the DFT, N2=2·N, since the length of the time data is essential doubled, due to the correlation expression rha(τ):
where we only use odd k1=2k+1, but for the analysis we may need all k1.
The sum is a DFT of the product rha(n+θ−d·M)·rs(n), which corresponds to a convolution in the frequency domain
where Rs(k1)=dft(rs(n),N2) and Rha(n+θ−d·M)(k1)=dft (rha(n+θ−d·M),N2).
Since Rs(k1) is slowly varying in the passband and Rha(n+θ−d·M)(k1) essentially is concentrated around k1=0, we might use the approximation
We get the correlation from only the real parts of the frequency data as
since X and Y are assumed uncorrelated and both having the same statistics.
Using the approximation in the last step in the previous section, we get the following:
Specifically, for d=1, −1 and 0, we have the correlations that are available from the real parts in the transform domain
which can be approximated as
respectively, where we also included the approximation from above.
The expressions in the previous section were calculated for correlations between signal 1 and signal 0, assuming that signal 0 was the reference. The power of signal 0 and 1 per frequency bin k we calculate in the same manner as
Selecting a proper reference signal may matter if some type of signal-based normalization is applied (discussed in the next section) to the cross-correlation or if more than two signals are involved. With more than two signals, it can be useful to use the same reference signal in all cross-correlations. Selection of reference signal could be done e.g. by choosing the one with the highest SNR (Signal to Noise Ratio) (if known), largest power (since this is likely to be the least noisy), or by selecting the one with the flattest spectrum (indicating that it is close to line-of-sight and might give the least distortion of results).
In some cases, it may be an advantage to normalize the correlation expressions with a denominator D(k), e.g. if the spectrum of the transmitted signal is not completely flat, if there is amplitude/phase variation in the receiver chain, or if we want to determine power ratio or phase difference between signals. One option is to normalize the correlation expressions with a denominator based on the reference signal, e.g. D(k)=PX0(k) to get
where
is the normalized correlation sum of ha(n0). Here, the normalized cross-correlations will contain the ratio of the complex amplitudes for signal 1 and signal 0 (the reference). As can be seen above, the normalized cross-correlations depend on delay-, phase- and power (dB) difference between the signals and also on ρha(τ). However, there is no longer any dependency on the transmitted signal's power spectrum.
Other normalizations are also possible, e.g. normalization by a scalar value (e.g. the average of PXo(k) over all relevant k), no normalization (corresponding to normalization by the constant of 1), normalization by a known power spectral density of the transmitted signal, or a normalization involving both signals:
D(k)=√{square root over (PX0(k)PX1(k))}
The latter normalization would result in
Here, the normalized cross-correlation does not depend on the magnitude of signal 1 and 0, only on their phase and delay difference. This might be an advantage in some case since it can reduce the impact of any multipath propagation in the respective signals 0 and 1. A further advantage is that it may reduce the impact of any difference in amplitude ripple in the receiver signal chains for signal 0 and 1. However, it cannot remove the impact of the channel completely and a potential problem with using signal-dependent normalization such as the above is that we may experience noise enhancement for transform bins with low power.
If signal 1 is weak or noisy, the normalization D(k)=PX0(k) shown earlier may be preferred, especially if the reference signal 0 was chosen as the strongest and/or the one with flattest spectrum. Still, a problem is that PX0(k) may contain e.g. thermal noise. This will create a bias in the result since we would normalize by a value that is too large. The error becomes worse for low SNR. If the average noise level is known, e.g. from receiver noise figure and known gain from analog to digital, average noise power can be subtracted from D(k) before normalization. Although this subtraction removes the bias, we still have different noise for different k in D(k), which may cause degraded precision in the result. This could partially be mitigated by filtering of D(k), e.g. a moving average over k, which in the extreme case turns D(k) into a scalar value
This section describes a method to determine a normalization method in cases where the transmitted signal spectrum is known.
We now create a model for |X0,m(k)|2 by first defining Wm(k) as
where
The expected value of Wm(k), E{Wm(k)}=0 and we define the model for |X0,m(k)|2 as
The expected value of Wm(k), E{Wm(k)}=E {X0,m(k)|2}−P0·Rsha(k)=0.
We assume that we have additive noise, Nm(k), in our measurements of X0,m(k). It means that this noise will appear in |X0,m(k)| with a corresponding mean value, e.g. PN
We define the model for | X0,m(k)|2 as
where Vm(k)=Wm(k)+Nm(k) and RN(k)=1, to start with, with the aim to estimate P0 and PN to get an estimate of PX0(k). We minimize the mean square error
or in matrix form
where y is a column vector with |X0,m(k)|2 for all m and k, that we want to base our estimates on. The two columns of H contain Rsha(k) and ones respectively, corresponding to each element in y.
The resulting estimated values of P0 and PN, {circumflex over (P)}0 and {circumflex over (P)}N respectively,
are now used to form an estimate of PX0(k),
Here, we would use normalization denominator D(k)={circumflex over (P)}X0(k)−{circumflex over (P)}N={circumflex over (P)}0. Rsha(k),
which does not contain any noise that varies with k. This method is especially beneficial when the reference signal has low SNR.
Estimation of A1/A0 and/or θ Based on Kept Transform Domain Data
In this section, it is assumed that normalization is done by D(k)=PX0(k) but it should be straightforward to modify the formulas if any other normalization is desired, e.g. the average of PX0(k) over all k where the desired signal is present.
We have access to sequences of frames X0,m(k) and X1,m(k), which we utilize to estimate CXd(k)=E{X1,m+d(k)·X0,m*(k)} as an average over multiple frames (when available)
where wm is an averaging weight for frame m, ΣmWmdef1,
and PX0(k)=E{X0,m(k)·X0,m*(k)} as
Typically, the weights wm would be the same for all frames, resulting in an arithmetic mean over the frames, but it is also possible to use different weights, e.g. reduced weights for the first and last frames if the wanted signal does not start exactly on a frame boundary, or higher weights for frames with higher signal-to-noise ratio (SNR) if SNR estimates are available.
The corresponding normalized estimates we get as
Then we estimate e.g. θ by utilizing the equations
From the above, we see that {circumflex over (Q)}0 (k) can only give us the absolute value of the delay difference θ, since cos(β)=cos(−β). We also note that either of {circumflex over (Q)}+1(k) or {circumflex over (Q)}−1(k) is in principle sufficient to determine the delay difference. However, typically ρha(M)<<ρha(−θ)≈1, in which case solving for 0 using {circumflex over (Q)}+1(k) or {circumflex over (Q)}−1(k) uses a large scale-factor, amplifying any noise in the estimates. It is expected that more accurate estimation is possible by utilizing all three terms above.
The normalized complex cross-correlation estimate between signals 0 and 1 can now be written as
In principle, this could be solved using numerical methods to get e.g.
or θ. However, with noisy estimates and/or multipath, alternative methods might give more precise results; in time domain, the exponential function above corresponds to a pulse with complex amplitude
delayed by θ samples. Thus, one method to determine
and/or θ is to window {circumflex over (Q)}z(k) with some common window (e.g. rectangular, Hamming, Hanning, Kaiser etc.), transform it to time domain with inverse DFT and use a peak finding method, possibly including interpolation, to estimate the desired quantities (delay difference, phase difference, and/or magnitude ratio).
One issue with the above formula is that scaling of the real and imaginary parts depend on the delay difference θ, which is unknown. This can be solved in different ways. A first method is to transform the three terms {circumflex over (Q)}−1(k), {circumflex over (Q)}+1(k), and {circumflex over (Q)}0(k) separately into time (delay) domain, and use delay-dependent scaling according to the formulas above before combining the terms to a complex cross-correlation estimate. This scaling would be correct at (and near) the true peak location (delay θ), but incorrect otherwise. Since scaling varies with delay, there could be false peaks at large delays due to noise enhancement.
A second method is to use the following approximations. For symmetric ρha and small |θ|, we have that
and that ρha(−θ)≈1
which yields the following expressions for the imaginary and real part respectively
where the last step for the imaginary part is an alternative that will reduce the number of multiplications by subtracting the signals from previous and next frame before multiplication. Since all X are real, the conjugate operators (*) can be dropped. The scaling above for the real and imaginary parts is correct at (and near) zero delay. It should work well in many cases where signals of interest typically have small delay difference. If signals have large delay difference, one of them is typically very weak, which means that it may not be desirable to include it in signal combining or UE positioning calculation and thus it doesn't matter if the estimate is less accurate for such cases.
Second Method with Expressions that Only Need Data from Two Adjacent Frames:
A potential drawback with the expressions for the imaginary part above is that data is needed from three different frames: the current frame for the reference signal, the previous and the next frame for the other signal. One embodiment might thus be to use the following expression to determine the imaginary part, which only requires data from two frames (current and previous) for both the reference and the other signal(s). As before, averaging can be done if data from more frames are available.
Based on the expression above, an interesting interpretation can be made, where, for our correlation purposes, the current frame is used as a real part, and the previous frame is used as an imaginary part: For each signal (e.g. signal 0 and 1), form an intermediate signal with the real part as the received (real-valued) coefficients for the current frame, and the imaginary part as the received (real-valued) coefficients for the previous frame:
Cross-correlation of the intermediate signals gives
which can be rewritten as
Assuming that all weights wm are equal, and that the result of the correlation does not change between frame m−1 and frame m, the real part can be further simplified as in the result below
It can be observed that this last result closely resembles the earlier shown expression for the desired complex cross-correlation, {circumflex over (Q)}z(k), apart from some scaling. The desired complex cross-correlation is now determined by applying normalization, D(k), and proper individual scaling of the real and imaginary parts from the cross-correlation of the intermediate signals. Similar approximations as before were made.
Compared to the previous expression, a factor of ½ was needed for the real part since the real part was here calculated as a sum over two adjacent frames. The expression for the imaginary part is identical to the previous one. As before, the imaginary part has a scale factor ρha(M) that depends on the used window in the encoder.
Third Method to Improve Accuracy with Noisy Estimates
Since the imaginary part is noisier than the real part, it can sometimes be preferred to attenuate the imaginary part in the presented expression, as a trade-off between best time-domain alias-cancellation and best signal-to-noise ratio. A further alternative could be to use information from the imaginary part of {circumflex over (Q)}z(k) to determine only the sign of the delay, and use information from the real part to determine accurate position and amplitude estimates. This could work well for line-of-sight propagation. In this case there is no need to scale the real and imaginary parts. However, there could be problems if the delay is too small since the aliasing in the real part could then interfere with the true delay; for a delay of e.g. 3 samples, a time-domain representation of only the real part would show pulses at both +3 and −3 samples. If the pulse is wider than 3 samples, there will be interference affecting accuracy of pulse position and amplitude estimation. Also, if signals are subject to multipath propagation with superposition of multiple different delays, only determining the sign of the delay from the imaginary part might be less accurate than using the full complex cross-correlation.
A first part is here used to denote the part, real or imaginary, that is included in the frequency-domain signals 6a-b. A second part is here used to denote the part, real or imaginary, that is not included in the frequency-domain signals 6a-b. Hence, when the first part is the imaginary part, the second part is the real part, or vice versa. The method is performed by the relation determiner 1. First, embodiments illustrated by
In a receive signals step 40, the relation determiner 1 receives the first frequency-domain signal 6a and the second frequency-domain signal 6b. Optionally, the first frequency-domain signal 6a is received from a first reception device 3a and the second frequency-domain signal 6b is received from a second reception device 3b. Optionally, more frequency domain signals can be received by the relation determiner.
In a determine 1st part cross-correlation step 46, the relation determiner 1 determines a first part cross-correlation between the first frequency-domain signal 6a and the second frequency-domain signal 6b by cross-correlating corresponding frames in the first frequency-domain signal 6a and the second frequency-domain signal 6b, for the first part.
In a determine 2nd part cross-correlation step 48, the relation determiner 1 determines a second part cross-correlation between the first frequency-domain signal 6a and the second frequency-domain signal 6b by cross-correlating non-corresponding frames in the first frequency-domain signal 6a and the second frequency-domain signal 6b, for the second part. For instance, as explained above, the cross-correlation for the second part is performed for frames where the frame in the first frequency-domain signal 6a is one frame ahead of the frame in the second frequency-domain signal 6b, and/or vice versa.
Looking now to
In an optional select bins and frames step 42, the relation determiner 1 selects bins and frames to use for the first part cross-correlation and second part cross-correlation based on bins and frames assigned for a particular user. In this way, only data relating to a single user (or more specifically user device) is evaluated, to thereby target the evaluation of cross-correlation for only that user.
In an optional determine reference signal step 44, the relation determiner 1 determines one of the received frequency-domain signals to be used as a reference signal. The reference signal can e.g. be used when there are more than two frequency domain signals. In this case, the receive signal step 40 comprises receiving the first frequency-domain signal 6a, the second frequency-domain signal 6b and a third frequency-domain signal 6c. Also, steps 46 and 48 then comprises cross-correlating each one of the frequency-domain signals (that is not the reference signal) against the reference signal.
The reference signal can be determined to be the one of the frequency-domain signals that has the greatest received signal power. Alternatively, the reference signal can be determined to be the one of the frequency-domain signals that has the most concentrated autocorrelation or the flattest spectrum.
In an optional normalize step 50, the relation determiner 1 normalizes the first part cross-correlation and the second part cross-correlation on a bin-by-bin basis. The normalising can be performed equally for the first part cross-correlation and the second part cross-correlation.
In an optional scale step 51, the relation determiner 1 scales the first part cross-correlation and/or the second part cross-correlation to enable time-domain alias cancellation. The scaling also allows the control of the trade-off between SNR and amount of alias cancellation.
The scale factor (−1)k can also be applied to the second part or the first part, but not both, to align pulse positions in the time domain. Otherwise, the pulses from the IDFT (Inverse DFT) of the first and second part will be a half transform size away from each other. Once they are aligned, we get partial alias cancellation, and then the magnitude scaling controls the amount of alias cancellation (and trade-off vs SNR). As mentioned, scaling is optional, e.g. when the imaginary part is used to find the sign of the delay.
In an optional determine time difference, phase difference, or power ratio step 52, the relation determiner 1 determines one or more of a time difference, phase difference, or power ratio, between the first frequency-domain signal 6a and the second frequency-domain signal 6b based on the first part cross-correlation and the second part cross-correlation. The power ratio can be expressed in dB, thus expressing how different or similar two power measurements are.
In an optional determine position step 54, the relation determiner determines a position of the single source based on at least one of the time difference, phase difference and power ratio. For instance, the single source 2 can be positioned based on multi-alteration of a time-difference on arrival and/or power ratio.
In an optional perform combining step 56, the relation determiner performs signal combining based on at least one of the time difference, phase difference and power ratio. As mentioned above, the information from the correlation can be exploited to improve the combining (e.g. for co-phasing based on time-difference and/or phase-difference estimates, and/or for scaling based on power ratio to achieve Maximal-Ratio Combining).
By performing the cross-correlation according to embodiments presented herein, an estimate of both the real part and the imaginary part of the cross-correlation is achieved, even though the input is made up by frequency bin coefficients with only one of the real and imaginary parts. This results in a significantly more efficient determination of cross-correlation between such signals than is known from the prior art.
The SNR values for signal 0 and 1 are set to 15 and 0 dB, respectively. Signal 0 is selected as the reference signal. Signal 1 is delayed by 7 samples compared with signal 0 (0=7). We use one slot (14 OFDM (Orthogonal Frequency-Division Multiplexing) symbols) for the correlation calculation. The complex cross-correlation is determined according to the last equation in the section Second method with expressions that only need data from two adjacent frames. After normalization (using average power per bin of the reference signal as denominator), the real and imaginary parts are scaled by multiplying with a scale factor. For the real part, the used scale factor is 1/ρha(0)=1, while for the imaginary part we use
These values are calculated from the used time-domain window in the encoder.
The estimated complex correlation after normalization and scaling is shown in
As can be seen, the bin-by-bin imaginary part is much noisier than the real part, which is expected since we the imaginary part was amplified by a factor 3.59 (˜11 dB). However, after filtering (here with moving average, length 19), the sinusoidal wave shape of the imaginary part is evident.
A Kaiser window is applied on the used bins and the windowed complex cross-correlation is transformed back to time domain using IDFT (Inverse DFT) with oversampling (interpolation). Peaks are then located (position and amplitude). Synchronization errors are not modelled.
When such a Monte-Carlo simulation is performed over 200 iterations, the results are shown in Table 1, where delay error is converted to distance error in meters. The result based on embodiments presented herein is compared with a prior art scheme based on time-domain cross-correlation of individually decoded transform coded data streams, and a scheme where the reception point sends both the real and imaginary part to the aggregator (thus using twice the data rate).
Two variants of the embodiments are tested. The first is where the imaginary part is only used to determine the sign of the delay, while the real part is used as input to the peak finding. The second is where the full complex cross-correlation is input to the peak finding. As can be seen, the mean error is small in all cases (some random fluctuation). The presented embodiments show larger standard deviation of the distance error, but the error is still below 3 cm. The method of the embodiments where the imaginary part is only used to find the sign of the delay performs better than the method using the full complex values, but the opposite could be true when the delay is close to zero or when there is multipath propagation.
The memory 64 can be any combination of random-access memory (RAM) and/or read-only memory (ROM). The memory 64 also comprises non-transitory persistent storage, which, for example, can be any single one or combination of magnetic memory, optical memory, solid-state memory or even remotely mounted memory.
A data memory 66 is also provided for reading and/or storing data during execution of software instructions in the processor 60. The data memory 66 can be any combination of RAM and/or ROM.
The relation determiner 1 further comprises an I/O interface 62 for communicating with external and/or internal entities.
Other components of the relation determiner 1 are omitted in order not to obscure the concepts presented herein.
A signal receiver 70 corresponds to step 40. A selector 72 corresponds to step 42. A reference signal determiner 74 corresponds to step 44. A 1st part cross-correlation determiner 76 corresponds to step 46. A 2nd part cross-correlation determiner 78 corresponds to step 48. A normalizer 80 corresponds to step 50. A scaler 81 corresponds to step 51. A difference determiner 82 corresponds to step 52. A position determiner 84 corresponds to step 54. A combiner 86 corresponds to step 56.
The aspects of the present disclosure have mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the invention, as defined by the appended patent claims. Thus, while various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/SE2021/050897 | 9/17/2021 | WO |