vivado综合分析与收敛技巧2

news2025/4/8 20:33:50
1、分解深层存储器配置 实现功耗与性能平衡
在深层存储器配置中 可使用综合属性 RAM_DECOMP 实现更好的存储器分解并降低功耗。此属性可在 RTL 中设置。将RAM_DECOMP 属性应用于存储器时 存储器是在较宽的原语配置中设置的 而不是在较深且较窄的配置中设置的。
CASCADE_HEIGHT 属性与 RAM_DECOMP 属性搭配使用时 综合推断对级联具有更细化的控制权 因此可实现平衡的功耗与性能。此方法需要额外的地址解码逻辑, 但可减少任意时间点访问的块 RAM 数量 这有助于降低功耗。下图中的存储器配置 (32 × 16K) 显示了设置 RAM_DECOMP CASCADE_HEIGHT 属性时分解存储器的方式示例。
如果应用属性 RAM_DECOMP = power CASCADE_HEIGHT = 4 那么将按下图所示方式推断 16 RAMB36E2 并对存储器进行分解。
此处使用的基本原语为 32 × 1K 4 个块 RAM 通过内置功能进行级联 组成 32 × 4K 配置。 4 个此类并行结构可创建1 个深度为 16K 的存储器。输出通过多路复用来生成输出数据。
如果仅应用 RAM_DECOMP = power 属性 则将按下图所示方式推断 16 RAMB36E2 并对存储器进行分解。
此处使用的基本原语为 32 × 1K 8 个块 RAM 通过内置功能进行级联 组成 32 × 8K 配置。 2 个此类并行结构可创建1 个深度为 16K 的存储器。输出通过多路复用来生成输出数据。多路复用器为 2:1 MUX
2、当存储器深度不为 2 的幂时 优化 RAMB 使用率
以下测试案例可用于观察由综合工具生成的 log 日志文件 了解是否可通过改进 RTL 来帮助工具改进。以下代码片段显示了 VHDL 中深度 40K 宽度为 36 位的存储器描述。地址总线需占 16 位。
通过使用 report_utilization 命令 可以看到综合工具生成 72 个块 RAM 如下图所示。
如计算针对 40K x 36 配置应推断的块 RAM 数量 所得到的块 RAM 数量将少于综合工具所生成的数量。
以下显示了此存储器配置的手动计算过程
40K x 36 可细分为 2 个存储器 (32K x 36) (8K x 36)
• 需使用基于 MSB 地址位的地址解码器来支持其中一个存储器执行读写操作 并选择正确的输出数据。
32K x 36 存储器可通过 32 RAMB 实现 4 * 8 * (4K x 9)
8K x 36 存储器可通过 8 RAMB 实现 8 * (1K x 36)
• 总计需要 40 RAMB 才能以最优化方式实现 40K x 36 存储器。
为验证是否已推断出 RAMB 的最优数量 综合 log 日志文件包含 1 个会话 其中详列了每个存储器的配置方式及其映 射到 FPGA 原语的方式。如下图所示 存储器深度作为 64K 来处理 这表明深度不等于 2 的幂次方时 无法以最优化方式来加以处理。
综合工具使用的是 64K x 1 2 个具有级联功能的块 RAM ), 36 个此类结构 因为 36 位数据 。因此总计有 36 x 2 =72 个块 RAM 。下图显示的代码片段用于强制综合推断 RAMB 的最优数量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1267967.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kubernetes(K8s)-Kubernetes介绍-01

Kubernetes介绍 应用部署方式演变 在部署应用程序的方式上,主要经历了三个时代: 传统部署: 互联网早期,会直接将应用程序部署在物理机上 优点:简单,不需要其它技术的参与 缺点:不能为应用程…

现代C++之万能引用、完美转发、引用折叠

现代C之万能引用、完美转发、引用折叠 0.导语1.问题引入2.引入万能引用3.万能引用出现场合4.理解左值与右值4.1 精简版4.2 完整版4.3 生命周期延长4.4 生命周期延长应用5.区分万能引用6.表达式的左右值性与类型无关7.引用折叠和完美转发7.1 引用折叠之本质细节7.2 示例与使用7.…

IO多路复用就这么简单?

通过本文你可学到: 阻塞IO、非阻塞IO的区别、优缺点; IO多路复用的原理,为什么高性能; select原理、优缺点; poll原理、优缺点; epoll原理、优缺点 select、poll、epoll 到底是同步IO还是异步IO? ep…

CSS核心功能手册:从熟悉到精通

