METHOD AND DEVICE FOR SYNCHRONIZING A TELECOMMUNICATIONS RECEIVER DEVICE RECEIVING AN IMPULSE RADIO ULTRA-WIDEBAND SIGNAL

Information

  • Patent Application
  • 20250132877
  • Publication Number
    20250132877
  • Date Filed
    October 16, 2024
    a year ago
  • Date Published
    April 24, 2025
    7 months ago
Abstract
A method for synchronizing in a receiver receiving an IR-UWB signal including data packets having a preamble comprising a first preamble portion of at least two occurrences of a first preamble sequence of N pulses spaced apart by a period T and that are each equal to a reference pulse weighted by a complex coefficient cn, n=0 to N−1 indicating the rank of the pulse in the first sequence and a second preamble portion of at least two occurrences of a second preamble sequence equal to the complex conjugate of the first sequence, comprising: considering the NP successive samples sn for n=0 to NP−1, of a slice, of duration NT, of the first and respectively second preamble portion of a received packet, determining
Description
CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to foreign French patent application No. FR 2311266, filed on Oct. 18, 2023, the disclosure of which is incorporated by reference in its entirety.


FIELD OF THE INVENTION

The invention relates to the field of telecommunications and radiolocation. More particularly, it relates to IR-UWB signals (IR-UWB standing for standing for impulse radio ultra-wideband). Such a signal is transmitted by a transmitter device. The receiver device receiving the transmitted signal must synchronize itself in time and frequency to the transmitted signal in order to be able to demodulate the transmitted signal and carry out the processing required to decode the transmitted message and/or to extract information from the physical signal to estimate distance, angle of arrival or location.


BACKGROUND

By synchronization, what is meant is alignment, by the receiver device, of its clock with:

    • the same frequency (frequency synchronization), and possibly the same phase;
    • the same time origin (time synchronization) as that of the transmitter shifted by the propagation time of the signal from the transmitter to the receiver.


In IR-UWB, synchronization is achieved by virtue of the preamble that starts the transmitted packet. This preamble is generally made up of symbols formed from a sequence, as in the various physical IR-UWB layers of the IEEE802.15.4 standard (cf. “IEEE Standard for Low-Rate Wireless Networks” in IEEE Std 802.15.4-2020 (Revision of IEEE Std 802.15.4-2015), vol., no., pp. 1-800, Jul. 23, 2020). These sequences are formed from binary elements (+1; −1) or ternary elements (+1; 0; −1) that weight the pulses. The symbol is then repeated a plurality of times in the preamble.


Synchronization is in particular achieved by way of a correlation between the received signal and a preamble symbol. The position of the obtained correlation peaks makes it possible to achieve temporal synchronization. The greater the desire for synchronization at low signal-to-noise ratios (SNR) (for example, to achieve a long range), the longer the sequences to be used in the correlations must be. However, the transmitter and the receiver are not perfectly synchronized in frequency either and this difference limits the duration of the correlation: if the phase rotation over a symbol is too great, the accumulation of the pulses ends up being destructive. Non-coherent accumulations may be employed to overcome this problem, but then the processing improvement is less than with coherent accumulations.


There is therefore a need to achieve a synchronization that is low-SNR (and that therefore uses long sequences, and that gives rise to the accumulation of a high number of pulses) in the presence of conventional levels of central frequency offset (CFO).


SUMMARY OF THE INVENTION

To this end, according to a first aspect, the present invention describes a method for synchronizing a telecommunications receiver device receiving an impulse radio ultrawide-band signal comprising data packets, a data packet comprising a preamble, said method comprising a step of synchronizing the receiver device to the received signal depending on said preamble,

    • said method being characterized in that the following steps are implemented by the telecommunications receiver device, the preamble comprising a first preamble portion of at least two occurrences of a first preamble sequence of N pulses spaced apart by a period T and that are each equal to a reference pulse weighted by a complex coefficient cn, n=0 to N−1 indicating the rank of the pulse in the first sequence, said preamble further comprising a second preamble portion of at least two occurrences of a second preamble sequence equal to the complex conjugate of the first sequence:
      • i/ sampling the preamble with a sampling period Ts, T=P×Ts with P an integer greater than or equal to 1;
      • ii/ considering the NP successive samples sn, for n=0 to NP−1, of a slice, of duration NT, of the first preamble portion of a received signal packet, determining the sequence of values,








x
n

=


c



n
P



*



s
n



;






    •  iii/ considering the NP successive samples zn, for n=0 to NP−1, of a slice, of duration NT, of the second preamble portion of a received signal packet, determining the sequence of values











y
n

=


c



n
P






z
n



;






    •  iv/ determining the frequency fd of the sequence xn and the frequency fg of the sequence yn with n=0 to NP−1;
      • v/ computing at least one shift to be applied to synchronize to the received signal among a frequency shift Δf and a time shift t0m according to the following equations:










f
d

=



1

N

P


T
s





(





t

0

m


T



+
ϵ

)


+

Δ

f









f
g

=



-

1

N

P


T
s






(





t

0

m


T



+
ϵ

)


+

Δ

f








    •  vi/ a step of synchronizing depending on at least said computed shift.





Such a method makes it possible to achieve a synchronization that is low-SNR (and that therefore uses long sequences, and that gives rise to the accumulation of a high number of pulses) even in the presence of frequency offset.


In some embodiments, such a method will furthermore comprise at least one of the following features:

    • the receiver device implements the following steps:
    • performing, for n=0 to NP−1, a discrete Fourier transform, denoted DFT, of the xn determined for an indexed slice kd, then determining








n
d

=

arg



max

n
0


(


max
m




"\[LeftBracketingBar]"


X
m


k
d

,

n
0





"\[RightBracketingBar]"



)



,


where



X
m


k
d

,

n
0




=

D

F


T

(

x


n

P

+

n
0



k
d


)



,


n
0





0
;

P
-
1











    •  and then determining the index mdcustom-character0;N−1custom-character of the maximum of the modulus of Xmkd,nd, i.e.











m
d

=

arg

max
m




"\[LeftBracketingBar]"


X
m


k
d

,

n
d





"\[RightBracketingBar]"




;






    • determining an estimate, {circumflex over (f)}d, of the value of the frequency fd with











f
ˆ

d

=

{








m
d


N

T




if



m
d


<

N
2










m
d


N

T


-


1

T
s




if



m
d





N
2





;








    • performing, for n=0 to NP−1, a discrete Fourier transform, denoted DFT, of the ynP+ndkg determined for an indexed slice kg, then being given Ymkg,nd=DFT(ynP+ndkg), n0custom-character0;P−1custom-character and then determining the index mgcustom-character0;N−1custom-character of the maximum of the modulus of Ymkg,nd, i.e.











m
g

=

arg

max
m




"\[LeftBracketingBar]"


Y
m


k
g

,

n
d





"\[RightBracketingBar]"




;






    • determining an estimate, {circumflex over (f)}g, of the value of the frequency fg with











f
ˆ

g

=

{








m
g


N

T




if



m
g


<

N
2










m
g


N

T


-


1

T
s




if



m
g





N
2





;








    • the receiver device determines an estimate custom-character of the frequency shift Δf using the following formula:












Δ

f

^

=




f
^

d

+


f
^

g


2


;






    • if md and mg do not have the same parity, the value of that of md and mg whose second largest Fourier-transform value is closest to the maximum is then modified, the value of the modified index being set equal to the index of this second value;

    • the receiver device implements the following steps:

    • computing Δφ0=arg(Xmdkd+1,ndconj(Xmdkd,nd))

    • letting md2 be the index neighbouring md such that |Xmdkd,nd| and |Xmd2kd,nd| are spaced apart by less than a predefined value, the value of Δφ is determined by applying:
      • if Δφ0<0 and md−md2<0 then Δφ=Δφ0+2π
      • if Δφ0>0 and md−md2>0 then Δφ=Δφ0−2π
      • otherwise Δφ=Δφ0
      • determining an estimate custom-character of the frequency shift Δf using the following formula











Δ

f

^

=





f
ˆ

d

+


f
ˆ

g


2

+


Δφ

2

π

NT


.







According to another aspect, the invention describes a computer program intended to be stored in the memory of a telecommunications receiver device further comprising a microcomputer, said computer program comprising instructions that, when they are executed on the microcomputer, implement steps i, ii, iii and iv of a method according to the first aspect of the invention.


The invention also describes a non-transient computer-readable medium storing such a computer program.


According to another aspect, the invention describes a telecommunications receiver device configured to receive an impulse radio ultrawide-band signal comprising data packets, a data packet comprising a preamble, said receiver device being configured to perform an operation of synchronizing to the received signal depending on said preamble;

    • said device being characterized in that, the preamble comprising a first preamble portion of at least two occurrences of a first preamble sequence of N pulses spaced apart by a period T and that are each equal to a reference pulse weighted by a complex coefficient cn, n=0 to N−1 indicating the rank of the pulse in the first sequence, said preamble further comprising a second preamble portion of at least two occurrences of a second preamble sequence equal to the complex conjugate of the first sequence, the device being configured to sample the preamble with a sampling period Ts, T=P×Ts with P an integer greater than or equal to 1;
      • the device further being configured to, considering the NP successive samples sn, for n=0 to NP−1, of a slice, of duration NT, of the first preamble portion of a received signal packet, determine the sequence of values,








x
n

=


c



n
P



*



s
n



;






    •  the device further being configured to, considering the NP successive samples zn, for n=0 to NP−1, of a slice, of duration NT, of the second preamble portion of a received signal packet, determine the sequence of values











y
n

=


c



n
P






z
n



;






    •  the device further being configured to determine the frequency fd of the sequence xn and the frequency fg of the sequence yn with n=0 to NP−1;
      • the device further being configured to compute at least one shift to be applied to synchronize to the received signal among a frequency shift Δf and a time shift t0m according to the following equations:













f
d

=



1

NPT
s




(





t

0

m


T



+
ϵ

)


+

Δ

f









f
g

=



-

1

NPT
s





(





t

0

m


T



+
ϵ

)


+

Δ

f











    •  the device further being configured to perform a synchronization depending at least on said computed shift.





In some embodiments, such a device will furthermore comprise at least one of the following features:

    • said device is configured to perform, for n=0 to NP−1, a discrete Fourier transform, denoted DFT, of the xn determined for an indexed slice kd, then determining








n
d

=

arg


max

n
0




(


max
m




"\[LeftBracketingBar]"


X
m


k
d

,

n
0





"\[RightBracketingBar]"



)



,


where



X
m


k
d

,

n
0




=

DFT

(

x


n

P

+

n
0



k
d


)


,


n
0



[

0
;

P
-
1


]








    •  and then determining the index mdcustom-character0;N−1custom-character of the maximum of the modulus of Xmkd,nd, i.e.











m
d

=

arg




max

m





"\[LeftBracketingBar]"


X
m


k
d

,

n
d





"\[RightBracketingBar]"




;




said device being configured to determine an estimate, {circumflex over (f)}d, of the value of the frequency fd with








f
^

d

=

{








m
d

NT



if



m
d


<

N
2










m
d

NT


-


1

T
s




if



m
d





N
2





;






said device being configured to perform, for n=0 to NP−1, a discrete Fourier transform, denoted DFT, of the ynP+ndkg determined for an indexed slice kg, then being given Ymkg,nd=DFT(ynP+ndkg), n0custom-character0;P−1custom-character and then determining the index mgcustom-character0;N−1custom-character of the maximum of the modulus of Ymkg,nd, i.e.








m
g

=

arg




max

m





"\[LeftBracketingBar]"


Y
m


k
d

,

n
d





"\[RightBracketingBar]"




;




said device being configured to determine an estimate, {circumflex over (f)}g, of the value of the frequency fg with








f
^

g

=

{








m
g

NT



if



m
g


<

N
2










m
g

NT


-


1

T
s




if



m
g





N
2





;








    • said device is configured to determine an estimate custom-character of the frequency shift Δf using the following formula:












Δ

f

^

=




f
^

d

+


f
^

g


2


;






    • said device is configured to, if md and mg do not have the same parity, modify the value of that of md and mg whose second largest Fourier-transform value is closest to the maximum, the value of the modified index being set equal to the index of this second value.








BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be better understood and other features, details and advantages will become more clearly apparent on reading the non-limiting description that follows, and by virtue of the appended figures, which are given by way of example.



FIG. 1 shows steps of a synchronizing method in one embodiment of the invention;



FIG. 2 schematically shows a transmitter device and a receiver device in one embodiment of the invention;



FIG. 3 shows the structure of a data packet in one embodiment of the invention;



FIG. 4 schematically shows the pulses of a preamble of a packet in one embodiment of the invention;



FIG. 5 shows a Gaussian pulse of 500 MHz used in one embodiment of the invention;



FIG. 6 shows the Fourier transforms of the sequences xnP+n0kd in one embodiment of the invention;



FIG. 7 shows the empirical complementary distribution function of the error in estimation of the frequency deviation in one embodiment of the invention;



FIG. 8 shows the time-synchronization error in one embodiment of the invention.





Identical references may be used in various figures to designate identical or comparable elements.


DETAILED DESCRIPTION


FIG. 2 shows a transmitter device 10 and a receiver device 20 that are configured to implement IR-UWB telecommunications in one embodiment of the invention.


The transmitter device 10, called the transmitter 10 below, comprises an electronic processing module 11 and an RF module 12 (RF standing for radio-frequency). The electronic processing module 11 comprises a memory and a microcontroller (which have not been shown). Typically, the processing module 11 of the transmitter is configured to perform the following processing operations in particular: applying error-correcting codes, interleaving data, converting sequences of bits into symbols, data framing, and applying pulse-shaping filters. The RF module 12 of the transmitter 10 is configured to perform the following processing operations: transposing the signal from the baseband to the carrier frequency, amplifying and filtering the signal and transmitting an IR-UWB radio signal via an RF antenna. The memory stores instructions that, when executed on the microcontroller, implement those (or certain) of the steps that are the responsibility of the processing module 11 of the transmitter 10, which steps are described below.


Similarly, the receiver device 20, called the receiver 20 below, comprises an electronic processing module 21 and a radio-frequency module 22. The electronic processing module 21 comprises a memory 210 and a microcontroller 211. Typically, the RF module 22 of the receiver 20 is configured to perform the processing operations of transposing the received signal to baseband, and of filtering and amplifying the received signal. The processing module 21 of the receiver 20 is in particular configured to perform the following processing operations such as sampling with the period Ts: filtering, slicing, multiplying the slices by a predefined sequence, frequency estimation, correcting the carrier frequency offset and time shift, converting the received symbols into an input metric for error correction decoding (typically log likelihood ratios or LLRs), de-interleaving, and decoding. The memory 210 stores instructions that, when executed on the microcontroller 211, in particular implement those (or certain) of the steps that are the responsibility of the processing module 21 of the receiver 20, which steps are described below.


The IR-UWB telecommunications implemented between the transmitter 10 and the receiver 20 for example conform to the generally accepted definition, namely: a UWB signal (a signal with either a bandwidth/carrier frequency ratio greater than 20% or a bandwidth greater than 500 MHz) made up of pulses of short duration (these pulses have a duration that corresponds to the bandwidth of the signal: of about 2 ns for 500 MHz, 1ns for 1 GHz etc.).



FIG. 3 shows the general structure, in the physical layer, of a data packet 40 transmitted in an IR-UWB signal transmitted by the transmitter 10 and received by the receiver 20 in one embodiment of the invention.


The packet 40, the format of which for example conforms to the standard IEEE802.15.4 mentioned above, begins with a preamble (Preamble 41) that is used by the receiver 20 to detect the packet, and to achieve time synchronization and frequency synchronization. The field SFD 42 (SFD standing for start-of-frame delimiter) allows the end of the preamble to be determined. The field PHR 43 (PHR standing for PHY header) contains data on the packet such as the size of the data present in the field PHY payload 44. The field PHY payload 44 contains the payload from the point of view of the physical layer.


The preamble according to the invention comprises a first preamble portion comprising (and in the present case, formed from) a repetition of one symbol and a second preamble portion comprising (and in the present case, formed from) a repetition of another symbol. Each of these symbols comprises (and here is formed from) a respective sequence of pulses, each pulse in the sequence being equal to a reference pulse weighted by a complex coefficient.


The general principles of a synchronizing method according to the invention will now be explained.


For the (n+1)th pulse in the symbol in question in the first preamble portion, the complex weighting coefficient has the value








c
n

=

exp



(

-


i

π


n
2


N


)



,


for


n



[

0
,

N
-
1


]






with N the size of the sequence of pulses of which the symbol consists.



FIG. 4 shows pulses of the first preamble portion, each weighted by their associated complex coefficient cn, in one embodiment given by way of illustration (in the schematic, the coefficients are only +/−1 to simplify the drawing).


Let p(t) be the waveform used for the reference pulse, and T be the distance between two consecutive pulses, which is called pulse repetition period (PRP). A symbol of the first preamble portion is then written:







u

(
t
)

=






n
=
0





N
-
1





c
n



p

(

t
-
nT

)







The first portion v(t) of the preamble 41 transmitted by the transmitter 10 contains M repetitions of this symbol, with M greater than or equal to 2:







v

(
t
)

=







n
=
0





N
-
1




u

(

t
-
kNT

)


=




k
=
0


M
-
1







n
=
0


N
-
1





c
n



p

(

t
-


(

kN
+
n

)


T


)









The signal received by the receiver 20 has been subjected to the propagation channel h(t) and to the receiver noise n(t), and hence the received first preamble portion is:







r

(
t
)

=



h
*

u

(
t
)


+

n

(
t
)


=





k
=
0


M
-
1







n
=
0


N
-
1





c
n




p
h

(

t
-


(

kN
+
n

)


T


)




+

n

(
t
)









    • where ph(t) is the convolution of the waveform with the channel: ph(t)=h*p(t)





In addition, since the receiver 20 is not perfectly aligned in frequency with the transmitter 10, a frequency offset term Δf is taken into account, as is a phase term ϕ and a time origin t0:







s

(
t
)

=


r

(

t
-

t
0


)




exp

(


2

i

πΔ

ft

+

i

ϕ


)






Lastly, the signal is sampled by the receiver 20, with a period Ts:






s
n
=s(nTs)


It is assumed that Ts is a sub-multiple of T: T=P×Ts (P is the number of samples per PRP)


The signal is further divided into slices of duration NT (the duration of one symbol), by the receiver 20:







w
n
k

=

s

n
+
kNP








    • where k is the number of the slice and n the index within the slice (n∈custom-character0;NP−1custom-character).





Let d be the vector of size N×P the components dn of which are the cn repeated P times:






d
=


[


c
0

,

c
0

,


,

c
0

,

c
1

,


,

c
1

,


,

c

N
-
1


,


,

c

N
-
1



]

T





The product of multiplication of each slice wk by the complex conjugate of d is:










x
k

=


w
k

·

d
*








=


[



c
0
*



s
kNP


,


c
0
*



s

1
+
kNP



,


,


c

N
-
1

*



s

NP
-
1
+
kNP




]

T








Or indeed, expressed more simply, the n+1th component of this vector is written:







x
n
k

=


c



n
P



*



s

n
+
kNP







Substituting the preceding expressions:







x
n
k

=


c



n
P



*

(



(





l
=
0


M
-
1







m
=
0


N
-
1





c
m




p
h

(



(

n
+
kNP

)



T
s


-

t
0

-


(

lN
+
m

)


T


)




+

n

(


(

n
+
kNP

)



T
s


)


)



exp

(


2

i

πΔ


f

(

n
+
kNP

)



T
s


+

i

ϕ


)


=



c



n
P



*

(





l
=
0


M
-
1







m
=
0


N
-
1





c
m




p
h

(


nT
s

+


(

k
-
l

)


NT

-

t
0

-
mT

)




+

n

(


(

n
+
kNP

)



T
s


)


)



exp

(


2

i

πΔ


f

(

n
+
kNP

)



T
s


+

i

ϕ


)








If it is assumed that the support of ph(t) is shorter than the PRP (otherwise the residual interference may be equated to noise and integrated into n(t)), i.e. its support lies in [0;T[, a single term (at most) of the double sum is non-zero, and it is a question of the one that verifies:






0



nT
s

+


(

k
-
l

)


NT

-

t
0

-
mT

<
T




This amounts to:






m
=




(


n
P

+


(

k
-
l

)


N


)

-


t
0

T










    • with l such that













(


n
P

+


(

k
-
l

)


N


)

-


t
0

T






[

0
;

N
-
1


]







    •  (if the solution for l is not in [0, M−1], we are not in the preamble).





Therefore:







x
n
k

=


c



n
P



*

×

(



c




(


n
P

+


(

k
-
l

)


N


)

-


t
0

T








p
h

(


nT
s

+


(

k
-
l

)


NT

-

t
0

-
mT

)


+

n

(


(

n
+
kNP

)



T
s


)


)

×

exp

(


2

i

πΔ


f

(

n
+
kNP

)



T
s


+

i

ϕ


)






Generally, the succession c*ncn−Δ has a phase increment of 2πΔ/N, even considering a modulo N for the edge effects if N is even (i.e. when n−Δ<0 or n−Δ>N−1), this corresponding to a frequency of







Δ

NT
s


.




Applying this to the present case, and down-sampling by a factor P,






Δ
=




n
P



-





n
P

-


t

0

m


T







(


with



t

0

m



=


t
0

[
NT
]


)

.









Then
:






Δ
=





t

0

m


T



+
ϵ







where
:






ϵ
=

{



0





if



n
P


-



n
P








t

0

m


T

-




t

0

m


T









1


otherwise








Taking into account the frequency offset, the frequency fd of the sequence xnk (for a set k value, and n varying from 0 to NP−1) is:







f
d

=



1

NPT
s




(





t

0

m


T



+
ϵ

)


+

Δ

f






Estimating fd allows to obtain a relationship between t0 and Δf.


According to the invention, the second preamble portion transmitted after the first preamble portion comprises a repeated symbol equal to the complex conjugate, u*(t), of the symbol u(t) and, considering this conjugated symbol instead of the preceding one, the ynk are obtained in a similar way to described with reference to the first preamble portion, but multiplying by d instead of d*:







y
n
k

=


c



n
P




×

(



c




(


n
P

+


(

k
-
l

)


N


)

-


L
0

T




*




p
h

(


nT
s

+


(

k
-
l

)


NT

-

t
0

-
mT

)


+

n

(


(

n
+
kNP

)



T
s


)


)

×

exp

(


2

i

πΔ


f

(

n
+
kNP

)



T
s


+

i

ϕ


)






Depending on the ynk, the equivalent of fd, which is denoted fg, is obtained, i.e. the frequency of the ynk:







f
g

=



-

1

NPT
s





(





t

0

m


T



+
ϵ

)


+

Δ

f






Knowledge of fd and fg makes it possible to determine the value of t0 and/or the value of Δf (more exactly t0m: for the time synchronization to the preamble, i.e. what is being sought), with a view to achieving time synchronization (depending on t0m) and/or frequency synchronization (depending on Δf).


To avoid ambiguities in the estimation of Δf, it is necessary to have a phase rotation between two pulses less than π in absolute value, this corresponding to









"\[LeftBracketingBar]"


Δ

f



"\[RightBracketingBar]"


<


1

2

T


.






FIG. 1 shows the steps of a synchronizing method in one embodiment of the invention, exploiting the general principles explained above.


In a step 101, the transmitter 10 constructs and transmits an IR-UWB signal in which the data packets each comprise a preamble, comprising a first preamble portion v(t) repeating M times (with M greater than or equal to 2) the symbol u(t), and comprising, after the first preamble portion, a second preamble portion repeating M′ times (with M′ greater than or equal to 2) the symbol u*(t). When M is equal to M′, the second preamble portion is equal to v*(t).


In a step 102, the RF module 22 of the receiver 20 receives the packets resulting from this transmission and transposes them to baseband. Using the same names as those used in the description of the general principles of the invention above, the processing module 21 after sampling (Ts) obtains the values sn depending on the first preamble portion of a packet in question.


In a step 103, these successive values of sn are divided into slices by the processing module 21, which then determines, for at least one slice of size NP, the values wnk=sn+kNP where k is the number of the slice in question and n the index within the slice (n∈custom-character0;NP−1custom-character).


In a step 104, the processing module 21 computes xk=wk·d* and thus determines the xnk, for at least one slice (the slice indexed k) and for n=0 to NP−1.


The processing operations indicated above in steps 102-104 relative to the first preamble portion are also carried out relative to the second preamble portion: the processing module 21 thus determines the ynk′, for at least one slice (indexed k′) and for n=0 to NP−1 (k′ may or may not be equal to k).


In a step 105, the processing module 21 determines the frequency fd of the sequence xnk text missing or illegible when filed


The frequency fd is, depending on the embodiment, determined based on a single slice of the xnk or indeed on a plurality of slices (for example by averaging the various frequency values obtained in various slices), this improving the accuracy of the determined estimate. The same goes for the frequency fg relative to the ynk. There are various ways of determining these frequencies: using the discrete Fourier transform described below or computing the variation in average phase between two PRPs (by finding the argument of the average of the conjugate complex products of samples spaced apart by one PRP) and division by 2πT etc.


In a step 106, the processing module 21 then computes at least one of the parameters Δf and t0m, based on the values of the frequencies fd and fg obtained in step 105 and on the following system of equations:







f
d

=



1

NPT
s




(





t

0

m


T



+
ϵ

)


+

Δ

f









f
g

=



-

1

NPT
s





(





t

0

m


T



+
ϵ

)


+

Δ

f






ϵ being such as defined above (in the case described below, it is the estimate of n that will give ϵ, the n coming from the FFT having the strongest signal. In practice, the n that is of interest is in the pulse. The support of p(t) starts before the pulse, the t0 is with respect to the start of the support and therefore necessarily the fractional part of t0/T will be smaller than that of n/P and therefore it will always be the case that ϵ=0).


Next, the processing module 21 performs at least one step 107 of synchronization with respect to the packet in question, among a frequency synchronization depending on the value obtained for Δf and a time synchronization depending on the value obtained for t0m.


The frequency synchronization can be achieved by applying a correction to the phase of the received samples sn, for example by multiplying them by exp







(


2

i

π

Δ


f
est


n


T
s


)

;




and the time synchronization by shifting the received samples with respect to time.


Subsequent processing is then carried out in one embodiment, once synchronization to the received packet has been achieved, based on this processing on its preamble: decoding the data in the field Payload 44, measuring time of arrival (for location purposes) depending on predefined symbols present in the packet, etc.


The present invention makes it possible to achieve a synchronization that is low-SNR (and that therefore uses long sequences, and that gives rise to the accumulation of a high number of pulses) in the presence of conventional levels of central frequency offset (CFO), typically about 20 or 40 ppm.


By way of example in the context of a digital application, N=1024, T=8 ns, Ts=500 ps and the Gaussian pulse has a −10 dB bandwidth of 500 MHz, as shown in FIG. 5:







p

(
t
)

=

A



exp

(

-


(

t
τ

)

2


)








    • where A is the amplitude and τ=1.37 ns (to obtain a band of 500 MHz).





In one embodiment, the processing module 21 estimates the values of fd and fg using a discrete Fourier transform (it is possible to include a step of detecting the presence of the preamble by comparing the obtained Fourier-transform values with a threshold as explained below). For given k, the sequence xnk has a length NP, and therefore the sub-sampled sequences xnP+n0k have a length N (n0custom-character0;P−1custom-character).


Let DFT be the Fourier-transform function:







X
m


k
d

,

n
0



=



DFT

(

x

nP
+

n
0



k
d


)


m





0
;

N
-
1









(discrete Fourier transform of a sequence of length N)

    • where kd corresponds to one slice.


Let nd be the value of n0 such that the maximum of Xmkd,n0 is the maximum over the n0 of the maxima over the m:







n
d

=

arg




max

n
0


(


max
m




"\[LeftBracketingBar]"


X
m


k
d

,

n
0





)






This amounts to choosing the shift of the sub-sampling that samples the pulses at their maximum.



FIG. 6 shows, with frequency on the x-axis and the amplitude on the y-axis, the Fourier transforms of the sequences xnP+n0kd (here nd=12 and {circumflex over (f)}d=−25.4 MHz).


Let mdcustom-character0;N−1custom-character be the index of the maximum of the modulus of Xmkd,nd:







m
d

=

arg


max
m





"\[LeftBracketingBar]"


X
m


k
d

,

n
d





"\[RightBracketingBar]"









m





0
;

N
-
1




.





In one embodiment, the value of the maximum may be used to detect the preamble, as mentioned above, by comparing it with a threshold.


The processing module 21 determines an estimate of fd:









f
ˆ

d

=



{







m
d

NT



if



m
d


<

N
2










m
d

NT


-


1

T
s




if



m
d





N
2










The processing module 21 does the same on the second preamble portion (corresponding to the conjugated symbol). The estimate of nd is still valid, and therefore the following is computed directly:







Y
m


k
g

,

n
d



=

DFT

(

x

nP
+

n
d



k
g


)







    • where kg corresponds to a slice in which the conjugated sequence is present. Whether or not the conjugated sequence is present may be determined by comparing the value of the maximum of the modulus of the Fourier transform with a threshold.





Let mgcustom-character0;N−1custom-character be the index of the maximum of the modulus of Ymkg,nd:







m
g

=

arg


max
m





"\[LeftBracketingBar]"


Y
m


k
g

,

n
d





"\[RightBracketingBar]"







The processing module 21 then determines an estimate of fg:









f
ˆ

g

=



{







m
g

NT



if



m
g


<

N
2










m
g

NT


-


1

T
s




if



m
g





N
2










From these estimates, the estimate of the frequency offset is deduced:






=




f
ˆ

d

+


f
ˆ

g


2





The estimates of fd and fg are made modulo 1/T (Fourier transform of a signal sampled with the period PTs=T), and therefore the estimate of custom-character is modulo 1/2T; therefore, to avoid any ambiguity it is necessary for |Δf|<1/4T.


In the above example, P DFTs are performed (one for each n0 from 0 to P−1). In other embodiments, only any number of DFTs greater than or equal to 1 and strictly less than P is performed and taken into account for the estimates, while bearing in mind that the closer this number is to P the better the accuracy of the estimate.


With T=8 ns, |Δf|<31 MHz are obtained. For a central frequency of about 10 GHz (case of the highest channel of “IEEE Standard for Low-Rate Wireless Networks,” in IEEE Std 802.15.4-2020 (Revision of IEEE Std 802.15.4-2015), vol., no., pp. 1-800, Jul. 23, 2020), the relative offset is 3100 ppm (the oscillators conventionally used are better than a few tens of ppm). The tolerated frequency offset depends only on T and not on N. This makes it possible to use long sequences to tolerate low SNR. Conversely, if it is desired to be able to tolerate 40 ppm, this permits distances between pulses ranging up to 625 ns.


To improve accuracy, a plurality of techniques may be used complementarily in embodiments:


First of all, the indices md and mg must theoretically be of same parity. Specifically, if t0m is zero, the fd and fg would be equal. When t0m increases by T, then md increases by 1 and mg decreases by 1 and therefore they keep the same parity.


Hence, if md and mg do not have the same parity, the value of the one thereof whose second largest Fourier-transform value (i.e. the second largest value among the |Xmkd,n0| for md and the second largest value among the |Ymkg,n0| for mg) is closest to the maximum is then modified. The value of the retained index (i.e. the value of the one retained among md and mg) will be the value of the index of this second value. For example, if md=2 and mg=7, the following are computed






{






D

d

g


=



"\[LeftBracketingBar]"



X
2


k
d

,

n
0







"\[LeftBracketingBar]"


-



"\[LeftBracketingBar]"


X
1


k
d

,

n
0





"\[RightBracketingBar]"













D

d

d


=



"\[LeftBracketingBar]"



X
2


k
d

,

n
0







"\[LeftBracketingBar]"


-



"\[LeftBracketingBar]"


X
3


k
d

,

n
0





"\[RightBracketingBar]"













D

g

g


=



"\[LeftBracketingBar]"



Y
7


k
g

,

n
0







"\[LeftBracketingBar]"


-



"\[LeftBracketingBar]"


Y
6


k
g

,

n
0





"\[RightBracketingBar]"













D

g

d


=



"\[LeftBracketingBar]"



Y
7


k
g

,

n
0







"\[LeftBracketingBar]"


-



"\[LeftBracketingBar]"


Y
8


k
g

,

n
0





"\[RightBracketingBar]"










.





If, for example, Ddd is the smallest of the four differences, md will be corrected to give it the value 3 instead of 2, mg will remain at 7. Likewise, if Dgg is the smallest, mg will be corrected to give it the value of 6 instead of 7 and md will remain unchanged. Care must be taken with edge effects: the left-side neighbour of 0 is N−1, and the right-side neighbour of N−1 is 0.


As a consequence, the resolution of the estimator of fd and fg (here the increment of the transform) is 1/NTs. To improve this and therefore improve the resolution of custom-character by seeking the fractional part of the index of the maximum of the Fourier transform, the phase rotation between two successive Fourier transforms (it is thus necessary for M to be greater than or equal to 3) is computed for the index md:







Δφ
0

=

arg



(


X

m
d




k
d

+
1

,

n
d




c

o

n


j

(

X

m
d



k
d

,

n
d



)


)






The sought fractional part is Δφ0/2π


To take this fractional part into account, attention must be paid to the case where the frequency fd falls in the middle of two Fourier-transform frequencies. This may be detected in two ways: either |Δφ0| is close to π, or |Xmdkd,nd| is close to |Xmd+1kd,nd| or |Xmd−1kd,nd|. The sign of Δφ0 must be consistent with the index of the second maximum. Otherwise, the processing module 21 adds or subtracts 2π to or from Δφ0. Let md2 be the neighbouring index (md2 is equal to either md−1 or md+1 paying attention to edge effects (the value is modulo N) of md) such that |Xmdkd,nd| and |Xmd2kd,nd| are close (i.e. their difference is less than a set threshold, for example less than 0.3 in relative terms), the processing module applies the following rules (while however paying attention to the edge effects: if md is equal to N−1 and md2 is equal to 0, the difference is considered to be −1 and not N−1 (0 and N−1 are 1 apart)):

    • if Δφ0<0 and md−md2<0 then Δφ=Δφ0+2π
      • if Δφ0>0 and md−md2>0 then Δφ=Δφ0−2π
    • otherwise Δφ=Δφ0


The final frequency-shift estimate made by the processing module is then:






=





f
ˆ

d

+


f
ˆ

g


2

+

Δφ

2

π

N

T







The performances are illustrated in FIG. 7. These performances were obtained with a simulation of 10000 samples with frequency deviations inducing phase rotations of up to 10π in a sequence (i.e. 610 kHz), which were uniformly distributed. The SNR is −10 dB in a pulse (channel with Gaussian additive white noise). The other numerical values had the values indicated above. Thus, it may be seen from FIG. 7 that the estimation error is less than 6400 Hz in 99% of cases.


The estimate of the time synchronization is deduced from the frequency estimate:






=



(


f
d

-

)


NP


T
s


-
ϵ





It is possible to consider ϵ to always be zero (cf. above). The fractional part of t0m/T is given by nd. Thus the estimate of t0m is given by:








t
ˆ


0

m


=



(



f
ˆ

d

-

)


N


T
2


+


n
d



T
s







The performances obtained with the same simulation as above are given in FIG. 8. The synchronization error is at most 500 ps (1 sample), which is largely acceptable in view of the pulse shape shown in FIG. 5.


The method may be implemented by executing software instructions on a processor. Alternatively, it may be implemented by dedicated hardware, typically a digital integrated circuit, either specific (ASIC) or based on programmable logic (for example FPGA/Field Programmable Gate Array).

Claims
  • 1. A method for synchronizing a telecommunications receiver device receiving an impulse radio ultrawide-band signal comprising data packets, a data packet comprising a preamble, said method comprising a step of synchronizing the receiver device to the received signal depending on said preamble, said method wherein the following steps are implemented by the telecommunications receiver device, the preamble comprising a first preamble portion of at least two occurrences of a first preamble sequence of N pulses spaced apart by a period T and that are each equal to a reference pulse weighted by a complex coefficient cn, n=0 to N−1 indicating the rank of the pulse in the first sequence, said preamble further comprising a second preamble portion of at least two occurrences of a second preamble sequence equal to the complex conjugate of the first sequence: i/ sampling the preamble with a sampling period Ts, T=P×Ts with P an integer greater than or equal to 1;ii/ considering the NP successive samples sn, for n=0 to NP−1, of a slice, of duration NT, of the first preamble portion of a received signal packet, determining the sequence of values,
  • 2. The method for synchronizing a telecommunications receiver device according to claim 1, wherein the receiver device implements the following steps: performing, for n=0 to NP−1, a discrete Fourier transform, denoted DFT, of the xn determined for an indexed slice kd, then determining
  • 3. The method for synchronizing a telecommunications receiver device according to claim 2, wherein the receiver device determines an estimate of the frequency shift Δf using the following formula:
  • 4. The method for synchronizing a telecommunications receiver device according to claim 2, wherein if md and mg do not have the same parity, the value of that of md and mg whose second largest Fourier-transform value is closest to the maximum is then modified, the value of the modified index being set equal to the index of this second value.
  • 5. The method for synchronizing a telecommunications receiver device according to claim 2, wherein the receiver device implements the following steps: computing Δφ0=arg(Xmdkd+1,ndconj(Xmdkd,nd))letting md2 be the index neighbouring md such that |Xmdkd,nd| and |Xmd2kd,nd| are spaced apart by less than a predefined value, the value of Δφ is determined by applying: if Δφ0<0 and md−md2<0 then Δφ=Δφ0+2πif Δφ0>0 and md−md2>0 then Δφ=Δφ0−2πotherwise Δφ=Δφ0 determining an estimate of the frequency shift Δf using the following formula
  • 6. A computer program, intended to be stored in the memory of a telecommunications receiver device further comprising a microcomputer, said computer program comprising instructions that, when they are executed on the microcomputer, implement steps i, ii, iii and iv of a method according to claim 1.
  • 7. A telecommunications receiver device, configured to receive an impulse radio ultrawide-band signal comprising data packets, a data packet comprising a preamble, said receiver device being configured to perform an operation of synchronizing to the received signal depending on said preamble, said device wherein, the preamble comprising a first preamble portion of at least two occurrences of a first preamble sequence of N pulses spaced apart by a period T and that are each equal to a reference pulse weighted by a complex coefficient cn, n=0 to N−1 indicating the rank of the pulse in the first sequence, said preamble further comprising a second preamble portion of at least two occurrences of a second preamble sequence equal to the complex conjugate of the first sequence, the device being configured to sample the preamble with a sampling period Ts, T=P×Ts with P an integer greater than or equal to 1;the device further being configured to, considering the NP successive samples sn, for n=0 to NP−1, of a slice, of duration NT, of the first preamble portion of a received signal packet, determine the sequence of values,
  • 8. The telecommunications receiver device according to claim 7, configured to perform, for n=0 to NP−1, a discrete Fourier transform, denoted DFT, of the xn determined for an indexed slice kd, then to determine
  • 9. The telecommunications receiver device according to claim 8, configured to determine an estimate of the frequency shift Δf using the following formula:
  • 10. The telecommunications receiver device according to claim 8, configured to, if md and mg do not have the same parity, modify the value of that of md and mg whose second largest Fourier-transform value is closest to the maximum, the value of the modified index being set equal to the index of this second value.
Priority Claims (1)
Number Date Country Kind
2311266 Oct 2023 FR national