SOPC在干扰系统嵌入式网关设计中的应用
扫描二维码
随时随地手机看文章
1 分布式干扰系统对嵌入式网关设计的要求
根据分布式干扰系统的作战运用背景,在设计嵌入式网关硬件平台时应从以下几个方面考虑:
(1)微型化。嵌入式网关应该在体积上足够小,保证分布式干扰系统的小型化。
(2)扩展性和灵活性。分布式干扰系统需要定义统一、完整的外部接口,方便软硬件系统的升级,其嵌入式网关也应具有扩展性和灵活性,可以根据作战环境的需要进行升级。
(3)稳定性和安全性。稳定性要求嵌入式网关能够在给定的外部环境变化范围内正常工作。安全性设计包括代码安全和通信安全,是军事领域应用的基本要求。
(4)低成本。分布式干扰系统的作战应用表明,系统是大量部署且不能回收的,因此就要严格限制包括嵌入式网关在内的重要部件的成本。
(5)低功耗。嵌入式网关的硬件设计直接决定了其能耗水平,还决定了各种软件通过优化可能达到的最低能耗水平。因此,要合理地设计硬件系统,有效降低系统能耗。
(6)具有一定的信号预处理能力。嵌入式系统中微处理器的处理能力较弱,且内存较小,嵌入式网络的速度普遍不高。这就要求嵌入式网关具有一定的信号预处理能力,包括下变频功能和FFT变换功能,以此来提高网络传输的效率。
2 分布式干扰系统中嵌入式网关的硬件设计
嵌入式网关实际上就是一个可实现网络通信功能的嵌入式系统。随着FPGA技术的迅速发展,SoPC作为一种特殊的嵌入式系统,具备软硬件在系统可编程、可裁减、可扩充、可升级的功能,已逐渐成为一个新兴的技术方向。因此,本文在设计分布式干扰系统的嵌入式网关时选用基于FPGA的SoPC解决方案,选用的实验平台为Xilinx公司的ML402开发平台。
2.1 分布式干扰系统中嵌入式网关的硬件组成
图1表示的是分布式干扰系统中嵌入式网关的硬件组成,这些硬件除A/D、干扰机和控制中心外都集成在一块ML402*估板上。系统以带有32位MicroBlaze微处理器软核的FPGA作为控制中心,处理经A/D变换后的侦察信号数据,然后通过以太网将数据传送到控制中心,并从控制中心传回控制参数。DDR_SDRAM作为片外存储器,用来弥补微处理器内部存储器容量小的缺点;CF卡存储系统软硬件的bit文件和网络配置文件;串口用来控制具有远程控制功能的侦察接收机,也可在调试时输出系统的运行信息。本文设计的嵌入式网关的各功能部件在FPGA内部都以IP核的形式构建并连接,较好地满足了分布式干扰系统对嵌入式网关硬件设计的要求。
2.2 SoPC的片上总线设计
受分布式干扰系统体积和电源能量的限制,其网络通信必须采用猝发通信的方式,这就对嵌入式网关微处理器的处理能力提出了更高的要求。MicroBlaze微处理器的总线是其优于其他同类CPU的重要部分,每种总线都有鲜明的特点和明确的外设。只有合理使用不同的总线来访问不同的外设,且正确地协调这些总线的工作,才能最大限度地发挥MicroBlaze的优势。因此,SoPC的片上总线设计是该系统设计的重点。
在本文设计的分布式干扰系统的嵌入式网关中,SysACE CF卡、中断控制INTC、GPIO和串口UART与MieroBlaze处理器之间只进行参数传递,对速度要求不高,因此使用PLB总线与MieroBlaze处理器和多端口内存控制器(Multi Port Memory Controller,MPMC)相连;MPMC与Mic-roBlaze处理器之间使用XCL相连。自定义IP核FFT输出信号的频谱数据,对传输速度要求很高,因此使用FSL总线与MicroBlaze内部通用寄存器直接相连。DDC输出信号的时域数据,对传输速度要求最高;为满足传输速度要求,本文参照以太网控制器Soft TEMAC开发了XPS_LL_Exam-ple IP核,通过该IP核的LocalLink接口将信号的时域数据传输到MPMC中进行处理。分布式干扰系统的嵌入式网关片上总线设计如图2所示。
2.3 SOPC的实现
本文设计的SoPC是利用Xilinx公司的嵌入式开发套件(Embedded Development Kit,EDK)实现的。EDK集成了硬件平台产生器、软件平台产生器、仿真模型生成器、软件编译器和软件调试等工具。用户使用EDK可以对硬件平台进行任意的添加和裁减,同时可以方便地添加自定义的IP核,极大地方便了开发过程,提高设计效率。本文利用EDK实现图2所示的各功能部件IP核的添加,并实现了IP核的地址分配和总线架构、外设接口的连接。
3 分布式干扰系统中嵌入式网关的软件设计
分布式干扰系统中嵌入式网关的软件包括嵌入式操作系统和网络应用程序。EDK集成了软件平台产生器、软件编译器和软件调试等工具,因此,软件设计也在EDK进行。
3.1 嵌入式操作系统的选用
嵌入式操作系统是嵌入式软件技术的核心,介于嵌入式系统硬件和应用程序之间,负责调度并管理应用程序,完成对嵌入式系统硬件的控制和操作。嵌入式操作系统的选用主要考虑实时、高可靠、低功耗、可抑制性和兼容性、软件开发难易等因素。本文主要是对分布式干扰系统的网络通信进行技术验证,因此选择较为简单的Xilkernel操作系统。
Xilkernel是Xilinx公司提供的用于EDK系统的小型、模块化的嵌入式操作系统。Xilkernel的内核完整,且占用CPU资源较少,运行速度快,是中小型设计的理想操作系统。Xilkernel本身不带有文件处理系统和TCP/IP协议栈,但与LwIP库和Treck协议栈具有良好的接口,加上文件系统支持库LibXil MFS,可形成较为复杂的嵌入式操作系统。
首先,在EDK的软件平台设置中选择Xilkernel,并选择相应的文件系统和TCP/IP协议栈,本文选择xilfatfs文件系统和lwip130协议栈。然后在操作系统和库函数界面对操作系统进行配置,主要进行输入/输出、线程和计时器的设置。最后执行产生库函数和BSPs文件,即可生成与嵌入式系统硬件平台相匹配的嵌入式操作系统环境。
3.2 网络应用程序的开发
分布式干扰系统中嵌入式网关传输的主要数据为侦察信号时域和频域数据,直接影响着网络通信的效率,因此,本文只对侦察信号时域和频域数据的传输进行检测。网络应用程序采用顺序执行的结构方式。为了能够响应外围设备的中断请求,在程序中为多个外围设备提供了相应的中断服务程序。网络应用程序的流程图如图3所示。
4 系统调试
用一根千兆网线将图1所示的硬件系统与PC机相连,在PC机上开发网络客户端程序,发送控制侦察接收机的数据。使用信号线将AR-ONE通信接收机输出端与A/D板相连,A/D模块使用ADI公司的模数转换器(ADC)AD9460。在侦察接收机受控工作时,使用串口线将图1所示硬件系统与AR-ONE通信接收机串口输入相连;在侦察接收机自主工作和系统调试时,使用串口线将图1所示硬件系统与PC机相连,在超级终端中观察系统运行状态。将信号源与AR-ONE通信接收机信号输入端相连。将软硬件联合编译生成的bit文件下载到FPGA开发板上,信号源输出95.5MHz的FM信号,在PC机上使用无线电监测测向系统进行监测,如图4、图5所示。
经比对,PC机上显示的正是信号源输出信号的频域和时域波形。