[go: up one dir, main page]

CN1695069A - Directly acquiring precision code GPS signals - Google Patents

Directly acquiring precision code GPS signals Download PDF

Info

Publication number
CN1695069A
CN1695069A CN 03803346 CN03803346A CN1695069A CN 1695069 A CN1695069 A CN 1695069A CN 03803346 CN03803346 CN 03803346 CN 03803346 A CN03803346 A CN 03803346A CN 1695069 A CN1695069 A CN 1695069A
Authority
CN
China
Prior art keywords
data
code sequence
signal
digital data
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.)
Pending
Application number
CN 03803346
Other languages
Chinese (zh)
Inventor
安东尼·莫罗
诺曼·F·克拉斯纳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN1695069A publication Critical patent/CN1695069A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

In general, the invention is directed to techniques for directly acquiring P-codes without first acquiring C/A-codes. For example, in one embodiment, a system comprises an assist server to track a P-code signal from a Global Positioning System GPS satellite and generate acquisition assistance information from the signal. The system further comprises a mobile unit to receive the acquisition assistance data from the assist server, and to acquire the P-code signal from the satellite based on the acquisition assistance data. The acquisition assistance data may include time-of-week data indicating an initial time offset into a P-code pseudorandom code sequence for the satellite. The mobile unit may include a reference generator to locally generate a reference pseudorandom code sequence based on the time-of-week data.

Description

直接捕获精确码GPS信号Direct capture of accurate code GPS signals

相关申请案Related applications

本申请案主张于2002年2月8日申请的美国临时申请案第60/355,212号、于2002年3月6日申请的美国临时申请案第60/362,476号的优先权。This application claims priority to US Provisional Application No. 60/355,212, filed February 8, 2002, and US Provisional Application No. 60/362,476, filed March 6, 2002.

技术领域technical field

本发明涉及全球定位系统(GPS),特别涉及捕获来自卫星的GPS信号。This invention relates to the Global Positioning System (GPS), and more particularly to the acquisition of GPS signals from satellites.

背景技术Background technique

全球定位系统(GPS)是一种卫星导航系统,设计成能在世界的几乎任何位置提供位置、速度和时间信息。GPS由美国国防部开发,现在包括一个有24颗运作中的卫星的星座。The Global Positioning System (GPS) is a satellite navigation system designed to provide position, velocity, and time information almost anywhere in the world. GPS was developed by the US Department of Defense and now includes a constellation of 24 operational satellites.

GPS提供两种级别的服务:标准定位服务和精确定位服务。标准定位服务(SPS)是一种可供所有GPS用户使用的定位和定时服务。SPS利用粗捕获伪随机码(C/A码)和导航数据消息。SPS提供水平100米(95%)、垂直156米(95%)的相对、可预测定位精度,时间转换精度不超出340纳秒(95%)。GPS provides two levels of service: standard positioning service and precise positioning service. Standard Positioning Service (SPS) is a positioning and timing service available to all GPS users. SPS utilizes coarse capture pseudo-random codes (C/A codes) and navigation data messages. The SPS provides relative, predictable positioning accuracy to 100 meters horizontal (95%), vertical 156 meters (95%), and time transfer accuracy to within 340 nanoseconds (95%).

精确定位服务(PPS)是一种高精度的军用定位、速度和定时服务,它可供经授权用户在全球范围内连续使用。PPS利用精确码(P码),将其主要设计成供美国军方使用。可使用P码的军方用户设备提供至少水平22米(95%)、垂直27.7米的可预测定位精度,转换为国际标准时间(UTC)的时间精度不超出200纳秒(95%)。Precise Positioning Service (PPS) is a high-accuracy military positioning, velocity and timing service that is continuously available worldwide to authorized users. PPS utilizes a precise code (P-code), which is primarily designed for use by the US military. Military user equipment that can use P-codes provides a predictable positioning accuracy of at least 22 meters horizontally (95%) and 27.7 meters vertically, with a time accuracy converted to Universal Time (UTC) of no more than 200 nanoseconds (95%).

GPS卫星以两个L波段频率(L1=1575.42MHz及L2=1227.6MHz)发射三个伪随机噪声(PRN)测距码,并使用。卫星发射的C/A码为在GPS L1载波信号上双相调制的1023位伪随机二进制序列,码速率为1.023MHz,其码重复周期为1毫秒。GPS satellites transmit three pseudorandom noise (PRN) ranging codes at two L-band frequencies (L1 = 1575.42 MHz and L2 = 1227.6 MHz) and use them. The C/A code transmitted by the satellite is a 1023-bit pseudo-random binary sequence modulated on the GPS L1 carrier signal with a code rate of 1.023MHz and a code repetition period of 1 millisecond.

卫星发射的P码为一个非常长的双相调制的伪随机二进制序列,大约为1014位,码速率为10.23MHz,该序列在267天内不会重复。每个GPS卫星发射P码序列的一个唯一的“一周”片段,并在每个星期复位该序列。被称为Y码的第三种码,是一种与P码联合使用的加密序列,用于提高安全性和防欺骗性。P码和Y码均可在L1频率和L2频率上。The P code transmitted by the satellite is a very long pseudo-random binary sequence of biphase modulation, about 10 14 bits, and the code rate is 10.23MHz. This sequence will not repeat within 267 days. Each GPS satellite transmits a unique "one week" segment of the P-code sequence, and the sequence is reset every week. The third code, called Y code, is an encrypted sequence used in conjunction with P code to improve security and anti-spoofing. Both the P code and the Y code can be on the L1 frequency and the L2 frequency.

已经设计了多种的接收器,用于对卫星发射的信号进行解码,以确定位置、速度或时间。一般情况下,为了对GPS信号进行译解及计算出最终位置,接收器必须捕获来自视野内一个或多颗卫星的GPS信号,测量及跟踪所接收的信号,并从这些信号中恢复导航数据。Various receivers have been designed to decode signals transmitted by satellites to determine position, velocity or time. Typically, in order to decipher GPS signals and calculate a final position, a receiver must acquire GPS signals from one or more satellites in view, measure and track the received signals, and recover navigation data from these signals.

搜索和捕获GPS信号、及计算接收器位置的过程会耗费时间。例如,要捕获携带C/A码的GPS信号,移动装置通常执行GPS信号与内部存储的C/A码序列的滑动(free-running)相关。或者,移动装置可以在一段持续时间收集GPS信号的快照,以捕获整个序列,即长于1毫秒,并通过使所缓冲信号与所存储C/A码序列相关来计算该卫星的一个时间偏移量(伪距)。The process of searching for and acquiring GPS signals, and calculating the receiver's location can be time consuming. For example, to acquire a GPS signal carrying a C/A code, a mobile device typically performs a free-running correlation of the GPS signal with an internally stored C/A code sequence. Alternatively, the mobile device can collect snapshots of the GPS signal for a duration to capture the entire sequence, i.e. longer than 1 millisecond, and calculate a time offset for the satellite by correlating the buffered signal with the stored C/A code sequence (Pseudorange).

除了码序列之外,每颗卫星发射一个导航消息,其中包括称作“星历”的数据,例如其轨道参数、时钟状态、系统时间和状态消息。在为卫星计算出伪距之后,移动装置提取星历数据,并根据为卫星计算出的伪距和从卫星接收到的星历数据计算最终位置。In addition to the code sequence, each satellite transmits a navigation message, which includes data called "ephemera", such as its orbital parameters, clock status, system time and status messages. After calculating the pseudoranges for the satellites, the mobile device extracts the ephemeris data and calculates the final position based on the calculated pseudoranges for the satellites and the ephemeris data received from the satellites.

辅助定位捕获是一种已经用于商业级移动装置中的技术,用以加速C/A码的捕获过程。根据该方法,将C/A码的捕获过程分配在移动装置和网络之间。定位辅助服务器作为一个基准GPS接收器,诸如一个蜂窝基站,持续在一个固定位置运转。当一个移动装置希望捕获一个C/A码时,该移动装置与定位服务器进行通信,及请求包括星历数据在内的辅助信息。移动装置利用此星历数据加速用于捕获C/A码的相关过程。具体而言,移动装置能够根据接收自辅助服务器的星历数据估算时间偏移量,从而减少需要执行的相关数目。Assisted location acquisition is a technique that has been used in commercial grade mobile devices to speed up the C/A code acquisition process. According to this method, the acquisition process of the C/A code is distributed between the mobile device and the network. The location assistance server operates continuously at a fixed location as a reference GPS receiver, such as a cellular base station. When a mobile device wishes to acquire a C/A code, the mobile device communicates with the location server and requests assistance information including ephemeris data. The mobile device utilizes this ephemeris data to speed up the correlation process for acquiring the C/A code. Specifically, the mobile device is able to estimate the time offset based on the ephemeris data received from the assistance server, thereby reducing the number of correlations that need to be performed.

捕获P码比捕获C/A码需要更多的计算。出于各种实际目的,P码序列是非重复的。换言之,缓冲整个P码序列是不可行的,对于一个给定卫星,P码序列一周复位一次。为此,军用级别的GPS接收器经常利用C/A码来加速捕获P码。换言之,移动装置首先捕获C/A码以便从信号中提取星历数据。该装置利用从C/A码提取出来的星历数据来加速捕获P码的相关过程。Capturing P codes requires more computation than capturing C/A codes. For various practical purposes, the P-code sequence is non-repetitive. In other words, it is not feasible to buffer the entire P-code sequence, which is reset once a week for a given satellite. For this reason, military grade GPS receivers often utilize C/A codes to speed up acquisition of P codes. In other words, the mobile device first acquires the C/A code in order to extract the ephemeris data from the signal. The device utilizes the ephemeris data extracted from the C/A code to speed up the correlation process of capturing the P code.

不过,即使在利用C/A码捕获信号时,此过程通常也需要数分钟。在很多情况下,不能接受这一较长的处理时间,及进一步,较长的处理时间会极大地限制便携式应用的电池寿命。所述捕获过程在在弱信号或干扰环境中会变得更为困难。However, even when capturing a signal using C/A codes, the process typically takes several minutes. In many cases, this long processing time is unacceptable, and further, the long processing time can greatly limit the battery life of portable applications. The acquisition process becomes more difficult in weak signal or interference environments.

发明内容Contents of the invention

一般说来,本发明是针对用于直接、有效地捕获来自GPS卫星的P码信号的技术。换言之,可以不需要首先捕获来自卫星的C/A码信号而捕获P码信号。In general, the present invention is directed to techniques for directly and efficiently acquiring P-code signals from GPS satellites. In other words, the P code signal can be acquired without first acquiring the C/A code signal from the satellite.

例如,在一个具体实施例中,一个系统包括一个辅助服务器,用于跟踪来自全球定位系统(GPS)卫星的信号,并自该信号产生捕获辅助数据。该系统进一步包括一个移动装置,其用以接收来自该辅助服务器的捕获辅助数据,并根据该捕获辅助数据捕获来自该卫星的P码信号。所述捕获辅助数据可以包括为卫星指示一个P码伪随机码序列的初始时间偏移量的起点周时数据。移动装置可以包括一个用于根据该起点周时数据就地产生一个基准伪随机码序列的基准信号产生器。该辅助服务器可以跟踪及自C/A码信号或P码信号产生捕获辅助数据。移动装置和辅助服务器可以通过一种有线或无线通信链路耦合。For example, in one embodiment, a system includes an assistance server for tracking signals from Global Positioning System (GPS) satellites and generating acquisition assistance data from the signals. The system further includes a mobile device for receiving acquisition assistance data from the assistance server, and acquiring a P code signal from the satellite according to the acquisition assistance data. The acquisition assistance data may include start-of-week data indicating an initial time offset of a P-code pseudo-random code sequence for the satellite. The mobile unit may include a reference signal generator for in-situ generation of a reference pseudo-random code sequence based on the origin clock data. The assistance server can track and generate capture assistance data from the C/A code signal or the P code signal. The mobile device and auxiliary server can be coupled by a wired or wireless communication link.

在另一具体实施例中,一种方法包括接收来自一个辅助服务器的捕获辅助数据,并根据该捕获辅助数据确定与一颗卫星信号相关的P码伪随机码序列的时间偏移量。In another specific embodiment, a method includes receiving acquisition assistance data from an assistance server and determining a time offset of a P-code pseudo-random code sequence associated with a satellite signal based on the acquisition assistance data.

