各类新型架构的类脑计算芯片正不断涌现,类脑神经网络训练/学习算法和高效的生物神经网络仿真也是研究热点。但如何在架构迥异的类脑计算芯片上优化运行计算/访存特征不同的类脑应用是关键难点,也是建立类脑计算良好生态环境的重点,而通用计算领域的繁荣生态已经表明,一个灵活、可扩展、可复用的编译框架是解决这一问题的有效途径。为此提出 BIVM, 一个类脑计算编译框架及其验证原型。BIVM 基于领域定制化体系结构 (domain specific architecture, DSA) 的多层中间表示 (multi-level intermediate representation, MLIR) 框架,设计了为类脑神经网络定制的多层 IR, 包括脉冲神经网络方言 (高层 IR)、由 MLIR 内置方言为主组成的中间层 IR 和各类芯片的底层 IR. 针对不同类脑芯片的体系结构跨度很大且其提供的硬件功能粒度不一等问题,BIVM 充分利用 MLIR 的 progressivity 特性,所设计的 IR 能够混合不同的抽象层次和概念 (比如混合细粒度指令与某些后端的以交叉开关结构为运算主体的粗粒度运算), 从而能够复用软件模块、简化开发; 在此基础上,在多层 IR 的递降转换中灵活组合不同级别的编译优化方法,包括被广泛采纳的 SNN 特定优化技术 (如计算稀疏性挖掘与时空并行度挖掘) 和适配目标硬件的底层优化技术,以实现不同后端上的高性能。目前,BIVM 原型支持的后端有通用处理器 (控制流架构)、具有控制流/数据流混合架构的脉冲神经网络加速芯片 (FPGA), 以及基于 ReRAM (resistive random-access memory, 阻变存储器) 的数据流架构类脑芯片 (软件仿真), 能够将智能应用与生物神经网络仿真应用优化编译为适配不同架构芯片的执行程序。随后,进行编译技术适配性分析与性能比较,结果表明该类框架在编译高生产力、高可移植性、高性能方面具有良好潜力。