Method and device for capturing GNSS (Global Navigation Satellite System) signal in real time
By caching and wrapping GNSS signals to the AEFIFO in real time during GNSS signal acquisition, combined with frequency calibration and cyclic accumulation processing, the problem of AEFIFO storage space limitation is solved, achieving high-sensitivity GNSS signal acquisition, reducing hardware costs, and ensuring real-time performance and accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- WUHAN MENGXIN TECH CO LTD
- Filing Date
- 2025-12-22
- Publication Date
- 2026-04-17
AI Technical Summary
Existing GNSS signal acquisition schemes are limited by AEFIFO storage space, making it difficult to improve acquisition sensitivity by extending the integration time. Furthermore, existing optimization methods have failed to overcome storage space limitations, resulting in high complexity in non-real-time processing modes or hardware implementation.
By buffering GNSS signals into AEFIFO in real time, limiting the storage space to ensure that the processing time of the previous data segment is less than or equal to the buffering time of the next data segment, a wraparound storage strategy and frequency calibration are adopted to generate pseudo-code-carrier signals in real time for coherent integration and incoherent accumulation. The process is repeated until the number of incoherent integrations reaches the target, and the acquisition result is output.
Achieving long-term integration within limited storage space improves GNSS signal acquisition sensitivity, ensures the timeliness and accuracy of data processing, and reduces hardware costs and chip area footprint.
Smart Images

