前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vivado综合属性:RAM_STYLE和ROM_STYLE

Vivado综合属性:RAM_STYLE和ROM_STYLE

作者头像
Lauren的FPGA
发布2019-10-31 00:37:52
6.9K0
发布2019-10-31 00:37:52
举报
文章被收录于专栏:Lauren的FPGA

在Xilinx FPGA中既可以采用分布式资源(查找表)也可以采用BRAM实现存储单元。对于手工编写的HDL代码所描述的RAM,在默认情况下,Vivado会通过内部算法给出最优结果。此外,也可以通过ram_style指导工具推断RAM的实现方式。该属性有4个值:block(将RAM映射为Block RAM)、distributed(将RAM映射为分布式资源)、registers(指导工具推断为寄存器而非RAM)和ultra(将RAM映射为UltraRAM,针对UltraScale Plus芯片)。

对于如下图所示的RAM,如果ram_style为distributed,则消耗267个LUT和16个FF;如果ram_style为Block,则消耗1个18Kb的Block RAM。

相对于使用IP,手工编写HDL代码的好处在于便于移植,同时,由于可以使用ram_style,可以灵活地根据设计需求将RAM采用不同的资源实现。例如,当RAM小于10K bit时,分布式RAM在功耗和速度上更有优势;当设计中LUT利用率很高时,如果Block RAM资源利用率不高,可以把分布式RAM转换为Block RAM,从而释放出一部分LUT资源。

类似地,rom_style则是引导综合工具将ROM采用不同的资源实现。其可选值有两个:block和distributed。这是因为UltraRAM不能用做ROM。

结论

-ram_style和rom_style都可将存储单元映射为BlockRAM或分布式RAM

-手工编写HDL代码的优势在于结合ram_style/rom_style可灵活地将RAM或ROM根据设计需求映射为不同的资源

-对于UltraRAM,不建议采用手工编写HDL代码的方式,最好使用XPM_MEMORY

上期内容:

Vivado综合属性:USE_DSP

下期内容:

本周回顾 -- 2018/03/16

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-03-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Lauren的FPGA 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档