DETERMINING A RELATION BETWEEN TIME-DOMAIN SIGNALS BASED ON FREQUENCY DOMAIN COEFFICIENTS

Information

  • Patent Application
  • 20240380528
  • Publication Number
    20240380528
  • Date Filed
    September 17, 2021
    3 years ago
  • Date Published
    November 14, 2024
    4 days ago
Abstract
A method for determining a relation between a first time-domain signal and a second time-domain signal received from a single source is provided. The time domain signals are respectively processed with a Fourier-related transform to indirectly or directly provide respective first and second frequency-domain signals being made up of frames. Only one part from the Fourier-related transform is included. A first part is the part that is included and a second part is the other part. The method comprises the steps of: receiving the frequency-domain signals; determining a first part cross-correlation 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 by cross-correlating non-corresponding frames in the first frequency-domain signal and the second frequency-domain signal, for the second part.
Description
TECHNICAL FIELD

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).


BACKGROUND

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.


SUMMARY

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.





BRIEF DESCRIPTION OF THE DRAWINGS

Aspects and embodiments are now described, by way of example, with reference to the accompanying drawings, in which:



FIG. 1 is a schematic diagram illustrating an environment in which


embodiments presented herein can be applied;



FIG. 2 is a schematic diagram illustrating encoding of data according to some embodiments by a reception point of FIG. 1;



FIGS. 3A-B are flow charts illustrating embodiments of methods for determining a relation between a first time-domain signal and a second time-domain signal received from a single source by different antennas;



FIG. 4 is a schematic graph illustrating a difference between the real part and the imaginary part of a time-domain signal according to one numerical example;



FIG. 5 is a schematic graph illustrating how an estimated cross-correlation is transformed back to time domain;



FIG. 6 is a schematic diagram illustrating components of the relation determiner 1 of FIG. 1;



FIG. 7 is a schematic diagram showing functional modules of the relation determiner of FIG. 1 according to one embodiment; and



FIG. 8 shows one example of a computer program product comprising computer readable means.





DETAILED DESCRIPTION

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.



FIG. 1 is a schematic diagram illustrating an environment in which embodiments presented herein can be applied. A single source 2 transmits a wireless signal that is received by a plurality of antennas 5a-c. The single source does not need to be the only source of signals, but from the perspective of receiving a wireless signal, the single source 2 is the only source of a particular wireless signal that is received by the plurality of antennas 5a-c. The single source can be implemented as an instance of user equipment (UE), and can be, for example, what today are commonly known as a mobile phone, smart phone or a tablet/laptop with wireless connectivity.


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 FIG. 1 is illustrated with three antennas 5a-c, the embodiments presented herein can be applied with any number of antennas, as long as there are at least two antennas. The antennas 5a-c are provided physically separated, such that some value can be gained by finding a difference or relation between signals received between different antennas. The antennas can be physically separated, but provided on the same device, be different and/or the antennas can be provided in different locations.


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.



FIG. 2 is a schematic diagram illustrating encoding of data according to some embodiments by a reception point 3 of FIG. 1. There is a single reception point 3 in FIG. 2, representing the actions of each one of a plurality of reception points 3.


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.


Mathematical Model

The process correlation of frequency-domain signals according to embodiments presented herein will now be described with more mathematical rigour.


Basic Derivations of Correlations in the Transform Domain

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):








z

0
,
m


(

n
0

)

=


a

(

n
0

)

·

A
0

·

s

(


m
·
M

+

n
0

-

θ
0


)










z

1
,

m
+
d



(

n
1

)

=


a

(

n
1

)

·

A
1

·

s

(



(

m
+
d

)

·
M

+

n
1

-

θ
1


)






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.









C
Zd

(
k
)

=


E


{



Z

1
,

m
+
d



(
k
)

·


Z

o
,
m

*

(
k
)


}


=


A
1

·

A
0
*

·





n
1

,

n
0






a

(

n
1

)

·


a
*

(

n
0

)

·


r
s

(


n
1

-

n
0

+

d
·
M

-
θ

)




e


-
i




2

π

N



k

(


n
1

-

n
0


)








,




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








C
Zd

(
k
)

=



A
1

·

