FPGA|CPLD|ASIC论坛
登录
直播中
FPGA技术江湖
3年用户
689经验值
私信
关注
[经验]
优化 FPGA HLS 设计
FPGA
优化
FPGA
HLS 设计
用工具用 C 生成 RTL 的代码基本不可读。以下是如何在不更改任何 RTL 的情况下提高设计性能。
介绍
高级设计能够以简洁的方式捕获设计,从而减少错误并更容易调试。然而,经常出现的问题是性能权衡。在高度复杂的 FPGA 设计中实现高性能需要手动优化 RTL 代码,而这对于HLS开发环境生成的 RTL 代码来说是不可能的。然而,存在一些解决方案,可以通过使用 FPGA 工具设置优化设计本身来最大限度地减少性能损失。
高效找到正确的FPGA工具设置
尽管设计人员知道 FPGA 工具设置的存在,但这些设置往往没有得到充分利用。通常,只有在出现设计问题时才使用工具设置。然而,对于已达到性能目标的设计,还有额外10% 至 50% 性能改进的巨大潜力。
上面的核心问题在于选择正确的工具设置,因为不同的 FPGA 工具提供 30 到 70 种用于综合和布局布线的设置。可能的组合太多了。可以编写脚本来创建不同的运行并尝试推荐的标准指令/策略。
最后一个挑战问题是计算能力不足。典型的嵌入式应用程序是在单台计算机上设计的。运行多个编译需要更多的计算能力。这是与时间的权衡。如果可以同时运行更多(使用云)综合策略,周转时间将会更短。
如何优化高级设计-Sobel 滤波器
Sobel 滤波器是视频处理中常用的参考设计。该参考设计针对具有 Dual ARM® Cortex®-A9 MPCore™ 的 FPGA。
我们使用 Xilinx HLS 工具来打开此设计。
它的时钟周期为 5.00 ns,即 200 MHz。从时序估计(见下文)来看,它仍然缺少 506 ps 的时序,这相当于 181 MHz,比目标速度低 10%。
导出到RTL项目
在不更改 C++ 代码的情况下,将设计导出到 RTL 中的 Vivado 项目中。在“解决方案”下,选择“导出 RTL”。
它将在后台执行 Vivado 并生成项目文件 (XPR)。它还应该编译设计,并且应该在控制台中看到实际的时序详细信息。完成后,在/solu
ti
on/impl/verilog/文件夹中找到项目文件。
找到一个 XPR 文件。可以通过Vivado打开它来验证它,可以看到生成的RTL源码。
优化时序
下一步是使用名为InTime 的设计探索工具(
https://www.plunify.com/en/free-evaluation/
)。(同样,可以自己编写脚本来尝试 Vivado 工具中提供的标准指令或策略)可以使用免费评估许可证在本地运行 InTime 。或者,使用一些免费积分和预装 FPGA 工具注册 Plunify云帐户。
启动InTime后,打开项目文件。当提示要使用的 Vivado 版本时,请使用“相同”的 Vivado 版本。例如,如果使用2017.3 HLS,请使用2017.3 Vivado。
选择“热启动”。“热启动”是基于之前其他设计经验的推荐策略列表。
单击“Start Recipe”开始优化。如果在云上运行,则应同时运行多个编译以减少时间。
优化过程和结果
在第一轮(“热启动”)之后,最好的结果是“hotstart_1”策略。然而,它仍然缺少-90ps 的时序。
我们对“HotStart_1”的结果应用了名为“Extra Opt Exploration”的第二个秘诀。这侧重于优化关键路径。这是一种迭代优化,只要每次迭代都显示出改进,就会不断重复。如果达到时间目标或未能显示出改进,它最终将自动停止。
经过两轮优化,共15次编译,该设计能够满足200Mhz的性能目标。这是无需对 RTL 源代码进行任何更改即可实现的。
更高水平的性能
要达到更高的性能水平,需要在所有方面进行优化——架构设计、代码和工具。工具设置探索可以克服更高级别设计的性能权衡,而不会失去它首先带来的生产力优势。这对于高级设计师来说是双赢。
更多回帖
rotate(-90deg);
回复
相关帖子
FPGA
如何
优化
FPGA
HLS
设计呢?
867
优化
FPGA
HLS
设计
570
利用
FPGA
工具设置
优化
FPGA
HLS
设计
1509
关于
优化
FPGA
HLS
设计的分析和介绍
396
如何在不改变RTL代码的情况下,
优化
FPGA
HLS
设计
1647
FPGA
并行编程:基于
HLS
技术
优化
硬件设计
2876
HLS
for循环
优化
624
FPGA
——
HLS
简介
4281
FPGA
基础之
HLS
4460
FPGA
设计中的
HLS
工具应用
7312
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分