一种可重构模拟存算一体乘累加阵列的制作方法

摘要: 本发明属于模拟集成电路与ai硬件加速器,具体涉及一种可重构模拟存算一体乘累加阵列。背景技术:1、近年来,以深度学习为代表的人工智能技术取得了突破性进展,神经网络...
一种可重构模拟存算一体乘累加阵列的制作方法

本发明属于模拟集成电路与ai硬件加速器,具体涉及一种可重构模拟存算一体乘累加阵列。

背景技术:

1、近年来,以深度学习为代表的人工智能技术取得了突破性进展,神经网络模型的计算量和参数量呈指数级增长。传统的冯·诺依曼计算架构中,数据存储单元与计算单元物理分离,大量数据在存储器与计算单元之间频繁搬运,产生严重的“存储墙”和“功耗墙”问题,已成为制约ai硬件性能提升的核心瓶颈。存算一体(computing-in-memory, cim)技术通过在存储单元内直接执行计算操作,从根本上消除了数据搬运动作,被认为是突破传统架构限制的关键技术路径。

2、在存算一体技术路线中,基于模拟域计算的方式因其极高的并行度和能效优势而备受关注。浮栅晶体管作为一种非易失性存储器件,能够将模拟权重以电荷形式长期存储于浮栅中,同时利用其固有的电流-电压特性实现输入信号与权重的模拟乘法运算,并通过基尔霍夫电流定律在阵列层面完成电流累加,从而实现高效的模拟乘累加(multiply-accumulate, mac)运算。基于nor flash结构的浮栅晶体管阵列已在此领域展现出显著的应用潜力。

3、然而,现有模拟存算一体阵列普遍采用固定连接拓扑结构。一旦芯片制造完成,各计算单元之间的互连关系便被固化,无法根据不同的神经网络模型需求进行灵活调整。在实际应用中,深度神经网络包含多种拓扑形态:卷积神经网络依赖局部感受野的权重共享结构;全连接层需要全局互联;而resnet等深度网络则引入了跨层残差连接以缓解梯度消失问题。当需要切换神经网络拓扑(如从标准卷积变为深度可分离卷积或引入残差连接)时,固定拓扑的阵列无法在模拟域直接适配,必须依赖额外数字电路进行数据重排和格式转换,这一过程显著抵消了模拟计算原本的功耗和延迟优势。

4、针对上述问题,部分现有技术尝试通过多个固定拓扑子阵列的组合来应对不同计算需求,但这种方法增加了芯片面积开销,且子阵列之间的数据搬运仍然存在效率损失。另一种思路是采用全局可编程的数字式路由网络,但数字开关和缓冲器引入的延迟和功耗在模拟信号路径上尤为敏感,难以保持模拟计算的高能效特性。

技术实现思路

1、本发明目的在于提供一种可重构模拟存算一体乘累加阵列,以解决现有模拟存算一体阵列拓扑固定、无法灵活适配多种神经网络计算模式的技术问题。本发明通过引入可编程互连路由网络和配置控制器,使同一物理阵列可通过加载不同数字配置字,分别重构为支持卷积、全连接、残差连接等多种神经网络拓扑的连接关系,从而实现单一芯片对多种ai模型架构的自适应支持。

2、本发明第一方面提供一种可重构模拟存算一体乘累加阵列,包括:

3、浮栅晶体管乘累加单元阵列,包括多个浮栅晶体管乘累加单元,且每个所述浮栅晶体管乘累加单元存储可编程的模拟权重;

4、可编程互连路由网络,位于输入总线与浮栅晶体管乘累加单元阵列之间,还设置于浮栅晶体管乘累加单元阵列与输出总线之间,包括可配置开关构成;

5、配置控制器,用于根据外部数字配置字控制可编程互连路由网络中各开关的通断,改变所述浮栅晶体管乘累加单元之间的互连关系。

6、进一步地,还包括:输入数模转换器;

7、所述输入数模转换器,用于将输入的数据进行数模转换,以得到所述浮栅晶体管乘累加单元阵列对应的输入数据。

8、进一步地,所述浮栅晶体管乘累加单元包括浮栅晶体管、存储权重电压端、漏极连接输入信号端、源极连接输出电流汇总线以及可编程电荷存储区;

