忆阻器阵列结构及其操作方法、神经网络稀疏化装置



1.本公开涉及半导体器件及集成电路领域,尤其涉及一种适用稀疏矩阵乘加运算的高集成度的忆阻器阵列结构及其操作方法、神经网络稀疏化装置。


背景技术:



2.存内计算是一种非冯诺依曼架构,通过利用器件或电路的存算一体功能,显著降低逻辑运算中搬运的数据规模,从而提高硬件运算效率、降低功耗,被广泛认为是深度学习算法的硬件加速方法。忆阻器是实现一种存内计算架构的基本功能器件,具备低功耗、高计算密度等性能特征。基于忆阻器的交叉阵列结构,能够实现高并行度的向量-矩阵乘加运算(vmm),是加速深度学习算法的硬件基础。


技术实现要素:



3.(一)要解决的技术问题
4.为解决现有技术中实现稀疏型深度神经网络过程中所存在的技术问题至少之一,本公开提供了一种应用于稀疏矩阵乘加运算的忆阻器阵列结构及其操作方法、神经网络稀疏化装置。
5.(二)技术方案
6.本公开的一个方面提供了一种忆阻器阵列结构,其中,包括多个结构子阵列,多个结构子阵列中的每个结构子阵列包括多个忆阻器单元、多个第一晶体管单元和多个第二晶体管单元。多个忆阻器单元分布排列形成忆阻器阵列,多个第一晶体管单元在第一方向上与忆阻器阵列的两端的多个忆阻器单元分别对应相连;多个第二晶体管单元在第二方向上与忆阻器阵列的另两端的多个忆阻器单元分别对应相连;其中,在第一方向上,多个第一晶体管单元与忆阻器阵列的两端的相邻忆阻器阵列对应相连;在第二方向上,多个第二晶体管单元与忆阻器阵列的另两端的相邻忆阻器阵列对应相连。
7.根据本公开的实施例,忆阻器阵列包括多个第一子阵列或者多个第二子阵列。多个第一子阵列在第二方向上依次排布设置;多个第二子阵列在第一方向上依次排布设置;其中,多个第一子阵列中的忆阻器单元数量、多个第二子阵列中的忆阻器单元数量以及忆阻器阵列的忆阻器单元数量相等。
8.根据本公开的实施例,多个忆阻器单元中的每个忆阻器单元包括顶电极、底电极和介质层。顶电极与多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连;底电极与多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连;介质层位于顶电极和底电极之间,用于实现每个忆阻器单元的阻变。
9.根据本公开的实施例,多个第一晶体管单元中的每个第一晶体管单元包括栅极、源极和漏极。栅极与多个第一子阵列中的对应一个第一子阵列在第一方向上的第二字线相连;源极与多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连,或与相邻忆阻器阵列中的对应一个第一子阵列在第一方向上的另一第一字线相连;漏极与相邻
忆阻器阵列中的对应一个第一子阵列在第一方向上的另一第一字线相连,或与多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连。
10.根据本公开的实施例,多个第二晶体管单元中的每个第二晶体管单元包括栅极、源极和漏极。栅极与多个第二子阵列中的对应一个第二子阵列在第二方向上的第二位线相连;源极与多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连,或与相邻忆阻器阵列中的对应一个第二子阵列在第二方向上的另一第一位线相连;漏极与相邻忆阻器阵列中的对应一个第二子阵列在第二方向上的另一第一位线相连,或与多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连。
11.本公开的另一个方面提供了一种上述的忆阻器阵列结构的操作方法,其中,包括:选通忆阻器阵列中的至少一个忆阻器单元;对选通的至少一个忆阻器单元执行读操作或写操作,以控制至少一个忆阻器单元发生阻变。
12.根据本公开的实施例,在选通忆阻器阵列中的至少一个忆阻器单元中,包括:在至少一个忆阻器单元所在的第二字线和第二位线上施加开启电压,并将其他第二字线和第二位线接地。
13.根据本公开的实施例,在对选通的至少一个忆阻器单元执行读操作或写操作之前还包括:对至少一个忆阻器单元所在的第一字线和第一位线上施加读取信号或写入信号,并将其他第一字线和第一位线置于浮置状态。
14.根据本公开的实施例,在对选通的至少一个忆阻器单元执行读操作或写操作中,包括:对至少一个忆阻器单元所在的第一字线施加读取电压,并通过所在的第一位线读取对应读取电压的电流值或电压值;或者对至少一个忆阻器单元所在的第一位线施加读取电压,并通过所在的第一字线读取对应读取电压的电流值或电压值。
15.根据本公开的实施例,在对选通的至少一个忆阻器单元执行读操作或写操作中,包括:对至少一个忆阻器单元所在的第一字线上施加第一编程电压,并将所在的第一位线接地;或者对至少一个忆阻器单元所在的第一位线上施加第二编程电压,并将所在的第一字线接地;其中,第一编程电压与第二编程电压方向相反、大小相等。
16.本公开的又一个方面提供了一种神经网络稀疏化装置,其中,该装置基于上述的忆阻器阵列结构实现。
17.(三)有益效果
18.本公开提供了一种应用于稀疏矩阵乘加运算的忆阻器阵列结构及其操作方法、神经网络稀疏化装置。其中,该忆阻器阵列结构包括多个结构子阵列,多个结构子阵列中的每个结构子阵列包括多个忆阻器单元、多个第一晶体管单元和多个第二晶体管单元。多个忆阻器单元分布排列形成忆阻器阵列,多个第一晶体管单元在第一方向上与忆阻器阵列的两端的多个忆阻器单元分别对应相连;多个第二晶体管单元在第二方向上与忆阻器阵列的另两端的多个忆阻器单元分别对应相连;其中,在第一方向上,多个第一晶体管单元与忆阻器阵列的两端的相邻忆阻器阵列对应相连;在第二方向上,多个第二晶体管单元与忆阻器阵列的另两端的相邻忆阻器阵列对应相连。基于本公开实施例的上述忆阻器阵列结构能够在保证稀疏矩阵乘加运算的运算精度的情况下,适配具有局部低串扰特性的系数矩阵与向量的乘加运算,而且通过减少阵列内选通晶体管的数量提高忆阻器阵列的集成度。
附图说明
19.图1a示意性示出了根据本公开实施例的忆阻器阵列结构的组成图;
20.图1b示意性示出了根据本公开实施例的忆阻器阵列的一组成图(一个忆阻器单元被选中);
21.图1c示意性示出了根据本公开实施例的忆阻器阵列的另一组成图(四个忆阻器单元被选中);
22.图2示意性示出了根据本公开实施例的忆阻器阵列结构的操作方法的流程图;
23.图3示意性示出了根据本公开实施例的忆阻器阵列结构的权重映射过程的应用场景图;
24.图4示意性示出了根据本公开实施例的应用忆阻器阵列结构的神经网络权重矩阵的生成方法的流程图;以及
25.图5示意性示出了根据本公开实施例的对应于图4所示的神经网络稀疏矩阵图。
具体实施方式
26.为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
27.需要说明的是,在附图或说明书正文中,未绘示或描述的实现方式,均为所属技术领域中普通技术人员所知的形式,并未进行详细说明。此外,上述对各元件和方法的定义并不仅限于实施例中提到的各种具体结构、形状或方式,本领域普通技术人员可对其进行简单地更改或替换。
28.还需要说明的是,实施例中提到的方向用语,例如“上”、“下”、“前”、“后”、“左”、“右”等,仅是参考附图的方向,并非用来限制本公开的保护范围。贯穿附图,相同的元素由相同或相近的附图标记来表示。在可能导致对本公开的理解造成混淆时,将省略常规结构或构造。
29.并且图中各部件的形状和尺寸不反映真实大小和比例,而仅示意本公开实施例的内容。另外,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。
30.再者,单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。
31.说明书与权利要求中所使用的序数例如“第一”、“第二”、“第三”等的用词,以修饰相应的元件,其本身并不意味着该元件有任何的序数,也不代表某一元件与另一元件的顺序或是制造方法上的顺序,这些序数的使用仅用来使具有某命名的一元件得以和另一具有相同命名的元件能做出清楚区分。
32.本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把他们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把他们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权
利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的代替特征来代替。并且,在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。
33.类似地,应当理解,为了精简本公开并帮助理解各个公开方面的一个或多个,在上面对本公开的示例性实施例的描述中,本公开的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本公开要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,公开方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本公开的单独实施例。
34.在实现稀疏型深度神经网络时,现有技术方案主要存在两个主要问题:第一,1r交叉阵列虽然具备4f2的高集成度优势,但由于其存在串扰问题,读写精度和运算准确度都难以保证,很难实现规模较大的矩阵运算;第二,由于每一个忆阻器都需要单独的晶体管选通,导致1t1r交叉阵列的集成度不高,影响存内计算系统的面效比。
35.为解决现有实现稀疏型深度神经网络的技术中因1r交叉阵列存在串扰问题以及因每个忆阻器都需要单独的晶体管选通而导致的矩阵运算规模被限制且存内计算系统的面效比低的技术问题至少之一,本公开提供了一种应用于稀疏矩阵乘加运算的忆阻器阵列结构及其操作方法、神经网络稀疏化装置,可以提供一种能够实现稀疏矩阵乘加运算的高集成度的忆阻器阵列结构,并能够适配高集成度的忆阻器阵列结构的神经网络稀疏化装置。
36.如图1a-图1c所示,本公开的一个方面提供了一种忆阻器阵列结构100,其中,包括多个结构子阵列,多个结构子阵列中的每个结构子阵列包括多个忆阻器单元、多个第一晶体管单元和多个第二晶体管单元。
37.多个忆阻器单元分布排列形成忆阻器阵列,
38.多个第一晶体管单元在第一方向上与忆阻器阵列的两端的多个忆阻器单元分别对应相连;
39.多个第二晶体管单元在第二方向上与忆阻器阵列的另两端的多个忆阻器单元分别对应相连;
40.其中,在第一方向上,多个第一晶体管单元与忆阻器阵列的两端的相邻忆阻器阵列对应相连;在第二方向上,多个第二晶体管单元与忆阻器阵列的另两端的相邻忆阻器阵列对应相连。
41.如图1a所示忆阻器阵列结构包括多个结构子阵列a、b、c和d,各个结构子阵列可以具有相同数量的忆阻器单元。
42.其中,以结构子阵列a为例,如图1a-图1c所示,结构子阵列a包括多个忆阻器单元m
11-m
nn
,共计n
×
n个忆阻器单元。这些忆阻器单元彼此可以通过对应的字线wl和位线bl相互连接,呈阵列规律分布,构成一忆阻器单元阵列,即忆阻器阵列。
43.在第一方向x上,多个第一晶体管单元t
21-t
2n
与忆阻器阵列a的一端的多个忆阻器单元m
11-m
n1
一一对应相连;同时,多个第一晶体管单元t
31-t
3n
与忆阻器阵列a的另一端的多个忆阻器单元m
1n-m
nn
一一对应相连。
44.在第二方向y上,多个第二晶体管单元t
11-t
1n
与忆阻器阵列a的一端的多个忆阻器单元m
11-m
1n
一一对应相连;同时,多个第二晶体管单元t
41-t
4n
与忆阻器阵列a的另一端的多个忆阻器单元m
n1-m
nn
一一对应相连。
45.此外,在第一方向x上,相邻的两个忆阻器阵列a和b之间可以共用一列第一晶体管单元t
31-t
3n
;同时,在第二方向y上,相邻的两个忆阻器阵列a和c之间可以共用一列第二晶体管单元t
41-t
4n

46.因此,基于本公开实施例的上述忆阻器阵列结构,可以将权重映射矩阵均匀划分为等规模的子块,在子块的局部空间内,同行只存在一个非零元素,从而避免1r结构带来的读/写串扰问题,因此可以在局部空间内省去1t1r阵列中的部分晶体管,极大提高忆阻器阵列集成度。
47.显然,借助于上述忆阻器阵列结构,通过对忆阻器阵列中的晶体管进行剔除,同时结合相邻忆阻器阵列对同一列晶体管单元的复用,可以极大地减少阵列结构内选通晶体管单元的数量,从而能够极大提升忆阻器单元构成的阵列的集成度。而且,上述的忆阻器阵列结构能够同时保留晶体管单元的原始功能,且同时可以保证阵列结构的运算精度,适配具有局部低串扰特性的稀疏矩阵与向量的乘加运算。因此,本公开的上述忆阻器阵列结构能够实现稀疏矩阵乘加运算的高集成度,适配高集成度的忆阻器阵列结构的神经网络稀疏化装置。
48.如图1a-图1c所示,根据本公开的实施例,忆阻器阵列包括多个第一子阵列或者多个第二子阵列。
49.多个第一子阵列在第二方向上依次排布设置;或者
50.多个第二子阵列在第一方向上依次排布设置;
51.其中,多个第一子阵列中的忆阻器单元数量、多个第二子阵列中的忆阻器单元数量以及忆阻器阵列的忆阻器单元数量相等。
52.对于忆阻器阵列a而言,在第二方向y上,第一子阵列m
11-m
1n
、第一子阵列m
21-m
2n


第一子阵列m
n1-m
nn
共同按顺序排布构成忆阻器阵列。同样,在第一方向x上,第二子阵列m
11-m
n1
、第二子阵列m
12-m
n2


第二子阵列m
1n-m
nn
共同按顺序排布构成忆阻器阵列。其中,该多个第一子阵列和多个第二子阵列实际上是按照不同方向对忆阻器阵列的拆分。因此,多个第一子阵列中的忆阻器单元数量、多个第二子阵列中的忆阻器单元数量以及忆阻器阵列的忆阻器单元数量相等,都为n
×
n个忆阻器单元。
53.如图1a-图1c所示,根据本公开的实施例,多个忆阻器单元中的每个忆阻器单元包括顶电极、底电极和介质层。
54.顶电极与多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连;
55.底电极与多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连;
56.介质层位于顶电极和底电极之间,用于实现每个忆阻器单元的阻变。
57.对于忆阻器阵列a的多个忆阻器单元中的一个忆阻器单元m
11
而言,其顶电极a与在第一方向x上设置的第一字线wl1相连,同时该第一字线wl1用于串接第一子阵列m
11-m
1n
中的每个忆阻器单元,并且该第一子阵列m
11-m
1n
两端对应的晶体管t
21
和t
31
也连接到该第一字线
wl1上。
58.此外,该忆阻器单元m
11
的底电极c与在第二方向y上设置的第一位线bl1相连,同时该第一位线bl1用于串接第二子阵列m
11-m
n1
中的每个忆阻器单元,并且该第一子阵列m
11-m
n1
两端对应的晶体管t
11
和t
41
也连接到该第一位线bl1上。
59.该忆阻器单元m
11
的介质层b设置于顶电极a和底电极c之间,当忆阻器单元m
11
的顶电极a和/或底电极c上接收施加电压信号时,该忆阻器单元m
11
的介质层b可以发生阻值变化,产生高低阻态,从而实现该忆阻器单元m
11
的阻变。
60.如图1a-图1c所示,根据本公开的实施例,多个第一晶体管单元中的每个第一晶体管单元包括栅极、源极和漏极。
61.栅极与多个第一子阵列中的对应一个第一子阵列在第一方向上的第二字线相连;
62.源极与多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连,或与相邻忆阻器阵列中的对应一个第一子阵列在第一方向上的另一第一字线相连;
63.漏极与相邻忆阻器阵列中的对应一个第一子阵列在第一方向上的另一第一字线相连,或与多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连。
64.对于第一晶体管单元多个第一晶体管单元t
21-t
2n
与t
31-t
3n
中的一个第一晶体管单元t
21
而言,该第一晶体管单元t
21
的栅极可以连接到在第一方向x上设置的第二字线wg1上,该第二字线wg1对应第一字线wl1设置,即与第一子阵列m
11-m
1n
相对应。
65.该第一晶体管单元t
21
的源极连接到第一子阵列m
11-m
1n
在第一方向x上的第一字线wl1上,或者与相邻忆阻器阵列中的对应第一子阵列在第一方向x上的另一第一字线相连(图1a-图1c未示出)。
66.该第一晶体管单元t
21
的漏极作为上述源极相对应的连接端,该漏极与相邻的忆阻器阵列中的对应的第一子阵列在第一方向x上的另一第一字线相连(图1a-图1c未示出),或连接到该第一子阵列m
11-m
1n
在第一方向x上的第一字线wl1上。
67.如此,在第一方向x上能够实现相邻两个忆阻器阵列对位于二者之间的一列晶体管单元阵列实现复用,即忆阻器阵列的第一子阵列与相邻忆阻器阵列对应的第一子阵列之间的一个第一晶体管单元可以同时被两个相邻的第一子阵列忆阻器单元所共用,因此,在第一方向x上相邻忆阻器阵列之间的第一晶体管单元阵列可以同时作为两个忆阻器阵列的边界。也即,极大地减少阵列结构内选通晶体管单元的数量,从而能够极大提升忆阻器单元构成的阵列的集成度。
68.如图1a-图1c所示,根据本公开的实施例,多个第二晶体管单元中的每个第二晶体管单元包括栅极、源极和漏极。
69.栅极与多个第二子阵列中的对应一个第二子阵列在第二方向上的第二位线相连;
70.源极与多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连,或与相邻忆阻器阵列中的对应一个第二子阵列在第二方向上的另一第一位线相连;
71.漏极与相邻忆阻器阵列中的对应一个第二子阵列在第二方向上的另一第一位线相连,或与多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连。
72.对于第二晶体管单元多个第二晶体管单元t
11-t
1n
与t
41-t
4n
中的一个第二晶体管单元t
11
而言,该第二晶体管单元t
11
的栅极可以连接到在第二方向y上设置的第二位线bg1上,该第二位线bg1对应第一位线bl1设置,即与第二子阵列m
11-m
n1
相对应。
73.该第一晶体管单元t
11
的源极连接到第二子阵列m
11-m
n1
在第二方向y上的第一位线bl1上,或者与相邻忆阻器阵列中的对应第二子阵列在第二方向y上的另一第一位线相连(图1a-图1c未示出)。
74.该第二晶体管单元t
11
的漏极作为上述源极相对应的连接端,该漏极与相邻的忆阻器阵列中的对应的第二子阵列在第二方向y上的另一第一位线相连(图1a-图1c未示出),或连接到该第二子阵列m
11-m
n1
在第二方向y上的第一位线bl1上。
75.如此,在第二方向y上能够实现相邻两个忆阻器阵列对位于二者之间的一列晶体管单元阵列实现复用,即忆阻器阵列的第二子阵列与相邻忆阻器阵列对应的第二子阵列之间的一个第二晶体管单元可以同时被两个相邻的第二子阵列忆阻器单元所共用,因此,在第二方向上相邻忆阻器阵列之间的第二晶体管单元阵列可以同时作为两个忆阻器阵列的边界。也即,进一步地极大地减少阵列结构内选通晶体管单元的数量,从而能够极大提升忆阻器单元构成的阵列的集成度。
76.因此,本公开实施例的上述忆阻器阵列结构中,主要由忆阻器单元和晶体管单元构成。局部上,1r忆阻器单元呈阵列分布,忆阻器单元两端的电极分别引出,同行忆阻器单元的顶电极通过字线wl相互连接,同列忆阻器单元的底电极通过位线bl连接,从而构成1r的交叉阵列结构。其中,多个1r交叉阵列结构所引出的字线wl和位线bl还可以通过晶体管单元的源漏端相互连接,同一字线wl(或位线bl)的晶体管单元的栅端相互连接并引出,形成平行于字线wl(或位线bl)的选通结构,对应于字线wg(或位线bg),从而构成了具备大规模拓展潜力的基于忆阻器单元的阵列结构。其中,忆阻器单元可以用以实现存储和计算功能,晶体管单元可以用以实现器件选通和抑制串扰的功能。
77.由于忆阻器阵列结构的集成度是评价忆阻型存内计算系统的重要性能指标,因此,通过采用本发明提出的新型忆阻器阵列结构,忆阻型存内计算系统能够在保证运算精度的前提下,适配具有局部低串扰特性的稀疏矩阵与向量的乘加运算,通过减少阵列内选通晶体管的数量提高忆阻器阵列的集成度。
78.如图2所示,本公开的另一个方面提供了一种上述的忆阻器阵列结构的操作方法,其中,包括步骤s201-s202。
79.在步骤s201中,选通忆阻器阵列中的至少一个忆阻器单元;
80.在步骤s202中,对选通的至少一个忆阻器单元执行读操作或写操作,以控制至少一个忆阻器单元发生阻变。
81.如图1a所示,前述忆阻器阵列结构100在结构上利用忆阻器单元在局部构建1r交叉阵列结构,然后,将多个1r交叉阵列的行(wl
1-wlm)和列(bl
1-blm)两端分别引出,利用晶体管单元的源端和漏端将多个1r交叉阵列相互连接,阵列上源漏相连的同行或同列的晶体管单元的栅端相互连接并引出,形成行选通(wg
1-wgm)和列选通(bg
1-bgm)结构。
82.基于上述忆阻器阵列结构100,如图1b和图1c所示,利用行选通(wg
1-wgm)和列选通(bg
1-bgm)结构选通定位至少一个忆阻器单元器件,将其它未选中的行选通和列选通结构接地(即接gnd),在对应选中忆阻器单元器件的字线wl和位线bl上施加读/写信号,其它未选中的字线wl和位线bl设置成浮置状态(即接float),实现对至少一个忆阻器单元器件的读写操作。
83.借此,可以实现对至少一个忆阻器单元的读/写操作。
84.如图1a、图1b和图2所示,根据本公开的实施例,在选通忆阻器阵列中的至少一个忆阻器单元中,包括:
85.在至少一个忆阻器单元所在的第二字线和第二位线上施加开启电压,并将其他第二字线和第二位线接地。
86.首先,需要选通待操作的忆阻器单元。
87.具体地,如图1b所示,若要针对忆阻器单元m
2n
进行选通,在忆阻器单元m
2n
所在行列的wg2和bgn上同时施加开启电压(即v
gae
),以打开该忆阻器单元m
2n
所在行、列的晶体管单元t
22
、t
32
、t
1n
和t
4n
,并将其他行列的wg1、wg
3-wgn和bg
1-bg
n-1
置于接地(即接gnd)。
88.相应地,如图1c所示,若要针对忆阻器单元m
11
、m
12
、m
21
和m
22
进行选通,则在忆阻器单元m
11
、m
12
、m
21
和m
22
所在行列的wg1、wg2和bg1、bg2上同时施加开启电压(即v
gate
),以打开该忆阻器单元m
11
、m
12
、m
21
和m
22
所在行、列的晶体管单元t
21
、t
22
、t
31
、t
32
和t
11
、t
12
、t
41
、t
42
,并将其他行列的wg
3-wgn和bg
3-bgn置于接地(即接gnd)。
89.如图1a、图1b和图2所示,根据本公开的实施例,在对选通的至少一个忆阻器单元执行读操作或写操作之前还包括:
90.对至少一个忆阻器单元所在的第一字线和第一位线上施加读取信号或写入信号,并将其他第一字线和第一位线置于浮置状态。
91.然后,读/写忆阻器件。
92.具体地,如图1b所示,在被选中忆阻器单元m
2n
所在行的字线wl2上和所在列的位线bln上施加读取信号或写入信号(如读取电压v
read
),同时将其他行、列的字线wl1、wl
3-wln和位线bl
1-bl
n-1
置于浮置状态(即接float)。
93.同理,如图1c所示,针对忆阻器单元m
11
、m
12
、m
21
和m
22
相应的字线和位线上施加读取信号或写入信号,并将其他字线和位线置于浮置状态,以对完成读/写器件的准备状态。对此,本领域技术人员应当可以理解,具体不作赘述。
94.如图1a、图1b和图2所示,根据本公开的实施例,在对选通的至少一个忆阻器单元执行读操作或写操作中,包括:
95.对至少一个忆阻器单元所在的第一字线施加读取电压,并通过所在的第一位线读取对应读取电压的电流值或电压值;或者
96.对至少一个忆阻器单元所在的第一位线施加读取电压,并通过所在的第一字线读取对应读取电压的电流值或电压值。
97.对于读取操作,如图1b所示,在被选中忆阻器单元m
2n
器件所在字线wl2施加读取电压信号(即接v
read
),同时利用该位线bln读取该忆阻器单元m
2n
器件的电流信号值或电压信号值。
98.另外,对于读取操作,如图1b所示,也可以在被选中忆阻器单元m
2n
器件所在位线bln施加读取电压信号(即接v
read
),同时利用该字线wl2读取该忆阻器单元m
2n
器件的电流信号值或电压信号值。
99.进一步地,如图1c所示,针对忆阻器单元m
11
、m
12
、m
21
和m
22
进行读取操作,可以依据上述针对被选中忆阻器单元m
2n
器件的读取操作进行。这一读取过程可以被认为是利用忆阻器阵列的存内计算功能,实现阵列的向量矩阵乘积运算。对此,本领域技术人员应当可以理解,具体不作赘述。
100.其中,该电流信号值或电压信号值用于确定该忆阻器单元m
2n
器件的阻变。具体地,依据基尔霍夫定律和欧姆定律,可以得到该忆阻器阵列结构所应用的向量-矩阵的乘积和结果。
101.如图1a、图1b和图2所示,根据本公开的实施例,在对选通的至少一个忆阻器单元执行读操作或写操作中,包括:
102.对至少一个忆阻器单元所在的第一字线上施加第一编程电压,并将所在的第一位线接地;或者
103.对至少一个忆阻器单元所在的第一位线上施加第二编程电压,并将所在的第一字线接地;
104.其中,第一编程电压与第二编程电压方向相反、大小相等。
105.对于写入操作,如图1b所示,在被选中忆阻器单元m2n器件所在字线wl2施加编程信号(即v
program
),同时对所在位线bln接gnd,以此构成该被编写的忆阻器单元m
2n
器件的电势差,从而控制该忆阻器单元m
2n
器件发生阻变。
106.另外,对于写入操作,如图1b所示,在被选中忆阻器单元m
2n
器件所在位线bln施加数值相同方向相反的另一编程信号(即-v
program
),同时对所在字线wl2接gnd,同样构成该被编写的忆阻器单元m
2n
器件的电势差,以控制该忆阻器单元m
2n
器件发生阻变。
107.进一步地,如图1c所示,针对忆阻器单元m
11
、m
12
、m
21
和m
22
进行写入操作,可以依据上述针对被选中忆阻器单元m
2n
器件的写入操作进行。对此,本领域技术人员应当可以理解,具体不作赘述。
108.可见,通过在并行输入信号对应的字线wg和并行输出对应的位线bg施加晶体管开启电压,并施加输入信号到字线wl,在输出端位线bl上读取电流/电压信号,即可以获取向量-矩阵乘加运算结果。
109.因此,被选中器件所在字线wl和位线bl上分别对应施加编程信号和gnd,以构成可以编写忆阻器件的电势差,从而控制忆阻器件发生阻变,从而可以完成对该忆阻器阵列的每个忆阻器单元的精准操作。
110.如图1a-图5所示,本公开的又一个方面提供了一种神经网络稀疏化装置,其中,该装置基于上述的忆阻器阵列结构100实现。
111.如图3所示,该神经网络稀疏化装置实现神经网络稀疏化和稀疏矩阵权重映射的过程。
112.第一步,将神经网络的三维权重矩阵z(行、列、通道c)依行向量分为固定步长的元素组r(包括w
21-w
24
),权重矩阵z的不同通道c相互独立。其中,元素组r中元素数量不得超过忆阻器矩阵中子矩阵的行数。
113.第二步,在元素组r内进行随机稀疏化操作,并最终使元素组r1内至多只包含一个非零元素w
23
,如步骤s301稀疏化。
114.第三步,将三维权重矩阵z1沿行向量展开成二维矩阵z2,二维矩阵z2列向量元素组r2的元素w
23
来自相同通道c,行向量为不同通道,如步骤s302降维。
115.第四步,将二维矩阵z2映射至忆阻器阵列结构100中,其中元素组r2对应局部1r交叉结构的列向量,由此确保同一个1r交叉阵列内,列向量至多包含一个非零元素,如步骤s303映射。
116.因此,可以通过基于上述忆阻器阵列结构的该神经网络稀疏化装置,采用多次稀疏、格式判断和再训练过程,在保证神经网络性能的前提下,将稠密的神经网络原始权重矩阵,稀疏化至局部子块的同列内只存在不超过一个的非零元素。因此,如图4所示,本公开实施例的神经网络稀疏化装置的神经网络稀疏化过程可以如下:
117.第一步,基于稠密权重矩阵结构训练神经网络,并得到原始权重矩阵分布。具体地,可以根据深度学习算法规则和实际任务需求,初始化神经网络结构和权重矩阵,利用深度学习算法,训练神经网络,并得到原始权重矩阵,如步骤s401-s402。
118.第二步,随机平衡稀疏化,即在固定步长下随机稀疏固定数量的矩阵元素,如稀疏50%的矩阵元素。具体地,可以将原始权重矩阵的元素根据上述如图3所示的映射规则,进行等步长分组,并在元素组内进行随机稀疏(如50%稀疏化),得到过渡矩阵,如步骤s402-s403。
119.第三步,再训练稀疏后的神经网络,提升网络性能。具体地,再次训练基于过渡矩阵的神经网络,通过修正过渡矩阵中非零元素的数值,降低稀疏化导致的性能损失,如步骤s403-s404。
120.第四步,判断矩阵的稀疏程度,确保稀疏矩阵映射至1r交叉阵列(即上述的忆阻器阵列结构100)后,不构成串扰回路。其中,对不满足需求的稀疏矩阵再次进行上述步骤s402-s404的过程,直到满足稀疏度要求,从而完成神经网络稀疏化过程,如步骤s405。为保证适配上述忆阻器阵列结构,在整个稀疏化过程中,需要保证稀疏步长不发生变化。其中,在,如步骤s405中,判断过渡矩阵是否满足元素组内至多单一非零元素的稀疏要求。如满足,则输出稀疏权重矩阵(如步骤s405-步骤s406),否则将过渡矩阵作为原始权重矩阵重复步骤s402-s404的过程。
121.如图5所示,基于上述忆阻器阵列结构的神经网络稀疏化装置,适配该高集成度忆阻阵列结构的稀疏矩阵可以由多个等规模的二维矩阵子块构成。子块处于矩阵的同列,且子块内同列最多只包含一个非零元素,非零元素位置可随机分布。此外,该矩阵的列元素表示神经网络的同一权重矩阵,行表示不同的权重矩阵。因此,子块对应忆阻器阵列结构中的局部1r交叉阵列。
122.至此,已经结合附图对本公开实施例进行了详细描述。
123.以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:


1.一种忆阻器阵列结构,其中,包括多个结构子阵列,所述多个结构子阵列中的每个结构子阵列包括:多个忆阻器单元,分布排列形成忆阻器阵列,多个第一晶体管单元,在第一方向上与所述忆阻器阵列的两端的多个忆阻器单元分别对应相连;多个第二晶体管单元,在第二方向上与所述忆阻器阵列的另两端的多个忆阻器单元分别对应相连;其中,在所述第一方向上,所述多个第一晶体管单元与所述忆阻器阵列的两端的相邻忆阻器阵列对应相连;在所述第二方向上,所述多个第二晶体管单元与所述忆阻器阵列的另两端的相邻忆阻器阵列对应相连。2.根据权利要求1所述的方法,其中,所述忆阻器阵列包括:多个第一子阵列,在所述第二方向上依次排布设置;或者多个第二子阵列,在所述第一方向上依次排布设置;其中,所述多个第一子阵列中的忆阻器单元数量、所述多个第二子阵列中的忆阻器单元数量以及所述忆阻器阵列的忆阻器单元数量相等。3.根据权利要求2所述的方法,其中,所述多个忆阻器单元中的每个忆阻器单元包括:顶电极,与所述多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连;底电极,与所述多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连;介质层,位于所述顶电极和所述底电极之间,用于实现所述每个忆阻器单元的阻变。4.根据权利要求3所述的方法,其中,所述多个第一晶体管单元中的每个第一晶体管单元包括:栅极,与所述多个第一子阵列中的对应一个第一子阵列在第一方向上的第二字线相连;源极,与所述多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连,或与所述相邻忆阻器阵列中的对应所述一个第一子阵列在第一方向上的另一第一字线相连;漏极,与所述相邻忆阻器阵列中的对应所述一个第一子阵列在第一方向上的另一第一字线相连,或与所述多个第一子阵列中的对应一个第一子阵列在第一方向上的第一字线相连。5.根据权利要求3所述的方法,其中,所述多个第二晶体管单元中的每个第二晶体管单元包括:栅极,与所述多个第二子阵列中的对应一个第二子阵列在第二方向上的第二位线相连;源极,与所述多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连,或与所述相邻忆阻器阵列中的对应所述一个第二子阵列在第二方向上的另一第一位线相连;漏极,与所述相邻忆阻器阵列中的对应所述一个第二子阵列在第二方向上的另一第一
位线相连,或与所述多个第二子阵列中的对应一个第二子阵列在第二方向上的第一位线相连。6.一种权利要求1-5中任一项所述的忆阻器阵列结构的操作方法,其中,包括:选通所述忆阻器阵列中的至少一个忆阻器单元;对所述选通的所述至少一个忆阻器单元执行读操作或写操作,以控制所述至少一个忆阻器单元发生阻变。7.根据权利要求6所述的操作方法,其中,在选通所述忆阻器阵列中的至少一个忆阻器单元中,包括:在所述至少一个忆阻器单元所在的第二字线和第二位线上施加开启电压,并将其他第二字线和第二位线接地。8.根据权利要求6所述的操作方法,其中,在所述对所述选通的所述至少一个忆阻器单元执行读操作或写操作之前还包括:对所述至少一个忆阻器单元所在的第一字线和第一位线上施加读取信号或写入信号,并将其他第一字线和第一位线置于浮置状态。9.根据权利要求8所述的操作方法,其中,在所述对所述选通的所述至少一个忆阻器单元执行读操作或写操作中,包括:对所述至少一个忆阻器单元所在的第一字线施加读取电压,并通过所在的第一位线读取对应所述读取电压的电流值或电压值;或者对所述至少一个忆阻器单元所在的第一位线施加读取电压,并通过所在的第一字线读取对应所述读取电压的电流值或电压值。10.根据权利要求8所述的操作方法,其中,在所述对所述选通的所述至少一个忆阻器单元执行读操作或写操作中,包括:对所述至少一个忆阻器单元所在的第一字线上施加第一编程电压,并将所在的第一位线接地;或者对所述至少一个忆阻器单元所在的第一位线上施加第二编程电压,并将所在的第一字线接地;其中,所述第一编程电压与所述第二编程电压方向相反、大小相等。11.一种神经网络稀疏化装置,其中,所述装置基于权利要求1-5中任一项所述的忆阻器阵列结构实现。

技术总结


本公开提供了一种忆阻器阵列结构及其操作方法、神经网络稀疏化装置。其中,该忆阻器阵列结构包括多个结构子阵列,多个结构子阵列中的每个结构子阵列包括多个忆阻器单元、多个第一晶体管单元和多个第二晶体管单元。多个忆阻器单元分布排列形成忆阻器阵列,多个第一晶体管单元在第一方向上与忆阻器阵列的两端的多个忆阻器单元分别对应相连;多个第二晶体管单元在第二方向上与忆阻器阵列的另两端的多个忆阻器单元分别对应相连;其中,在第一方向上,多个第一晶体管单元与忆阻器阵列的两端的相邻忆阻器阵列对应相连;在第二方向上,多个第二晶体管单元与忆阻器阵列的另两端的相邻忆阻器阵列对应相连。阻器阵列对应相连。阻器阵列对应相连。


技术研发人员:

周正 黄鹏 韩丽霞 康晋锋

受保护的技术使用者:

北京大学

技术研发日:

2021.12.16

技术公布日:

2022/3/11

本文发布于:2024-09-23 02:33:13,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/7558.html

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

标签:阵列   多个   单元   晶体管
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议