Gps信号大规模并行快速捕获方法及其模块的利记博彩app

文档序号:5836662阅读:128来源:国知局
专利名称:Gps信号大规模并行快速捕获方法及其模块的利记博彩app
技术领域
本发明属于卫星通信技术领域,它涉及卫星全球定位系统接收机的信 号快速捕获方法,尤其涉及一种基于快速傅立叶变换(FFT)的GPS信号 大规模并行快速捕获方法及其模块。
背景技术
全球定位系统(GPS)的标准定位服务(SPS)对全世界的所有用户都 提供免费使用,目前已得到了广泛的应用。美国联邦通信委员会(FCC)颁 发的E911规范要求无论任何时间、任何地点都能够通过手机信息追踪到 用户的位置,为一切"911"呼叫紧急服务提供位置信息。欧洲也推行了类似 的E112紧急业务,我国正在制订卫星导航接收机的性能标准,以便为用户 提供质量更好的定位服务。GPS己经广泛应用于车载导航,便携式导航仪, 无线通信设备中,各大移动通信服务商也在积极开发基于定位服务(LBS) 的应用,为用户提供有效、可靠的基于定位功能的多种服务。这要求各种 通信导航设备中的GPS接收机在各种环境下,要快速捕获到GPS信号,并 能够给出实时的定位信息。但是,GPS信号功率水平远低于噪声功率,尤 其在都市和室内等信道衰落严重的环境中,这给GPS的应用带来了巨大的 限制。
GPS卫星信号捕获实际上是一个二维的搜索过程,要求粗略估计卫星 信号的码相位和多普勒频率。码相位和多普勒频率的不确定范围定义的二 维搜索空间包含了几万甚至几十万个信号搜索单元, 一个信号搜索单元由 一个码单元与一个多普勒单元构成,而捕获就是要对每一个信号搜索单元
进行检测,这样的信号捕获消耗时间长,尤其对于弱信号的捕获,对每个 搜索单元的检测时间就会更长。目前,已有技术的许多GPS接收机采用专门的硬件电路完成捕获功能,Wim De Wilde在2006年的论文"New fast signal Acquisition Unit for GPS/Galileo Receivers"中提出一种采用匹配滤波 器和FFT的并行搜索架构的硬件实现的捕获方法,它包含了 16384个等效 相关器,与传统的串行搜索方法相比,捕获性能提高了 2到3个数量级, 但是消耗了大量的寄存器链和存储单元等硬件逻辑和存储单元。又如专利 US7127351提出了一种串并混合的捕获方法,该方法的一个实施例采用了 511个相关器和64抽头FFT,可以同时搜索32704个单元。捕获性能得到 了明显的提高,付出的代价是相应的硬件资源消耗大,实现周期长,成本 高,并且方案不灵活。已有技术的GPS信号的软件捕获方案,相比于硬件 方案而言,可编程性强,实现容易,更灵活,成本低。如专利US6772065 提出一种对码相位并行搜索的循环相关方法,同时搜索所有的码相位,对 于GPS的C/A码信号,如果码相位搜索分辨率为半个码片,那么搜索的并 行度为2046。该方法为了对整个二维搜索空间进行搜索,需要在每一个多 普勒频率估计值上重复多次的循环相关搜索。其缺陷是每次对不同多普 勒频率的码相位并行搜索,都需要额外的数据处理,重复处理的开销降低 了数据处理效率,对于便携式通信导航设备的GPS接收机而言,捕获性能 的提高受到了处理器计算能力的限制。鉴于DSP信号处理器可以快速高效 的运行FFT操作,出现了很多基于FFT软件捕获方法,已有技术的捕获方 法有基于FFT的多普勒频率域的并行搜索方法和对码相位并行搜索的循环 相关方法。如一种用于捕获长扩频码信号的称为DBZP方法,可以同时搜 索多个多普勒频率和部分的码相位,其运算量与循环相关方法接近。该方 法适用于长扩频码捕获,对于GPS的C/A信号,其优势无法体现,也只能 并行搜索整个搜索空间的一部分。 一种对多普勒频率的并行搜索方法,可 以同时搜索多个多普勒频率,由于GPS信号的多普勒频率搜索数目一般为 几十个,所以该方法的并行搜索效果受到了限制。这两种方法都是对搜索 空间的其中一维进行并行的搜索,不能够一次搜索处理过程完成整个搜索 空间的捕获,并行度不能与硬件捕获方法匹敌,存在运算时间长、计算效 率低,搜索的并行度不高、搜索效果受限制的缺陷。又如专利号 200610154771.1用于高动态卫星导航接收机基带信号处理的方法及装置,它是二维并行搜索,通过多个捕获引擎和提高处理器时钟来实现,其并行
度只能是有限的几十个频率和几十个码相位。捕获GPS信号需要搜索的所 有码相位大约为2000多个,按几十个码相位的并行度推算,必须分几十次 处理才能完成所有的码相位搜索,同样存在搜索的并行度不高、搜索效果 受限制的缺陷,它还必须在GPS接收机硬件平台中配置多个捕获引擎,而 且,对弱信号的捕获能力存在不足。
然而,社会发展又迫切需要一种能够同时对整个搜索空间进行二维并 行搜索的快速捕获技术,既能够达到目前硬件捕获方法中的并行搜索能力, 又充分具有软件捕获方法的灵活,可编程性强,实现容易,成本低等特点, 期望它的捕获时间比已有捕获技术减少一个或几个数量级。

