面向 OpenCL™ 软件技术的英特尔® FPGA SDK

概述

面向 OpenCL™ 软件技术的英特尔® FPGA SDK1 是一流的开发环境,支持软件开发人员提升其应用在使用英特尔 CPU 和 FPGA 构建的异构平台上的运行速度。该环境将英特尔的先进软件开发框架和编译器技术与新的革命性英特尔® Quartus® Prime 软件相结合,提供了新一代开发环境,在隐藏 FPGA 细节的同时实现了工作优化。面向 OpenCL™ 软件技术的英特尔® FPGA SDK 支持您充分利用 FPGA 的独特功能提升性能,从而实现高能效和低延迟。

特性

19.3 版本的新特性

面向 OpenCL­™ 软件技术的英特尔® FPGA SDK v19.3 提供了关键增强特性,有助于提高性能和工作效率。

满足性能要求

  • 引入 hls_float 编译指示,允许用户为具有特定精度要求的应用程序创建自定义的浮点类型
  • 对现有内存属性的改进
    • 新的 max_replicates 属性提供对内存系统复制的直接控制,以支持多个负载端口
    • 新的 max_private_copies 属性提供对内存系统私有副本的直接控制,并替换了 v19.1 中引入的 max_concurrency 属性

直观的设计环境

引入新的“计划查看器”报告。此报告显示了数据路径中所有操作的计划、其相对调度和各自的延迟。使用计划查看器,用户可以迭代其设计,以实现更好的延迟和吞吐量。有关计划查看器的详细信息,请参阅面向 OpenCL™ 软件技术的英特尔® FPGA SDK 优化指南。

减少开发工作量

  • 引入了库创建工具,为英特尔® HLS 编译器和面向 OpenCL™ 软件技术的英特尔® FPGA SDK 构建库。有了这个工具,开发人员可以创建优化的 C 或 RTL 库,这些库可以在不知道底层硬件设计或实现详细信息的情况下重复使用 要了解有关如何使用库创建工具的详细信息,请参阅面向 OpenCL™ 软件技术的英特尔® FPGA SDK 编程指南。
  • 增强了编译器在 DSP 模块中推断点积打包的能力。此自动推断的结果可在区域和系统查看器报告中看到。

入门

常见问题解答

OpenCL™ 标准是首个开放式、统一的免费编程模型,能够在异构系统上加快算法速度。OpenCL™ 应用程序支持在不同的平台(如 CPU、GPU 和 FPGA)上使用基于 C 语言的编程语言开发代码。OpenCL™ 应用程序的主要优势在于它是一个可移植的开放式免费标准,这是它与专用编程模型相比的一个关键优势。对于软件工程师而言,OpenCL™ 标准是一个编程模型,而对于系统架构师而言,则是一种方法。它基于标准 ANSI C (C99) 及扩展来提取并行度。此外,OpenCL™ 平台还包括一个应用编程接口 (API),支持主机与硬件加速器进行通信(一般通过 PCI Express*)或内核之间进行通信,而无需主机交互。面向 OpenCL™ 的英特尔 FPGA SDK 提供了一个厂商扩展、一个 I/O 及一个主机通道 API,能够通过数据流 I/O 接口(如 10 GB 以太网)直接将数据传输至内核。

为了在面向 OpenCL™ 软件技术的英特尔® FPGA SDK 中创建与运行应用,您需要使用英特尔或合作伙伴提供的 BSP 或创建您自己的 BSP(请访问“入门”部分的链接)。板级支持包 (BSP) 是一组库和驱动程序,它们组成了应用软件堆栈的最低层。您的软件应用必须连接或运行于指定软件平台之上。

如欲查找参考 BSP,请参见“入门”部分。

以下开发套件具有可用的 BSP:

  • 英特尔® Stratix® 10 GX
  • Stratix® V
  • 英特尔® Arria® 10 SoC
  • 英特尔® Arria® 10 GX

文档和支持


查找面向 OpenCL™ 软件技术的英特尔® FPGA SDK 的技术文档、视频和培训课程。

产品和性能信息

1

OpenCL 和 OpenCL 标志是 Apple Inc. 经 Khronos 许可使用的商标。