通过 OpenCL 库功能,可以将使用寄存器传输级 (RTL) 语言(例如 VHDL 和 Verilog)编写的模块包含到 OpenCL 内核中。一个或多个此类 RTL 模块被打包成一个“OpenCL 库”对象,然后被传递给 aoc,就好像它是一个软件库一样。有关 OpenCL 库功能的更多信息,请参阅英特尔® FPGA SDK for OpenCL 编程指南。
此处提供两个示例。第一个包含不访问外部存储器的 RTL 内核。这是创建 OpenCL 库组件的首选方式,因为比需要直接与外部存储器通信的模块更易于设计和调试。
第二个示例包含一个 RTL 模块,该模块需要 Avalon® 内存映射接口来直接访问 DDR。
下载
该设计示例提供 OpenCL 设备 (.cl) 和主机应用程序的源代码。为了编译主机应用程序,Linux* 包包含一个 Makefile,Windows 包包含一个 Microsoft Visual Studio 2010 项目。
本示例提供以下下载:
- 示例 1:v17.1 x64 Linux 包 (.tar.gz)
- 示例 1:v17.1 x64 Windows 包 (.zip)
- 示例 2:v16.1 x64 Linux 包 (.tgz)
- 示例 2:v16.1 x64 Windows 包 (.zip)
该设计的使用受英特尔® 设计示例许可协议中条款和条件的管理和约束。
软件和硬件要求
此设计示例需要以下工具:
- 英特尔 FPGA 软件 v16.1 或更高版本
- 英特尔 FPGA SDK for OpenCL1 v16.1 或更高版本
- Linux:GNU Make 和 gcc
- Windows:Microsoft* Visual Studio 2010
要下载英特尔 FPGA 工具,请访问 OpenCL 下载页面。对底层操作系统的要求与英特尔 FPGA SDK for OpenCL 的要求相同。
该设计的使用受英特尔设计示例许可协议中条款和条件的管理和约束。
OpenCL 和 OpenCL 标识是苹果公司的商标,需获得 Khronos 的许可方能使用。