一种适用于非易失性存储器存算一体阵列的运算单元

阅读: 评论:0



1.本发明涉及混合信号电路技术领域,尤其涉及的是一种适用于非易失性存储器存算一体阵列的运算单元


背景技术:



2.在人工智能的推动下,边缘计算对算力的需求持续增加,对复杂网络运算需求和数据处理速度的要求也越来越严苛。在当前的计算框架下,如何高效率地利用深度学习神经网络来处理数据,开发新一代高能效神经网络加速器是学界及产业界研究开发的核心问题之一。
3.传统的冯
·
诺依曼结构将数据处理和存储分离,在深度学习的运算过程中需频繁和内存交换数据,消耗大量能量。根据研究显示,搬运数据的能耗是浮点计算的4到1000倍。随着半导体工艺的进步,虽说总体功耗下降,但数据搬运的功耗占比却越来越大。
4.存算一体架构则是打破存储墙的限制,突破ai计算能效瓶颈的关键技术。存算一体架构的核心思想在于将部分或全部的计算转移至存储模块中,即计算单元和存储单元集成在同一个芯片。在众多非易失性存储器中,阻变存储器reram可以实现更大的电阻比(导通/关断)和更高的耐受度,有利于提升存内计算的精度、准确率和整体的鲁棒性,但是目前基于reram非易失性存储器存算一体阵列的运算单元会出现高失配的问题。
5.因此,现有技术还有待改进和发展。


技术实现要素:



6.本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种适用于非易失性存储器存算一体阵列的运算单元,旨在解决现有技术中基于reram非易失性存储器存算一体阵列的运算单元会出现高失配的的问题。
7.本发明解决问题所采用的技术方案如下:
8.第一方面,本发明实施例提供一种运算单元,其中,所述运算单元包括至少一个阻变存储器,与所述阻变存储器电连接的反相器,与所述反相器电连接的电容器。
9.在一种实现方式中,所述反相器与所述电容器通过第一开关电连接。
10.在一种实现方式中,所述电容器与预设的位线通过第二开关电连接。
11.在一种实现方式中,所述阻变存储器的个数为两个,且两个所述阻变存储器串联连接。
12.在一种实现方式中,所述第二开关与所述第二开关的接通时间不同。
13.在一种实现方式中,在预设的周期内,所述第一开关接通时刻先于所述第二开关接通时刻。
14.在一种实现方式中,所述位线通过第三开关与地线连接。
15.第二方面,本发明实施例还提供一种基于运算单元的非易失性存储器存算一体阵列系统,其中,所述系统包括存算一体阵列,与所述存算一体阵列电连接的模数转换器,与
所述模数转换器电连接的比较器,以及与所述比较器电连接的移位累加模块;其中,所述存算一体阵列包括若干运算单元。
16.在一种实现方式中,所述存算一体阵列中每列的若干运算单元对应一根位线。
17.在一种实现方式中,所述存算一体阵列中每列的若干运算单元对应一个模数转换器。
18.第三方面,本发明实施例还提供一种基于运算单元的运算方法,其中,所述运算方法包括:获取输入电流和权重;
19.将所述电流和所述权重相乘,得到电压值;
20.通过第一开关将电压传到电容上极板;
21.通过第二开关共享电荷并输出电压。
22.第四方面,本发明实施例还提供一种智能终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于执行如上述所述的运算单元的运算方法。
23.第五方面,本发明实施例还提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述所述的运算单元的运算方法。
24.本发明的有益效果:本发明实施例的运算单元包括至少一个阻变存储器,与所述阻变存储器电连接的反相器,与所述反相器电连接的电容器。可见,本发明实施例中通过插入反相器以实现隔离阻变存储器的电阻失配和比率较低的因素,采用电容采样将阻变存储器失配的限制转移到电容,能够较大程度削弱非易失性存储器存算一体阵列中运算单元的失配率与功耗。
附图说明
25.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
26.图1为本发明实施例提供的运算单元示意图。
27.图2为本发明实施例提供的一种实现方式的运算单元及其时序示意图。
28.图3为本发明实施例提供的一种实现方式的与门操作的运算单元真值表图。
29.图4为现有技术的基于倒相放大器的常规存算一体架构电路示意图。
30.图5为本发明实施例提供的一种实现方式的适用于非易失性存储器存算一体阵列系统示意图。
31.图6为本发明实施例提供的智能终端的内部结构原理框图。
具体实施方式
32.本发明公开了一种适用于非易失性存储器存算一体阵列的运算单元,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说
明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
33.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
34.本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
35.由于现有技术中,目前基于reram非易失性存储器存算一体阵列的运算单元大多均存在以下问题:
36.受限于reram阵列的非理想性因素,reram的行并行度弱于sram,影响通量的提升。而单reram计算单元主要非理想性因素有如下几点:1.低阻态(lrs)、高阻态(hrs)失配导致累加结果值标准偏差大。2.电阻比不够高导致累加结果信号区分度小。3.不同位置reram存在的等效阻抗导致累加结果一致性差。
37.此外,常规存算一体运算阵列采用电流型累加输出方式,如图1所示。电流型累加型的输出方式受到reram阻值失配的线性叠加,使得阵列尺寸选择受限,无法同列中的很多行的同时工作开启。这种方式需要采用电压钳制电路来保证电流输出的稳定性。而由于额外的电压钳制电路导致每条支路都需要增加运放而增大了功耗,但不采用运放的方案却准确率低。
38.为了解决现有技术的问题,本实施例提供了一种适用于非易失性存储器存算一体阵列的运算单元,通过插入反相器以实现隔离阻变存储器的电阻失配和比率较低的因素,采用电容采样将阻变存储器失配的限制转移到电容,能够较大程度削弱非易失性存储器存算一体阵列中运算单元的失配率与功耗。本发明实施例中的运算单元包括至少一个阻变存储器,与所述阻变存储器电连接的反相器,与所述反相器电连接的电容器。
39.示例性单元
40.如图1-2中所示,本发明实施例提供一种适用于非易失性存储器存算一体阵列的运算单元,该运算单元包括至少一个阻变存储器,与所述阻变存储器电连接的反相器,与所述反相器电连接的电容器。
41.具体地,常规存算一体阵列设计中的运算单元失配等非理想性因素影响计算精度问题,本发明实施例中的运算单元基于反相器的i/v传输特性曲线,通过插入反相器以实现隔离阻变存储器(reram)的非理想性因素,包括电阻失配高和比率较低的问题。此外,本发明实施例中使用电容采样将阻变存储器(reram)失配的限制问题转移到电容,而电容失配率小于阻变存储器(reram)两个数量级,这样,通过阻变存储器连接反相器以及电容器组成的运算单元能够更大程度削弱阻变存储器(reram)阵列的失配影响。
42.在本实施例中,如图2所示,阻变存储器(reram)的个数为两个,且两个所述阻变存储器串联连接;在每个单元格中,在第一阶段串联两个阻变存储器单元(reram),该阻变存储器单元(reram)用于存储权重数据w。在两个阻变存储器之间通过开关s
write
接通后会产生偏置电压v
mid
,将中间节点上的电压vmid发送到反相器,该反相器用于隔离reram非线性问题对计算结果的影响,与此同时启用阻变存储器(reram)的设置/重置过程。需要说明的是,s
write
接通后,可以调节v
mid
的值,可以调高或低从而实现对reram的电阻调节目的。如图2(a)所示,反相器的工作状态由wl线上的输入确定,如果input(i)=1,则反相器会逆转输入并确定电容器顶板上的vc。如果input=0,则反相器无法正常工作,并且由vc保持重置电压,其中,重置电压为每周期会重置电容上电压,使得其更新为初始电压。通过这样的方式,运算单元可以实现输入(i)
×
权重(w)的功能,图2(b)展示了运算单元的时序波形。输入与权重的与门操作计算单元真值表如图3所示。所述反相器与所述电容器通过第一开关v
charge
电连接,反相器的输出由vmid确定,并由轨到轨电压产生,该电压将给其后的电容器充电。因此,本发明通过分压和反相隔离了reram器件阻值非线性的副作用,而仅考虑小电容器的非线性影响。通常高阻态/低阻态的1m/100kω的reram具有至少10%的标准偏差,而在28nm工艺中的金属电容器的标准偏差仅为0.8%。此外,由于基于电荷共享的原理,提出的基于电荷的运算单元也可以有效隔离常规1t1r运算单元中常见的ir-drop问题。其中,ir压降(ir-drop)是指出现在集成电路中电源和地网络上电压下降或升高的一种现象。也即,电流流在金属线上i,金属线由于存在电阻r,电阻与金属线长度成正比,与金属线截面成反比。在金属线两端,电压差v=i*r。由于在同列常规基于电流的运算单元离输出端距离不同,导致累加结果受金属线i的等效电阻值影响。
43.在一种实现方式中,第一开关v
charge
与所述第二开关v
share
的接通时间不同。实际中,由于所述电容器与预设的位线(bl)通过第二开关v
share
电连接,通过接通与位线(bl)连通的第三开关v
rst
实现与地线接通来重启一个新的周期,也即,重置信号通过连通第三开关v
rst
连接位线(bl)以重置电压0。在该预设的周期内,第一开关v
charge
接通时刻先于所述第二开关v
share
的接通时刻。也就是说,在每个周期内,先接通第一开关v
charge
,把反相器的数据传到电容器上极板,然后通过基于运算单元的非易失性存储器存算一体阵列系统的每列上的电容上极板接通第二开关v
share
实现电荷共享产生输出电压。
44.示例性系统
45.常规存算一体阵列设计如图4所示,常规读取方案对运算单元中的电流进行累加,因此,需要i/v运放(opamp)放大来自每一列的模拟信号,以将信号从电流转换为电压,并对位线电压进行钳位。然后,放大电压将存储在采样保持(s&h)模块中进行随后的a/d转换。其运算单元出现失配的非理想性因素影响计算精度问题,同时电流型累加输出方式是通过增加功放实现导致功耗过大问题。因此,本发明针对常规存算一体运算阵列电流型累加输出方式所存在运放功耗过大问题,设计了基于上述运算单元的非易失性存储器存算一体阵列系统,如图5所示,采用基于电容的电荷重分配方案将同列所有电容电荷汇总并均摊到所有电容(包括寄生电容)上,克服因走线寄生导致一致性问题。电荷重分配最终得到电压输出,因此,位线(bitline)只需要在固定周期重置电压即可,无需电压钳制电路。相比于传统系统设计,可以大幅度的检索运算单元失配率和功耗。在系统设计过程中,非线性问题限制了reram阵列每列可同时激活的reram行数。为了减少reram失配对计算精度带来的影响,同时
增加计算中行并行激活的百分比,本发明设计了上述基于电荷的运算单元。本发明的基于运算单元的非易失性存储器存算一体阵列系统包括存算一体阵列,与所述存算一体阵列电连接的模数转换器,与所述模数转换器电连接的比较器,以及与所述比较器电连接的移位累加模块。所述存算一体阵列包括若干运算单元(macro cell),各个运算单元(macro cell)以m行n列的形式形成存算一体阵列,存算一体阵列中每行的输入相同,存算一体阵列中每列的输出通过位线(bl)输入至与之对应的模数转换器,然后输出至比较器,多周期后从比较器输出后多比特数字结果输入至移位累加模块。所述存算一体阵列中每列的若干运算单元对应一根位线,也就是说,存算一体阵列中每列上的各个运算单元(macro cell)输出均通过同一根位线。所述存算一体阵列中每列的若干运算单元(macro cell)对应一个模数转换器,也就是说,存算一体阵列中每列上的各个运算单元(macro cell)输出均输入至一个模数转换器adc中。这样,存算一体阵列中同列运算单元(macro cell)中包含的电容器都共享电荷,并且在同一列的位线上产生累积电压。这样,不需要钳位电路,可直接将位线(bl)连接到adc。此外,还消除了传统adc设计中的采用和保持(s&h)电路。位线(bl)上的电压可以在adc转换期间存储,并输入给比较器。在移位累加模块中,每列的adc输出根据权重参数循环移位,并行累加,以实现高吞吐量性能。
46.示例性方法
47.本实施例提供一种基于运算单元的运算方法,该方法用于混合信号电路的智能终端,所述方法包括:
48.步骤s100、获取输入电流和权重;
49.步骤s200、将所述电流和所述权重相乘,得到电压值;
50.步骤s300、通过第一开关将电压传到电容上极板;
51.步骤s400、通过第二开关共享电荷并输出电压。
52.具体地,输入电流通过wl线上的输入确定,而权重w是存储在阻变存储器reram中的,如图2(b)所示,在每个周期的复位pr期间,位线通过第三开关v
rst
连接位线(bl)以重置电压0,此时电容器放电到零。同时在此期间,可以将第一开关v
charge
接通;然后在充电阶段pc期间,将第三开关v
rst
断开,并且保持第一开关v
charge
接通以及保持第二开关v
share
断开,此时如果输入电流为1时,通过将输入i和权重w相乘,得到电压值,并将该电压值更新电容器电压vc。在共享阶段ps期间,将第一开关v
charge
断开,再将存算一体阵列中每列的所有运算单元(macro cell)对应的第二开关v
share
接通,实现电荷共享产生输出电压。此时,电容器与位线(bl)连接在一起,产生输出结果v
out
,输出结果v
out
是由电容电荷共享后产生的电压值。v
out
输入至模数转换器adc后,由模数转换器adc量化得到nbit的数字结果。
53.本发明的优点:
54.本发明采用反相器隔离和电容采样的方式来隔离reram的非理想性因素,包括电阻失配和比率过低。基于电容的电荷重分配方案将同列所有电容电荷汇总并均摊到所有电容(包括寄生电容)上,将电流转换为电压,克服因走线寄生导致一致性问题并能够有效降低额外运放的功耗。
55.基于上述实施例,本发明还提供了一种智能终端,其原理框图可以如图6所示。该智能终端包括通过系统总线连接的处理器、存储器、网络接口、显示屏、温度传感器。其中,该智能终端的处理器用于提供计算和控制能力。该智能终端的存储器包括非易失性存储介
质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该智能终端的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于运算单元的运算方法。该智能终端的显示屏可以是液晶显示屏或者电子墨水显示屏,该智能终端的温度传感器是预先在智能终端内部设置,用于检测内部设备的运行温度。
56.本领域技术人员可以理解,图6中的原理图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的智能终端的限定,具体的智能终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
57.在一个实施例中,提供了一种智能终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
58.获取输入电流和权重;
59.将所述电流和所述权重相乘,得到电压值;
60.通过第一开关将电压传到电容上极板;
61.通过第二开关共享电荷并输出电压。
62.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
63.综上所述,本发明公开了一种适用于非易失性存储器存算一体阵列的运算单元,所述运算单元包括至少一个阻变存储器,与所述阻变存储器电连接的反相器,与所述反相器电连接的电容器。本发明实施例中通过插入反相器以实现隔离阻变存储器的电阻失配和比率较低的因素,采用电容采样将阻变存储器失配的限制转移到电容,能够较大程度削弱非易失性存储器存算一体阵列中运算单元的失配率与功耗。
64.基于上述实施例,本发明公开了一种基于运算单元的运算方法,应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

技术特征:


1.一种运算单元,其特征在于,所述运算单元包括至少一个阻变存储器,与所述阻变存储器电连接的反相器,与所述反相器电连接的电容器。2.根据权利要求1所述的运算单元,其特征在于,所述反相器与所述电容器通过第一开关电连接。3.根据权利要求2所述的运算单元,其特征在于,所述阻变存储器的个数为两个,且两个所述阻变存储器串联连接。4.根据权利要求3所述的运算单元,其特征在于,在预设的周期内,所述第一开关接通时刻先于所述第二开关接通时刻。5.一种如权利要求1-4任一项所述的运算单元的非易失性存储器存算一体阵列系统,其特征在于,所述系统包括存算一体阵列,与所述存算一体阵列电连接的模数转换器,与所述模数转换器电连接的比较器,以及与所述比较器电连接的移位累加模块;其中,所述存算一体阵列包括若干运算单元。6.根据权利要求5所述的运算单元的非易失性存储器存算一体阵列系统,其特征在于,所述存算一体阵列中每列的若干运算单元对应一根位线。7.根据权利要求6所述的运算单元的非易失性存储器存算一体阵列系统,其特征在于,所述存算一体阵列中每列的若干运算单元对应一个模数转换器。8.一种如权利要求1-4任一项所述的运算单元的运算方法,其特征在于,所述方法包括:获取输入电流和权重;将所述电流和所述权重相乘,得到电压值;通过第一开关将电压传到电容上极板;通过第二开关共享电荷并输出电压。9.一种智能终端,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于执行如权利要求8所述的方法。10.一种非临时性计算机可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求8所述的方法。

技术总结


本发明公开了一种适用于非易失性存储器存算一体阵列的运算单元,所述运算单元包括至少一个阻变存储器,与所述阻变存储器电连接的反相器,与所述反相器电连接的电容器。本发明实施例中通过插入反相器以实现隔离阻变存储器的电阻失配和比率较低的因素,采用电容采样将阻变存储器失配的限制转移到电容,能够较大程度削弱非易失性存储器存算一体阵列中运算单元的失配率与功耗。单元的失配率与功耗。单元的失配率与功耗。


技术研发人员:

毛伟 周浩翔 洪海桥 刘定邦 刘俊 余浩

受保护的技术使用者:

南方科技大学

技术研发日:

2022.08.19

技术公布日:

2022/12/8

本文发布于:2022-12-11 04:11:08,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/2/30831.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   存储器   单元   阵列
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图