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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: soledad_chao

[求助] FIFO ip最后一个数据会在下一个读出周期读出

[复制链接]
发表于 2016-9-23 15:51:35 | 显示全部楼层
读写使能都同步在一个时钟上?不是一个是5M,一个是50M,读之前应该判断一下empty。empty的变化原因应该是最后一个数据“21”还没写进去fifo,读使能就有效了。
发表于 2016-9-23 15:52:22 | 显示全部楼层
http://bbs.eetop.cn/thread-385268-1-1.html
别人遇到相同的问题。
发表于 2016-9-23 15:59:30 | 显示全部楼层
回复 9# soledad_chao


   你看,你这个写了2个数以后,空信号才变成非空,说明写数据可能在入口有寄存器寄存,要不你拉长一下写使能,看出现什么现象?印象中,FIFO深度得是2的n次方啊,10不是啊
 楼主| 发表于 2016-9-23 16:10:04 | 显示全部楼层



    您说的对,FIFO的深度是2的n次方,因为我只需要10个数,所以就这么用了。我是个初学者,也不知道这样用对不对。
 楼主| 发表于 2016-9-23 16:13:06 | 显示全部楼层
回复 11# xxrw2007

是的,我也觉得是这么个问题,改在empty后读使能生效就可以正常读了,我是个初学者,那怎么判断empty呢,我用的是计数器,写使能结束之后开始计数,计数到empty后开始读使能生效。
 楼主| 发表于 2016-9-23 16:16:45 | 显示全部楼层
回复 12# fascinate_lyd98


   是的,我看到了,我现在觉得可能是数据没有完全写入,我就开始读了,所以会出现empty的那个问题。调整之后可以正常读出了。
发表于 2016-9-23 16:48:44 | 显示全部楼层
回复 16# soledad_chao
好了,你明白问题的所在了。读写的时序问题,写有寄存器操作,消耗clk,造成读和写同时操作。
发表于 2016-9-26 15:42:01 | 显示全部楼层
本帖最后由 刘美瑶 于 2016-9-26 15:44 编辑

回复之后才看见帖子第二页问题已经解决了。。所以把答案删除了
发表于 2017-7-24 14:25:59 | 显示全部楼层


回复  fascinate_lyd98

您好,这是放大了的图。
soledad_chao 发表于 2016-9-23 15:33



空指示信号在读时钟域生成,需要将写时钟域的地址同步到读时钟域,同步过程需要耗费几个写时钟周期的时间;
从这个图上可以看到,由于读写时钟相差较大,且读使能启动比较早,在最后一个写入数据的地址还没有完全同步到读时钟域前,在读时钟域,读地址就追上写地址了,因此空指示信号会拉高。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-23 06:32 , Processed in 0.019713 second(s), 7 queries , Gzip On, Redis On.

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