在另一具体实施例中,一种设备包括一根天线,用于接收来自全球定位系统(GPS)卫星的信号;及一个无线调制解调器,用于接收来自辅助服务器的捕获辅助数据。该设备进一步包括一个基准信号产生器,用以根据该捕获辅助数据产生一个基准伪随机码序列;及一个处理器,用于根据该捕获辅助数据为与该信号相关的P码伪随机码序列确定一个时间偏移量。In another embodiment, an apparatus includes an antenna for receiving signals from global positioning system (GPS) satellites; and a wireless modem for receiving acquisition assistance data from an assistance server. The device further includes a reference signal generator for generating a reference pseudo-random code sequence based on the acquisition assistance data; and a processor for determining a P-code pseudo-random code sequence associated with the signal based on the acquisition assistance data A time offset.

在另一具体实施例中,一种计算机可读媒体包含指令,该等指令使一个可编程处理器接收来自辅助服务器的捕获辅助数据,及使该可编程处理器根据该捕获辅助数据确定与一颗卫星信号相关的P码伪随机码序列的时间偏移量。In another embodiment, a computer-readable medium includes instructions that cause a programmable processor to receive capture assistance data from an assistance server, and cause the programmable processor to determine, based on the capture assistance data, a The time offset of the P-code pseudo-random code sequence related to satellite signals.

本发明的一个或多个具体实施例的细节列于附图和以下说明中。本发明的其它特点、目的和优点由说明、绘图和权利要求可以明了。The details of one or more specific embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects and advantages of the invention will be apparent from the description, drawings and claims.

附图说明Description of drawings

图1是说明一种示例系统的方块图,在此系统中,一个移动装置利用辅助信息直接捕获P码GPS信号。FIG. 1 is a block diagram illustrating an example system in which a mobile device directly acquires P-code GPS signals using assistance information.

图2是说明该移动装置的一个示例具体实施例的方块图。Figure 2 is a block diagram illustrating an example embodiment of the mobile device.

图3是说明该移动装置操作的示例模式的流程图。3 is a flow diagram illustrating an example mode of operation of the mobile device.

图4是进一步说明根据该等技术为一给定卫星计算伪距的示范过程的流程图。4 is a flow diagram further illustrating an exemplary process for computing pseudoranges for a given satellite according to the techniques.

图5说明代表P码GPS信号的数字数据的一个示例对准。Figure 5 illustrates an example alignment of digital data representing a P-code GPS signal.

图6是一个定时图表,其说明根据时间不确定性数值由该移动装置利用重叠保存方法执行的示例相关操作。FIG. 6 is a timing diagram illustrating example related operations performed by the mobile device using the overlap save method based on time uncertainty values.

图7是一个说明当时间不确定性数值相对较大时示例捕获过程的流程图。FIG. 7 is a flowchart illustrating an example acquisition process when the temporal uncertainty value is relatively large.

图8是一个说明用于捕获多颗卫星的自适应捕获过程的流程图。Figure 8 is a flowchart illustrating an adaptive acquisition process for acquiring multiple satellites.

具体实施方式Detailed ways

图1是一个说明示例系统2的方块图,在该系统中,移动装置4利用捕获辅助数据直接捕获来自卫星8的P码GPS信号6。具体而言,一个辅助服务器10连续监控并跟踪来自卫星8的GPS信号6,并根据该等信号准备及维持捕获辅助数据。例如,辅助服务器10可以跟踪一个P码GPS信号或一个C/A码信号,并从该信号中提取捕获辅助数据。此捕获辅助数据可能包括卫星8中每一颗卫星的起点周时(TOW)信息。此外,该捕获辅助数据可以进一步包括从该等信号6中所提取的星历数据,诸如当前视野内的卫星8的卫星(S.V.)识别、时钟状态、系统时间、每颗卫星的多普勒频移、状态消息,等等。1 is a block diagram illustrating an example system 2 in which a mobile device 4 directly acquires a P-code GPS signal 6 from a satellite 8 using acquisition assistance data. Specifically, an assistance server 10 continuously monitors and tracks GPS signals 6 from satellites 8 and prepares and maintains acquisition assistance data based on these signals. For example, the assistance server 10 may track a P-code GPS signal or a C/A-code signal and extract capture assistance data from the signal. This acquisition assistance data may include origin time of week (TOW) information for each of the satellites 8 . In addition, the acquisition assistance data may further include ephemeris data extracted from the signals 6, such as satellite (S.V.) identification of satellites 8 currently in view, clock status, system time, Doppler frequency of each satellite shift, status messages, etc.

辅助服务器10将该捕获辅助数据传递给移动装置4,如此处的描述,该装置利用该捕获辅助数据直接而高效地捕获P码信号,而不需要首先捕获C/A码信号。例如,移动装置4利用TOW信息,为卫星6中的每颗卫星选择P码序列内的初始时间偏移量。移动装置4在相关过程中将该初始时间偏移量用作该序列内的起始位置。这样,移动装置4通常可以显著缩短捕获过程,及可以捕获来自卫星6的P码信号,而不需要首先捕获来自该等卫星的C/A码。The assistance server 10 communicates this acquisition assistance data to the mobile device 4, which, as described herein, utilizes the acquisition assistance data to directly and efficiently acquire the P-code signal without first acquiring the C/A-code signal. For example, mobile device 4 uses the TOW information to select an initial time offset within the P-code sequence for each of satellites 6 . The mobile device 4 uses this initial time offset as a starting position within the sequence during the correlation process. In this way, the mobile device 4 can generally shorten the acquisition process considerably, and can acquire the P code signals from the satellites 6 without first acquiring the C/A codes from those satellites.

在捕获P码信号后,移动装置4计算其位置、速度或其它GPS数据。或者,移动装置4可以将伪距数据传递给辅助服务器10。根据这些伪距数据,再加上关于当前星历数据的知识,辅助服务器10为移动装置4计算出位置、速度或其它GPS数据,并将所计算的GPS数据传递给移动装置4。After acquiring the P-code signal, the mobile device 4 calculates its position, velocity or other GPS data. Alternatively, the mobile device 4 may communicate the pseudorange data to the assistance server 10 . From these pseudorange data, together with knowledge about current ephemeris data, assistance server 10 calculates position, velocity or other GPS data for mobile device 4 and communicates the calculated GPS data to mobile device 4 .

移动装置4可以是能够接收GPS信号及计算GPS数据的各种移动GPS接收器中的任一种。示例包括手持GPS接收器、安装于一个运载工具上的GPS接收器,运载工具包括飞机、汽车、坦克、船只,等等。Mobile device 4 may be any of a variety of mobile GPS receivers capable of receiving GPS signals and computing GPS data. Examples include handheld GPS receivers, GPS receivers mounted on a vehicle, including airplanes, cars, tanks, boats, and the like.

辅助服务器10和移动装置4可以使用多种传统有线或无线协议中的任意一种通过链路5通信,链路5可以是一个无线链路、一个硬件接口(如串行端口或并行端口)、以太网连接,等等。一种常见的无线通信协议是码分多址(CDMA),在这种协议中,通过一个射频(RF)频谱同时进行多个通信。其它示例包括全球移动通信系统(GSM),其利用窄带时分多址传输数据;及通用分组无线业务(GPRS)。在一些具体实施例中,移动装置4可以将GPS接收器和无线通信装置集成在一起用于语音或数据通信。The secondary server 10 and the mobile device 4 can communicate over link 5, which can be a wireless link, a hardware interface (such as a serial port or a parallel port), Ethernet connection, etc. A common wireless communication protocol is Code Division Multiple Access (CDMA), in which multiple communications occur simultaneously over a radio frequency (RF) spectrum. Other examples include Global System for Mobile Communications (GSM), which uses narrowband time division multiple access to transmit data; and General Packet Radio Service (GPRS). In some embodiments, mobile device 4 may integrate a GPS receiver and wireless communication means for voice or data communication.

辅助服务器10可以包括一个具有固定位置的高性能GPS接收器。例如,可以将辅助服务器10耦合到一个无线通信基站,用于与移动装置4进行顺畅的通信。The assistance server 10 may comprise a high performance GPS receiver with a fixed location. For example, the assistance server 10 may be coupled to a wireless communication base station for seamless communication with the mobile device 4 .

图2是一个更加详细说明一个示例移动装置4的方块图。一般情况下,移动装置4包括一根GPS天线20、降频器22、频率合成器24、模数转换器(ADC)26、存储器28、数字信号处理器(DSP)30和基准信号产生器31,用于接收和捕获GPS信号6。此外,移动装置4包括无线调制解调器32和RF天线34,用于同辅助服务器10进行通信。FIG. 2 is a block diagram of an example mobile device 4 in more detail. In general, the mobile device 4 includes a GPS antenna 20, downconverter 22, frequency synthesizer 24, analog-to-digital converter (ADC) 26, memory 28, digital signal processor (DSP) 30 and reference signal generator 31 , for receiving and capturing GPS signals6. Furthermore, the mobile device 4 includes a wireless modem 32 and an RF antenna 34 for communicating with the auxiliary server 10 .

降频器22通过GPS天线20接收来自卫星8的信号6,及将该等信号与由频率合成器24产生的一个信号混频,用以将该等信号由L波段频率转换为用于处理的基带频率。降频器22可以首先将该等信号转换为一个中频进行调理,然后再将经调理的信号转换为基带频率。或者,降频器22可以实施一种零中频(ZIF)结构,用于将L波段的频率直接转换为基带。Downconverter 22 receives signals 6 from satellite 8 via GPS antenna 20, and mixes these signals with a signal generated by frequency synthesizer 24 to convert the signals from L-band frequency to L-band for processing. baseband frequency. Downconverter 22 may first convert the signals to an intermediate frequency for conditioning, and then convert the conditioned signals to baseband frequency. Alternatively, downconverter 22 may implement a zero-intermediate-frequency (ZIF) architecture for converting L-band frequencies directly to baseband.

ADC26对基带信号进行采样,以产生该信号的数字化表示,然后将该数字数据的快照存储在存储器28中。例如,存储器28可以存储连续的一套数字化数据,其通常对应于该基带信号的100毫秒到1秒或者更长的持续,时间供数字信号处理器30在捕获过程中使用。ADC 26 samples the baseband signal to produce a digital representation of the signal, and then stores a snapshot of the digital data in memory 28 . For example, memory 28 may store a continuous set of digitized data, typically corresponding to a duration of 100 milliseconds to 1 second or more of the baseband signal, for use by digital signal processor 30 in the acquisition process.

数字信号处理器(DSP)30通过无线调制解调器32和RF天线34与辅助服务器10进行通信。尽管在图2中未做说明,但无线调制解调器32通常包括一个降频器和一个模数转换器,用于处理接收自RF天线34的RF信号。尽管GPS和蜂窝通信可以共用一个天线,但是优先选用分离的天线,因为蜂窝通信与GPS信号通常使用不同的RF波段。A digital signal processor (DSP) 30 communicates with the auxiliary server 10 through a wireless modem 32 and an RF antenna 34 . Although not illustrated in FIG. 2 , wireless modem 32 typically includes a downconverter and an analog-to-digital converter for processing RF signals received from RF antenna 34 . Although GPS and cellular communications can share one antenna, separate antennas are preferred because cellular communications and GPS signals typically use different RF bands.

数字信号处理器(DSP)30通过RF天线34接收来自辅助服务器10包括起点周时信息的捕获辅助数据,及存储该信息,以在捕获过程中使用。数字信号处理器(DSP)30可以将该信息存储在存储器28、内部芯片内存储器或其它适当的计算机可读媒体内。此外,数字信号处理器(DSP)30通常根据取自计算机可读媒体内的可执行指令进行操作。所述媒体的示例包括随机存取存储器(RAM)、只读存储器(ROM)、非易失随机访问存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、闪存,等等。尽管是参考数字信号处理器进行描述的,但在移动装置4中也可以使用其它形式的嵌入式处理器或控制器。A digital signal processor (DSP) 30 receives capture assistance data including origin week and time information from the assistance server 10 via an RF antenna 34 and stores this information for use in the capture process. Digital signal processor (DSP) 30 may store this information in memory 28, internal on-chip memory, or other suitable computer-readable media. Additionally, digital signal processor (DSP) 30 typically operates according to executable instructions retrieved from a computer-readable medium. Examples of such media include random access memory (RAM), read only memory (ROM), nonvolatile random access memory (NVRAM), electrically erasable programmable read only memory (EEPROM), flash memory, and the like. Although described with reference to a digital signal processor, other forms of embedded processors or controllers may also be used in the mobile device 4 .

