Method performed in a radio system

EP4754563A1Pending Publication Date: 2026-06-10FOCAL POINT POSITIONING LTD

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
FOCAL POINT POSITIONING LTD
Filing Date
2023-08-03
Publication Date
2026-06-10

AI Technical Summary

Technical Problem

Low-cost local oscillators used in consumer devices, such as smartphones, are relatively unstable, which affects the accuracy of GNSS positioning, especially in challenging signal environments like urban canyons or indoors.

Method used

A method that determines the frequency offset and rate offset of the local oscillator by generating a search space parameterized by hypothesized frequency and frequency rate offsets, populating this space with phase-compensated correlation signal powers, and selecting a preferred frequency offset based on the dataset, thereby correcting errors in the local oscillator.

Benefits of technology

This method effectively improves the stability of the local oscillator, enabling more accurate and reliable signal processing, such as longer coherent integration times, which is particularly beneficial in challenging signal environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure GB2023052065_06022025_PF_FP_ABST
    Figure GB2023052065_06022025_PF_FP_ABST
Patent Text Reader

Abstract

A method is disclosed comprising: (a) receiving, at a receiver, a plurality of signals from a plurality of remote sources (S201); (b) providing a plurality of local signals using a frequency reference generated by a local oscillator; (c) determining a motion of the receiver (S203); (d) generating a search space parameterized by a hypothesised frequency offset, Δf, and a hypothesised frequency rate offset, Δf, of the frequency reference (S205); (e) populating the search space based on signal powers of a plurality of phase-compensated correlation signals corresponding to respective hypotheses of Δf and Δf (S209); and (f) selecting a preferred frequency offset as a frequency offset of the frequency reference based on the dataset (S213); wherein for each of the plurality of received signals used to populate the dataset, a plurality of phase-compensated correlations signals are calculated by: correlating the received signal with a corresponding one of the local signals to calculate a correlation signal; and calculating a phase-compensated correlation signal by providing phase compensation of at least one of the local signal, the received signal and the correlation signal using a phasor sequence. A corresponding system is also disclosed.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] METHOD PERFORMED IN A RADIO SYSTEM

[0002] FIELD OF THE INVENTION

[0003] The present invention relates to a method, typically performed in a radio system. In particular, the invention is directed to a method that can determine an error in a frequency reference provided by a local oscillator. The invention has particular application in GNSS positioning.

[0004] BACKGROUND

[0005] Modem devices such as cellular phones have local oscillators that can provide a frequency reference for a variety of different applications. One application that requires a frequency reference from a local oscillator is GNSS positioning. In GNSS positioning applications, a local oscillator provides a frequency reference that is used to generate a local replica of a GNSS signal received from a positioning satellite. As is known in the art, a plurality of local replicas with different time offsets can be correlated with a signal received from a satellite to determine the time taken for the received signal to travel from the satellite to the receiver, and hence the distance from the receiver to the satellite. By performing such ranging calculations for at least four satellites, a position fix for the receiver may be obtained.

[0006] However, the local oscillators used in modem consumer devices are typically low- cost oscillators, such as quartz oscillators. These local oscillators are often relatively unstable compared to high-cost oscillators such as atomic clocks. For many positioning applications this is not especially important since absolute time is calibrated in GNSS positioning calculations, and even low-cost local oscillators can achieve stability over time periods that are longer than the time period over which signals are coherently integrated.

[0007] However, some positioning applications require higher stability in the local oscillator. This is particularly important in applications that require the detection of weak signals, such as those that can be found in “urban canyons” or indoor environments where building block or attenuate positioning signals. These weak signals require a long coherent integration period if they are to be detected with sufficient strength to be used in positioning calculations. It is critical to achieve local oscillator stability over the coherent integration period in order for these calculations to be effective.

[0008] It is therefore desirable to improve the stability of local oscillators. However, devices that are inherently more stable than low cost crystal oscillators - such as atomic clocks - are prohibitively expensive and impractical for modem consumer devices.

[0009] WO201 9 / 008327 and WO2019 / 063983 describe techniques for improving the stability of a low-cost local oscillator using Supercorrelation™ processing. However, there is a continued need to develop the techniques for improving the stability in local oscillators. This is particularly the case for consumer devices such as smartphones which, in addition to typically using low-cost oscillators as discussed above, also have relatively limited processing power and battery resources.

[0010] SUMMARY OF INVENTION

[0011] In accordance with a first aspect of the present invention there is provided a method, comprising:

[0012] (a) receiving, at a receiver, a plurality of signals from a plurality of remote sources;

[0013] (b) providing a plurality of local signals using a frequency reference generated by a local oscillator;

[0014] (c) determining a motion of the receiver;

[0015] (d) generating a search space parameterized by a hypothesised frequency offset, A , and a hypothesised frequency rate offset, A , of the frequency reference;

[0016] (e) populating the search space based on signal powers of a plurality of phase-compensated correlation signals corresponding to respective hypotheses of A and A , calculated for at least of subset of the plurality of received signals, to thereby generate a dataset of phase-compensated correlation signal power as a function of A and A , wherein the dataset is populated until a predetermined confidence threshold related to the dataset is exceeded; and

[0017] (f) selecting a preferred frequency offset as a frequency offset of the frequency reference based on the dataset; wherein for each of the plurality of received signals used to populate the dataset, the plurality of phase-compensated correlations signals are calculated by: calculating a plurality of phasor sequences that are indicative of the phase evolution of the received signal due to the component of the determined motion of the receiver along a selected direction of arrival of the received signal, and wherein each of the plurality of phasor sequences is further indicative a respective hypothesis pair of A and A , each of the plurality of phasor sequences being indicative of a different hypothesis pair; and calculating a plurality of phase-compensated correlation signals by, for each of the plurality of phasor sequences: correlating the received signal with a corresponding one of the local signals to calculate a correlation signal; and calculating a phase-compensated correlation signal by providing phase compensation of at least one of the local signal, the received signal and the correlation signal using the phasor sequence.

[0018] Typically, the method is performed in a radio system.

[0019] The present invention provides a technique for correcting errors in the local oscillator by determining a frequency offset of the frequency reference generated by the local oscillator. In this way, the stability of the local oscillator is effectively improved. This enables more accurate and reliable signal processing to be performed, for example by allowing longer coherent integration times. This is particularly advantageous in challenging signal environments such as urban canyons or indoors, where the received signals may have low power due to attenuation, or where reflections and multipath effects are prevalent. The local oscillator is typically a crystal oscillator such as a quartz oscillator. The local oscillator may comprise a temperature-compensated crystal oscillator (TCXO), a voltage-controlled crystal oscillator (VCXO), or a temperature-sensing crystal oscillator (TSXO).

[0020] The term “frequency offset” (A ) refers to the difference in the frequency of the frequency reference generated by the local oscillator compared to a frequency reference generated by a fully stable ideal frequency source. The frequency offset can also be referred to as a frequency error. The term “frequency rate offset” (A , equivalently A ) is an offset in the rate of change of frequency and refers to the error in the rate of change (over time) of the frequency of the frequency reference generated by the local oscillator compared to one generated by a fully stable ideal frequency source, which would have a rate of change of frequency of zero. It can also be described as the error in an estimate of the true rate of change of the frequency of the frequency reference. The method may be extended to higher order clock terms (for example the rate of change of the frequency rate), which may be advantageous if the oscillator is particularly unstable.

[0021] The local oscillator may be assumed to have substantially constant frequency and frequency rate offsets over a time period. Herein, this time period may be referred to as an “epoch” and may in some cases be equal to the coherent integration time. Embodiments of the method typically select a preferred frequency offset as the offset of the frequency reference for each epoch. In other words, the frequency reference may exhibit varying frequency and frequency rate offsets across multiple epochs which are corrected for with corresponding frequency offsets. Typically, the time period over which the sequence of steps (a) to (f) are performed constitutes an epoch for which a preferred frequency offset is selected. Typically, a preferred pair of frequency and frequency rate offsets are selected for each epoch. By selecting preferred frequency (and, typically, frequency rate) offsets for a plurality of time periods, the stability of the local oscillator is increased, leading to improved signal processing. The frequency offset of the frequency reference is selected based on a dataset of phase-compensated correlation signal power as a function of A and A . In other words, the overall time-varying frequency error is found by conducting a search of phase-compensated correlation signal power across a search space parameterized by A and A . The described methods could be extended to include higher order frequency error terms. In the present invention, the search space is advantageously populated based on processing of received signals until a predetermined confidence threshold related to the resulting dataset across the search space is exceeded. In other words, the method monitors the evolution of the dataset as it is populated with phase-compensated signal power calculations from different received signals until the predetermined confidence threshold is exceeded. Preferably, once the predetermined confidence threshold is exceeded, the method stops populating the dataset. The preferred frequency offset is preferably selected when the predetermined confidence threshold has been exceeded.

[0022] In this way, the invention optimises the search across the search space to minimise the processing power and battery resources required to determine the frequency offset of the frequency reference. This is because each point in the search space corresponds to at least one phase-compensated correlation calculation, and therefore only populating the search space until the predetermined confidence threshold is exceeded reduces the number of phase- compensated correlations required to be performed in order to determine the frequency offset. This is particularly advantageous in consumer devices such as smartphones which have limited computational and battery resources.

[0023] The dataset is generated by populating the search space based on signal powers of a plurality of phase-compensated correlation signals corresponding to respective hypotheses of A and A , calculated for at least a subset of the plurality of received signals. The subset typically comprises two or more of the plurality of received signals, preferably at least three received signals. In some embodiments, the received signals used to populate the dataset may be processed consecutively. For example, the phase-compensated correlation results for each received signal may be “added” to the search space in a consecutive manner until the predetermined confidence threshold is exceeded. In embodiments, at least some of the further received signal(s) may be processed substantially simultaneously (e.g. in parallel).

[0024] Thus, in some embodiments, the search space may be populated on a “signal by signal” basis until the predetermined confidence threshold is exceeded. Each received signal is typically transmitted from a different remote source.

[0025] Typically, the preferred frequency offset (A ) corresponds to an optimised value of the phase-compensated correlation signal power as a function of A and A . The optimised value of the phase-compensated correlation signal power is typically found by applying a mathematical optimisation process to the dataset. A suitable cost function may be applied to the dataset in order to find the optimised value of the phase-compensated correlation signal power.

[0026] In embodiments, the preferred frequency offset (A ) corresponds to a maximum value of the phase-compensated correlation signal power as a function of A and A . In other words, the preferred frequency offset may be selected by finding a maximum value of the dataset, which corresponds to the (A , A ) pair that provides the greatest phase-compensated correlation signal power. The maximum may be the global maximum of the dataset, although in some embodiments the selected frequency offset may correspond to a local maximum of the dataset.

[0027] The predetermined confidence threshold may correspond to (e.g. may be) the optimised value (of the phase-compensated correlation signal power as a function of A and A ) exceeding a predetermined threshold. For example, if the optimised value corresponds to a maximum value of the dataset, the search space may be populated until the maximum value of the dataset exceeds the predetermined value, at which point population of the search space is ceased and the preferred frequency offset is selected. Each received signal used to populate the dataset is processed over the same time period and is therefore processed with the same frequency offset of the frequency reference. Therefore, the optimised value of the dataset (e.g. a maximum value of the phase-compensated power) corresponds to the (A , A ) bin in the search space that represents the offsets closest to the true offsets of the frequency reference. By populating the dataset with a plurality of sets of phase- compensated signal powers calculated from different received signals, any erroneous results in the dataset (e.g. due to reflections or multipath interference) are suppressed in comparison to the combined correlation results representing the “true” offsets of the frequency reference. Therefore, in embodiments, the predetermined confidence threshold corresponds to (e.g. is) a minimum number of received signals used to populate the dataset. The minimum number of received signals is typically three (3), preferably five (5), more preferably ten (10).

[0028] The minimum number of received signals constituting the predetermined confidence threshold may be adjusted based on a signal environment of a receiver. For example, if the receiver is located in an “open sky” environment, the predetermined threshold may correspond to a lower number of received signals used to populate the search space compared to if the receiver is located in an “urban canyon” environment in which reflections and multipath effects are prevalent.

[0029] As has been outlined above, the search space is populated using the plurality of received signals until a predetermined confidence threshold related to the dataset is exceeded. In embodiments, the received signals used to populate the search space are ordered and / or weighted based on a property of each received signal and / or its corresponding remote source (i.e. the remote source from which the signal was transmitted). In other words, the plurality of received signals may be processed so as to calculate the corresponding sets of phase-compensated correlation signals in an ordered (e.g. consecutive) manner based on the property of the received signal and / or the corresponding remote source. Alternatively or in addition, the received signals may be weighted based on a property of each received signal and / or its corresponding remote source. The dataset is generated by populating the search space based on the phase- compensated correlation signals calculated for a plurality of received signals. This may be achieved by combining (e.g. summing) the phase-compensated correlation signal power values for each remote source in each (A , A ) bin across the search space. The values for each received signal may be combined using a simple summation (i.e. with no weighting). However, in embodiments, the values may be combined using a weighted summation based on the properties of the remote signals and / or the corresponding remote sources.

[0030] Advantageously, by ordering and / or weighting the received signals used to populate the search space, the number of received signals required to be processed in order to exceed the predetermined confidence threshold is minimised. This reduces the number of phase-compensated correlations required to be performed, thereby minimising the compute and battery resources required to generate the dataset and select the preferred frequency offset.

[0031] The property may comprise a probability that the respective received signal has been received along the shortest geometrical path (e.g. geodesic) between the remote source and the receiver. This is typically referred to as the line-of-sight (LOS) direction. A phase-compensated correlation signal will typically have a higher power for a signal that is received along the LOS direction (e.g. the signal has a component along the LOS direction) compared with a received signal that does not have a component received along the LOS direction (for example due to blocking by an object positioned between the receiver and the remote source). Therefore, the received signals used to generate the dataset may be ordered with signals determined to have a component along the LOS direction used to populate the search space first. Alternatively or in addition, the phase-compensated correlation results from received signals having a component along the LOS direction may be given a higher weighting when populating the dataset in comparison with received signals not having a LOS component. The probability that the respective received signal has been received along the shortest geometrical path (e.g. LOS direction) between the remote source and the receiver may be determined using techniques known to the skilled person in the art.

[0032] The property may comprise a spatial or angular property of the remote source (e.g. an azimuth or elevation angle of the remote source relative to the receiver). Typically, the spatial or angular property of the remote source comprises an elevation angle of the remote source. Remote sources such as positioning satellites that have a relatively greater elevation angle with respect to the receiver (e.g. “overhead” satellites) typically have a greater chance of transmitting a signal that will be received at the receiver along an uninterrupted LOS direction. Therefore, the received signals may be ordered with signals transmitted from remote sources having relatively greater elevation angles used to populate the search space before received signals transmitted from remote sources that are lower in the sky (i.e. smaller elevation angles). Alternatively or in addition, the phase-compensated correlation results from signals transmitted by remote sources having larger elevation angles may be given a greater weighting in generating the dataset in comparison with signals transmitted from remote sources having relatively smaller elevation angles.

[0033] The property may comprise a signal quality metric of the received signal. The signal quality metric of the received signal may be a signal-to-noise ratio (SNR) of the received signal. In embodiments, the property may be a measured camer-to- noise density (C / No) of the received signal. Signals received along an unimpeded straight line direction between the remote source and the receiver typically have a larger C / Noratio than impeded or attenuated signals. Therefore, the received signals may be ordered with signals having a relatively larger SNR or C / Noused to populate the dataset before received signals having a relatively smaller SNR or C / No. Alternatively or in addition, the phase-compensated correlation results from signals having larger SNR or C / Novalues may be given a larger weighting in generating the dataset in comparison with signals transmitted from remote sources having relatively lower SNR or C / Novalues. The property may comprise a processing characteristic of each received signal. In such scenarios, the received signals may be ordered with signals having relatively lower processing requirements (i.e. requiring relatively reduced computational resources to calculate the phase-compensated correlation signals) used to populate the dataset before signals having relatively greater processing requirements. Examples of processing characteristics that are indicative of the compute resources required to process the signal data include bandwidth and chipping rate, with increased bandwidth and increased chipping rate both being indicative of greater computational requirements.

