膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解

膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,第1张

近来,通信和导航工程师越来越倾向在全球定位系统(GPS)中采用软件技术。1,2 由于超大规模集成电路的发展,性能强大的CPUDSP能够通过软件对GPS信号进行实时检测和解码。这些基于软件的GPS接收机具有相当强的灵活性:只 需修改设置参数即可适应新的应用,无需重新设计硬件,选择一个IF,就可完成进一步的系统升级。

利用MAX2769 GPS接收机RF前端芯片,简单的USB DONGLE或PCI Express?(PCIe?)迷你卡就可以为膝上型PC增加低成本的GPS 功能。MAX2769将接收到的原 始数据传输到PC主机,PC主机利用软件实现基带解 码,从而省去了单机GPS系统所需要的基带ASIC的成 本。简单的说,MAX2769使设计人员可以利用单芯 片实现GPS和Galileo系统信号处理的适配器。 本文给出了GPS系统的工作状态概述,并详细描述了 Maxim的基于软件的GPS接收机方案。

GPS信号发生器

GPS系统包含24颗空间卫星或空间运载器、地面控制站以及用户设备(接收机)。对于民用GPS和Galileo系统,这些卫星通过频率为1.57542GHz的L1波段进行通信。3 GPS 接收机必须捕获到至少四颗卫星的信号才能进行可靠 定位,信号捕获和跟踪非常复杂,因为每颗卫星和接 收机的位置时刻都在变化。

GPS系统实际上是一个简单的扩频通信系统。4 图1提 供了一个民用GPS系统的信号发生电路。首先,50bps 的导航信息重复20次,形成1000bps的比特流。然后 这个重复信号被长度为1023码片(伪随机噪声(PRN)码的码速) 的唯一粗/ 捕获码( C / A ) 进行扩频, 形成 1.023Mcps的基带信号。此用这种扩频方法后,43dB 大小的GPS系统的总处理增益(G)可以很好地恢复比 热噪声电平低得多的信号。

每颗卫星都有唯一的C/A码或者说Gold码。5 由于具有 很好的自相关和互相关性,Gold码被广泛用于各种 CDMA通信系统,如WCDMA和cdma2000?。基带信 号经过二元相移键控(BPSK)调制后被上变频到L1波 段进行传输。

膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,第2张

图1. 民用GPS信号发生器采用扩频技术发送信号

信号取样方法分析

因为GPS是一种CDMA通信系统,所以作为解调数据 的先决条件,接收机必须与PRN码进行同步。实现代 码同步通常需要两个步骤:用来实现粗对准的代码捕 获和用来实现精细对准的代码相位跟踪。6 更明确地 讲,GPS接收机必须首先确定它对某颗卫星是否具有 视距上的可视性。我们知道,每颗卫星都由唯一的 C/A码来区分。当卫星可视时,由捕获过程判断信号 的频率和代码相位,然后确定相应的解调参数。由于 存在多普勒效应,根据卫星相对于接收机的速度,接 收信号的频率一般会偏移标称值5kHz到10kHz。

在接受器端,GPS信号首先被下变频到同向和正交 (I和Q)分量信号。再由一对I-Q相关器将I/Q基带信号 与本地PRN序列进行相关运算。经过一个比特周期的 积分后,I-Q相关器的输出被累加起来以提供输出判定变量。

只要判定变量超过一定的门限,系统就认为成功地实 现了捕获,继而进入跟踪模式。否则,就通过调节本 地PRN序列的相对相位和振荡器频率,来更新判定变 量,并重复上述过程。

串行搜索方法的简单逻辑结构使它非常适合用ASIC 实现,而用软件实现就不切实际了,因为搜索空间非 常大。假设系统允许500Hz的载波频率偏移,多普勒 频率是10kHz,软件实现需要的搜索空间大概为 2 x (10,000/500) x 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信号的频率和代码相位参数的粗校准。因此,跟踪的目的是进行细调,以便系统能用精确的代码相位和频率信息解调出数据。跟踪包括代码相位跟踪和载波频率跟踪。

