存算一体存储阵列及其卷积运算方法技术

技术编号:26792014 阅读:28 留言:0更新日期:2020-12-22 17:07
本发明专利技术提供了一种存算一体存储阵列及其卷积运算方法,通过同步操作同组斜向块,可完成输入矩阵及权重矩阵的卷积运算,且同步得到结果矩阵的每个元素,实现并行运算,从而节省时间和功耗;尽管每一次卷积运算涉及到的存储单元很稀疏,但是通过开关管可控制不需要参与运算的存储单元关闭,不会造成存储单元的浪费,也不会增加功耗。

【技术实现步骤摘要】
存算一体存储阵列及其卷积运算方法
本专利技术涉及集成电路设计
,尤其涉及一种存算一体存储阵列及其卷积运算方法。
技术介绍
卷积神经网络(ConvolutionalNeuralNetwork,CNN)是人工智能领域主要用于处理图像数据的一种网络架构。这种网络结构针对图像的特点,在常规的深度神经网络上进行了一些改进,结构主要包括了卷积层(Convolutionallayer),池化层(poolinglayer)和全连接层(fullyconnectedlayers)。近年来,随着新型存储技术的发展,基于存储阵列的存算一体存储结构逐渐成为优化卷积神经网络运算速度和功耗的一种可行的技术。现在的存算一体存储结构主要利用了存储阵列的矩阵结构,与卷积神经网络中全连接层的结构相似,同时可以利用电学信号进行乘加运算,在实现方式上比较直观。在卷积神经网络中,卷积层也占据了整个网络相当部分的运算量,现有的应用于全连接层的存储矩阵结构与卷积层的运算方式并不完全匹配。图1为卷积运算中每一层的卷积运算示意图,如图1所示,每次运算都会用到一个卷积核(权重矩阵W),里面存在权重值,在运算时,会从输入矩阵X中选取与卷积核相同的区域,将该区域的每一个输入值与卷积核的相应权重值相乘,然后将所有乘积相加,作为一个输出值;然后不断重复乘加步骤直至得到结果矩阵Y。这种卷积的乘加方式,利用传统的存储阵列比较难以实现,主要的难点在于,无法简单的将处于不同行的乘积数值叠加在一起,以及无法简单的在同一时刻运算出多个卷积输出值。专利技术内容本专利技术的目的在于提供一种存算一体存储阵列及其卷积运算方法,能够在存储阵列中实现卷积运算。为了达到上述目的,本专利技术提供了一种存算一体存储阵列,可用于输入矩阵X与权重矩阵W的卷积运算,所述输入矩阵X具有i行j列,所述权重矩阵W具有n行n列,i=n>1,j≤2n-1,至少包括p行q列存储单元,其中,p≥n(2n-1),q=n;每列中相邻的n个存储单元构成一运算块,所述运算块中的n个存储单元的输出端均连接至同一开关管的一端,所述开关管的另一端作为所述运算块的输出端,同一列运算块的输出端相连后作为该列存储单元的输出端,同一行的存储单元的输入端相连后作为该行存储单元的输入端;在行方向上相邻的n个运算块构成一斜向块,所述斜向块中的n个运算块的开关管位于同行且同步开闭,所述斜向块中第k列的运算块与第k+1列的运算块向下错位一个存储单元,其中,1≤k≤n-1;在列方向上相隔(2n-1)行的斜向块的斜向块为同组斜向块,同组斜向块中的开关管同步开闭。可选的,每个所述斜向块具有(2n-1)行存储单元及n列存储单元。可选的,从上至下第m个斜向块中的n个所述运算块的开关管均位于第m·n行,其中m为正整数,且m·n≤p。可选的,第m个斜向块中的n个所述运算块的开关管均由一条控制线控制。可选的,每个所述斜向块中均具有n2个存储单元。可选的,所述存储单元输出的数据为所述存储单元存储的数据与输入端输入的数据的乘积,所述运算块的输出端输出的数据为其包括的n个存储单元输出的数据的叠加。可选的,每列存储单元的输出端输出的数据为该列中所述开关管开启的运算块输出的数据的叠加。可选的,所述存储单元包括闪存、阻变存储器或忆阻器中的任一种。本专利技术还提供了一种所述存算一体存储阵列的卷积运算方法,包括:打开n个同组斜向块中的开关管,关闭其余的开关管;在n个同组斜向块的第f个斜向块中,按照从上往下的顺序逐行向每行存储单元的输入端输入输入矩阵X中的xf1~xfj元素,向每个所述运算块的n个存储单元对应输入权重矩阵W中的wf1~wfn元素;将n列存储单元的输出端输出的数据组合为结果矩阵Y。可选的,所述结果矩阵Y具有一行及j-n+1列,每列存储单元的输出端输出的数据为所述结果矩阵Y中对应列的元素。在本专利技术提供的存算一体存储阵列及其卷积运算方法具有如下有益效果:1)通过同步操作同组斜向块,可完成输入矩阵及权重矩阵的卷积运算,且同步得到结果矩阵的每个元素,实现并行运算,从而节省时间和功耗;2)尽管每一次卷积运算涉及到的存储单元很稀疏,但是通过开关管可控制不需要参与运算的存储单元关闭,不会造成存储单元的浪费,也不会增加功耗。附图说明图1为卷积运算中每一层的卷积运算示意图;图2为本专利技术实施例提供的存算一体存储阵列的示意图;图3为本专利技术实施例提供的存算一体存储阵列的局部示意图;图4为本专利技术实施例提供的存算一体存储阵列在进行运算时的示意图;图5为本专利技术实施例提供的存算一体存储阵列的卷积运算方法的流程图;图6为本专利技术实施例提供的存算一体存储阵列中的前23行的示意图。具体实施方式下面将结合示意图对本专利技术的具体实施方式进行更详细的描述。根据下列描述,本专利技术的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本专利技术实施例的目的。对于输入矩阵X与权重矩阵W的卷积运算,其结果矩阵Y可以用下列公式表示:其中,yuv为结果矩阵Y中第u行第v列的元素,xij为输入矩阵X中第i行第j列的元素,i=u+s,j=v+t,wrz为权重矩阵W中第r行第s列的元素,r=s+1,z=t+1,且权重矩阵W为具有n行及n列卷积核,n为大于1的整数,s、t无实际含义。可以将公式(1)变换为公式(2):或者可以将公式(1)变换为公式(3):可见,结果矩阵Y的每个元素均可以通过两步计算得到,其中第一步计算输入矩阵X的每一行与相应权重的乘加和,第二步将各行的乘加和再叠加起来。基于此,本实施例提供了一种存算一体存储阵列,可对输入矩阵X与权重矩阵W的卷积运算得到结果矩阵Y。本实施例中,输入矩阵X的行数i及列数j与等于权重矩阵W的尺寸n满足如下关系:i=n,j≤2n-1,如此一来,当输入矩阵X与权重矩阵W进行卷积运算之后,结果矩阵Y为一维矩阵,只有一行及(j-n+1)列,即:结果矩阵Y=[y11、y12、…、y1(j-n+1)],本实施例中,j=2n-1,结果矩阵Y具有n列。所述存算一体存储阵列至少包括p行q列存储单元,也即,每一行中包括q个存储单元,每列中包括p个存储单元,其中,p≥n(2n-1),q=n。为了便于描述,接下来本实施例将以p=n(2n-1),q=n为例对本实施例提供的存算一体存储阵列进行详细描述。图2为本实施例提供的存算一体存储阵列的示意图,图3为本实施例提供的存算一体存储阵列的局部示意图,应理解,图2及图3中每行和每列仅绘制出部分存储单元,其余的存储单元仅是为了展示方便而未绘制出,并非是不存在。如图2及图3所示,所述存算一体存储阵列具有p(p=n(2n-1))行及q(q=n)列,每行中的q个存储单元的输入端相连作为这一行存储单元的输入端,每列中的p个存储单本文档来自技高网...

