APP下载

基于IDFT结构的多通道信道化算法研究

2019-01-02眭超亚唐毅谦罗正华曹文继

关键词:单通道复杂度接收机

眭超亚, 唐毅谦, 罗正华, 曹文继, 喻 娜

(1.成都大学 信息科学与工程学院, 四川 成都 610106; 2.成都大学 机械工程学院, 四川 成都 610106)

0 引 言

由于数字信号处理的优势和模数转换器(Analog to digital converter,ADC)采样速率的提高,ADC逐渐由基带向射频移动.但随之而来的是ADC采样后数据量的剧增,给数字域的信号处理带来了挑战[1].信道化接收机是宽带信号接收中处理大数据的有效方式,广泛应用于卫星通信、雷达与无源探测等场合[2].信道化接收机的原始结构由一组本振频率固定的数字下变频器组成.相比于原始结构,基于多相结构的数字信道化接收机占用更少的硬件资源,更具可实现性[3].在分析常规数字信道化算法通用结构的基础上,本研究推导出数字信道化算法的数学模型,得到了基于IDFT数字信道化算法的高效结构,以Gnuradio平台为基础,实现了该高效结构,通过与Gnuradio自带的信道化处理算法进行比较,验证了该结构的有效性.

1 数字信道化接收机

1.1 单通道信号处理

假设接收机收到的信号为频分多路复用(Frequency-division multiplexing,FDM)信号,该FDM信号由等间隔的信道组成.不失一般性,设其中一个信道以频率0为中心,接收机收到的信号频谱如图1所示.

如果接收端仅对信道k中的信息感兴趣,则将整个信号的频谱以第k个信号的中心频率为参考进行频谱搬移,使第k个信号的中心频率刚好搬移到零频,然后对该信号进行低通滤波,并将其进行降采样,以匹配后端目标的处理速率[4].该模式的处理流程如图2所示.

图1宽带FDM信号频谱

图2 FDM信号单通道处理流程

设x(n)表示收到的输入信号,m表示FDM信号的信道总数,h表示有限长单位冲激响应(Finite impulse response,FIR)低通滤波器的脉冲响应,hj表示第j个滤波器系数,N表示滤波器的阶数,d表示最后降采样的比率,则该过程为,

(1)

(2)

(3)

(4)

该过程在频谱上的直观表示如图3所示.

图3 FDM信号频谱搬移、低通滤波和降采样过程频谱示意图

在算法的处理过程中,输出一个有效样点的算法复杂度为频谱下变频时的2d次复数乘法运算和滤波时的2N次实数相乘累加运算.

1.2 单通道处理的简单优化

将式(3)简单变化,重写为,

(5)

重新定义滤波器h′,

(6)

上述滤波器系数可以在信号输入之前预先被计算,则式(4)可表示为,

(7)

忽略预先计算h′系数的计算量.在此改进算法中,输出一个有效样点的算法复杂度为滤波时的N次实数相乘累加运算和频谱搬移时的复数乘法运算.

1.3 多通道信道化处理

通常,卫星通信的地面接收站或雷达宽带信号处理等场景,需要同时解析接收机收到的M个通道信号.每个通道的处理采用普通的单通道处理结构,则多通道的处理模式简化为单通道的简单叠加,其整体计算结构如图4所示.

图4多通道信号并行计算结构

在同时解析所有M个通道信号的过程中,每个通道的处理方式均相同,其算法整体复杂度为单个通道算法复杂度的M倍.

2 基于IDFT结构多通道信道化处理算法

在多通道同时处理M个信号的过程中,通过复制多路相同的单通道处理模式来同时处理收到的多路信号,该处理方式在算法复杂度和硬件资源占用率等方面考虑欠佳,需要对其加以改进,提高算法整体性能,节省硬件资源.

首先,令d=m,即一次需要计算的通道数,重写式(3),

(8)

该式的本质是对混频后的信号进行滤波,其滤波器的抽头系数为hj.

整理滤波器抽头系数hj,将其重写为(m,N/m)大小的实矩阵g,

gg,p=hpm+q(p=0,1,…,d-1;q=0,1,…,m-1)

(9)

用矩阵表示为,

(10)

将滤波器抽头系数hj重写为矩阵g后,以行列的方式重写式(4),并将d置换为m,则式(4)可表示为,

(11)

其中,j=pm+q,则有,

