RF receiver with frequency tracking
09998159 ยท 2018-06-12
Assignee
Inventors
Cpc classification
H04L27/2273
ELECTRICITY
H04L7/0087
ELECTRICITY
H04L7/0054
ELECTRICITY
H04L27/3827
ELECTRICITY
H04L27/266
ELECTRICITY
H04B1/1036
ELECTRICITY
International classification
H04B1/10
ELECTRICITY
G06F7/48
PHYSICS
Abstract
A robust frequency drift tracking receiver. The received signal is translated to an intermediate frequency in the RF stage by a quadrature demodulator, and is then brought into the base band by a digital mixer made by a CORDIC. A base band processing stage allows for a synchronization of the receiver relative to the data frame, to estimate data and to output a counter-reaction signal to the CORDIC, obtained by integration of successive frequency corrections, with a predetermined step.
Claims
1. A frequency drift tracking receiver designed to receive packets of symbols modulating an RF signal, said receiver comprising an RF stage to translate the RF signal received at an intermediate frequency with a quadrature mixer and to digitise the signal thus obtained, said frequency drift tracking receiver comprising: a digital mixer using a Coordinate Rotation Digital Computer (CORDIC) to bring the frequency translated signal thus digitised into a base band, the CORDIC making a phase rotation of each sample as a function of an estimate of the intermediate frequency; and a base band digital processing module, implemented by circuitry, designed to be synchronised with packets of symbols and to estimate data transmitted in said packets, and to determine a sign of a variation in frequency drift for each symbol from the data thus estimated, the intermediate frequency being estimated by integration of corrections of elementary frequency steps by a predetermined value modified by the signs thus determined.
2. The frequency drift tracking receiver according to claim 1, wherein the base band digital processing module comprises at least three filters matched to a shape of a pulse that was used to modulate the RF signal, a first matched filter being centred on a zero frequency, a second matched filter being offset relative to the first matched filter by a positive predetermined frequency difference and a third matched filter being offset relative to the first matched filter by a negative predetermined frequency difference, output signals from the three matched filters being input firstly to a switch and to a synchronisation module, implemented by the circuitry, controlling said switch to select a matched filter output signal.
3. The frequency drift tracking receiver according to claim 2, wherein each symbol packet comprises a synchronisation preamble, a predetermined frame delimiter and a data frame, the synchronisation module searches for a frame delimiter in matched filter output signals and selects the output signal in which the frame delimiter was found.
4. The frequency drift tracking receiver according to claim 3, wherein the selected matched filter output signal is then resampled by a decimator, which is implemented by the circuitry and controlled by the synchronisation module, the decimator providing samples at a symbol frequency.
5. The frequency drift tracking receiver according to claim 4, wherein the synchronisation module determines a highest amplitude sample in at least one sequence of samples corresponding to the pulse, and controls the decimator so as to select this sample for each symbol.
6. The frequency drift tracking receiver according to claim 5, wherein data were modulated by a Differential Binary Phase Shift Keying (DBPSK) modulation, each sample at a decimator output is multiplied with a conjugate of the previous sample by a DBPSK demodulator to provide symbols of a Binary Phase Shift Keying (BPSK) modulation constellation.
7. The frequency drift tracking receiver according to claim 6, wherein BPSK symbols at the output from the demodulator are multiplied in an angular correction module, which is implemented by the circuitry, by a conjugate of a magnitude characteristic of a rotation of the BPSK modulation constellation to output corrected symbols.
8. The frequency drift tracking receiver according to claim 7, wherein an estimator, implemented by the circuitry, makes a hard estimate on the corrected symbols to estimate data.
9. The frequency drift tracking receiver according to claim 8, wherein the estimator estimates data by determining a sign of a real part of the corrected symbols.
10. The frequency drift tracking receiver according to claim 9, wherein the characteristic magnitude is filtered by a low pass filter before being input to said angular correction module.
11. The frequency drift tracking receiver according to claim 10, further comprising a second switch, connected to the synchronisation module and to an angular rotation estimating module that outputs symbols forming the frame delimiter during a synchronisation phase and said filtered characteristic magnitude during reception of the data frame, to the angular correction module.
12. The frequency drift tracking receiver according to claim 8, wherein an angular rotation estimating module, implemented by the circuitry, multiplies BPSK symbols at the output from the DBPSK demodulator with symbols characteristic of estimated data to supply the magnitude characteristic of the rotation of the BPSK constellation between two consecutive symbols.
13. The frequency drift tracking receiver according to claim 12, further comprising a module, implemented by the circuitry, determining a direction of variation of the frequency drift starting from a sign of an imaginary part of said magnitude characteristic.
14. The frequency drift tracking receiver according to claim 2, wherein the synchronisation module detects a frame delimiter in several output signals, and selects a highest power output signal amongst these output signals.
15. The frequency drift tracking receiver according to claim 1, wherein a frequency pitch is less than in which is a symbol period.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) Other characteristics and advantages of the invention will become clear after reading a preferred embodiment of the invention with reference to the attached figures among which:
(2)
(3)
(4)
(5)
(6)
(7)
DETAILED PRESENTATION OF PARTICULAR EMBODIMENTS
(8) We will consider a receiver with the general architecture shown in
(9) The receiver comprises an RF stage 110, connected to the antenna 100, with the function of bringing the RF signal to a floating intermediate frequency, f.sub.i.sup.a, and to sample it, a digital mixer 120, with the function of bringing the signal into the base band, and a base band digital processing module 130 that will be described in detail later.
(10) The digital mixer 120 is made from a CORDIC (COordinate Rotation Digital Computer) that does a phase rotation at every instant to bring the intermediate frequency signal f.sub.i.sup.a into the base band. More precisely, if the sampling period is denoted T.sub.e and the sampling index is denoted k, the phase rotation made at instant kT.sub.e is:
=2f.sub.mix.sup.d.Math.kT.sub.e modulo 2(1)
in which, f.sub.mix.sup.d={circumflex over (f)}.sub.i.sup.a is a frequency value received by the CORDIC corresponding to an estimate of f.sub.i.sup.a.
(11) The CORDIC achieves this phase rotation by elementary rotations of values +d or d (d being positive) depending on the sign of the phase rotation. The elementary phase increment d is chosen such that tan(d)=2.sup.p where p varies from 0 to N in which N is chosen to be sufficiently large depending on the required degree of precision. More precisely, in iteration p, the CORDIC receives an input vector v.sub.p and calculates an output vector v.sub.p+1 for each elementary rotation such that:
v.sub.p+1=R.sub.v.sub.p(2)
where R.sub. is the rotation matrix of .Math.d defined by:
(12)
(13) It will be understood that the elementary rotation operation is particularly easy because it is reduced to simple offsets and additions/subtractions.
(14)
(15) This includes a loan noise amplifier LNA, 210, a quadrature mixer (mixers 221,222), translating the signal central frequency, f.sub.0, to an intermediate frequency f.sub.i.sup.a=f.sub.0f.sub.mix.sup.a in which f.sub.mix.sup.a is the frequency of the oscillator outputting sine curves in quadrature to mixers 221, 222. It is important to note that in this case the first intermediate frequency f.sub.i.sup.a is not a fixed frequency but that it varies as a function of the chosen central frequency, the drift of the central frequency chosen for the transmission and the drift of the oscillator.
(16) Signals in quadrature at the output from the mixer are then filtered by means of low pass filters 231, 232 before being amplified, and are then converted using, analogue-digital converters 251 and 252. If applicable, the signals in quadrature can then be passed through a low pass filter step in digital and then a first decimation step (not shown).
(17) In any case, the pairs of samples in quadrature, after being filtered and decimated when applicable, are input to the digital mixer 120 of
(18) For reasons of convenience, connections between the modules of this figure are indicated by simple arrows. However it will be understood that the processed samples are complex samples are consequently comprise a real part and an imaginary part.
(19) The base band digital processing stage comprises an optional filtration/decimation stage 310, for example made in the form of a CIC (Cascaded Integrator Comb) filter. This CIC filter can eliminate any interferers and reduce the sampling rate.
(20) The baseband digital signal is then filtered by three matched filters 321, 322, 323 arranged in parallel. Filter 322 is a filter matched to the shape of the transmitted filters, centred on the null frequency. Filters 321 and 323 are versions of the same matched filter, each shifted by a frequency offset +F, F from the null frequency. In general, it would be possible to allow for a plurality of matched filters with the same transfer function except, for a frequency offset, one of them being centred on the null frequency and the others being centred symmetrically about this frequency.
(21) The matched filters are active simultaneously in a first phase called the synchronisation phase that will be described in detail later. At the end of this synchronisation phase, the matched filter that is best centred on the base band signal will be selected. This matched filter then remains active throughout the remainder of the packet, the other matched filters being deactivated or their outputs being inhibited.
(22) In this case, output signals from the three matched filters 321-323 are input firstly to the switch 330 and secondly to the synchronisation module 340.
(23) The synchronisation module 340 determines the matched filter for which the output signal has the highest power during the synchronisation period, for example by comparing the energy of the different output signals during the duration of the synchronisation period. The synchronisation module 340 also uses the output signals to determine the beginning of the data frame and selects the matched filter accordingly. Finally, the synchronisation module 340 determines symbol sampling instants, each symbol giving rise to a plurality of samples at the output from the matched filters.
(24) More precisely,
(25) The synchronisation module then selects the matched filter for which the output signal was used to identify the SFD delimiter. If the synchronisation module identifies the SFD delimiter in several output signals, the synchronisation module determines the one with the highest power and selects the matched filter accordingly, using the switch 330.
(26) Packet data are in the form of DBPSK (Differential Binary Phase Shift Keying) symbols or possibly BPSK (Binary Phase Shift Keying) symbols, each symbol modulating a pulse filtered by a Pulse Shaping Filter (PSF).
(27) At the receiver end, at the output from the selected matched filter, each symbol gives rise to a plurality K of successive samples in which K is the ratio between the sample rate at the output from module 310 and the symbol rate, namely
(28)
The synchronisation module 340 determines the optimum sampling instant among the plurality of successive instants (that with the highest amplitude).
(29) Signal samples at the output from the selected matched filter are resampled by the decimator 350. To achieve this, the synchronisation module 340 supplies the optimum instant to a decimator 350, with decimation factor K. Consequently, output signals from the decimator 350 are at the symbol rate.
(30) The modulation used by the transmitter may be a BPSK modulation, or preferably a DBPSK modulation.
(31) When the transmitter uses a differential modulation (DBPSK), the samples output from the decimator 350 are firstly subjected to a differential demodulation at 355. This is done in a manner known in itself by calculating the Hermitian product of the current sample and the previous sample. Obviously, the differential demodulator 355 is not present in the case of a BPSK type direct modulation.
(32) Output samples from the decimator 350, possibly after differential demodulation 355, are BPSK signals. An angular correction is made on them at 360, to compensate for the rotation of the modulation constellation as described below. The symbols are then estimated by making a hard decision using the estimator 370, from the samples thus corrected.
(33) The module 380 estimates a magnitude characteristic of the angular rotation of the modulation constellation starting from estimated symbols and output samples from the decimator 350. This characteristic magnitude is filtered by means of a low pass filter (LPF) before being input to the angular correction module 360.
(34) Said characteristic magnitude is also input to the module 390 that deduces the direction of variation of the frequency drift, .sub.n, between two consecutive symbols.
(35) The integrator module 395 summates successive frequency corrections, the successive corrections being equal to .sub.n.Math.f in which f is a predetermined frequency step. This sum of successive corrections is input to the digital mixer 120 as an estimate of the intermediate frequency, .
(36) Operation of the base band digital processing stage will be described for the case of a DBPSK modulation. The signal transmitted by the emitter can then be expressed in the following form:
(37)
in which A is the amplitude, of the transmitted signal, f.sub.0 is the central frequency of the signal, the phase at the origin, p.sub.0(t) the pulse shape (for example in Root Raised CosineRRC), T is the symbol period and d.sub.k are the DBPSK symbols. Remember that DBPSK symbols are obtained from data bits b.sub.k using:
b.sub.k=b.sub.kb.sub.k1
d.sub.k=+1 if b.sub.k=0
d.sub.k=1 if b.sub.k=1(5)
and conversely:
d.sub.kd.sub.k1=+1b.sub.k=0
d.sub.kd.sub.k1=1b.sub.k=1(5)
The shape of the resampled signal at the output from the decimator 350 is then as follows:
(38)
in which B is the amplitude of the signal at the output from the selected matched filter, f.sub.1 is the sum of the frequency of the analogue mixer (f.sub.mix.sup.a) and the frequency of the digital mixer (f.sub.mix.sup.d), is a phase dependent on the phase of the carrier and phases of the mixers, p.sub.1(t) is the self-correlation of the pulse shape p.sub.0(t) (or equivalently, the signal p.sub.0(t) filtered by the matched filter), and N(n) is a noise sample.
(39) After differential demodulation, the samples output from module 355 are expressed in the following form:
(40)
(41) If it is assumed that the signal to noise ratio is sufficient, in other words the terms in which the noise appears can be neglected, then:
.sub.n=B.sup.2exp(i2(f.sub.0f.sub.1)T)d.sub.nd.sub.n1(8)
(42) When frequency tracking is done by the digital mixer, we obtain:
|2(f.sub.0f.sub.1)T|<</2(9)
(43) If, for the moment, we ignore the angular correction in module 360, the estimator 370 estimates the BPSK values, c.sub.n, using the hard decision:=sgn(Re(.sub.n))(10)
the data bits being deduced traditionally
(44)
with the modulation convention defined in (5).
(45) The module 380 estimates the instantaneous angular rotation of the modulation constellation starting from:=arg(.sub.n
)(11-1)
or more precisely, estimates the corresponding characteristic magnitude:
a.sub.n=B.sup.2=.sub.n
(11-2)
(46) It is important to note that multiplying .sub.n by the estimated symbols make the process independent of the influence of data.
(47) The complex material a.sub.n is advantageously filtered by a low pass filter (LPF), for example a recursive filter with a forgetting factor. The complex magnitude thus filtered is used to compensate for rotation of the constellation in the module 360 by calculating the Hermitian product:
.sub.n.sup.c=.sub.n(12)
(48) Thus when angular compensation is active, the corrected samples, .sub.n.sup.c, in other words samples corrected by the angular correction, are used in the expression (10).
(49) The module 390 determines the direction of variation (or the frequency drift) between consecutive samples:
.sub.n=sgn(Im(.sub.n))(13)
(50) This sign calculation is particularly simple, it makes it possible to robustly monitor the frequency variation. The frequency correction is made in steps of f, in which:
(51)
in which is a predetermined phase skip.
(52) Preferably, f< 1/16T will be chosen such that the corresponding phase skip,
(53)
does not disturb the bit estimate.
(54) The integrator module 395 then calculates the frequency f.sub.mix.sup.d, sum of the supposed initial frequency f.sub.mix.sup.d.sup._.sup.init and successive corrections:
(55)
(56) This frequency is input to the digital mixer 120 as an estimate of the intermediate frequency, . The digital mixer rotates the phase .sub.n+1 obtained by recurrence:
.sub.n+1=.sub.n2f.sub.mix.sup.dT(16)
(57) Using this frequency tracking, the signal output from the digital mixer at frequency f=f.sub.0f.sub.1, where f.sub.1=f.sub.mix.sup.a+f.sub.mix.sup.d, is kept within the spectral response of the selected matched filter.
(58) The angular rotation of the modulation constellation is compensated firstly during the synchronisation phase and secondly during reception of data.
(59) During the synchronisation phase, the receiver knows the sequence of pilot symbols c.sub.n.sup.p of the preamble. The sequence of output symbols from each matched filter is correlated with the sequence of pilot symbols. Successive correlation peaks can be used to determine decimation instants at the symbol frequency in the decimator 350.
(60) Furthermore, knowledge of pilot symbols can be used to estimate the angular rotation using:
a.sub.n.sup.p=.sub.n(c.sub.n.sup.p)*(17)
(61) The symbols c.sub.n.sup.p are output directly from the synchronisation 340 to the angular correction module 360. Thus, during the synchronisation phase, retroaction of the output from the estimator 370 to the angular correction module is prevented. During this phase, there is no more retroaction from the integrator module 395 to the CORDIC 120.
(62) The switch 365 changes position between the synchronisation phase and the data reception phase. More precisely, during the synchronisation phase, it transmits values of correlation peaks (possible filtered using a low pass filter) output from the synchronisation module 340 and (during the data reception phase), symbols output from the tow pass filter 385, to the angular correction module 360.
(63) The angular rotation is compensated using the Hermitian product .sub.n.sup.c=.sub.n(a.sub.n.sup.p)* during the synchronisation phase and using the .sub.n.sup.c=.sub.n product during the data reception phase. This compensation corrects the precise rotation of the constellation due to the offset between the frequency f and the real frequency difference f.sub.ext, represented by the magnitude a.sub.n.sup.p (during the synchronisation phase) and
(during the data reception phase).
(64) The receiver disclosed above is designed to receive DBPSK symbols. However, the man skilled in the art will understand that an embodiment in which BPSK symbols are received could be envisaged as an alternative. In this case, as mentioned above, the differential demodulation module 355 is eliminated and the magnitude a.sub.n calculated by the module 380 is obtained by a.sub.n=.sub.n, in which
in this case is the BPSK symbol corresponding to bit
estimated by the estimator 370 (in other words
=+1 if
=1 and
=1 if
=0). As above, the modulation effect due to data is thus neutralised.
(65) A numeric example is given below illustrating an application of the invention to the domain of the internet of things. The signal is transmitted in the ISM band at 868 MHz. The central frequency of the signal is around 869.5 MHz in a 48 kHz band. The format of transmission packets is shown in
(66) In the following, it will be assumed that the receiver configuration parameters are the same as above.
(67)
(68) Example 510 corresponds to a zero frequency offset at the beginning of the packet and zero drift during the packet.
(69) Example 520 corresponds to a zero frequency offset at the beginning of the packet and 20 Hz/s drift during the packet.
(70) Example 530 corresponds to a 20 Hz/s frequency offset at the beginning of the packet and 20 Hz/s drift during the packet.
(71) Example 540 corresponds to a 50 Hz/s frequency offset at the beginning of the packet and 20 Hz/s drift during the packet.
(72) It can be seen that the intermediate frequency controlling the digital mixer (CORDIC) starts to follow the frequency drift after the end of the synchronisation period (40 symbols). The frequency correction by means of the CORDIC is not active during the synchronisation period.
(73) It can be seen in examples 510-530, that the matched filter centred on 0 Hz is selected, the drift being caught up by the digital mixer later when the initial offset is larger (see 530 compared with 520).
(74) In example 540, the matched filter centred on +50 Hz is selected. Once again, the intermediate frequency starts to follow the frequency drift at the end of the synchronisation phase.
(75)
(76) It will be seen that the Packet Error Rate (PER) remains less than 10% when the signal to noise ratio is more than 10 dB, even in the case of a large frequency drift.