Figure CN121878740A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of GNSS satellite signal processing technology, and in particular to a method and apparatus for real-time acquisition of GNSS signals. Background Technology
[0002] In Global Navigation System (GNSS) receivers, signal acquisition is a prerequisite for subsequent tracking and positioning. The core objective is to obtain a rough estimate of the carrier frequency and code phase of the visible satellite signal. Existing acquisition schemes require pre-storing the signal to be processed in a fixed-length AEFIFO (Acquire Engine FIFO), then constructing a Doppler-code phase two-dimensional search grid, generating a local signal, and performing coherent-incoherent integration with the received signal. Finally, the acquisition result is determined through peak search.
[0003] To improve acquisition sensitivity, it is usually necessary to extend the total integration processing time. However, due to the influence of message bit flipping, the coherent integration time cannot exceed the message bit period, and can only be achieved by increasing the number of incoherent integrations. The longer the integration time, the larger the required AEFIFO storage space. Based on cost and chip area considerations, the AEFIFO space of GNSS chips is usually not designed to be too large, making it difficult to further improve acquisition sensitivity by extending the integration time.
[0004] In existing related technologies, some solutions improve processing efficiency by optimizing coherent and non-coherent integration or compressing data volume, but they still do not overcome the limitation of integration time imposed by the AEFIFO storage space. All of these solutions require pre-caching all data to be processed before starting processing, which is a non-real-time processing mode. Another solution extends the coherent integration time by estimating the message bit flipping time, but this is complex to implement in hardware and has low practicality. Therefore, there is an urgent need for a real-time acquisition solution that can support long-term integration within a limited AEFIFO space. Summary of the Invention
[0005] This invention provides a method and apparatus for real-time acquisition of GNSS signals, which can solve the problem that the fixed space limitation of AEFIFO in the prior art makes it difficult to improve the acquisition sensitivity, and realize high-sensitivity GNSS signal acquisition under limited storage resources.
[0006] To achieve the above objectives, the embodiments of the present invention adopt the following technical solutions: Firstly, a method for real-time acquisition of GNSS signals is provided. The method includes: real-time buffering of GNSS signals processed by baseband front-end digital signal processing into an AEFIFO, wherein the storage space configuration of the AEFIFO is such that the processing time of the previous data segment is less than or equal to the buffering time of the next data segment; when the length of data buffered in the AEFIFO reaches the data buffering threshold, reading a target data segment from the AEFIFO, and simultaneously generating a pseudo-code-carrier signal corresponding to a preset Doppler-code phase search range locally, wherein the data buffering threshold is the sampling data length corresponding to the coherent integration duration or the pseudo-code period of the signal; performing coherent integration processing on the target data segment and the pseudo-code-carrier signal, taking the amplitude of the coherent integration result, superimposing it with historical incoherent accumulation results, and temporarily storing it; repeatedly executing the reading, signal generation, coherent integration, and incoherent accumulation steps; when the number of incoherent integrations reaches a preset value, performing a peak search on the incoherent accumulation results of all Doppler-code phase search grids, and determining the Doppler frequency and code phase corresponding to the maximum value as the GNSS signal acquisition result.
[0007] The method provided by this invention caches GNSS signals in real time to an AEFIFO, limiting the AEFIFO storage space to ensure that the processing time of the previous data segment is less than or equal to the caching time of the next data segment. Data reading, pseudocode-carrier signal generation, coherent integration, and incoherent accumulation are performed only when the cached data reaches a threshold corresponding to the coherent integration duration. This process is repeated until the incoherent integration count reaches the target, after which the result is output via peak search. This design overcomes the limitation of the fixed AEFIFO space on the integration duration in traditional schemes. It eliminates the need to pre-store all data, achieving long-term integration through real-time processing and cyclic accumulation. While controlling the AEFIFO space size, it significantly improves the acquisition sensitivity of GNSS signals, and the process logic is coherent, ensuring the timeliness and accuracy of data processing.
[0008] In one possible implementation of the first aspect, the AEFIFO employs a wraparound storage strategy, specifically including: the AEFIFO is pre-configured with fixed start and end addresses, and GNSS signals processed by the baseband front-end digital signal are written sequentially in real time starting from the start address; when the writing address reaches the end address, it automatically jumps to the start address to rewrite, so as to overwrite the original data at the start address and subsequent addresses.
[0009] The method provided by this invention configures a fixed start and end address for the AEFIFO and employs a wraparound storage strategy. Once the end address is full, the system automatically jumps to the start address to overwrite the existing data. This strategy allows the limited AEFIFO space to continuously buffer real-time input GNSS signals, supporting data buffering for any duration without expanding hardware storage capacity. This reduces hardware costs and chip area usage, while avoiding integration interruptions due to insufficient data buffering, providing a reliable storage foundation for long-term integration acquisition.
[0010] In one possible implementation of the first aspect, the storage space size of the AEFIFO is not less than twice the sum of the sampling data length corresponding to the data buffer threshold and the sampling data length corresponding to the pseudo-code period, and the sampling data length corresponding to the pseudo-code period is the number of sampling points corresponding to the pseudo-code period of the signal.
[0011] The method provided by this invention limits the AEFIFO storage space to be no less than the sum of the sampling length corresponding to twice the data cache threshold and the sampling length of the 1ms pseudocode period. This configuration ensures that when processing the previous data segment, new data can be cached in the remaining space without being overwritten, thus guaranteeing the continuity of real-time processing and avoiding data loss or processing failure due to unreasonable storage space configuration.
[0012] In one possible implementation of the first aspect, when data is first cached in the AEFIFO, the length of the cached data is L; where L is determined by the formula L=p+k, p is the length of the sampled data corresponding to the data cache threshold, and k is the length of the additional cached data and is not less than the number of sampled data points corresponding to a 1ms pseudocode period; subsequently, when data is cached in the AEFIFO each time, the length of the cached data is p, to ensure that all correlators can complete the matched filtering processing of the complete pseudocode period.
[0013] The method provided by this invention employs an initial buffer length of L and subsequent buffer lengths of p, where k is not less than the 1ms pseudocode period sampling length. The initial additional buffer of k-value data accurately locates the pseudocode start time, solving the problem of complete pseudocode period matched filtering failure caused by insufficient initial data length. Subsequent fixed buffers of p-value data ensure the continuity of integration processing and avoid the waste of storage space caused by additional buffering, ensuring that all correlators can stably complete the complete pseudocode period matched filtering, thus improving the reliability of the acquisition results.
[0014] In one possible implementation of the first aspect, the baseband front-end digital signal processing specifically includes: converting the received GNSS signal to zero intermediate frequency, adjusting the signal sampling rate to twice the pseudocode rate through downsampling processing, and adjusting the signal center frequency to a preset Doppler search center frequency to ensure the frequency consistency between the target data segment and the locally generated pseudocode-carrier signal.
[0015] The method provided by this invention clearly defines the baseband front-end digital signal processing as including zero-IF transformation, downsampling to twice the pseudocode rate, and adjusting the center frequency to a preset Doppler search center frequency. Zero-IF transformation simplifies the carrier modulation and demodulation process, while downsampling to twice the pseudocode rate reduces processing overhead while preserving signal integrity. Center frequency calibration ensures frequency consistency between the target data segment and the local pseudocode-carrier signal, reducing frequency deviation in coherent integration from the source, improving the accuracy of the integration results, and providing a high-quality data foundation for subsequent incoherent accumulation and peak search.
[0016] In one possible implementation of the first aspect, the preset Doppler-code phase search range is adapted to hot-start or lock-down reacquisition scenarios and is determined based on prior information of satellite signals; wherein, the Doppler frequency search range does not exceed a preset frequency range, and the code phase search range does not exceed the number of chips corresponding to a preset duration, so as to reduce the number of search grids.
[0017] The method provided by this invention adapts a preset Doppler-code phase search range to hot-start or re-acquisition scenarios, limiting the Doppler frequency range to no more than a preset frequency range and the code phase range to no more than the number of chips corresponding to a preset duration based on prior information. This design significantly reduces the number of Doppler-code phase search grids, lowers the computational load and processing time of a single acquisition, ensures that the real-time requirement of processing time ≤ buffering time is met, and specifically adapts to application scenarios with existing prior information, avoiding large-scale blind searches and improving acquisition efficiency and targeting.
[0018] Secondly, the present invention provides a device for real-time acquisition of GNSS signals, the device comprising: a buffer module for real-time buffering of GNSS signals processed by baseband front-end digital signal processing into an AEFIFO, wherein the storage space configuration of the AEFIFO satisfies that the processing time of the previous data segment is less than or equal to the buffering time of the next data segment; The system comprises the following modules: a reading module for reading a target data segment from the AEFIFO when the length of data cached in the AEFIFO reaches the data cache threshold; a signal generation module for locally generating a pseudo-code-carrier signal corresponding to a preset Doppler-code phase search range, wherein the data cache threshold is the sampling data length corresponding to the coherent integration duration or the pseudo-code period of the signal; a processing module for performing coherent integration processing on the target data segment and the pseudo-code-carrier signal, taking the amplitude of the coherent integration result, superimposing it with historical incoherent accumulation results, and temporarily storing it; and a peak search module for repeatedly executing the reading, signal generation, coherent integration, and incoherent accumulation steps in the reading module, the signal generation module, and the processing module, performing a peak search on the incoherent accumulation results of all Doppler-code phase search grids when the number of incoherent integrations reaches a preset value, and determining the Doppler frequency and code phase corresponding to the maximum value as the GNSS signal acquisition result.
[0019] In one possible implementation of the second aspect, the AEFIFO employs a wraparound storage strategy, specifically including: the AEFIFO is pre-configured with fixed start and end addresses, and the GNSS signal after baseband front-end digital signal processing is written sequentially in real time starting from the start address; when the writing address reaches the end address, it automatically jumps to the start address to rewrite, so as to overwrite the original data at the start address and subsequent addresses.
[0020] Thirdly, an electronic device is provided, the electronic device including a memory and one or more processors; the memory is coupled to the processors; wherein the memory stores computer program code, the computer program code including computer instructions, which, when executed by the processor, cause the electronic device to perform the method as described in any implementation of the first aspect.
[0021] Fourthly, a computer-readable storage medium is provided, including computer instructions that, when executed on an electronic device, cause the electronic device to perform a method as described in any implementation of the first aspect.
[0022] Fifthly, a computer program product is provided that, when run on a computer, causes the computer to perform the method in any implementation of the first aspect.
[0023] It is understood that the beneficial effects achieved by the apparatus of the second aspect, the electronic device of the third aspect, the computer-readable storage medium of the fourth aspect, and the computer program product of the fifth aspect provided above can be referred to the beneficial effects of the first aspect and any possible design thereof, which will not be repeated here. Attached Figure Description
[0024] Figure 1This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention; Figure 2 A flowchart illustrating a method for real-time acquisition of GNSS signals provided in an embodiment of the present invention; Figure 3 This is a schematic diagram of a signal acquisition device provided in an embodiment of the present invention. Detailed Implementation
[0025] The technical solutions of the embodiments of the present invention will be described below with reference to the accompanying drawings. In the description of the present invention, unless otherwise stated, " / " indicates that the objects before and after are in an "or" relationship. For example, A / B can represent A or B. The "or" in the present invention is merely a description of the relationship between the related objects, indicating that three relationships can exist. For example, A or B can represent: A alone, A and B simultaneously, and B alone. A and B can be singular or plural. Furthermore, in the description of the present invention, unless otherwise stated, "multiple" refers to two or more. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items.
[0026] Furthermore, to facilitate a clear description of the technical solutions of the embodiments of the present invention, the terms "first" and "second" are used in the embodiments of the present invention to distinguish identical or similar items with essentially the same function and effect. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and that the terms "first" and "second" are not necessarily different.
[0027] In this embodiment of the invention, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design described as "exemplary" or "for example" in this embodiment of the invention should not be construed as superior or more advantageous than other embodiments or designs. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner for ease of understanding.
[0028] In Global Navigation System (GNSS) receivers, signal acquisition is a prerequisite for subsequent tracking and positioning. The core objective is to obtain a rough estimate of the carrier frequency and code phase of the visible satellite signal. Existing acquisition schemes require pre-storing the signal to be processed in a fixed-length AEFIFO (Acquire Engine FIFO), then constructing a Doppler-code phase two-dimensional search grid, generating a local signal, and performing coherent-incoherent integration with the received signal. Finally, the acquisition result is determined through peak search.
[0029] To improve acquisition sensitivity, it is usually necessary to extend the total integration processing time. However, due to the influence of message bit flipping, the coherent integration time cannot exceed the message bit period, and can only be achieved by increasing the number of incoherent integrations. The longer the integration time, the larger the required AEFIFO storage space. Based on cost and chip area considerations, the AEFIFO space of GNSS chips is usually not designed to be too large, making it difficult to further improve acquisition sensitivity by extending the integration time.
[0030] In existing related technologies, some solutions improve processing efficiency by optimizing coherent and non-coherent integration or compressing data volume, but they still do not overcome the limitation of integration time imposed by the AEFIFO storage space. All of these solutions require pre-caching all data to be processed before starting processing, which is a non-real-time processing mode. Another solution extends the coherent integration time by estimating the message bit flipping time, but this is complex to implement in hardware and has low practicality. Therefore, there is an urgent need for a real-time acquisition solution that can support long-term integration within a limited AEFIFO space.
[0031] In view of this, embodiments of the present invention provide a method and apparatus for real-time acquisition of GNSS signals. The method includes: real-time buffering of GNSS signals processed by baseband front-end digital signal processing into an AEFIFO, wherein the storage space configuration of the AEFIFO is such that the processing time of the previous data segment is less than or equal to the buffering time of the next data segment; when the length of data buffered in the AEFIFO reaches the data buffering threshold, reading a target data segment from the AEFIFO, and simultaneously generating a pseudo-code-carrier signal corresponding to a preset Doppler-code phase search range locally, wherein the data buffering threshold is the sampling data length corresponding to the coherent integration time or the pseudo-code period of the signal; performing coherent integration processing on the target data segment and the pseudo-code-carrier signal, taking the amplitude of the coherent integration result, superimposing it with historical incoherent accumulation results, and temporarily storing it; repeatedly executing the reading, signal generation, coherent integration, and incoherent accumulation steps; when the number of incoherent integrations reaches a preset value, performing a peak search on the incoherent accumulation results of all Doppler-code phase search grids, and determining the Doppler frequency and code phase corresponding to the maximum value as the GNSS signal acquisition result.
[0032] The method provided by this invention caches GNSS signals in real time to an AEFIFO, limiting the AEFIFO storage space to ensure that the processing time of the previous data segment is less than or equal to the caching time of the next data segment. Data reading, pseudocode-carrier signal generation, coherent integration, and incoherent accumulation are performed only when the cached data reaches a threshold corresponding to the coherent integration duration. This process is repeated until the incoherent integration count reaches the target, after which the result is output via peak search. This design overcomes the limitation of the fixed AEFIFO space on the integration duration in traditional schemes. It eliminates the need to pre-store all data, achieving long-term integration through real-time processing and cyclic accumulation. While controlling the AEFIFO space size, it significantly improves the acquisition sensitivity of GNSS signals, and the process logic is coherent, ensuring the timeliness and accuracy of data processing.
[0033] In some embodiments, a method for real-time acquisition of GNSS signals provided by the present invention can be performed by a device 100 for real-time acquisition of GNSS signals (hereinafter referred to as signal acquisition device 100).
[0034] As an example, the signal acquisition device 100 can be any electronic device 200 with data processing capabilities, such as a general-purpose computer, personal computer, laptop computer, switch, or tablet computer. The specific implementation of the signal acquisition device 100 is not limited here.
[0035] Figure 1 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present invention is shown. The electronic device 200 includes a processor 210, a memory 220, and a communication interface 230.
[0036] Processor 210 may include one or more processing cores. Processor 210 connects to various parts within electronic device 200 using various interfaces and lines, and performs various functions and processes data of electronic device 200 by running or executing instructions, programs, code sets, or instruction sets stored in memory 220, and by calling data stored in memory 220. Optionally, processor 210 may be implemented using at least one of the following hardware forms: Central Processing Unit (CPU), Graphics Processing Unit (GPU), Digital Signal Processing (DSP), Field-Programmable Gate Array (FPGA), and Programmable Logic Array (PLA).
[0037] The memory 220 may include random access memory (RAM) or read-only memory (ROM). Optionally, the memory 220 may include a non-transitory computer-readable storage medium. The memory 220 may be used to store instructions, programs, code, code sets, or instruction sets. The memory 220 may include a program storage area. This program storage area may store instructions for implementing an operating system, instructions for implementing at least one function, instructions for implementing the various method embodiments described above, etc.
[0038] The communication interface 230 is used to communicate with other devices, equipment, or communication networks, such as data storage devices, image processing devices, or Ethernet, wireless access networks (RAN), wireless local area networks (WLAN), etc.
[0039] In terms of physical implementation, the aforementioned devices (such as processor 210, memory 220, and communication interface 230) can each be devices within the same device (such as a laptop computer). Alternatively, at least two of these devices can be located within the same device, i.e., as different devices within a single device, similar to the deployment of devices or components in a distributed system.
[0040] It is understood that the structure illustrated in this embodiment does not constitute a specific limitation on the electronic device 200. In other embodiments of the present invention, the electronic device 200 may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
[0041] The following description, in conjunction with the accompanying drawings, illustrates a method for real-time acquisition of GNSS signals provided by an embodiment of the present invention.
[0042] Figure 2 This is a flowchart illustrating a method for real-time acquisition of GNSS signals provided in an embodiment of the present invention. Optionally, this method can be... Figure 1 The illustrated electronic device 200 performs this method, which includes the following steps: S1. The GNSS signal processed by the baseband front-end digital signal is cached in real time to AEFIFO.
[0043] Specifically, the storage space configuration of the AEFIFO ensures that the processing time of the previous data segment is less than or equal to the caching time of the next data segment.
[0044] In some embodiments, the baseband front-end digital signal processing specifically includes: converting the received GNSS signal to zero intermediate frequency, adjusting the signal sampling rate to twice the pseudocode rate through downsampling processing, and adjusting the signal center frequency to a preset Doppler search center frequency point to ensure the frequency consistency between the target data segment and the locally generated pseudocode-carrier signal.
[0045] It should be noted that the input data, after passing through the baseband front-end digital signal processing module, transforms the signal to the corresponding zero intermediate frequency (IF), reduces the sampling rate to twice the pseudo-code rate, and then buffers it in the AEFIFO. For ease of description, the memory space size described in subsequent embodiments uses the time length, which multiplied by the sampling rate gives the number of sampling points.
[0046] The method provided by this invention clearly defines the baseband front-end digital signal processing as including zero-IF transformation, downsampling to twice the pseudocode rate, and adjusting the center frequency to a preset Doppler search center frequency. Zero-IF transformation simplifies the carrier modulation and demodulation process, while downsampling to twice the pseudocode rate reduces processing overhead while preserving signal integrity. Center frequency calibration ensures frequency consistency between the target data segment and the local pseudocode-carrier signal, reducing frequency deviation in coherent integration from the source, improving the accuracy of the integration results, and providing a high-quality data foundation for subsequent incoherent accumulation and peak search.
[0047] In one possible implementation, the AEFIFO employs a wraparound storage strategy, specifically including: the AEFIFO is pre-configured with fixed start and end addresses, and GNSS signals processed by the baseband front-end digital signal are written sequentially in real time starting from the start address; when the writing address reaches the end address, it automatically jumps to the start address to rewrite, thereby overwriting the original data at the start address and subsequent addresses.
[0048] It should be understood that, from the perspective of the input data stream, the receiver continuously buffers data into the AEFIFO in real time. Data is buffered starting from a preset start address, and the buffer address gradually increases as the data stream continues to input. When the preset end address is reached, a wraparound occurs, and data is buffered again starting from the start address, overwriting the data at the previously entered address. Through this wraparound operation, data of any length can be buffered in real time into an AEFIFO of finite length.
[0049] The method provided by this invention configures a fixed start and end address for the AEFIFO and employs a wraparound storage strategy. Once the end address is full, the system automatically jumps to the start address to overwrite the existing data. This strategy allows the limited AEFIFO space to continuously buffer real-time input GNSS signals, supporting data buffering for any duration without expanding hardware storage capacity. This reduces hardware costs and chip area usage, while avoiding integration interruptions due to insufficient data buffering, providing a reliable storage foundation for long-term integration acquisition.
[0050] In some embodiments, the storage space of the AEFIFO is not less than the sum of twice the sampling data length corresponding to the data buffer threshold and the sampling data length corresponding to the 1ms pseudocode period, and the sampling data length corresponding to the pseudocode period is the number of sampling points corresponding to the pseudocode period of the signal.
[0051] It should be noted that the pseudo-code period is 1ms for GPS L1CA / BDS B1I and GLO L1OF signals, while it is 4ms for GAL E1B / E1C signals.
[0052] The method provided by this invention limits the AEFIFO storage space to be no less than the sum of the sampling length corresponding to twice the data cache threshold and the sampling length of the 1ms pseudocode period. This configuration ensures that when processing the previous data segment, new data can be cached in the remaining space without being overwritten, thus guaranteeing the continuity of real-time processing and avoiding data loss or processing failure due to unreasonable storage space configuration.
[0053] It should be understood that the intermediate frequency (IF) data is preprocessed and downsampled to twice the pseudo-code rate, and the center frequency is transformed to a preset Doppler search center frequency. Whenever the data storage count reaches a preset threshold, the corresponding FIFO overflow flag is set, and the capture FIFOReadFlag flag is also set, updating the next cache threshold. If the data write address reaches the preset FIFOSIZE, wrapback is performed. Only when the overflow flag is detected will the capture engine perform a coherent integration process.
[0054] S2. When the length of the data cached in the AEFIFO reaches the data cache threshold, the target data segment is read from the AEFIFO, and at the same time, a pseudo-code-carrier signal corresponding to the preset Doppler-code phase search range is generated locally.
[0055] The data buffer threshold is the sampling data length corresponding to the coherent integration time or the pseudocode period of the signal.
[0056] In one example, when the length of data cached in the AEFIFO reaches the data cache threshold, the target data segment is read from the AEFIFO, specifically including: Specifically, in the aforementioned wraparound buffer operation, the previously stored data will be overwritten after wraparound occurs. Therefore, it is necessary to process the data before it is overwritten to ensure that the overwritten data will not be used again later. This also requires the receiver to process the data in real time, rather than waiting until all data is buffered in the AEFIFO before initiating data acquisition (as in traditional acquisition designs). Whenever a sufficient amount of data is buffered in the AEFIFO, the signal acquisition device initiates processing of that data segment. After processing, the calculation result is saved and the device enters a sleep state until the next buffered data length reaches a preset threshold. The signal acquisition device automatically switches between working and sleep states based on the data buffer length. Throughout the entire process, the real-time data buffering process operates normally and is unaffected.
[0057] In another possible implementation, the data buffer threshold can be freely set, either to the pseudo-code period (1ms for GPSL1CA / BDSB1I / GLOL1OF signals, 4ms for GALE1 signals) or to the coherent integration duration. When the data buffer threshold is set to the pseudo-code period, the signal acquisition device needs to buffer the relevant and incoherent integration accumulation results of all grid points, as well as the corresponding coherent and incoherent integration counts, after processing each data segment. When the data buffer threshold is set to the coherent integration duration, it needs to buffer the incoherent integration accumulation results and incoherent integration counts. To minimize the AEFIFO space, the data buffer threshold can be set to the pseudo-code period. To save intermediate data storage space, the data buffer threshold can be set to the coherent integration duration.
[0058] To facilitate understanding of this solution, the wraparound storage strategy provided by the embodiments of the present invention will be explained below with reference to an example.
[0059] Specifically, the wraparound storage strategy repeatedly writes and processes data within the limited AE FIFO space to handle data exceeding the direct buffering capacity, thereby achieving a longer integration time and improving the satellite signal acquisition probability. Since subsequent data gradually overwrites previous data, the data processing time must be less than the data buffering time. Different signals have different pseudo-code rates, resulting in varying data lengths that need to be processed within the same timeframe. Furthermore, real-time mode is not suitable for large-scale Doppler and code phase searches; a higher pseudo-code rate necessitates a smaller Doppler-code phase search grid to ensure real-time processing efficiency. In practical design, the maximum number of Doppler-code phase search grids needs to be calculated by considering the acquisition engine's clock frequency and the receiver's processing efficiency, allowing for a certain margin.
[0060] Taking GPS L1CA signals as an example, for the aforementioned looping strategy, the minimum data length processed by the AE is 1ms of sampling points to complete one complete pseudocode cycle of matched filtering. However, if the data buffered each time is exactly 1ms, then for the first millisecond of data, since each correlator has its own different initial phase, it will skip the data before the initial phase and begin 1ms of matched filtering. Since the data length is less than 1ms, the data cannot complete the matched filtering for the complete pseudocode cycle. To solve this problem, at least 1ms of data can be buffered during the first data buffering. This ensures that all correlators can complete 1ms of matched filtering. When subsequent data is buffered, the AE only needs to read the data segment after each 1ms buffering is completed, and combine it with the previous 1ms of data to complete 1ms of matched filtering for each correlator. The matched filtering result is then subjected to coherent integration and incoherent integration. From the above analysis, we can conclude that... For BDSB1I non-GEO signals, if the coherent integration time is set to 20ms, then the data read length per process (process_len) is 20ms, and the total FIFO length is at least 60ms. After buffering 40ms of data initially, the NH code start address is found, and each correlator begins matched filtering processing for different initial code phases. After buffering every subsequent 20ms of data, the AE combines the data from the previous 20ms with continuous matched filtering. In actual processing, after determining the total coherent and incoherent integration parameters, the threshold p for each data segment length can be freely configured. Therefore, the AEFIFO length used is 2*p+k, where k is the initial buffer length of additional data, at least 1ms of sampling points.
[0061] In summary, the register / flag that needs to be added is the real-time mode flag (mode). Users can choose to use real-time mode or normal storage mode through configuration. Normal storage mode is generally used for cold boots, while real-time mode is used for hot boots in high-sensitivity scenarios.
[0062] The initial cache requires a data length L. Compared to subsequent caches, an additional data length k needs to be cached, i.e., L = p + k. The length p of each cached data segment determines the length of each subsequent cached data segment. The storage space size FIFO_len corresponds to the wraparound strategy in real-time mode. This value has a maximum size of AEFIFO and a minimum of 3ms of sampled data length.
[0063] Taking GPS L1CA signals as an example, the required integration time is 2 seconds. Real-time mode is used for processing by setting the mode. In this mode, L can be set to a data length of 21ms, p to 20ms, and FIFO_len to 41ms. The coherent integration time is set to 20ms, and the number of incoherent integration iterations is 100. After the AE completes 100 data buffering iterations, it stops buffering data. After processing 2 seconds of data, the AE provides a peak capture result for decision-making.
[0064] Another point to consider is how to align the data with the 20ms boundary. Since the timing of initiating capture is random, the moment when the AEFIFO starts buffering data is also random. Therefore, the moment of the first point in the AEFIFO is uniformly distributed within one message bit period. The hot-start time can be obtained from the RTC counter at power-on, and its time and Doppler ambiguity change linearly depending on the counter size. The longer the hot-start interval, the larger the RTC count value, and the ambiguity increases linearly accordingly. After the AEFIFO starts buffering data, the software can calculate the moment corresponding to the first sampling point based on the latch result of the first data buffer moment and other prior information. Based on this and the phase ambiguity, data before the 20ms boundary can be skipped by setting readAddr, and the AEFIFO can save the bit boundary corresponding to readAddr. Therefore, the first buffered data segment needs to be buffered for an additional bit period, i.e., FIFO_len needs to be set to 41ms of data.
[0065] S3. Perform coherent integration processing on the target data segment and the pseudocode-carrier signal, take the amplitude of the coherent integration result, and then superimpose it with the historical non-coherent accumulation result and temporarily store it.
[0066] S4. Repeat the reading, signal generation, coherent integration and incoherent accumulation steps. When the number of incoherent integrations reaches a preset value, perform peak search on the incoherent accumulation results of all Doppler-code phase search grids, and determine the Doppler frequency and code phase corresponding to the maximum value as the GNSS signal acquisition result.
[0067] In some embodiments, the preset Doppler-code phase search range is adapted to hot-start or lock-down reacquisition scenarios and is determined based on prior information of satellite signals; wherein, the Doppler frequency search range does not exceed a preset frequency range, and the code phase search range does not exceed the number of chips corresponding to a preset duration, so as to reduce the number of search grids.
[0068] In one example, the preset frequency range is ±500Hz and the preset duration is 0.1ms.
[0069] It should be understood that the preset frequency range and preset duration can be adjusted according to the time ambiguity range. If the time interval between hot start or recapture after lockout is small, the preset frequency range can be further reduced accordingly; conversely, the preset frequency range needs to be increased. However, this needs to be evaluated based on the hardware processing speed. Too many Doppler-code phase search grids can lead to the inability to process in real time. In this case, it is advisable to divide the grid into multiple real-time processing operations, completing the grid acquisition and search through multiple real-time captures. This invention does not impose any particular limitations on this.
[0070] The method provided by this invention adapts a preset Doppler-code phase search range to hot-start or re-acquisition scenarios, limiting the Doppler frequency range to no more than a preset frequency range and the code phase range to no more than the number of chips corresponding to a preset duration based on prior information. This design significantly reduces the number of Doppler-code phase search grids, lowers the computational load and processing time of a single acquisition, ensures that the real-time requirement of processing time ≤ buffering time is met, and specifically adapts to application scenarios with existing prior information, avoiding large-scale blind searches and improving acquisition efficiency and targeting.
[0071] As shown in S1-S4, the method provided by this invention caches GNSS signals in real time to an AEFIFO, limiting the AEFIFO storage space to ensure that the processing time of the previous data segment is less than or equal to the caching time of the next data segment. Data reading, pseudo-code-carrier signal generation, coherent integration, and incoherent accumulation operations are performed only when the cached data reaches the threshold corresponding to the coherent integration time. This process is repeated until the incoherent integration count reaches the target, after which the result is output through peak search. This design overcomes the limitation of the fixed space of the AEFIFO in traditional schemes on the integration time. It eliminates the need to pre-store all data, achieving long-term integration through real-time processing and cyclic accumulation. While controlling the AEFIFO space size, it significantly improves the acquisition sensitivity of GNSS signals, and the process logic is coherent, ensuring the timeliness and accuracy of data processing.
[0072] In one possible implementation, when data is first cached in the AEFIFO, the length of the cached data is L; where L is determined by the formula L=p+k, p is the sampled data length corresponding to the data cache threshold, and k is the additional cached data length and not less than the number of sampled data points corresponding to a 1ms pseudocode period; subsequently, when data is cached in the AEFIFO each time, the length of the cached data is p, to ensure that all correlators can complete the matched filtering processing of the complete pseudocode period.
[0073] It should be noted that the coherent integration duration is used as the data buffering threshold. Whenever the data buffered in the AEIFO is long enough for one coherent integration, the signal acquisition device 100 processes the signal. For the first processing, an additional data segment needs to be buffered (equivalent to buffering an additional k segment on top of p, hence L=p+k), to correspond to the approximate pseudocode start time. Based on the pre-planned Doppler code phase search range, a pseudocode sequence of the corresponding length is locally generated and modulated with a carrier at a preset frequency to obtain local data. Data is read starting from the end address of the previous processing, and coherent integration is performed with the locally generated data. The amplitude of the coherent integration result is taken and added to the previous incoherent accumulated amplitude; the result is then temporarily stored.
[0074] To ensure the proper functioning of real-time mode, it's crucial to prevent data in the AEFIFO from being overwritten by subsequent data before processing is complete. Firstly, the AEFIFO space cannot be too small; it must ensure that real-time data is cached in a separate space while the previous data segment is being captured and processed. Secondly, the time spent capturing and processing the previous data segment must not exceed the caching time for the next data segment.
[0075] The method provided by this invention employs an initial buffer length of L and subsequent buffer lengths of p, where k is not less than the 1ms pseudocode period sampling length. The initial additional buffer of k-value data accurately locates the pseudocode start time, solving the problem of complete pseudocode period matched filtering failure caused by insufficient initial data length. Subsequent fixed buffers of p-value data ensure the continuity of integration processing and avoid the waste of storage space caused by additional buffering, ensuring that all correlators can stably complete the complete pseudocode period matched filtering, thus improving the reliability of the acquisition results.
[0076] To facilitate understanding of this solution, the following example will be used to further explain and illustrate the method provided in the embodiments of the present invention.
[0077] In one example, the method provided by this embodiment of the invention includes the following steps: First, the signal acquisition device 100 configures the AE acquisition parameters through software, including coherent and non-coherent integration time, Doppler step and search range, code phase search range, etc., configures the size of AEFIFO and the corresponding start and end addresses, and configures the length L of each data processing, which is generally set to the coherent integration time length plus the extra buffer length (p+k).
[0078] Then, the signal acquisition device 100 reads the configuration parameters through hardware and starts real-time data storage from the data start position. When the write address reaches the end address, it jumps to the start position and continues to write data in real time. The hardware saves the starting address of the data and the data length counter data_cnt, and the counter is incremented by 1 for each new data point.
[0079] Next, the signal acquisition device 100 determines whether data_cnt is greater than the threshold p. If it is, it reads data of a set length p from the current starting address for acquisition processing, then updates the address to the beginning of the next data segment, and updates the data length data_cnt = data_cnt - p; otherwise, it waits until the data length is sufficient. The signal acquisition device 100 performs relevant processing on the read-in data through the acquisition engine, performing coherent integration processing on each preset Doppler-code phase grid. Then, the signal acquisition device 100 takes the amplitude of the coherent integration result and adds it to the previous incoherent accumulation result of each Doppler-code phase grid, incrementing the incoherent count by 1. Finally, the signal acquisition device 100 determines whether the incoherent count has reached the threshold (number of incoherent integrations). If not, the acquisition engine temporarily sleeps until data_cnt is greater than the threshold, and then jumps to the step of determining whether data_cnt is greater than the threshold p. If so, it means that the coherent and incoherent processing has been completed, and a peak search is performed from the incoherent accumulation result of the Doppler-code phase grid. The Doppler-code phase corresponding to the maximum value is the real-time acquisition result.
[0080] It should be noted that the real-time mode startup process is as follows: The software first configures the registers, and then notifies the hardware to start caching real-time data into the AEFIFO. When the hardware caches the first point into the AEFIFO, it automatically latches the hardware count at the corresponding moment. After latching is completed, a flag is set. After the software reads the flag set, it reads the latched hardware count value, calculates the time of the AEFIFO data start point, and then obtains the starting read address corresponding to real-time capture. This address, along with all other capture configuration parameters, is configured into the read / write buffer. After the AEFIFO completes the caching of the first segment of data, the capture engine automatically reads the read / write buffer to obtain the configuration information and performs capture processing.
[0081] The data caching process is as follows: Intermediate frequency (IF) data is preprocessed and downsampled to twice the pseudo-code rate, and the center frequency is transformed to a preset Doppler search center frequency. Whenever the data storage count reaches a preset threshold, the corresponding FIFO overflow flag is set, and the capture FIFOReadFlag flag is also set, updating the next cache threshold. If the data write address reaches a preset FIFOSIZE, wrapback is performed. The capture engine only performs coherent integration processing when the overflow flag is detected.
[0082] Furthermore, the coherent and non-coherent processing flow is as follows: In real-time mode, the acquisition engine starts processing after each data storage of a preset length. First, it reads the configuration from the register and generates local carrier data modulated with pseudocode corresponding to the Doppler frequency. By adjusting the data read start address, it performs integration processing on different code phase grids. After completing the data processing for the coherent integration duration, it takes the amplitude and performs non-coherent accumulation with the previous result. Then, it performs the above integration processing on the next code phase, repeating this operation until the coherent integration of all code phases is completed, at which point the acquisition engine enters sleep mode.
[0083] In real-time mode, the read / write buffer state of the capture engine needs to be written back. During each coherent integration process, after the last jump completes the coherent integration process, its state is updated in the read / write buffer. It is important to note that, apart from the data read address, all other parameters and states should be completely identical between different code phase search grids.
[0084] Optionally, the read / write operation process of the read / write buffer is as follows: When the data length stored in the AEFIFO in real time reaches a preset threshold, the capture engine will start processing. The program first reads the status information of the capture engine from the read / write buffer, performs coherent integration on each code phase one by one, performs incoherent accumulation after completing the coherent integration, and rereads the status information in the read / write buffer to process the next code phase address. The above operation is repeated until all code phase search grids are processed. At this time, the current status information is written back to the read / write buffer, the capture engine ends processing, and waits for the next time the cached data reaches the threshold.
[0085] The foregoing mainly describes the solutions of the embodiments of the present invention from a methodological perspective. It is understood that, in order to achieve the above-mentioned functions, the signal acquisition device 100 includes at least one of the hardware structures and software modules corresponding to the execution of each function. Those skilled in the art should readily recognize that, in conjunction with the units and algorithm steps of the various examples described in the embodiments disclosed herein, the embodiments of the present invention can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the embodiments of the present invention.
[0086] In this embodiment of the invention, the signal acquisition device 100 can be divided into functional units according to the above method example. For example, the signal acquisition device 100 can be divided into functional units corresponding to various functions, or two or more functions can be integrated into one processing unit. The integrated unit can be implemented in hardware or as a software functional unit. It should be noted that the unit division in this embodiment of the invention is illustrative and only represents one logical functional division; other division methods may be used in actual implementation.
[0087] For example, Figure 3 This diagram illustrates the hardware structure of a signal acquisition device according to an embodiment of the present invention. The signal acquisition device 100 includes: a buffer module 110, used to buffer the GNSS signal processed by the baseband front-end digital signal into an AEFIFO in real time, wherein the storage space configuration of the AEFIFO satisfies that the processing time of the previous data segment is less than or equal to the buffering time of the next data segment; The reading module 120 is used to read a target data segment from the AEFIFO when the length of the data cached in the AEFIFO reaches the data cache threshold. The signal generation module 130 is used to locally generate a pseudo-code-carrier signal corresponding to a preset Doppler-code phase search range. The data buffer threshold is the sampling data length corresponding to the coherent integration time or the pseudo-code period of the signal. Processing module 140 is used to perform coherent integration processing on the target data segment and the pseudocode-carrier signal, take the amplitude of the coherent integration result, and then superimpose and temporarily store it with the historical incoherent accumulation result. The peak search module 150 is used to repeatedly execute the reading, signal generation, coherent integration, and incoherent accumulation steps in the reading module 120, the signal generation module 130, and the processing module 140. When the number of incoherent integrations reaches a preset value, peak search is performed on the incoherent accumulation results of all Doppler-code phase search grids, and the Doppler frequency and code phase corresponding to the maximum value are determined as the GNSS signal acquisition result.
[0088] Optionally, the AEFIFO adopts a wraparound storage strategy, specifically including: the AEFIFO is pre-configured with a fixed start address and end address, and the GNSS signal after baseband front-end digital signal processing is written sequentially in real time starting from the start address; when the writing address reaches the end address, it automatically jumps to the start address to rewrite, so as to overwrite the original data at the start address and subsequent addresses.
[0089] It should be understood that specific descriptions of the above-mentioned optional methods can be found in the foregoing method embodiments, and will not be repeated here. Furthermore, explanations of any of the signal acquisition devices 100 provided above, as well as descriptions of their beneficial effects, can be found in the corresponding method embodiments described above, and will not be repeated here.
[0090] This invention also provides a computer-readable storage medium storing at least one computer instruction, which is loaded and executed by a processor to implement the methods of the various embodiments described above. Explanations of the relevant content and descriptions of the beneficial effects of any of the computer-readable storage media provided above can be found in the corresponding embodiments described above, and will not be repeated here.
[0091] This invention also provides a chip. This chip integrates a control circuit for implementing the functions of the signal acquisition device 100 described above, and one or more ports. Optionally, the functions supported by this chip are as described above, and will not be repeated here.
[0092] Those skilled in the art will understand that the program for implementing all or part of the steps of the above embodiments, which can be executed by a program instructing related hardware, can be stored in a computer-readable storage medium. The storage medium mentioned above can be a read-only memory, a random access memory, etc. The processing unit or processor mentioned above can be a central processing unit, a general-purpose processor, an application-specific integrated circuit (ASIC), a microprocessor (DSP), a field-programmable gate array (FPGA), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
[0093] This invention also provides a computer program product containing instructions that, when executed on a computer, cause the computer to perform any of the methods described in the above embodiments. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this invention is generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions may be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., SSD), etc.
[0094] It should be noted that the devices for storing computer instructions or computer programs provided in the embodiments of the present invention, such as, but not limited to, the aforementioned memory, computer-readable storage medium, and communication chip, are all non-transitory. Those skilled in the art should recognize that the functions described in the embodiments of the present invention in one or more of the above examples can be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable storage medium or transmitted as one or more instructions or code on a computer-readable storage medium. Computer-readable storage media include computer storage media and communication media, wherein communication media include any medium that facilitates the transmission of computer programs from one place to another. Storage media can be any available medium accessible to general-purpose or special-purpose computers.
[0095] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A method for real-time acquisition of GNSS signals, characterized in that, The method includes: The GNSS signal processed by the baseband front-end digital signal is cached in real time to the AEFIFO, wherein the storage space configuration of the AEFIFO is such that the processing time of the previous data segment is less than or equal to the caching time of the next data segment. When the length of data cached in the AEFIFO reaches the data cache threshold, the target data segment is read from the AEFIFO, and at the same time, a pseudo-code-carrier signal corresponding to the preset Doppler-code phase search range is generated locally. The data cache threshold is the sampling data length corresponding to the coherent integration time or the pseudo-code period of the signal. The target data segment and the pseudocode-carrier signal are coherently integrated. The amplitude of the coherent integration result is taken and then superimposed with the historical incoherent accumulation result and temporarily stored. Repeat the steps of reading, signal generation, coherent integration, and incoherent accumulation. When the number of incoherent integrations reaches a preset value, perform peak search on the incoherent accumulation results of all Doppler-code phase search grids, and determine the Doppler frequency and code phase corresponding to the maximum value as the GNSS signal acquisition result.
2. The method for real-time acquisition of GNSS signals according to claim 1, characterized in that, The AEFIFO employs a wraparound storage strategy, specifically including: the AEFIFO is pre-configured with fixed start and end addresses; GNSS signals processed by the baseband front-end digital signal are written sequentially in real time starting from the start address; when the writing address reaches the end address, it automatically jumps to the start address to rewrite, thereby overwriting the original data at the start address and subsequent addresses.
3. The method for real-time acquisition of GNSS signals according to claim 2, characterized in that, The storage space of the AEFIFO is not less than twice the sum of the sampling data length corresponding to the data buffer threshold and the sampling data length corresponding to the 1ms pseudocode period, and the sampling data length corresponding to the pseudocode period is the number of sampling points corresponding to the pseudocode period of the signal.
4. The method for real-time acquisition of GNSS signals according to claim 1, characterized in that, When data is first cached in the AEFIFO, the cached data length is L; where L is determined by the formula L=p+k, p is the sampled data length corresponding to the data cache threshold, and k is the additional cached data length and not less than the number of sampled data points corresponding to a 1ms pseudocode period; each subsequent time data is cached in the AEFIFO, the cached data length is p, to ensure that all correlators can complete the matched filtering process for the entire pseudocode period.
5. The method for real-time acquisition of GNSS signals according to claim 1, characterized in that, The baseband front-end digital signal processing specifically includes: converting the received GNSS signal to zero intermediate frequency, adjusting the signal sampling rate to twice the pseudocode rate through downsampling processing, and adjusting the signal center frequency to a preset Doppler search center frequency to ensure the frequency consistency between the target data segment and the locally generated pseudocode-carrier signal.
6. The method for real-time acquisition of GNSS signals according to claim 1, characterized in that, The preset Doppler-code phase search range is adapted to hot-start or lock-down reacquisition scenarios and is determined based on prior information of satellite signals. The Doppler frequency search range does not exceed a preset frequency range, and the code phase search range does not exceed the number of chips corresponding to a preset duration, so as to reduce the number of search grids.
7. A device for real-time acquisition of GNSS signals, characterized in that, The device includes: The caching module is used to cache the GNSS signal after digital signal processing by the baseband front-end to the AEFIFO in real time. The storage space configuration of the AEFIFO is such that the processing time of the previous data segment is less than or equal to the caching time of the next data segment. The reading module is used to read the target data segment from the AEFIFO when the length of the data cached in the AEFIFO reaches the data cache threshold; The signal generation module is used to locally generate a pseudo-code-carrier signal corresponding to a preset Doppler-code phase search range. The data buffer threshold is the sampling data length corresponding to the coherent integration time or the pseudo-code period of the signal. The processing module is used to perform coherent integration processing on the target data segment and the pseudocode-carrier signal, take the amplitude of the coherent integration result, and then superimpose and temporarily store it with the historical incoherent accumulation result. The peak search module is used to repeatedly execute the reading, signal generation, coherent integration, and incoherent accumulation steps in the reading module, the signal generation module, and the processing module. When the number of incoherent integrations reaches a preset value, the module performs a peak search on the incoherent accumulation results of all Doppler-code phase search grids and determines the Doppler frequency and code phase corresponding to the maximum value as the GNSS signal acquisition result.
8. The apparatus for real-time acquisition of GNSS signals according to claim 7, characterized in that, The AEFIFO employs a wraparound storage strategy, specifically including: the AEFIFO is pre-configured with fixed start and end addresses; GNSS signals processed by the baseband front-end digital signal are written sequentially in real time starting from the start address; when the writing address reaches the end address, it automatically jumps to the start address to rewrite, thereby overwriting the original data at the start address and subsequent addresses.
9. An electronic device, characterized in that, include: processor; Memory used to store the processor's executable instructions; The processor is configured to execute the instructions to implement the method for real-time acquisition of GNSS signals as described in any one of claims 1-6.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores at least one computer program, which is loaded and executed by a processor to enable the computer to implement the method for real-time acquisition of GNSS signals as described in any one of claims 1-6.