找回密码
 注册
关于网站域名变更的通知
查看: 331|回复: 2
打印 上一主题 下一主题

用两块同步FIFO实现一个异步FIFO功能?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-10-31 16:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
也就是说用一个25M频率的FIFO写入数据,用另一个100M(或者不同频)的FIFO读出数据。该如何实现呢?不使用异步FIFO8 S; f3 }9 V& {' y

该用户从未签到

2#
发表于 2022-10-31 17:28 | 只看该作者
这是反常规操作,实际占用资源会更多,属于比较坑的思路。如果只是为了学习无所谓。0 z8 b( ^6 j- W/ G: e. T7 H
//------假定25MHz/100MHz同源(即相位偏差为0,时钟电气参数一致)
8 @+ B2 |5 P% d* ?* a. l5 s( A1.fifo-a工作在25MHz频率用来写入数据,fifo-b工作在100MHz频率用来读出数据;# D, B. k; _0 T
2.理论上讲,fifo-a读出数据持续的有效期是fifo-b工作的四个时钟周期;
2 m% G: `4 X2 [& T, k3.fifo-b的写使能信号为fifo-a的读使能信号上升沿(需要打两拍/三拍/多拍,具体跟fifo-a设置相关)  f. j- G! b* t
4.fifo-b的写数据为写使能信号有效时的fifo-a读出数据。2 U/ @) J- @8 P& M& e
//------备注
& M9 T, ]  z% Z, F1.fifo的写入是同步的(写使能/写数据),但是fifo的读出不是同步的(读使能/读数据)。8 Y6 i# n$ h6 W7 M
2.整体的处理涉及到异步信号的处理(跨时钟域)。
' d8 ^7 W; ]) g( \

该用户从未签到

3#
发表于 2022-10-31 18:16 | 只看该作者
跨时钟域处理,常用打拍或者fifo缓存两种方式。- A- S# a3 V' F6 O; ^: S% a
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-31 18:59 , Processed in 0.109375 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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