[0034] The property may comprise a (e.g. GNSS) signal type (e.g. of each received signal). For example, in the case of GPS positioning signals, GPS L1 signals are typically less computationally intensive to process (e.g. in order to calculate the phase-compensated correlation signals) compared to GPS L5 signals due to the higher bandwidth of L5 signals. Therefore, the received signals may be ordered with GPS L1 signals being used to populate the dataset before received GPS L5 signals.

[0035] In step (e) of the method, the (A , A ) search space is populated based on signal powers (e.g. correlation signal powers) of a plurality of phase-compensated correlation signals corresponding to respective hypotheses of the frequency and frequency rate offsets. The phase-compensated correlation results for each signal may be calculated for the same set of A and A / hypotheses, for example so as to populate each bin of the search space (e.g. in the same order) regardless of the distribution of signal power across the dataset. However, in some embodiments, the search space may be populated in an ordered manner based on the signal powers of the preceding phase-compensated correlation signal(s) used to populate the search space. In other words, prior knowledge of the expected frequency and frequency rate offsets may be used to adjust the order in which the bins of the search space are populated (e.g. the order in which the (A , A ) hypothesis pairs are tested). For example, if the phase-compensated correlation results calculated for a first set of n received signals indicates that the optimised value of the dataset is likely to be located in a particular region of the search space, the search space may be further populated using the phase- compensated correlation results calculated for the n+1thsignal with the (A , A ) bins of the identified region populated first. In this way, by populating the search space in an ordered manner dependent on the preceding phase compensated signal powers, the number of phase-compensated correlation calculations required for the predetermined confidence threshold to be exceeded may advantageously be minimised.

[0036] As discussed above, in step (f) of the method, a preferred frequency offset is selected as the frequency offset of the frequency reference. This allows errors in the frequency reference to be corrected and provide an effectively stabilised local oscillator. In some embodiments, the method may further comprise selecting a preferred frequency rate offset of the frequency reference, based on the dataset. In the same way as discussed above, the preferred frequency rate offset typically corresponds to the optimised value (e.g. a global or local maximum) of the phase- compensated correlation signal power as a function of A and A / . Thus, in embodiments, the method comprises selecting a “pair” of frequency and frequency rate offsets.

[0037] In preferred embodiments, the method may further comprise using the preferred frequency offset to provide a corrected local signal. The frequency offset may be applied to the frequency reference to generate a corrected frequency reference. Similarly, in embodiments in which a preferred frequency rate offset of the frequency reference is selected, this preferred frequency rate of change may additionally be used to provide a corrected local signal (e.g. to provide timevarying frequency correction). The (corrected) local signal is typically generated by a frequency synthesiser that uses the corrected frequency reference. In this way, by providing a corrected local signal that accounts and corrects for errors in the local oscillator, the signal processing performance of the receiver is advantageously increased.

[0038] Preferably the method may further comprise using the corrected local signal to calculate a metric of interest (e.g. of the receiver). The metric of interest is typically a tracking or navigation metric. Preferably, the metric of interest is at least one of a position of the receiver, a velocity of the receiver, a direction of motion of the receiver, a time. The metric of interest may be calculated using conventional radio signal (e.g. GNSS signal) processing techniques known in the art that utilise a correlation between the received signal and a local signal that is a replica of the received signal.

[0039] As discussed above, the search space is populated based on the signal powers of a plurality of phase-compensated correlation signals corresponding to respective hypotheses of A and A , for each received signal used to generate the dataset. For each received signal used to generate the dataset, the calculation of the plurality of phase-compensated correlation signals comprises calculating a plurality of phasor sequences that are indicative of the phase evolution of the received signal due to the component of the determined motion of the receiver along a selected direction of arrival of the received signal. A phasor sequence comprises a sequence of phasors that each comprise a phase angle and an amplitude based upon the motion of the receiver (typically the motion of an antenna of the receiver) at a particular time t. Each phasor sequence is indicative of the phase changes introduced into the received signal as a result of the component of the receiver motion (e.g. the motion of the receiver antenna) along the selected direction of arrival as a function of time. A phase-compensated correlation signal based on a phasor sequence that is indicative of the receiver motion along the selected direction (e.g. the component of the receiver motion along that direction) will exhibit preferential power for a signal received along that direction in comparison with a signal that is not received along that direction.

[0040] Typically, the selected direction of arrival of the received signal is the shortest geometrical path, or geodesic, between the receiver and the respective remote source from which the signal is received. This is typically referred to as the line of sight (LOS) direction, even if objects obscure the actual physical path. This “LOS” direction may be known or approximated from a current approximation of the receiver position, and knowledge of the position of the remote source, for example from ephemeris data broadcast from a satellite constellation. However, it is envisaged that the selected direction of arrival of the received signal may be different from the LOS direction. For example, the selected direction of arrival may be a direction of arrival after the signal has undergone a reflection.

[0041] Each of the plurality of phasor sequences is further indicative of a hypothesis pair of a frequency offset, A , and a frequency rate offset, A , of the frequency reference. In other words, the phase angle of each phasor represents the hypothesised frequency and frequency rate offset for the respective time t. For each received signal, a plurality of phasor sequences are calculated that represent different hypotheses of the frequency and frequency rate offsets. Typically, for each received signal, the phasor sequences are each indicative of the receiver motion along the same selected direction of arrival (e.g. the LOS direction), such that the only differences between the phasor sequences are due to the different (A , A ) hypotheses. However, in some embodiments, the phasor sequences may be indicative of different directions of arrival (e.g. different “hypotheses” of the direction of arrival).

[0042] By calculating a plurality of phasor sequences in this way, a corresponding plurality of phase-compensated correlation signals may be calculated for each received signal. Each phase-compensated correlation signal is calculated by correlating the received signal with a local signal to calculate a correlation signal, and providing phase compensation of at least one of the local signal, the received signal and the correlation signal using the phasor sequence. Phase compensation can be provided to the local signal before correlation by combining (e.g. mixing) the phasor sequence with the local signal before the correlation process. In another arrangement, phase compensation may be provided to the received signal before correlation. Similar results may be achieved by providing partial phase compensation to both the local and received signals. In some embodiments, phase compensation may be performed in parallel with the correlation. Phase compensation may also be applied to the correlation signal (e.g. the result of the correlation between the local and received signals). It will be appreciated that the phasor sequences will need to be modified accordingly dependent on whether they are being used to perform phase compensation of the local signal, received signal and / or the correlation signal.

[0043] In general, phase compensation may be provided using techniques known in the art. For example, WO2017 / 163042, hereby incorporated by reference, provides further information on performing phase compensation.

[0044] As has been discussed, the invention involves generating a search space parameterized by A and A . Thus, a two-dimensional search space is defined. In some embodiments, the search space may be defined by further parameters (such as signal direction of arrival or higher order time derivatives of the frequency offset) that may be hypothesised by variations in the phasor sequences.

[0045] In accordance with a second aspect of the present invention, there is provided a system, comprising: a receiver; a local oscillator configured to generate a frequency reference; a motion unit configured to determine a motion of the receiver; and one or more processors configured to perform the steps of:

[0046] (a) receiving, at a receiver, a plurality of signals from a plurality of remote sources;

[0047] (b) providing a plurality of local signals using the frequency reference;

[0048] (c) determining a motion of the receiver;

[0049] (d) generating a search space parameterized by a hypothesised frequency offset, A , and a hypothesised frequency rate offset, A , of the frequency reference;

[0050] (e) populating the search space based on signal powers of a plurality of phase-compensated correlation signals corresponding to respective hypotheses of A and A , calculated for at least a subset of the plurality of received signals, to thereby generate a dataset of phase-compensated correlation signal power as a function of A and A , wherein the dataset is populated until a predetermined confidence threshold related to the dataset is exceeded; and (f) selecting a preferred frequency offset as a frequency offset of the frequency reference based on the dataset; wherein for each of the plurality of received signals used to populate the dataset, the plurality of phase-compensated correlations signals are calculated by: calculating a plurality of phasor sequences that are indicative of the phase evolution of the received signal due to the component of the determined motion of the receiver along a selected direction of arrival of the received signal, and wherein each of the plurality of phasor sequences is further indicative a respective hypothesis pair of A and A , each of the plurality of phasor sequences being indicative of a different hypothesis pair; and calculating a plurality of phase-compensated correlation signals by, for each of the plurality of phasor sequences: correlating the received signal with a corresponding one of the local signals to calculate a correlation signal; and calculating a phase-compensated correlation signal by providing phase compensation of at least one of the local signal, the received signal and the correlation signal using the phasor sequence.

