基于8通道并行数据采集PCI模块的设计
流变成并行数据流;
● 内部设计SDRAM的控制逻辑,实现数据的存储,通过内部的仲裁逻辑实现不同通道的数据存储按照一定的时序存储在SDRAM中;
● 判断第一个SDRAM已经满后,通过片选切换逻辑把数据存储在第二个存储器中,同时通过DMA方式把数据传输到上位机。
图4 控制逻辑框图
图4是FPGA内部控制逻辑框图。
3 PCI接口电路设计
本设计采用PCI总线作为数据总线连接采集模块和上位机进行通信,用以实现数据的分析处理和历史显示等功能。
由于设计中的采集模块需要工作在连续采集系统中,所以当存储器存满之后,需要快速输出通道将数据通过PCI接口传输出去。本设计采用DMA的方式传输数据,这样做既可以不占用CPU资源,又能实现快速的数据传输。我们选用了使用比较稳定的专用PCI接口芯片PCI9054作为总线控制器和上位机通信。该芯片符合PCI2.2总线规范,支持低成本从属适配器PCI时钟为0~33MHz,理论的数据传输速率可达132Mb/s,实际速率为60Mb/s。
图5 PCI接口电路
本设计中,PCI9054被配置为从模式,用FPGA作为主控制器实现数据的传输控制。PCI9054有三种总线操作模式:M模式、C模式和J模式。M模式主要是配合MPC850/MPC860处理器使用的,主要用在电信领域。J模式用来满足接口设计比较复杂的情况,C模式主要为通用模式。本设计采用C模式,接口电路如图5所示。
FPGA按照PCI9054的读写时序设计读写控制逻辑,接收上位机传来的命令,对电路进行相应的设置后,启动ADC采集数据,然后将采集到的数据送到SDRAM中;当一个SDRAM满后产生一次中断,将已经满SDRAM的地址线映射到PCI9054的本地数据线上,同时通过本地主控方式配置PCI9054的DMA控制器,通过DMA方式将SDRAM中准备好的数据上传。本设计使用了14位的本地数据总线和24位地址总线进行数据传送和地址译码控制。
结语
通过充分考虑设计中可能出现的各种影响信号质量的因素,设计了过压保护电路。通过选用合适的元件减少了电路板设计复杂程度,以及成本的最优化。经过实际测试,模块很好地达到了本文所提及的技术指标,具有很高的实用性。(今日电子 哈尔滨理工大学 童子权 高树东)
- 什么是并行比较型ADC(模数转换器)(01-24)
- 串行及并行A/D转换器在高速数据采集中的采样差别性分析(05-19)
- 应用于并行ADC性能扩展的一种比特滑动流水模数转换方法(09-09)
- 基于打印机并行接口的并行接口(08-03)
- 基于FPGA的高速数字下变频系统设计(10-16)
- 针对Flash存储特性的航天器大容量固态存储技术(10-16)