AMD Versal™ AI Engine 助力释放 DSP 算力

Versal AI Engine 技术全面赋能,满足高性能数字信号处理 (DSP) 需求。

如果客户要处理新一代 DSP 应用,就需要强大的算力;而传统 FPGA 架构无法有效满足这一需求。FIR、FFT 和通用矩阵乘法等计算密集型 DSP 应用需要使用大量 DSP 块和可编程逻辑资源。

这一需求可能会大幅消耗传统可编程逻辑器件上可用的总体算力。从可扩展性角度而言,对于具有严苛功耗预算要求的密集型 DSP 工作负载,仅单纯增加可用的 DSP 块和可编程逻辑资源并不是行之有效的解决方案。

Versal AI Engine 经过精心设计,能够针对这种情况提供更加高效的算力解决方案。

详细了解 Versal AI Engine

提算力、降功耗,双管齐下

革新 DSP 设计,充分提升性能。

您是否想要提升效率和可扩展性,以满足新一代高性能 DSP 应用日益增长的算力需求?了解 AMD Versal AI Engine 充分优化 DSP 设计的五种方式。

AI 引擎 DSP 设计流程

针对 AMD Versal™ AI 引擎设计高性能 DSP 功能,可使用 AMD Vitis™ 开发工具完成,也可使用 Vitis Model Composer 流程完成,充分发挥 MathWorks Simulink® 工具的仿真及图形功能优势。 

在任何一种情况下,无论是将 DSP 应用映射到在 FPGA 或 AI 引擎中要实现的功能中,还是将其映射到 FPGA 逻辑和 AI 引擎的组合中,都至关重要。这需要了解器件功能以及整个系统。 

通常,计算密集型功能更适合 AI 引擎执行,而需要数据移动/重新排序的功能则更适合 FPGA 执行。 

在下面所示的示例中,复杂的滤波和傅立叶变换通常更适合 AI 引擎阵列。

图像缩放
AMD Vitis AI Engine array chart

一旦功能被明确确定为适合 AI 引擎,就可使用以下任何一种选项将其实施在 AI 引擎中。

注意:使用以下列表中的多个选项的混合方法也是可行的。 

编程环境

Vitis 平台提供两种编程环境,支持利用 DSP 库、API 和内部函数 

使用 C/C++ 构建

Vitis 平台提供多个开源构建块,支持常用 DSP 算法、函数和器件图表。您可以按原样使用它们以加速测试,也可以根据需求进行自定义。

C/C++ 流程

要开始使用 AI 引擎加速 DSP,强烈建议从 Vitis DSP 库函数(基于 C 语言)入手。虽然手动编码可确保更好地实现功能,但下述方法是使用 AI 引擎加速 DSP 的最快捷途径,同时也可带来超高性能。(下面列出了多种方法,您也可以结合使用不同的方法)

选项 1
Vitis DSP 库函数调用


dsplib::fft::dit1ch::fft_ifft_dit_1ch
 

  • 简单易用
  • 可参数化
  • 极快的开发
选项 2
使用 AI 引擎 API 实现矢量化编程

aie::vector<int8_t, sizeTileA> A0 

aie::vector<int8_t, sizeTileA> A1
 

  • 可定制
  • 加快开发
选项 3
带内部函数的矢量化编程

Acc0 = mac16(acc0, Bbuff, 0, 0x00000000, 8, 0x3120, Abuff0, 0, 0xCC884400, 2, 0x3210);​

Acc0 = mac16(acc0, Bbuff, 32, 0x00000000, 8, 0x3120, Abuff0, 0, 0xCC884400, 2, 0x3210); 
 

  • 完全的低层次自定义 
  • 开发极其漫长

不同的 AI 引擎功能随后可使用计算图 C 代码进行互连,该代码是描述多个 AI 引擎单元的网络的 C++ 代码。  

使用 Vitis Model Composer 基于模型的设计流程

此设计工具将开发流程引入 MathWorks MATLAB®/Simulink® 环境,让您可以在该环境中生成 Versal AI Engine 所需的内核、集成可编程逻辑模块以及进行系统仿真。

Vitis Model Composer 流程

使用 Vitis Model Composer,可在不同 AI 引擎功能之间实现图形互连。该图形表示可通过 Vitis Model Composer 将按钮转换成计算图 C 代码。还可利用 MathWorks Simulink 环境的强大仿真功能验证设计。

要了解有关使用 Vitis Model Composer 开发 Versal AI Engine 的更多信息,请访问使用 Vitis Model Composer 开发 Versal AI Engine 页面

AI 引擎工具许可

编译器和仿真器

虽然 AI 引擎编译器和仿真器工具是 AMD Vitis™ 软件安装程序的一部分,但这些工具仍然需要免费许可才能使用。您可以从产品许可站点获取此许可证。

输入您的详细信息,然后选择“AI 引擎工具许可证”选项。

Vitis GitHub 设计示例与教程

探索 AMD GitHub,获取面向高性能 DSP 应用中 AI 引擎的出色设计示例、实用教程以及库函数。

所提供的设计均为开源设计,有助于缩短设计周期。

GitHub 中的热门 AI 引擎开发入门资源:

GitHub 上还提供针对硬件 AIEAIE-ML 的设计与功能讲解教程。

聚焦:AI 引擎多相信道化器设计

多相信道化器可采用基于数字信号处理的有效方法,同时对单个数据流中携带的一组频分多路复用 (FDM) 信道进行降频转换。信道化器在许多无线通信、雷达、航空航天以及医疗成像系统中十分普及。在本教程中,我们在 AMD Versal™ 自适应 SoC 器件中使用 AI 引擎和可编程逻辑 (PL) 资源的组合执行两种不同的信道化器设计。 

了解 Versal AI Engine 与传统可编程逻辑技术的基准测试结果对比情况

如需直接比较仅使用可编程逻辑设计与使用 AMD Versal 自适应 SoC 和 AI Engine 的新一代设计的基准测试结果,请联系销售或 FAE 以获取基准测试结果和源设计。

资源

AMD Versal AI Engine 设计流程

研讨会