[0051] The system of the second aspect of the invention therefore provides the same advantages as described above with reference to the first aspect of the invention. The one or more processors may be configured to perform the method of any of the examples described above with reference to the first aspect of the invention.

[0052] The system is typically a wireless communication system configured to receive radio signals. Typically, the system is a positioning system, preferably a GNSS positioning system. In some embodiments, the system may be a communications system such as a cellular communications system, or a Wi-Fi or Bluetooth communications system.

[0053] The system is typically provided on a single user device, such as a positioning device or electronic user device such as a smartphone. Alternatively, various units in the system could be provided separately so that the system is distributed (i.e. configured as a distributed system). For example, certain calculations may be undertaken by processors in a network. Thus, an electronic user device may offload calculations to other processors in a network where appropriate in the interests of efficiency.

[0054] The motion unit typically comprises one or more inertial sensors that may be part of an inertial measurement unit (I MU) located on the receiver (e.g. forming a constituent part of the receiver).

[0055] The remote sources from which signals are received are typically trusted remote sources (such as GNSS positioning satellites), from which received data may be trusted, i.e. assumed to be correct. A received signal may include any known or unknown pattern of transmitted information, either digital or analogue, that can be found within a broadcast signal by a cross-correlation process using a local copy of the same pattern. The received signal may be encoded with a chipping code that can be used for ranging. Examples of such received signals include GPS signals, which include Gold Codes encoded within the radio transmission. Another example is the Extended Training Sequences used in GSM cellular transmissions. In a further example, the received signals may include pilot symbol sequences that may be used for correlation, such as those used in orthogonal frequency division multiplexing (OFDM), long term evolution (LTE) and digital video broadcasting (DVB) standards.

[0056] The receiver may typically comprise (e.g. or be attached to) a right hand circularly polarised (RHCP) antenna. Typically, the receiver comprises (e.g. or is attached to) an antenna having a length that is shorter than a wavelength of the received signals. In this way, the antenna acts as a dipole. For example, the wavelength of the GPS L1 C / A signal is approximately 19cm, and consequently the antenna typically has a length shorter than 19cm (typically much shorter). This is advantageous for use in smartphone and wearable devices, for example.

[0057] The receiver may comprise a patch antenna of a helical antenna. In any of the aspects of the present invention, the receiver may be a GNSS receiver. The receiver may be implemented on an electronic user device such as a smartphone. The remote sources are typically GNSS satellites. The plurality of received signal may typically comprise GPS L1 signals and / or GPS L5 signals. However, as discussed the present invention may also be applied to other (e.g. radio) signals such as cellular, DAB or DVB, Wi-Fi or Bluetooth signals received from respective remote sources.

[0058] BRIEF DESCRIPTION OF DRAWINGS

[0059] Examples of the invention will now be described with reference to the accompanying drawings, in which:-

[0060] Figure 1 is a schematic diagram illustrating an environment in which embodiments of the invention may be utilised;

[0061] Figure 2 is a schematic diagram of a receiver according to an embodiment of the invention;

[0062] Figure 3 is a flow diagram outlining the principal steps of a method according to an embodiment of the invention;

[0063] Figure 4 is a schematic diagram illustrating a search space according to an embodiment of the invention;

[0064] Figure 5 is a schematic diagram illustrating a method of generating a dataset, according to an embodiment of the invention;

[0065] Figure 6 is a flow diagram outlining the steps of a method according to an embodiment of the invention; and

[0066] Figure 7 is a flow diagram outlining the steps of a method according to a further embodiment of the invention.

[0067] DETAILED DESCRIPTION

[0068] The following example embodiments and methods are described with respect to a positioning system configured to calculate a position of a receiver. However, it is envisaged that other types of systems configured to determine a value using an unstable local oscillator may employ the method of the invention. In such cases, the positioning signals as described below may be replaced more generally with other types of (radio frequency) signals.

[0069] Figure 1 is a schematic diagram illustrating, by way of example, an environment in which the method and system of the present invention may be used to provide a positioning solution. A receiver 100 comprises an antenna 102 configured to receive radio signals from remote sources comprising a first satellite 2, a second satellite 4, and a third satellite 6. The antenna is typically a RHCP antenna. The receiver 100 may also receive radio signals from a remote ground source 8. A tall building 12 bisects the lines of sight from the receiver 100 to the third satellite 6 and the ground source 8. The building 12 attenuates the signals from the third satellite 6 and the ground source 8, making the signals weaker and thus making it more difficult for the receiver 100 to obtain an accurate measurement of position. The same building 12 could also provide a path for a reflected signal from the first satellite 2 to the antenna 102.

[0070] The remote reference sources may operate as part of any navigation system known in the art, for example a GNSS system. In general, the reference sources can be comprised of any combination of satellite sources, terrestrial sources, or other types of reference sources.

[0071] Figure 2 shows a schematic diagram of the receiver 100 according to an embodiment of the invention. In the present embodiment the receiver 100 is configured as (or as a component part of) a smartphone, but in general may be configured as (or as a component part of) any other device capable of determining a position or other navigation metric, for example a laptop, tablet, vehicle navigation device, or wearable device.

[0072] In this example embodiment, the receiver 100 comprises an antenna 102, a front end block 104 coupled to the antenna, a local oscillator 106, a signal generator 108, a correlator 110, a phase compensation unit 112, hypothesis unit 114, motion unit 116, signal processing unit 118, and positioning unit 120. A processor 122 is configured to operate the various units of the positioning device in accordance with executed firmware or software, for example as stored in memory 124. In this embodiment, the various units of the positioning system are provided on the receiver 100; however, in alternative embodiments the various units of the system units may be provided separately with different associated processors, or may be provided in a distributed fashion across a network.

[0073] The front end block 104 is configured to provide initial processing of signals received by the antenna 102 and may comprise any suitable components, such as an amplifier or an analogue to digital converter.

[0074] The local oscillator 106 is generally simple and low cost, and may comprise a crystal oscillator such as a quartz oscillator in one example. The local oscillator 106 is configured to provide a frequency reference for various applications in the receiver 100.

[0075] The motion unit 116 includes sensors that can measure the motion of the receiver 104, in particular the motion of the antenna 102. The antenna 102 and motion unit 104 are configured to move as a single unit and therefore the motion as measured by the motion unit corresponds to that of the antenna. The motion unit 116 can include inertial sensors such as accelerometers and gyroscopic sensors, data from which may be used to infer the motion of the receiver. The motion unit 116 typically comprises an inertial measurement unit (IMU) using inertial sensors, although other means of determining a motion of the receiver may alternatively or additionally be used, such as barometers, magnetometers, visual odometry or GNSS systems. In some embodiments the motion unit 116 may include a trained machine learning model that may predict the motion of the receiver.

[0076] The remainder of the various units and components of the positioning system will be described herein with reference to Figures 3-7.

[0077] Figure 3 illustrates the principal steps of a method 200 for correcting the frequency reference provided by the low cost local oscillator 106 of the receiver 100, according to an embodiment of the invention. The method will be described with reference to the receiver 100 and environment illustrated in Figures 1 and 2. Although the steps of the method are presented in order, the method is not limited as such. For example, in some embodiments one or more of the method steps may be performed substantially simultaneously (e.g. in parallel).

[0078] At step S201 , the receiver receives a plurality of positioning signals 14, 18, 16 from the reference sources 2, 4 and 6 respectively. The received signals are typically buffered for use in subsequent repetitive processing. Typically, the broadcast signal received at the antenna is an analogue signal and is amplified, down-converted to baseband or lower frequency and converted to digital form by an analogue to digital converter. These steps take place in the front end block 104.

[0079] At step S203, the motion unit 116 determines the motion of the receiver. The motion unit 116 may measure the motion of the receiver using data obtained from inertial sensors as part of an I MU, for example integrating acceleration measurements from an accelerometer to infer a velocity of the receiver. The motion unit may assume (“predict”) the motion of the receiver based on patterns of movement in previous epochs. For instance, if previous measurements indicate that the receiver is moving in a constant direction and at a constant speed, then it may be assumed with an acceptable level of confidence that the current motion is the same as that in previous time epochs. This is particularly the case for motion contexts in which the motion is likely to remain substantially similar, for example if the receiver is located within a vehicle moving along a straight road. By assuming the motion of the receiver in previous epochs, processing load may be reduced and battery resources conserved. The motion unit 116 may compute the motion based upon historical motion at specific times of day or may use machine learning, for example, a trained neural network, to predict motion from historical motion data.