代码跟踪用延时锁相环(DLL)实现,如图2所示。DLL电路把输入信号乘以PRN码的三个复制码(间隔±0.5码片),这三个复制码分别代表和输 入信号相比提前、准时和落后到达。经过综合后,这些信号分别代表输入信号和本地复制码之间的相关性。具有最高相关值的信号被选中保留下来(图3)。

载波频率跟踪由锁相环(PLL)或者Costas环路完成。8载波跟踪的目的是把本地频率调节为输入信号的实际频率。

当捕获和跟踪过程建立起初始同步后,系统能够解码出导航比特。将1.023Mcps的输入信号解扩为1000bps的比特流后就开始解调数据。然后 利用比特同步从1000bps的数据流中恢复出50bps的信息。比特同步需要通过寻找零交叉沿(0V)来识别比特流的起始位置。

如果这个交叉沿是已知的,我们可以用20ms的间隔分割1000bps输入流,因为导航数据信息(50位)的持续时间为20ms。最后,以20ms间隔排列的比特取样累加起来取平均值,从而解码出导航数据。

膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,第3张

图2. 使用延时锁相环作代码跟踪帮助细调,以便系统能用精确的代码相位和频率信息解调出数据 

膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,第4张

图3. DLL电路把输入信号乘以PRN码的三个复制码(间隔±0.5码),这三个复制码分别代表和输入信号相比提前、准时和落后到达。具有最高相关值的信号被选中保留下来。

基于软件的GPS接收机

传统的GPS接收机采用ASIC++实现信号捕获、跟踪和位同步 *** 作,而软件GPS接收机用软件代替硬件实现这些功能,因此具有更高的灵活性。通过简化 硬件架构,基于软件的设计能够进一步缩小接收机尺寸,降低成本,并具有更高效率。程序可以使用C/C++、MATLAB®或其它语言编写,并可移植到各种 *** 作系统中(嵌入式 *** 作系统、PC、Linux和DSP平台)。由此看来,软件GPS接收机能够为移动终端、PDA及其它类似设备提供最大的设计灵活性。

对于膝上型电脑,设计人员可以设计USB dongle (可配合任何带USB端口的膝上型电脑一起工作)。对于新一代带有PCIe迷你卡连接器的膝上型电脑,可以把RF前端置于PCIe迷你卡上,并把它插入 PC内部(图4a,图4b)。PCIe迷你卡接口包含一个USB口,因此,前端适配器设计对于USB和PCIe迷你卡而言非常相似。

主要区别在于:支持PCIe需要不同的电源管理逻辑电压,需要处理不同的直流电压(PCIe为3.3V,外部USB端口为5V)。

从图5b所示USB dongle框图可以看出该方案非常简单,只使用了一个通用GPS接收器MAX2769、一个计数器和USB接口控制器,即可捕获信号,并将其转换成数字 信号,最终传递给PC主机。然后,通过运行PC主机软件执行所有基带功能,将定位信息显示在PC 显示器上。这样,笔记本PC 便成了一个强大的GPS设备,可支持导航和基于定位的服务。

GPS前端通过工业标准USB 2.0接口把数字化的IF数据传输到笔记本电脑。软件基带程序利用输入数据计算出位置方位并随后执行跟踪过程。Geotate是可选的一个软件来源。

为提供通用接口,此软件能创建一个虚拟COM端口,使其可以连接到很多现有的导航和定位应用。大部分GPS软件包接口符合NMEA 0183标准,通常都可以运行在Microsoft的Windows® XP和Windows VistaTM *** 作系统中。另外,此软件能够处理所有可得的辅助数据,此数据可以从工业标准协议或者用户专有的接口取得。

