在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4768|回复: 11

fifo写满时,产生的数据应放哪?

[复制链接]
发表于 2007-9-18 21:51:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
数据产生模块:实时产生数据

如果fifo写满时,数据产生模块产生的数据怎么办?应该放哪啊?需要写个RAM吗?

fifo中的数据是循环存储的吗?即是不是某个地址的数据被读出后,这个地址就变空了,可以继续向里写数据那?
fifo模块.bmp
 楼主| 发表于 2007-9-19 09:07:40 | 显示全部楼层
知情人  赶紧给支招啊 Please
发表于 2007-9-19 09:07:52 | 显示全部楼层
有几种可能,需要根据需求配置。
 楼主| 发表于 2007-9-19 09:20:21 | 显示全部楼层
能不能具体说一下;
当fifo中某个地址的数据被读出后,那么这个地址是不是可以再次被写入??
发表于 2007-9-19 10:41:51 | 显示全部楼层
建议先理解一下fifo的功能和设计/实现.
fifo的主要目的一般来讲有两个: 数据速率的适配; 时钟的适配.
fifo的容量有有限的, 而且一般来讲都比较小, 容量大的那是缓存/队列, 虽然缓存/队列也可以做成"先进先出"的形式, 但主要目的已经是缓存数据了.
fifo会输出full标志给写端口, empty标志给读端口, 前面的数据产生模块在full信号置位后就应该停止数据发送, 否则fifo会溢出, 数据会丢失, 如果不做这样的处理, 那你认为fifo的容量应该做几GB或TB才能绝对不溢出呢?
外面的模块不需要关心fifo内部的读写地址, 只需要根据full/empty进行正常的写/读操作就行, fifo内部要维护读写地址, 是循环往复的, 数据读出后, 这个地址单位就会被释放, 就可以再写一个新的数据进去了, 但还没有释放的地址单位不能被覆盖. 但fifo有多种设计, 有的fifo的读地址还能回退, 比如MAC half-duplex的重传.
 楼主| 发表于 2007-9-19 14:32:44 | 显示全部楼层
本工程的fifo的目的————数据速率的速配
目前做的工程 数据产生模块是实时产生数据的,如果停止 数据就会丢失。
那么我的设计中,数据产生模块是不是应该一个RAM??
发表于 2007-9-19 14:52:46 | 显示全部楼层
应该根据实际的需要来设计fifo的深度吧
发表于 2007-9-19 17:43:14 | 显示全部楼层
长见识了!谢谢各位了
发表于 2007-10-29 15:51:30 | 显示全部楼层
看一下 ,瞧一下!
发表于 2007-10-30 09:17:58 | 显示全部楼层
你可以使用双时钟,可以控制数据量,保证不被溢出。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-5 17:03 , Processed in 0.037748 second(s), 12 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表