Multiphase code generator and GNSS receiver

US9255994B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9255994-B2
Application numberUS-67827308-A
CountryUS
Kind codeB2
Filing dateOct 9, 2008
Priority dateOct 16, 2007
Publication dateFeb 9, 2016
Grant dateFeb 9, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A code generator, for providing a PRN sequence in a GNSS receiver, has the capability to store an internal status at any given point of the generated sequence. The stored status can be reloaded in the generator, upon an external command, or after a given number of generation cycles, thus slewing the phase of the generated PRN sequence to the value corresponding to the stored status. A parallel-correlation GNSS receiver includes one or more slewable code generators, for successively generating local replicas of GNSS PRN sequences, having different code phases, corresponding to a plurality of candidate signals of different code and Doppler shifts. Each time the code generator must switch from one candidate to a second, it is preemptively controlled or programmed, while generating the code for the first candidate, to store the internal status at the phase point almost aligned with the start of the PRN sequence for the second candidate. When the correlation engine switches from the first candidate to the second one, the stored status is loaded in the code generator, and the small misalignment between the code generator and the desired sequence is corrected, thus setting it at the needed point in phase space. The generator and receiver of the invention are well suited to the search of several GNSS signal in parallel, and require less memory than a table-based code generator.

First claim

Opening claim text (preview).

The invention claimed is: 1. A pseudo random noise (PRN) code generator, for providing a PRN sequence in a global navigation satellite system (GNSS) receiver, comprising: a clock terminal and a state machine, the state machine comprising shift registers and a series of combinatorial generator functions that produce a plurality of code generator function outputs, the state machine generating a cyclic sequence of chips, corresponding to a cyclical sequence of states of the state machine, wherein the code generator is arranged to generate, for each clock cycle of the clock terminal, a series of N chips of the PRN sequence; a state memory that is distinct from the state machine and that saves one or more of the cyclical sequence of states of the state machine, wherein the state memory restores the state of the code generator, previously saved, after correlation for a first candidate signal is completed and before correlation for a successive candidate signal is started; and a programmable selector that is coupled to the series of combinatorial generator functions and that allows the shift registers in the state machine to be loaded with one of the plurality of code generator function outputs. 2. The PRN code generator of claim 1 , wherein the number N of chips generated for each clock cycle is programmable. 3. The PRN code generator of claim 1 , wherein the number N of chips generated for each clock cycle is equal or larger than four. 4. The PRN code generator of claim 1 , wherein the PRN code generator is controllable in order to save the state of the state machine into the state memory at a chosen point in time, at which the phase of the generated PRN sequence has a value, and is further controllable to set the state machine in the state saved in the state memory, thus setting the phase of the generated PRN sequence to said value. 5. The PRN code generator of claim 4 , arranged to save the state of the state machine into the state memory when the generated PRN sequence reaches a preset phase value. 6. The PRN code generator of claim 4 , arranged to save the state of the state machine into the state memory after a set number of clock cycles from the reception of a save command. 7. The PRN code generator of claim 4 , arranged to save the state of the state machine into the state memory upon reception of a save command. 8. The PRN code generator of claim 1 , wherein at each clock cycle content of the shift registers in the state machine is transformed in the combinatorial generator functions. 9. The PRN code generator of claim 8 , further comprising: output registers coupled to the shift registers; and a plurality of exclusive or gates that couple the combinatorial generator functions to the output registers. 10. A GNSS receiver, comprising: one or more PRN code generators, each PRN code generator comprising: a clock terminal and a state machine, the state machine comprising shift registers and a series of combinatorial generator functions that produce a plurality of code generator function outputs, the state machine generating a cyclic sequence of chips, corresponding to a cyclical sequence of states of the state machine, wherein the code generator is arranged to generate, for each clock cycle of the clock terminal, a series of N chips of the PRN sequence; a state memory that is distinct from the state machine and that saves one or more of the cyclical sequence of states of the state machine; and a programmable selector that is coupled to the series of combinatorial generator functions and that allows the shift registers in the state machine to be loaded with one of the plurality of code generator function outputs; and a map processor unit, arranged to control the PRN code generators in order to generate, in succession, correlation data for candidate signals, the one or more PRN code generators being so controlled to store, while generating the code for a first candidate, one of the states of the code generators at a phase close to that at which the PRN sequence for a successive candidate will start, in the state memory, and to restore, after the correlation for the first candidate is completed and before the correlation for the successive candidate is started, the state saved in the state memory. 11. The GNSS receiver of claim 10 , wherein the map processor unit is arranged to store a phase difference between the saved state of the PRN code generators and the PRN sequence for which the successive candidate will start, and to step the PRN code generators, before the correlation for the successive candidate, to compensate the phase differences. 12. An apparatus for providing a pseudo random noise (PRN) sequence in a global navigation satellite systems (GNSS) receiver, comprising: means for generating a clock cycle; means for transitioning between multiple states, wherein the means for transitioning comprises a series of combinatorial generator functions that produce a plurality of code generator function outputs; means for generating a cyclic sequence of chips, corresponding to a cyclical sequence of states of the means for transitioning; means for generating a series of N chips of the PRN sequence for each clock cycle; means for saving one or more of the cyclical sequence of states of the means for transitioning, wherein the means for saving restores the state of the means for generating a cyclic sequence of chip, previously saved, after correlation for a first candidate signal is completed and before correlation for a successive candidate signal is started, wherein the means for saving is distinct from the means for transitioning between multiple states; and means for loading one of the plurality of code generator function outputs into registers in the means for transitioning between the multiple states, wherein the means for loading is coupled to the means for transitioning. 13. The apparatus of claim 12 , wherein the number N of chips generated for each clock cycle is programmable. 14. The apparatus of claim 12 , wherein the number N of chips generated for each clock cycle is equal or larger than four. 15. The apparatus of claim 12 , wherein the means for saving comprise means for saving the state of the means for transitioning at a chosen point in time, at which the phase of the generated PRN sequence has a value, and is further controllable to set the means for transitioning in the state saved in the means for saving the state, thus setting the phase of the generated PRN sequence to the value. 16. The apparatus of claim 15 , wherein the means for saving comprise means for saving the state of the means for transitioning when the generated PRN sequence reaches a preset phase value. 17. The apparatus of claim 15 , wherein the means for saving comprise means for saving the state of the means for transitioning after a set number of clock cycles from receiving a save command. 18. The apparatus of claim 15 , wherein the means for saving comprise means for saving the state of the means for transitioning upon receiving a save command. 19. A method for providing a pseudo random noise (PRN) sequence in a global navigation satellite systems (GNSS) receiver, comprising: generating a clock cycle; transitioning between multiple states in a state machine, the state machine comprising shift registers and a series of combinatorial generator functions that produce a plurality of code generator function outputs; generating a cyclic sequence of chips, corresponding to a cyclical sequence of states of the state machine; generating a series of N

Assignees

Inventors

Classifications

  • G01S19/37Primary

    Hardware or software details of the signal processing chain · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9255994B2 cover?
A code generator, for providing a PRN sequence in a GNSS receiver, has the capability to store an internal status at any given point of the generated sequence. The stored status can be reloaded in the generator, upon an external command, or after a given number of generation cycles, thus slewing the phase of the generated PRN sequence to the value corresponding to the stored status. A parallel-…
Who is the assignee on this patent?
Young Philip John, Qualcomm Inc
What technology area does this patent fall under?
Primary CPC classification G01S19/37. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 09 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).