基于NIOSⅡ的声纳主机与显控台之间的RS232通信协议
2012-11-24许伟杰
王 斌,许伟杰
(中国科学院声学研究所(上海研究站),上海200032)
声纳设备一般由换能器(信号转换、收发设备)、信号处理主机(DSP等)和显示控制分机(简称显控台)三部分构成。显控台和主机之间的通信非常重要[1]。
显控台和主机之间的通信距离较远,对通信的可靠性和安全性要求高,但是对通信速度要求不高。所以通信方式可以选择串口通信协议RS232[2]。
显控台上诸多的旋钮、开关以及指示灯、数码管等设备需要丰富的外围接口。这些接口之间具有复杂的逻辑关系。选用FPGA作为显控台主芯片可以满足这些要求。以ALTERA公司的CycloneⅡ开发板为例,其主芯片EP2C8Q208C最多可提供182个用户I/O口,可以满足外围接口要求[3]。在ALTERA公司提供的硬件开发环境Quartus和片上系统开发环境SoPC下,可以非常方便地进行控制模块的开发。也可以构建NIOSⅡ处理器,以及配置NIOS系统自带的硬核,如串口通信模块UART、储存模块 Serial Flash等[4]。
本文利用FPGA芯片设计了一套显示控制分机系统,并且以声纳训练靶为应用背景编制了串口通信协议。
1 利用SoPC Builder构建显控台的片上系统
SoPC Builder是ALTERA公司提供的片上系统(SoC)开发工具,它可以配合QuartusII完成FPGA芯片的CPU以及外围设备的配置工作。
1.1 片上系统的构建
在SoPC Builder的开发环境下,选择ALTERA公司开发的32位RISC处理器NIOSⅡ。标准型的处理器NIOSⅡ/s可以运行在100 MHz的系统时钟下,运算速度超过50 DMIPS[2]。再构建配套的数据存储器SDRAM、程序存储器Serial Flash、系统地址管理器(System ID Peripheral)、编程调试接口(JTAG_UART)以及数码管(SEG)、显示和旋钮(KNOB)、按键(KEYS)等 PIO 接口。
1.2 RS232 Serial Port的结构
对UART的控制主要通过编程寄存器来实现[2]。……
