微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 关于例化Altera FIFO占用RAM资源的问题。

关于例化Altera FIFO占用RAM资源的问题。

时间:10-02 整理:3721RD 点击:
FPGA使用的是StratixII GX,RAM资源有M512(32*18bits)、M4K(128*36bits)和M-RAM(4K*144bits)3种。
我例化一个64*48的FIFO占用2个M4K;
例化一个128*48的FIFO占用2个M4K;
以上情况我能理解,因为1个M4K的位宽不够,所以要拼起来才能实现48bit位宽的FIFO。
但是我例化一个256*48bits的FIFO占用3个M4K,不是4个;
例化一个512*48bits的FIFO占用6个M4K,不是8个;
我想明白占3个、6个M4K是怎么实现256*48bits和512*48bits的FIFO的。

高手指点啊,谢谢!

没人顶 偶自己顶一个

不是很懂的

GAO SHEN

我这样看这个问题的。首先,M4K的大小是4608bits,有以下几种位宽配置方式:
4K × 1
2K × 2
1K × 4
512 × 8
512 × 9
256 × 16
256 × 18
128 × 32
128 × 36
对于64*48FIFO,由于在上面的列表中没有可以用一个RAM实现48 bits位宽的,所以至少用两个RAM,例如,可以选择两个128x32。
对于128*48FIFO,都占用了2个M4K,FIFO大小为6144bits,显然用一个M4K不够,所以必须用两块,也可以选择两个128x32。
但是对于256*48FIFO,三个M4K的容量刚刚足够其大小(4608*3 〉256*48),并且用三块M4K也能配置出48bits的位宽,所以根据尽量使用最少资源的原则,当然应该选三块。例如,三个256x16。512x48当然就是六个M4K组成的了。
这些都是我的分析,没有用quartus生成RAM来看,你可以自己看生成的ram.v中实例化altsynram文件的参数。

不懂,学习了..

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

网站地图

Top