为了检测遥测舱能否正常工作,必须为其提供各种输入信号,以此模拟实际测量的信号。因此,一个性能良好的信号源的设计对遥测舱有着至关重要的作用。在此,给出一种基于FPGA的遥测舱信号源的设计方案及其实现方法。实践证明,该设计与实现方法具有独特的创意,这种信号源不仅性能稳定,而且具有较好的灵活性,满足使用要求。
0 引言
遥测舱是导弹研制中不可缺少的关键测试部件,它为导弹系统的顺利研制提供了重要保证。为了提高安全性和可靠性,遥测舱产品使用前必须通过检测和调试。遥测舱信号源是根据测试要求向待测产品实时地发送各种激励,以此来模拟导弹遥测舱实际测量到的信号,遥测舱产品会对收到的激励信号做相应的处理,然后从其输出端输出数据,这些数据将被采集到遥测舱内部,通过地面接收系统软件的分析,就可以判断遥测舱产品有无故障。由此可见,信号源是遥测舱检测系统中非常重要的组成部分,本文主要针对此信号源的设计与实现展开论述。
1 设计要求
该信号源需要为遥测舱提供串行图像数据、并行数据、串行RS 422数据、模拟信号,这些信号可单独或者组合输出。模拟信号可输出幅值为-10~+10 V,频率为100~40 kHz的脉冲信号。
目前市场上的信号发生器一般都用来产生较为简单的信号,不能够满足本系统的需求。因此,将针对本系统的特殊要求设计一个可编程的信号源。
2 设计方案
采用数字信号源的设计方法,主要以FPGA可编程芯片为核心,辅以必要的电平转换电路,构成可编程信号源。控制逻辑由FPGA可编程芯片来实现。FPGA通过内部逻辑,主要实现三个功能:产生模拟信号所需的频率基准信号;产生并行数据和图像数据的伴随信号,产生并行数据和串行RS 422数据和串行图像数据。模拟信号由功率放大电路进行幅值调节。数字信号经过接口芯片进行电平转换。
信号源电路板由电源转换模块、可编程逻辑器件、LVDS接口芯片、RS 422接口芯片、运算放大器和总线驱动器等组成。硬件电路原理框图如图1所示。
FPGA采用Altera公司的Cyclone系列EP1C6。Cyclone FPGA是目前市场上性价比最优且价格最低的FPGA。容量为5 980个逻辑单元,具有多达92 160位嵌入RAM。支持各种单端I/O标准如LVTTL,LVCMOS,PCI和SSTL-2/3。FPGA的I/O端口多达185个,可通过VHDL语言编程来自由支配、定义其接口功能,方便PCB版图设计时的布局布线,而且FPGA硬件的速度是纳秒级的,VHDL程序内部对各功能模块的处理是按并行方式进行的,这样既很好地解决了信号通路多的问题,又能实时、快速地传输处理高速数据流。同时,借助EDA工具软件Quartus直接进行代码编写、功能仿真和时序仿真,简单易行地完成硬件功能的验证、添加和修改。配置器件采用Altera公司的串行配置器件EPCS1,工业级低成本,提供在系统编程(ISP)和多次编程能力,这种能力是一次性可编程器件所不具备的,但其成本甚至低于一次性可编程器件,是Cyclone系列器件最完美的补充。存储容量的范围为1 Mb,使其更容易配合FPGA构造所需的最佳解决方案。
3 设计与实现
3.1 串行图像数据
整帧传输时间为10 ms(包括帧头和所有有效数据位);在每帧数据开始发送时,先发送两个帧头校验字FAF3EB90,其中每个字宽度不大于200 ns(校验字每帧发送一次,所以每组校验字之间间距为10 ms),然后再发送16 384(128行,128列)个字的原始图像数据,每个数据字宽度同样不大于200 ns,字的内容为0000~4000循环发送;原始图像数据发送完毕后,还需发送256个字的数字量,前两个字为校验字050C146 F,202个字为有效数字量信息,字的内容为0100~0000循环发送,其余信息字填零。