GPS信号捕获的MATLAB_FPGA仿真

245 篇文章 389 订阅

由于C/A码长lms,所以至少要用lms的电文来捕获,但在实际中,1ms的电文仍有可能发生导航点相位偏移。因此,使用两组连续的10ms电文来捕获,就保证了在某一组电文中未含有相位偏移。

我们将一个信号分为10段,每段则对应与一个CA码片。C/A码是由两个10级反馈移位寄存器构成的Gold码产生。其特征多项式分别为:

CA码的自相关性如图5所示。

图1 CA码的自相关性图

从图1可见,CA码具有良好的自相关性,将相关峰采样化后就可以通过前面介绍的搜峰的方法得到相关峰。

1仿真结论分析

    将产生的GPS信号送入本地接收机,根据图3提供的接收方法进行接收。此外,考虑在实际中,接收到信号的多普勒频率偏移一般在,所以,在本仿真中,我们设置频率搜索的范围上下限为,搜索的步进为。

    下面的仿真结果为C/A码相位捕获结果,其

中峰值的坐标代表捕获得到的C/A码相位抽样码片值。其峰值的坐标分别代表载波频率捕获的值。

    图6,图7是SNR=-10db的时候的捕获情况。

图7 信噪比在-10db下的捕获效果

图8,图9是SNR=-15db的时候的捕获情况。

图8 信噪比在-15db下的三围捕获效果

图9 信噪比在-15db下的捕获效果

图10,图11是SNR=-20db的时候的捕获情况。

图10 信噪比在-20db下的三围捕获效果

图11 信噪比在-20db下的捕获效果

通过上面仿真,可以看到在低信噪比条件下,通过运算,系统还能够捕获GPS信号。相关峰的值与均值的比值较小,噪声毛刺较大,相比较零噪声时的虚部较小结果,强噪声情况下相关结果虚部变大,这说明随着噪声的增强,捕获的概率在逐渐减小,虚警概率在逐渐增加。

    上面的相关峰仿真结果,将其展开,可以看到其峰值如下所示。

图12 相关峰放大效果图

这里的相关峰,即通过前面加窗的方法进行搜峰,即可得到相关峰的峰值幅度和位置。这个算法主要是在FPGA的实现过程中使用,而在MATLAB中,只要用max函数就能实现最大值的求解。

2基于FPGA的算法硬件实现

2.1基于FPGA的系统的设计与实现

    基于FPGA的基本结构框图如图14所示。

图14 基于FPGA的实现结构

基于FPGA的系统主要包括GPS信号发送模拟模块,C/A码相乘模块,FFT模块,延迟模块,峰值搜索模块以及控制器模块。

基于FPGA的系统主要包括GPS信号发送模拟模块,C/A码相乘模块,FFT模块,延迟模块,峰值搜索模块以及控制器模块。

   发送模块比较简单,其仿真效果如图15所示。

图15 GPS发送信号

    对于延迟模块,主要就是将输进的信号以1ms为间隔进行延迟,从而分为不同1ms间隔的10个时间阶段,然后对这些10个不同的信号进行加减运算,然后将运算结果进行FFT变化,从而实现低信噪比环境下GPS信号的捕获。延迟模块的仿真结果如图16所示。

图16 延迟模块仿真图

    对于CA码生成模块,这里的做法是将在MATLAB中得到的1023长度的CA码预先存储在ROM中,然后在FPGA中通过地址累加调用ROM中的数据从而实现CA产生模块。

图17 C/A码产生模块

对于FFT,这里采用的xilinx的IP核模块,由于本课题需要的是计算1024点的FFT和IFFT,所以设置NFFT为“01010”,进行FFT运算时,设置FWD_INV为“1”,当进行IFFT时,FWD_INV为“0”。在IP核设计时,如果选择在计算过程中进行中间数据的缩减,那么SCALESCH信号才可以起作用,这里不使用IP核的这个功能。计算点数选择“1024”,实现方式为“Radix-4,Burst I/O”,精度输入数据和相位因子存储都选择16位。FFT变换的仿真结果如图18所示。

图18 FFT仿真波形图

从图18的仿真结果可以看到,当系统通过FFT变化以后,就会得到相关峰,然后只要对相关峰进行搜峰操作就能够得到GPS信号的多普勒频率偏移,C/A码片相位偏移值,从而完成GPS信号的捕获功能。

对于搜索相关峰模块,其算法即采用图4介绍的加窗进行搜索相关峰完成搜索。

  • 2
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fpga和matlab

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值