首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异步FIFO深度计算

异步FIFO深度计算
EN

Stack Overflow用户
提问于 2021-04-18 02:13:21
回答 1查看 613关注 0票数 0

我被要求计算填充一个异步FIFO需要多长时间。例如:假设模块'A‘想要向模块'B’发送一些数据。模块A的工作频率为80 The。模块B的工作频率为50 The。突发长度为120。在读取和写入中都没有空闲周期。FIFO深度是20。填充FIFO需要多长时间?

我知道FIFO的最小深度应该是45。‘写入一个数据项所需的时间=1/80 the =12.5 in写入burst=120*12.5ns=1500ns中的所有数据所需的时间。读取一个数据项所需的时间=1/50 one =20 one。可以在1500 45=1500/20=75的持续时间内读取数据项的数量,剩余的字节数量将存储在FIFO =120-75=45中。但是如果FIFO的深度是20,我如何计算填充FIFO的时间?

问题2:我读了一些材料。如果是连续写入,则FIFO的深度应为无穷大。连续写入和突发写入有什么区别?为什么有限深度的FIFO足以写入脉冲串?

EN

回答 1

Stack Overflow用户

发布于 2021-04-21 23:21:31

假设你一直在两边读写。对于理论上完美的FIFO,只需解以下方程:

代码语言:javascript
复制
80000000*x-50000000*x=20
30000000*x=20
x=20/30000000
x=0.667µs

然而,现实世界中的FIFO具有跨时钟域同步器,这实质上将可用的FIFO深度减少了几个条目。通常2~4个条目是不可用的。您需要检查特定的FIFO,以确切了解时钟域交叉同步导致多少个时钟周期丢失,从而导致FIFO深度丢失。

我不知道在这种情况下你说的“爆发”是什么意思。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67141482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档