新闻中心

EEPW首页 > 设计应用 > 基于CORDIC算法的中频多路控守系统设计

基于CORDIC算法的中频多路控守系统设计

作者:龚永龙,杨青华,蔡怀海(同方电子科技有限公司,江西九江 332000)时间:2023-01-19来源:电子产品世界收藏
编者按:针对无线接收技术向着大带宽、高采样的方向发展,军地的频谱管理设备已经不能满足日常的训练和执法需求,本文提出了一种基于CORDIC算法的中频多路控守系统设计方法,直接采集超外差接收机的中频输出信号,从而实现多达32路或者64路的窄带信号提取、存储、分析、回放等。作为事后分析取证等,弥补当前设备的不足。文中介绍了CORDIC的基本原理,核心实现基于CORDIC算法的nco和子带变频器,并在Xilinx平台上验证成功。

无线电频谱是一种自然资源,由于无线电频谱是有限的,而通信技术极度依赖频谱的使用,传统的短波和超短波频段已经不满足当前通信需求了,未来通信主要依赖超高频的微波频段。而无线电接收技术也向着大带宽、高灵敏度、高采样率的方向发展,更高的速率为信号的实时分析带来了极大的困难。本文提出了一种基于算法的窄带多路控守系统的设计方法,采用算法实现多路窄带通信信号控守,设计满足宽带内16 路任意频点的控守。

本文引用地址:http://www.eepw.com.cn/article/202301/442775.htm

1   算法原理

CORDIC算法是一种数值性计算逼近的方法,其基本思想是用一系列与运算相关的角度不断偏摆从而逼近所需旋转的角度。假设初始向量为(X0,Y0)旋转θ 角度之后得到向量(X1,Y1), 此向量有如下关系:

1674180426765662.png

在中频多路控守系统中,采用CORDIC 算法完成中心、子信道 的设计和频率搬移。已知系统的中心频率和宽带范围内各个子信道的中心频率;假如系统输入采样率为fs ,中心频率为fc,n 个子信道的频率为别为1674180483961081.png

假设中频信号fc被AD采样后为x (n),与初始

混频相乘,得到基带的IQ 信号,其中1674180566245072.png1674180587781324.png ; 如果将此时的IQ 信号再次搬移β1的角度,就可以将子带频率f1 的频率搬移到零中频的位置,计算为:

1674180633906258.png

为节省资源,将式(3)和式(4)进行化简组合,每路复数运算由4 个乘法器变成3 个,得到:

1674180718688017.png

2   多路控守FPGA实现方案

FPGA 内部实现多路窄带控守出自处理流程框图如图1 所示。功能单元主要包括宽带下变频器、交换矩阵、窄带下变频器、存储矩阵、控制单元等。

宽带下变频器功能是将输入的ADC 采样实信号变为零中频IQ 数据;

交换矩阵是根据要求实现的窄带控守路数及频点,计算数控振荡器NCO,并输出给窄带下变频器;

窄带下变频器件功能是同时实现64 路窄带IQ 信号输出;

存储矩阵同时将64 路窄带信号存储并上传。

2.1 宽带下变频器设计

宽带下变频器包括NCO 单元、乘法器、FIR 滤波器等;

ADC 芯片采样时钟为204.8 MHz, 输入频率范围为(110 ~ 170)MHz,ADC 芯片采用ADI 公司的ADC9467芯片,最大位宽16 bit,无杂散动态优于75 dBm;

数控振荡器NCO 生成sin 与cos 信号,与ADC 芯片相乘得到零中频IQ 信号;

为节省芯片的乘法器资源,NCO设计实现直接使用ROM 查找表的方式实现;

在Matlab中产生采样率为204.8 MHz, 频率为64.8 MHz ( 超外差接收机为2 次混频) 的sin 与cos 信号,并将数据初始化存储在FPGA 内rom 表即可。

乘法器为AD 信号与cos 或sin 信号相乘,实现混频的功能,输出的I 路和Q 路信号,信号带宽为24 bit。FIR 滤波器设计使用的滤波器系数为64 阶对称型的的低通滤波器,滤波器Fpass = 40 MHz,Apass = 0.1 dB;Fstop = 42 MHz,Astop = 95 dB;滤波后抽2,将IQ 数据的采样率降为102.4 MHz,并输出给子信道下变频器控制矩阵,FFT运算结果满足优于85 dB的无杂散动态范围。

2.2 窄带变频器设计

窄带变频器为窄带多路控守系统的核心模块,为实现带内多路任意频点的控守,每个子带变频器都需要1个可配置的子带NCO 模块、复数乘法器模块、滤波器模块。单路子带变频器的实现框图如下图所示。ch_nco 模块是基于CORDIC 算法的可配置NCO 模块,nco 值的计算由控制器单元完成。计算公式为:

1674180951707614.png

若子信道的中心频率f1 在中心频率fc 的上半部分,则1674181017686756.png

若子信道的中心频率f1 在中心频率fc 的下半部分,根据奈奎斯特采样定理,此时的1674181049148005.png

complex_mult 模块为复数乘法器模块,每1 路需要消耗3 个乘法器资源。

filter_computer_p 模块为级联的滤波器,包含了CIC 和FIR 滤波器两种,根据输入的ch_bw 信号,可选择输出200、100、50、25、15、9、6、1 kHz 等8 种带宽的窄带信号。

每1 路输出数据格式为16 bit 位宽的I 和16 bit 位宽的Q,ch_vld 标识当前时钟周期数据有效;

1674181162803712.png

图1 多路控守数字处理流程图

2.3 控制单元设计

控制单元主要是完成DSP命令解析和子带变频器运算和控制。系统工作过程中,将DSP 通过Emif 接口往FPGA下发若干个信道号、每1 个子信道的中心频率、带宽参数。ch_enable 信号分别对应16 个子带变频器的复位使能信号;ch_nco 为对应子带的nco 值;ch_bw 为各子带变频器输出带宽选择信号。

1674181193712022.png

图2 单路窄带下变频器实现框图

2.4 存储矩阵设计

存储矩阵将64 路窄带IQ 数据存储并上传,传输数据的最大带宽为64 路200 kHz, 采样率为带宽的1.28 倍;系统工作时钟为102.4 MHz;

64 路IQ 数据进入存储矩阵后,首先将数据根据ch_vld 信号锁存;

RAM1 与RAM2 两片存储器将数据的进行乒乓存储,保证数据的连续性,存储器容量为128 kBit, 位宽32 bit, 寻址为0-32767,实现每路512 点的存储需求;

数据存储格式为地址0- 地址63 为64 路的I1,Q1;地址64- 地址127 为64 路的I2Q2;依次存储到I512Q512;

数据读取上传格式,先取第1 路的512 点IQ,地址为0、64、128…,再取第2 路的512 个点,地址为1、65、129…,依次取出64 路。

存RAM2 数据时,RAM1 数据通过SRIOx4 接口上传数据到DSP;存RAM1 数据时,RAM2 数据数据上传。

image.png

图3 控制单元实现框图

3   验证与实现

多路窄带控守系统,使用FPGA+DSP+ADC 的框架实现;FPGA 芯片使用设计的Xilinx 公司的K7 系列XCK7325T;ADC 采集芯片为ADI 公司的ADC9467,采样率高达250 MHz,,DSP 芯片采用TI 公司的TMS320C6657。FPGA 与DSP 之间的通信接口包括EMIF 和SRIO x4,处理平台的对外接口为千兆以太网。平台组成如图4 所示。

1674181316260035.png

图4 硬件验证平台组成

系统上电后,首先由应用层软件的宽带信号搜索功能,硬件平台收到指令后,由FPGA 接收并解析ADC采样数据,与NCO(COS,SIN)相乘得到基带的IQ 信号;并将IQ 数据进行FFT 运算,FPGA 并将FFT 运算后功率谱数据上传;在频谱显示界面可自动或者手动分选要控守的信号频率和分析带宽,并将相应的子带频率与分析带宽下发给硬件平台。

在FPGA 启动多路控守控制模块与CORDIC 乘法器复数乘法模块,并将对应带宽的数据输出上传。上传后的数据保存在系统本地硬盘中,并使用Adobe Audition软件验证播放,反复多次存储播放,证明多路控守系统能同时实现64 路带宽200 kHz。

4   结束语

本文研究了一种基于CORDIC 算法的可配置的多路窄带控守系统的设计实现,通过在操作终端上文件存储的方式验证能够实现60 MHz 宽带内最多64 路的任意频点控守,在工作中由宽带搜索引导多路窄带控守,可对多路窄带信号进行存储、分析;同时所需要的FPGA内部的乘法器和存储器资源极少。下一步目标优化优链路资源消耗,实现更多通道频点的控守。

参考文献:

[1] 张炜,杨虎.基于CORDIC算法的直接数字频率合成器实现方法

[J].重庆邮电学院学报(自然科学版),2006,18(5):597-600.[2]梁杰,孙未.CORDIC算法的优化及硬件实现[J].电子世界,2013(10):1-4.

[3] 黄海.基于CORDIC的离散三角变换快速算法及其实现研究[D].哈尔滨:哈尔滨工业大学,2014.

[4]陈婧.改进型CORDIC算法的研究与实现[J].现代电子技术,2011(24):49-55.

(本文来源于《电子产品世界》杂志2023年1月期)



评论


相关推荐

技术专区

关闭