当写和读资料宽度不一样时,异步fifo深度如何去评估
时间:10-02
整理:3721RD
点击:
当题目给的条件為:
写的频率为40MHZ,读的频率为50MHZ
写的资料宽度为20bits,读的寬度为16bits
fifo深度為?
输入输出吞吐率一样,应该设任何值都可以吧
楼上说的码率一样是一点,但是还得考虑FIFO内部RAM的位宽,写20bits读16bits,那么FIFO内部RAM端口至少是80bits才能完成位宽转换。
如果你是用IP,一般不能设置FIFO写端口20bits读端口16bits的。
如果不够80bit,数据顺序会乱掉
以前都没有想过,FIFO 输入& 输出位宽不一致的情况。
请教一下小编大,
这种情况下,
内部RAM如何处理的,空满标志怎样产生的?

读写速度其实是balance的,都是80Mbps, 所以我们只需要考虑读最多可能达到的深度。
入图,写时钟40MHZ,写地址需要两个读clock(2*2.0ns)传到读时钟域,读一次只拿了16bit 数据,对于写地址来说,第一个地址还不能释放,FIFO深度需要能够保证不overwrite数据.
根据图上的分析,最小深度80bits, 即写地址的4个深度,读的5个深度。
