本应用笔记探讨了L1频段民用GPS应用中基于软件的接收机的基本理论,包括对信号采集和跟踪的讨论,以及接收机中位同步的需求。然后详细介绍了一种低成本的方法,通过USB加密狗和MAX2769通用GPS接收器为笔记本电脑添加GPS功能。
概述
通信和导航工程师对将软件技术用于全球定位系统(GPS)越来越感兴趣。1,2得益于超大规模集成 (VLSI) 开发,功能强大的 CPU 和 DSP 现在可以使用软件实时检测和解码 GPS 信号。由此产生的基于软件的GPS接收机在修改设置以适应新应用方面提供了相当大的灵活性,而无需重新设计硬件、选择IF频率或实施未来的升级。
利用MAX2769 GPS接收器RF前端,可以使用简单的USB加密狗或PCI Express®(PCIe®)迷你卡格式为笔记本电脑增加低成本GPS功能。MAX2769将原始恢复数据传输到PC主机,PC主机在软件中执行基带解码,从而消除了独立GPS系统通常需要的基带ASIC成本。简而言之,MAX2769使设计人员能够利用单芯片实现能够处理GPS和伽利略信号的适配器。
本文概述了GPS系统的操作,并详细介绍了Maxim基于软件的GPS接收器解决方案。
全球定位系统基础知识
GPS系统由24颗空间卫星或航天器(每颗由唯一的伪随机噪声代码标识)、一个地面控制站和用户设备(接收器)组成。对于民用GPS和伽利略应用,卫星通过位于1.1GHz的L57542频段进行通信。3GPS 接收器需要至少四颗卫星的视线可见性才能建立可靠的位置。信号的采集和跟踪非常复杂,因为每个信号都随时间和接收器位置而变化。
图1.民用GPS信号的信号生成块使用扩频方法发送信号。
全球定位系统信号
GPS系统实际上是一个简单的扩频通信系统。4 图1显示了民用应用的信号发生模块。首先,将 50bps 的导航消息重复 20 次以产生 1000bps 的比特流。然后,重复信号通过长度为1023个芯片的唯一粗/采集(C/A)代码进行传播,芯片是应用伪随机噪声(PRN)码的速率。结果是基带信号为1.023Mcps。因此,GPS系统的43dB处理增益(G)允许其分辨远低于热噪声水平的信号。
每颗卫星都被分配一个唯一的 C/A 代码,也称为黄金代码。5由于黄金码表现出优异的自相关和互相关特性,因此广泛用于CDMA通信系统,如WCDMA和cdma2000®。基带信号通过二进制相移键控(BPSK)进行调制,并上变频至L1频段进行传输。
信号采集方法分析
由于GPS是CDMA通信系统,因此接收器必须同步PRN码作为解调数据的先决条件。代码同步通常分两步实现:用于粗码对齐的代码采集,以及用于精细对齐的代码相位跟踪。6更明确地说,GPS接收器必须首先确定它是否对某些卫星具有视线可见性。众所周知,每颗卫星都由唯一的C / A代码区分。当卫星可见时,采集确定信号的频率和码相位,进而建立相应的解调参数。接收到的信号频率因多普勒效应而变化,7这导致频率偏离其标称值 5kHz 至 10kHz,具体取决于卫星相对于接收器的速度。
在接收器中,GPS信号首先下变频为同相和正交(I和Q)分量。然后,一对I/Q相关器将I和Q基带信号与本地生成的PRN序列相关联。在一位的持续时间内积分后,I-Q相关器输出相加以提供输出决策变量。
每当决策变量超过某个阈值时,系统就会假定相应的采集成功,并进入跟踪模式。否则,调整局部生成的PRN序列的相对相位和振荡器频率以更新决策变量,并重复上述过程。
虽然这种串行搜索方法的简单逻辑结构使其在ASIC中实现是可行的,但由于搜索空间巨大,因此对于软件实现并不实用。假设系统允许500Hz载波频率偏移,多普勒频率为10kHz,则软件实现的搜索空间约为2×(10,000/500)×1023 = 40,920。显然,在软件中进行串行搜索采集是困难的。
一种使用软件实现的更简单的采集方法是频域、并行码相采集。该方法将多普勒频率和码相搜索组合成一个搜索,在PRN码的快速傅里叶变换(FFT)之后,将所有码相信息反映到频域中。然后,我们只需要搜索多普勒频率偏移上的空间,从而实现快速有效的软件搜索。
系统首先将输入信号与本地生成的正弦和余弦载波(分别为I和Q信号分量)相乘来实现此搜索。然后,I和Q分量组合为FFT模块的复数输入。此傅里叶变换的结果乘以 PRN 码的 FFT 变换的共轭(PRN 生成器生成具有零码相位的代码)。在实践中,可以将FFT操作和PRN代码的生成制成表格,以降低计算复杂性。
最后,输入信号和本地代码的乘积(表示输入频率和载波频率之间的校正)应用于傅里叶逆变换,其平方输出反馈到决策逻辑。基于FFT的频域已被证明是计算资源的低消耗者。对于前面提到的示例,采集的复杂性大约为 20,000/500 = 40 FFT 操作。
串行搜索方法具有方便的ASIC实现所需的简单逻辑和控制架构。然而,这种方法所需的巨大搜索空间给软件算法带来了额外的复杂性。因此,串行搜索方法不是软件GPS接收器的好选择。相比之下,并行码采集方法的低复杂度使其成为软件实现的理想选择。然而,它的逻辑架构比串行搜索方法复杂得多,因此很难在ASIC中实现。
跟踪优化对齐
采集可建立 GPS 信号频率和码相参数的粗略对齐。因此,跟踪的目的是优化这种对齐,以便系统可以使用精确的代码相位和频率信息解调数据。跟踪包括码相跟踪和载频跟踪。
代码跟踪是通过图 2 所示的延迟锁紧环 (DLL) 完成的。DLL电路将输入信号乘以PRN码的三个本地副本(时间定位在±0.5芯片);这些副本表示相对于传入信号的早期、及时和延迟到达。积分后,这些信号中的每一个都表示输入信号与本地副本之间的相关性。然后选择并保留具有最高相关值的那个(图 3)。
图2.在代码跟踪阶段使用延迟锁相环来帮助优化对齐,从而更好地解调具有精确代码相位和频率信息的数据。
图3.DLL 电路将输入信号乘以 PRN 代码的三个本地副本(时间定位在 ±0.5 芯片),它们表示相对于输入信号的早期、提示和延迟到达。然后选择并保留具有最高相关值的那个。
载波频率跟踪由锁相环(PLL)或Costas环路执行。8载波跟踪的目的是将本地生成的频率调整到输入信号的确切频率。
在采集和跟踪建立初始同步后,系统可以解码导航位。数据解调首先将1.023Mcps输入信号解扩为1000bps位流。然后调用位同步以从 50bps 流中恢复 1000bps 信息。对于位同步,我们首先需要确定时间上位的开始。这是通过找到过零边沿(零伏特)来实现的,该边沿指示位的开始。当知道该边缘时,我们可以以 1000ms 的间隔对 20bps 的输入流进行分区,知道导航数据消息(50 位)的持续时间为 20ms。最后,对间隔为20ms的位样本求和并取平均值,以解码导航数据。
基于软件的 GPS 接收器
传统的GPS接收器在ASIC中实现采集、跟踪和位同步操作,而基于软件的GPS接收器通过在软件中实现这些功能提供了更大的灵活性。通过简化硬件架构,软件使接收器更小、成本更低、更节能。软件代码可以用 C/C++、MATLAB® 和其他语言编写,并移植到所有操作系统(嵌入式操作系统、PC、Linux 和 DSP 平台)中。因此,软件GPS接收器为移动手机、PDA和类似应用提供了最大的灵活性。
对于笔记本电脑,设计人员可以设计一个USB加密狗,以与任何带有USB端口的笔记本电脑配合使用。对于带有 PCIe 迷你卡连接器的较新笔记本电脑,他们可以在 PCIe 迷你卡上放置射频前端并将卡嵌入 PC 中(图 4a、4b)。PCIe 迷你卡接口包括一个 USB 端口,因此 USB 和 PCIe 迷你卡的前端适配器设计相似。主要区别在于支持 PCIe 所需的一些电源管理逻辑和不同的直流电压(PCIe 为 3.3V,外部 USB 端口为 5V)。
图4.USB 加密狗 (a) 和 PCIe 迷你卡 (b) 的典型适配器配置显示了任一选项的简单、低成本设计。
图5b显示了USB加密狗的框图,展示了该解决方案的简单性。该电路采用MAX2769通用GPS接收器、计数器和USB接口控制器来捕获信号,将其转换为数字信号,然后发送到主机PC。然后,软件执行所有基带功能,并在PC屏幕上显示位置。因此,笔记本电脑成为功能强大的GPS设备,可以支持导航和丰富的基于位置的服务。
GPS 前端通过行业标准 USB 2.0 接口将数字化的中频数据流传输到笔记本电脑中。软件基带程序使用输入来计算位置定位,然后执行跟踪。(该软件的一个可能来源是Geotate。有关更多信息,请转到:https://www.u-blox.com/en/product-resources。
为了提供通用接口,该软件可以创建一个虚拟COM端口,以便它可以链接到大量现有的导航和定位应用程序。大多数GPS软件包接口符合NMEA 0183,通常在Microsoft的Windows XP和Windows® Vista®操作系统上运行。此外,该软件应该能够处理所有可用的辅助数据,无论是通过行业标准协议还是专有客户接口提供。
当今大多数笔记本电脑内部的CPU具有足够的性能,可以满足软件GPS接收器的实时解码需求。在 1GHz 奔腾® M 系统上,跟踪时的平均处理器负载约为 6%;在 2.18GHz Core™ Duo 处理器上,每秒执行更新时,处理器负载通常低于 5%。通过进一步的算法开发,可以将 CPU 使用率降低到 2% 以下。
图5.在软件GPS接收器中,捕获的RF信号必须被放大,频率混合,然后数字化(a)。在实际接收器中,低噪声放大器会增强RF信号;然后,MAX2769将其混频并数字化。最后,数据通过计数器和USB接口控制器传输,并插入USB协议以传输到主机PC(b)。
电路操作和性能
基于软件的 GPS 接收器的射频前端首先使用低噪声放大器 (LNA) 放大微弱的输入信号,然后将信号下变频至大约 4MHz 的低中频 (IF)(图 5a)。这种下变频是通过使用一个或两个混频器将输入RF信号与本振信号混合来实现的。产生的模拟中频信号通过模数转换器(ADC)转换为数字中频信号。
MAX2769集成了所有这些功能(LNA、混频器和ADC),从而显著缩短了应用开发时间。该器件提供两种 LNA 选择:一种 LNA 具有极低的 0.9dB 噪声系数、19dB 增益和 -1dBm IP3,适用于无源天线;另一个LNA的噪声系数为1.5dB,增益和功耗略低,IP3略高,用于有源天线。2.8V 时的电流消耗最小,范围为 13mA 至 18mA,具体取决于配置。
在放大器之后的RF上有一个外部滤波功能。然后,使用集成的 20 位 Σ-Δ 小数 N 分频频率合成器和 15 位整数分频器直接对信号进行下变频,以实现 12 至 <>MHz 之间几乎任何所需的 IF。多种可能的IF滤波选择适应不同的方案,例如伽利略的方案。
从RF输入到IF输出的总增益可以在60dB至115dB范围内调谐或自动控制。输出可选择模拟、CMOS或有限差分。内部ADC具有8至44位的可选输出。集成基准振荡器支持使用晶体或温度补偿晶体振荡器 (TCXO) 工作,可以使用 <>MHz 至 <>MHz 的任何输入基准频率。
基于MAX2769和赛普拉斯半导体USB控制器,提供简单的USB加密狗参考设计,该控制器工作在24MHz基准(图5b)。加密狗采用单个MAX8510 LDO来调节直流电源。3线(SPI™)数字总线用于对MAX2769的寄存器进行编程。或者,系统可以在八种硬连线预配置状态之一下运行,无需SPI控制。
芯片上还有偏置有源天线的电路,然后在关断模式下关闭该天线,以实现USB合规性。MAX2769可以检测天线电源上是否存在电流消耗,并在LNA1和LNA2之间自动切换。这种灵活性在支持插入更灵敏的外部有源天线代替集成无源天线的应用中非常有用。设计人员只需将外部天线端口连接到 LNA2,将内部端口连接到 LNA1。插入外部天线后,MAX2769检测电流消耗,并自动从LNA1切换到LNA2。
MAX2769多频段GPS接收器为笔记本电脑、手机、PDA和汽车应用提供高性能、紧凑的解决方案。使用市售的GPS软件包,总标称电压增益高达115dB,模块噪声系数为1.4dB,可提供-143dBm采集和-154dBm跟踪灵敏度。
结论
软件GPS技术为许多潜在应用提供了高度的灵活性和简单性。为了支持这些可能性,MAX2769 GPS接收机RF前端为软件GPS接收机的频率规划以及传统的硬件实现提供了灵活性。当然,每种解决方案都有其优点和缺点 - 软件GPS接收器需要高性能处理器和适量的内存。但是,通过软件开发以及正确选择时钟和数据更新速率,可以最大限度地减少内存使用量。
审核编辑:郭婷
-
接收器
+关注
关注
14文章
2458浏览量
71795 -
gps
+关注
关注
22文章
2883浏览量
166033 -
RF
+关注
关注
65文章
3042浏览量
166818
发布评论请先 登录
相关推荐
评论