PYNQ框架下用Python编程FPGA不是梦-Vitis HLS前端开源

本文转载自: PYNQ开源社区微信公众号

目前,虽然基于C/C++等高层次综合相较于手写RTL层级HDL语言已大幅提升了开发效率,但随着相关技术的不断进步,以及算法迭代的日益频繁,人们似乎并不满足于此。

不少刚刚接触到Pynq的用户第一个问号

Pynq是不是用Python编程FPGA的新物种?

在Pynq的FAQ中,我们强调的第一个重点就是PYNQ是一个开源框架而不是一个直接用Python编程FPGA的工具。但是,在不远的将来,我们也许就要修改这条FAQ了。

因为在2月28日,Vitis HLS工具前端开源了!!!

这是Xilinx的开源战略和承诺的一部分,通过Vitis HLS工具链前端开源可以

  • Add support for new high-level languages beyond C/C++ and OpenCL
  • Add new domain-specific optimization pragmas or compiler directives
  • Customize the transformations to the LLVMIR (new LLVM passes)
  • 这意味着,软硬件开发人员可以灵活地使用标准的 Clang / LLVM 基础架构,支持自由扩展,也可以定制高层次综合 (HLS) 编译过程的前端。

    例如,自定义语言支持和全新特定于应用的编译器指令,以及更多的可能性。

    研究人员早就在开始探索增加Python高层次综合。例如2019年,Themefisher和康奈尔大学联合推出了HeteroCL。

    HeteroCL是一种编程基础结构,由基于Python的域特定语言(DSL)和编译流程组成,其编译器在CPU上生成LLVM代码.

    因此可通过结合最新的HLS优化(例如用于脉动阵列的PolySA和用于模板的SODA与数据流体系结构),产生高效的空间体系结构。

    将来要发生的事情,大家应该都有自己的想象空间了。

    感兴趣者可与 pynq_china@xilinx.com 联系,共同合作拓展项目。

    最新文章