技术文章

可编程异构 SoC 的 HLS 开发是什么?算法工程师快速上手硬件加速

发布 2026年11月11日
/
阅读 1 分钟

传统 FPGA 开发需要硬件描述语言,门槛高,算法工程师很难直接参与硬件加速开发,算法写好之后,交给硬件工程师转 Verilog,沟通成本高、迭代慢。而 HLS(高层次综合),就是可编程异构 SoC 生态里,打通算法和硬件的核心工具,也是现在主流开发方式。

 

 

简单来说,HLS 支持用 C、C++、SystemC 编写算法代码,综合工具自动把代码转换成 FPGA 可编程逻辑(RTL),自动生成流水线、并行架构、AXI 接口,对接 PS 处理器。算法工程师不用精通 Verilog,就可以把图像滤波、矩阵运算、FFT、AI 预处理这类算法,直接编译成硬件加速模块,放到 PL 侧并行运行,大幅降低异构 SoC 开发门槛。

但是 HLS 不是 “写 C 代码就自动变高性能硬件”,写法直接决定加速效果。想要拿到低延迟、高吞吐的流水线,需要做数组分块、流水线指令、循环展开、数据乒乓缓存优化;如果直接串行 C 代码综合,生成的硬件资源占用高、吞吐差,甚至还不如软件跑在 ARM 上。

落地案例:某 3D 视觉厂商,深度图匹配算法原本在 ARM 上跑,单帧耗时 120ms;算法工程师使用 HLS 重构核心匹配循环,做循环展开、乒乓缓存,综合之后放到 Zynq PL 侧,硬件流水线并行计算,单帧耗时下降到 18ms,资源占用可控,不需要硬件工程师重写 RTL,算法迭代周期缩短一半。

HLS 适合:图像预处理、信号滤波、矩阵运算、固定流程 AI 预处理;不适合:复杂分支跳转、控制逻辑、异步协议,这类场景还是原生 Verilog 更合适。国产可编程异构 SoC 配套国产 EDA 工具链,也已经支持 HLS 流程,适配国产化项目。

如果你团队有算法人员,想把算法迁移到可编程异构 SoC 硬件加速,需要 HLS 优化案例、模板、性能调优指导,可以联系我们,提供 HLS 技术支持,快速完成算法硬件化落地。

更多推荐