当前的膝上型电脑里所带的CPU均具备满足软件GPS接收机实时解码所需的运算能力。当在1GHz PenTIum®M系统中,跟踪过程中平均处理器负载大约为6%;而在2.18GHz CoreTM Duo处理器上,在执行每秒更新时,处理器负载通常低于5%。随着算法的发展,有可能把CPU的使用率降低到2%以下。

电路工作和性能

基于软件的GPS接收机RF前端首先使用低噪声放大器(LNA)放大微弱的输入信号,然后经过下变频将信号转换到较低频率(4MHz左右)的IF (图5a)。下变频器采用一路或两路混频器对输入RF信号和本机振荡器信号进行混频,通过模/数转换器(ADC)把生成的模拟IF信号转换成数字IF信 号。

MAX2769将所有功能电路(LNA、混频器和ADC)集成到一起,可大大缩短产品的开发时间。该芯片提供了两个LNA:其中一个LNA具有低至 0.9dB的噪声系数、19dB 增益、-1dBm的IP3,可配合无源天线使用;另一个LNA则具有1.5dB的噪声系数、较低增益/功耗和较高的IP3,可配合有源天线使用。2.8V 供电时,消耗的电流最小,且仅为13至18mA,具体取决于电路配置。

膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,第5张

图4. 针对USB dongle (a)、PCIe迷你卡(b)的典型适配器结构,为两种方案均可提供了简单、低成本的设计 

RF端,在放大器之后通常使用外部RF滤波器。然后使用集成的20位,Σ-Δ N分频合成器和15位整数分频器将信号直接下变频到0至12MHz所要求的IF频率。IF滤波器的选择范围较广,可以适应不同的架构,例如Galileo。

从RF输入至IF输出的总增益能够在60至115dB范围内调节或进行自动控制。输出可以选择为模拟、CMOS或有限差分。内部ADC具有可设置的一到三位输出。集成参考时钟振荡器可以使用晶体或温补晶振(TCXO),也可以使用8至44MHz频率范围的输入参考时钟

我们利用MAX2769和工作在24MHz参考时钟的CypressSemiconductor的USB控制器构建了一个简单的USBd o n g l e 参考设计(如图5 b 所示)。该设计利用一路MAX8510 LDO调节直流电源。通过3线(SPITM)数字总线对MAX2769的寄存器进行编程。系统也可以在没有SPI控制的情况下工作在八种硬件模式的任意一 种。

芯片内的电路对有源天线进行偏置,关断模式下将天线关闭,满足USB规范。MAX2769能够检测到天线电源是否有电流消耗,并自动切换LNA1和 LNA2,对于能够插入灵敏度更高的有源天线替代无源天线的应用,这是一个非常理想的功能。设计人员只需要把外部天线端口连接到LNA2,把内部端口连接 到LNA1。

插入外部天线时,MAX2769将检测到吸电流,可自动由LNA1切换到LNA2。

MAX2769为膝上型电脑、手机、PDA和汽车应用提供了一个高性能、紧凑的解决方案。利用已经商用化的GPS软件包,115dB的总电压增益和1.4dB的模块噪声系数能够达到-143dBm 的捕获灵敏度和-154dBm的跟踪灵敏度。

膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,膝上型PC借助通用GPS RF前端实现软件基带处理超详细教程讲解,第6张

图5. (a)软件GPS接收机中,需要对捕获的RF信号进行放大、变频、数字化。(b)实际接收机中,低噪声放大器对RF信号进行放大,MAX2769对放大后的信号进行变频和数字化处理。然后,通过计数器和USB接口控制器将数据按照USB协议传输给PC主机。

结论

软件技术可实现简单的、低成本GPS应用。为支持这些可能性,MAX2769为软件GPS接收机和传统的硬件实现方法提供灵活的频率规划。当然,每 种方案都有正反面—软件GPS接收机需要高性能的处理器和适量的内存。然而,随着软件的发展,对时钟、数据更新速率进行合理的选择,需要的内存可以最小 化。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2652317.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-13
下一篇 2022-08-13

发表评论

登录后才能评论

评论列表(0条)

保存