CN112698364B - Compatible modern GNSS signal ranging code generation method - Google Patents
Compatible modern GNSS signal ranging code generation method Download PDFInfo
- Publication number
- CN112698364B CN112698364B CN202011436153.2A CN202011436153A CN112698364B CN 112698364 B CN112698364 B CN 112698364B CN 202011436153 A CN202011436153 A CN 202011436153A CN 112698364 B CN112698364 B CN 112698364B
- Authority
- CN
- China
- Prior art keywords
- sequence
- ram
- ranging
- ranging code
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 20
- 238000013461 design Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000007796 conventional method Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/24—Acquisition or tracking or demodulation of signals transmitted by the system
- G01S19/30—Acquisition or tracking or demodulation of signals transmitted by the system code related
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/35—Constructional details or hardware or software details of the signal processing chain
- G01S19/37—Hardware or software details of the signal processing chain
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Radar Systems Or Details Thereof (AREA)
Abstract
The invention discloses a compatible modern GNSS signal ranging code generation method, which comprises the following steps: storing the L sequence, the phase difference, the cut-off point and the ranging code to a CPU end; performing write initialization configuration on the Ram according to the storage content of the CPU end; performing read operation on the Ram; if the Ram is stored as an L sequence, inputting the L sequence into a digital circuit end, and generating a pilot frequency branch ranging code and a data branch ranging code through a time division multiplexing calculation unit; and if the Ram stores the ranging codes, outputting the ranging codes of the pilot frequency branch and the data branch. The invention transfers the generation of Weil code to the digital circuit end, and generates the needed pilot frequency branch ranging code and data branch ranging code in a time division multiplexing mode, thereby reducing the calculation amount of the CPU end and saving the storage resource.
Description
Technical Field
The invention relates to the field of satellite navigation positioning, in particular to a compatible modern GNSS signal ranging code generation method.
Background
The method for generating the ranging code is different from the original Gold code generation mode, wherein the B1C and L1C signals are generated in a Weil code cutting mode, and the E1 signal is a Ram code. The pilot and data branch ranging code periods of the B1C and L1C signals are 10ms, the chip length is 10230 chips, the pilot and data branch ranging code periods of the E1 are 4ms, and the chip length is 4092 chips. The code loop and carrier loop of the B1C, L1C, E1 signal track pilot frequency branches, and the demodulation text uses data branches. The conventional method is that a digital circuit end stores the ranging codes of the pilot frequency branch and the ranging codes of the data branch in a Ram and then outputs the ranging codes in a query mode; by configuring different ranging codes, one channel can be compatible with the ranging code output of three signals, and the conventional method for generating the ranging codes is shown in fig. 1. In the method, each channel occupies 20460bits of storage resources, and if the number of the tracking channels is 64, the storage resources of a 64X 20460bits digital circuit end are required to be occupied.
Another disadvantageous aspect is that, because the B1C and L1C signal ranging codes are generated in a Weil code cut-off manner, the Weil codes are generated as L sequences, if the L sequences are stored at the CPU end, the Weil codes of the corresponding satellites need to be calculated before each channel is opened, which can occupy a large amount of CPU computing resources; if the CPU end stores the ranging codes for each satellite, a large amount of storage resources of the CPU are occupied.
Disclosure of Invention
The invention aims to overcome the defects of the prior art and provides a compatible modern GNSS signal ranging code generation method.
The aim of the invention is realized by the following technical scheme:
a compatible modern GNSS signal ranging code generation method comprises the following steps:
storing the L sequence, the phase difference, the cut-off point and the ranging code to a CPU end;
performing write initialization configuration on the Ram according to the storage content of the CPU end;
performing read operation on the Ram;
if the Ram is stored as an L sequence, inputting the L sequence into a digital circuit end, and generating a pilot frequency branch ranging code and a data branch ranging code through a time division multiplexing calculation unit;
if the Ram stores the ranging codes, outputting pilot branch ranging codes and data branch ranging codes;
the design of the time division multiplexing calculation unit comprises the following steps:
determining the time period between every two code clocks of the time division multiplexing calculation unit according to the code rate of the ranging code corresponding to the L sequence and the working rate of the system clock;
at the moment of the count value 0, adding a pilot frequency branch phase difference as a read address on the basis of the chip count value; outputting a corresponding L sequence value lp_w from the Ram;
at the moment of count value 1, adding the pilot frequency branch phase difference and the interception point on the basis of the chip count value, and then taking the modulus of the byte length of the L sequence as a read address; outputting a corresponding L sequence value lp_wp from the Ram;
at the moment of count value 2, carrying out exclusive OR on lp_w and lp_wp to obtain a pilot frequency branch ranging code; meanwhile, on the basis of the chip count value, adding the phase difference of the data branch as a read address, and outputting a corresponding L sequence value Ld_w from the Ram;
at the moment of count value 3, adding the phase difference of the data branch and the interception point on the basis of the chip count value, then taking a modulus of the byte length of the L sequence, taking the modulus value as a read address, and outputting a corresponding L sequence value Ld_wp from the Ram;
and at the moment of the count value 4, carrying out exclusive OR on Ld_w and Ld_wp to obtain a data branch ranging code, and entering the next time period.
Further, the L sequence comprises a 10243bit L sequence and a 10223bit L sequence.
Further, the 10243bit L sequence is used for generating a ranging code of the B1C signal; the 10223bitsL sequence is used to generate a ranging code for the L1C signal.
Further, the ranging code is 8184bits ranging code, and is used for generating the ranging code of the E1 signal.
Further, the Ram is 10243bits in total, and the Ram includes a first portion and a second portion.
Further, the storage length of the first part is 4096bits, and the storage content is pilot frequency branch ranging code.
Further, the second part has a storage length of 6147bits, and the storage content is a data branch ranging code.
The invention has the beneficial effects that: the invention transfers the generation of Weil code to the digital circuit end, and generates the needed pilot frequency branch ranging code and data branch ranging code in a time division multiplexing mode, thereby reducing the calculation amount of the CPU end and saving the storage resource.
Drawings
Fig. 1 is a block diagram of a conventional ranging code generation method.
Fig. 2 is a schematic diagram of a ranging code generation method according to the present invention.
Fig. 3 is a timing diagram of B1C signal ranging code generation in the present invention.
Fig. 4 is a schematic diagram of E1 ranging code generation in the present invention.
Detailed Description
For a clearer understanding of technical features, objects, and effects of the present invention, a specific embodiment of the present invention will be described with reference to the accompanying drawings.
Embodiment 1, as shown in fig. 2, is a B1C signal ranging code generating process, which includes the following steps:
storing an L sequence, a phase difference and a cut-off point required by generating the B1C signal ranging code to a CPU end;
performing write initialization configuration on the Ram according to the storage content of the CPU end;
performing read operation on the Ram;
the L sequence is input into a time division multiplexing calculation unit to generate a pilot branch ranging code and a data branch ranging code.
The capacity of the Ram is 10243bits, and the length of the L sequence of the B1C signal ranging code is 10243bits.
The Ram is divided into two parts, wherein the first part is 4096bits, the second part is 6147bits, the first part stores the pilot frequency branch ranging code, and the second part stores the data branch ranging code.
After the L sequence is input into the time division multiplexing calculation unit, the process of generating the pilot frequency branch ranging code and the data branch ranging code comprises the following steps:
the code rate of the B1C signal is 1.023MHz, and the system clock works at 62MHz, so that 60 clocks are arranged between two code reading intervals and are represented by counters 0-59, and a time sequence diagram is shown in FIG. 3;
1) At the time of the count value 0, on the basis of the chip count value, adding a pilot frequency branch phase difference (w) as a read address, and at the time of the count value 1, ram outputs a corresponding L sequence value lp_w;
2) At the moment of count value 1, adding (w+p) the pilot frequency branch phase difference and the interception point on the basis of the chip count value, then taking a modulus to 10243, taking the modulus value as a read address, and outputting a corresponding L sequence value lp_wp at the moment of count value 2 Ram;
3) And (5) at the moment of the count value 2, carrying out exclusive OR on the lp_w and the lp_wp to obtain the pilot frequency branch ranging code. Meanwhile, at the moment, on the basis of a chip count value, a data branch phase difference (w) is added as a read address, and at the moment of 3, a corresponding L sequence value Ld_w is output by the Ram;
4) At the moment of count value 3, adding (w+p) the phase difference of the data branch and the interception point on the basis of the chip count value, then taking a modulus of 10243, taking the modulus value as a read address, and outputting a corresponding L sequence value Ld_wp at the moment of count value 4 Ram;
5) And (4) at the moment of counting value 4, carrying out exclusive OR on Ld_w and Ld_wp to obtain the data branch ranging code.
The L1C signal ranging code generation mode is the same as the B1C signal ranging code, the length of an L sequence required for generating the L1C signal ranging code is 10223bits, the ram storage size meets the requirement, and the program multiplexing mode is the same.
Embodiment 2, as shown in fig. 4, discloses a method for generating an E1 signal ranging code, which includes the following steps:
storing the E1 signal ranging code to a CPU end;
performing write initialization configuration on the Ram according to the storage content of the CPU end;
performing read operation on the Ram;
and outputting the pilot frequency branch ranging code and the data branch ranging code.
Wherein generating pilot branch ranging codes and data branch ranging codes comprises the following steps:
1) At the time of the count value 0, taking the chip count value as a read address, and outputting an E1 signal pilot frequency branch ranging code at the time of the count value 1 Ram;
2) At the time of count 1, the chip count value is shifted up by 4096 as the read address, and at the time of count 2 Ram, the data branch ranging code will be output.
The code rate of the E1 signal is 1.023MHz, the code length is 4092 chips, the period is 4ms, the E1 signal ranging code is defined through the ICD interface file, and the E1 signal ranging code can only be realized through a table look-up mode.
Each channel digital circuit end only needs 10243bits. If the number of the tracking channels is 64, the storage resources of 64× 10243bits are required. Meanwhile, the CPU end only needs to store an L sequence, a phase difference (w), a cut-off point (p) and an E1 signal ranging code; for B1C, L C, there is no need to store a ranging code for each satellite; the conventional method is that the Weil code generation is realized at the CPU end, and the Weil code generation is transplanted to the digital circuit end for realization, so that the calculation amount of the CPU end and the storage resource of the CPU end are reduced; the conventional method occupies two Rams of 10230bits, and the invention only needs to store L sequences of 10243bits at most in a time division multiplexing mode, thereby saving nearly half of storage resources at the digital circuit end.
The invention transfers the generation of Weil code to the digital circuit end, and generates the needed pilot frequency branch ranging code and data branch ranging code in a time division multiplexing mode, thereby reducing the calculation amount of the CPU end and saving the storage resource.
The foregoing has shown and described the basic principles and main features of the present invention and the advantages of the present invention. It will be understood by those skilled in the art that the present invention is not limited to the embodiments described above, and that the above embodiments and descriptions are merely illustrative of the principles of the present invention, and various changes and modifications may be made without departing from the spirit and scope of the invention, which is defined in the appended claims. The scope of the invention is defined by the appended claims and equivalents thereof.
Claims (7)
1. A compatible modern GNSS signal ranging code generation method is characterized by comprising the following steps:
storing the L sequence, the phase difference, the cut-off point and the ranging code to a CPU end;
performing write initialization configuration on the Ram according to the storage content of the CPU end;
performing read operation on the Ram;
if the Ram is stored as an L sequence, inputting the L sequence into a digital circuit end, and generating a pilot frequency branch ranging code and a data branch ranging code through a time division multiplexing calculation unit;
if the Ram stores the ranging codes, outputting pilot branch ranging codes and data branch ranging codes;
the design of the time division multiplexing calculation unit comprises the following steps:
determining the time period between every two code clocks of the time division multiplexing calculation unit according to the code rate of the ranging code corresponding to the L sequence and the working rate of the system clock;
at the moment of the count value 0, adding a pilot frequency branch phase difference as a read address on the basis of the chip count value; outputting a corresponding L sequence value lp_w from the Ram;
at the moment of count value 1, adding the pilot frequency branch phase difference and the interception point on the basis of the chip count value, and then taking the modulus of the byte length of the L sequence as a read address; outputting a corresponding L sequence value lp_wp from the Ram;
at the moment of count value 2, carrying out exclusive OR on lp_w and lp_wp to obtain a pilot frequency branch ranging code; meanwhile, on the basis of the chip count value, adding the phase difference of the data branch as a read address, and outputting a corresponding L sequence value Ld_w from the Ram;
at the moment of count value 3, adding the phase difference of the data branch and the interception point on the basis of the chip count value, then taking a modulus of the byte length of the L sequence, taking the modulus value as a read address, and outputting a corresponding L sequence value Ld_wp from the Ram;
and at the moment of the count value 4, carrying out exclusive OR on Ld_w and Ld_wp to obtain a data branch ranging code, and entering the next time period.
2. The method for generating compatible modern GNSS signal ranging codes of claim 1, wherein the L sequence comprises a 10243bit L sequence and a 10223bit L sequence.
3. The method for generating ranging codes for compatible modern GNSS signals according to claim 2, wherein said 10243bitsL sequence is used to generate ranging codes for B1C signals; the 10223bitsL sequence is used to generate a ranging code for the L1C signal.
4. The method for generating ranging codes for compatible modern GNSS signals of claim 2 wherein said ranging codes are 8184bits ranging codes for generating ranging codes for E1 signals.
5. The method of claim 1, wherein the Ram is 10243bits in total, and the Ram comprises a first portion and a second portion.
6. The method for generating compatible modern GNSS signal ranging codes of claim 5, wherein said first portion has a memory length of 4096bits and a memory content of pilot branch ranging codes.
7. The method for generating compatible modern GNSS signal ranging codes of claim 5, wherein said second portion has a memory length of 6147bits and the memory content is a data branch ranging code.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011436153.2A CN112698364B (en) | 2020-12-10 | 2020-12-10 | Compatible modern GNSS signal ranging code generation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011436153.2A CN112698364B (en) | 2020-12-10 | 2020-12-10 | Compatible modern GNSS signal ranging code generation method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112698364A CN112698364A (en) | 2021-04-23 |
CN112698364B true CN112698364B (en) | 2023-11-14 |
Family
ID=75505827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011436153.2A Active CN112698364B (en) | 2020-12-10 | 2020-12-10 | Compatible modern GNSS signal ranging code generation method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112698364B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113391331B (en) * | 2021-06-23 | 2022-12-09 | 湖南国科微电子股份有限公司 | Ranging code acquisition method and device, electronic equipment and storage medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103713299A (en) * | 2013-12-30 | 2014-04-09 | 北京邮电大学 | Method and device for capturing Galileo signals |
CN108873026A (en) * | 2017-05-09 | 2018-11-23 | 想象技术有限公司 | Effective detection of the ranging code correlation function of GNSS signal |
CN109444923A (en) * | 2018-12-03 | 2019-03-08 | 桂林电子科技大学 | A kind of Beidou three generations satellite-signal simulation system and analog signal generating method |
CN109557568A (en) * | 2018-11-29 | 2019-04-02 | 湖南国科微电子股份有限公司 | A kind of ranging code generation method and device |
CN111308519A (en) * | 2020-03-20 | 2020-06-19 | 湖南国科微电子股份有限公司 | Navigation satellite capturing method, device, equipment and medium |
CN111694029A (en) * | 2020-05-28 | 2020-09-22 | 哈尔滨工程大学 | Hardware implementation method for generating B1C signal pseudo-random noise code |
-
2020
- 2020-12-10 CN CN202011436153.2A patent/CN112698364B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103713299A (en) * | 2013-12-30 | 2014-04-09 | 北京邮电大学 | Method and device for capturing Galileo signals |
CN108873026A (en) * | 2017-05-09 | 2018-11-23 | 想象技术有限公司 | Effective detection of the ranging code correlation function of GNSS signal |
CN109557568A (en) * | 2018-11-29 | 2019-04-02 | 湖南国科微电子股份有限公司 | A kind of ranging code generation method and device |
CN109444923A (en) * | 2018-12-03 | 2019-03-08 | 桂林电子科技大学 | A kind of Beidou three generations satellite-signal simulation system and analog signal generating method |
CN111308519A (en) * | 2020-03-20 | 2020-06-19 | 湖南国科微电子股份有限公司 | Navigation satellite capturing method, device, equipment and medium |
CN111694029A (en) * | 2020-05-28 | 2020-09-22 | 哈尔滨工程大学 | Hardware implementation method for generating B1C signal pseudo-random noise code |
Also Published As
Publication number | Publication date |
---|---|
CN112698364A (en) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113615088B (en) | Clock domain crossing synchronization circuit and method | |
CN112698364B (en) | Compatible modern GNSS signal ranging code generation method | |
CN111832240B (en) | FIFO data transmission method and FIFO storage device | |
CN110708133B (en) | Method and device for clock synchronization and time synchronization in system based on FPGA | |
US7315600B2 (en) | Asynchronous FIFO apparatus and method for passing data between a first clock domain and a second clock domain and a second clock domain of a data processing apparatus | |
CN111694029A (en) | Hardware implementation method for generating B1C signal pseudo-random noise code | |
CN112506841A (en) | Serial data recovery method, interface and electronic equipment | |
CN100517498C (en) | First in first out memory without read delay | |
CN111398996A (en) | Surveying and mapping satellite navigation receiver | |
US8578074B2 (en) | First in first out device and method thereof | |
Xie et al. | Analysis and comparison of asynchronous fifo and synchronous fifo | |
CN114201276A (en) | FIFO interrupt management based method | |
CN112462395A (en) | Implementation method of low-cost multi-channel GNSS tracking integration engine | |
CN109343332A (en) | Time dissemination system based on Big Dipper satellite signal | |
CN201152895Y (en) | GPS signal correlating device | |
CN107943727A (en) | A kind of high efficient DMA controller | |
KR0147706B1 (en) | Fast synchronous mask rom | |
US7194021B2 (en) | Digital matched filter | |
US6377071B1 (en) | Composite flag generation for DDR FIFOs | |
CN114528998B (en) | Multi-board card signal synchronization method, equipment and medium for quantum measurement and control system | |
US11372786B2 (en) | Transceiver, bridge chip, semiconductor storage device, and method | |
CN205228473U (en) | Miniature navigational computer based on field programmable gate array | |
CN101000590A (en) | Method and system for reading data in memory | |
CN102778645A (en) | JTAG (joint test action group) main controller and realization method of JTAG main controller | |
CN101504450A (en) | GNSS receiver and method for GNSS memory code generation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |