王春芸
(中国船舶重工集团公司第七二三研究所,江苏 扬州 225101)
电子战改变未来战场的能力正在不断增长,一些关键技术成为部署电子战能力的组成部分,已经确定的技术领域有很多,其中包括电子设备小型化及高性能数字信号处理。因此,本文提出一种以TMS320C6678八核数字信号处理器(DSP)作为主处理器的信号分选软件设计方法,并已在TI提供的TMDSEVM6678 L开发板上得以验证。在下一步的硬件设计中,选用该芯片作为主处理器就可以实现信号分选模块小型化及高性能数字信号处理。
TMS320C6678是TI公司生产的一款DSP芯片,其处理器架构先进,运算能力强, 高速内外接口多,开发资源丰富,为信号分选软件设计提供了强大的硬件平台,也为软件的架构提供了极大的灵活性。
雷达辐射源信号的分选继承传统的预分选和主分选软件架构。其原理框图如图1所示。
图1 基于TMS320C6678的信号分选架构框图
预分选处理主要是将接收到的密集脉冲流(以脉冲描述字(PDW)描述,主要包括到达方向(DOA)、射频(RF)、脉宽(PW)、到达时间(TOA)、脉冲幅度(PA))进行稀释、分组、聚类,将具有相同特征参数的脉冲流归于一类。主分选处理是将经过预分选归类得到的各PDW组(即通道组)采用各种更为复杂的算法进行进一步去交错处理,提取出一个个独立的辐射源描述字(EDW)。
TMS320C6678多核并行处理模式有3种:主从模式(Master/Slave)、数据流模式(Data Flow)、OpenMP模式(OpenMP)。
主从模式中将一个核作为主控,其他核只负责执行分配的任务,集中控制分布执行。这种模式适于应用中具备很多小的独立任务,任务可以独立在单核的资源运行,任务之间不需要进行交互、同步、数据共享。
OpenMP模式是一套在对称多处理(SMP)模式下开发多任务应用的接口,由编译指令、库及环境变量构成。该模式一般用于计算量较大、需要多核并行工作、提高运算速度的情况,如图像处理、快速傅里叶变换(FFT)计算等。
数据流模式是一种分段流水式的控制和执行,每个核负责处理过程的一个步骤,然后将处理结果传递到下一个核进行后续处理,每个核需要相互协同,共同完成整个处理过程。
根据图1,信号分选软件的工作流程是:核0接收PDW流,经预分选输出到核1进行主分选,两核对PDW数据流进行流水的处理,所以选择数据流模式进行并行处理。
TI提供了IPC软件组件包,包括处理器多核管理组件、共享区域管理组件、消息队列管理组件、内存堆管理组件,用于多核的核间同步。本文提出的信号分选架构使用了TMS320C6678中的两核,所以必须使用IPC提供的组件进行多核配置和调度。
TI也提供了多核软件开发包(MCSDK),其中包括核间通信模块。核间通信方式有多种,常用的有同步通知机制、消息队列机制、数据共享机制。同步通知机制速度较快,不能携带数据,只能带一个标志,用于动作触发;消息队列机制能够传递数据和控制;数据共享机制可以在多核间共享大批量的数据。以上信号分选架构中,共享内存区的数据量相当大,而且核0和核1对共享区的互斥访问需要同步控制,所以选择消息队列和数据共享2种同步机制共同完成核间通信。
将以上设计在TI提供的TMDSEVM6 678 L开发板上进行验证。在图1中,核0和核1分别对应开发板上的CORE0和CORE1,共享内存区对应为开发板上的DDR3。
TMS320C6678有8个核,具体使用哪些核通过MultiProc组件进行配置,在配置文件.cfg中进行初始化及相关设置。本设计使用2个核的配置情况如下:
var MultiProc=xdc.useModule(‘ti.sdo.utils.MultiProc’);
MultiProc.numProcessors=2;
MultiProc.setConfig(null,[“CORE0”,“CORE1”]);
TMS320C6678硬件平台有3类内存可配置使用:L2SRAM、MSMCSRAM、DDR3。其中L2SRAM、MSMCSRAM速度较快,但容量有限,一般用于存放频繁执行的核心代码和需要高频度访问的数据。DDR3是外部存储器,容量较大。本设计配置DDR3作为共享内存,用于两核之间大量PDW的传递,具体配置如图2所示。
图2 平台内存配置图
地址0x80000000起始的存储区配置为共享存储区,两核均可使用直接地址进行读写访问。如果某个核进行了数据更新,需要将更新后的数据刷新到cache中后其他核才可使用。
图3是使用QMSS IPC通信的MessageQ通信结构示意图[1]。
图3 使用QMSS IPC通信的MessageQ通信原理图
根据以上使用消息队列进行IPC同步的原理,在核0和核1分别设计本地的消息队列LocalQuene和远程的消息队列RemoteQuene,同步流程如图4所示。
图4 核0、核1基于消息队列的同步流程
信号预分选的主要功能是快速建通道,并将具有相同特征参数的脉冲流归到一个通道,其工作流程如图5所示。
图5 信号预分选工作流程图
信号主分选主要基于以下参数进行:RF、DOA、TOA、PW、PA。基于这些参数的信号分选方法主要有综合参数相关法、 积累时差直方图法 (CDIF)、不积累时差直方图法(SDIF)、 序列检索法
等。这些算法均为成熟算法,具体算法描述可参考相关资料。信号分选把上面几种算法综合加以应用。在本方案中采用以下三大步:
(1) 首先进行综合参数相关提取,把载频、脉宽、方位都相关的数据提取出来,以备下一步进行时序上的分选。
(2) 对经综合参数相关提取出来的脉冲数据进行时序差直方图统计。此过程综合运用SDIF与CDIF法。
(3) 对直方图过门限的PRI值进行序列检索。
主分选工作流程如图6所示。
本文架构已在TI提供的TMDSEVM6 678 L开发板上得以验证,拟应用于某侦察干扰样机,因仅用于演示验证用,所以主要着重于多核DSP相关的软件架构设计与简单实现。在以后的工程应用中,可以充分利用TMS320C6678芯片的多核资源,进一步优化软件模块设计,以适应越来越复杂密集的信号环境,实现对更高信号密度的全脉冲处理。
图6 主分选工作流程图