[0080] At step S205, a plurality of phase-compensated correlation signals are calculated. The phase compensation is based on the motion of the receiver determined in step S203, and additionally on hypotheses of a frequency offset (A ) and a frequency rate offset (A ) of the frequency reference generated by the local oscillator 106. These offsets may be referred to as frequency and frequency rate errors of the local oscillator 106. We consider first the signal 14 received from the first remote source 2. The phase compensation unit 112 receives the determined motion of the receiver from the motion unit 116. In particular, the phase compensation unit receives the component of the determined motion along the LOS (“straight line”) direction between the receiver 100 and the remote source 2. The component of the determined receiver motion along a particular direction may be calculated using standard mechanics equations as is known in the art. The LOS direction may be known or estimated based on an initial estimate of the receiver’s position and from broadcast orbital data or ephemeris from the satellite constellation. An initial estimate of the receiver’s position may be determined using conventional GNSS ranging calculations based on the signals that are available. An initial estimate of position can also be determined based on cellular data if available (e.g. where the system is provided in a smartphone). Typically an initial estimate of position can be determined using conventional techniques within an accuracy of better than 20 metres, depending on the receiver’s environment.

[0081] The phase compensation unit 112 also receives, from the hypothesis unit 114, a plurality of hypothesis pairs of a frequency offset, A , and a frequency rate offset, A , of the frequency reference produced by the local oscillator 106. The frequency offset and frequency rate offset are with respect to a fully stable ideal frequency reference. In practice, the remote sources, which typically use high quality oscillators such as atomic oscillators, may be used as the ideal frequency reference source. Such high quality oscillators operate within much narrower frequency windows compared to local oscillators typically found on handheld commercial receivers. In other words, the high quality oscillators are more accurate and operate within a much lower frequency tolerance compared to many low quality oscillators.

[0082] Upon receipt of the information from the motion unit 116 and the hypothesis unit 114, the phase compensation unit 112 generates a plurality of phasor sequences based on the determined component of motion of the receiver along the LOS direction to the remote source 2, and based on the plurality of (A , A ) hypothesis pairs. Hence, the phase compensation unit 112 generates the same number of phasor sequences, m, as the number of hypothesis pairs generated by the hypothesis unit. In more detail, each phasor sequence is indicative of the predicted phase changes introduced into the received signal 14 as a result of the relative motion between the receiver and the remote source 2 along the LOS direction. Each phasor sequence is further indicative of the phase changes (“phase errors”) predicted to be introduced into the local signal calculated by the signal generator 108 due to the offset of the frequency reference produced by the local oscillator 106, as predicted by the respective hypothesis pair.

[0083] Each phasor sequence comprises a plurality of phasors, with each phasor typically having the same time duration as a sample of the received signal. There is typically the same number, N, of phasors 0 (I = 1..N) in a generated phasor sequence as there are samples of the received signal and samples of the local signal during the time period within which the signal is received and the receiver movement is measured. Each phasor 0 contains an amplitude and a phase angle, and represents a phase compensation based upon the motion of the receiver at a time t such that a phasor sequence made up of a plurality of phasors is indicative of the receiver motion along a particular direction as a function of time over a time period T. For example, a velocity of the receiver derived from the motion unit 116 may be used to determine a Doppler frequency shift introduced into the received signal due to the motion of the receiver along the line-of-sight direction. The Doppler frequency shift may then be integrated over time in order to estimate a phase value. Each phasor 0 of the phasor sequence also provides a phase compensation for the corresponding of (A , A ) hypothesis pair for the time period T.

[0084] Thus, the phasor sequence may be referred to as a “phase-compensated” phasor sequence.

[0085] A phasor 0 is a transformation in phase space and is complex valued, producing the in-phase component of the phase-compensated phasor sequence via its real value, and the quadrature phase component of the phase-compensated phasor sequence via its imagery value. The phasor 0 is typically a cyclic phasor and may be expressed in a number of different ways, for example as a clockwise rotation from the real axis or as an anti-clockwise rotation from the imaginary axis.

[0086] Still referring to the signal 14 received from the remote source 2, a plurality of phase-compensated correlation signals are calculated. Each phase- compensated correlation signal is generated by combining a respective phasor sequence generated by the phase compensation unit 112 with the local signal generated by the signal generator 108 before correlation of the local signal with the received signal, as schematically illustrated by the directional arrow i in Figure 2. In this way, the phasor sequence may be used to adjust, at sub-wavelength accuracy, the carrier phase of the local code (e.g. GNSS PRN code) encoded in the local signal over one or more periods (lengths) of the received code encoded in the received signal. This produces a phase-compensated correlation signal. The signals and / or correlation results are complex signals comprising in-phase (I) and quadrature phase (Q) components. The method applies each phase offset in the phasor sequence to a corresponding complex sample in the local signal.

[0087] The received signal 14 is correlated with a set of (different) phase-compensated local signals corresponding to each of the (A , A ) hypothesis pairs to generate a set of phase-compensated correlation signals for the received signal 14.

[0088] In the above-described embodiment, the phase-compensated phasor sequences are applied to the local signal to calculate the phase-compensated correlation signals. However, in alternative embodiments, the phase-compensated phasor sequences may be applied to the received signal or the correlation signal to generate the phase-compensated correlation signal. These alternative procedures are schematically illustrated by the dashed directional arrows ii and iii respectively in Figure 2. It will be appreciated that the phasors may be required to be adjusted depending on whether they are applied to the local signal, received signal, or the correlation signal, in order to achieve the desired phase compensation. In some embodiments, phasor sequences may be applied to more than one of the signals (e.g. applied to both the local signal and received signal). In general, the method may comprise providing phase compensation of at least one of the local signal, received signal, or the correlation signal. Returning to Figure 3, at step S207, the signal processing unit 118 generates a search space parameterized by (e.g. having dimensions of) A and A / . Such a search space is schematically illustrated in Figure 4. Figure 4 shows a graph 400 comprising two axes that represent a range of possible frequency offset values A on the y-axis, and a range of frequency rate offset values A on the x-axis, for a particular time period (“epoch”) T. This time period T may be a time period for which it is assumed that the local oscillator has a substantially constant frequency and frequency rate offset, and may correspond to the desired coherent integration time. The desired coherent integration time is typically at least 20ms, and may be as long as ~1 second in some instances, for example in environments where weak signals or reflections are prevalent. Each point (or “bin”) on the graph (shown schematically at 404) corresponds to a point in (A , A ) space, where each point in the space represents a possible combination of offset values. A search space (“search window”) can be defined as an upper and lower bound along each axis of the (A , A ) space, between which a subset of the points in this space are contained.

[0089] The points in the graph represent the hypothesised (A , A ) pairs generated by the hypothesis unit 114 and represented by the corresponding phasor sequences and resulting phase-compensated correlation signals. Referring back to Figure 3, at step S209, the signal processing unit 118 populates the search space using the phase-compensated correlation results calculated for the signal 14 received from the remote source 2. More specifically, the search space is populated with the phase-compensated correlation signal power, z, of each of the phase- compensated correlation signals calculated for the signal 14 received from remote source 2. This generates a dataset of phase-compensated correlation signal power as a function of A and A . The dependency of the local signal on the phasor sequences generated by the phase compensation unit 112 means that a phase-compensated signal power value z is function, F, of the hypothesised frequency offset A and frequency rate offset A of the local oscillator 106: z = F(A , A / ). Example (arbitrary) contours of the dataset are plotted on the graph 400 as a simplified illustration of how values of the function F could vary over the (A , A ) space.

[0090] At step S211 , the signal processing unit 118 determines whether a predetermined confidence threshold of the dataset is exceeded. In this embodiment, the predetermined confidence threshold is a maximum value of the phase- compensated correlation signal power, z. If the signal processing unit 118 determines that the predetermined confidence threshold has not been exceeded, the method returns to step S209 and the search space is populated with further phase-compensated correlation results (e.g. calculated from at least one further received signal). In this worked example, the search space is further populated with the phase-compensated correlation signal powers across the (A , A ), calculated from both of the received signals 16 and 18.

