APP下载

基于FPGA的雷达终端控制系统的设计

2016-05-14崔娟

山东工业技术 2016年4期

崔娟

摘 要:本文采用FPGA作为主控制器完成实时性要求高逻辑较简单的功能,让CPU主要负责复杂的数据处理,从而提高系统对时间的实时响应能力。文中较详细的介绍了系统的软、硬件设计。

关键词:雷达终端;FPGA;ISA总线;多谱勒音频

DOI:10.16640/j.cnki.37-1222/t.2016.04.251

1 引言

雷达终端显示控制系统不仅要完成数据的实时传输、复杂的人机交、还要完成目标点迹处理以及目标自动跟踪等处理。通常是采用FPGA+CPU的方案来完成系统设计。CPU是在对复杂的数据处理方面具有优势,而缺陷就是需要提高时钟频率来满足实时性要求;采用FPGA作为主控制器,可以减少CPU的负担、降低主频,提高系统的稳定性以及可靠性。

2 系统设计

系统以FPGA芯片为控制核心,实现通信数据包的解析与转发、ISA总线时序控制、键盘扫描、电压采样、音频控制等功能。结构框图如图1所示。

FPGA采用的是CYCLONE II EP2C70,CPU采用INTER公司的PM系列1GHz主频的芯片,FPGA与CPU的通信采用ISA总线方式,该系统中,FPGA的主要功能是通过全双工RS-485总线与雷达主机进行数据交互,对来自雷达主机的数据包进行解析,然后分类执行控制,对要传送给CPU的数据经过处理后通过ISA总线输出;也可同时接收CPU发送的数据,通过RS-485总线传递给雷达主机。FPGA通过第二路单路RS-485总线从雷达主机接收目标多普勒的数据包,解析后驱动音频电路,输出相应的目标多普勒音频信息,可让雷达操作员利用音频完成人工目标识别。(1)ISA总线模块。ISA总线是IBM公司为PC/AT电脑而制定的总线标准,能支持16位的I/O设备,数据传输率可达8MB/S,具有DMA通道功能,可以在接收大量数据的同时不干扰CPU工作。只需要根据ISA标准,采用FPGA很容易能设计出其接口电路;(2)RS-485模块。雷达整机系统要求雷达终端与主机要相距50m以上,数据传输速率大于2Mb/S,因此采用MAX3491芯片来完成,可以实现全双工RS-485电路。经过实验证实当连接线为60m,传输1.5MHz的方波时,波形能够完整的传输;(3)音频模块。FPGA输出的是数字信号,因此该部分需要先把数字信号转换成模拟信号,然后经过信号滤波放大电路以及幅度控制电路,最后输出至耳机,用D/A转换器AD73311完成数字音频信号至模拟信号之间的转换,利用FPGA的普通IO口完成与AD73311的接口协议以及数字电位器(X9312)的控制。雷达目标多普勒信号频率比较低,带宽比较窄,而且当目标距离较远时,信号很微弱以及夹杂的噪声多。因为需要设计一个低通滤波器来降低噪声的影响;还需要设计一个高倍的运算放大电路,把微弱信号尽量放大,因此利用数字电位器(X9312)控制声音大小,使得多普勒声音更适合人耳;(4)A/D采样模块。电源电压经过调理后,变成适合A/D采样的信号,然后利用A/D采样保持电路,完成模拟信号到数字信号之间的转换。A/D转换器采用经典的8位CMOS芯片ADC0809。其具体时序图可参考该芯片的Datasheet。

3 软件设计

软件基于QUARTUS II 平台进行设计,采用原理图与verilog语言相结合来编写程序,软件方面主要分以下几个模块设计:(1)RS-485收、发模块。该模块实质上是参考通用异步收发器实现的,要用远高于需求波特率的时钟去采样起始位,一般采样时钟为波特率的12倍;在对数据位采样时,一般是采取中点采样;(2)键盘扫描。键盘为了减少连接IO口的个数,通常采样行列矩阵布置,FPGA通过分时对每列发送高低信号,然后进行相应的逐行扫描,可以很容易的获得按下按键的键值,采样多次扫描到同一个键值就相当于去抖动,若判断某键有按下时,就一直扫描该键,直到它释放为止,然后建立该键的有效标志以及保存该键重复次数等信息;(3)A/D采样。该模块电路主要实现的是电压采样功能,FPGA的控制状态图在ST6状态时读取AD数据线上的数据,这样从ST0至ST6循环一次就完成了一次数据的采样,根据上述状态图利用verilog语言很容易完成软件的编写;(4)ISA总线时序控制。ISA总线16位标准存储器访问由3个总线时钟周期组成。BCLK是总线时钟,第1时钟周期BCLK1为地址周期,在BCLK1的上升沿,扩展地址信号在地址线LA[23:17]上有效。到BCLK1的下降沿,总线地址锁存使能信号BALE变为有效,用来锁存扩展地址。之后,与数据线分离的地址线A[15:0]上发出地址信号,同时,数据线高位字节使能信号变为有效状态。从第2个时钟周期BCLK2开始是数据周期,存储器读/写或者扩展的存储器读/写信号之一进入有效状态。在BCLK2的开始(上升沿),ISA总线控制器检测16位存储器传送信号M16#,如果该信号为0,意味着本次总线访问是16位存储器访问,将在3个BCLK之内完成。于是,在BCLK3的末了Host采样数据总线,或由写信号将数据写入存储器,当前总线周期结束;(5)音频信号输出。根据音频信号转换器AD733311的时序图,该芯片是通过异步串行口来传输数据的。当SE为高电平时,通过设置帧同步信号可以启动数据帧的传输,首先在时钟SCLK的下降沿把SDIFS(SDOFS)设置为高电平,然后在下一个时钟的下降沿把帧同步信号拉底,此时数据开始传输,在每个SCLK的上升沿SDO输出数据,在SCLK的下降沿SDI接收数据;当一帧数据传输完成后,在SCLK的下降沿把SDIFS(SDOFS)拉高,下一个时钟SCLK的下降沿再把帧同步信号拉低,就可以进行第二帧数据的传输。

4 结论

本系统采用EP2C70芯片为核心控制器,很好的解决了数据传输的实时性与多任务同时执行的矛盾,具有成本低、器件少、可靠性高等特点。软件设计方面采用原理图与verilog语言同时开发,使得系统软件具有较高的可读性与可移植性。经过实际应用,该设计完全能满足系统的要求。

参考文献:

[1]ADC0809.pdf[Z].

[2]丁鹭飞,耿富录.达雷原理(第三版)[M].西安:西安电子科技大学出版社,2004.

[3]陈忠平,高金定,高见芳.基于Quartus II的FPGA/CPLD设计与实践[M].电子工业出版社,2010.

[4]沈晓红,鲁延峰,李凯.基于FPGA的ISA总线接口逻辑设计[J].微计算机信息,2011.