首页 高输出频率GPS接收机FPGA优化设计

高输出频率GPS接收机FPGA优化设计

举报
开通vip

高输出频率GPS接收机FPGA优化设计 - 1 - 原创性声明 声明:本论文《高输出频率 GPS接收机 FPGA优化设计》是作者在导师的指导下进行的研 究工作及取得的研究成果。除文中已经注明引用的内容外,不包含其他人已经发表或撰写过 的研究成果 高输出频率 GPS接收机 FPGA优化设计 李英飞,丁继成 1,赵琳 1 (哈尔滨工程大学 自动化学院,黑龙江 哈尔滨 150001) (1.指导老师) 摘 要:为使 DSP芯片有充裕的资源和时间用于复杂的导航计算,输出高频率的解算结果, 论文通过资源优化,只采用 FPGA逻辑电路实...

高输出频率GPS接收机FPGA优化设计
- 1 - 原创性声明 声明:本 论文 政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载 《高输出频率 GPS接收机 FPGA优化 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 》是作者在导师的指导下进行的研 究工作及取得的研究成果。除文中已经注明引用的内容外,不包含其他人已经发表或撰写过 的研究成果 高输出频率 GPS接收机 FPGA优化设计 李英飞,丁继成 1,赵琳 1 (哈尔滨工程大学 自动化学院,黑龙江 哈尔滨 150001) (1.指导老师) 摘 要:为使 DSP芯片有充裕的资源和时间用于复杂的导航计算,输出高频率的解算结果, 论文通过资源优化,只采用 FPGA逻辑电路实现了 GPS信号的捕获、跟踪、帧同步、卫星自 动搜索、伪距信息生成等基带处理功能,并整理了电文、历书、伪距信息、多普勒频移的格 式,方便传输。实验表明,论文提出的实现 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 可行有效,定位频率可达 100 Hz。 关键字:相干积分;滤波器调整;帧同步;伪距生成 中文分类号:TN965.5 文献标识码:B Optimization of FPGA-based High-output Frequency GPS Receiver LI Ying Fei, DING Ji Cheng, ZHAO Lin (College of Automation, Harbin Engineering University, Harbin 150001, China) Abstract: In order that the DSP chip in FPGA+DSP system could calculate user position in real time for GPS or integration navigation systems and enhance the positioning output capability, a real-time GPS module of baseband processing has been implemented on a FPGA, using only logical units. The module implements signal acquisition, track, frame synchronization, satellites auto search and so on. In addition to meeting the demands of the transmission signal to DSP, a auxiliary module is designed for organizing massive messages such as ephemeris, pseudo- range, Doppler. Experimental results show that the scheme is feasible and effective and the positioning output frequency more than 100Hz. key words: coherent integration; filter adjustment; frame synchronization; pseudo generation 1 引言 随着软件接收机发展日趋成熟,FPGA+DSP体系占据了主导地位。FPGA + DSP系统在缓解多径、消除干扰、弱信号检测方面比在 PC机Windows上 C语 言编写的软件接收机具有更强的计算能力[1]。在这种体系中,FPGA中主要实现 C/A码产生、载波生成及相关运算,而鉴频鉴相、环路滤波、同步、导航解算则 全部在 DSP中实现[2]。软件接收机以其参数灵活性,验证了很多算法,伴随算 - 2 - 法的日益复杂和人们对接收机要求的不断提高,组合导航开始倍受青睐[3]。系统 的复杂性对处理器的速度提出更高的要求,而当前 FPGA+DSP系统只为用户提 供了 GPS功能,为了能够实现高处理能力,则需要对当前系统的功能分配进行 重新划分。 ASIC FPGA FPGA+DSP μPROCESSOR 处 理 能 力 灵活性 图 1 典型 GNSS接收机解决方案中处理能力与灵活性的比较 图 1比较了 GNSS接收机不同解决方案的处理能力与灵活性[4],可以看出当 前 FPGA+DSP系统的灵活性仅次于全微处理器接收机。为了增强 FPGA + DSP 系统的处理能力,图中指出把更多任务交给 FPGA处理可以减少纯微处理器 DSP 的负担。使用 FPGA完成基带处理的优势如下: (1) 保留了软件接收机参数的灵活性;增加了定位结果的输出率;节省的 DSP资源,可以用于更复杂的算法研究,如模糊神经系统、卡尔曼滤波等[3]。 (2) 和 DSP不同,由于 FPGA的并行性,只要完成了单通道设计,不用考虑 时间上的约束就可以扩展成多通道。因此在 FPGA硬件资源允许下,通道个数可 以任意扩展。 (3) FPGA的特性更容易实现数据同步,实现不同程度的组合导航[5]。满足理 论验证性、也具有实际应用性。 表 1 FPGA与 FPGA+DSP基带处理能力的比较 应用方向 FPGA FPGA+DSP 同性能下设计难度高者 通道数量 取决于内部硬件资源 取决于 DSP最高时钟 FPGA+DSP 功能性 释放 DSP,用于复杂算法 DSP串行处理难扩展算法 FPGA+DSP 伪距输出率 系统时钟 卫星越多输出率越低 FPGA+DSP 环路实时性 快,更适合高动态 慢,环路滤波输出率受限 FPGA+DSP 电文同步 实时性高 实时性低 FPGA+DSP 输出时钟精度 高 低 FPGA+DSP 环路滤波精度 低、参数难调 高、参数易调 FPGA - 3 - 在 GPS定位系统中,定位解算使用的牛顿迭代、最小二乘、位置滤波等都 属于高精度高复杂度的运算,这些仍需要使用 DSP进行处理。基于以上思想, 把 GPS基带处理中环路滤波器、捕获跟踪转换、位同步以及伪距信息整合等放 置到 FPGA中处理,为 FPGA+DSP系统减少 DSP负担,提供更大的扩展空间起 到积极作用。在 FPGA中进行完整的基带处理与在 DSP或Matlab中处理有很大 差异。结合 FPGA硬件的特点,表 1比较了 FPGA和 FPGA+DSP系统在处理基 带信号能力上的不同。 从表 1可以看出,在 FPGA+DSP系统中,如果基带信号处理全部交由 FPGA 进行,能够在很大程度上提高接收机的通道数、伪距输出率等性能。此外,让 DSP节省下来的资源用于高性能算法,则系统性能更佳。 2 基带处理 FPGA模块设计 系统控制 射频芯片MAX 2769 倍频 中频数 据转换 相干积分器 码/载波发生器 中频数据 判决策略 捕获跟踪判定 卫星号 码/载波滤波器 偏 差 伪距信息 组合 伪 距 输 出 射频 控制 时钟 发生器 FPGA内部 GPS模块 系统时钟采样时钟 积分清零 通道n 秒 内 校 正 多普勒 限制 同步电路 I路 数 据 控 制 总 线 通道1 秒内计时 卫星号 分配 图 2 FPGA基带处理模块总方框图 在图 2中,GPS信号经天线、射频下变频至中频,进入 FPGA。在 FPGA中, 载波环路和码环路对中频信号进行解扩,最终得到数据比特流。同步电路对数据 流进行同步,然后输出伪距等相关信息。当系统热启动或冷启动时,卫星号分配 - 4 - D ENA Q PRE CLR D ENA Q PRE CLR D ENA Q PRE CLR Data1_out~reg0 Data2_out~reg0 process_0~0 SmpClkStor SysClk SmpClk Data_in Data1_out Data2_out 第一种方案 第二种方案 图 3采样时钟同步方案 RTL图 -10 -5 0 5 10 0 500 1000 1500 中频信号频谱 频率(M H z) 幅 值 (a) (b) 图 4 中频信号分析与捕获 模块接收 DSP发送的分配方案。时钟发生器模块用于产生准确时钟,多普勒限 定模块用于热启动时接收 DSP发送的多普勒限制信息。 2.1 中频数据采集与分析 MAX 2769射频芯片可应用于GPS、GLONASS、Galileo三种导航系统。FPGA 芯片把MAX2769配置成采样频率 16.368MHz、中频频率 4.092MHz、I路数据 SIGN / MAGNITUDE 2bit量化后,对 I路数据进行格式转化,然后利用MAX 2769 采样时钟的上升沿对转换后的中频数据进行采样,并按照采样频率进行相关累加 计算。根据 FPGA编程特点,利 用信号上升沿进行采样时,有两 种方案。一种,把采样信号作为 寄存器的时钟输入;另一种,利 用系统时钟对采样信号的上升沿 进行检测,然后利用检测到的信 号,使用系统时钟的上升沿触发 寄存器。两种方案的比较见 RTL 图 3。第一种方案,由于采样信号 SmpClk和系统时钟 SysClk在频 率上不一致,容易导致数据 Data2_out进行传递时出现不匹 配现象,加大了信号通道的噪声, 对后续计算带来不利影响。而第 二种方案,在采样、累加、包络检测中都使用了同一系统时钟 SysClk,保证了 信号延迟、保持时间等参数的一致性,能够有效减少通道噪声。 利用 Quartus II的 SignalTap II Logic Analyser功能采集中频 4.092MHz、采样 频率 16.368MHz、时长 1ms的原始中频数据,用Matlab仿真程序进行频谱分析 和捕获,得到图 4所示图形。 图 4(a)中,信号能量集中在 4MHz左右的 2MHz带宽内。这种中频信号限制 了 C/A码信号的高频成分,使得 C/A码自相关函数曲线在峰值部分发生变形。 因此限制了本接收机的相关器间距的选取,取经验值 1/2码片。4(b)捕获图中, 在频点 4.095MHz、码相位 900附近有最大相关值。由此证明射频芯片能够正常 工作。 - 5 - 2.2 相干积分与数控振荡器设计 相干积分主要器件是乘法器和累加器。累加器把中频信号、码发生器产生的 信号和载波发生器产生的正交两路信号的乘积在一段时间内进行累加,累加的频 率一般使用中频信号的采样频率。累加器在积分时间段结束时进行积分清零,然 后把积分结果送出,供环路鉴频、鉴相和捕获判断使用。 环路的积分时间取 1ms。从 GPS信号的特点可以看出,当相干积分利用本 地码和载波对中频信号进行解扩时,每 20个 1ms积分时间就有一个跨越数据位, 如果前后两个数据位发生了变号,跨越会导致积分值衰减,进而会影响环路的稳 定。和 DSP不同的是,在 FPGA中进行除法运算代价高、表示小数困难。因此 码环鉴别器没有进行归一化,进而不稳定的积分值会对码环引起很大的震荡,因 此在 FPGA设计中,为满足码环的稳定,积分时间段的选取受到限制。GPS数 据位的开头是 C/A码周期的开始,而 C/A码周期是 1ms时间,根据 GPS信号的 特点,在相干积分中,使用 C/A码周期信号来进行积分清零,就能实现积分时 间不跨越数据位。如图 5所示,(a)图中,系统使用时钟产生的 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 1ms对相干 积分进行清零。可以看出,在坐标原点附近存在很多小的积分值,这是积分时间 跨越了数据位引起的,而使用 C/A码周期作为清零信号的(b)图则不存在这种情 况。 载波发生器 按照输入值产生 不同频率的同相、 正交两路正弦信 号。码发生器除了 产生不同频率的 C/A码,还具有对 码相位进行移位 的操作。为了减少 系统使用的资源,FPGA中只实现了每次延迟一个码片的功能。 使用延迟一个码片的操作,在一定程度上减少了接收机捕获到多径信号的危 险。直射信号总是比反射信号提前到达天线,即直射信号比反射信号超前。如果 信号在反射后又经过 1000m到达天线,那么延迟的码片数约为 -2 -1 0 1 2 x 10 4 -1.5 -1 -0.5 0 0.5 1 1.5 x 10 4 同相支路积分值( I) 正 交 支 路 积 分 值 ( Q ) I、 Q相位图 -1 0 1 x 10 4 -1 -0.5 0 0.5 1 1.5 x 10 4 同相支路积分值( I) 正 交 支 路 积 分 值 ( Q ) I、 Q相位图 (a) (b) 图 5 积分清零方案比较 - 6 - 1000(C/A) 1023 3.41 0.001 d c ≈ × ≈ × (1) 式子(1)中 c为光速。根据计算,多径信号通常 会比直射信号晚到 4个码片左右。如图 6所示,当 接收机开始工作后,其产生的本地 C/A码相位 C 点落在多径信号到直射信号相位 BEA之间远小于 落在直射信号到多径信号相位 ADB之间的概率。 如果本地码相位落在 C点,那么在捕获阶段,进行 C/A码延迟移位,则 C点首先与 A点重合,从而 避免了捕获到 B点的可能性。 2.3 环路滤波器参数调整过程 相干积分器把积分结果送入环路鉴别器后,环路鉴别器把环路下一时间段的 调整量计算出来。和 DSP系统不同,鉴别是在 FPGA中进行的。由于 FPGA不 适合做乘除运算,因此在 FPGA设计鉴别器电路时使用了相似运算,以减少资源 使用。在码环鉴别器中,需要使用归一化得到包络,包络的计算公式中包含两个 乘法运算和一个开方运算。本系统选用了 JPL近似,它具有较高的精度。在载波 环中,鉴频器和鉴相器都使用了除法器和反正切运算器。由于 FPGA中除法器的 计算结果不准确,存在一个不大于 1的误差,为环路的调整工作带来一定的困难, 而这些在以 DSP为主的系统中并不存在。为了减少除法器的使用量,环路中把 一些需要进行固定值除法的运算,归并到后面的滤波器参数中,最后统一调整。 这中做法主要影响到的参数是环路的增益值。 由于在 FPGA中进行的计算存 在大的舍入误差,同时由于射频芯片 带宽不够大使得环路鉴别器得出的 结果和理论值有很大的出入。因此环 路的调整工作按以下步骤进行。 (1) 按滤波器典型值计算公式, 计算载波环带宽 100Hz和码环的 10Hz的参数值、按前面鉴别器计算本环路的增益、适当化简计算出的数据。化 简目标是让 FPGA能够使用移位、加法、减法运算就能完成参数计算。比如,化 简参数为 A直射 信号相位 B多径 信号相位 C本地信号 相位 E D 超前 方向 0相位 图 6 C/A码相位移位 鉴相 鉴频 2 nω sT 1z− 1 2 2 na ω nω sT 角度 角频率 锁频环 锁相环 鉴相 2nω sT 1z− 1 2 2 na ω pI 路 pQ 路 码片数 码环 E L 图 7 环路滤波器框图 - 7 - 3 1 1 8 2 8 = − 、 3 1 1 4 2 4 = + 等。 对两种 2的倍数的加减运算,FPGA自动把它们化简成组合电路。这样得到 的电路计算速度快,同时对环路的稳定性影响也不大。 表 2 环路参数对比 锁相环 锁频环 延迟锁定环 ωn 2Ts a2ω ωn ωn2Ts a2ω 1 4 32 4 1 1/256 2 1 8 1 1/4 1/1024 3 1/4 2 1/4 1/32 1/1024 (2) 修改载波环环路增益使环路稳定。 (3) 修改载波环和码环增益使环路波动到最小。 系统使用图 7所示的一阶锁频环辅助二阶锁相环滤波器。当框图 7中使用表 -1.5 -1 -0.5 0 0.5 1 1.5 x 10 4 -1.5 -1 -0.5 0 0.5 1 1.5 x 10 4 同相支路积分值( I) 正 交 支 路 积 分 值 ( Q ) I、 Q相位图 1000 2000 3000 4000 -80 -60 -40 -20 0 20 40 60 80 时间 t(ms) 锁 相 环 滤 波 器 输 入 ∆ o 锁相环滤波器输入 (a) 第一组参数 -1.5 -1 -0.5 0 0.5 1 1.5 x 10 4 -1.5 -1 -0.5 0 0.5 1 1.5 x 10 4 同相支路积分值( I) 正 交 支 路 积 分 值 ( Q ) I、 Q相位图 1000 2000 3000 4000 -80 -60 -40 -20 0 20 40 60 80 时间 t(ms) 锁 相 环 滤 波 器 输 入 ∆ o 锁相环滤波器输入 (b) 第二组参数 -3 -2 -1 0 1 2 x 10 4 -2 -1 0 1 2 x 10 4 同相支路积分值( I) 正 交 支 路 积 分 值 ( Q ) I、 Q相位图 1000 2000 3000 4000 -80 -60 -40 -20 0 20 40 60 80 时间 t(ms) 锁 相 环 滤 波 器 输 入 ∆ o 锁相环滤波器输入 (c) 第三组参数 图 8 不同参数的环路状态 - 8 - 2参数时,得到图 8所示的系统时域性能。从图中可以看出,第一组锁相环鉴相 器的输出抖动大,系统相位误差大。同时 I、Q相位图中在正交支路 Q上还有很 大的能量,环路收敛性差。逐步调整参数比例,第二组比第一组优越,而第三组 最优。在第三组中相位误差减小到 20o以内。 2.4 帧同步与伪距相关信息输出 基带处理得到数据流,通过帧同步得到伪距相关信息,用于定时定位。伪距 相关信息是指通过计算可以得到伪距的信息。和 DSP为主的系统不同,帧同步 和伪距相关信息整理在 FPGA电路中实现。这些伪距相关信息数据包括星历、历 书、通道锁定的卫星号、当前信号的周内时、过子帧头的完整 C/A码码片周期 个数、过码片周期的完整系统周期个数、当前卫星通道使用的多普勒频移。 以一颗卫星信号为例,如图 9所 示。当接收机捕获跟踪到某颗卫星 后,就可以得到数据位流。位同步、 帧同步后,FPGA能够检测到子帧头 位置并通过数据流得到子帧头部的 发送时刻(周内时)。为了得到子帧头 后面任意一点的发送时刻,FPGA在 检测到子帧头部时对各个计时寄存器清零,然后按照各自的频率累加计时。当 DSP请求伪距相关信息时,FPGA把该时刻的各个计时寄存器值同时转移锁存, 然后传送给 DSP处理。DSP计算出计时寄存器值对应的时间,再加上子帧头对 应的周内时就可以得到信号的发送时刻。在 GPS信号中,通过导航电文可以直 接读出子帧头所代表的时间,而从子帧头到 DSP索取时刻的时间段包含两个部 分。 (1) 从帧头开始经过的完整的 C/A码码片周期的个数。 (2) 在不到一个 C/A码码片周期的部分,从码片周期开头开始经过的中频载 波相位值。而中频载波相位值可以按照从码周期开头经过的系统时钟和当前的多 普勒频移确定。 系统中,FPGA在响应 DSP时,把所有通道的全部计时寄存器在同一刻锁 存,然后逐个交给 DSP去计算当前各卫星信号的发送时刻。以四颗卫星为例, 通过以上方法就可以得到 1 2 3 4( , , , )t t t t , it 为 DSP计算出的第 i颗卫星信号的发送 时刻。利用这四个数据,根据卫星星历计算出第 i颗卫星在 it 时刻的坐标 数据位 C/A码 载波 卫星信号 C/A码周 期起始 子帧头 图 9 卫星信号调制示意图 - 9 - ( , , )i i ix y z ,假设当前接收机的时间为 ut (取 1 76mst t+ + ∆ ),其坐标为 ( , , )u u ux y z , 得到以下方程组。 2 2 2 1 1 1 1 1 2 2 2 1 2 2 2 2 2 2 2 1 3 3 3 3 2 2 2 1 4 4 4 4 ( 76ms ) ( ) ( ) ( ) ( 76ms ) ( ) ( ) ( ) ( 76ms ) ( ) ( ) ( ) ( 76ms ) ( ) ( ) ( ) u u u u u u u u u u u u t t t c x x y y z z t t t c x x y y z z t t t c x x y y z z t t t c x x y y z z  + + ∆ − × = − + − + −   + + ∆ − × = − + − + −  + + ∆ − × = − + − + −   + + ∆ − × = − + − + − (2) 其中 c为光速。方程组(2)包含四个未知量 ( , , , )u u ut x y z∆ ,通过解方程得到接 收机的当前时间和当前位置。 3 基带处理辅助模块设计 接收机利用基带处理处理后得到伪距信息进行定时定位。除此之外,接收机 能够正常工作还需要一些辅助模块,协助接收机在信号干扰、遮挡等条件下正常 运行。如果信号丢失,系统需要判断是重新捕获当前卫星还是更换卫星号。 3.1 卫星号自动分配方法 在系统启动之初,DSP可以为 FPGA指定要搜索的卫星号以及搜索的频率 范围,以实现热启动功能。如果是冷启动,则 FPGA需要按自己的方式进行搜星, 同样,如果在使用过程中,让自由通道自动搜索,也需要 FPGA自行安排。为了 避免自由通道同时搜索同一颗星,需要对卫星号分配方法进行设计。结合 FPGA 特点,设计结构如图 10所示。 自动分配方法采用申请交换方式。如果自 由通道没有捕获到当前卫星,则向卫星号 PRN码库申请新的卫星,同时把正在使用的 卫星号上交。为了适应热启动,DSP需要把 优先搜索的卫星排在分配器的前面,以获得高 的优先级。 本系统是 12通道接收机,在开机时,12 通道默认排序是把 1~12号星分配给各个通 道,其余卫星号存入 PRN码库中。PRN码库接收通道请求,把当前库指针处的 PRN号交给申请通道,收回其先前使用的 PRN号并放入库指针处,然后库指针 自动移动到下一地址,等待下一次申请。通过这种方法,刚刚处理过的卫星号自 PRN码库 库指针 1 2 3 4 56 7 8 9 10 11 12 13 14 15 16 17 18 19 20 图 10 卫星号分配方案 - 10 - 动变为低优先级,保证系统及时处理新出现的卫星。同时 PRN码库使用的申请 应答模式,能够承受通道同时申请的压力。这种处理方式适合 FPGA编程,可以 减少资源的使用量。 3.2 热启动载波多普勒限制 DSP系统根据历书、时间和预存储的位置计算出可见卫星号、概略多普勒频 移后,交给 FPGA进行捕获,能够明显减少首次定位时间。热启动之初,DSP 把卫星号和相应的多普勒搜索范围传送到 FPGA,并通知 FPGA使用何种搜索模 式进行搜星捕获等。多普勒频移范围和捕获模式与图 10结构相同,数据库中存 放对应卫星号的信息。 3.3 秒时钟脉冲输出 为实现系统精确定时,输出准确的秒 脉冲,并与 UTC秒脉冲同步,在 FPGA 内部设计了时间计时器,如图 11所示。时 钟发生器以系统时钟为基准,并输出时钟 秒内计时累加器值 ct ,为 DSP系统校正使 用。在 DSP请求伪距信息时,FPGA同时 把 ct 锁定送出。经过 DSP定时计算后,得到当前系统时间 1( 76ms )ut t t= + + ∆ 和秒 内时误差 'c ut t− ,滤波后把校正值反馈给 FPGA进行校正。 ' ut 是 ut 中不到 1秒的 部分。 4 系统验证 4.1 环路性能 系统使用表 2中第 三组参数时,环路的牵引 过程如图 12所示。从即 时码支路输出可以看出 开始阶段环路积分值不 断增大,最后正交支路积 分值变小,同相支路解调 出数据流。载波多普勒频 时钟 发生器 秒内校正量 秒内计时 系统时钟 校正触发 秒脉冲输出 图 11 秒脉冲校正模块 1000 2000 3000 4000 -2 -1 0 1 2 x 10 4 时间 t (ms) 积 分 值 即 时码支路输出 同相支路 正交支路 1000 2000 3000 4000 -3000 -2900 -2800 -2700 -2600 -2500 -2400 时间 t (ms) 频 率 f ( H z) 载波多普勒频移 图 12 环路牵引过程 - 11 - 移显示,环路承受了 250Hz左右的偏差,达到了设计目标。 4.2 伪距相关信息 图 13所示(a)位同步是(b)帧同步的局部放大。图中Message_of_data_in是解 调出的数据流输入,可以看到 Count_for_bit_synch把一个数据位分成了 20份, 且第 0位置处在数据位的开头,同时 Head_of_bit_out指示出数据位的头部。环 路输出的数据位经过了一个积分周期,因此Message_of_data_in晚于真实数据位 一个积分周期。因此真正的子帧头在 Count_for_bit_synch为 18时的末端,即图 (a)中 TOW_in_short_out值发生改变的时刻。从图(b)中可以看出,在 Head_of_subframe_out指示子帧头部后,Message_of_data_in的后续输入就是子 (a) 位同步 (b) 帧同步 DSP请求时刻 st (c) 伪距相关信息 图 13 同步及伪距相关信息生成 - 12 - 帧头的标识“10001011”。经过计算,遥测字和交接字都通过了奇偶校验,帧同 步成功。Head_of_subframe_out的触发时刻由前一子帧数据计算得到。 图(c)中,在子帧头部 TOW_in_short_out发生改变的时刻,计时寄存器中过 子帧头的完整 C/A码码片周期个数 Num_of_CA_bit_in_subframe_cycle_out、过码 片周期的完整系统周期个数 Num_of_Clk_81_84MHz_in_CA_bit_out重新计数。 由于 Num_of_Clk_81_84MHz_in_CA_bit_out晚于真实子帧头 CA_reset_label_out 的上升沿一个系统时钟周期,因此从 2开始计数,这样能够统一时间的计算方法。 图(c)中 DSP请求时刻 st 的计算公式是 ( ) ( ) ( ) -3 32 6 -3 32 6 =TOW_in_short_out 6 1 10+Num_of_CA_bit_in_subframe_cycle_out 1023 +Num_of_Clk_81_84MHz_in_CA_bit_out 214748365+NCO_doppler_out 1 s 2 4.092 10 214748365+ -19955451 10 179449 6+0 4 s 1023 2 4.092 10 st × × × × × × × = × × + × × × ( )476694.00000004842877388000488281 s= (2) 公式(2)中 -31 10× 是 C/A码周期,1023是 C/A码一周内的码片数, 64.092 10× 是中频载波频率 cf 。214748365是载波频率综合器利用系统时钟 sf 生成中频 cf 时 的输入值 N,计算公式是 32 322 4.092 2 214748365 81.84 c s fN f × × = = ≈ (3) 由此看出,基于 FPGA的基带处理,向 DSP系统提供伪距相关信息的最大 频率和 FPGA的系统时钟有关。本系统理论提供最大频率是 81.84MHz,但由于 受 DSP处理速度和数据传输速度影响,在 DSP满负荷运行下,系统最快输出定 位频率达 100Hz。 4.3 资源占用 本系统采用 Altera公司 Cyclone II 系列的 EP2C70F672C6芯片,在完成 12 通道 GPS模块的基础上,又结合应用实现了 EMIF接口电路,方便把伪距相关 信息传送到 DSP中。图 14为整个 GPS基带处理模块占用情况,其中逻辑单元 占用了 60%。由于系统还有很大的优化空间,显然本款 FPGA芯片还能够提供 - 13 - 更多 GPS通道。图 15为 GPS模块和 EMIF模块的连接图。EMIF为 DSP系统提 供状态控制、数据交换接口,包含各通道的电文采集和伪距相关信息锁存等功能。 图 14 系统资源占用 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 图 15 GPS模块、EMIF模块连接图 5 总结 文章将基带处理功能全部转移至 FPGA,设计实现了 GPS信号捕获、跟踪、 同步、伪距相关信息整理等模块。将 DSP从繁重的基带处理部分脱离后,可专 注于复杂的导航解算,大大提高了导航解算的速度,为复杂导航算法的实现和导 航结果的高频率输出提供了宽裕的硬件资源。如果对 FPGA代码进行优化,利用 FPGA提供的软核,完全可以替代 DSP,真正实现单芯片系统,为生产卫星导航 单芯片系统提供支持。 参考文献 - 14 - [1] Hun-Soo Cho, Sung-Hyuck Im, Gyu-In Jee. A FPGA-based Software GPS Receiver Implementation Using Simulink and Xilinx System Generator [C]. Proc. ION GNSS 2005: 234-240. [2] 胡锐,薛晓中,孙瑞胜,徐志伟.基于 FPGA+DSP的嵌入式 GPS数字接收机系统设计 [J].中国惯性技术学报,2009,17(2):188. [3] Aboelmagd Noureldin, Tashfeen B. Karamat, Mark D. Eberts, te al. Performance Enhancement of MEMS-Based INS/GPS Integration for Low-Cost Navigation Applications [J]. IEEE Trans. on Vehicular Technology, 2009, 58(3): 1077–1096 [4] Fabio Dovis, Massimiliano Spelat, Claudio Leone, Paolo Mulassano, te al. On the Tracking Performance of a Galileo/GPS Receiver Based on Hybrid FPGA/DSP Board [C]. Proc. ION GNSS 2005: 1611-1620. [5] Paul D Groves, Christopher J Mather, Alex A Macaulay. Demonstration of Non-coherent Deep INS/GPS Integration for Optimised Signal-to-Noise Performance [C]. Proc. ION GNSS 2007: 2627-2638 原创性声明 高输出频率GPS接收机FPGA优化设计 Optimization of FPGA-based High-output Frequency GPS Receiver 1 引言 2 基带处理FPGA模块设计 2.1 中频数据采集与分析 2.2 相干积分与数控振荡器设计 2.3 环路滤波器参数调整过程 2.4 帧同步与伪距相关信息输出 3 基带处理辅助模块设计 3.1 卫星号自动分配方法 3.2 热启动载波多普勒限制 3.3 秒时钟脉冲输出 4 系统验证 4.1 环路性能 4.2 伪距相关信息 4.3 资源占用 5 总结 参考文献
本文档为【高输出频率GPS接收机FPGA优化设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_307784
暂无简介~
格式:pdf
大小:556KB
软件:PDF阅读器
页数:14
分类:
上传时间:2014-01-07
浏览量:13