数据流最优化 - 2022.1 简体中文

Vitis 统一软件平台文档 应用加速开发 (UG1393)

Document ID
UG1393
Release Date
2022-05-25
Version
2022.1 简体中文

数据流最优化是一种强大的技巧,它可通过支持内核内部的任务级流水打拍和并行化来提升内核性能。它允许 v++ 编译器通过并发调度内核的多个函数,来提升吞吐量并降低时延。这也称为任务级并行化。为此,您需要了解正确编写软件的最佳实践,以确保在 FPGA 上正常执行软件,如 Vitis HLS 用户指南(UG1399) 中的吞吐量最优化 中所述。

下图显示了数据流流水打拍的概念视图。默认行为是先执行并完成 func_A,然后执行并完成 func_B,最后执行并完成 func_C。启用 pragma HLS dataflow 后,编译器即可将每个函数调度为数据可用后立即执行。在此示例中,原始 top 函数的时延和时间间隔为 8 个时钟周期。借助数据流最优化,时间间隔缩短到仅 3 个时钟周期。

图 1. 数据流最优化