发明内容
本发明的目的是解决已有技术的GPS信号的硬件捕获方案实现周期 长,成本高,并且方案不灵活,软件捕获方案的处理器计算能力要求高、 运算时间长、计算效率低,搜索的并行度不高、搜索效果受限制等缺陷, 提出了一种基于FFT的对GPS信号二维大规模并行的快速捕获方法,还提 出了一种GPS信号大规模并行快速捕获模块软件固件,通过一次处理过程, 捕获到GPS信号,粗略确定其码相位和多普勒频率,实现了对GPS信号的 快速捕获。本发明的目的是通过下面的技术方案来实现。
GPS信号大规模并行快速捕获方法,包括下述步骤
步骤一、系统配置和捕获参数设置
首先构架系统配置,在GPS接收机的CPU系统中配置一块GPS信号 大规模并行快速捕获模块,GPS信号大规模并行快速捕获模块为一块软件 固件。
在GPS信号大规模并行快速捕获模块固件中写入GPS信号大规模并行 快速捕获程序。依据GPS接收机检测到输入GPS信号的强弱确定信号条件 值,按照信号条件值自动判断GPS信号的强弱。
在GPS接收机初始化时设置捕获参数,捕获参数包括数据块长度N、数据块分段数目M、结果矩阵累加数目A, A即数据块的个数和循环计数 次数;捕获参数设置包括初始化人工选择或者按照信号条件值从捕获参数 表中査表自动取值。
在不同信号条件值下,设置不同的捕获参数,捕获参数设置策略是满 足一次搜索处理过程累加多个结果矩阵,从而能够捕获到卫星信号,并由 此设置多普勒搜索空间,完成对GPS信号的快速捕获。
强信号条件值下,选择较小的结果矩阵累加数目,选择较大的数据块 分段数M,使得搜索的多普勒范围比较大,M的上限为搜索的多普勒范围 覆盖整个多普勒搜索空间。
弱信号条件值下,选择较大的结果矩阵累加数目,选择较小的M,分 多次对不同的多普勒频率范围进行捕获以覆盖整个多普勒搜索空间。
步骤二、将输入GPS低中频数字信号转换为基带信号
将输入的GPS低中频数字信号下变频转换为GPS基带信号,是通过把 输入的GPS信号与本地载波数控振荡器(NCO)混频实现。本地载波NCO 产生的是在标称的低中频的频率上叠加有多组不同的本地参考时钟的频率 漂移和多普勒频率的估计值的本地载波信号,而混频是把输入的GPS低中 频数字信号与本地载波NCO输出的本地载波进行相乘,由于本地载波中的 本地参考时钟的频率漂移和多普勒频率的估计值的影响,混频后输出的 GPS基带信号中携带有多组不同的多普勒频率估计偏差值和本地参考时钟 漂移的估计误差值的信息。以便通过并行部分相关PPC矩阵和结果矩阵的 计算来实现码相位的并行搜索,同时估计出多普勒频率偏移,实现卫星定 位信号的捕获。
步骤三、并行部分相关PPC处理
并行部分相关PPC处理是基于高效的FFT变换对每个扩展数据段与本 地扩频码作PPC处理,通过计算并行部分相关PPC矩阵和结果矩阵,为码 相位和多普勒频率的并行搜索提供实现条件。
一、先将混频后的GPS基带信号数据组合成多个数据块,每个数据块 的数据长度等于一个多普勒补偿后的码历元的数据长度,设数据块的长度 为N,每个数据块长度为N的数据被等分成M个数据段,每个数据段的长度为L=N/M。 一个码历元内的基带信号数据以多个数据块以及每个数据块 分成M个数据段的方式存放在缓存器内,M个数据段的编号依次为O, 1, 2, ......, M-l。
数据块数据与本地码的相关计算是采用FFT变换来实现。每次从存放 数据块数据的缓存器中读取一个数据块,数据块的数据长度为N,每个数 据块分成M个数据段,每个数据段的长度为L=N/M。依次将每个数据段通 过填充零扩展,即在每个数据段的末尾填充零使得其长度扩展成与数据块 长度相等均为N,填充N-L个零,新生成M个长度为N的扩展数据段。然 后,对M个扩展数据段分别进行FFT计算,把数据从时域变换到频域,形 成M个FFT变换结果。M个数据段和M个扩展数据段以及M个FFT变换 结果的编号均为0, 1, 2, ......, M-l,对应于第一数据段和第一扩展数据
段以及第一个FFT变换结果的编号为O,以此类推,直至对应于第M数据 段和第M扩展数据段以及第M个FFT变换结果的编号为M-l 。
二、 对本地码过采样扩展,对扩展的本地码作FFT变换并计算其复共轭。
由码产生器生成本地码,本地码是GPS信号的扩频码,让本地码载波 频率中包含有多普勒频率估计值的信息,通过与输入信号进行相关运算来 实现对信号的解扩处理。
然后,对本地码通过过采样的方法扩展,使得扩展本地码在一个周期 内的数据长度为N。
再对扩展本地码进行FFT变换,并对FFT变换结果作复共轭计算,得 到复共轭值。
三、 计算并行部分相关PPC矩阵和结果矩阵。
先把M个扩展数据段的FFT变换结果分别与由扩展本地码FFT变换结 果作复共轭计算得到的复共轭值逐点相乘,再对逐点相乘后形成的M个长 度为N的相乘结果再分别作IFFT变换,即FFT反变换,得到M个数据长 度为N的数组,M个数组相应的编号也依次为O, 1, 2, ......, M曙l。
将IFFT变换形成的M个数组按照规定原则循环右移位处理,移位操 作后形成M行N列的PPC矩阵。循环右移操作规定原则为编号为第0号的数组保持不变,即不循环右移,成为PPC矩阵的第一行;编号为第1 号的数组循环右移L个数据,即数组的末尾L个数据移到数组前面,成为 PPC矩阵的第二行;编号为第2号数组循环右移2L个数据到数组前面,成 为PPC矩阵的第三行;依次类推,编号为第M-1号的数组循环右移(M-l) L个数据,数组的末尾(M-l) L个数据移到数组前面,成为PPC矩阵的第 M行,其中,N为数据块长度,M为一个数据块的均分数据段数,N/M=L 为扩展前数据段的长度。
然后对M行N列PPC矩阵的每一列填零扩展后进行FFT变换;若扩 展填零数为零,对M行N列PPC矩阵的每一列进行FFT变换, 一共需要 完成N次M点的FFT计算,形成N个数据长度为M的数组,N个数组相 应的编号依次为0, 1, 2, ......, N-l。 FFT变换后得到N个数据长度为M
的数组,构成一个M行N列的结果矩阵,该结果矩阵的行编号也为0, 1, 2, ......, M-l,列编号为0, 1, 2, ......, N-l。在N列M行的结果矩阵
中的每一个阵元对应于一个信号搜索单元。由于本地码数据中包含有多普 勒估计值的信息,GPS基带信号数据中携带有多普勒偏移和本地参考时钟 漂移的估计误差值的信息,所以,基带信号与本地码相关运算结果矩阵的 不同编号行对应于不同的多普勒频率的估计值,不同编号列对应于不同的 码相位估计。本专业技术人员周知, 一个信号搜索单元对应于一个码单元 与一个多普勒单元,显而易见,M行N列的结果矩阵中包含了 MxN个信 号搜索单元的相关运算结果。
若扩展填零数为M个,对2M行N列PPC矩阵的每一列进行FFT变 换, 一共需要完成N次2M点的FFT计算,形成N个数据长度为2M的数 组,N个数组相应的编号依次为0, 1, 2, ......, N-l;每一列填零扩展以
便提高多普勒频率的分辨率。FFT变换后得到N个数据长度为2M的数组, 构成一个2M行N列的结果矩阵,该结果矩阵的行编号也为0, 1, 2,......,
2M-1,列编号为0, 1, 2, ......, N-l。在N列2M行的结果矩阵中的每一
个阵元对应于一个信号搜索单元。由于本地码数据中包含有多普勒估计值 的信息,GPS基带信号数据中携带有多普勒偏移和本地参考时钟漂移的估 计误差值的信息,所以,基带信号与本地码相关运算结果矩阵的不同编号行对应于不同的多普勒频率的估计值,不同编号列对应于不同的码相位估 计。本专业技术人员周知, 一个信号搜索单元对应于一个码单元与一个多
普勒单元,显而易见,2M行N列的结果矩阵中包含了 2MxN个信号搜索 单元的相关运算结果。
并行部分相关PPC矩阵的计算原理描述如下
设输入的基带信号数据的数据块为x(a),其中"=0, 1,……,N-l。 数据块长度为N,每个数据块分成M个数据段,每个数据段的长度为
L=N/M,第k个数据段为x(" + z〕,其中/ = 0, 1, ......, L-l; t = 0, 1,……,
M匿l。
数据段填充N-L个零后生成长度为N的扩展数据段用(1)式表示
「x(Ar丄+ z'), 0^/<丄 ,, "/ < ( 1)
本地码表示为c(z'),式中/ = 0, 1, , N-l。 c(/)的周期为N。
第A个扩展数据段与本地码的部分相关运算结果为
W—1
(2)
式中A:-O, 1,……,M-l; " = 0, 1,……,N-l;凡^^对应于数据块中 第it个扩展数据段与本地码的部分相关结果,对应了本地码的第N个不同 的码相位延迟。
对公式(2)进行FFT变换,得到
<formula>formula see original document page 16</formula>(3)
式中,A(v)表示第A个扩展后的数据段x,(/)的FFT变换结果,if'(v)表i 本地码的FFT变换后共轭运算得到的共轭值。对公式(3)的计算结果^(v)计算IFFT变换,就得到公式(2)的h("):
>^(")=靜啦 % ] (4)
式中,k=0, 1,……,M画l, n=0, 1,……,N-l。
对应不同的A和w索引, 一共有MxN个h("),公式(4)是公式(2)
在频域的等效计算,对应于数据块中第A个扩展数据段与码相位为n的本 地码的部分相关结果。
对每一个A:值计算公式(4),便一次计算出PPC矩阵的第A:行,这样 对M个扩展后的数据段分别进行公式(4)的计算,对于每一个k,对应不 同的n值,产生M个N个数据长度的数组,并按照规定原则对这M个数 组分别进行循环右移,就得到了 PPC矩阵
<formula>formula see original document page 17</formula>
(5)
从PPC矩阵中,可以看出,PPC矩阵的每一列对应于不同的码相位估 计值,PPC矩阵的每一列对应于不同的码相位估计值的M个部分相关值, 而对于任何一列的M个元素,分别对应了数据块的每一个数据段和对应的 本地码的一段的部分相关处理结果。以PPC矩阵的第n列为例,结合公式 (1)和(2)计算得到的M个部分相关处理结果为
<formula>formula see original document page 17</formula>
对每一列的M个部分相关值进行FFT ,便得到该列对应的码相位下的 M个多普勒频率估计值的相关值。对应的M个多普勒频率值分别为:
/^(附)=广 (6)
式中,附=0, 1,……,M-l, 7;,。^表示数据块的时间长度,等于扩频码的 码历元,对于GPS的C/A码信号,7;,。^为lms。
多普勒频率值的偏移或间隔为
从公式(6)和(7)可以看出,若多普勒频率值是固定的偏移或间隔, M值越大, 一次计算得到的多普勒频率值越多。
为了提高多普勒频率的计算精度,即减小多普勒频率值的间隔, 一个 处理技术是通过对PPC矩阵的每一列末尾填充零来实现。对于M个数据, 填充K个零后数据长度为(M+K),对填充后的数据进行FFT,共产生(M+K) 个多普勒频率值
/rf (附)=^~
式中,m = 0, 1, ......, M+K-l;
多普勒频率值的偏移或间隔为
M 1
(8)
(9)
比较公式(7)和(9),随着填充零数目K的增加,多普勒频率值的偏 移或间隔减小。
为了提高多普勒频率估计精度,对PPC矩阵的每一列后面填充K个零, 使得填充后的PPC矩阵为(M+K)行N列,然后对这个填充后的PPC矩 阵进行处理。结果多普勒频率估计精度为没有填充的PPC矩阵的处理得到 的多普勒估计精度提高M/(M+K)倍,选择提高多普勒估计精度的K值,并 满足(M+K)为2的整数幂,以便于FFT计算。四、根据步骤一设置的捕获参数,重复步骤三的一至三,对A个数据 块逐块一一进行并行部分相关PPC处理,直到计数次数满足A值条件后, 一共形成了与数据块数目相同的多个结果矩阵。
本专业普通技术人员显而易见,多个结果矩阵的构成都是M行N列, 所以这个结果矩阵包含了 M个多普勒频率估计值对应的N个码相位估计 值,每个结果矩阵都包含有MxN个搜索单元的在一个码历元内的相关运算 结果。每个结果矩阵的同一编号行对应于同一多普勒频率的估计值,每个 结果矩阵的同一编号列对应了同一码相位的估计值,所以,能为多个结果 矩阵累加提供每个信号搜索单元相关运算处理结果在同一多普勒频率的估 计值和同 一码相位的估计值下的累加。
步骤四、后处理与检测
对结果矩阵所作的后处理包括积分处理、找出多个最大值和最大值数 据检测等处理。通过对基带信号的多个数据块逐一进行并行部分相关PPC 处理,产生的多个结果矩阵的构成都是M行N列,每个结果矩阵的同一编 号的行对应于同一多普勒频率的估计值,每个结果矩阵的同一编号的列对 应于同一码相位的估计值,每个结果矩阵都包含有MxN个信号搜索单元的 相关运算处理的结果,所以,多个结果矩阵累加是每个信号搜索单元相关 运算处理结果在同一多普勒频率的估计值和同一码相位的估计值下的累 加。
(1) 对多个结果矩阵作相干积分或非相干积分处理,积分处理后形成 一个累加结果矩阵,累加结果矩阵的构成仍为M行N列,它包含有MxN 个信号搜索单元的相关处理和累加处理的结果数据。随着积分时间的增加, 噪声带宽减小,噪声功率也不断减小,使信噪比得到改善而获得处理增益, 从而提高了捕获灵敏度。
(2) 对积分后的累加结果矩阵中每个数据进行比较,找出若干个最大 值,数据最大值的个数根据GPS接收机系统CPU存储器的具体空闲资源来 确定。
(3) 然后用检测器对找出的若干个最大值的数据分别进行信号检测, 以判定搜索的GPS信号是否存在,估计出各个最大值数据的码相位和多普勒频率。检测采用传统的检测器,如唐检测器或N中取M检测器等。
通过上述步骤的一次处理过程,捕获到GPS信号,粗略确定捕获的GPS 信号的码相位和多普勒频率,实现对GPS信号的并行快速捕获。
所述的GPS信号大规模并行快速捕获方法,其在于所述的并行部分相 关PPC处理,它是通过计算并行部分相关PPC矩阵和结果矩阵来实现码相 位和多普勒频率并行搜索的核心,PPC处理参数由捕获参数确定,包括数 据块的长度N、数据块等分的数据段数目M、结果矩阵累加数目A;处理 参数随捕获参数预先设置并根据多普勒搜索范围和信号条件值进行实时调 整,而且并行部分相关PPC处理过程中形成的PPC矩阵和结果矩阵的构成 均为M行N列,结果矩阵的个数为A个。
所述的GPS信号大规模并行快速捕获方法,其在于所述的信号条件值 是利用GPS接收机的CPU系统的信号条件检测手段判定并提供给GPS信 号大规模并行快速捕获模块,模块按照预先设置的信号条件值与捕获参数 和信号条件判断值的对应关系构成的捕获参数表和信号条件判断值表,实 时自动调整捕获参数和信号条件判断值。GPS接收机CPU系统根据输入的 GPS信号条件,搜索空间的大小和处理器的处理能力,按照一次搜索过程 中数据的处理量与捕获性能达到良好的均衡的搜索策略来设置捕获参数, 同时对应于不同的GPS输入信号条件值,实时调整捕获参数。捕获参数的 设置原则是
在强信号条件值下,选择较大的数据块分段数M,使得搜索的多普勒 范围比较大,多普勒频率的估计值较小,M的上限值为一次搜索的多普勒 频率范围覆盖整个多普勒搜索空间;选择较小的结果矩阵累加数目A,减 少搜索时间来加快搜索速度,A的下限值为l;显然M值较大时,每次计 算PPC矩阵和结果矩阵的处理量也较大,但结果矩阵累加数目较小使得并 行相关计算的处理量也相对减少。
弱信号条件值下,选择较小的数据块分段数M,搜索的多普勒范围较 小,在一次搜索内分多次对不同的多普勒频率范围进行搜索以覆盖整个多 普勒搜索空间,M的下限值为1;选择较大的结果矩阵累加数目A,增加处理增益来提高搜索灵敏度,A的上限值取决于系统CPU数值运算累加结果 的字长。
信号条件是调整并行快速捕获方法中的捕获参数的重要因素,信号条 件包括信号功率、信号多普勒估计的不确定范围以及GPS接收机系统的启 动模式;GPS接收机的启动模式与多普勒搜索范围有关,通常GPS接收机 根据星历或历书信息判断启动模式,并确定捕获的多普勒搜索范围在热 启动模式下,多普勒搜索范围为几十Hz;在温启动模式下,多普勒搜索范 围为几百Hz;在冷启动模式下,多普勒搜索范围一般为几千Hz。
所述的GPS信号大规模并行快速捕获方法,其在于所述的GPS信号大 规模并行快速捕获程序是在GPS接收机的系统CPU管理下调用相关的算法 的操作指令, 一次处理过程同时搜索整个码相位空间以及多个多普勒频率, 通过调整捕获参数的数据块等分的数据段数目M和结果矩阵累加数目A来 配置多普勒频率搜索范围和码相位搜索精度,实现对码相位和多普勒的二 维并行搜索,搜索的并行度达到几万 几十万信号捕获单元;GPS信号大 规模并行快速捕获程序包括以下步骤
(1) GPS接收机的CPU系统启动"捕获",先加载初始化设置的捕获 参数。初始时将捕获参数设置为初始值或按实际信号条件值査捕获参数表 和信号条件判断值表。
(2) 根据CPU系统提供的输入GPS信号条件值判断信号条件的强弱 S601判断输入GPS信号条件的强弱,若是强信号条件或信号条件值》
信号条件判断值,转S602a,如若是弱信号或信号条件值<信号条件判断值, 则转602b;
S602a调整捕获参数设置值和信号条件判断值;按实际信号条件值査捕 获参数表和信号条件判断值表,读出新的捕获参数设置值和信号条件判断 值;
S603a按照新的捕获参数,计算PPC矩阵和结果矩阵; S604a计数并判断计算次数Aa,若〈Aa,转S603a继续计算PPC矩阵 和结果矩阵;若计数值^Aa,输出结果矩阵;S605a输出每次计算得到的结果矩阵到S606后处理与检测;
S602b按实际信号条件值査捕获参数表和信号条件判断值表,读出新的
捕获参数设置值和信号条件判断值;
S603b按照新的捕获参数计算PPC矩阵和结果矩阵;
S604b计数并判断计算次数Ab,若计数值〈Ab,转S603b继续计算PPC
矩阵和结果矩阵;若计数值^Ab,输出结果矩阵;
S605b输出每次计算得到的结果矩阵到S606后处理与检测;
S606后处理与检测;后处理与检测包括对多个结果矩阵累加处理以及
多个最大值的比较和信号检测;
S607准备捕获数据;包括是否检测到信号,如果检测到信号,准备信
号的码相位和多普勒频率信息,送捕获数据接口;
S608送系统CPU;系统CPU接收捕获数据,对捕获数据进行判断,
是否继续进行信号捕获。
所述方法构成的GPS信号大规模并行快速捕获模块,其在于所述的 GPS信号大规模并行快速捕获模块固件是一块只读存储器或随机存储器; GPS接收机的系统CPU与只读存储器或随机存储器配置有连接接口 ;在只 读存储器或随机存储器中写入GPS信号大规模并行快速捕获程序;
所述的GPS信号大规模并行快速捕获模块固件中包含有乘法运算 (101)、数据送缓存(102)、并行部分相关处理(103)、频域变换(104)、 后处理与检测(105),还有数控振荡(106)、码产生器(107)以及查表等 子模块。
所述的査表子模块包含一组捕获参数表和信号条件判断值表;捕获参 数表和信号条件判断值表中的捕获参数和信号条件判断值包括由该CPU系 统初始化时设置的默认值以及由该CPU系统提供输入GPS信号条件值的对 应值;GPS信号大规模并行快速捕获模块固件在一次捕获处理过程结束时, 按照GPS接收机的CPU系统提供的输入GPS信号条件值,通过查表操作 从捕获参数表和信号条件判断值表中读取新的捕获参数和信号条件判断 值,作为当前的捕获参数和信号条件判断值。所述的GPS信号大规模并行快速捕获模块,其在于所述的并行部分相
关处理子模块至少包括以下的处理和运算
(1) 从缓存读取基带信号数据,并将数据划分数据块和将数据块均为 M个分数据段;
(2) 每个数据段填零扩展,每个扩展后数据段长度同数据块长度N;
(3) 每个扩展后数据段作FFT变换;
(4) 本地码过采样扩展,每个扩展后数据长度同数据块长度N;
(5) 扩展后本地码作FFT变换,并对扩展后本地码FFT变换计算复
共轭;
(6) 每个扩展后数据段作FFT变换后的数据与扩展后本地码作FFT 变换并计算复共轭的数据逐点相乘;再分别进行IFFT变换,生成M个长 度为N的数组;
(7) IFFT变换后生成的M个数组分别循环右移,形成PPC矩阵;循 环右移后的M个数组分别对应PPC矩阵的一行,每个数组有N个元素, PPC矩阵的尺寸为MxN;
(8) N个数据长度为M的数组构成一个M行N列的结果矩阵。
所述的GPS信号大规模并行快速捕获模块,其在于所述的捕获参数表 是一个数据块的长度N、数据块等分的数据段数目M、结果矩阵累加数目 A等捕获参数与信号条件值的对照表;
捕获参数与多普勒搜索范围有关,对照表中捕获参数的符合以下原则
(1) 选择较小的结果矩阵累加数目A和选择较大的数据段数目M值, 使搜索的多普勒范围较大,以获得较快的搜索速度,M值的上限为使得搜 索的多普勒范围覆盖整个多普勒搜索空间,通过一次处理过程的一次搜索 完成整个二维搜索空间的捕获;
(2) 选择较大的结果矩阵累加数目A和选择较小的数据段数目M,以 获得较高的处理增益,但是搜索的多普勒范围较小,若对多普勒频偏的预 估计较准确,多普勒搜索的空间较小,通过一次处理过程的多次搜索完成 整个二维搜索空间的捕获;多普勒搜索范围与GPS接收机的启动模式有关,冷启动、温启动和热 启动三种启动模式的捕获参数作为三个默认值,在初始化时设置入捕获参 数表。GPS接收机根据星历或历书信息判断启动模式,并确定捕获模块的 多普勒搜索范围。
所述的GPS信号大规模并行快速捕获模块,其在于所述的信号条件判 断值表是一组表征由GPS接收机的系统CPU按照输入GPS信号条件的优 劣与信号条件判断值的对照表,信号条件判断值表设置1或多个信号条件 判断值;输入信号条件值低于信号条件判断值时,自动将信号条件判断结 果置"0",按照信号条件较弱,自动调整捕获参数;若输入信号的幅值大 于等于判断值,自动将信号条件判断结果置"1",按照信号条件较强,自 动调整捕获参数。
若信号条件判断值表设置1个信号条件判断值,输入信号条件值低于 信号条件判断值时,信号条件判断自动将判断结果置"0",按照信号条件 较弱,自动调整捕获参数,选择较小的数据块分段数M,在一次搜索内分 多次对不同的多普勒频率范围进行捕获以覆盖整个多普勒搜索空间,M的 下限值为1,即一次搜索一个多普勒频率;选择较大的结果矩阵累加数目A, 增加处理增益来提高捕获灵敏度,A的上限值受限于累加结果矩阵的数据 字长;若输入信号的幅值大于等于判断值,自动将判断结果置"l",按照 信号条件较强,自动调整捕获参数,选择较小的结果矩阵累加数目A和选 择较大的数据段数目M值,使搜索有较大的多普勒范围,以获得较快的搜 索速度,M值的上限为使得搜索的多普勒范围覆盖整个多普勒搜索空间, 显然M值较大时,每次计算PPC矩阵和结果矩阵的处理量也较大,但结果 矩阵累加数目较小使得并行相关计算的处理量也相对减少。
所述的GPS信号大规模并行快速捕获模块,其在于所述的结果矩阵是 对PPC矩阵的每一列的M个部分相关值进行FFT变换到频域,得到对应于 每列的码相位下的M个多普勒频率值的相关值,所以,结果矩阵包含MxN 个信号搜索单元的相关运算结果;结果矩阵的构成是M行N列,行的编号 对应于不同的多普勒频率的估计值,列的编号对应于不同的码相位的估计 值。所述的GPS信号大规模并行快速捕获模块,其在于所述的后处理与检 测子模块包括多个结果矩阵的累加处理、多个最大值的比较以及信号检测; 其中
对多个结果矩阵的累加处理包括相干积分或者对结果矩阵各个信号搜 索单元取模或平方运算后的非相干积分等处理;
多个最大值的比较为排序比较找出最大的几个峰值,最大值的个数由 GPS接收机的系统CPU的具体空闲资源来确定;
对找出的每个最大值分别进行信号检测,采用传统的检测器,传统的 检测器包括唐检测器或N中取M检测器。
本发明的实质性效果
1、 本发明采用软件捕获方案,成本低,方案灵活,能够同时对整个搜 索空间进行二维并行搜索的快速捕获,二维并行搜索是通过"PPC矩阵"的 计算来实现,并行度高达几万个码相位量级,超过几十个频率和几千个码 相位的需求, 一次处理过程就能完成整个搜索空间2000多个码相位的搜索, 搜索的并行度高,比已有技术提高l-2个数量级,捕获速度快,捕获时间 比已有技术减少1个或几个数量级。
2、 本发明专利通过并行部分相关PPC处理算法得到PPC矩阵和结果矩 阵,并对多个结果矩阵采用相干或非相干积分处理,形成一个构成仍为M 行N列的累加结果矩阵,获得处理增益,提高捕获灵敏度,通过填充零扩 展提高频率估计分辨率。
3、 本发明专利根据外部输入的信号条件,来调整捕获参数,具有提高 对弱信号的捕获能力。通过动态调整GPS信号强弱的判定值和对弱信号的 捕获是以增加结果矩阵累加数目,提高处理增益的方式来实现提高对弱信 号的捕获能力。
4、 本发明在已有的GPS接收机硬件平台上完成捕获功能,不需要额外 的"捕获引擎",可编程性强,实现容易,搜索效果不受限制,减少和避 免了额外处理开销,数据处理效率高。5、 本发明并行快速捕获捕获模块适用于多种GPS接收机方案,对于标 准的S0C方案,GPS接收机中已包括处理器,存储器,射频前端模块,只需 要把捕获模块固件配置到系统CPU中。对于低成本的基于主机的方案和软 件接收机方案,可以把捕获模块集成到主机的处理器中,共享主机的处理 器和存储器资源,因此节省了硬件成本。主机的类型由应用平台决定,对 于集成GPS功能的手机,PDA等设备而言,主机就是手机或PDA上的处理器, 通过GPS射频前端模块接收GPS信号并存储,再利用捕获模块对GPS信号 进行捕获处理,对于集成GPS功能的笔记本平台,处理器就是笔记本的CPU。
6、 本发明并行快速捕获捕获模块可以推广应用于各种通信导航设备的 GPS接收机以及其它卫星导航系统如欧盟的伽利略系统,中国的北斗系统的 接收机。


图1是本发明GPS信号大规模并行快速捕获模块的信号处理方框图。 图1中101—混频、102—数据块缓存、103—并行部分相关处理、104— 频域变换、105—后处理与检测、106—数控振荡器、107—码产生器以及108 —査表等子模块。
图2是图1本发明的并行部分相关PPC处理和频域变换的原理方框图。
图2中201—缓存器中均分为M段的数字基带信号长度为N的数据块、 201a—201中O段填零扩展数据段、201b—201中1段填零扩展数据段、201c —201中2段填零扩展数据段、201d_201中M-l段填零扩展数据段、202 一缓存器中的本地码数据、202a—缓存器中过采样扩展数据长度为N的扩 展本地码、203—频域变换处理的FFT计算、204—复共轭计算、205—逐点 乘法器、206—IFFT计算、207—移位器组、208—PPC矩阵、209—结果矩 阵。
图3是图2中一个1V^8实施例数组循环右移操作的示意图。 图3中301—8个元素的数组、302a—循环右移0个元素的数组、302b— 循环右移1个元素的数组、302c—循环右移2个元素的数组、302d—循环右 移7个元素的数组。图4是图2中一个M-4, L=2, N=8实施例计算PPC矩阵和结果矩阵 的示意图。
图4中401a 401d—为M=4的4个数组、402—为4行8列PPC矩阵、 403—为4行8列结果矩阵。
图5是计算PPC矩阵和结果矩阵的另一个实施例的示意图。 图5中501a 501d—为4个数组、502—为4行8列PPC矩阵、503—为 填充零的PPC矩阵、504—为8行8列结果矩阵。
图6是本发明GPS信号大规模并行快速捕获模块一个实施例的一次处 理处理流程图。
具体实施例方式
下面结合说明书附图和实施例进一步描述本发明的一种基于FFT变换 的GPS信号的大规模并行快速捕获方法的技术方案。
如图1所示是GPS信号大规模并行快速捕获模块的信号处理方框图, GPS信号大规模并行快速捕获模块包括混频和滤波子模块101、数据块缓存 子模块102、并行部分相关PPC处理子模块103、频域变换子模块104、后 处理子模块105,还有给乘法器101输出本振信号的数控振荡器子模块106、 给并行部分相关处理子模块103输出本地码的码产生器子模块107以及査 表子模块108。
众所周知,GPS卫星导航定位系统发射的调制波包含C/A码信息,C/A 码为粗捕获码,C/A码的码率为1.023 Mbit/s,其码长为1023码片,码 历元为1 ms。 GPS信号大规模并行快速捕获方法主要利用C/A码信息。GPS 接收机的系统CPU (以下简称系统CPU)调用混频和滤波子模块101,将 从射频前端电路输出的低中频数字信号通过与数控振荡器106产生的本地 载波作混频处理,滤波剥离了不需要的载波信号,转换为基带信号,系统 CPU)调用数据块缓存子模块102,将混频输出的基带信号存入缓存器,并 在缓存中把基带信号组合成1023A个数据样点的多个数据块,长度为N的 数据块被均分成M个数据段,其中N=1023P为C/A码一个周期的码片数 目,P为数据块数目,P为一个整数, 一般都不小于2,例如取P:2,即数据块长度N为2046,每个码片中有两个数据样点。系统CPU调用并行部 分相关处理子模块103,对从缓存中读出基带信号数据块与码产生器子模块 107产生的本地码进行并行部分相关处理把每个数据段的末尾填充零扩 展,使扩展数据段的数据长度为N,同时将本地码也通过过采样方式扩展, 使扩展本地码的数据长度也为N个数据,经过并行部分相关PPC处理和计 算后,产生一个M行N列的PPC矩阵。然后,系统CPU调用频域变换子 模块104,将PPC矩阵通过频域变换处理生成频域的M行N列的结果矩阵。 通过系统CPU逐一调用数据块缓存子模块102、并行部分相关处理子模块 103、频域变换子模块104,将多个基带信号数据块的每个数据块逐一进行 并行部分相关PPC处理和频域变换,就生成了多个频域的M行N列的结果 矩阵。最后,系统CPU调用后处理子模块105,采用相干积分或者对结果 矩阵进行取模或平方处理后进行非相干积分等处理计算,对多个频域的M 行N列的结果矩阵进行积分累加,得到M行N列累加结果矩阵,再对M 行N列累加矩阵的MXN个搜索单元进行最大值比较与信号检测处理,找 出若干个最大值,具体最大值的个数根据系统CPU的空闲资源来确定,然 后对找出若干个最大值进行信号检测,检测采用如传统的唐检测器或N中 取M检测器,估计出码相位和多普勒频率。本发明GPS信号大规模并行快 速捕获模块,通过并行部分相关PPC处理算法和频域变换,搜索的并行度 高达几万个码相位量级,处理速度快,并对多个频域的M行N列的结果矩 阵进行积分累加,较长时间的积分,提高了捕获灵敏度, 一次处理过程就 能完成整个搜索空间2000多个码相位的搜索,从而完成对整个GPS信号捕 获空间的快速捕获。
图2给出本发明并行部分相关处理方法示意框图,缓存器中均分为M 段的数字基带信号长度为N的数据块201, 201a 201d为201中第0段 第M-l段的填零扩展数据段,缓存器中的本地码数据202,经过过采样扩 展数据长度为N的扩展本地码为202a,所有FFT变换为203计算,204为 复共轭计算,205为逐点乘法器,206为IFFT计算,207为M行移位寄存 器组,208为M行N列PPC矩阵,209为M行N列结果矩阵。通过图2 详细描述本发明并行部分相关处理方法。系统CPU通过数据缓存子模块102从缓存器的基带信号中读取一个数 据块201数据,数据长度为N的数据块平均分成M段,数据块201均分成 0数据段 M-1数据段,每个数据段有I^N/M个数据。系统CPU调用并行 部分相关处理子模块103,将数据块201的每个数据段都通过填充零扩展成 数据长度为N个的扩展数据块即新数据块,201a是第0段数据填充零扩展 得到的新数据块,201b是第1段数据填充零扩展得到的新数据块,相应的 201d是最后第M-l段数据填充零扩展得到的新数据块,扩展数据段如公式 (1)所示;同时将码产生器子模块107产生的本地码202通过过采样扩展 成长度N的扩展本地码202,再把扩展本地码202a进行FFT变换203,然 后将FFT变换结果作复共轭204计算,计算得到复共轭值;扩展后的本地 码202 a经过FFT变换的复共轭值分别与各个数据段零填充的新数据块作 FFT变换203的变换结果进行逐点相乘205,得到的计算结果再分别作IFFT 即反FFT变换204,产生了M个数组,如公式(4)所示;所有的M个数 组经过循环右移操作207,其中由201a对应的运算结果移位零或者说不移 位,由201b对应的运算结果循环右移L个数据,由201c对应的运算结果 循环右移2L个数据,……,由201d对应的运算结果循环右移(M-l) L个 数据;M个循环右移后的数组构成M行的PPC矩阵208,每个循环右移后 的数组分别对应PPC矩阵的一行,每个数组有N个元素,所以PPC矩阵 208的尺寸为M行N列,它包括MxN个搜索信号元素。
系统CPU调用频域变换子模块104,将PPC矩阵208的每列数据作FFT 变换203,频域变换后形成M行N列的结果矩阵209,如公式(5)所示。 每一列的M个搜索信号元素是对应一个码相位估计值下的M个多普勒频率 估计值的相关值,N列的M个搜索信号元素包括结果矩阵209的MxN个 搜索信号元素的多普勒频率估计值的相关值。
图3给出的是一个实施例M=8数组循环右移操作的示意图。假设一个 数组有8个元素,数组301的元素分别标号为0, 1, ......, 7。最小可以循
环右移O个元素,循环右移O个元素,形成数组302a,数组302a的元素排 序不变,标号仍分别为O, 1, ......, 7;循环右移l个元素,形成数组302b,
数组302b的元素排序为标号分别为1, ......, 7, 0;数组301的最后一个元素7成为了数组302b的第一个元素;同样,循环右移2,……,7个元 素生成的新数组为302c,……,302d;对于实施例中,最大可以循环右移 7个元素;数组301的最后一个元素7成为了数组302d的第七个元素。
图4是一个实施例计算PPC矩阵和结果矩阵的示意图。假设M:4,1^2, N=8,经过IFFT变换后的4个8个元素的数组401a, 401b, 401c, 401d, 分别循环右移O, L=2, 2L=4, 31^=6个元素后,组成4行8列的PPC矩阵 402,对PPC矩阵402的每一列分别进行FFT变换,PPC矩阵402的第一
列的4个元素(a0, b6, c4, d2》进行FFT变换得至U(AO, BO, CO, D0},......
PPC矩阵402的第八列的4个元素(a7, b5, c3, dl)进行FFT变换得到(A7, B7, C7, D7},完成所有列的FFT变换后,得到4行8列的结果矩阵403。 结果矩阵403 —共有MxN=32个搜索信号元素,行索引对应4个不同的多 普勒频率估计值,列索引对应8个不同的码相位估计值,每个搜索信号元 素对应的是相应的码相位估计值和多普勒频率估计值下的相关结果。
图5给出了一个提高多普勒频率估计分辨率的本发明的一个实施例。 通过该实施例来描述本发明方法的并行部分相关处理子模块和频域变换子 模块提高多普勒频率的计算精度即减小多普勒频率值的间隔的另一个处理 技术,它是通过对PPC矩阵的每一列末尾填充零来实现,填充K个零来增 加K个多普勒频率估计值。设M:4,N:8,多普勒频率估计分辨率为lkHz 。 IFFT变换后的数组501a, 501b, 501c, 501d分别经过循环右移后,产生 PPC矩阵502,并在PPC矩阵作频域变换之前,对PPC矩阵502的每一列 数据进行填充零扩展处理,在本实施例中,每一列填充了K:4个零,填充 零后,每一列的长度为M+K=8,再对每一列进行FFT变换,产生了M+K 行N列的结果矩阵504,结果矩阵504—共有(M+K) N=64个元素。在本 实施例中,通过填充零的方法提高了多普勒频率估计分辨率,分辨率由lkHz 提高到500Hz。
对于GPS的C/A码信号的捕获的另一个实施例,设C/A码的码历元即 周期为lms, C/A码的码长为1023个码片,数据块大小为N=1023P=2046, 则P=2,码相位的估计分辨率为l/P=l/2码片,多普勒频率估计分辨率为lkHz。系统CPU通过改变缓存器中数据块的大小来调整码相位的估计分辨 率,比如N:4092,则P:4,码相位的估计分辨率为1/4码片,码相位的估 计分辨率提高一倍。
本发明一个实施例的GPS信号大规模并行快速捕获模块一次处理流程 如图6所示。GPS接收机的CPU系统启动捕获模块,加载初始化设置的 捕获参数,并根据信号条件值,通过査号子模块选择不同的捕获参数值。 为便于描述,在实施例中设信号条件值为-140dBm, 一组捕获参数设为数据 块大小为N^023P,数据块数目P=2,数据块等分数据段数目Ma=31、结 果矩阵累加数目或积分累加次数A^5,则每数据段的数据La=N/Ma=66;另 一组捕获参数设为数据块大小为N=1023P,数据块数目P=2,结果矩阵累 加数目或积分累加次数A^200数据块等分数据段数目M^1,则每数据段 的数据Lb=N/Mb=2046。
下面结合实施例,对GPS信号大规模并行快速捕获流程作如下描述 S601根据输入GPS信号判断信号条件的强弱,査号读取所设信号条件 值为-140dBm,弱信号的捕获参数为数据块大小为N=1023P,数据块数目 P=2,数据块等分数据段数目Ma=31、结果矩阵累加数目或积分累加次数 Aa=5,则每数据段的数据L^N/M^66;强信号的捕获参数为数据块大小 为N^023P,数据块数目P-2,结果矩阵累加数目或积分累加次数A^200 数据块等分数据段数目Mb=l,则每数据段的数据Lb=N/Mb=2046。
若是强信号条件或信号条件值〉140dBm,转S602a读取调整的捕获 参数,选用较大的数据块等分数据段数目Ma=31、每数据段的数据数目 La=66,选用较小的结果矩阵累加数目或积分累加次数Aa=5。 接着S603a,按照新的捕获参数计算PPC矩阵和结果矩阵; S604a计数,每次计数后计数值加1,并判断是否计数次数是否^Aa-5, 若计数次数〈A『5,转S603a,继续计算PPC矩阵和结果矩阵; 若S604a计数并判断次数》A『5,输出结果矩阵进行后处理; S606后处理与检测;接收多个结果矩阵,并对多个结果矩阵相干或非 相干积分处理,比较出多个最大值,然后对最大值进行信号检测;
S607送捕获数据接口;当信号检测完成后,如果成功检测到信号,就把信号的码相位和多普勒频率信息准备给CPU;如果没有检测到信号,也 提供捕获失败的信息给CPU;
S608系统CPU,接收捕获数据码相位和多普勒频率估计值的信息。
若S601判断是弱信号条件或信号条件值< -140dBm,转S602b读取调
整的捕获参数,选用较小的数据块分段数目Mb=l、每段数据数目Lb=2046,
选用较大的结果矩阵累加数目或积分次数Ab=200次。
接着S603b,按照新的捕获参数计算PPC矩阵和结果矩阵;
S604b计数,每次计数后计数值加1,并判断是否计数次数是否》Ab
=200,若计数次数〈Ab-200,转S603b,继续计算PPC矩阵和结果矩阵; 若S604b计数并判断次数^Ab:200, S605b输出结果矩阵; S606后处理与检测;接收多个结果矩阵,并对多个结果矩阵相干或非
相关积分处理,比较出多个最大值,然后对最大值信号检测;
S607送捕获数据接口;当信号检测完成后,如果成功检测到信号,就
把信号的码相位和多普勒频率信息准备给CPU;如果没有检测到信号,也
提供捕获失败的信息给CPU;
S608系统CPU,接收捕获数据码相位和多普勒频率估计值的信息。
上述S603a和S603b的计算PPC矩阵和结果矩阵的一种实施例是对所 有扩展后的数据段与本地码作循环相关处理后产生的多个数据数组,对这 些数据数组按照规定原则进行循环右移操作,于是产生了 PPC矩阵。再对 PPC矩阵的每一列进行FFT变换,得到M行N列的结果矩阵。
另一实施例是在PPC矩阵的每一列后部填充零来改变PPC矩阵的尺 寸,再计算结果矩阵;
上述S606后处理与检测包括接收多个结果矩阵,并对接收的每一个结 果矩阵进行相干或非相关积分处理,得到累加矩阵,然后对累加矩阵的每 个搜索信号元素作最大值比较,提取多个最大值,最后对每个最大值进行 信号检测。
本发明大规模并行快速捕获模块适用于多种GPS接收机方案,对于标 准的SOC方案(应交代标准的SOC方案的含义,并说明与本发明方法的关系),GPS接收机中已包括处理器即系统CPU,存储器,射频前端模块,只 要把本发明的大规模并行快速捕获模块固件配置到系统CPU中,就可实现 本发明的目的,并取得实质性的效果。对于低成本的基于主机的软件接收 机方案,把本发明的大规模并行快速捕获模块软件集成到主机的处理器中, 共享主机的处理器和存储器资源,既节省硬件成本,又能实现本发明的目 的。主机的类型由应用平台决定,对于集成GPS功能的手机、PDA等设备 而言,主机就是手机或PDA上的处理器,通过GPS射频前端模块接收GPS 信号并存储,再调用大规模并行快速捕获模块软件对GPS信号进行捕获处 理。对于集成GPS接收功能的笔记本平台,处理器就是笔记本的CPU。
不言而喻,本发明并行快速捕获捕获模块可以推广应用于各种通信导 航设备的GPS接收机、其它卫星导航系统如欧盟的伽利略系统,以及中国 的北斗系统的接收机。
权利要求
1、GPS信号大规模并行快速捕获方法,其特征在于,它包括下述步骤步骤一、系统配置和捕获参数设置(1)在GPS接收机的CPU系统中配置GPS信号大规模并行快速捕获模块,GPS信号大规模并行快速捕获模块为一块软件固件;(2)在GPS信号大规模并行快速捕获模块固件中写入GPS信号大规模并行快速捕获程序;(3)依据GPS接收机检测到输入GPS信号的强弱确定信号条件值;(4)设置捕获参数捕获参数包括数据块长度N、数据块分段数目M、结果矩阵累加数目A,A也是数据块的个数和计数的次数;捕获参数设置包括初始化人工选择或者按照信号条件值从捕获参数表中查表自动取值;(5)在不同信号条件值下,设置不同的捕获参数,捕获参数设置策略是满足一次搜索处理过程累加多个结果矩阵,能够捕获到卫星信号,并由此设置多普勒搜索空间,完成对GPS信号的快速捕获;步骤二、输入GPS低中频数字信号转换为基带信号GPS接收机的CPU将输入的GPS低中频数字信号与一个由本地载波NCO产生的本地载波混频,转换为GPS基带信号;本地载波NCO产生的本地载波信号为标称的低中频的频率上叠加有多组不同的本地参考时钟频率漂移和多普勒频率的估计值,转换后的GPS基带信号中携带有多组不同的多普勒频率估计偏差值和本地参考时钟漂移的估计误差值的信息;步骤三、并行部分相关PPC处理一、将GPS基带信号数据分成多个数据块和数据段,对数据段通过填零扩展,并对扩展数据段作FFT变换(1)将混频得到的GPS基带信号数据以一个多普勒补偿后的码历元为长度单位组合成多个数据块,设每个数据块的数据长度为N,每个数据长度为N的数据块的数据等分成M个数据段,每个数据段的长度为L=N/M;(2)并将一个码历元内的基带信号数据以多个数据块以及每个数据块分成M个数据段的方式送缓存,M个数据段的编号依次为0,1,2,......,M-1;(3)每次从缓存中读取一个数据块,并将该数据块的每个数据段通过在末尾填充零扩展,使得每个数据段长度与分段之前的数据块长度相等均为N,即生成M个长度为N的扩展数据段,M个扩展数据段的编号为0,1,2,......,M-1;(4)对M个长度为N的扩展数据段分别作FFT变换,把数据从时域变换到频域,形成M个FFT变换结果,M个FFT变换结果的编号为0,1,2,......,M-1;二、对本地码过采样扩展,对扩展的本地码作FFT变换并计算其复共轭(1)由码产生器生成本地码,并让本地码载波频率中包含有多普勒频率估计值的信息;(2)然后对本地码作过采样扩展,使得扩展后的本地码数据长度与步骤二(1)缓存中的数据块长度相等,即数据长度为N个数据,扩展本地码的周期长度为N;(3)对扩展后的本地码数据进行FFT变换;(4)再对FFT变换结果计算复共轭,得到复共轭值;三、计算并行部分相关PPC矩阵和结果矩阵(1)把M个扩展数据段的FFT变换结果分别与由扩展本地码FFT变换结果作复共轭计算得到的复共轭数据进行逐点相乘,然后对M个长度为N的相乘结果再分别作IFFT变换,形成M个数据长度为N的数组,M个数组相应的编号依次为0,1,2,......,M-1;(2)将IFFT变换形成的M个数组按规定原则循环右移操作,形成M行N列的PPC矩阵;循环右移操作规定原则为编号为0号的数组保持不变,成为PPC矩阵的第一行;编号为第1号的数组循环右移1N/M个数据,成为PPC矩阵的第二行;编号为第2号数组循环右移2N/M个数据,成为PPC矩阵的第三行;依次类推,最后编号为第M-1号数组循环右移(M-1)N/M个数据,成为PPC矩阵的第M行;其中,N为数据块长度,M为一个数据块的均分数据段数,N/M=L为扩展前数据段的长度;(3)对M行N列PPC矩阵的每一列填零扩展后进行FFT变换;若扩展填零数为零,对M行N列PPC矩阵的每一列进行FFT变换,形成N个数据长度为M的数组,N个数组相应的编号依次为0,1,2,......,N-1;若扩展填零数为M个,对2M行N列PPC矩阵的每一列进行FFT变换,形成N个数据长度为2M的数组,N个数组相应的编号依次为0,1,2,......,N-1;每一列填零扩展以便提高多普勒频率的分辨率;(4)N个数据长度为M的数组构成一个M行N列的结果矩阵在M行N列的结果矩阵中的每一个阵元对应于一个信号搜索单元,一个信号搜索单元对应于一个码单元与一个多普勒单元的估计信息,不同编号的行对应于不同的多普勒频率的估计值,不同编号的列对应于不同的码相位估计值;所以,M行N列的结果矩阵中包含了M×N个信号搜索单元的相关运算结果;而N个数据长度为2M的数组构成一个2M行N列的结果矩阵在2M行N列的结果矩阵中的每一个阵元对应于一个信号搜索单元,一个信号搜索单元对应于一个码单元与一个多普勒单元的估计信息,不同编号的行对应于不同的多普勒频率的估计值,不同编号的列对应于不同的码相位估计值;所以,2M行N列的结果矩阵中包含了2M×N个信号搜索单元的相关运算结果;四、根据步骤一设置的捕获参数,重复步骤三的一至三,对A个数据块逐块一一进行并行部分相关PPC处理,直到计数次数满足A值条件后,形成与数据块数目相同的多个结果矩阵;步骤四、后处理与检测(1)对多个结果矩阵采用相干或非相干积分处理,积分处理后形成一个累加结果矩阵,累加结果矩阵的构成仍为M行N列,它包含有M×N个信号搜索单元的相关处理和累加处理的结果数据;随着积分时间的增加,噪声带宽减小,噪声功率也不断减小,积分处理使得信噪比增加,获得处理增益,从而提高捕获灵敏度;(2)对累加结果矩阵中每个数据进行比较,找出若干个最大值的数据;数据最大值的个数根据GPS接收机的系统CPU的具体空闲资源来确定;(3)然后用检测器对最大值的数据进行检测,估计出各个最大值数据的码相位和多普勒频率;检测采用传统的唐检测器或N中取M检测器等;通过上述步骤的一次处理过程,捕获到GPS信号,粗略确定捕获的GPS信号的码相位和多普勒频率,实现对GPS信号的并行快速捕获。
2、 根据权利要求1所述的GPS信号大规模并行快速捕获方法,其特征 在于所述的并行部分相关PPC处理,PPC处理参数由捕获参数确定,包 括数据块的长度N、数据块等分的数据段数目M、结果矩阵累加数目A; 处理参数随捕获参数预先设置并根据多普勒搜索范围和信号条件值进行实 时调整,而且并行部分相关PPC处理过程中形成的PPC矩阵和结果矩阵的 构成均为M行N列,结果矩阵的个数为A个。
3、 根据权利要求1所述的GPS信号大规模并行快速捕获方法,其特征 在于所述的信号条件值是由GPS接收机的CPU系统的信号条件检测手段 判定并提供给GPS信号大规模并行快速捕获模块,模块按照预先设置的信 号条件值与捕获参数和信号条件判断值的对应关系构成的捕获参数表和信 号条件判断值表,实时自动调整捕获参数和信号条件判断值;GPS接收机 CPU系统根据输入的GPS信号条件,搜索空间的大小和处理器的处理能力, 按照一次搜索过程中数据的处理量与捕获性能达到良好的均衡的搜索策略 来设置捕获参数,同时对应于不同的GPS输入信号条件值,实时调整捕获 参数;捕获参数的设置原则是强信号条件值下,选择较大的数据块分段数M,使得搜索的多普勒范 围比较大,M的上限值为一次搜索的多普勒频率范围覆盖整个多普勒搜索 空间;选择较小的结果矩阵累加数目A,减少搜索时间来加快搜索速度, 在捕获参数表中,A的下限值为l;弱信号条件值下,选择较小的数据块分段数M,在一次搜索内分多次对不同的多普勒频率范围进行搜索以覆盖整个多普勒频率搜索空间,M的 下限值为1;选择较大的结果矩阵累加数目A,增加处理增益来提高搜索灵 敏度,在捕获参数表中,A的上限值取决于系统CPU数值运算的累加结果 字长。
4、根据权利要求1所述的GPS信号大规模并行快速捕获方法,其特征 在于所述的GPS信号大规模并行快速捕获程序是在GPS接收机的系统 CPU管理下调用算法, 一次处理过程同时搜索整个码相位空间以及多个多 普勒频率,通过设置参数M来配置多普勒频率搜索范围,实现对码相位维 度和多普勒维度的二维并行搜索,搜索的并行度达到几万 几十万信号搜 索单元;GPS信号大规模并行快速捕获程序包括以下步骤(1) GPS接收机的系统CPU启动"捕获",先加载初始化设置的捕获参数;(2) 根据系统CPU提供的输入GPS信号条件值判断信号条件的强弱 S601判断输入GPS信号条件的强弱,若是强信号条件或信号条件值^信号条件判断值,转S602a,如若是弱信号或信号条件值<信号条件判断值, 则转602b;S602a按实际信号条件值査捕获参数表和信号条件判断值表,调整捕获参数设置值和信号条件判断值;S603a按照调整的捕获参数设置,计算PPC矩阵和结果矩阵;S604a计数并判断计算次数Aa,若〈Aa,转S603a继续计算PPC矩阵和结果矩阵;若计数值》Aa,输出结果矩阵;S605a输出每次计算得到的结果矩阵到S606后处理与检测;S602b按实际信号条件值査捕获参数表和信号条件判断值表,读出新的捕获参数设置值和信号条件判断值;S603b按照设置的捕获参数计算PPC矩阵和结果矩阵;S604b计数并判断计算次数Ab,若计数值〈Ab,转S603b继续计算PPC矩阵和结果矩阵;若计数值^Ab,输出结果矩阵;S605b输出每次计算得到的结果矩阵到S606后处理与检测;S606后处理与检测;后处理与检测包括对多个结果矩阵累加处理以及多个最大值的比较和信号检测;S607准备捕获数据;包括是否检测到信号,如果检测到信号,准备信 号的码相位和多普勒频率信息,送捕获数据接口;S608系统CPU对捕获数据进行判断,是否继续进行信号捕获。
5、 根据权利要求1所述方法构成的GPS信号大规模并行快速捕获模块, 其特征在于所述的GPS信号大规模并行快速捕获模块固件是一块只读存 储器或随机存储器;GPS接收机的系统CPU与只读存储器或随机存储器配 置有连接接口 ;在只读存储器或随机存储器中写入GPS信号大规模并行快 速捕获程序;所述的GPS信号大规模并行快速捕获模块固件中包含有乘法运算和滤 波(101)、数据送缓存(102)、并行部分相关处理(103)、频域变换(104)、 后处理与检测(105),还有数控振荡(106)、码产生器(107)以及査表等 子模块;所述的查表子模块包含一组捕获参数表和信号条件判断值表;捕获参 数表和信号条件判断值表中的捕获参数和信号条件判断值包括由该CPU系 统初始化时设置的默认值以及由该CPU系统提供输入GPS信号条件值的对 应值;GPS信号大规模并行快速捕获模块固件在一次捕获处理过程结束时, 按照GPS接收机的CPU系统提供的输入GPS信号条件值,通过查表操作 从捕获参数表和信号条件判断值表中读取新的捕获参数和信号条件判断 值,作为当前的捕获参数和信号条件判断值。
6、 根据权利要求5所述的GPS信号大规模并行快速捕获模块,其特征 在于所述的并行部分相关处理子模块至少包括以下的处理和运算(1) 从缓存读取基带信号数据,并将数据划分数据块和将数据块均为 M个分数据段;(2) 每个数据段填零扩展,每个扩展后数据段长度同数据块长度N;(3) 每个扩展后数据段作FFT变换;(4) 本地码过采样扩展,每个扩展后数据长度同数据块长度N;(5) 扩展后本地码作FFT变换,并对扩展后本地码FFT变换计算复共轭;(6) 每个扩展后数据段作FFT变换后的数据与扩展后本地码作FFT 变换并计算复共轭的数据逐点相乘;再分别进行IFFT变换,生成M个长 度为N的数组;(7) IFFT变换后生成的M个数组分别循环右移,形成PPC矩阵;循 环右移后的M个数组分别对应PPC矩阵的一行,每个数组有N个元素, PPC矩阵的尺寸为MxN;(8) N个数据长度为M的数组构成一个M行N列的结果矩阵。
7、 根据权利要求5所述的GPS信号大规模并行快速捕获模块,其特征 在于所述的捕获参数表是一个数据块的长度N、数据块等分的数据段数 目M、结果矩阵累加数目A等捕获参数与信号条件值的对照表;捕获参数与多普勒搜索范围有关,对照表中捕获参数的符合以下原则(1) 选择较小的结果矩阵累加数目A和选择较大的数据段数目M值, 使搜索的多普勒范围较大,以获得较快的搜索速度,M值的上限为使得搜 索的多普勒范围覆盖整个多普勒搜索空间,通过一次处理过程的一次搜索 完成整个二维搜索空间的捕获;(2) 选择较大的结果矩阵累加数目A和选择较小的数据段数目M,以 获得较高的处理增益,但是搜索的多普勒范围较小,若对多普勒频偏的预 估计较准确,多普勒搜索的空间较小,通过一次处理过程的多次搜索完成 整个二维搜索空间的捕获;多普勒搜索范围与GPS接收机的启动模式有关,冷启动、温启动和热 启动三种启动模式的捕获参数作为三个默认值,在初始化时设置入捕获参 数表。
8、 根据权利要求5所述的GPS信号大规模并行快速捕获模块,其特征 在于所述的信号条件判断值表是一组表征由GPS接收机的系统CPU按照 输入GPS信号条件的优劣与信号条件判断值的对照表,信号条件判断值表 设置1或多个信号条件判断值;输入信号条件值低于信号条件判断值时, 自动将信号条件判断结果置"0",按照信号条件较弱,自动调整捕获参数;若输入信号的幅值大于等于判断值,自动将信号条件判断结果置"1",按 照信号条件较强,自动调整捕获参数。
9、 根据权利要求1或6所述的GPS信号大规模并行快速捕获模块,其 特征在于所述的结果矩阵是对PPC矩阵的每一列的M个部分相关值进行 FFT变换到频域,得到对应于每列的码相位下的M个多普勒频率值的相关 值,所以,结果矩阵包含MxN个信号搜索单元的相关运算结果;结果矩阵 的构成是M行N列,行的编号对应于不同的多普勒频率的估计值,列的编 号对应于不同的码相位的估计值。
10、 根据权利要求5所述的GPS信号大规模并行快速捕获模块,其特征在于所述的后处理与检测子模块包括多个结果矩阵的累加处理以及对多个最大值的比较和信号检测;其中对多个结果矩阵的累加处理包括相干积分或者对结果矩阵各个信号搜 索单元取模或平方运算后的非相干积分等处理;多个最大值的比较为排序比较找出最大的几个峰值,个数由GPS接收 机的系统CPU的具体空闲资源来确定;对找出的每个最大值分别进行信号检测,采用传统的检测器,传统的检测器包括唐检测器或N中取M检测器。
全文摘要
本发明提出GPS信号大规模并行快速捕获方法,在系统CPU配置一个包括乘法器、数据块缓存、并行部分相关处理、频域变换、后处理、数控振荡器和码产生器等子模块的大规模并行快速捕获模块固件,通过系统CPU调用计算,在一次处理过程中将低中频数字信号转换为基带信号,组合成数据块,并对数据块中每个均分的数据段作长度同数据块的填零扩展,然后基于FFT变换计算对每个扩展数据段与本地扩频码作并行部分相关PPC处理,再对形成的PPC矩阵的每一列进行FFT变换,得到一个结果矩阵,并对多个数据块处理形成的多个结果矩阵作相干或非相干积分,增加处理增益,提高捕获灵敏度,粗略确定GPS信号的码相位和多普勒频率,实现对GPS信号的二维并行快速捕获,处理效率高,捕获速度快,可应用于各种GPS定位导航设备。
文档编号G01S1/00GK101625404SQ20081006306
公开日2010年1月13日 申请日期2008年7月9日 优先权日2008年7月9日
发明者何文涛, 李晓江, 马成炎 申请人:杭州中科微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1