你真的理解异步FIFO读写中的空满现象吗?

一、前言
我们的都知道FIFO中有两个特别重要的信号,那就是空满信号。在异步FIFO中,空满信号的判断要比同步FIFO稍微复杂一些,因为它的地址使用的是格雷码。具体如何判断空满可以参考之前的一篇文章:手写异步FIFO。
看完之后可能你会觉得也没那么复杂,其实如果只是单纯的写一个异步FIFO,那么会按照文章中介绍的方法进行判断就够了。但是这里面还有一些问题需要注意:那就是假空和假满现象,以及为什么要在写时钟域进行判满操作,在读时钟域进行判空操作。
二、假空假满现象
无论是wclk和rclk谁快谁慢,都可能产生假空假满现象,但是情况稍有不同,因此下面我们分两种情况进行讨论。需要注意的是,之所以会产生假空假满现象,主要是因为wptr和rptr的同步问题导致的。因为无论是将wptr同步到rclk时钟域还是将rptr同步到wclk时钟域都有一定的延迟。
1、假设wclk比rclk快

假满现象:当wclk比

你真的理解异步FIFO读写中的空满现象吗?最先出现在Python成神之路

版权声明:
作者:lichengxin
链接:https://www.techfm.club/p/9943.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>