9、所述浮栅晶体管的浮栅作为所述可编程电荷存储区,用于存储代表模拟权重的电荷量;所述存储权重电压端连接至所述浮栅晶体管的控制栅极,用于提供读取权重所需的偏置电压;所述漏极连接输入信号端连接至所述浮栅晶体管的漏极,用于接收模拟电压输入信号;所述源极连接输出电流汇总线连接至所述浮栅晶体管的源极,用于输出权重与输入信号的乘积电流。

10、进一步地,所述所述浮栅晶体管乘累加单元存储的模拟权重通过fowler-nordheim隧穿电流进行编程,权重精度为4-6位。

11、进一步地,所述浮栅晶体管乘累加单元阵列的规模设置为256×256。

12、进一步地,所述可编程互连路由网络包括:

13、输入侧路由网络,配置于阵列的每一列输入信号端之前,用于将外部数模转换器输出的模拟电压信号路由至指定列的输入信号端;

14、输出侧路由网络,配置于阵列的每一行输出电流汇总线之后,用于将各行的输出电流路由至指定的输出累加线或后续处理电路;

15、层间路由网络,配置于阵列内部或阵列之间,用于实现不同行或不同列单元之间的信号互联,以支持卷积操作的滑动窗口连接和残差连接等复杂拓扑。

16、进一步地,所述可编程互连路由网络中的可配置开关采用nmos晶体管,各nmos晶体管的栅极连接所述配置控制器的输出端,通过控制信号的高/低电平控制nmos晶体管的导通/截止,从而改变模拟信号在所述浮栅晶体管乘累加单元阵列之间的物理路由路径。

17、进一步地,所述可编程互连路由网络配置为卷积神经网络拓扑连接关系、全连接神经网络拓扑连接关系以及残差神经网络拓扑连接关系。

18、进一步地,所述配置控制器配置为片上微序列器。

19、进一步地,所述配置控制器,配置为将外部spi接口接收的32位配置字解析为所述可编程互连路由网络中各可配置开关的导通/截止状态。

20、本发明的有益效果如下:

21、本发明提供了一种可重构模拟存算一体乘累加阵列,该阵列包括浮栅晶体管乘累加单元阵列、可编程互连路由网络及配置控制器。浮栅晶体管乘累加单元存储可编程模拟权重;可编程互连路由网络位于输入/输出总线与阵列之间,由可配置开关构成;配置控制器根据外部数字配置字控制开关通断,改变单元互连关系。本发明通过重构互连拓扑,实现卷积、全连接、残差连接等多种神经网络计算模式的自适应支持,提升模拟存算一体阵列的通用性与能效,适用于ai硬件加速场景。

1.一种可重构模拟存算一体乘累加阵列,其特征在于,包括:

2.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,还包括:输入数模转换器;

3.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,所述浮栅晶体管乘累加单元包括浮栅晶体管(201)、存储权重电压端(202)、漏极连接输入信号端(203)、源极连接输出电流汇总线(204)以及可编程电荷存储区(205);

4.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,所述所述浮栅晶体管乘累加单元存储的模拟权重通过fowler-nordheim隧穿电流进行编程,权重精度为4-6位。

5.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,所述浮栅晶体管乘累加单元阵列的规模设置为256×256。

6.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,所述可编程互连路由网络包括:

7.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,所述可编程互连路由网络中的可配置开关采用nmos晶体管,各nmos晶体管的栅极连接所述配置控制器的输出端,通过控制信号的高/低电平控制nmos晶体管的导通/截止,从而改变模拟信号在所述浮栅晶体管乘累加单元阵列之间的物理路由路径。

8.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,所述可编程互连路由网络配置为卷积神经网络拓扑连接关系、全连接神经网络拓扑连接关系以及残差神经网络拓扑连接关系。

9.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,所述配置控制器配置为片上微序列器。

10.根据权利要求1所述的可重构模拟存算一体乘累加阵列,其特征在于,所述配置控制器,配置为将外部spi接口接收的32位配置字解析为所述可编程互连路由网络中各可配置开关的导通/截止状态。