[0091] The same process is performed for signals 18 and 16 as that described above with reference to signal 2, with the phase compensation being based on a set of (A , A ) hypothesis pairs and the determined component of the receiver motion along the respective LOS direction to the remote source.

[0092] The search space is further populated by combining the phase-compensated correlation signal power values computed in (A , A ) space for each received signal 14, 16, 18. In some examples, the combination is a weighted or nonweighted summation of the z values computed for each point in (A , A ) space, for each of the remote sources. In this way, the dataset evolves over time as the phase-compensated correlation results corresponding to different remote sources are used to populate the search space.

[0093] An example method of populating the search space 400 with the phase- compensated correlation results from a plurality of different remote sources is schematically illustrated in Figure 5. Figure 5 shows the plots 402, 404, 406 of the phase-compensated correlation signal power, z, for three individual remote sources (e.g. the remote sources 2, 4, 6 illustrated in Figure 1). Herein, these plots may be referred to as “individual datasets” for each remote source. Dataset 400 shows the results of combining the individual datasets 402, 404, 406 to generate a plot of the joint correlation results for the remote sources. Herein, the dataset 400 may be referred to as a “joint dataset” 400. The joint dataset is typically generated by summing the phase-compensated correlation signal powers (z) of each individual dataset across the (Af, A ) space. This may be a simple summation (i.e. no weightings), or may be a weighted summation based on one or more properties of the signals or remote sources of the individual datasets, as will be discussed further herein.

[0094] The joint dataset 400 forms the dataset from which the preferred frequency and frequency rate offsets may be selected. As can be seen from Figure 5, each remote source exhibits a number of peaks across the search space, with the highest power accumulating in a common (A , A / ) bin in the joint correlation result 400 and forming (in this example) a maximum value of the phase-compensated signal power 410. The maximum value of z may be found using standard techniques known in the art. For example, the maximum may be found by performing gradient ascent on the “complete” function F across the search space. This may be performed at regular intervals as the search space is populated. In another example, when each bin is populated, the (combined) phase- compensated signal power for the bin is compared with the preceding maximum that has been obtained during population of the search space. If the value in the current bin exceeds the preceding maximum value, then the maximum value of the dataset is updated to the value of the current bin. This process is repeated until the maximum value exceeds the predetermined threshold.

[0095] All received signals have different phase compensation due to the motion of the receiver (“motion compensation”), because the receiver is moving differently with respect to each remote source, but all the received signals are processed with the same, common, frequency error within the time period T that can be found by stacking (summing) the plurality of correlation values associated with each remote source and finding the common joint correlation value. This may be the global maximum or a local maximum depending on the manner in which the phase- compensated correlation results from each remote source are combined. Example “cost functions” which may be used to combine the results from each individual remote source include a simple summation, or a weighted summation using satellite elevation or another metric for the weightings.

[0096] Referring back to Figure 3, the method iterates (“loops”) between steps S209 and S211 with the search space being populated until the signal processing unit 118 determines that the predetermined confidence threshold of the dataset has been exceeded. In the example, in the joint dataset 400 illustrated in Figures 4 and 5 (generated by populating the search space with the phase-compensated correlation results from signals 2, 4 and 6), the maximum 410 exceeds the predetermined threshold, indicating that the confidence in the accuracy of the corresponding frequency and frequency rate offset values is acceptable.

[0097] In this way, the method monitors the evolution of the dataset 400 as the (A , A ) search space is populated with the correlation results from different remote sources. When the predetermined confidence threshold is exceeded, the signal processing unit 118 stops populating the search space and the method moves to step S213.

[0098] It is noted that in the example described above, for simplicity, the search space was initially populated in step S209 with the phase-compensated correlation results corresponding to a single remote source. However, in practice, the search space is initially populated with the phase-compensated correlation results from a plurality of remote sources (typically at least 3), with further signals added to the search space until the predetermined threshold is exceeded.

[0099] Returning to Figure 3, at step S213, the signal processing unit 118 selects a preferred frequency offset value A and a preferred frequency rate offset value A based on the dataset 400. The preferred values of the frequency offset and frequency rate offset correspond to an optimised value of the function F. In other words, a mathematical optimisation process may be applied to the dataset to find the (A , A ) values that optimise the function F. This may be achieved by combining the results from each individual remote source using a suitable cost function. In this embodiment, as discussed, the optimisation comprises maximising the function F.

[0100] A maximum 410 of the function F is shown in Figure 4. The maximum 410 corresponds to the best-fit values 412, 414 for the frequency offset and frequency rate offset in the time period T for which the frequency and frequency rate offsets are being determined. Thus, based on the dataset 400, these best-fit values most closely represent the true error in the local oscillator during the particular time period T. In general, the correlation results z may be analysed to determine best- fit values 412, 414 using any other constraint or optimisation mechanism. For example, dependent on the mathematical configuration used, a search for a minimum value may be performed, or alternatively a best-fit determination based on more complex criteria or a suitable cost function may be performed. In some examples, the best fit values of the frequency and frequency rate offsets may be determined to be likely to lie between two of the populated z values corresponding to “tested” hypothesis pairs, and thus the method may interpolate between the measured values from the phase-compensated correlation results to provide the best estimate of the frequency and frequency rate offsets.

[0101] At step S215, the signal generator 108 generates a local signal using the frequency and frequency rate offsets selected in step S211 . In more detail, once the A and A values have been selected in step S211 , these are passed to the signal generator. The signal generator (which is typically a frequency synthesiser) is then configured to use the frequency reference provided by the local oscillator 106 and apply the A and A values in order to generate a local signal that is corrected for the errors or instabilities in the local oscillator over the time period T. In practice, the frequency and frequency rate offsets (“corrections”) may be applied using a suitable phasor sequence over the time period T, element-wise mixed with the local signal that has been stored in memory. This may be a phasor sequence that was previously generated by the phase compensation unit 112 and stored in memory. In other examples, a new phasor sequence may be generated based on the selected frequency and frequency rate offsets. At step S217, the receiver uses the corrected local signal provided by the signal generator 108 to calculate a positioning solution. This is performed by correlating the corrected local signal with a received signal in the correlator 110 to provide a range or pseudo-range calculation to the corresponding remote source, as is known in the art. The corrected local signal may be used to calculate other navigation or tracking metrics of the receiver such as a velocity, a direction of motion, or a time.

[0102] As discussed above, embodiments of the present invention select the frequency and frequency rate offsets from the dataset when a confidence threshold related to the dataset is exceeded. In other words, the (Af, A ) search space is populated until the predetermined threshold is exceeded, at which point the frequency and frequency rate offsets are selected. This avoids the need to continue populating the search space with additional calculations for the phase- compensated correlation signal power from further remote sources, thereby minimising the compute resources and time required to find the preferred offsets of the frequency reference.

[0103] Typically, the predetermined confidence threshold corresponds to an optimised value (e.g. a maximum value) of the phase-compensated correlation signal power z exceeding a predetermined threshold (zT). The predetermined threshold zTtypically has a value that is greater than an expected maximum phase- compensated correlation signal power value for an individual remote source. This ensures that the predetermined threshold is only met when the dataset comprises phase-compensated correlation signal power values from a plurality of remote sources (typically three or more). This provides additional confidence in the selected estimates for the A and A values. For example, if the predetermined threshold were to be met using data from only one received signal, there is the possibility that this could be a reflected or multipath interfered signal which would provide an erroneous estimate for the frequency offset values (i.e. the optimised peak in the dataset would be in the “wrong” bin of the frequency-frequency rate search space) and, consequently, an incorrect adjustment of the local frequency reference. Ensuring that a plurality of positioning signals are utilised to determine the frequency and frequency rate offsets avoids this issue because each of the received positioning signals has a common hypothesised frequency offset that produces a strong phase-compensated correlation signal in a common bin within the search space 400.

[0104] In embodiments of the invention, the received signals used to populate the search space are ordered and / or weighted based on a property of each received signal and / or its corresponding remote source. In this way, the number of phase- compensated correlations that are required to be performed in order that the dataset exceeds the predetermined confidence threshold zTis minimised.