DSP30将接收自辅助服务器10的起点周时(TOW)信息传递给基准信号产生器31,其利用该TOW信息产生基准信号33,用于与存储器28中存储的GPS信号数据相关。基准信号产生器31可以由数字电路实现,或者采用数字信号处理器(DSP)30程序特征的形式。DSP 30 passes origin time of week (TOW) information received from assistance server 10 to reference signal generator 31 , which uses the TOW information to generate reference signal 33 for correlation with GPS signal data stored in memory 28 . The reference signal generator 31 may be implemented by a digital circuit, or take the form of a digital signal processor (DSP) 30 program feature.

图3是进一步说明移动装置4的操作的流程图。为加速捕获过程,移动装置4通过无线调制解调器32和RF天线34从辅助服务器10接收捕获辅助数据(42)。捕获辅助数据包括卫星8中每颗卫星的TOW信息,及可包括附加星历数据,诸如当前视野内的卫星8的卫星(S.V.)识别、时钟状态、系统时间、每颗卫星的多普勒频移、状态消息,等等。FIG. 3 is a flowchart further illustrating the operation of the mobile device 4 . To speed up the capture process, mobile device 4 receives capture assistance data from assistance server 10 via wireless modem 32 and RF antenna 34 (42). Acquisition assistance data includes TOW information for each of the satellites 8, and may include additional ephemeris data such as satellite (S.V.) identification, clock status, system time, Doppler frequency for each satellite 8 that is currently in view. shift, status messages, etc.

为捕获P码GPS信号,移动装置4从卫星8接收GPS信号,并将该等信号的快照存储在存储器28中(44)。接着,移动装置4利用各个发射卫星8的TOW信息捕获每个P码信号。具体而言,基准信号产生器31根据捕获的当前卫星8TOW信息就地产生信号33,以携带基准P码序列(46)。换言之,信号33可以根据捕获的卫星8TOW信息携带P码序列的一个子集。例如,基准信号产生器31可以根据该TOW信息,在P码序列内选择一个初始时间偏移量,及产生P码序列的一个子集,该子集自初始时间偏移量改进或围绕初始时间偏移量。辅助服务器10可以一种基于时间的格式(如小时:分:秒)传递该TOW信息,也可以将该TOW信息作为P码序列内的一个码片偏移量进行传递。To acquire P-code GPS signals, mobile device 4 receives GPS signals from satellites 8 and stores a snapshot of these signals in memory 28 (44). Next, the mobile unit 4 uses the TOW information of each transmitting satellite 8 to acquire each P-code signal. Specifically, the reference signal generator 31 locally generates the signal 33 according to the acquired current satellite 8TOW information to carry the reference P code sequence (46). In other words, signal 33 may carry a subset of P-code sequences based on acquired satellite 8TOW information. For example, the reference signal generator 31 can select an initial time offset in the P code sequence according to the TOW information, and generate a subset of the P code sequence, which is improved from the initial time offset or around the initial time Offset. The auxiliary server 10 may transmit the TOW information in a time-based format (such as hour:minute:second), or may transmit the TOW information as a chip offset within the P code sequence.

用于捕获C/A码的传统系统使用的基准序列长度对应于序列码的一帧,即C/A码的1023个码片,与此传统系统不同,由基准信号33所携带的P码序列长度可能远远超出快照存储器28中存储的数据量。此外,DSP30可以根据灵敏度要求和一个与接收自辅助服务器10的TOW信息相关的初始时间不确定性数值调整存储器28中所存快照的尺寸。例如,在一些情况下,其可能就足以缓冲100ms的数据,但却使用长度为1秒或更长的基准信号33,其中1秒代表TOW信息的不确定性。The reference sequence length used by the traditional system for capturing the C/A code corresponds to one frame of the sequence code, that is, 1023 chips of the C/A code. Unlike this traditional system, the P code sequence carried by the reference signal 33 The length may well exceed the amount of data stored in snapshot memory 28 . Additionally, DSP 30 may adjust the size of snapshots stored in memory 28 based on sensitivity requirements and an initial time uncertainty value associated with the TOW information received from secondary server 10 . For example, in some cases it may be sufficient to buffer 100 ms of data, but use a reference signal 33 of length 1 second or longer, where 1 second represents uncertainty in the TOW information.

接着,数字信号处理器(DSP)30通过使基准信号33与存储器28中所存GPS信号的数字化快照的相关来为卫星计算时间偏移量(伪距)(47)。如下文所详述,数字信号处理器(DSP)30利用了快速傅里叶转换(FFT)算法,该算法通过执行在就地产生的基准信号33和存储器28中所存数据之间的大量相关运算来非常快速地计算出伪距。具体而言,FFT算法允许同时及并行搜索所有这些位置,因而当所需相关数量很大时,可以加速所需的运行过程,比传统方法快几个数量级。Next, a digital signal processor (DSP) 30 calculates time offsets (pseudoranges) for the satellites by correlating the reference signal 33 with a digitized snapshot of the GPS signal stored in memory 28 (47). As described in more detail below, digital signal processor (DSP) 30 utilizes a Fast Fourier Transform (FFT) algorithm by performing a large number of correlation operations between reference signal 33 generated in situ and data stored in memory 28 to calculate pseudoranges very quickly. Specifically, the FFT algorithm allows to search all these positions simultaneously and in parallel, thus speeding up the required run by several orders of magnitude faster than conventional methods when the number of required correlations is large.

如上所指出,存储器28捕获相应于一段相对较长时期的数字化数据流。利用快速卷积方法对这一大型数据区块进行高效处理有助于提高在低接收水平下(例如,当因为建筑物、树或其它障碍物的部分阻挡而使接收较差时)处理信号6的能力。数字信号处理器(DSP)30利用存储器28中这一相同的缓冲数据为可见GPS卫星8计算伪距,GPS卫星8通常是绕地球轨道运行的24颗卫星中的八颗。在信号振幅快速变化的情况下(如市区阻挡条件下),与传统连续跟踪GPS接收器相比,所述方法可以提供改良的性能。As noted above, memory 28 captures a stream of digitized data corresponding to a relatively long period of time. Efficient processing of this large block of data using fast convolution methods helps improve signal processing at low reception levels (for example, when reception is poor due to partial obstruction by buildings, trees, or other obstructions)6 Ability. Digital signal processor (DSP) 30 uses this same buffered data in memory 28 to calculate pseudoranges for visible GPS satellites 8, typically eight of the 24 satellites orbiting the Earth. In situations of rapidly changing signal amplitudes, such as urban blocking conditions, the method can provide improved performance compared to conventional continuous tracking GPS receivers.

一旦数字信号处理器30为视野内卫星8的每一个完成了伪距计算(48),它就根据为每颗卫星8所计算得出的伪距以及由辅助服务器10向移动装置4提供的星历信息来计算移动装置4的位置(49)。或者,数字信号处理器(DSP)30可以通过调制解调器32将该等伪距传递给辅助服务器10,该服务器提供一个最终位置计算。Once the digital signal processor 30 has completed the pseudorange calculations (48) for each of the satellites 8 in view, it calculates the pseudoranges based on the calculated pseudoranges for each satellite 8 and the satellites provided by the auxiliary server 10 to the mobile device 4. The location of the mobile device 4 is calculated using the history information (49). Alternatively, digital signal processor (DSP) 30 may communicate the pseudoranges via modem 32 to auxiliary server 10, which provides a final position calculation.

图4是进一步说明为一颗给定卫星计算伪距的示范过程流程图。一旦得到了GPS信号的快照和来自辅助服务器10的捕获辅助信息,数字信号处理器(DSP)将所捕获的数据和产生的由信号33携带的基准PN码序列同步(50)。与C/A码捕获技术不同,为了直接捕获P码GPS信号,可能会要求数字信号处理器(DSP)30处理一定范围的码相位,其超出了一个数据位的长度。相应地,与首先捕获C/A码再捕获P码的传统GPS接收器不同,移动装置4直接由存储器28中所存的P码快照建立位同步。换言之,因为C/A码序列在一个单一数据位中重复多次,传统GPS接收器不需要为了捕获目的而关注位边沿同步。但是,在直接捕获P码中的一个困难就是:出于各种实际原因,P码序列是非重复的。相应地,存储器28中所存被发射GPS信号的位周期在整个快照中重复数次,但没有重复码相位。Figure 4 is a flow diagram further illustrating an exemplary process for computing pseudoranges for a given satellite. Once the snapshot of the GPS signal and the acquisition assistance information from the assistance server 10 is obtained, the digital signal processor (DSP) synchronizes (50) the acquired data with the generated reference PN code sequence carried by the signal 33 . Unlike the C/A code acquisition technique, in order to directly acquire the P code GPS signal, the digital signal processor (DSP) 30 may be required to process a range of code phases beyond the length of one data bit. Accordingly, unlike conventional GPS receivers that first capture the C/A code and then the P code, the mobile device 4 establishes bit synchronization directly from the P code snapshot stored in memory 28 . In other words, because the C/A code sequence repeats multiple times within a single data bit, conventional GPS receivers do not need to be concerned with bit edge synchronization for acquisition purposes. However, one difficulty in directly capturing P-codes is that, for various practical reasons, P-code sequences are non-repetitive. Accordingly, the bit period of the transmitted GPS signal stored in memory 28 is repeated several times throughout the snapshot, but the code phase is not repeated.

为了将存储器28中所存的数字化数据与基准信号产生器31所产生的码序列同步,数字信号处理器(DSP)30将一个时间不确定性数值与接收自辅助服务器10的TOW信息相关联。更具体地说,移动装置4将某些时间不确定性与接收自辅助服务器10的TOW信息相关联,数字信号处理器(DSP)30将该时间不确定性表示为一个时间间隔。由于一些因素(如辅助服务器10与移动装置4之间的通信延迟)的影响,接收自辅助服务器10的TOW可能与移动装置4的实际TOW不同。此外,对于不同的通信系统,它也会发生变化。例如,CDMA系统可能具有一个固有范围的时间延迟,而其它通信系统可能会具有不同的时间延迟。To synchronize the digitized data stored in memory 28 with the code sequence generated by reference signal generator 31 , digital signal processor (DSP) 30 associates a time uncertainty value with the TOW information received from auxiliary server 10 . More specifically, the mobile device 4 associates some time uncertainty with the TOW information received from the assistance server 10, the digital signal processor (DSP) 30 representing this time uncertainty as a time interval. The TOW received from the assistance server 10 may differ from the actual TOW of the mobile device 4 due to factors such as communication delays between the assistance server 10 and the mobile device 4 . Also, it changes for different communication systems. For example, a CDMA system may have an inherent range of time delays, while other communication systems may have different time delays.

一般说来,数字信号处理器(DSP)30根据所接收的TOW信息和时间不确定性使数字化GPS信号和基准信号33同步。具体而言,数字信号处理器(DSP)30首先为存储器28中所存数字化数据内的第一个位边沿估算一个位置。可以利用50比特/秒的数据传输来计算该等位边沿。相应地,从该周开始时算起,每20ms出现一个位边沿。给定一个10.23MHz的码片速率,每204600个码片出现一次位边沿。In general, a digital signal processor (DSP) 30 synchronizes the digitized GPS signal with a reference signal 33 based on the received TOW information and the time uncertainty. Specifically, digital signal processor (DSP) 30 first estimates a position for the first bit edge within the digitized data stored in memory 28 . The equivalent bit edges can be calculated with a data transmission of 50 bits/second. Accordingly, a bit edge occurs every 20 ms from the start of the week. Given a chip rate of 10.23MHz, a bit edge occurs every 204600 chips.