【技术保护点】
1.一种存算一体存储阵列,可用于输入矩阵X与权重矩阵W的卷积运算,所述输入矩阵X具有i行j列,所述权重矩阵W具有n行n列,i=n>1,j≤2n-1,其特征在于,至少包括p行q列存储单元,其中,p≥n(2n-1),q=n;/n每列中相邻的n个存储单元构成一运算块,所述运算块中的n个存储单元的输出端均连接至同一开关管的一端,所述开关管的另一端作为所述运算块的输出端,同一列运算块的输出端相连后作为该列存储单元的输出端,同一行的存储单元的输入端相连后作为该行存储单元的输入端;/n在行方向上相邻的n个运算块构成一斜向块,所述斜向块中的n个运算块的开关管位于同行且同步开闭,所述斜向块中第k列的运算块与第k+1列的运算块向下错位一个存储单元,其中,1≤k≤n-1;/n在列方向上相隔(2n-1)行的斜向块为同组斜向块,同组斜向块中的开关管同步开闭。/n

【技术特征摘要】
1.一种存算一体存储阵列,可用于输入矩阵X与权重矩阵W的卷积运算,所述输入矩阵X具有i行j列,所述权重矩阵W具有n行n列,i=n>1,j≤2n-1,其特征在于,至少包括p行q列存储单元,其中,p≥n(2n-1),q=n;
每列中相邻的n个存储单元构成一运算块,所述运算块中的n个存储单元的输出端均连接至同一开关管的一端,所述开关管的另一端作为所述运算块的输出端,同一列运算块的输出端相连后作为该列存储单元的输出端,同一行的存储单元的输入端相连后作为该行存储单元的输入端;
在行方向上相邻的n个运算块构成一斜向块,所述斜向块中的n个运算块的开关管位于同行且同步开闭,所述斜向块中第k列的运算块与第k+1列的运算块向下错位一个存储单元,其中,1≤k≤n-1;
在列方向上相隔(2n-1)行的斜向块为同组斜向块,同组斜向块中的开关管同步开闭。


2.如权利要求1所述的存算一体存储阵列,其特征在于,每个所述斜向块具有(2n-1)行存储单元及n列存储单元。


3.如权利要求2所述的存算一体存储阵列,其特征在于,从上至下第m个斜向块中的n个所述运算块的开关管均位于第m·n行,其中m为正整数,且m·n≤p。


4.如权利要求3所述的存算一体存储阵列,其特征在于,第m个斜向块中的n个所述运算块的开关管均由一条控制线控制。

【专利技术属性】
技术研发人员:沈灵蒋宇严慧婕段杰斌温建新
申请(专利权)人:上海集成电路研发中心有限公司上海集成电路装备材料产业创新中心有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1