近日,2024年现场可编程门阵列国际研讨会(International Symposium on Field-Programmable Gate Arrays,FPGA 2024)于3月3日在美国加州蒙特雷召开,会议长文接收率为22.47%,北京大学集成电路学院/集成电路高精尖创新中心共有2 篇论文在会上发表,成果涵盖新硬件设计与FPGA编程语言,领域特定编译框架等多个方面,相关内容简介如下:
图一博士生郝晓辰
图二博士生肖有为
(一)面向FPGA和GPU性能可移植的统一编程框架
张量计算在深度学习、量子计算等领域得到了广泛应用,且非常适合在FPGA和GPU上实现显著加速。将相同的算子在这两类设备上实现,可以充分发挥它们在能耗、精度、延迟等方面的各自优势。然而,由于这两类设备采用完全不同的编程模型,用户需要分别进行编程和优化,极大限制了具有这两类设备的异构系统的广泛应用。
针对以上问题,北京大学梁云教授团队提出统一编程框架POPA。该框架利用架构抽象实现了同一算子描述的可移植性,然后通过对抽象硬件的专门化处理实现了在不同平台上的高性能。POPA提出了一种硬件抽象,即并行数据流机器,以隐藏具体架构间的差异。该抽象机器由软件定义的脉动阵列和张量内存组成,以同时表征FPGA上的流水线并行性以及GPU上的多线程并行性。POPA通过分别指定用于调度计算和数据传输的数据流图来对抽象机器编程。随后,编译器将抽象机器映射至FPGA和GPU设备,并进行专门化处理,以弥合抽象机器和具体架构之间的差距。该框架首次实现在两类硬件上同时取得>=80%的峰值性能。
该工作以《POPA: Expressing High and Portable Performance across Spatialand Vector Architectures for Tensor Computations》为题发表,由文章第一作者博士生郝晓辰进行宣讲,文章的通讯作者为梁云教授。
(二)周期确定的硬件描述语言加速FPGA硬件设计
现场可编程门阵列(FPGA) 为采用先进微架构技术加速新兴应用提供了机会。然而,现有FPGA硬件设计方法存在不足。一方面,硬件描述语言(HDL)提供通用的表示能力,但其低层次编程模型导致的设计效率低下为人诟病。另一方面,高层次综合(HLS)技术支持通过软件编程完成硬件设计任务以提高设计效率,但综合结果的不可预测性常导致无法实现最优的硬件设计。
针对以上问题,北京大学梁云教授团队提出Cement硬件设计框架,为FPGA硬件编程提供新的解决方案。Cement是嵌入Rust高级编程语言的硬件描述语言,在提供通用的寄存器转移级(RTL)硬件描述功能的基础上,创新性地融合了事件级语言拓展,支持使用过程式语句声明硬件事件的发生周期,同时保证硬件控制逻辑的周期确定性,由编译器分析检查硬件设计的时序行为,并自动综合生成面向FPGA平台优化的控制器实现,提高硬件编程的设计质量与效率。与商业工具AMD Xilinx Vitis HLS相比,Cement使用近似的设计效率实现平均1.41倍的加速比,并节省FPGA硬件资源开销。
该工作以《Cement: Streamlining FPGA Hardware Design with Cycle-Deterministic eHDL and Synthesis》为题发表,由文章第一作者北京大学集成电路学院设计自动化与计算系统系博士生肖有为进行宣讲,文章的通讯作者为梁云教授。
背景链接1:现场可编程门阵列国际研讨会(FPGA)是展示FPGA技术最新进展的顶级学术会议。该会议每年3月在美国加州蒙特雷举行,吸引了来自全球各地的工程师、科学家和产业专家,共同探讨FPGA技术的前沿发展和未来趋势。大会主要关注以下几个领域:FPGA架构、FPGA电路设计、FPGA CAD工具、FPGA应用等。作为业界最具影响力的FPGA学术会议,FPGA见证了诸多里程碑式的FPGA技术创新。历年入选的**表了当年度FPGA领域的全球最高水平,展现出FPGA技术和产业的发展趋势。这一国际盛会不仅是FPGA学术交流的高端平台,更是推动FPGA技术不断创新、助力产业发展的重要驱动力。
背景链接2:北京大学集成电路学院成立了国内唯一聚焦EDA技术的“设计自动化与计算系统系”,打造先进的教学与人才培养体系,并与国内外领先的企业深入合作,部分成果已经成功得到转化应用,相关技术是业内目前唯一的解决方案;近期依托院系新成立了无锡北京大学EDA研究院,加上此前与EDA及设计方向头部企业共建的多个联合实验室,形成了教育、科技和人才三位一体的布局。