NI LabVIEW,CVI,数据采集等产品讨论区

取消
显示结果 
搜索替代 
您的意思是: 

使用NI FlexRIO设备模块进行大数据量采集时遇到的缓冲溢出的问题

       目前关于使用NI FlexRIO设备使用Labview编写数据采集程序的过程中遇到了缓冲区溢出的问题。我目前采用的FPGA模块为NI PXIe-7975R,数据采集模块为NI 5783,目前所需要的应用场景为四通道AD采集,采样率为100MHz,采样时间为20ms,每个通道的采样数据量均为2M

       下图NI官方提供的NI 5783的例程,例程是采用Streaming VI系列函数实现的,其FPGA VI如下FPGA VI.PNG

     

例程主机VI中数据读取部分如下

主机VI.PNG

但根据NI 5783的这一例程,最多只能够实现每通道几千数据量的采集。当设置读取的数据量较大时,就回出现以下错误(错误代码:-1074100508)。如果设置更大的FIFO大小,同样也会出现缓冲数据溢出的问题。

Capture.PNG

另外,也参考了官方提供的NI 5752B的例程引入DRAM FIFO来进一步扩展缓冲区,也是无法实现较大数据量的采集,目前采用这一方法最多也只能够将每通道可采集数据量提高到1万多,需要设置更多采集数据量时还是会出现缓冲溢出的问题。目前采用DRAM FIFO扩展缓冲区改进后的FPGA VI如下图所示,主机VI部分没有改动。

FPGAVI 1.PNGfpga VI2.PNG

附件为目前修改的引入DRAM FIFO扩展缓冲区后的程序的Labview项目工程文件,能否帮忙看一下是存在哪些问题呢?

0 项奖励
1 条消息(共 1 条)
730 次查看