>

基于FPGA的导航抗干扰接收机数字变频的实现

- 编辑:宜春市空间模块有限公司 -

基于FPGA的导航抗干扰接收机数字变频的实现

  摘要 根据卫星信号结构、频率特征设计和实现了导航抗干扰接收系统中,基于软件无线电的上下变频模块。根据系统的A/D采样频率与转换位数、阻带衰减要求、频率选择性、增益,输入输出频率在Matlab中建模。确定了DDC和DUC的设计方案,并在硬件上实现,重点是NCO和滤波器组设计,包括

  导航接收机作为卫星导航系统的主要组成部分,是市场大规模和产业化的核心环节。研究导航接收机关键技术,对建设我国有自主知识产权的卫星导航接收系统有具有现实意义。因此,对用户端接收机、拓宽应用范围是GNSS研究的热点。同时卫星导航信号弱、易受干扰会直接影响卫星导航系统在复杂干扰环境下发挥的作用。因此需研制具有抗干扰能力的接收系统。本文主要根据卫星信号结构、频率特征设计了导航抗干扰接收系统中基于软件无线电的上下变频模块。

  导航抗干扰系统中的数字接收机所采用的是数字混频正交变换,但该方法在高采样率时,混频后端的滤波器需要较高的滤波器阶数,对硬件资源的要求高,导致使用资源过多、功耗过大等问题。因此在实际的上下变频技术应用中,多速率信号处理滤波器组常选择CIC积分梳状滤波器级联HB半带滤波器、级联补偿FIR滤波器的组合结构,来满足设计要求。

  开发工具采用Xilinx公司的ISE,芯片采用Xilinx公司的FPGAspantan3E。数字中频信号中心频率为70 MHz,带宽为20 MHz,采样率为90 MHz,滤波器阻带衰减60 dB。下变频中,经NCO提供的20 MHz本振信号混频到零频上,完成4倍的抽取。上变频经过4倍插值,混频到70 MHz中频上,采样率由22.5 MHz升至90 MHz。

  首先在Matlab中进行建模,确定滤波器组参数,包括滤波器级数、系数等。滤波器组方案采用2倍多级CIC滤波器抽取,级联2级抽取半带滤波器,最后级联多级补偿FIR滤波器。由此确定半带滤波器和补偿滤波器的系数和级数,幅频特性如图1所示。

  由此可得出设计的数字下变频结构如图2所示,包括数控振荡器NCO模块、数字混频器模块、CIC滤波器模块、HB半带滤波器模块和FIR补偿滤波器模块。数字上变频结构是数字下变频的逆过程,两者的工作原理、监控系统模块结构和实现互相对应。

  为避免使用大容量存储器,可以考虑利用算法来产生正余弦样本。CORDIC算法是一种基于矢量旋转的坐标计算方法。该算法的基本思想是通过一系列固定的、与运算技术相关的角度不断偏摆以逼近所需的旋转角度。它有线性的收敛域和序列的特性,只要迭代次数足够,即可保证结果有足够的精度。当输入90MHz的基准时钟,步进字设为954 437 176(十进制),将输出2 MHz的正余弦离散波形,图3所示为DDS模块在Modelsim中仿真结果。

  与使用ROM查找表法相比,CORDIC算法产生DDS的优势有:(1)所有运算都可通过移位和加减运算实现,无需耗费硬件乘法器资源,易于实现。(2)可使用循环迭代方法,节约硬件资源。(3)可通过流水线法,提高工作频率。

  CIC滤波器的结构简单,没有乘法器,只有加法器,积分器和寄存器,适合工作在高采样率。而且,CIC滤波器是一种基于零极点相消的FIR滤波器,实现上减少了复杂度与资源消耗,已被证明是在高速抽取或插值系统中的有效单元。

  单级CIC滤波器旁瓣电平较大、阻带衰减较差、降低旁瓣电平,可以采用多级CIC滤波器级联的方法实现。根据Matlab建模要达到60 dB阻带抑制比,需要5级级联。此时,阻带衰减为单级衰减(13.36 dB)的5倍。由CIC滤波器的传递函数,使用Verilog语言即可写出一个5级、抽取率为2的CIC抽取滤波器和CIC插值滤波器,都由5级积分器和梳状器级联构成。但在用FPGA实现的过程中,Integrator模块里,会出现溢出问题。在设计过程中为防止数据溢出,必须相应地扩大数据的位数,以减少误差。有相应公式,内部运算单元宽度

  半带滤波器的本质是FIR滤波器,只是有1/2的系数为0,其实现结果与传统的FIR滤波器基本相同,将为零的系数通过延迟单元实现,同等条件下复杂度更低。因此,在实现时也可通过FIR Compiler IP核来实现。根据Matlab建模的结果,生成定点量化的半带滤波器系数,并写入磁盘,生成coe文件,然后再加载到FIR Complier配置界面中。

  在ISE13.1中FIR滤波器的IPCore是FIR Complier,其功能强大,对于半带的抽取、内插、希尔伯特变换等都能完成,其结构包含乘加结构和分布结构。

  补偿滤波器是针对CIC滤波器而设计的,因为CIC滤波器并不具备一个平的、宽的通带,而多级CIC滤波器会加剧通带的这种不平坦,所以为了修正通带内的衰减,可以通过级联一个FIR滤波器对其幅度响应进行补偿。这个FIR滤波器的幅度响应取CIC幅度响应的倒数时,正好可以修正多级CIC滤波器的通带上的迅速衰降,在扩展其通带带宽的同时提高了阻带衰减。则补偿FIR滤波器的幅值响应公式为

  系统中的各个模块包括数控振荡器模块、5级级联的CIC抽取与内插滤波器模块、半带抽取与内插滤波器模块和FIR补偿滤波器模块。最后通过编写顶层文件,实现各个模块的互联,以最终集成导航抗干扰接收系统中DUC和DDC的功能。

  首先在Matlab中产生一个带宽为20 MHz;中心频率为70 MHz;频谱为矩形的信号,以fs=90 MHz的频率采样,则其频谱将在f轴上以fs为周期延拓,原本在70 MHz的频率上产生的带宽为20 MHz的中频信号则会向左以fs的频率进行周期延拓,并在最靠近零频的负频率轴上产生中心频率为-20 MHz的一个副本。同时由于信号为实信号,将产生-20 MHz与20 MHz上的两个副本,信号的频谱如图4所示。

  产生16 384个采样点,将这些数值归一化并转换为4位16进制数值,导入DDC的Testbech中,可验证DDC模块的功能与正确性。如图5所示为Modelsim中的仿真结果,DIN为输入信号,DOUT_Q与DOUT_I为DDC模块的输出信号,分别为正交分量和同相分量,其输出速率降低了75%。

  将4 096个同相分量数据和4 096个正交分量数据导入Matlab中进行频谱分析。可观察到输入频谱为矩形的信号,经过DDC后其波形和频谱如图6所示。将输入波形与频谱对比,可以看到,其通带平坦度与阻带衰减良好,符合预期。

  将DDC的输出信号输入DUC模块中,可对数字上变频模块进行验证,信号速率为22.5 MHz,带宽20 MHz,频谱如图6所示。

  将DDC输出的4 096个数据归一化并转换为4位16进制数值,导入DUC的Testbech中。图7为DUC模块对采样率为22.5 MHz,带宽20 MHz的基带信号进行数字上变频的结果。

  将16 384个数据导入Matlab中进行频谱分析。可观察到输入频谱为矩形信号,经过DUC后其波形和频谱如图8所示。

  上变频后数据速率上升到90 MHz,以70 MHz的采样率进行采样,经过周期延拓后,中心频率在20 MHz上。将输入波形与频谱对比,数字上变频设计的结果符合设计期望。

  在资源使用上,芯片Spantan3s1600e可以满足资源需求。其资源占用率如表1所示。

  可以看到,Slice的数据在50%~70%之间。此时,可以最大限度地发挥芯片的性能,也为以后的平台拓展留下空间。从上述数据可以看出,Xilinx芯片的资源利用率是可行的。

  设计和实现了导航抗干扰接收系统中的上下变频模块。介绍了FPGA芯片的选择以及集成开发环境。并依据导航抗干扰接收系统的各种参数,对滤波器组仿真并建模,对DUC DDC中每个模块的FPGA进行设计及功能仿真,通过对整个系统的集成验证,证明结果符合设计要求,基于FPGA的数字变频系统应用范围广泛、通用性高、修改参数方便、资源使用率较少,可用于通信、信号处理等相关领域移植。

本文由公司简介发布,转载请注明来源:基于FPGA的导航抗干扰接收机数字变频的实现