数字信号处理器(DSP)30根据所做出的判定和时间不确定性,忽略储存器28中所存数字化数据开头的若干码片以及在由基准信号产生器31产生的PN码序列开头的若干码片,在第一个位边沿处或之前开始相关过程。这样,数字信号处理器(DSP)30利用自辅助服务器10传递过来的TOW信息和相关时间不确定性,就地产生一个基准P码序列,并使所产生的序列与在存储器28中所存的数据位同步。这样,数字信号处理器(DSP)30保证了在相关过程期间,为整个位周期中的码片维持正确极性。Digital Signal Processor (DSP) 30 ignores some chips at the beginning of the digitized data stored in memory 28 and some codes at the beginning of the PN code sequence produced by reference signal generator 31 according to the judgment and time uncertainty made. slice, start the correlation process on or before the first bit edge. Like this, the digital signal processor (DSP) 30 utilizes the TOW information and the relative time uncertainty transmitted from the auxiliary server 10 to generate a reference P code sequence in situ, and compare the generated sequence with the data stored in the memory 28 bit synchronization. In this way, the digital signal processor (DSP) 30 ensures that the correct polarity is maintained for the chips throughout the bit period during the correlation process.

图5说明了存储器28中所存数据快照的示例对准,假定TOW介于自例行当前TOW te的0至δ秒内,并假定δ相对很小(小于一个数据位)。换言之,δ代表自辅助服务器10接收到的TOW相对于由移动装置4所接收P码GPS信号的实际TOW的时间不确定性。5 illustrates an example alignment of data snapshots stored in memory 28, assuming TOW is within 0 to δ seconds from the routine current TOW te , and assuming δ is relatively small (less than one data bit). In other words, δ represents the time uncertainty of the TOW received from the assistance server 10 relative to the actual TOW of the P-code GPS signal received by the mobile device 4 .

如图所示,te+δ代表在快照起点处的码相位,t0代表快照内的第一个位边沿。假定已经产生一个在时间te+δ开始的PN序列,如图5中所示的假设,数字信号处理器(DSP)30在开始存储器28以及开始PN序列(如刚定义的那样)时忽略若干样本,这些样本对应于从te+δ到t0的时间。一种等价的方法是在时间t0开始该PN序列(符合并由m的初始位边界限定),及通过将一些等价于时间间隔te+δ-t0的样本编入原始数据缓冲序列而产生一个新的缓冲。这些技术保证了PN序列总是具有一个数据位之内的样本。As shown, t e + δ represents the code phase at the beginning of the snapshot, and t 0 represents the first bit edge within the snapshot. Assuming that a PN sequence starting at time t e + δ has been generated, as assumed in Fig. 5, the digital signal processor (DSP) 30 ignores some samples, which correspond to the time from t e + δ to t 0 . An equivalent approach is to start the PN sequence at time t 0 (coinciding with and bounded by the initial bit boundaries of m), and by programming a number of samples equivalent to the time interval t e + δ - t 0 into the raw data buffer sequence to generate a new buffer. These techniques ensure that the PN sequence always has samples within one data bit.

为了处理延迟te+δ到te+2δ的数据,这些技术在开始快照和PN基准时删除一些样本,其等于从te+2δ到t0的时间。同样,数字信号处理器(DSP)30可以在时间t0开始PN基准,并向存储器28中编入等于te+2δ-t0的一些样本。可以按照类似过程处理下一个延迟范围te+2δ至te+3δ,以及尺寸为δ的后续范围。To handle data with a delay of t e + δ to t e + 2 δ, these techniques drop some samples at the start of the snapshot and PN benchmark, which is equal to the time from t e + 2 δ to t 0 . Likewise, digital signal processor (DSP) 30 may start the PN reference at time t 0 and program into memory 28 a number of samples equal to t e +2 δ -t 0 . The next range of delays te +2δ to te +3δ, and subsequent ranges of size δ, can be processed in a similar manner.

再次参考图4,在使所捕获数据与所产生的基准PN码序列同步之后(50),数字信号处理器(DSP)30,例如,可通过乘以一个多普勒载波校正指数对载波执行多普勒校正(52)。接下来,数字信号处理器(DSP)30利用FFT运算实施匹配滤波。在此过程中,数字信号处理器(DSP)30,例如,可通过乘以一个多普勒载波校正指数对基带信号执行多普勒校正(54)。Referring again to FIG. 4 , after synchronizing (50) the acquired data with the generated reference PN code sequence, the digital signal processor (DSP) 30 may perform multiplication on the carrier, for example by multiplying by a Doppler carrier correction index. Puller correction (52). Next, a digital signal processor (DSP) 30 implements matched filtering using FFT operations. During this process, digital signal processor (DSP) 30 may perform Doppler correction on the baseband signal by, for example, multiplying by a Doppler carrier correction index (54).

一般情况下,该相关过程数字信号处理器(DSP)30对多个多普勒假设(“频率接收器”)执行多普勒搜索,以确定一个峰值。例如,辅助服务器10可以给出一颗卫星的1000 Hz多普勒指示(indication)。基于该多普勒指示,数字信号处理器(DSP)30分配一个频率增量,如50HZ,这将有效地在载波频率周围建立许多频率接收器。数字信号处理器(DSP)30对该等频率接收器执行相关运算,直到检测到一个峰值。Typically, the correlation process digital signal processor (DSP) 30 performs a Doppler search on multiple Doppler hypotheses ("frequency receivers") to determine a peak. For example, the assistance server 10 may give a 1000 Hz Doppler indication of a satellite. Based on this Doppler indication, the digital signal processor (DSP) 30 assigns a frequency increment, say 50 Hz, which will effectively create many frequency receivers around the carrier frequency. A digital signal processor (DSP) 30 performs correlation operations on the frequency receivers until a peak is detected.

对于每个接收器,数字信号处理器(DSP)30将基准信号33和存储器28中的快照数据分为L个区块,其中最大区块的尺寸小于数据位周期(204600个P码码片)加上所接收TOW相对于P码GPS信号实际TOW的估算时间不确定性。数字信号处理器(DSP)30对每个区块执行匹配滤波运算,以确定存储器28中所包含快照数据与基准信号33所携带PN码序列之间的相对定时。同时,数字信号处理器(DSP)30可以补偿对采样时间的多普勒频移影响。数字信号处理器(DSP)30可以通过应用目前所述FFT算法的快速卷积运算来极大地缩短这些运算的计算时间。For each receiver, a digital signal processor (DSP) 30 divides the reference signal 33 and the snapshot data in memory 28 into L blocks, where the size of the largest block is less than the data bit period (204600 P-code chips) Add the estimated time uncertainty of the received TOW relative to the actual TOW of the P-code GPS signal. A digital signal processor (DSP) 30 performs a matched filter operation on each block to determine the relative timing between the snapshot data contained in the memory 28 and the PN code sequence carried by the reference signal 33 . At the same time, the digital signal processor (DSP) 30 can compensate for the effect of Doppler shift on the sampling time. The digital signal processor (DSP) 30 can greatly reduce the computation time of these operations by applying the fast convolution operations of the presently described FFT algorithm.

对于每个区块,数字信号处理器(DSP)30计算快照数据的FFT和基准信号33的FFT。数字信号处理器(DSP)30在进行多普勒校正之后,将快照与基准信号的复共轭相乘。当时间偏移量等于GPS信号的相对延迟时,假定在对应于两个序列的延迟时发生,此结果有一个相关峰值。数字信号处理器(DSP)30为相关延迟集合计算数据的大小,并对许多积分区块的大小进行求和,也称作后检测和个数。For each tile, a digital signal processor (DSP) 30 computes the FFT of the snapshot data and the FFT of the reference signal 33 . A digital signal processor (DSP) 30 multiplies the snapshot by the complex conjugate of the reference signal after Doppler correction. This results in a correlation peak when the time offset is equal to the relative delay of the GPS signal, which is assumed to occur at a time corresponding to the delay of the two sequences. A digital signal processor (DSP) 30 calculates the size of the data for the set of associated delays and sums the size of a number of integration blocks, also called post-detection sums.

如图6所示,数字信号处理器(DSP)30通过对长度为N的数据区块求卷积来执行FFT,其中N为存储器28中所存快照数据的长度,它由数字信号处理器(DSP)30根据与接收自辅助服务器10的TOW信息相关的时间不确定性数值设定。数字信号处理器(DSP)30以N-M个零对基准信号的区块进行补零,其中M代表位周期。这样,对基准区块所补零的长度就是与TOW相关的时间不确定性的函数。As shown in FIG. 6 , a digital signal processor (DSP) 30 performs FFT by convolving data blocks of length N, where N is the length of snapshot data stored in memory 28, which is determined by the digital signal processor (DSP). ) 30 is set according to the time uncertainty value associated with the TOW information received from the auxiliary server 10 . A digital signal processor (DSP) 30 zero pads the block of the reference signal with N-M zeros, where M represents a bit period. Thus, the length of the zero padding of the reference block is a function of the time uncertainty associated with the TOW.

此外,数字信号处理器(DSP)30以一种重叠保存方法将超出每个位边界的数据加到前一个区块,如图6所示,其中M等于非零基准P码码片的个数,N等于FFT尺寸,通常为218=262144个码片,B等于数据位尺寸——204600个P码码片。如下所述,通常M≤B。In addition, the digital signal processor (DSP) 30 adds data beyond each bit boundary to the previous block in an overlap-save method, as shown in FIG. 6, where M is equal to the number of non-zero reference P-code chips , N is equal to the FFT size, usually 2 18 =262144 chips, and B is equal to the data bit size—204600 P code chips. Typically M≤B, as described below.

例如,如果R(0)是PN码对应于时间t0的数值,D(0)是存储器28中第一个数据字,如前所述当对准第一个位边沿时,数字信号处理器(DSP)30执行以下程序:For example, if R(0) is the value of the PN code corresponding to time t 0 , and D(0) is the first data word in the memory 28, when aligned with the first bit edge as previously described, the digital signal processor (DSP) 30 executes the following procedures:

对第一个数据区块求卷积:Convolute the first block of data:

Ref Block 0=[R(0,1,2,…,M-1)Zeros(1,N-M)],其中M<NRef Block 0=[R(0,1,2,...,M-1)Zeros(1,N-M)], where M<N

Data Block 0=D(0,1,2,…,N-1)。Data Block 0=D(0, 1, 2,..., N-1).

为提高灵敏度,数字信号处理器(DSP)30对接下来的L个(重叠)数据区块求卷积,计算大小,并将这些大小与以前数据区块求和:To increase sensitivity, the digital signal processor (DSP) 30 convolves the next L (overlapping) data blocks, calculates the sizes, and sums these sizes with the previous data blocks:

Ref Block 1=[R(B+[0,1,2,…,M-1])Zeros(1,N-M)]Ref Block 1=[R(B+[0,1,2,...,M-1])Zeros(1,N-M)]

Data Block 1=D(B+[0,1,2,…,N-1])Data Block 1=D(B+[0, 1, 2,..., N-1])

……...

对L个数据区块继续此运算。This operation is continued for L data blocks.

Ref Block L-1=[R(j×B+[0,1,2,…,M-1])  Zeros(1,N-M)]Ref Block L-1=[R(j×B+[0, 1, 2,..., M-1]) Zeros(1, N-M)]

Data Block L-1=D(j×B+[0,1,2,…,N-1]),  其中j=2,3,...L-1Data Block L-1=D(j×B+[0, 1, 2,..., N-1]), where j=2, 3,...L-1

输出数据的尺寸为N,但是因为重叠保存卷积的特性,只有前N-M个样本(或“延迟”)中没有包括由圆周卷积得到的混淆项(alias term)。通常,数字信号处理器(DSP)30仅保留这些项。当偏移基准序列与数据序列的相对定时,重复整个过程可以确定其它延迟。The size of the output data is N, but because of the nature of the overlap-preserving convolution, only the first N-M samples (or "delays") do not include the alias term obtained by the circular convolution. Typically, digital signal processor (DSP) 30 only reserves these items. Repeating the entire process can determine other delays as the relative timing of the reference sequence and the data sequence is shifted.

应注意,因为仅处理了20ms中的M/10.23×106s,所以可能会丢失一些处理。这是因为基准信号的M个非零样本,它们与每个数据位的前M个样本相对应(总数据位尺寸为204600)。相对于在某一时间处理所有数据位的情况,其结果是可能会损失大约10log(M/204600)dB的灵敏度。It should be noted that some processing may be lost since only M/10.23×10 6 s out of 20 ms are processed. This is because of the M non-zero samples of the reference signal, which correspond to the first M samples of each data bit (total data bit size 204600). The result may be a loss of sensitivity of about 10log(M/204600)dB relative to the case where all data bits are processed at a time.

