- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于FPGA在弹上信息处理机中的应用
引言
信息处理机(图1)用于完成导弹上多路遥测信息的采集、处理、组包发送。主要功能包括高速1553B总线的数据收发 、422接口设备的数据加载与检测、多路数据融合和数据接收、处理、组包发送的功能。其中,总线数据和其他422接口送来的数据同时进行并行处理;各路输入信息按预定格式进行融合与输出;数据输出速率以高速同步422口的帧同步脉冲为源,如果高速同步422口异常不影响总线数据和其它422口的数据融合与输出功能。在CPU发生异常或总线数据异常时不影响其它422口数据的融合与输出功能;能够对从总线上接收的数据进行二次筛选、组包,并发送往总线,供其它设备接收。
图1 信息处理机功能框图弹上功能框图
系统设计
CPU选择
4M 1553B总线数据的采集,由4M总线智能通讯接口管理,经CPU接收、组包,再回到4M总线,发送至FPGA进行采集。CPU选择Atmel公司的AT91FR40162S, 内部自带256KB的SRAM和容量为2M x 8b FLASH存储器,主频最高可达75MHz。该ARM的等待电路由硬件等待逻辑产生,在FPGA内部实现。ARM外部中断源主要有:4M 1553B通讯控制器中断;20ms缓冲区切换中断。其中,4M 1553B通讯控制器中断信号经过FPGA整形后送入ARM。20ms缓冲区切换中断提供给FPGA内部各个同步、异步通讯IP组帧状态机用于缓冲区切换。
3路输入数字量接口
3路输入数字量,码速率分别为:1.28Mbps、115.2Kbps、38.4Kbps的数据流,数据流在FPGA内部经过串并转换将接收的数据存储在数据缓冲区A和数据缓冲区B中,再经过状态控制机来控制数据的不断更新。
同步422接口输出
采用两路单向RS422同步串行通讯接口,差分传输,一路为串行数据,一路为时钟数据 ,采用双线制传输。输出码速率2.56Mbps,15位加扰。
FPGA设计
当3 路输入数字量的数据流和4M的1553数据在20ms的时间内传输时,所需的内存约为10KB。
缓冲区存储切换有2种方式:
1)当1.28M的同步串行接口接收的数据个数达到64x100时切换;
2)由内部的20ms定时器切换。
因此当ARM异常后,能够确保除4M总线数据之外的其它通道正常输出。当1.28M的同步串行接口异常后,FPGA内的状态机自动切换到内部的20ms定时器进行切换。FPGA设计及IP核通过SPARTAN3AN集成开发环境进行仿真验证。
FPGA选用Xilinx公司的SPARTAN3AN系列的XC3S700AN-4FG484,电压1.2~3.3V,电流50mA~2A,主频最高达70MHz以上。
地面单元测试仪的设计
单元测试仪(图2)主要完成对信息处理机各种功能和参数的测试,模拟产生弹上机的所有输入信号,并测试其所有输出信号,可用于信息处理机的生产调试、出厂测试和外厂维修。
图2 地面单元测试仪框图
单元测试仪由便携式工控机内插相应PCI板卡和相应软件程序组成,PCI板卡为1块COM通讯测试板卡,其主要实现和弹上高速内总线4Mbps(或以上)1553B总线接口,在软件的控制下,向弹上发送各种测试命令、并接收弹上机的测试结果。
系统实现
信息处理机的系统工作流程见图3,具体包括:
(1)上电复位及初始化
上电后,FPGA和ARM同时复位,进行初始化过程,其中FPGA初始化中, FPGA内部寄存器和逻辑状态的初始值、内部缓冲区数据清零依靠复位信号来完成,其中的"FPGA参数设定"由监控程序负责执行或由FPGA使用缺省参数完成。
如果上电或复位时出现问题,FPGA使用缺省参数自动初始化所有参数并自动进行后续工作。
来源:维库开发网