优化 FPGA HLS 设计

发布时间:2024-12-13  

优化 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)。它还应该编译设计,并且应该在控制台中看到实际的时序详细信息。完成后,在/solution/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 源代码进行任何更改即可实现的。

更高水平的性能

要达到更高的性能水平,需要在所有方面进行优化——架构设计、代码和工具。工具设置探索可以克服更高级别设计的性能权衡,而不会失去它首先带来的生产力优势。这对于高级设计师来说是双赢。


文章来源于:21IC    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    4 四、人、物、场地优化组合的生产现场组织结构设计 5 第二节 生产现场岗位职责说明 6 一、车间......
    新员工上岗技能培训。• 装配流程透明化和可追溯:自动获取并储存与装配相关的信息和数据,为持续改善工艺提供数据支撑。• 柔性化:数字化作业指导能提高柔性化,通过系统和常用生产工具的互联,将大......
    流程标准化,简化新员工上岗技能培训。 装配流程透明化和可追溯:自动获取并储存与装配相关的信息和数据,为持续改善工艺提供数据支撑。 柔性化:数字化作业指导能提高柔性化,通过系统和常用生产工具的互联,将大......
    标准不一。不仅如此,随着中国人口的老龄化和劳动力成本的不断攀升, 各行各业都出现了“用工荒”的现象,尤其是重复、枯燥流水化作业的人工质检岗位。 相比于人工质检,AI质检优势明显,能有......
    小车运行动态、是否到位装载货物等信息,让整个AGV系统运转更高效。通过5G+MEC结合定位、AI等技术实现货物灵活运输,降低物流成本,提高运输效率。 5G+AR数字化作业:在现场三维场景中基于3D图形......
    机器人与人的协作,可以优化人机工程,减少工作负荷,提高装配质量,最终提升自身竞争力。 协作机器人在航空制造中的协同 航空制造无论制造技术还是生产组织方面都是非常复杂的过程,在现有工艺和技术条件下要实现完全的自动化作业......
    括对工作场所的布局、机器设备的摆放以及作业组的分工进行重新调整,以优化物流线、减少等待时间和提高生产效率。 Simplify(简化......
    已实现典型应用场景的全覆盖;网关现有芯片和生产工艺,网关量产水平已控制在总体非常低的水平。智能车联网,低空经济等为国家中点发展产业。随着智能驾驶和特殊化作业场景的拓展,该产......
    新思维和高效施工应对各种困难。在五凌电力能发公司及公司领导层的通力合作下,项目团队灵活调整施工方案,优化作业流程,确保了工程质量和安全,并最大限度地缩短了工期。 ▲ 新安装的光伏车棚,实用......
    如此,随着中国人口的老龄化和劳动力成本的不断攀升,各行各业都出现了“用工荒”的现象,尤其是重复、枯燥流水化作业的人工质检岗位。相比于人工质检,AI质检优势明显,能有效降低人力资源成本,实现......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>