可以通过几种方法来克服这一损失。如果在进行幅度平方运算之前执行两次卷积(而不是对以上的每一步执行一次卷积),及将结果相加,那么可以获得额外能量。第二次卷积可以利用改变后的基准信号和数据区块。第一组基准信号和数据区块的处理过程以确定在左侧的M个基准样本和N个数据样本开始,如图6所示,在此称作卷积OA。卷积OB消除了以上损失,及利用在位周期0的渐变周期结束时开始的基准数据,在位周期0的结束时结束。This loss can be overcome in several ways. Additional energy can be obtained if two convolutions are performed before magnitude squaring (instead of one for each step above), and the results are summed. The second convolution can utilize the changed reference signal and data blocks. The processing of the first set of reference signal and data blocks begins by determining the M reference samples and N data samples on the left, as shown in FIG. 6 , referred to herein as the convolution OA. Convolution OB eliminates the above penalty and ends at the end of bit period 0 using reference data that starts at the end of the fade period of bit period 0.

换言之,204600的数据样本M(总数为B-M,B=204600)将被补充N+M-B个零值样本,以产生N个总基准样本。此数据区块将利用在时间M开始的缓冲数据,及包括N个总样本。然后将卷积0B的结果加到0A的结果上。利用204600个样本的整个数据位周期,此结果给出了完整的卷积。再次提请注意,为了避免时间混淆曲解,通常仅保存这个卷积的前N-M个样本。In other words, 204600 data samples M (the total number is B-M, B=204600) will be supplemented with N+M-B zero-valued samples to produce N total reference samples. This data block will utilize buffered data starting at time M, and include N total samples. The result of convolution 0B is then added to the result of 0A. Using the full data bit period of 204600 samples, this result gives a full convolution. Note again that to avoid temporal aliasing, usually only the first N-M samples of this convolution are saved.

一种效率可能更高的方法是利用尺寸为204600的FFT。在此技术中,渐变周期(shaded period)M将与位周期B相同。这一方法省去对一个位周期内的所有数据执行两次卷积的必要。但是,实施这种非标准尺寸可能比执行基数2FFT更为复杂。A potentially more efficient approach is to utilize an FFT of size 204600. In this technique, the shaded period M will be the same as the bit period B. This approach eliminates the need to perform two convolutions on all data within a bit period. However, implementing such non-standard dimensions can be more complex than performing a radix-2FFT.

而另一种方法可以是以较低的速率对数据进行采样,以便M个数据样本等于一个位周期。但是,这样由于带宽变窄而可能导致损失一些灵敏度。或者,对于等于一个数据位的尺寸,可以用此速率的两倍速率对数据进行采样,然后再执行FFT。但是,这一方法所需要的计算时间和存储容量可能都会增加。Yet another approach could be to sample the data at a lower rate such that M data samples equal one bit period. However, this may result in some loss of sensitivity due to the narrowed bandwidth. Alternatively, for a size equal to one data bit, the data can be sampled at twice this rate before performing the FFT. However, this approach may require increased computing time and storage capacity.

再次参考图4,在应用匹配滤波运算之后,数字信号处理器(DSP)30执行峰值检测(56),以确定所捕获卫星的时间偏移量(58)。具体而言,数字信号处理器(DSP)30计算自FFT技术所提取的M个样本的大小,然后将这些大小加到一个正在运行的缓冲中。数字信号处理器(DSP)30继续这一过程,其次数等于后检测和的数目。应注意,FFT产生N个输出样本,但是由于基准区块补零的原因,处理增益实际上是M的函数。然后数字信号处理器(DSP)30计算正在运行缓冲的均值,并从自身缓冲中减去。接下来,数字信号处理器(DSP)30计算RMS噪声,正在运行缓冲中设定的一个阈值等于该RMS的k倍。数字信号处理器(DSP)30可以选择该阈值,以避免出现噪声尖峰可能大于阈值的情况,这种情况通常被称作“虚警”。Referring again to FIG. 4 , after applying the matched filter operation, digital signal processor (DSP) 30 performs peak detection ( 56 ) to determine the time offset of the acquired satellites ( 58 ). Specifically, a digital signal processor (DSP) 30 calculates the sizes of the M samples extracted from the FFT technique, and then adds these sizes to a running buffer. Digital signal processor (DSP) 30 continues this process a number of times equal to the number of post-detection sums. It should be noted that the FFT produces N output samples, but the processing gain is actually a function of M due to zero padding of the reference block. The digital signal processor (DSP) 30 then calculates the mean of the running buffer and subtracts it from its own buffer. Next, the digital signal processor (DSP) 30 calculates the RMS noise with a threshold equal to k times the RMS set in the running buffer. Digital signal processor (DSP) 30 may choose this threshold to avoid situations where noise spikes may be larger than the threshold, which is commonly referred to as a "false alarm".

图7是当与接收自辅助服务器10的TOW相关的时间不确定性较大时,即当时间不确定性超过了一个数据位周期M时示例捕获过程的流程图。如上所述,基准信号产生器31利用捕获辅助数据就地产生一个包含基准伪随机码的信号33(60),并通过使基准信号33与GPS信号的数字化快照的相关来检测峰值(62)。如上所述,对于每颗卫星,数字信号处理器(DSP)30在多个多普勒“接收器”上执行多普勒搜索,以确定一个峰值。例如,辅助服务器10可以给出一颗卫星的1000Hz多普勒指示。基于此多普勒指示,数字信号处理器(DSP)30分配一个频率增量,如50HZ,这将有效地围绕载波频率建立许多频率接收器。Fig. 7 is a flowchart of an example acquisition process when the time uncertainty associated with the TOW received from the auxiliary server 10 is large, ie when the time uncertainty exceeds one data bit period M. As described above, the reference signal generator 31 uses the acquisition assistance data to generate in situ a signal 33 (60) containing a reference pseudorandom code and detects peaks (62) by correlating the reference signal 33 with a digitized snapshot of the GPS signal. As mentioned above, for each satellite, a digital signal processor (DSP) 30 performs a Doppler search on multiple Doppler "receivers" to determine a peak. For example, the assistance server 10 may give a 1000 Hz Doppler indication of a satellite. Based on this Doppler indication, the digital signal processor (DSP) 30 assigns a frequency increment, say 50 Hz, which will effectively build many frequency receivers around the carrier frequency.

如果在所有多普勒假设上均未检测到峰值(64),数字信号处理器(DSP)30将通过将基准P码相对于所储存的快照数据“滑动”N-M个码片来执行一个附加搜索,其中N代表区块尺寸,M代表位周期(70)。在滑动该基准P码后,数字信号处理器(DSP)30重复该组卷积运算,以确定是否可以在任何接收器中找到一个峰值(62)。如果在所有多普勒假设中均未检测到峰值,就继续移动基准P码,直到所有时间不确定性范围被耗尽(66)。应注意,对于基准P码的每一次滑动,数字信号处理器(DSP)30如前所述的那样将快照重新同步至下一个数据位边界。数字信号处理器(DSP)30持续此过程,直到搜索了所有卫星(74),及计算出最终位置(76)。If no peak is detected on all Doppler hypotheses (64), the digital signal processor (DSP) 30 will perform an additional search by "sliding" the reference P code by N-M chips relative to the stored snapshot data , where N represents the block size and M represents the bit period (70). After sliding the reference P code, digital signal processor (DSP) 30 repeats the set of convolution operations to determine if a peak can be found in any receiver (62). If no peak is detected in all Doppler hypotheses, the reference P code continues to be shifted until all temporal uncertainty ranges are exhausted (66). It should be noted that for each slip of the reference P-code, the digital signal processor (DSP) 30 resynchronizes the snapshot to the next data bit boundary as previously described. The digital signal processor (DSP) 30 continues this process until all satellites have been searched (74), and a final position is calculated (76).

图8是一个说明用于捕获多颗卫星的自适应捕获过程的流程图。如上所述,基准信号产生器31就地产生信号33(80),并通过使基准信号33与GPS信号数字化快照相关来检测峰值(82)。Figure 8 is a flowchart illustrating an adaptive acquisition process for acquiring multiple satellites. As described above, the reference signal generator 31 generates the signal 33 in situ (80) and detects the peak value by correlating the reference signal 33 with a digitized snapshot of the GPS signal (82).

如上所述,对于每颗卫星,数字信号处理器(DSP)30搜索多个多普勒“接收器”,以确定一个峰值。为了减少所搜索接收器的数目,数字信号处理器(DSP)30首先利用一个较短的积分时间来搜索该等卫星之一,例如一个被辅助服务器10指示位于头顶上方的卫星。对于此卫星和积分时间,如上所述,数字信号处理器(DSP)30对一组多普勒接收器中的每一个执行搜索。例如,数字信号处理器(DSP)30可以在一个中间接收器开始搜索,并向外进行,直到搜索完所有的接收器(例如,接收器频率偏移量0、偏移量-50Hz、偏移量+50Hz、偏移量-100Hz,偏移量+100Hz,等等)。每次搜索将自基于FFT的匹配滤波器运算中产生一组输出。如果任何输出超过了一个检测阈值(84),数字信号处理器(DSP)30将表明一个初步检测,并存储该检测结果,如当前的多普勒频移、时间偏移量,等等(88)。当确定一个检测后,数字信号处理器(DSP)30检验相邻多普勒频移的测量,以确定是否发现对这些偏移量的检测,以及当前多普勒的信号强度是否相对于相邻多普勒最大,以此来判断该检测是否有效(90)。如果发现了这样一个最大值,并且输出信噪比(SNR)的测量足够高,以致产生良好地伪距测量结果,例如,SNR高于一个阈值,那么数字信号处理器(DSP)30结束对该给定卫星的处理。As mentioned above, for each satellite, the digital signal processor (DSP) 30 searches multiple Doppler "bins" to determine a peak. In order to reduce the number of searched receivers, the digital signal processor (DSP) 30 first searches for one of the satellites, for example the one indicated overhead by the assisted server 10, with a shorter integration time. For this satellite and integration time, digital signal processor (DSP) 30 performs a search for each of the set of Doppler receivers, as described above. For example, the digital signal processor (DSP) 30 may start searching at an intermediate receiver and proceed outward until all receivers are searched (e.g., receiver frequency offset 0, offset -50 Hz, offset amount+50Hz, offset-100Hz, offset+100Hz, etc.). Each search will produce a set of outputs from the FFT-based matched filter operation. If any output exceeds a detection threshold (84), the digital signal processor (DSP) 30 will indicate a preliminary detection and store the detection results, such as current Doppler shift, time offset, etc. (88 ). When a detection is determined, the digital signal processor (DSP) 30 examines measurements of adjacent Doppler shifts to determine whether detections of these offsets were found and whether the current Doppler's signal strength is relative to the adjacent The Doppler is at a maximum to determine whether the detection is valid (90). If such a maximum is found, and the measurement of the output signal-to-noise ratio (SNR) is high enough to produce good pseudorange measurements, e.g., the SNR is above a threshold, then the digital signal processor (DSP) 30 terminates the Handling of a given satellite.

如果没有找到检测(没有90的分支),那么数字信号处理器(DSP)30为该给定卫星使用一个较长的积分时间,并重复此过程,直到检测到一个峰值,或者直到达到最大积分时间(92)。If no detection is found (no branch of 90), then the digital signal processor (DSP) 30 uses a longer integration time for the given satellite, and repeats the process until a peak is detected, or until the maximum integration time is reached (92).

一旦捕获一颗卫星,数字信号处理器(DSP)30利用该卫星的实际多普勒信息缩小后续卫星的搜索空间。具体而言,在捕获一颗卫星之后,数字信号处理器(DSP)30将所捕获卫星的多普勒频移作为一个初始频率偏移量。这是利用了以下事实:特定的误差源(如本振漂移)对于多颗卫星信号的处理可能是相同的。于是,利用类似于搜索第一颗卫星信号的方式搜索第二颗卫星的信号,及如果所做出的检测具有合适的输出信噪比(SNR),那么就结束对此卫星的处理。如果对多颗卫星做出检测,那么可以使用它们多普勒频移的均值或加权值(以信噪比(SNR)为权值)来初始化对其它卫星的多普勒搜索。数字信号处理器(DSP)30持续此过程,直到搜索到所有卫星(94),并计算出最终位置(96)。Once a satellite is acquired, the digital signal processor (DSP) 30 uses the actual Doppler information of that satellite to narrow down the search space for subsequent satellites. Specifically, after capturing a satellite, the digital signal processor (DSP) 30 uses the Doppler frequency shift of the captured satellite as an initial frequency offset. This takes advantage of the fact that a particular source of error (eg local oscillator drift) may be processed identically for multiple satellite signals. The second satellite's signal is then searched for in a similar manner to the first satellite's signal, and if a detection is made with a suitable output signal-to-noise ratio (SNR), then processing for this satellite is terminated. If multiple satellites are detected, the Doppler search for other satellites can be initiated using the mean or weighted value of their Doppler shifts (weighted by the signal-to-noise ratio (SNR)). The digital signal processor (DSP) 30 continues this process until all satellites are searched (94) and a final position is calculated (96).