A
0
*

·




n
,

n
0






a

(


n
0

+
n
+
θ
-

d
·
M


)

·


a
*

(

n
0

)

·


r
s

(
n
)




e


-
i




2

π

N



k

(

n
+
θ
-

d
·
M


)






=


A
1

·

A
0
*

·




n
,

n
0







h
a

(


n
0

+
n
+
θ
-

d
·
M


)

·


h
a

(

n
0

)

·


v
*

(

n
+
θ
-

d
·
M


)

·


r
s

(
n
)




e


-
i




2

π

N



k

(

n
+
θ
-

d
·
M


)











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







e

i



2

π

N


kdM


=


(

-
1

)

kd





and inserting the time correlation for ha(n0) as rha(τ)=Σn0ha(n0+τ)·ha(n0) gives








C
Zd

(
k
)

=



(

-
1

)

kd

·

A
1

·

A
0
*

·



n





r
ha

(

n
+
θ
-

d
·
M


)

·


v
*

(

n
+
θ
-

d
·
M


)

·


r
s

(
n
)




e


-
i




2

π

N



k

(

n
+
θ

)










Using








v
*

(

n
+
θ
-

d
·
M


)

=


e


-
i



π
N



(

(

n
+
θ
-

d
·
M


)




=


i
d

·

e


-
i




π
N

·

(

n
+
θ

)










gives








C
Zd

(
k
)

=


i
d

·


(

-
1

)

kd

·

A
1

·

A
0
*

·



n




r
ha

(

n
+
θ
-

d
·
M


)

·


r
s

(
n
)

·

e


-
i



π
N



(

n
+
θ

)



·

e


-
i




2

π

N



k

(

n
+
θ

)










and after breaking out the dependency of θ we get








C
Zd

(
k
)

=


i
d

·


(

-
1

)

kd

·

e


-
i



π
N



(


2

k

+
1

)


θ


·

A
1

·

A
0
*

·



n




r
ha

(

n
+
θ
-

d
·
M


)

·


r
s

(
n
)

·


e


-
i



π
N



(


2

k

+
1

)


n


.








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(τ):









C
Zd

(
k
)

=


{


i
d

·


(

-
1

)

kd

·

e


-
i




2

π


N
2




k
1


θ


·

A
1

·

A
0
*

·



n





r
ha

(

n
+
θ
-

d
·
M


)

·


r
s

(
n
)




e


-
i




2

π


N
2




k
1


n





}



k
1

=


2

k

+
1




,




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









C
Zd

(
k
)

=



i
d

·


(

-
1

)

kd

·

e


-
i




2

π


N
2




k
1


θ


·

A
1

·

A
0
*

·


R

ha

(

n
+
θ
-

d
·
M


)


(

k
1

)


*


R
s

(

k
1

)



,




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








C
Zd

(
k
)




i
d

·


(

-
1

)

kd

·

e


-
i




2

π


N
2




k
1


θ


·

A
1

·

A
0
*

·


r
ha

(

dM
-
θ

)

·



R
s

(


2

k

+
1

)

.






The Correlations of the Real Parts in the Transform Domain

We get the correlation from only the real parts of the frequency data as









C
Xd

(
k
)

=


E


{



X

1
,

m
+
d



(
k
)

·


X

0
,
m

*

(
k
)


}


=



Re
[

E


{



Z

1
,

m
+
d



(
k
)

·


Z

0
,
m

*

(
k
)


}


]

2

=


Re
[


C
Zd

(
k
)

]

2




,




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






{






C

X

1


(
k
)

=


-




(

-
1

)

k

·

sin

(



2

π

N


k

θ

)


2


·

A
1

·

A
0
*

·


[



R

ha

(

n
+
θ
-
M

)


(

k
1

)

*


R
s

(

k
1

)


]



k
1

=


2

k

+
1












C

X

-
1


(
k
)

=





(

-
1

)

k

·

sin

(



2

π

N


k

θ

)


2

·

A
1

·

A
0
*

·


[



R

ha

(

n
+
θ
+
M

)


(

k
1

)

*


R
s

(

k
1

)


]



k
1

=


2

k

+
1












C

X

0




(
k
)


=


-


cos

(



2

π

N


k

θ

)

2


·

A
1

·

A
0
*

·


[



R

ha

(

n
+
θ

)


(

k
1

)

*


R
s

(

k
1

)


]



k
1

=


2

k

+
1












which can be approximated as






{






C

X

1


(
k
)




-




(

-
1

)

k

·

sin

(



2

π

N


k

θ

)


2


·

A
1

·

A
0
*

·


r
ha

(

M
-
θ

)

·


R
s

(


2

k

+
1

)










C

X

-
1


(
k
)







(

-
1

)

k

·

sin

(



2

π

N


k

θ

)


2

·

A
1

·

A
0
*

·


r
ha

(


-
M

-
θ

)

·


R
s

(


2

k

+
1

)










C

X

0


(
k
)





cos

(



2

π

N


k

θ

)

2

·

A
1

·

A
0
*

·


r
ha

(

-
θ

)

·


R
s

(


2

k

+
1

)










respectively, where we also included the approximation from above.


Selecting Reference Signal

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








P

X

0


(
k
)

=


E


{



X

0
,
m


(
k
)

·


X

0
,
m

*

(
k
)


}


=



1
2

·

A
0

·

A
0
*

·


[



R

ha

(
n
)


(

k
1

)

*


R
s

(

k
1

)


]



k
1

=


2

k

+
1







1
2

·

A
0

·

A
0
*

·


r
ha

(
0
)

·


R
s

(


2

k

+
1

)












P

X

1


(
k
)

=


E


{



X

1
,
m


(
k
)

·


X

1
,
m

*

(
k
)


}





1
2

·

A
1

·

A
1
*

·


r
ha

(
0
)

·


R
s

(


2

k

+
1

)







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).


Scaling Factors for the Correlations of the Real Parts in the Transform Domain

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






{






Q

+
1


(
k
)

=



-


C

X

1


(
k
)


/


P

X

0


(
k
)





-


(

-
1

)

k


·


A
1


A
0


·

sin

(



2

π

N


k

θ

)

·


ρ
ha

(

M
-
θ

)











Q

-
1


(
k
)

=




C

X
-
1


(
k
)

/


P

X

0


(
k
)






(

-
1

)

k

·


A
1


A
0


·

sin

(



2

π

N


k

θ

)

·


ρ
ha

(


-
M

-
θ

)











Q
0

(
k
)

=




C

X

0


(
k
)

/


P

X

0


(
k
)






A
1


A
0


·

cos

(



2

π

N


k

θ

)

·


ρ
ha

(

-
θ

)











where








ρ
ha

(
τ
)

=



r
ha

(
τ
)



r
ha

(
0
)






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






{






Q

+
1


(
k
)

=



-


C

X

1


(
k
)


/

D

(
k
)





-


(

-
1

)

k


·


A
1




"\[LeftBracketingBar]"


A
1



"\[RightBracketingBar]"



·


A
0
*




"\[LeftBracketingBar]"


A
0



"\[RightBracketingBar]"



·

sin

(



2

π

N


k

θ

)

·


ρ
ha

(

M
-
θ

)











Q

-
1


(
k
)

=




C

X
-
1


(
k
)

/

D

(
k
)






(

-
1

)

k

·


A
1




"\[LeftBracketingBar]"


A
1



"\[RightBracketingBar]"



·


A
0
*




"\[LeftBracketingBar]"


A
0



"\[RightBracketingBar]"



·

sin

(



2

π

N


k

θ

)

·


ρ
ha

(


-
M

-
θ

)











Q
0

(
k
)

=




C

X

0


(
k
)

/

D

(
k
)






A
1




"\[LeftBracketingBar]"


A
1



"\[RightBracketingBar]"



·


A
0
*




"\[LeftBracketingBar]"


A
0



"\[RightBracketingBar]"



·

cos

(



2

π

N


k

θ

)

·


ρ
ha

(

-
θ

)











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


Utilizing the Knowledge of the Spectrum of the Transmitted Signal for Normalization

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









W
m

(
k
)

=





"\[LeftBracketingBar]"



X

0
,
m


(
k
)



"\[RightBracketingBar]"


2

-


P
0

·


R
sha

(
k
)




,




where







P
0

=


1
2

·




"\[LeftBracketingBar]"


A
0



"\[RightBracketingBar]"


2










R
sha

(
k
)

=


dft

(




r
ha

(
n
)

·


r
s

(
n
)


,

N
2


)



k
1

=


2

k

+
1







The expected value of Wm(k), E{Wm(k)}=0 and we define the model for |X0,m(k)|2 as










"\[LeftBracketingBar]"



X

0
,
m


(
k
)



"\[RightBracketingBar]"


2

=




P
0

·


R
sha

(
k
)


+


W
m

(
k
)


=


[



R

ha

(
n
)


(

k
1

)

*


R
s

(

k
1

)


]



k
1

=


2

k

+
1








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










"\[LeftBracketingBar]"




X
^


0
,
m


(
k
)



"\[RightBracketingBar]"


2

=



P
0

·


R
sha

(
k
)


+


P
N

·


R
N

(
k
)


+


V
m

(
k
)






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









m
,
k






"\[LeftBracketingBar]"






"\[LeftBracketingBar]"




X
^


0
,
m


(
k
)



"\[RightBracketingBar]"


2

-


P
0

·


R
sha

(
k
)


+

P
N




"\[RightBracketingBar]"


2





or in matrix form










"\[LeftBracketingBar]"


y
-

H
·

[




P
0






P
N




]





"\[RightBracketingBar]"


2

,




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,







[





P
^

0







P
^

N




]

=




(


H
*

·
H

)


-
1


·

H
*

·
y

=

H

\

y






are now used to form an estimate of PX0(k),









P
^


X

0


(
k
)

=




P
^

0

·


R
sha

(
k
)


+


P
^

N






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.


First Method

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)









C
^

Xd

(
k
)

=



m



w
m

·


X

1
,

m
+
d



(
k
)

·


X

0
,
m

*

(
k
)







where wm is an averaging weight for frame m, ΣmWmdef1,


and PX0(k)=E{X0,m(k)·X0,m*(k)} as









P
^


X

0


(
k
)

=




m



w
m

·


X

0
,
m


(
k
)

·


X

0
,
m

*

(
k
)



=



m



w
m

·





"\[LeftBracketingBar]"



X

0
,
m


(
k
)



"\[RightBracketingBar]"


2

.








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






{







Q
ˆ


+
1


(
k
)

=



-



C
ˆ


X

1


(
k
)


/



P
ˆ


X

0


(
k
)






-


(

-
1

)

k


·


A
1


A
0


·
sin





(



2

π

N


k

θ

)

·


ρ

h

a


(

M
-
θ

)













Q
ˆ


-
1


(
k
)

=





C
ˆ


X
-
1


(
k
)

/



P
ˆ


X

0


(
k
)







(

-
1

)

k

·


A
1


A
0


·
sin





(



2

π

N


k

θ

)

·


ρ

h

a


(


-
M

-
θ

)













Q
ˆ

0

(
k
)

=





C
ˆ


X

0


(
k
)

/



P
ˆ


X

0


(
k
)







A
1


A
0


·
cos





(



2

π

N


k

θ

)

·


ρ

h

a


(

-
θ

)












Then we estimate e.g. θ by utilizing the equations






{








A
1


A
0


·
sin




(



2

π

N


k

θ

)




-




Q
ˆ


+
1


(
k
)




(

-
1

)

k

·


ρ

h

a


(

M
-
θ

)














A
1


A
0


·
sin




(



2

π

N


k

θ

)







Q
ˆ


-
1


(
k
)




(

-
1

)

k

·


ρ

h

a


(


-
M

-
θ

)













A
1


A
0


·
cos




(



2

π

N


k

θ

)







Q
ˆ

0

(
k
)



ρ

h

a


(

-
θ

)










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









Q
ˆ

Z

(
k
)

=







Q
ˆ

0

(
k
)



ρ

h

a


(

-
θ

)


+


i

2
·


(

-
1

)

k





(





Q
ˆ


-
1


(
k
)



ρ

h

a


(

M
-
θ

)


-




Q
ˆ


+
1


(
k
)



ρ

h

a


(


-
M

-
θ

)



)







A
1


A
0




{


cos



(



2

π

N


k

θ

)


+

i


sin



(



2

π

N


k

θ

)



}



=



A
1


A
0





e



i

2

π

N


k

θ


.







In principle, this could be solved using numerical methods to get e.g.







A
1


A
0





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








A
1


A
0


,




delayed by θ samples. Thus, one method to determine







A
1


A
0





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










ρ

h

a


(

M
-
θ

)

+


ρ

h

a


(


-
M

-
θ

)


=




ρ

h

a


(

M
-
θ

)

+


ρ

h

a


(

M
+
θ

)




2
·


ρ

h

a


(
M
)




,




and that ρha(−θ)≈1


which yields the following expressions for the imaginary and real part respectively






{










Im



{



Q
^

z

(
k
)

}








Q
^


-
1


(
k
)

-



Q
^


+
1


(
k
)





(

-
1

)

k

·
2
·


ρ
ha

(
M
)




=












m




w
m

·

(



X

1
,

m
-
1



(
k
)

-


X

1
,

m
+
1



(
k
)


)

·


X

0
,
m

*

(
k
)






(

-
1

)

k

·
2
·


ρ
ha

(
M
)

·

D

(
k
)















Re



{



Q
ˆ

z

(
k
)


}










m




w
m

·


X

1
,
m


(
k
)

·


X

0
,
m

*

(
k
)






ρ

h

a


(

-
θ

)

·

D

(
k
)














Q
ˆ

0

(
k
)



ρ

h

a


(

-
θ

)






Q
ˆ

0



(
k
)









,





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.






{










Im



{



Q
^

z

(
k
)

}








Q
^


-
1


(
k
)

-



Q
^


+
1


(
k
)





(

-
1

)

k

·
2
·


ρ
ha

(
M
)




=













m




w
m

·


X

1
,

m
-
1



(
k
)

·


X

0
,
m

*

(
k
)



-






m




w
m

·


X

1
,
m


(
k
)

·


X

0
,
m

*

(
k
)







(

-
1

)

k

·
2
·


ρ
ha

(
M
)

·

D

(
k
)












Re



{



Q
ˆ

z



(
k
)



}







Q
ˆ

0

(
k
)



ρ

h

a


(

-
θ

)






Q
ˆ

0

(
k
)





,





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:






{






U

0
,
m


(
k
)

=



X

0
,
m


(
k
)

+

j



X

0
,

m
-
1



(
k
)











U

1
,
m


(
k
)

=



X

1
,
m


(
k
)

+

j



X

1
,

m
-
1



(
k
)











Cross-correlation of the intermediate signals gives









C
ˆ


U
,

1

0



(
k
)

=


E


{



U

1
,
m


(
k
)




U

0
,
m

*

(
k
)


}


=



[



X

1
,
m


(
k
)

+

j
·


X

1
,

m
-
1



(
k
)



]


[



X

0
,
m


(
k
)

-

j
·


X

0
,

m
-
1



(
k
)



]

=


E


{



X

1
,
m


(
k
)

·


X

0
,
m


(
k
)



}


+

E


{



X

1
,

m
-
1



(
k
)

·


X

0
,

m
-
1



(
k
)



}


+

j
·

(


E


{



X

1
,

m
-
1



(
k
)

·


X

0
,
m

*

(
k
)


}


-

E


{



X

1
,
m


(
k
)

·


X

0
,

m
-
1


*

(
k
)


}



)









which can be rewritten as






{






Re

[



C
ˆ


U
,

1

0



(
k
)

]

=







m




w
m

·


X

1
,
m


(
k
)

·


X

0
,
m

*

(
k
)



+






m




w

m
-
1


·


X

1
,

m
-
1



(
k
)

·


X

0
,

m
-
1


*

(
k
)











Im

[



C
ˆ


U
,

1

0



(
k
)

]

=







m




w
m

·


X

1
,

m
-
1



(
k
)

·


X

0
,
m

*

(
k
)



-






m




w
m

·


X

1
,
m


(
k
)

·


X

0
,

m
-
1


*

(
k
)












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






{





Re

[



C
ˆ


U
,

1

0



(
k
)

]

=

2






m




w
m

·


X

1
,
m


(
k
)

·


X

0
,
m

*

(
k
)










Im

[



C
ˆ


U
,

1

0



(
k
)

]

=







m




w
m

·


X

1
,

m
-
1



(
k
)

·


X

0
,
m

*

(
k
)



-






m




w
m

·


X

1
,
m


(
k
)

·


X

0
,

m
-
1


*

(
k
)












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.









Q
ˆ

z

(
k
)





Re

[



C
ˆ


U
,
10


(
k
)

]


2
·

D

(
k
)



+


j
·

Im

[



C
ˆ


U
,
10


(
k
)

]





(

-
1

)

k

·
2
·


ρ

h

a


(
M
)

·

D

(
k
)








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.



FIGS. 3A-B are flow charts illustrating embodiments of methods for determining a relation between a first time-domain signal 7a and a second time-domain signal 7b received from a single source by different antennas. As explained above, the time domain signals 7a-b are respectively processed with a Fourier-related transform with overlapping input frames to, indirectly or directly, provide respective first and second frequency-domain signals 6a-b. The frequency-domain signals are made up of frames of frequency-domain coefficients, wherein only one part, of the real part and the imaginary part of the coefficients from Fourier-related transform, is included in the frequency-domain signals 6a-b. When the transform provides the frequency domain signals 6a-b directly, the Fourier-related transform can be configured to provide coefficients of only one part (real or imaginary). When the transform provides the frequency domain signals 6a-b indirectly, the coefficients can be stripped of one part (real or imaginary) after they are provided as a result of the transform.


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 FIG. 3A will be described.


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 FIG. 3B, only new or modified steps compared to FIG. 3A will be described.


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.



FIG. 4 is a schematic graph illustrating a difference between the real part and the imaginary part of a time-domain signal according to one numerical example. This example illustrates some results for a 100 MHz wide 5G NR carrier with 30 kHz subcarrier spacing. For the transform coding, we have N=1024, M=512, and the sample rate is 122.88 MHz.


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







1



(

-
1

)

k

·
2
·


ρ

h

a


(
M
)





3.59
·



(

-
1

)

k

.






These values are calculated from the used time-domain window in the encoder.


The estimated complex correlation after normalization and scaling is shown in FIG. 4. The upper part shows the real part of the estimated cross-correlation, and the lower part shows the imaginary part of the estimated cross-correlation. Bin index numbers are provided along the x axes. In the upper part of FIG. 4, a first line 10a plots the real cross-correlation for each bin index. A second line 10b plots a moving average of the first line. In the lower part of FIG. 4, a third line 10c plots the imaginary cross-correlation for each bin index. A fourth line 10d plots a moving average of the third line.


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.



FIG. 5 is a schematic graph illustrating how an estimated cross-correlation is transformed back to time domain. This follows from the example of FIG. 4.


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. FIG. 5 clearly shows the image (alias) for negative delays when only the real part 12 of the cross-correlation is used. When the full complex cross-correlation 14 is used, the image is suppressed more than 30 dB. However, the full complex cross-correlation has a higher noise floor, which in this case gives some false (but weak) responses 13 near zero delay.


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).









TABLE 1







Result comparison













Complex
Presented





cross-
embodiments




correlation
where the




in
real part of




transform
the cross-




domain.
correlation




Both real
is used to




and
determine
Presented




imaginary
peak
embodiments



Time-
part sent
location
with



domain
from
and the
normalized



cross-
reception
imaginary
and scaled


Distance-
correlation
points
part used to
estimate of


estimate
(prior art,
(twice the
determine
complex


error
much higher
fronthaul
the sign of
cross-


(m)
complexity)
data rate).
the delay
correlation.














Mean
0.000
0.001
0.001
0.002


Standard
0.005
0.008
0.015
0.026


deviation









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.



FIG. 6 is a schematic diagram illustrating components of the relation determiner 1 of FIG. 1. A processor 60 is provided using any combination of one or more of a suitable central processing unit (CPU), graphics processing unit (GPU), multiprocessor, microcontroller, digital signal processor (DSP), etc., capable of executing software instructions 67 stored in a memory 64, which can thus be a computer program product. The processor 60 could alternatively be implemented using an application specific integrated circuit (ASIC), field programmable gate array (FPGA), etc. The processor 60 can be configured to execute the method described with reference to FIGS. 3A-B above.


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.



FIG. 7 is a schematic diagram showing functional modules of the relation determiner 1 of FIG. 1 according to one embodiment. The modules are implemented using software instructions such as a computer program executing in the relation determiner 1. Alternatively or additionally, the modules are implemented using hardware, such as any one or more of an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or discrete logical circuits. The modules correspond to the steps in the methods illustrated in FIGS. 3A-B.


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.



FIG. 8 shows one example of a computer program product 90 comprising computer readable means. On this computer readable means, a computer program 91 can be stored, which computer program can cause a processor to execute a method according to embodiments described herein. In this example, the computer program product is in the form of a removable solid-state memory, e.g. a Universal Serial Bus (USB) drive. As explained above, the computer program product could also be embodied in a memory of a device, such as the computer program product 64 of FIG. 6. While the computer program 91 is here schematically shown as a section of the removable solid-state memory, the computer program can be stored in any way which is suitable for the computer program product, such as another type of removable solid-state memory, or an optical disc, such as a CD (compact disc), a DVD (digital versatile disc) or a Blu-Ray disc.


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.

Claims
  • 1. 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, wherein 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, wherein only one part, of the real part and the imaginary part from the Fourier-related transform, is included in the frequency-domain signals, wherein 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 being performed by a relation determiner, the method comprising 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; anddetermining 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.
  • 2. The method according to claim 1, wherein, in the determining a second part cross-correlation step, the cross-correlation is 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.
  • 3. The method according to claim 1, further comprising 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.
  • 4. The method according to claim 3, further comprising the step of: determining a position of the single source based on at least one of the time difference, phase difference and power ratio.
  • 5. The method according to claim 3, further comprising the step of: performing signal combining based on at least one of the time difference, phase difference and power ratio.
  • 6. The method according to claim 1, further comprising 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.
  • 7. The method according to claim 1, further comprising the step of: determining one of the received frequency-domain signals to be used as a reference signal.
  • 8. The method according to claim 7, wherein the step of receiving comprises receiving the first frequency-domain signal, the second frequency-domain signal and a third frequency-domain signal;wherein the steps of determining a first part cross-correlation and determining a second part cross-correlation comprises cross-correlating each one of the frequency-domain signals that is not the reference signal against the reference signal.
  • 9. The method according to claim 7, wherein the step of determining a reference signal comprises determining the reference signal to be the one of the frequency-domain signals that has the greatest received signal power.
  • 10. The method according to claim 7, wherein the step of determining a reference signal comprises determining the reference signal to be the one of the frequency-domain signals that has the most concentrated autocorrelation or the flattest spectrum.
  • 11. The method according to claim 1, further comprising the step of: normalizing the first part cross-correlation and the second part cross-correlation on a bin-by-bin basis.
  • 12. The method according to claim 11, wherein the step of normalizing is performed equally for the first part cross-correlation and the second part cross-correlation.
  • 13. The method according to claim 1, further comprising the step of: scaling the first part cross-correlation and/or the second part cross-correlation to enable time-domain alias cancellation.
  • 14. The method according to claim 1, wherein the step of receiving the first frequency-domain signal and the second frequency-domain signal comprises receiving the first frequency-domain signal from a first reception device and the second frequency-domain signal from a second reception device.
  • 15. 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, wherein 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, wherein only one part, of the real part and the imaginary part from the Fourier-related transform, is included in the frequency-domain signals, wherein 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 comprising: a processor; anda 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; anddetermine 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.
  • 16. The relation determiner according to claim 15, further comprising 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.
  • 17. The relation determiner according to claim 15, further comprising 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.
  • 18. The relation determiner according to claim 17, further comprising 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.
  • 19. The relation determiner according to claim 17, further comprising 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.
  • 20. The relation determiner according to claim 15, further comprising 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.
  • 21.-30. (canceled)
PCT Information
Filing Document Filing Date Country Kind
PCT/SE2021/050897 9/17/2021 WO