[0105] Figure 6 illustrates a method 300 according to one embodiment of the invention, in which an initial analysis of each signal received from a respective remote source is performed to decide whether to use the phase-compensated correlation results from that signal in the generation of the joint dataset 400. At step S301 , a signal is received at the receiver 100 from a remote source. At step S303, the signal processing unit 118 determines whether the signal has been received along the LOS (straight-line) direction between the receiver and the remote source (i.e. whether the signal has a LOS component received at the receiver). Techniques known to the skilled person in the art may be used to determine whether the signal has been received along the LOS direction. For example, Supercorrelation™ techniques may be used to determine whether a signal has been received along the LOS, for example as described in WO2019 / 058119 which is hereby incorporated by reference. In other examples, a directional antenna comprising a plurality of individual antenna elements may be employed on the receiver to analyse direction of arrival of received signals.

[0106] The determination of whether the signal has been received along the LOS direction may be performed in the current time period (epoch) for which the dataset is being generated. More typically however, the determination may be based on a LOS analysis of the signals received from the corresponding remote source during a preceding epoch. If it is determined that the signal is not received along the LOS direction (or if a strong reflected component is present), then at S305 the signal is discarded or otherwise not used to populate the dataset 400. The method then returns to step S301. If, on the other hand, the signal is determined to have a LOS component received at the receiver, the method proceeds to step S307 where the signal is used to generate the joint dataset. In other words, the individual phase- compensated correlation signal powers as a function of (A , A ) for the received signal are used to populate the search space and update the joint correlation dataset 400.

[0107] Once the phase-compensated correlation results for the received signal have been added to the dataset, at step S309 the signal processing unit 118 analyses the dataset to determine whether the predetermined confidence threshold zTof the dataset has been exceeded. If zTis exceeded, then the method proceeds to step S311 in which the preferred frequency and frequency rate offsets are selected based on the (now finalised) dataset. If, on the other hand, the predetermined value of the phase-compensated correlation signal power has not been reached in step S309, the method returns to step S301 . The method 300 iterates (“loops”), processing signals from different remote sources, until the predetermined threshold of the joint dataset is exceeded, at which point the frequency and frequency rate offsets are extracted and used to generate a corrected local signal in the manner explained above.

[0108] In alternative embodiments, if the signal received in S301 is determined not to have been received along the LOS direction, instead of discarding the signal at S305, the signal may be processed for use in the dataset, but the phase- compensated correlation results from the remote source are given a relatively lower weighting when applied to the joint dataset 400 in comparison with a signal that is determined to have a higher probability of having been received along the LOS direction.

[0109] Figure 7 illustrates a method 400 according to a further embodiment of the invention, in which a signal quality metric of each received signal is used to determine whether to use the phase-compensated correlation results from that signal in the generation of the joint dataset 400. In this embodiment, the signal quality metric is the camer-to-noise ratio, C / No. In step S401 , a signal is received at the receiver 100 from a remote source. At step S403, the signal processing unit 118 measures the C / N0of the received signal. If it is determined that the C / Novalue is below a predetermined threshold, then at step S405 the signal is discarded or otherwise not processed to generate the dataset 400. The method then returns to step S401 . If, on the other hand, the C / Noratio is measured to be above the predetermined threshold, then the method proceeds to step S407 where the signal is used to generate the joint dataset. In other words, the phase- compensated correlation signal powers as a function of (A , A ) for the received signal are used to populate the search space and update the joint correlation dataset 400.

[0110] Once the phase-compensated correlation results for the received signal have been included in the dataset, at step S409 the signal processing unit 118 determines whether the predetermined threshold zThas been exceeded. If zTis exceeded, then the method proceeds to step S411 in which the preferred frequency and frequency rate offsets are selected based on the joint dataset. If, on the other hand, the predetermined value of the phase-compensated correlation signal power has not been reached in step S409, the method returns to step S401 . The method 400 iterates until the predetermined threshold of the phase- compensated correlation signal power is met, at which point the frequency and frequency rate offsets are extracted and used to generate a corrected local signal in the manner explained above.

[0111] In alternative embodiments, if the received signal is determined to have a C / Noratio that is below the predetermined threshold, instead of discarding the signal at step S405, the phase-compensated correlation results from that signal may be used to populate the joint dataset 400, but with a relatively lower weighting in comparison with a signal having a higher C / No. As an example, referring to Figure 1 , the signals 14 and 18 are received along unobstructed LOS directions, and will therefore exhibit greater C / Noratios than signal 16 which is attenuated by building 12. Thus, the signals from remote sources 2 and 4 will be used to populate the dataset before and / or have a greater weighting assigned than, the signals received from remote source 6. Dependent on the level of attenuation, the signal 16 may not be used in the generation of the dataset.

[0112] In the above-described embodiments, the predetermined confidence threshold corresponded to a threshold (zT) of the phase-compensated correlation signal power. In other embodiments, the predetermined confidence threshold may correspond to a predetermined number of (different) remote sources used to populate the joint dataset 400. In other words, the signal processing unit 118 may stop populating the joint dataset 400 once the phase-compensated correlation results from a predetermined number of individual datasets have contributed to the joint dataset 400. In order to provide confidence that the optimised value of the resulting joint dataset is in the “correct” bin corresponding to the true frequency and frequency rate offsets of the frequency reference, it is preferred that the number of different remote sources used to populate the joint dataset 400 is at least three. In embodiments, the predetermined number of remote sources may be 10 or more.

[0113] The predetermined number of remote sources may be dynamically varied depending on a signal environment of the receiver. A receiver located in an open sky environment is likely to receive more signals along an unobstructed LOS direction compared to a receiver in an urban canyon where LOS attenuation and reflected signals are more prevalent. Consequently, if a receiver is positioned within an urban canyon, the search space may be populated using signals from a larger number (e.g. 10 or more) of different remote sources compared to a receiver in an open sky environment. By using a larger number of remote sources to populate the joint dataset in an urban canyon environment, any erroneous correlation results due to reflections or multipath effects are suppressed in comparison with the joint correlation peak corresponding to the “true” frequency and frequency rate offsets.

[0114] Embodiments of the invention may employ further criteria or analyses of the received signals in order to optimally order or combine these in the joint dataset such that the predetermined confidence threshold is reached using a minimal number of received signals.

[0115] In some embodiments, the received signals used to generate the joint dataset 400 may be ordered based on elevation angles of the remote sources from which the received signals are transmitted. Signals transmitted from overhead satellites (e.g. satellites having an elevation angle of greater than 60 degrees, preferably greater than 75 degrees) are more likely to be received at the receiver along an unobstructed line of sight direction in comparison with satellites having a lower elevation angle. Signals received from satellites positioned lower in the sky (such as satellite 6 in Figure 1) are more likely to have been attenuated or undergone reflections from objects located between the remote source and the receiver. The power of a phase-compensated correlation signal that has been received along an unobstructed LOS direction is greater than that for an attenuated signal. Therefore, in embodiments, the elevation angle of each remote source is determined (for example based on ephemeris or almanac data broadcast from the constellation and a current position estimate of the receiver), and the received signals processed in order from highest to lowest elevation angle. Alternatively or in addition, the joint dataset 400 may be populated based on a weighted combination of the individual datasets for the remote sources, with higher weightings applied for remote sources having higher elevation angles.

[0116] In some embodiments, the received signals may be processed and used to populate the joint dataset in an ordered manner based on a signal type. For example, GPS L1 C / A signals may be used to populate the dataset before GPS L5 signals. This can reduce computational load if the predetermined confidence threshold is exceeded using just the lower bandwidth L1 signals, since processing higher-bandwidth L5 data to calculate the phase-compensated correlation signals requires more computational resources. In other scenarios, even if the predetermined confidence threshold is not exceeded using just L1 signals, L5 signals may then be processed to continue to populate the dataset until the confidence threshold is exceeded. This still reduces computational load as a consequence of having processed the lower bandwidth L1 signals ahead of the L5 signals.

[0117] It will be appreciated that, in general, the ordering and / or weighting of the received signals used to populate the dataset may be based on a combination of the parameters outline above.

