发明名称 | 一种采集端启动PCI-E总线DMA上传数据的方法 | ||
摘要 | 本发明提供了一种采集端启动PCI-E总线DMA上传数据的方法,包含硬件部分和软件部分,硬件部分含有PC机、PCI-E接口,及由FPGA、DDR对、数据采集接口、高速A/D转换器组成的采集端,采集端通过PCI-E接口与PC机相连,而采集端内部各个组成部分协同工作进行数据的高速采集并完成数据的DMA高速上传;软件部分含有FPGA内部的软件及PC机中的上位机,FPGA内部的软件完成PCI-E总线的协议控制、时序控制,并设计了数据存储的状态监控机制与采集端启动DMA模式上传数据的机制,通过对数据存储状态的监控判断是否满足DMA上传条件,若满足则进行DMA上传。本发明操作性强、避免了数据的空读与误读、减轻了PC机的负载、减少了FPGA资源的利用。 | ||
申请公布号 | CN103019990B | 申请公布日期 | 2016.06.01 |
申请号 | CN201210407824.1 | 申请日期 | 2012.10.24 |
申请人 | 绵阳市维博电子有限责任公司 | 发明人 | 严发宝;陈刚;张京;陈先玉;陈航;周勇 |
分类号 | G06F13/40(2006.01)I | 主分类号 | G06F13/40(2006.01)I |
代理机构 | 中国工程物理研究院专利中心 51210 | 代理人 | 翟长明;韩志英 |
主权项 | 一种采集端启动PCI‑E总线DMA上传数据的方法,包括硬件部分和控制软件,硬件部分中的FPGA(4)、DDR对(5)、数据采集接口(6)、高速A/D转换器(7)组成了数据采集系统的采集端(3);PC机(1)通过PCI‑E接口(2)与FPGA(4)相连, FPGA(4)通过IO口分别与 DDR对(5)、数据采集接口(6)相连,高速A/D转换器(7)把采集到的信号转换成数字信号,并通过数据采集接口(6)送给FPGA(4),在FPGA(4)里预处理后,这些数据存储到DDR对(5)或FPGA内部存储空间(10)里,存储到一定数量后上传给PC机(1);控制软件含有FPGA(4)内部软件及PC机(1)中的上位机(8),FPGA(4)内部软件中的PCI‑E硬核执行代码(9)实现PCI‑E通信,把采集到的数据上传给PC机(1)中的上位机(8)或把上位机(8)传递的指令及数据下发给FPGA(4);DMA写模块(11)分别与PCI‑E内部存储空间(10)和DMA控制寄存器(12) 连接,PCI‑E内部存储空间与DDR对状态接口模块(14) 分别与PCI‑E内部存储空间(10)或DDR对(5)的状态寄存器、DMA控制寄存器(12) 连接,PCI‑E内部存储空间与DDR对状态接口模块(14)读取PCI‑E内部存储空间(10)和DDR对(5)状态寄存器的值,并把这个值送给PCI‑E终端控制模块(13),PCI‑E终端控制模块(13)由这个值来控制DMA控制寄存器(12),利用DMA控制寄存器(12)控制DMA写模块(11),从而控制PCI‑E内部存储空间(10)或DDR对(5)把数据通过PCI‑E总线上传给PC机(1)中的内存空间。 | ||
地址 | 621000 四川省绵阳市游仙区仙人路二段7号 |