举例说明,如果初始搜索时间为50ms,为该卫星所确定的多普勒频移为0,那么数字信号处理器(DSP)可能只需要通过搜索三个多普勒假设(接收器),即当前接收器和两个相邻接收器就可以实现此结果。将此结果与一个利用1秒积分时间和9次多普勒进行的搜索对比,于是搜索时间的缩短结果等于1s/50ms×9bins/3bins,其等于减少了60∶1的计算数目。此外,即使是对于较弱的卫星信号,正确初始化多普勒频移也可以大体上节省处理时间。For example, if the initial search time is 50 ms and the Doppler shift determined for the satellite is 0, then the digital signal processor (DSP) may only need to search for three Doppler hypotheses (receivers), namely the current receiver and two adjacent receivers to achieve this result. Comparing this result with a search performed with 1 second integration time and 9 Dopplers, the reduction in search time is then equal to 1 s/50 ms x 9 bins/3 bins, which equates to a 60:1 reduction in the number of calculations. Also, even for weaker satellite signals, properly initializing the Doppler shift can save processing time substantially.

作为一种变化,数字信号处理器(DSP)30可以在增加积分时间之前对所有多普勒和所有卫星搜索一给定积分时间。当没有关于哪些卫星信号为较佳(例如对应于天空中更高卫星的信号)的先验(priori)知识时,,这一点可能非常有利。或者,一旦对卫星、多普勒和积分时间的一个给定组合做出了检测,那么可以对该给定卫星和多普勒增加积分时间,直到信噪比(SNR)超出一个阈值,这表示足够的伪距精度。于是,数字信号处理器(DSP)30可以类似地通过改变积分时间来分析该卫星的相邻多普勒。因为可以在不需要附加存储并且不会损失先前处理过数据的情况下增大积分时间,所以这一方法可能是有优势的。As a variation, the digital signal processor (DSP) 30 can search for a given integration time for all Dopplers and all satellites before increasing the integration time. This can be very advantageous when there is no a priori knowledge of which satellite signals are better (eg signals corresponding to higher satellites in the sky). Alternatively, once a detection is made for a given combination of satellite, Doppler and integration time, the integration time can be increased for that given satellite and Doppler until the signal-to-noise ratio (SNR) exceeds a threshold, indicating Sufficient pseudorange accuracy. Then, the digital signal processor (DSP) 30 can similarly analyze the adjacent Doppler of the satellite by changing the integration time. This approach may be advantageous because the integration time can be increased without requiring additional storage and without loss of previously processed data.

已经描述了本发明的各种具体实施例。这些与其它具体实施例包括在权利要求的范围中。Various specific embodiments of the invention have been described. These and other specific examples are within the scope of the following claims.

Claims (70)

