FPGA内部资源学习-BRAM资源计算

FPGA内部资源学习-BRAM资源计算

直接观察Vivado BRAM的IP核
在这里插入图片描述

在这里插入图片描述
这里使用的是单端口RAM 位宽32bit,深度10230,资源计算算法是Fixed Primitives ,用的原语是1k x 18,最终的资源消耗如下图所示:
在这里插入图片描述
这里的资源的计算参考 IP核文档PG058 - Block Memory Generator v8.4 Product Guide (PG058) (v8.4)
在这里插入图片描述
可以看到 具体BRAM资源的消耗其实还要取决于选用什么样的算法,这里我们选用的是固定原语,1k x 18
所以资源消耗按照文档所述,应该为 round(10230/1024) * round(32/18),即10 x 2 = 20,即20个1k x18,等同于10个1k x 36 跟最后的summary对应上了。
至于其余算法,低功耗和最小面积,文档中的概述如下:
在这里插入图片描述
其中低功耗的算法稍微复杂,而最小面积的算法可以用固定原语的算法去估计,大部分情况下是准确的,或者仅有一些偏差。
低功耗方法可以按照文档中的算法再算一下:
1、首先我们的位宽是32bit,是要大于原语的18bit的,所以应该用文档中提到的的第二种方法
2、根据第2种方法以及目前我们所使用芯片所提供的原语(芯片不一样原语可能也会不一样),32bit可以由以下几种原语组成:1k x 18 、2k x 9、4k x 4、16k x 1
3、由此便可以计算,1k x 18的原语需要round(10230 / 1k) = 10;2k x 9的原语需要round(10230/2k)=5;4k x 4的原语需要round(10230 / 4k)=3;16k x 1的原语需要round(10230 / 16k)=1;
4、总共需要10+5+3+1 = 19个原语,即消耗19个18k BRAM
最后结果如下图所示:
在这里插入图片描述

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值