搜索
bottom↓
回复: 15

如何处理高速采集与低速读设备之间的数据传输?

[复制链接]

出0入0汤圆

发表于 2012-12-7 21:12:02 | 显示全部楼层 |阅读模式
肯定要用的FIFO了,但是我在想,我采集的速度很快,但是单片机读取的速度很慢,中间使用了一个FPGA作为缓冲,数据源源 不断的送入FPGA的FIFO中,另一端单片机慢慢的在读取,但是这样一快一慢,FIFO总有写满的时候,这个时候怎么处理呢?难道是停止采集,等待单片机将FIFO读完了再启动采集?还是继续采集,将数据覆盖?好像两种方案都不好吧!数据都丢失了,怎么解决呀?

阿莫论坛20周年了!感谢大家的支持与爱护!!

你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。

出0入0汤圆

发表于 2012-12-7 21:15:52 | 显示全部楼层
一直不明白这个问题。望高手详细解释FIFO的用法。特别是FIFO满溢出时该如何处理?

出0入0汤圆

 楼主| 发表于 2012-12-7 21:31:39 | 显示全部楼层
longwu537 发表于 2012-12-7 21:15
一直不明白这个问题。望高手详细解释FIFO的用法。特别是FIFO满溢出时该如何处理? ...

对!就算FIFO满时,然后停止写操作,这样也还是不就造成了数据丢失,相当于缺了一块。怎么解决呢?高手在哪里

出0入0汤圆

发表于 2012-12-7 21:37:08 | 显示全部楼层
一定要所有的数据都要保存下来吗?

出0入0汤圆

发表于 2012-12-7 21:39:48 | 显示全部楼层
FPGA 不是這樣玩了的啦....

你的方式 1GHZ CPU 也未必能滿足你的需求.....如果CPU速度快夠快,就不用裝 FPGA 了

高速采集->分析->顯示...都是獨立的FPGA處理模塊,單晶片只控制顯示'大小'區域'或是其他命令.

出10入61汤圆

发表于 2012-12-7 22:02:39 | 显示全部楼层
我的理解是: FIFO只是提供一个暂存的地方,CPU读取速度肯定要比采集速度快才不会丢数据,这是必要但非充分条件。因为CPU还要干其他事,比如有外部中断要处理,此时FIFO就发挥作用了。不知理解对不对

出0入0汤圆

发表于 2012-12-7 22:14:00 | 显示全部楼层
你采集多块?

出0入0汤圆

发表于 2012-12-7 22:57:41 | 显示全部楼层
前几天刚看到个讨论异步FIFO的资料,添加附件时候总说内部通讯错误

出0入0汤圆

发表于 2012-12-7 23:08:04 | 显示全部楼层
速度相差悬殊的话当然就无解了,例如用89C51单片机做视频采集无论怎么FIFO都是白搭

出0入8汤圆

发表于 2012-12-7 23:35:16 | 显示全部楼层
如果你要数据一点都不丢失那还是直接换FPGA或者DSP吧,在快的单片机估计都不能满足你的要求

出0入0汤圆

发表于 2012-12-8 00:21:24 | 显示全部楼层
进来的速率比出去的速率快,用多大的缓冲都没用的,早晚会满。系统设计有问题。要么降低采样速率,要么提高读出速率,读出速率既然靠CPU控制,那么就得把CPU处理能力提高。或者在FPGA里面做个数据压缩处理。但总的原则是:进来的要比出去的慢。

出0入0汤圆

发表于 2012-12-8 00:43:53 | 显示全部楼层
无意中发现,10楼的头像,很有内涵,可以太模糊

出0入17汤圆

发表于 2012-12-8 08:06:13 | 显示全部楼层
想想单片机串口是如何操作的吧,道理都是一样的。
1.buffer的大小(高速设备一次最大数据长度)
2.高速设备发送一串数据要有时间间隔,使低速设备将数据取走

不满足的话,覆盖就覆盖吧,系统已经不稳定了。

出0入0汤圆

 楼主| 发表于 2012-12-8 10:02:10 | 显示全部楼层
NJ8888 发表于 2012-12-7 22:14
你采集多块?

我采集大概200Khz, 读取200HZ

出0入0汤圆

 楼主| 发表于 2012-12-8 10:04:00 | 显示全部楼层
Fourier00 发表于 2012-12-7 21:37
一定要所有的数据都要保存下来吗?

就比如采集一个正弦波,如果不把数据都保存下来,那不是最后还原的时候缺了一坨吗?

出0入0汤圆

发表于 2012-12-8 10:22:33 | 显示全部楼层
fk2011 发表于 2012-12-8 10:02
我采集大概200Khz, 读取200HZ


200K每秒不快,你用SDRAM存储,32MB可以存160秒,应当够了吧
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-10-3 21:27

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表