本发明属于存储领域,尤其涉及基于fefet结构的高能效模拟存内计算架构及其工作方法,考虑运用fefet这一器件,用于具有非易失性的高能效高性能模拟存内计算设计。
背景技术:
1、在大数据时代,深度神经网络(dnn)在人工智能领域应用广泛。然而,随着技术的进步和数据量的指数级增长,dnn的计算和存储需求急剧上升。因此,存储器和处理单元之间的大量数据移动导致了传统冯·诺依曼架构中的“存储墙”瓶颈。存内计算架构将计算功能集成到存储器中,旨在通过减少大量数据移动来解决这个问题。同时,存内计算架构的并行处理能力非常适合高效执行dnn中关键的乘累加(mac)运算。
2、在模拟存内计算领域,已经提出了许多基于sram的设计,最常见的两种实现类别是模拟域和电流域下的。然而,sram固有的二进制存储特性使多比特存内计算电路设计变得复杂,sram较大的单元尺寸和待机功率限制了面积和能效。相比之下,电阻式随机存取存储器(reram)、磁性随机存取存储器(mram)和铁电场效应晶体管(fefet)等新兴非易失性存储器(nvm)因其紧凑的结构和接近零的待机功耗而受到关注。特别是,由于多比特存储、高开关比和三端读写分离特性,fefet有望构建高效的模拟存内计算设计来存储权重并在dnn推理中执行mac操作。此外,fefet与互补金属氧化物半导体(cmos)一样,具有n型(nfefet)和p型(pfefet)两种器件类型,并具有良好的cmos兼容性。
3、在高精度模拟存内计算架构设计中,多位mac数据流通常用相邻列中的n个单元表示每个定点n-bit权重值,并使用外围电路组合基于不同有效权重位的n个加权部分mac输出,该过程称为权重移位加过程,目前有两种处理方式,第一种称为“数字移位加”,通过多路选择器将所选列的部分mac结果送至adc转换,并经数字移位加电路得到结果,但adc的时间复用限制了吞吐率,多选择也增大了面积开销。第二种称为“模拟移位加”,即在adc之前完成权重移位加处理,从而可以并行生成各列的部分mac结果,但这种方案需要设计专用模拟电路,增大了面积和能耗开销。此外,在这两种方式下,权重移位加过程与部分mac运算过程都是分离的,尚有联合优化空间可探索。
技术实现思路
1、本发明的目的在于针对目前已有的模拟存内计算架构性能不够好的问题,提供基于fefet结构的高能效模拟存内计算架构及其工作方法,实现了更高的计算能效。
2、本发明的目的是通过以下技术方案实现的:
3、本发明提供第一种基于fefet结构的高能效模拟存内计算架构,该高能效模拟存内计算架构为高能效电流域存内计算架构,包括一个核心128*128的电流域存内计算阵列、一个字线输入驱动器、一个位线bl/源线sl开关矩阵、一个参考区、16个补码模式模数转换器(2cm adc)、16个非补码模式模数转换器(n2cm adc)、16个累积模块;其中,字线输入驱动器通过各根字线wl和wlb与电流域存内计算阵列相连,位线bl/源线sl开关矩阵通过各根位线bl和源线sl与电流域存内计算阵列相连;
4、电流域存内计算阵列分为16个区,每个区包含4个高4-bit块(h4b)和4个低4-bit块(l4b)、16个传输门(tg)和2个跨阻放大器(tia);
5、每个高4-bit块(h4b)和低4-bit块(l4b)都包含32行*4列的存内计算单元,分别存储32个有符号和无符号的4-bit权重数据;对于高4-bit块(h4b)的32行*4列的存内计算单元,位于同一列的存内计算单元共享位线bl和源线sl,在一行存内计算单元中,高4-bit块(h4b)符号位对应的存内计算单元共享字线wls,其余存内计算单元共享另一根字线wl;对于低4-bit块(l4b)的32行*4列的存内计算单元,位于同一列的存内计算单元共享位线bl和源线sl,位于同一行的存内计算单元共享另一根字线wl;
6、电流域存内计算阵列中各区中的2个跨阻放大器(tia)输出分别与1个补码模式模数转换器(2cm adc)和1个非补码模式模数转换器(n2cm adc)相连;参考区的结构与电流域存内计算阵列中的区相同,其中的2个跨阻放大器(tia)输出分别与16个补码模式模数转换器(2cm adc)和16个非补码模式模数转换器(n2cm adc)相连;每个补码模式模数转换器(2cm adc)和非补码模式模数转换器(n2cm adc)的输出与一个累计模块相连。
7、进一步地,所述存内计算单元由1nfefet1r构成,存储1-bit权重数据,存内计算单元导通电流通过调整电阻大小呈现与4-bit权重对应的二进制加权模式;高4-bit块(h4b)符号位对应存内计算单元的1nfefet1r结构中nfefet器件的源极与位线bl相连,栅极与字线wls相连,漏极与电阻一端相连,电阻另一端与源线sl相连;高4-bit块(h4b)非符号位对应存内计算单元和l4b所有存内计算单元的1nfefet1r结构中nfefet器件的源极与源线sl相连,栅极与另一根字线wl相连,漏极与电阻一端相连,电阻另一端与位线bl相连。
8、本发明还提供一种如上所述基于fefet结构的高能效模拟存内计算架构的工作方法,包括:
9、该高能效模拟存内计算架构能并行完成无符号多比特输入数据和补码表示的4-/8-bit权重数据的mac计算,在高能效模拟存内计算架构开始工作前,参与计算的每个8-bit权重数据分成高4位和低4位分别存入同个区中相邻的高4-bit块(h4b)和低4-bit块(l4b)的存内计算单元中;
10、在工作过程中,多比特输入数据以串行形式分多个周期进行计算;
11、在每个周期中,单比特输入数据通过字线wls和字线wl送入每个区中的一对高4-bit块(h4b)和低4-bit块(l4b)中,这一对高4-bit块(h4b)和低4-bit块(l4b)中各自的跨阻放大器(tia)负输入端通过传输门(tg)的导通与4根位线bl相连,权重符号位对应的源线sl[7]接vddi,其余位对应源线sl[6]-sl[0]接地,从而在存内计算单元中实现单比特的乘法,若结果是“1”,则该存内计算单元生成二进制加权模式的单元导通电流,且符号位对应的电流方向与其余位相反,一个高4-bit块(h4b)或者低4-bit块(l4b)中每列的部分mac计算结果以电流形式汇聚在位线bl上,且高4-bit块(h4b)和低4-bit块(l4b)中的跨阻放大器(tia)分别汇聚4根位线bl的电流产生输出电压;接着每个区的两个输出电压分别通过2cmadc和n2cm adc转化并在累积模块结合得到该周期单比特输入对应的计算结果;
12、经过多个周期的计算,最终在各个累计模块中得到并行的mac计算结果。
13、本发明还提供第二种基于fefet结构的高能效模拟存内计算架构,该高能效模拟存内计算架构为高能效电荷域存内计算架构,包括一个128*128的电荷域存内计算阵列、一个字线输入驱动器、一个位线bl/源线sl开关矩阵、一个参考区、16个补码模式模数转换器(2cm adc)、16个非补码模式模数转换器(n2cm adc)、16个累积模块;其中,字线输入驱动器通过各根字线wl和wlb与电荷域存内计算阵列相连,位线bl/源线sl开关矩阵通过各根位线bl和源线sl与电荷域存内计算阵列相连;
14、电荷域存内计算阵列分为16个区,每个区包含4个高4-bit块(h4b)和4个低4-bit块(l4b)、16个传输门(tg)、8个位线电容(cap)和8个位线预充电晶体管(pct);
15、每个高4-bit块(h4b)和低4-bit块(l4b)都包含32行*4列的存内计算单元,分别存储32个有符号和无符号的4-bit权重数据;对于高4-bit块(h4b)的32行*4列的存内计算单元,位于同一列的存内计算单元共享位线bl和源线sl,在一行存内计算单元中,高4-bit块(h4b)符号位对应的存内计算单元共享字线wls,其余存内计算单元共享另一根字线wl;对于低4-bit块(l4b)的32行*4列的存内计算单元,位于同一列的存内计算单元共享位线bl和源线sl,位于同一行的存内计算单元共享另一根字线wl;
16、电荷域存内计算阵列中各区中的2个输出分别与1个补码模式模数转换器(2cmadc)和1个非补码模式模数转换器(n2cm adc)相连;参考区的结构与电荷域存内计算阵列中的区相同,其中的2个tia输出分别与16个补码模式模数转换器(2cm adc)和16个非补码模式模数转换器(n2cm adc)相连;每个补码模式模数转换器(2cm adc)和非补码模式模数转换器(n2cm adc)的输出与一个累计模块相连。
17、进一步地,所述存内计算单元由1nfefet或1pfefet构成,存储1-bit权重数据,存内计算单元导通电流通过调整阈值电压vth呈现与4-bit权重对应的二进制加权模式;高4-bit块(h4b)符号位对应存内计算单元的1pfefet结构中pfefet器件的漏极与位线bl相连,栅极与字线wls相连,源极与源线sl相连;高4-bit块(h4b)非符号位对应存内计算单元和低4-bit块(l4b)所有存内计算单元的1nfefet结构中nfefet器件的漏极与位线bl相连,栅极与另一根字线wl相连,源极与源线sl相连。
18、本发明还提供一种如上所述高能效模拟存内计算架构的工作方法,包括:
19、该高能效模拟存内计算架构能并行完成无符号多比特输入数据和补码表示的4-/8-bit权重数据的mac计算,在1pfefet开始工作前,参与计算的每个8-bit权重数据分成高4位和低4位分别存入同个区中相邻的高4-bit块(h4b)和低4-bit块(l4b)的存内计算单元中;
20、在工作过程中,多比特输入数据以串行形式分多个周期进行计算;
21、在每个周期中,权重符号位对应的源线sl[7]接vddq,其余位对应源线sl[6]-sl[0]接地;首先预充电阶段下,所有传输门(tg)关断,预充电晶体管(pct)导通给位线电容(cap)预充电至1.5v;接着单比特输入数据通过字线wls和字线wl送入每个区中的一对高4-bit块(h4b)和低4-bit块(l4b)中,从而在存内计算单元中实现单比特的乘法,随后若结果是“1”,则该存内计算单元导通使得位线电容(cap)上出现二进制加权模式的电压变化,相当于符号位导通的存内计算单元给位线电容(cap)充电,其余位导通的存内计算单元给位线电容(cap)放电,一个高4-bit块(h4b)或者低4-bit块(l4b)中每列的部分mac计算结果以充放电形式汇聚在位线电容(cap)上;随后电荷共享阶段停止输入,通过传输门(tg)的导通分别对高4-bit块(h4b)和低4-bit块(l4b)中的4个位线电容(cap)做电荷重分配产生输出电压;接着每个区的两个输出电压分别通过补码模式模数转换器(2cm adc)和非补码模式模数转换器(n2cm adc)转化并在累积模块结合得到该周期单比特输入对应的计算结果;
22、经过多个周期的计算,最终在各个累计模块中得到并行的mac计算结果。
23、本发明的有益效果如下:
24、本发明中的两种模拟存内计算架构设计可以实现计算能效的提高。
25、(1)对于电流域的存内计算架构设计,每个存内计算单元采用1nfefet1r结构,单元导通电流通过调整电阻大小呈现与4-bit权重对应的二进制加权模式,并通过跨阻放大器直接汇聚4根位线bl的电流产生输出电压,从而在阵列集成了4-bit权重的移位加过程,进而降低了计算能耗和整体面积开销。由于本设计的存内计算单元面积较小,可以带来生产成本的降低。
26、(2)对于电荷域的存内计算架构设计,每个存内计算单元采用1nfefet/1pfefet结构,单元导通电流通过调整阈值电压vth呈现与4-bit权重对应的二进制加权模式,并作用到位线电容的电压变化上,4列的电容通过电荷重分配实现电荷共享,从而在阵列集成了4-bit权重的移位加过程,进而降低了计算能耗和整体面积开销。由于本设计的存内计算单元面积较小,可以带来生产成本的降低。
1.一种基于fefet结构的高能效模拟存内计算架构,其特征在于,该高能效模拟存内计算架构为高能效电流域存内计算架构,包括一个核心128*128的电流域存内计算阵列、一个字线输入驱动器、一个位线bl/源线sl开关矩阵、一个参考区、16个补码模式模数转换器(2cm adc)、16个非补码模式模数转换器(n2cm adc)、16个累积模块;其中,字线输入驱动器通过各根字线wl和wlb与电流域存内计算阵列相连,位线bl/源线sl开关矩阵通过各根位线bl和源线sl与电流域存内计算阵列相连;
2.根据权利要求1所述的一种基于fefet结构的高能效模拟存内计算架构,其特征在于,所述存内计算单元由1nfefet1r构成,存储1-bit权重数据,存内计算单元导通电流通过调整电阻大小呈现与4-bit权重对应的二进制加权模式;高4-bit块(h4b)符号位对应存内计算单元的1nfefet1r结构中nfefet器件的源极与位线bl相连,栅极与字线wls相连,漏极与电阻一端相连,电阻另一端与源线sl相连;高4-bit块(h4b)非符号位对应存内计算单元和l4b所有存内计算单元的1nfefet1r结构中nfefet器件的源极与源线sl相连,栅极与另一根字线wl相连,漏极与电阻一端相连,电阻另一端与位线bl相连。
3.一种如权利要求1或2所述基于fefet结构的高能效模拟存内计算架构的工作方法,其特征在于,包括:
4.一种基于fefet结构的高能效模拟存内计算架构,其特征在于,该高能效模拟存内计算架构为高能效电荷域存内计算架构,包括一个128*128的电荷域存内计算阵列、一个字线输入驱动器、一个位线bl/源线sl开关矩阵、一个参考区、16个补码模式模数转换器(2cmadc)、16个非补码模式模数转换器(n2cm adc)、16个累积模块;其中,字线输入驱动器通过各根字线wl和wlb与电荷域存内计算阵列相连,位线bl/源线sl开关矩阵通过各根位线bl和源线sl与电荷域存内计算阵列相连;
5.根据权利要求4所述的一种基于fefet结构的高能效模拟存内计算架构,其特征在于,所述存内计算单元由1nfefet或1pfefet构成,存储1-bit权重数据,存内计算单元导通电流通过调整阈值电压vth呈现与4-bit权重对应的二进制加权模式;高4-bit块(h4b)符号位对应存内计算单元的1pfefet结构中pfefet器件的漏极与位线bl相连,栅极与字线wls相连,源极与源线sl相连;高4-bit块(h4b)非符号位对应存内计算单元和低4-bit块(l4b)所有存内计算单元的1nfefet结构中nfefet器件的漏极与位线bl相连,栅极与另一根字线wl相连,源极与源线sl相连。
6.一种如权利要求4或5所述高能效模拟存内计算架构的工作方法,其特征在于,包括:
