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

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜帖子
楼主: lincolnlee

[讨论] verilog 中FIFO 问题

[复制链接]
 楼主| 发表于 2010-9-9 14:22:43 | 显示全部楼层
学习了,请问有FIFO的具体Verilog源码什么的资料吗? 想深入学习一下
回复 支持 反对

使用道具 举报

发表于 2010-9-9 21:16:20 | 显示全部楼层
使用fifo基本原则:满了不能继续写,空了不能继续读!
回复 支持 反对

使用道具 举报

发表于 2010-9-9 21:23:52 | 显示全部楼层
FIFO通常是作为快慢时终域之间突发数据量不匹配的缓冲来使用的,如果两边数据带宽长时间不匹配,一定会导致FIFO空或者满的
回复 支持 反对

使用道具 举报

发表于 2010-9-9 23:30:27 | 显示全部楼层
FIFO设计的难点在于怎样判断FIFO的空/满状态。为了保证数据正确的写入或读出,而不发生溢出或读空的状态出现,必须保证FIFO在满的情况下,不能进行写操作。在空的状态下不能进行读操作。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-9-10 16:41:34 | 显示全部楼层
学习了
回复 支持 反对

使用道具 举报

发表于 2010-9-10 18:37:09 | 显示全部楼层
通常,fifo会有5个状态标志信号:empty, full, overflow, almost_empty, almost_full.
当empty置起后,继续读;以及full置起后,继续写;会有什样的结果,和fifo控制部分的设计方式
有关,有的fifo,当empty后继续读的话,会置起overflow标志,同时读出的会是最后1个地址的数据。
当full置起后继续写的话,overflow也置起,同时会将最后1个地址的数据覆盖掉。
而almost_empty,almost_full则是几乎空、几乎满标志,由fifo设定的快空、快满的阈值是否达到决定,
当这2个几乎空、几乎满置起时,就应该控制读、写了。
回复 支持 反对

使用道具 举报

发表于 2010-9-13 04:17:21 | 显示全部楼层
这要看你设计的需求,如果你不要求无漏采样,当然可以,如果你不想丢失数据可以采用乒乓处理的方式
回复 支持 反对

使用道具 举报

发表于 2010-9-13 15:58:24 | 显示全部楼层
FIFO module has "FULL" and "EMPTY" indicators.
If "FULL" is on means the buffer is full.
If "EMPTY" is on means there is no data available.
回复 支持 反对

使用道具 举报

发表于 2010-9-15 11:02:29 | 显示全部楼层
如果读写的clock频率无法改变了,就把读的位宽加大吧。
回复 支持 反对

使用道具 举报

发表于 2010-9-15 20:05:22 | 显示全部楼层
fifo    一般会有水线的,快满的时候就会反压前面不进行发送
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2025-8-3 14:53 , Processed in 0.017735 second(s), 3 queries , Gzip On, Redis On.

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