微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 当写和读资料宽度不一样时,异步fifo深度如何去评估

当写和读资料宽度不一样时,异步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个深度。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top