1.一种方法,其包括:1. A method comprising: 从一个辅助服务器接收捕获辅助数据;及receiving capture assistance data from an assistance server; and 根据所述捕获辅助数据为与来自一颗卫星的信号相关的P码伪随机码序列确定一个时间偏移量。A time offset is determined for a P-code pseudo-random code sequence associated with a signal from a satellite based on the acquisition assistance data. 2.根据权利要求1所述的方法,进一步包括根据所述时间偏移量确定移动装置的一个位置。2. The method of claim 1, further comprising determining a location of the mobile device based on the time offset. 3.根据权利要求1所述的方法,其中所述捕获辅助数据包括指示所述P码序列的一个初始时间偏移量的起点周时数据。3. The method of claim 1, wherein the acquisition assistance data includes start-of-week data indicating an initial time offset of the P-code sequence. 4.根据权利要求3所述的方法,其中一个时间偏移量的确定包括根据接收自所述辅助服务器的起点周时信息就地产生一个基准伪随机码序列。4. The method of claim 3, wherein determining a time offset comprises generating a reference pseudo-random code sequence in situ based on origin week-of-week information received from the secondary server. 5.根据权利要求4所述的方法,其中一个基准伪随机码序列的产生包括产生所述基准伪随机码序列,用以包括所述P码序列中的在所述初始时间偏移量开始的连续伪随机码。5. The method according to claim 4, wherein the generation of a reference pseudo-random code sequence comprises generating the reference pseudo-random code sequence, in order to include the P code sequence starting at the initial time offset in the P code sequence Continuous pseudorandom code. 6.根据权利要求4所述的方法,进一步包括:6. The method of claim 4, further comprising: 数字化所述信号,以产生一个数字数据流;digitizing said signal to generate a digital data stream; 缓冲一定量的数字数据;及buffer a certain amount of digital data; and 使所述缓冲数字数据与所述就地产生的基准码序列相关。The buffered digital data is correlated with the in situ generated reference code sequence. 7.根据权利要求6所述的方法,进一步包括根据一个与接收自所述辅助服务器的起点周时信息相关的时间不确定性数值设定缓冲的数字数据量。7. The method of claim 6, further comprising setting the amount of digital data buffered based on a time uncertainty value associated with origin week-of-week information received from said secondary server. 8.根据权利要求7所述的方法,其中所述不确定性数值包括一个预定的不确定性数值。8. The method of claim 7, wherein said uncertainty value comprises a predetermined uncertainty value. 9.根据权利要求6所述的方法,其中使所述缓冲数字数据同所述就地产生的基准码序列相关之步骤包括使所述数字数据与所述基准伪随机码序列同步。9. The method of claim 6, wherein the step of correlating the buffered digital data with the in situ generated reference code sequence includes synchronizing the digital data with the reference pseudorandom code sequence. 10.根据权利要求9所述的方法,其中使所述数字数据与所述基准伪随机码序列同步包括:10. The method of claim 9, wherein synchronizing the digital data with the reference pseudo-random code sequence comprises: 估算存储器内所存数字数据内的一个第一位边沿;及evaluating a first bit edge in the digital data stored in the memory; and 根据所估算的第一位边沿和与接收自所述辅助服务器的起点周时信息相关的一个时间不确定性数值,忽略所述数字数据内的若干码片和所述基准伪随机码序列内的若干码片。Based on the estimated first bit edge and a time uncertainty value associated with the origin week information received from the secondary server, ignoring chips within the digital data and within the reference pseudo-random code sequence Several chips. 11.根据权利要求6所述的方法,其中使所述缓冲数字数据与所述就地产生的基准码序列相关之步骤包括:将所述基准码序列和数字数据分为尺寸为N的区块,其中区块的尺寸N小于与所述信号相关的数据位周期M加上与所接收的起点周时信息相关的一个时间不确定性数值。11. The method of claim 6, wherein the step of correlating the buffered digital data with the in-situ generated reference code sequence comprises dividing the reference code sequence and digital data into blocks of size N , wherein the block size N is less than the data bit period M associated with said signal plus a time uncertainty value associated with the received start cycle information. 12.根据权利要求6所述的方法,其中将所述基准码序列和所述数字数据分为多块包括自所述基准码序列形成具有M个码片和N-M个补零的区块。12. The method of claim 6, wherein dividing the reference code sequence and the digital data into blocks comprises forming blocks from the reference code sequence having M chips and N-M zero padding. 13.根据权利要求6所述的方法,其中使所述缓冲数字数据与所述就地产生的基准码序列的相关包括对所述区块中的每一个区块都应用一次匹配滤波运算,以产生一个具有相对于所述基准码序列的一个时间偏移量的相关峰值。13. The method of claim 6, wherein correlating the buffered digital data with the in situ generated reference code sequence comprises applying a matched filter operation to each of the blocks to obtain A correlation peak is generated having a time offset relative to the reference code sequence. 14.根据权利要求13所述的方法,进一步包括:14. The method of claim 13, further comprising: 当所述相关峰值低于一个峰值阈值时,将所述基准码相对于所述信号的数字数据滑动N-M个码片,其中N代表区块尺寸,M代表位周期;及sliding the reference code by N-M chips relative to the digital data of the signal when the correlation peak is below a peak threshold, where N represents the block size and M represents the bit period; and 重复所述匹配滤波运算。The matched filtering operation is repeated. 15.根据权利要求13所述的方法,其中将所述基准码相对于所述数字数据滑动包括重复滑动所述基准码,并执行所述相关过程,直到为所述基准码所移动的码片总数目超出一个与接收自所述辅助服务器的起点周时信息相关的时间不确定性数值。15. The method of claim 13 , wherein sliding the reference code relative to the digital data comprises repeatedly sliding the reference code and performing the correlation process until the reference code is shifted by chips The total number exceeds a time uncertainty value associated with the origin time of week information received from said secondary server. 16.根据权利要求1所述的方法,进一步包括:16. The method of claim 1, further comprising: 对多个多普勒假设执行一次多普勒搜索,以便为所述信号确定一个多普勒频移;及performing a Doppler search on Doppler hypotheses to determine a Doppler shift for the signal; and 将所述多普勒频移作为捕获来自后续卫星的信号的一个初始频率偏移量。The Doppler shift is used as an initial frequency offset for acquiring signals from subsequent satellites. 17.根据权利要求16所述的方法,进一步包括:17. The method of claim 16, further comprising: 利用一个第一积分时间,对一组多普勒接收器(doppler bins)中的每一个执行多普勒搜索,以产生一组输出;及performing a Doppler search on each of a set of Doppler bins using a first integration time to generate a set of outputs; and 当根据这组输出没有检测到有效峰值时,增大所述积分时间并重复所述过程。When no valid peaks are detected from the set of outputs, the integration time is increased and the process repeated. 18.根据权利要求17所述的方法,进一步包括:18. The method of claim 17, further comprising: 当所述输出中的任意一个超出一个检测阈值时,表明一个初步检测;indicating a preliminary detection when any of said outputs exceeds a detection threshold; 储存与所述初步检测相关的一个当前多普勒频移;及storing a current Doppler shift associated with said preliminary detection; and 通过检测当前多普勒接收器的相邻多普勒接收器的输出来验证所述初步检测。The preliminary detection is verified by detecting the output of neighboring Doppler receivers of the current Doppler receiver. 19.根据权利要求18所述的方法,其中验证所述初步检测包括检验所述相邻多普勒频移的输出,以确定当前多普勒频移的信号强度相对于相邻多普勒频移是否为最大。19. The method of claim 18, wherein verifying the preliminary detection includes examining the output of the adjacent Doppler shift to determine the relative signal strength of the current Doppler shift relative to the adjacent Doppler shift. Whether the shift is the maximum. 20.根据权利要求1所述的方法,其中所述捕获辅助数据包括自一个移动装置对视野内卫星的识别、所述卫星的起点周时数据、所述卫星的多普勒信息、频率同步信息和该卫星的位置信息。20. The method of claim 1, wherein said acquisition assistance data includes identification of satellites in view from a mobile device, origin weekly data for said satellites, Doppler information for said satellites, frequency synchronization information and the position information of the satellite. 21.根据权利要求1所述的方法,进一步包括:21. The method of claim 1, further comprising: 将所述时间偏移量传递向所述辅助服务器;及communicating the time offset to the secondary server; and 从所述辅助服务器接收位置数据。Location data is received from the auxiliary server. 22.根据权利要求1所述的方法,进一步包括根据所述时间偏移量计算一个位置。22. The method of claim 1, further comprising calculating a position based on the time offset. 23.一种方法,包括:23. A method comprising: 从一个辅助服务器接收捕获辅助数据,其中所述捕获辅助数据识别一组卫星,并包括起点周时数据,起点周时数据指明所述卫星中每颗卫星的P码伪随机码序列的初始时间偏移量;Acquisition assistance data is received from an assistance server, wherein the acquisition assistance data identifies a group of satellites and includes origin week data indicating the initial time offset of the P-code pseudo-random code sequence for each of the satellites. displacement; 接收来自所述卫星的信号;receiving signals from said satellites; 数字化所述信号,以产生一个数字数据流;digitizing said signal to generate a digital data stream; 缓冲一定数量的数字数据;buffer a certain amount of numeric data; 根据所述卫星的个别初始时间偏移量就地为所述卫星产生基准P码伪随机码序列;generating a reference P-code pseudo-random code sequence for the satellite in situ based on the individual initial time offset of the satellite; 使所述数字数据与所述基准码序列的相关,以确定具有个别时间偏移量的相关峰值;及correlating said digital data with said reference code sequence to determine correlation peaks with individual time offsets; and 根据所述时间偏移量为一个移动装置确定一个位置。A location is determined for a mobile device based on the time offset. 24.根据权利要求23所述的方法,其中使所述数字数据与所述就地产生的基准码序列的相关包括:24. The method of claim 23, wherein correlating the digital data with the in situ generated reference code sequence comprises: 估算存储器内存储的数字数据内的一个第一位边沿;及evaluating a first bit edge in the digital data stored in the memory; and 根据所估算的第一位边沿和与接收自所述辅助服务器的起点周时信息相关的一个时间不确定性数值,忽略所述数字数据内的若干码片和所述基准伪随机码序列中每一序列内的若干码片。Based on the estimated first bit edge and a time uncertainty value associated with the origin week information received from the secondary server, ignoring chips within the digital data and each of the reference pseudo-random code sequences A number of chips within a sequence. 25.根据权利要求22所述的方法,其中使所述缓冲数字数据与所述就地产生的基准码序列相关之步骤包括:将所述基准码序列和数字数据分为尺寸为N的区块,其中区块的尺寸N小于与所述信号相关的数据位周期M加上与所接收的起点周时信息相关的一个时间不确定性数值,并且其中所述基准码序列的区块具有M个码片和N-M个补零。25. The method of claim 22, wherein the step of correlating the buffered digital data with the in-situ generated reference code sequence comprises dividing the reference code sequence and digital data into blocks of size N , wherein the block size N is less than the data bit period M associated with the signal plus a time uncertainty value associated with the received start cycle information, and wherein the block of the reference code sequence has M chips and N-M zero padding. 26.根据权利要求23所述的方法,其中使所述缓冲数字数据与所述就地产生的基准码序列相关之步骤包括对所述区块中的每一个都执行一次匹配滤波运算,以产生一个具有相对于所述基准码序列的一个时间偏移量的相关峰值。26. The method of claim 23, wherein the step of correlating said buffered digital data with said in situ generated reference code sequence comprises performing a matched filter operation on each of said blocks to produce a correlation peak having a time offset relative to said reference code sequence. 27.根据权利要求26所述的方法,进一步包括:27. The method of claim 26, further comprising: 当一个给定卫星的相关峰值低于一个峰值阈值时,将一给定卫星的基准码相对于所述信号的数字数据滑动N-M个码片,其中N代表区块尺寸,M代表位周期;及sliding the reference code for a given satellite relative to the digital data of said signal by N-M chips, where N represents the block size and M represents the bit period, when the correlation peak value for a given satellite is below a peak threshold; and 对所述给定卫星重复所述匹配滤波运算。The matched filter operation is repeated for the given satellite. 28.根据权利要求27所述的方法,其中相对于所述数字数据滑动所述基准码包括重复滑动所述基准码,并执行所述匹配滤波运算,直到对所述基准码所移动的码片总数目超出一个与接收自所述辅助服务器的起点周时信息相关的时间不确定性数值。28. The method of claim 27 , wherein sliding the reference code relative to the digital data comprises repeatedly sliding the reference code and performing the matched filter operation until the reference code is shifted by a chip The total number exceeds a time uncertainty value associated with the origin time of week information received from said secondary server. 29.根据权利要求23所述的方法,进一步包括:29. The method of claim 23, further comprising: 利用一第一积分时间,对一组多普勒假设中的每一个执行多普勒搜索,以便为所述信号中的第一个产生一组输出;及performing a Doppler search on each of a set of Doppler hypotheses using a first integration time to produce a set of outputs for a first of said signals; and 当所述输出中的任意一个超过一个检测阈值时,表明一个初步检测;indicating a preliminary detection when any one of said outputs exceeds a detection threshold; 储存与所述初步检测相关的一个当前多普勒频移;storing a current Doppler shift associated with said preliminary detection; 通过检测所述相邻多普勒频移的输出验证所述初步检测,以确定当前多普勒频移的信号强度相对于相邻多普勒频移是否为最大;及verifying the preliminary detection by detecting the output of the adjacent Doppler shift to determine whether the signal strength of the current Doppler shift is maximum relative to the adjacent Doppler shift; and 将所述多普勒频移作为捕获来自后续卫星的信号的一个初始频率偏移量。The Doppler shift is used as an initial frequency offset for acquiring signals from subsequent satellites. 30.根据权利要求1所述的方法,进一步包括:30. The method of claim 1, further comprising: 将所述时间偏移量传递给所述服务器;及passing the time offset to the server; and 从所述服务器接收位置数据。Location data is received from the server. 31.根据权利要求23所述的方法,进一步包括:31. The method of claim 23, further comprising: 对多个多普勒假设执行一次多普勒搜索,为所述信号中的第一个信号确定一个多普勒频移量;及performing a Doppler search on a plurality of Doppler hypotheses, determining a Doppler shift amount for a first of said signals; and 将所述多普勒频移量作为一个初始频率偏移量,用于对所述其它卫星中的至少一个执行一次多普勒搜索。The Doppler frequency shift is used as an initial frequency shift to perform a Doppler search on at least one of the other satellites. 32.一种方法,包括:32. A method comprising: 从服务器接收捕获辅助数据;及receiving capture assistance data from the server; and 根据所述捕获辅助数据直接捕获来自一颗卫星的P码信号,而不用首先捕获来自所述卫星的C码信号。A P-code signal from a satellite is directly acquired based on the acquisition assistance data without first acquiring a C-code signal from the satellite. 33.根据权利要求32所述的方法,其中所述捕获辅助数据包括指示所述P码信号的一个初始时间偏移量的起点周时数据。33. The method of claim 32, wherein the acquisition assistance data includes start-of-week data indicating an initial time offset of the P-code signal. 34.根据权利要求33所述的方法,进一步包括根据从所述辅助服务器接收的起点周时数据就地产生一个基准伪随机码序列。34. The method of claim 33, further comprising generating a reference pseudo-random code sequence in situ based on origin week data received from said auxiliary server. 35.根据权利要求34所述的方法,其中直接捕获所述P码信号包括根据所述起点周时数据使所述P码信号与所述就地产生的基准码序列的相关。35. The method of claim 34, wherein directly capturing the P-code signal comprises correlating the P-code signal with the in situ generated reference code sequence based on the origin cycle data. 36.一种系统,包括:36. A system comprising: 一个辅助服务器,用于跟踪来自一个全球定位系统(GPS)卫星的一个信号,并由所述信号产生捕获辅助信息;及an assistance server for tracking a signal from a Global Positioning System (GPS) satellite and generating acquisition assistance information from said signal; and 一个移动装置,用以接收来自所述辅助服务器的捕获辅助数据,并根据所述捕获辅助数据捕获来自所述卫星的一个P码信号。A mobile device is used to receive acquisition assistance data from the assistance server, and acquire a P-code signal from the satellite according to the acquisition assistance data. 37.根据权利要求36所述的系统,其中所述捕获辅助数据包括指示一个P码伪随机码序列中的一个初始时间偏移量的所述卫星起点周时数据。37. The system of claim 36, wherein said acquisition assistance data includes said satellite origin weekly time data indicating an initial time offset in a P-code pseudo-random code sequence. 38.根据权利要求37所述的系统,其中所述移动装置包括一个基准信号产生器,用于根据所述起点周时数据就地产生一个基准伪随机码序列。38. The system of claim 37, wherein said mobile device includes a reference signal generator for in situ generating a reference pseudorandom code sequence based on said origin cycle data. 39.根据权利要求38所述的系统,其中所述移动装置根据所述捕获辅助信号使所述信号与所述基准伪随机码序列的相关,以确定所述信号相对于所述码序列的一个实际时间偏移量。39. The system of claim 38, wherein the mobile unit correlates the signal with the reference pseudorandom code sequence based on the acquisition assist signal to determine a relative value of the signal to the code sequence. Actual time offset. 40.根据权利要求39所述的系统,其中所述移动装置存储与所述起点周时信息相关的一个时间不确定性数值,并根据所述时间不确定性数值使所述信号与所述基准伪随机码的相关。40. The system of claim 39, wherein said mobile device stores a time uncertainty value associated with said origin week information, and aligns said signal with said reference based on said time uncertainty value. Correlation of pseudorandom codes. 41.根据权利要求36所述的系统,其中所述辅助服务器耦合到一个蜂窝通信系统的基站。41. The system of claim 36, wherein said auxiliary server is coupled to a base station of a cellular communication system. 42.根据权利要求36所述的系统,其中所述辅助服务器追踪一个C/A码信号,并自所述C/A码信号产生所述辅助信息。42. The system of claim 36, wherein said assistance server tracks a C/A code signal and generates said assistance information from said C/A code signal. 43.根据权利要求36所述的系统,其中所述辅助服务器追踪一个P码信号,并自所述P码信号产生所述辅助信息。43. The system of claim 36, wherein said assistance server tracks a P-code signal and generates said assistance information from said P-code signal. 44.一种设备,包括:44. A device comprising: 一根天线,用于接收来自一颗卫星的一个信号;an antenna for receiving a signal from a satellite; 一个无线调制解调器,用于接收来自一个辅助服务器的捕获辅助数据;a wireless modem for receiving capture assistance data from an assistance server; 一个基准信号产生器,用于根据所述捕获辅助数据产生一个基准伪随机码序列;及a reference signal generator, configured to generate a reference pseudo-random code sequence based on the acquisition assistance data; and 一个处理器,用于根据所述捕获辅助数据为与所述信号相关的一个P码伪随机码序列确定一个时间偏移量。A processor for determining a time offset for a P-code pseudo-random code sequence associated with said signal based on said acquisition assistance data. 45.根据权利要求44所述的设备,其中所述处理器根据所述时间偏移量确定一个移动装置的位置。45. The apparatus of claim 44, wherein the processor determines a location of a mobile device based on the time offset. 46.根据权利要求44所述的设备,其中所述捕获辅助数据包括指示P码序列的一个初始时间偏移量的起点周时数据。46. The apparatus of claim 44, wherein the acquisition assistance data includes start-of-week data indicating an initial time offset of the P-code sequence. 47.根据权利要求44所述的设备,进一步包括:47. The device of claim 44, further comprising: 一个模数转换器,用于自所述GPS信号产生一个数字数据流;及an analog-to-digital converter for generating a digital data stream from said GPS signal; and 一个媒体,用于缓冲一定数量的所述数字数据。A medium for buffering a certain amount of said digital data. 48.根据权利要求47所述的设备,其中所述处理器根据一个与接收自所述辅助服务器的起点周时信息相关的时间不确定性数值设定缓冲数字数据的量。48. The apparatus of claim 47, wherein said processor sets the amount of buffered digital data based on a time uncertainty value associated with origin time of week information received from said secondary server. 49.根据权利要求47所述的设备,其中所述处理器使所述缓冲数字数据与所述就地产生的基准码序列相关,用以为所述信号确定一个相关峰值。49. The apparatus of claim 47, wherein said processor correlates said buffered digital data with said in situ generated reference code sequence to determine a correlation peak for said signal. 50.根据权利要求47所述的设备,其中所述处理器使所述数字数据与所述基准伪随机码序列同步。50. The apparatus of claim 47, wherein the processor synchronizes the digital data with the reference pseudorandom code sequence. 51.根据权利要求50所述的设备,其中所述处理器通过对存储于存储器中的数字数据中的第一位边沿的估算使所述数字数据与所述基准伪随机码同步,并根据所估算的第一位边沿和与接收自所述辅助服务器的起点周时信号相关的一个时间不确定性数值,忽略所述数字数据中的若干码片和所述基准伪随机码序列中的若干码片。51. The apparatus of claim 50, wherein the processor synchronizes the digital data with the reference pseudo-random code by evaluating a first bit edge in the digital data stored in the memory, and according to the Estimated first bit edge and a time uncertainty value associated with the start-of-week signal received from said secondary server, ignoring chips in said digital data and codes in said reference pseudo-random code sequence piece. 52.根据权利要求47所述的设备,其中所述处理器将所述基准码序列和所述数字数据分为尺寸为N的区块,其中所述区块尺寸N小于与所述信号相关的一个数据位周期M加上与所接收起点周时信息相关的一个时间不确定性数值,并使所述缓冲数字数据与所述就地产生的基准码序列的相关,以确定一个相关峰值。52. The apparatus according to claim 47, wherein said processor divides said reference code sequence and said digital data into blocks of size N, wherein said block size N is smaller than A data bit period M is added to a time uncertainty value associated with the received start-of-week information, and said buffered digital data is correlated with said locally generated reference code sequence to determine a correlation peak. 53.根据权利要求52所述的设备,其中所述处理器从所述基准码序列形成具有M个码片和N-M个补零的区块。53. The apparatus of claim 52, wherein the processor forms a block having M chips and N-M zero padding from the reference code sequence. 54.根据权利要求52所述的设备,其中所述处理器在所述相关峰值低于一个峰值阈值时,将所述基准码相对于所述信号的数字数据滑动N-M个码片,其中N代表所述区块尺寸,M代表所述位周期;并重复所述匹配滤波运算。54. The apparatus according to claim 52, wherein said processor slides said reference code relative to digital data of said signal by N-M chips when said correlation peak is below a peak threshold, where N represents The block size, M representing the bit period; and repeating the matched filtering operation. 55.根据权利要求54所述的设备,其中所述处理器重复滑动所述基准码并执行所述相关过程,直到所述基准码的移动的码片总数超出与接收自所述辅助服务器的起点周时信息相关的一个时间不确定性数值。55. The apparatus of claim 54, wherein the processor repeatedly slides the reference code and performs the correlation process until the total number of chips moved by the reference code exceeds the starting point received from the auxiliary server A numerical value of time uncertainty associated with the time of week information. 56.根据权利要求44所述的设备,其中所述处理器对若干多普勒假设执行多普勒搜索,用以为所述信号确定一个多普勒频移,并将所述多普勒频移用作捕获来自后续卫星的信号的初始频率偏移量。56. The apparatus of claim 44 , wherein the processor performs a Doppler search on several Doppler hypotheses to determine a Doppler shift for the signal, and shifts the Doppler shift Used as an initial frequency offset to acquire signals from subsequent satellites. 57.根据权利要求56所述的设备,其中所述处理器利用一个第一积分时间对一组多普勒接收器中的每一个执行多普勒搜索,以产生一组输出,及当根据该组输出未检测到有效峰值时,增大积分时间并重复所述过程。57. The apparatus of claim 56, wherein said processor performs a Doppler search on each of a set of Doppler receivers using a first integration time to produce a set of outputs, and when based on the When the group output does not detect a valid peak, increase the integration time and repeat the process. 58.根据权利要求57所述的设备,其中所述处理器在所述输出中的任何一个大于一个检测阈值时表明一个初步检测,存储与所述初步检测相关的当前多普勒频移,并通过检验相邻多普勒频率的输出来验证所述初步检测的有效性。58. The apparatus of claim 57, wherein said processor indicates a preliminary detection when any one of said outputs is greater than a detection threshold, stores a current Doppler shift associated with said preliminary detection, and The validity of the preliminary detection is verified by examining the output of adjacent Doppler frequencies. 59.根据权利要求44所述的设备,其中所述捕获辅助数据包括一个移动装置视野内卫星的识别、所述卫星的起点周时数据、所述卫星的多普勒信息、频率同步信息,及所述卫星的位置信息。59. The apparatus of claim 44, wherein said acquisition assistance data comprises an identification of a satellite in view of a mobile device, origin weekly data for said satellite, Doppler information for said satellite, frequency synchronization information, and The location information of the satellite. 60.根据权利要求44所述的设备,其中所述处理器包括一个数字信号处理器(DSP)。60. The device of claim 44, wherein said processor comprises a digital signal processor (DSP). 61.一种计算机可读媒体,包括指令,用于使一个可编程处理器:61. A computer readable medium comprising instructions for causing a programmable processor to: 从一个辅助服务器接收捕获辅助数据;及receiving capture assistance data from an assistance server; and 根据所述捕获辅助数据为与来自一颗卫星的信号相关的P码伪随机码序列确定一个时间偏移量。A time offset is determined for a P-code pseudo-random code sequence associated with a signal from a satellite based on the acquisition assistance data. 62.根据权利要求61所述的计算机可读媒体,其中所述指令使所述处理器根据所述时间偏移量确定一个移动装置的位置。62. The computer-readable medium of claim 61, wherein the instructions cause the processor to determine a location of a mobile device based on the time offset. 63.根据权利要求61所述的计算机可读媒体,其中所述捕获辅助数据包括指示P码序列的一个初始时间偏移量的起点周时数据。63. The computer-readable medium of claim 61, wherein the capture assistance data includes start-of-week data indicating an initial time offset of a P-code sequence. 64.根据权利要求63所述的计算机可读媒体,其中所述指令使所述处理器根据接收自所述辅助服务器的起点周时数据就地产生一个基准伪随机码序列。64. The computer-readable medium of claim 63, wherein the instructions cause the processor to generate a reference pseudorandom code sequence in-situ based on origin week data received from the auxiliary server. 65.根据权利要求63所述的计算机可读媒体,其中所述指令使所述处理器根据与接收自所述辅助服务器的起点周时信息相关的一个时间不确定性数值,设定用来代表所述信号的缓冲数字数据量。65. The computer-readable medium of claim 63, wherein the instructions cause the processor to set a value representing The amount of buffered digital data for the signal. 66.根据权利要求64所述的计算机可读媒体,其中所述指令使所述处理器:66. The computer-readable medium of claim 64, wherein the instructions cause the processor to: 估算存储器内所存数字数据中的一个第一位边沿;及evaluating a first bit edge in the digital data stored in the memory; and 根据所估算的第一位边沿和与接收自所述辅助服务器的起点周时信息相关的一个时间不确定性数值,忽略所述数字数据内的若干码片和所述基准伪随机码序列内的若干码片。Based on the estimated first bit edge and a time uncertainty value associated with the origin week information received from the secondary server, ignoring chips within the digital data and within the reference pseudo-random code sequence Several chips. 67.根据权利要求64所述的计算机可读媒体,其中所述指令使所述处理器将所述基准码序列和所述数字数据分为尺寸为N的区块,其中所述区块尺寸N小于与所述信号相关的一个数据位周期M加上与所接收起点周时信息相关的一个时间不确定性数值,并使所述缓冲数字数据与所述就地产生的基准码序列相关,以确定一个相关峰值。67. The computer-readable medium of claim 64 , wherein the instructions cause the processor to divide the reference code sequence and the digital data into blocks of size N, wherein the block size N less than a data bit period M associated with said signal plus a time uncertainty value associated with the received origin cycle information and correlating said buffered digital data with said locally generated reference code sequence to Identify a correlation peak. 68.根据权利要求67所述的计算机可读媒体,其中所述指令使所述处理器自所述基准码序列形成具有M个码片和N-M个补零的区块。68. The computer-readable medium of claim 67, wherein the instructions cause the processor to form a block having M chips and N-M zero padding from the reference code sequence. 69.根据权利要求67所述的计算机可读媒体,所述指令使所述处理器在所述相关峰值低于一个峰值阈值时,将所述基准码相对于所述信号的数字数据滑动N-M个码片,其中N代表所述区块尺寸,M代表所述位周期;并重复所述匹配滤波运算。69. The computer-readable medium of claim 67, the instructions cause the processor to slide the reference code relative to the digital data of the signal by N-M chips, where N represents the block size and M represents the bit period; and repeating the matched filtering operation. 70.根据权利要求69所述的计算机可读媒体,所述指令使所述处理器重复滑动所述基准码并执行所述相关过程,直到所述基准码的滑动码片总数超出与接收自所述辅助服务器起点周时信息相关的一个时间不确定性数值。70. The computer-readable medium of claim 69 , the instructions cause the processor to repeatedly slide the reference code and perform the correlation process until the total number of slide chips of the reference code exceeds the number of chips received from the reference code. A time uncertainty value related to the starting week information of the auxiliary server.
CN 03803346 2002-02-08 2003-02-07 Directly acquiring precision code GPS signals Pending CN1695069A (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US35521202P 2002-02-08 2002-02-08
US60/355,212 2002-02-08
US60/362,476 2002-03-06
US10/283,677 2002-10-29

Publications (1)

Publication Number Publication Date
CN1695069A true CN1695069A (en) 2005-11-09

Family

ID=35353471

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 03803346 Pending CN1695069A (en) 2002-02-08 2003-02-07 Directly acquiring precision code GPS signals

Country Status (1)

Country Link
CN (1) CN1695069A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101464508B (en) * 2008-12-19 2011-05-04 苏州莱迪斯特电子有限公司 Method for capturing C/A code signal of GPS
CN102508271A (en) * 2011-09-29 2012-06-20 哈尔滨工业大学 Navigation satellite signal capturing method based on peak value location comparison
CN102928859A (en) * 2008-02-29 2013-02-13 高通股份有限公司 Satellite time determination for sps receiver
CN107728170A (en) * 2012-07-31 2018-02-23 高通股份有限公司 Device, the method and apparatus of auxiliary are obtained for mobile device

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102928859A (en) * 2008-02-29 2013-02-13 高通股份有限公司 Satellite time determination for sps receiver
CN102928859B (en) * 2008-02-29 2015-07-15 高通股份有限公司 Satellite time determination for sps receiver
CN101960323B (en) * 2008-02-29 2016-11-09 高通股份有限公司 Satellite Time Determination for SPS Receivers
CN101464508B (en) * 2008-12-19 2011-05-04 苏州莱迪斯特电子有限公司 Method for capturing C/A code signal of GPS
CN102508271A (en) * 2011-09-29 2012-06-20 哈尔滨工业大学 Navigation satellite signal capturing method based on peak value location comparison
CN102508271B (en) * 2011-09-29 2013-06-05 哈尔滨工业大学 Navigation satellite signal capturing method based on peak value location comparison
CN107728170A (en) * 2012-07-31 2018-02-23 高通股份有限公司 Device, the method and apparatus of auxiliary are obtained for mobile device

Similar Documents

Publication Publication Date Title
US6856282B2 (en) Directly acquiring precision code GPS signals
CN1192291C (en) Time measurement method based on satellite positioning system and corresponding equipment and system
CN1592855A (en) Method for open loop tracking GPS signals
KR101443955B1 (en) Multiple correlation processing in code space search
HU229144B1 (en) Determining time in a gps receiver
CN1193516C (en) Method for synchronizing a receiver and a receiver
WO2000058746A1 (en) Signal detector employing correlation analysis of non-uniform and disjoint sample segments
EP3518003B1 (en) Self-assisted fast acquisition and first fix for a standalone gnss receiver
TW201512689A (en) Method, apparatus, and article for processing combined navigation signals
CN1319190A (en) Receiver for positioning with efficient rotator
EP1916535A1 (en) GNSS receiver with cross-correlation rejection
JP5483750B2 (en) Unnecessary signal discrimination device, unnecessary signal discrimination method, unnecessary signal discrimination program, GNSS receiver and mobile terminal
JP2007520100A (en) GPS receiver using differential correlation
KR20110060734A (en) Adaptive navigation satellite signal acquisition device and method
CN1623103A (en) Method, receiver, and system for determining the time of reception of a beacon signal
CN102478656B (en) Related judgment method and by mistake correlated judgment device by mistake
CN1695069A (en) Directly acquiring precision code GPS signals
CN1623286A (en) Method for determining the correlation between a received beacon signal and a reconstructed signal
US7499485B2 (en) Method and apparatus for detecting GPS data-bit boundaries and detecting GPS satellite-signal reception
KR101440692B1 (en) 2-dimensional compressed correlator for fast gnss and spread spectrum signal acquisition and robust tracking and apparatus thereof
Wei et al. Simulation and analysis of GPS software receiver
Zhang et al. Analysis and Simulation of Signal Acquisition of GPS Software Receiver
Zhang et al. Simulation and analysis acquisition of gps c/a code signals in gps system
Kandziora et al. Time Signal Assisted GPS Receiver for Mobile Devices
Peng et al. Simulation and Analysis Acquisition of GPS C/A Code Signals in GPS System

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1079851

Country of ref document: HK

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1079851

Country of ref document: HK