3 系统的FPGA实现
3.1 Nios II系统架构设计
Nios II系统模块包含:Nios II处理器、Avalon总线、并行输入/输出口PIO、串行外围设备接口SPI、定时器Timer、片内存储器EPCS、片外存储器SDRAM、PROFIBUS-DP的客户定制逻辑。由Nios II处理器完成程序控制,主要负责对温度的采集与数据存储操作,并控制PROFIBUS -DP的通信过程。其架构如图5所示。
图5 Nios II系统架构
3.2系统软件设计
Nios II处理器的软件设计是在软核内存放一段编写的C/C++语言控制程序。来控制系统运行,它可以读写芯片的存储单元,同时与外围的设备进行通信。在本系统中,Nios II程序的任务是:在规定的周期内,FPGA通过通信模块接收上位机发出的采样任务及控制参数,然后控制模拟选择开关ADG706和A/D转换器ADS8402,使它们对选定通道的模拟信号进行调理及A/D转换,并读取采样数据以乒乓传输数据方式传送至片外FIFO缓存,再通过PROFIBUS—DP通信接口将采样数据传输至上位机。主程序流程如图6所示。
图6主程序流程图
结语
基于FPGA的多通道实时温度采集系统以Nios II软核处理器实现SOPC,进一步简化了硬件设计。与传统的基于MCU的多通道温度采集系统相比,该系统具有资源配置灵活、运行稳定可靠、实时性强等优点。另外,该系统具有标准PROFIBUS—DP接口,作为一个DP从站实现与多种DP主站的通信,可广泛应用于工业生产领域的PROFIBUS分布式控制系统中。