[0118] As has been described herein, the phase-compensated correlation signal powers, calculated for a plurality of received signals, are used to populate the (A , A ) search space and generate a joint dataset from which the frequency and frequency rate offsets of the frequency reference may be selected and utilised to improve the performance of the receiver. In order to minimise the compute resources required to determine the error in the local oscillator, the search space is populated until the predetermined confidence threshold is exceeded. The search space may be populated in a predefined manner for all received signals. For example, the (A , A ) bins of the search space 400 illustrated in Figure 4 may be populated on a “column-by-column” basis from left to right by populating each A offset for a particular A value, and iterating over the A values in the search space.

[0119] However, instead of this “column-by-column” (or other predefined) approach, in some embodiments the search space may be populated in an ordered manner based on the signal powers of the preceding phase-compensated correlation signal(s) used to populate the search space. In this way, prior knowledge of where the optimised value of the dataset is expected to be located within the (A , A ) search space may be used to populate the search space as efficiently as possible in order that the predetermined confidence threshold is exceeded with minimal computations required. For example, consider the exemplary contours of the dataset illustrated in Figure 4, which indicate a likely position of the optimised value (410) of the dataset. If the dataset exhibited this behaviour after being populated by the phase- compensated correlation signals from a first set of n received signals, then the search space may be further populated using the phase-compensated correlation signals calculated for the (Af, A ) bins in the vicinity of point 410 (e.g. those bins within a particular percentage offset along the axes of the search space). In other words, the population of the search space is ordered with those bins in the vicinity of the expected optimised value of the dataset populated first. In this way, the number of phase-compensated correlation calculations required for the predetermined confidence threshold to be exceeded may advantageously be minimised.

[0120] Prior knowledge of the expected location of the optimised value of the dataset may be obtained from phase-compensated correlation results for the particular time period for which the dataset is being generated (e.g. as more data points are included in the dataset), or from previous epochs. In general, a weighting mask may be applied to the (A , A ) bins of the search space based on prior knowledge of where the optimised value of the search space is expected to be. For example, a Gaussian weighting mask may be applied to the search space centred on a previous estimate of the optimised (A , A ) pair. In another example, the mask may have a zero weighting for bins in a certain region(s) of the (A , A ) search space where excess power is being transmitted that is not caused by the errors in the local frequency reference (e.g. due to a detected spoofer). The zero weighting prevents the erroneous excess power dominating the dataset and providing incorrect values for the frequency and frequency rate offsets.

Claims

CLAIMS1. A method, comprising:(a) receiving, at a receiver, a plurality of signals from a plurality of remote sources;(b) providing a plurality of local signals using a frequency reference generated by a local oscillator;(c) determining a motion of the receiver;(d) generating a search space parameterized by a hypothesised frequency offset, A , and a hypothesised frequency rate offset, A , of the frequency reference;(e) populating the search space based on signal powers of a plurality of phase-compensated correlation signals corresponding to respective hypotheses of A and A , calculated for at least a subset of the plurality of received signals, to thereby generate a dataset of phase-compensated correlation signal power as a function of A and A , wherein the dataset is populated until a predetermined confidence threshold related to the dataset is exceeded; and(f) selecting a preferred frequency offset as a frequency offset of the frequency reference based on the dataset; wherein for each of the plurality of received signals used to populate the dataset, the plurality of phase-compensated correlations signals are calculated by: calculating a plurality of phasor sequences that are indicative of the phase evolution of the received signal due to the component of the determined motion of the receiver along a selected direction of arrival of the received signal, and wherein each of the plurality of phasor sequences is further indicative a respective hypothesis pair of A and A , each of the plurality of phasor sequences being indicative of a different hypothesis pair; and calculating a plurality of phase-compensated correlation signals by, for each of the plurality of phasor sequences: correlating the received signal with a corresponding one of the local signals to calculate a correlation signal; andcalculating a phase-compensated correlation signal by providing phase compensation of at least one of the local signal, the received signal and the correlation signal using the phasor sequence.

2. The method of claim 1 , wherein the preferred frequency offset corresponds to an optimised value of the phase-compensated correlation signal power as a function of A and A .

3. The method of claim 2, wherein the preferred frequency offset corresponds to a maximum value of the phase-compensated correlation signal power as a function of A and A .

4. The method of claim 2 or claim 3, wherein the predetermined confidence threshold corresponds to the optimised value exceeding a predetermined threshold.

5. The method of any of claims 1 to 3, wherein the predetermined confidence threshold corresponds to a minimum number of received signals used to populate the dataset.

6. The method of claim 5, wherein the minimum number of received signals constituting the predetermined confidence threshold is adjusted based on a signal environment of the receiver.

7. The method of any of the preceding claims, wherein the received signals used to populate the search space are ordered and / or weighted based on a property of each received signal and / or its corresponding remote source.

8. The method of claim 7, wherein the property comprises a probability that the respective received signal has been received along the shortest geometrical path between the remote source and the receiver.

9. The method of claim 7 or claim 8, wherein the property comprises a spatial or angular property of the remote source.

10. The method of claim 9, wherein the spatial or angular property comprises an elevation angle of the remote source.

11. The method of any of claims 7 to 10, wherein the property comprises a signal quality metric of the received signal.

12. The method of any of claims 7 to 11 , wherein the property comprises a processing characteristic of each received signal.

13. The method of any of claims 7 to 12, wherein the property comprises a signal type.

14. The method of any of the preceding claims, wherein the search space is populated in an ordered manner based on the signal powers of the preceding phase-compensated correlation signal(s) used to populate the search space.

15. The method of any of the preceding claims, further comprising selecting a preferred frequency rate offset of the frequency reference, based on the dataset.

16. The method of any of the preceding claims, further comprising using the preferred frequency offset to provide a corrected local signal.

17. The method of claim 16, further comprising using the corrected local signal to calculate a metric of interest, preferably wherein the metric of interest is at least one of a position of the receiver, a velocity of the receiver, a direction of motion of the receiver, a time.

18. A system, comprising: a receiver; a local oscillator configured to generate a frequency reference;a motion unit configured to determine a motion of the receiver; and one or more processors configured to perform the steps of:(a) receiving, at a receiver, a plurality of signals from a plurality of remote sources;(b) providing a plurality of local signals using the frequency reference;(c) determining a motion of the receiver;(d) generating a search space parameterized by a hypothesised frequency offset, A , and a hypothesised frequency rate offset, A , of the frequency reference;(e) populating the search space based on signal powers of a plurality of phase-compensated correlation signals corresponding to respective hypotheses of A and A , calculated for at least a subset of the plurality of received signals, to thereby generate a dataset of phase-compensated correlation signal power as a function of A and A , wherein the dataset is populated until a predetermined confidence threshold related to the dataset is exceeded; and(f) selecting a preferred frequency offset as a frequency offset of the frequency reference based on the dataset; wherein for each of the plurality of received signals used to populate the dataset, the plurality of phase-compensated correlations signals are calculated by: calculating a plurality of phasor sequences that are indicative of the phase evolution of the received signal due to the component of the determined motion of the receiver along a selected direction of arrival of the received signal, and wherein each of the plurality of phasor sequences is further indicative a respective hypothesis pair of A and A , each of the plurality of phasor sequences being indicative of a different hypothesis pair; and calculating a plurality of phase-compensated correlation signals by, for each of the plurality of phasor sequences: correlating the received signal with a corresponding one of the local signals to calculate a correlation signal; andcalculating a phase-compensated correlation signal by providing phase compensation of at least one of the local signal, the received signal and the correlation signal using the phasor sequence.

19. The system of claim 18, wherein the one or more processors are configured to perform the method according to any of claims 1 to 17.

20. The system of claim 18 or claim 19, wherein the system is a positioning system, preferably a GNSS positioning system.

21. The method or system of any of the preceding claims, wherein the receiver is a GNSS receiver.

22. The method or system of any of the preceding claims, wherein the local oscillator comprises a temperature-compensated crystal oscillator, TCXO, a voltage-controlled crystal oscillator, VCXO, or a temperature-sensing crystal oscillator, TSXO.

23. The method or system of any of the preceding claims, wherein the plurality of received signals comprise GPS L1 signals and / or GPS L5 signals.

24. The method or system of any of the preceding claims, wherein the receiver comprises a right hand circularly polarised, RHCP, antenna.

25. The method or system of any of the preceding claims, wherein the receiver comprises an antenna having a length that is shorter than a wavelength of the received signals.

26. The method or system of any of the preceding claims, wherein the receiver comprises a patch antenna or a helical antenna.