论文部分内容阅读
随着计算机技术的快速发展,数据采集技术在工业过程控制、遥测遥控、智能仪表、测试仪器以及民用电子产品等各个领域已经得到广泛应用。数据采集作为信号与信息系统必不可少的前期工作,在整个数字系统起到重要作用,对于快速和精确获取数据并对采集到的数据进行处理的要求越来越高。FPGA作为专用集成电路(ASIC)中一种半定制电路,内部逻辑资源丰富,能满足各种电路逻辑功能的设计。PCI总线因其读写速度块、可靠性高、兼容性好等特点,在基于PCI总线的设计领域有着广泛的应用。本文针对通用数据采集平台,研究并设计了基于FPGA和PCI总线的数据采集系统。利用FPGA主控芯片,高性能的A/D数据采集芯片,通过PCI总线达到前端采集信号与PC机的通信。在硬件电路的设计上,采用AD9480这块高性能的A/D芯片,将采样得到的数字信号通过FPGA(?)内部逻辑块输出给大容量SDRAM (K4S561632B),随后打制PCI局部总线,从SDRAM中读取数据并上传给PC机。由于采用的A/D芯片为差分信号(LVDS)输入、差分时钟输入,需通过MCI OOLVEL16差分时钟芯片将50MHz的有源晶振转换成差分时钟,通过AD8138将模拟输入信号转换成差分信号(LVDS),分别供给A/D的时钟和模拟输入。在控制逻辑的设计上,利用有源晶振和FPGA内部PLL(锁相环)分别供给FPGA和SDRAM50MHz时钟,分频给MC100LVEL16(差分时钟芯片)12.5MHz时钟,供给PCI9054(PCI接口芯片)40MHz时钟。针对不同精度的设备之间数据的传输,采用异步FIFO来实现数据的可靠传输。其中包括:A/D输入的8位数字信号写入16位SDRAM,从16位SDRAM读出数据到32位PCI9054。利用状态机和命令码设计了SDRAM控制器,从而对SDRAM进行刷新、读写等一系列操作,利用PCI9054控制模块的读请求来控制FIFO数据读出,通过经过PCI局部总线上传到主设备。在完成系统硬件电路和控制逻辑电路的设计后,对系统的主要控制模块的时序进行了仿真,包括A/D控制模块、SDRAM控制模块以及PCI顶层模块。通过对时序的仿真,验证了系统硬件电路和其逻辑控制设计的可行性。