1
本文研究了L1频段民用GPS应用中基于软件的接收器的基本理论,包括对信号采集和跟踪的讨论,以及接收器中位同步的需求。此外,还简要介绍了L1频段GPS接收器MAX2741,该接收器用作接收器的紧凑且价格低廉的RF前端。
用于全球定位系统(GPS)的软件技术1, 2最近引起了通信和导航工程师日益增长的兴趣。得益于VLSI的发展,强大的CPU和DSP现在能够使用软件实时检测和解码GPS信号。由此产生的基于软件的GPS接收器在修改设置以适应新应用方面提供了相当大的灵活性,无需重新设计硬件,对不同的频率计划使用相同的电路板设计,并实施未来的升级。本文重点介绍软件GPS接收机基本理论的CDMA通信方面。对于导航消息的解码和位置计算,感兴趣的读者可以参考James Bao-Yen Tsui的书,全球定位系统接收器的基础:一种软件方法。3
GPS系统由24颗空间卫星或航天器(每颗由唯一的PRN代码标识)、一个地面控制站和用户设备(接收器)组成。对于民用GPS应用,卫星通过位于1.1GHz的L57542频段进行通信。
GPS接收器需要至少四颗卫星的视线“可见性”才能建立可靠的位置。信号的采集和跟踪非常复杂,因为每个信号都随时间和接收器位置而变化。基于软件的GPS接收器(图1)的RF前端首先使用低噪声放大器(LNA)放大微弱的输入信号,然后将信号下变频至约4MHz的低中频(IF)。这种下变频是通过使用一个或两个混频器将输入RF信号与本振信号混合来实现的。产生的模拟中频信号通过模数转换器(ADC)转换为数字中频信号。
图1.软件 GPS 接收器的简化图。
Maxim在MAX2741中集成了该硬件(LNA、混频器和ADC),从而显著缩短了应用开发时间。其两级接收器放大入射1575.42MHz GPS信号,将其下变频至37.38MHz的第一中频,进一步放大,然后下变频至3.78MHz的第二中频。内部2位或3位ADC(可选择为具有1位或1位幅度的2位符号)对第二个IF进行采样,并将数字化信号输出到基带处理器。集成的频率合成器可实现灵活的频率规划,只需更改设置,即可在同一块电路板上实现 2MHz 和 26MHz 之间的许多常用参考频率。集成的基准振荡器支持使用晶体或温度补偿晶体振荡器 (TCXO) 进行操作。
传统的 GPS 接收器在 ASIC 中实现采集、跟踪和位同步操作,但软件 GPS 接收器通过在软件而不是硬件中实现这些模块来提供灵活性。通过简化硬件架构,软件使接收器更小、更便宜、更节能。您可以使用 C/C++、MATLAB 和其他语言编写软件,并将其移植到所有操作系统(嵌入式操作系统、PC、Linux 和 DSP 平台)中。因此,软件GPS接收器为移动手机、PDA和类似应用提供了最大的灵活性。®
全球定位系统信号
我们只考虑位于 1GHz 的知名 L1 频段上的民用 GPS 信号,频率为 57542.<>GHz。GPS系统实际上是一个简单的扩频通信系统。4民用应用的信号发生模块如图2所示。首先,将 50bps 的导航消息重复 20 次以产生 1000bps 的比特流。然后,重复信号通过长度为1023个芯片的唯一C / A代码进行传播(芯片是应用伪随机噪声码的速率)。结果是每秒 1.023 兆比特 (Mbps) 的基带信号。因此,GPS系统的43dB处理增益(G)允许其分辨远低于热噪声水平的信号。
图2.民用GPS信号的结构。
每颗卫星都被分配了一个唯一的C/A代码,也称为黄金代码。5由于黄金代码表现出优异的自相关和互相关特性,因此广泛用于CDMA通信系统,如WCDMA,cdma2000等。基带信号通过二进制相移键控(BPSK)进行调制,并上变频至L1频段进行传输。®
收购
由于GPS是CDMA通信系统,因此接收器必须同步伪随机噪声(PRN)代码,作为解调数据的先决条件。代码同步通常分两步实现:用于粗码对齐的代码采集和用于精细对齐的代码相位跟踪。6
更明确地说,GPS接收器必须首先确定它是否对某些卫星具有视线可见性。众所周知,每颗卫星都由唯一的C / A代码区分。当卫星可见时,采集确定信号的频率和码相位,进而建立相应的解调参数。接收信号频率因多普勒效应而异7,这会导致频率偏离其标称值 5kHz 至 10kHz,具体取决于卫星相对于接收器的速度。
信号采集的目的是粗略地确定载波频率和C/A码相位,C/A码相位表示数据块中C/A码的开始。常见的采集方法包括串行搜索,由于其简单的逻辑架构,它是硬件实现的理想选择,以及频域并行码相采集,其低计算复杂度使其适用于软件实现。
串行搜索模式的框图(图3)显示,接收到的信号首先下变频为同相和正交(I和Q)分量。然后,一对I-Q相关器将I和Q基带信号与本地生成的PRN序列相关联。在一位的持续时间内积分后,I-Q相关器输出相加以提供输出决策变量。
图3.时域中的串行搜索采集。
每当决策变量超过某个阈值时,系统就会假定相应的采集成功,并进入跟踪模式。否则,调整局部生成的PRN序列的相对相位和振荡器频率以更新决策变量,并重复上述过程。串行搜索方法的简单逻辑结构使其在ASIC中实现是可行的,但对于软件实现,由于搜索空间巨大,因此不实用。假设系统容许500Hz载波频率偏移,多普勒频率为10kHz,则软件实现的搜索空间约为2×(10000/500)×1023 = 40,920。显然,在软件中进行串行搜索采集是困难的。
另一种采集方法称为频域并行码相采集,在软件实现中复杂度较低(图 4)。基本原理是将多普勒频率和码相搜索合二为一,在PRN码的FFT变换之后,将所有码相信息反映到频域中。然后,我们只需要搜索多普勒频率偏移上的空间,从而实现快速有效的软件搜索。
图4.频域中的并行搜索采集。
首先,将输入信号分别乘以本地产生的正弦和余弦载波(I和Q信号分量)。然后,I和Q分量组合为FFT模块的复数输入。此傅里叶变换的结果乘以 PRN 码的 FFT 变换的共轭(PRN 生成器生成具有零码相位的代码)。在实践中,可以将FFT操作和PRN代码的生成制成表格,以降低计算复杂性。
最后,输入信号和本地代码的乘积(表示输入频率和载波频率之间的校正)应用于傅里叶逆变换,其平方输出反馈到决策逻辑。基于FFT的频域已被证明是计算的低消耗者。对于前面提到的示例,采集的复杂性大约为 20000/500 = 40 FFT 操作。图5显示了基于FFT的并行码采集,用于可见(a)和不可见(b)卫星的情况。
图5.相关器输出,用于当卫星可见(a)和不可见(b)时基于FFT的并行码采集。
因此,串行搜索方法具有方便的ASIC实现所需的简单逻辑和控制架构。然而,巨大的搜索空间给软件算法带来了复杂性。因此,串行搜索方法不是软件GPS接收器的好选择。相比之下,并行代码采集方法的低复杂度使其成为软件实现的理想选择。然而,它的逻辑架构比串行搜索方法复杂得多,因此很难在ASIC中实现。
跟踪
采集可建立 GPS 信号频率和码相参数的粗略对齐。因此,跟踪的目的是优化这种对齐,以便系统可以使用精确的码相位和频率信息解调数据。跟踪包括码相跟踪和载频跟踪。代码跟踪是通过图 6 所示的延迟锁紧循环 (DLL) 完成的。
图6.代码阶段跟踪技术。
DLL 电路将输入信号乘以 PRN 代码的三个本地副本(时间定位在 ±0.5 芯片),它们表示相对于输入信号的早期、提示和延迟到达。积分后,这些信号中的每一个都表示输入信号与本地副本之间的相关性。然后选择并保留具有最高相关值的那个(图 7)。载波频率跟踪由锁相环(PLL)或Costas环路执行。8载波跟踪的目的是将本地生成的频率调整到输入信号的确切频率。
图7.这些波形说明了图6电路的工作原理。
解调和位同步
在采集和跟踪建立初始同步后,可以解码导航位。数据解调首先将1.023Mbps输入信号解扩为1000bps位流。然后调用位同步以从 50bps 流中恢复 1000bps 信息。
对于位同步,我们首先需要确定时间上位的开始。这是通过找到过零边沿(0V)来实现的,该边沿表示位的开始。当知道该边沿时,我们可以以 1000ms 的间隔对 20bps 的输入流进行分区,因为我们知道导航数据消息(50 位)的持续时间为 20ms(图 8)。最后,对间隔为20ms的位样本求和并取平均值,以解码导航数据。
图8.位同步的注册方法。
结论
本文简要介绍了有关软件GPS接收机的某些主题,包括GPS信号结构,采集,跟踪和位同步。软件GPS技术为许多潜在应用提供了高度的灵活性和简单性。为了支持这些可能性,MAX2741紧凑、价格低廉的RF前端为软件GPS接收器和传统硬件实现的频率规划提供了灵活性。当然,每种解决方案都有其优点和缺点 - 软件GPS接收器需要高性能处理器和适量的内存。
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !