0 导言
全球导航卫星体系(Global NavigaTIon Satellite System,GNSS)是保护国家安全、开展经济的重要基础设施,是表现国家综合国力以及现代化大国世界影响力的重要标志 。开展支撑斗极导航体系的接纳机终端是斗极导航体系不可或缺的组成部分。现在我国正在大力开展斗极卫星导航体系(BDS),因而大力研讨与规划依据BDS的斗极卫星导航接纳机成为斗极卫星导航体系重要的环节。
半导体集成快速开展,现在现已向着交融硅片方向开展。FPGA也毫不例外地朝这个方向走去,通用处理器、具有ASSP和DSP功用的IP不断集成到FPGA中;FPGA技能的不断创新与打破,以及硅交融架构产品的推出,必定使FPGA应用于许多从前不曾进入的范畴 。跟着技能的前进,SoC高集成度的单芯片化的接纳机开发将成为未来卫星导航接纳机开展的首要方向。
1 SoC硬件体系规划
体系选用Intel 28 nm工艺的低功耗Cyclone V 5CSEM5F31C6N SoC FPGA作为主控芯片。依据SoC FPGA的载波盯梢环路的硬件体系规划如图1所示。
SoC System首要由2部分组成,包括Qsys System(嵌入式体系)部分的硬件规划和依据Verilog HDL的FPGA System(FPGA逻辑单元体系)硬件规划。
1.1 Qsys System规划
依据图1规划,运用Qsys东西建立完结Qsys体系,其互联状况如图2所示。
体系各部分功用规划如下:
(1)clk_0为外部时钟、复位输入,为PLL供给TCXO-50M时钟输入以及体系的复位信号。
(2)pll_0为图1中的PLL,它供给6个时钟,outclk0与outclk5供给给Qsys中各组件运用;outclk1为片外SDRAM供给时钟;其他3个时钟向外输出,为FPGA System中各模块的驱动时钟。
(3)sdram是图1中SDRAM Controller,用于操控片外的SDRAM芯片,它作为Nios II Gen2 Core的内存。
(4)epcs是图1中EPCS Flash Controller,操控外部Flash,作为Nios II Gen2 Core的程序存储器。
(5)jtag_uart_0是图1中JTAG Controller,与PC主机上的Eclipse SBT的调试端口相连接,用于程序的运转监控与调试。
(6)sysid是图1中System ID,确保软件程序版别与Qsys体系版别坚持一致。
(7)TImer_0是图1中Interval TImer,可用于Nios II Gen2 Core内核时钟,也可用于测验程序运转时长,依据测算的时长进行相应的测验与调试。
(8)LED是图1中LED Controller,该处PIO核规划为输出功用,输出数据的位宽设置为6 bit,操控FPGA System的6个LED,用于测验和提示体系的运转状况。
(9)Clock是图1中Avalon-MM Clock Crossing Bridge,用于连接在Avalon总线上且分属不同时钟域内IP核间的数据传输与通讯。
(10)INIT5与INIT6是图1中Interrupt Controller,该处PIO核设置为中止信号输入功用,INIT5与INIT6位宽规划为1 bit,中止方法设置为边缘(上升沿)触发。INIT5与INIT6别离用来接纳由FPGASystem发生的2个中止信号。
(11)aFloa是图1中FloaTIng Point Hardware,用于Nios II Gen2 Core的浮点运算硬件加速。
(12)SoC_TO_FPGA_V2_1_0是图1中地址数据通讯IP,该接口用于FPGA System与Qsys System间数据的双向传输 。
(13)hps_0是图1中的HPS System,hps_0作为后期定位解算与图形界面的主CPU。因为要求支撑Linux体系,需求设置其部分外设,包括EMAC、QSPI、SD/MMC、USBOTG、SPI、UART、I2C以及部分GPIO等外设。
(14)nios2_gen2_0是图1中的Nios II Gen2 Core,规划为基带信号处理体系的主CPU。
(15)Dual_ram图1所示的Dual-port RAM,供给HPS与Nios II Gen2 Core之间数据的通讯;HPS、Nios II Gen2 Core和Dual-port RAM联系框图如图3所示。
图4给出了Qsys体系各组件坐落System Interconnet Fabric的地址分配状况。
1.2 FPGA System规划
FPGA System首要由SPI操控模块、高速数据接口、时刻基准模块、捕获模块、盯梢模块、串口模块和地址译码与数据通道挑选模块组成。各部分功用如下:
(1)SPI操控模块用于操控射频板发生1 550 MHz本振载波信号,与天线接纳信号进行混频,发生3.098 MHz的中频数据。
(2)高速数据接口用于获取射频前端高速ADC量化发生I/Q两路8 bit数据,每路截取高4 bit数据用于基带处理。
(3)时刻基准模块用于发生2个中止信号,包括0.5 ms和20 ms中止。
(4)捕获模块用于卫星捕获,捕获通道为单通道规划。
(5)盯梢模块用于卫星的盯梢,现在盯梢通道数规划为24通道。
(6)串口模块用于调试信息与导航电文的输出。
(7)地址译码与数据通道挑选模块用于对地址进行译码,并依据地址信息挑选不同的数据通道。
2 载波环路规划
2.1 载波环鉴别器
因为卫星信号中调制有导航电文,这使得接纳到的中频信号会在数据比特电平发生跳变时发生180°的相位跳变,因而为了坚持环路的安稳,必需要消除180°的相位跳变。因为COSTAS J P创造的鉴相器能够不受数据比特的影响,因而他创造的该鉴相器被称为科斯塔斯鉴相器(或Costas鉴相器),而运用这些鉴相器的锁相环称为科斯塔斯环(或Costas环) 。
本规划锁相环鉴别器选用经典的Costas环鉴相器Qp×Ip,其具有在信噪比较低的状况下有近似优化的鉴相性质、输出成果与幅值的平方成正比、核算量较小以及鉴相斜率受信号起伏的影响较大等特色 。
本文规划锁频环鉴别器选用叉积鉴频器Pcross/(t2-t1),其具有在低信噪比状况下有挨近优化的鉴频特性、斜率正比于信号起伏的平方、核算量最小以及受信号起伏影响较大等特色 。
2.2 环路滤波器
3 载波环软件规划
软件程序规划思维是将盯梢环路的处理程序放置于0.5 ms中止中,0.5 ms中止顺次对各个通道进行查询,依据当时盯梢通道状况挑选履行牵引仍是盯梢:若为牵引状况,将调用牵引子程序;若为盯梢状况,将调用盯梢子程序。其运转流程如图6所示。
牵引子程序包括从FPGA读取I/Q相关幅值,核算功率后别离调用码环、锁频环以及锁相环处理子程序,对码环、锁频环以及锁相环经鉴频与鉴相、环路滤波处理后,更新FPGA内部的码NCO和载波NCO,并依据位同步状况设置当时通道状况:若同步成功,将当时通道设置为盯梢状况;若同步不成功,将对牵引次数进行核算,假如超越核算门限,将通道设为封闭,通道重捕初始化,然后跳出牵引子程序,不然直接跳出牵引子程序。牵引处理子程序如图7所示。
盯梢子程序包括从FPGA读取I/Q相关幅值,核算功率后别离调用码环、锁相环处理子程序,对码环、锁相环经鉴相、环路滤波处理后,更新FPGA内部的码NCO和载波NCO,并依据帧同步状况设置使命状况:若同步成功,将获取导航电文处理使命压入到使命行列中;判别相位确定状况,若相位确定失利,则将通道状况设置为牵引状况,然后跳出盯梢子程序。盯梢处理子程序如图8所示。
4 测验成果
信号进入牵引后,运用Nios II SBT for Eclipse收集锁频环环路滤波器输出值,并运用MATLAB仿真出锁频环环路滤波器输出值随时刻的改变,如图9所示。从图中能够看出,0时刻时,频率差错绝对值约为100 Hz;0~300 ms区间段,环路输出的瞬时频率差错绝对值随时刻逐步变小;在300 ms时刻开端,环路输出的瞬时频率差错绝对值挨近于0,然后由锁相环路接收,进一步对相位差错进行处理。
运用Nios II SBT for Eclipse收集锁相环环路滤波器输出值,并运用MATLAB仿真出锁频相环环路滤波器输出值随时刻的改变,如图10所示。依据第3节盯梢子程序规划,精细盯梢阶段通过牵引阶段消除频率差错的影响后再用锁相环进行精细盯梢。从图中能够看出,锁相环相位差错规模根本在±15°以内动摇。
5 定论
本文依据基带信号处理的要求,选用SoC FPGA作为规划渠道,在单个芯片上完结了斗极卫星信号盯梢算法的规划,并对相应的载波环路算法进行了测验和验证。成果表明,该盯梢算法彻底满意斗极卫星导航接纳机的实时性要求。