CSS核心功能代码 文章目录 CSS核心功能代码[toc]参考HTML代码尺寸操作设置元素尺寸内边距外边距设置默认布局边距用途和使用场景: 背景设置**背景颜色 (background-color)**:**背景图像 (background-image)**:**背景重复 (background-repeat)**:**背景位置 (backgro…

绘制彩色正多边形-第11届蓝桥杯选拔赛Python真题精选

[导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python蓝桥杯真题解析100讲》,这是解读系列的第10讲。 绘制彩色正多边形…

ffmpeg 免安装,配置环境变量

1、下载ffmpeg https://download.csdn.net/download/qq284489030/88579595 2、解压 解压ffmpeg-4.4-essentials_build.zip到目标文件夹,比如 d:\apps下; 3、配置环境变量 (1)电脑桌面鼠标右键点击“此电脑”,弹出…

Abaqus飞机起落架扭力臂拓扑优化

Abaqus飞机起落架扭力臂拓扑优化 Abaqus除了可以对结构进行强度分析,同样也自带强大的优化功能,下面通过一个简 单的实例演示在Abaqus中进行拓扑优化,另外,如果需要更加强大的拓扑优化仿真,可以 在TOSCA中进行。 定义接…

揭秘发布订阅模式:让消息传递更高效

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

Unity中Shader优化通用规则

文章目录 前言一、精度优化1、三种精度 fixed / half / float2、位置坐标、物理坐标类使用float3、HDR颜色、方向向量类使用half4、普通纹理、颜色类使用 fixed5、实际上,使用的精度取决于 平台 和 GPU6、现在桌面级GPU都是直接采用 float , Shader中的 fixed / hal…

【STM32】OLED显示屏

1 调试方式 1. 串口调试:通过串口通信,将调试信息发送到电脑端,电脑使用串口助手显示调试信息 2. 显示屏调试:直接将显示屏连接到单片机,将调试信息打印在显示屏上 3. Keil调试模式:借助Keil软件的调试模…

直接套用的软件详细设计说明书

软件开发全套资料过去进主页!

Libavutil详解:理论与实战

文章目录 前言一、Libavutil 简介二、AVLog 测试1、示例源码2、运行结果 三、AVDictionary 测试1、示例源码2、运行结果 四、ParseUtil 测试1、示例源码2、运行结果 前言 libavutil 是一个实用库,用于辅助多媒体编程,本文记录 libavutil 库学习及 demo 例…

windows电脑、苹果系统和安卓手机日程提醒双向同步如何操作?

在这个信息飞速传递的时代,我们时常需要在不同设备之间同步日程提醒,而对于同时使用Windows电脑、苹果系统和安卓手机的用户来说,这显得尤为重要。今天,我将分享一个简单的操作,让你在它们之间实现日程提醒的双向同步。…

实现电商平台与营销系统无缝集成:雅座的无代码开发与API连接

无代码开发:营销的新引擎 在数字化转型的浪潮中,无代码开发已成为企业提升效率、减少成本的新引擎。这种开发方式允许非技术人员通过图形界面构建应用程序,无需编写代码即可实现复杂功能。这对于营销、广告推广以及用户运营等业务尤为重要&a…

性能测试:深入理解并发量,线程数,吞吐量,TPS

并发数,线程数,吞吐量,每秒事务数(TPS)都是性能测试领域非常关键的数据和指标。 那么他们之间究竟是怎样的一个对应关系和内在联系? 测试时,我们经常容易将线程数等同于表述为并发数&#xff…

出于隐私和安全的考虑,有时需要从谷歌删除你的个人数据,有两种方法

如果你是公众人物、企业或拥有个人品牌的人,那么拥有在线形象很重要。然而,你可能会发现,通过谷歌搜索,陌生人可以获得你的个人信息,如联系方式、地址和财务信息,这会让你感到不安。 幸运的是,…

记 Doris 回归测试S3导入load_parallelism > 1

增加load_parallelism > 1的S3导入用例,测试导入时切分输入文件的逻辑。 这里有几个隐性的问题点(坑): 1、导入的文件一定要大,一般大于128M,否则,即使设置了 load_parallelism > 1 也不…

Linux基础项目开发1:量产工具——输入系统(三)

前言: 前面我们已经实现了显示系统,现在我们来实现输入系统,与显示系统类似,下面让我们一起来对输入系统进行学习搭建吧 目录 一、数据结构抽象 1. 数据本身 2. 设备本身: 3. input_manager.h 二、触摸屏编程 to…

甘草书店记:2023年10月15日 星期日 「等待也是人生的大事」

我常说,最好的人生是刚刚好。 财富不可少,也不必多,够用就好。爱情不要晚,也不要早,恰好就好。 可是人生活在社会中、自然中,不会万事由己。所以,等待是人生的必修课。 书店的装修设计和LOGO…

2023-11-29 LeetCode每日一题(无限集中的最小数字)

2023-11-29每日一题 一、题目编号 2336. 无限集中的最小数字二、题目链接 点击跳转到题目位置 三、题目描述 现有一个包含所有正整数的集合 [1, 2, 3, 4, 5, …] 。 实现 SmallestInfiniteSet 类: SmallestInfiniteSet() 初始化 SmallestInfiniteSet 对象以包…