(12)

在式(12)中,定义,

(13)

由此,式(12)可表示为,

(14)

式(14)中,k、n、p均为整数,而在复向量中,对任何正整数变量u,e-2πiu的值恒为1,因此e-2πikn和e-2πikp的值也恒为1,则式(14)表示为,

(15)

对比离散傅里叶反变换的表示式,

(16)

可知式(15)的本质是对wn,q进行离散傅里叶反变换.在具体实现时,可采用更加高效的IFFT算法.

图5多通道处理新结构示意图

图5所示的多通道信道化处理算法新结构的复杂度由2部分组成:每个通道进行滤波输出一个样点的N/m次实数乘法累加运算;一次大小为m的IFFT运算.其复杂度取决于不同的实现,大约为5NlogN次浮点计算.

3 算法新结构的实现与结果

开源软件无线电Gnuradio是一套快速构建和部署软件定义无线电系统的免费软件工具包[5].本研究借助Gnuradio的软件开发平台,用C++实现了改进的算法结构,并对其性能进行了对比验证.

3.1 算法新结构的实现

算法的实现过程具体方式为:

1)每路通道中的FIR滤波(buckets)设计为环形数据链表.

为了避免数据移动,预先计算滤波器的抽头系数,然后使用普通乘法累加,计算一次数据输出.在进行下一次数据计算时,只需要移动数据指针即可.

预先存储抽头系数的方式会占用一定内存.假设原始FIR滤波器为2 000阶,降采样为100个信道,采用单精度浮点数据进行计算,则需要的内存为,100×(2000/100)2×sizeof(float)=160 KiB.2 000阶的FIR滤波器在实际使用中相对较少,一般的工程使用不超过1 000阶,所以占用的内存会更少.软件实现时,可以直接将计算出来的系数存于Cache中,进一步提高整体的计算速度.

2)采用多线程技术.

如果同时开启t个线程,则前t-1个线程完成信道滤波,输出样点,第t个线程计算最终的IFFT.主线程根据线程个数,决定数据的读取速度,并使用互斥锁与条件变量等方式同步所有的计算子线程.

3.2 测试结果

为了更准确地评估该算法结构的性能,本研究选用算法处理数据时的吞吐量作为衡量指标,并在3种不同的硬件平台上进行对比测试.

1)嵌入式硬件平台Raspberry Pi 2:CPU,ARMv7;内存,1 GiB DDR2;操作系统,Debin 8.

2)笔记本电脑:CPU,Intel Core i3-2350M;内存,8 GiB DDR3;操作系统,Debian 8.

3)台式机:CPU,AMD FX-8150;内存,32 GiB DDR3;操作系统,Debian 8.

测试时,随机选择通道数量和滤波器阶数(72个信道,每个信道采用1 151阶FIR滤波器).为了全面测试新的算法结构,使程序工作在通用和特殊2种不同的工作模式,通用模式为编译时不对程序进行任何干预,特殊模式为编译时指定滤波器阶数.在不同的硬件平台上,对程序重复100次测试,然后对结果求平均值,最终算法吞吐量性能结果如图6所示.

图6算法性能测试结果图

结果表明,对于不同的硬件资源,其算法吞吐量明显不同,但该结果是由硬件平台本身决定的.在同一个平台中,改进结构后的算法性能明显优于Gnuradio官方自带的算法性能.

4 结 语

本研究探讨了基于IDFT结构的多通道信道化算法,推导了其数学模型.相对于普通的信道化处理,基于IDFT的结构降低了算法的复杂度,提高了系统数据处理的吞吐量.最后,本研究以Gnuradio平台为基础,采用新结构实现了算法,并且在3种不同的平台上验证了该结构的有效性.

猜你喜欢

单通道复杂度接收机
基于联合聚类分析的单通道腹部心电信号的胎心率提取
基于扩展卡尔曼滤波和奇异值分解算法的单通道胎儿心电提取方法
一种低复杂度的惯性/GNSS矢量深组合方法
一种宽带低功耗四合一接收机设计
一种面向ADS-B的RNSS/RDSS双模接收机设计
求图上广探树的时间复杂度
基于感知掩蔽深度神经网络的单通道语音增强方法
数字接收机故障维修与维护
基于多接收机的圆周SAR欺骗干扰方法
基于扩频码周期性的单通道直扩通信半盲分离抗干扰算法