一种全数字存内计算装置的制作方法



1.本发明涉及存内计算领域,特别是涉及一种全数字存内计算装置。


背景技术:



2.如今的边缘计算中最火热的领域即为存内计算领域。由于冯诺依曼架构在如今体系结构中因为数据和运算之间的交互产生了较大的能耗,因此存内计算这种解决数据传输功耗问题的架构便产生了。
3.刚刚起步的存内计算最主要使用的是模拟密集型电路,这种电路可以较快速的得到输出结果,但因为是模拟型电路,受到pvt效应以及外界的干扰较大。因此亟需一种新的计算模式,以减少外界干扰,提高计算精度。


技术实现要素:



4.本发明的目的是提供一种全数字存内计算装置,能够减少外界干扰,提高计算精度。
5.为实现上述目的,本发明提供了如下方案:
6.一种全数字存内计算装置,包括:sram读/写控制模块、sram wl驱动和输入激活驱动模块、加法树和计算模式输出模块、存储模式数据通路模块以及多列sram阵列;每一所述sram阵列包括:多个sram单元;每一所述sram单元用于将权重与输入进行按位乘法运算;
7.所述sram读/写控制模块与每一所述sram阵列中的位线bl和位线blb连接;
8.所述sram wl驱动和输入激活驱动模块与每一所述sram阵列中的位线wl和in端口连接;
9.所述加法树和计算模式输出模块与每一所述sram阵列连接;所述加法树和计算模式输出模块用于当在计算模式时,将每一所述sram阵列中的计算结果通过加法树进行相加以及输出相加结果;
10.所述存储模式数据通路模块与每一所述sram阵列中的位线bl和位线blb连接;所述存储模式数据通路模块用于提供与外界进行数据交互的路径。
11.可选地,所述sram阵列的数量为32列。
12.可选地,每一所述sram阵列包括32个所述sram单元。
13.可选地,所述sram单元包括:6t sram结构和与门;
14.所述6t sram结构分别与位线bl、位线blb以及字线wl连接;所述与门的第一输入端与所述6t sram结构中的权重存储点连接;所述与门的第二输入端与in端口连接;所述与门的输出端与所述加法树和计算模式输出模块连接。
15.可选地,所述加法树和计算模式输出模块包括:由多列加法器阵列构成的加法树;每一列加法器阵列用于将输入数据的相加结果的高位输入相应列的加法器阵列中,并将相加结果的低位在当前加法器阵列中进行计算。
16.可选地,每一列加法器阵列包括:32个加法器块;每一加法器块包括:多个加法器。
17.可选地,所述加法器包括:异或门xor1、异或门xor2、异或门xor3、异或门xor4、异或门xor5、与非门nand1、与非门nand2、与非门nand3、与非门nand4以及与门and4;
18.所述异或门xor1输入输入数据a和输入数据b,所述异或门xor2输入输入数据c和输入数据d,所述异或门xor1的输出端和所述异或门xor2的输出端与所述异或门xor3的输入连接,所述异或门xor3的输出为out[0],所述与非门nand1的输入端与所述异或门xor1的输出端以及输入数据c连接;所述异或门xor4输入输入数据b和输入数据c,所述异或门xor5输入输入数据b和输入数据d,所述与非门nand2的输入端与所述异或门xor4的输出端以及输入数据d连接,所述与非门nand3的输入端与所述异或门xor5的输出端以及输入数据a连接,所述与非门nand1的输出端、所述与非门nand2的输出端以及所述与非门nand3的输出端均与所述与非门nand4的输入端连接,所述与非门nand4的输出为out[1],所述与门and4的输入为输入数据a、输入数据b、输入数据c以及输入数据d,所述与门and4的输出为out[2]。
[0019]
根据本发明提供的具体实施例,本发明公开了以下技术效果:
[0020]
本发明所提供的一种全数字存内计算装置,包括:sram读/写控制模块、sramwl驱动和输入激活驱动模块、加法树和计算模式输出模块、存储模式数据通路模块以及多列sram阵列。本发明提供的一种全数字存内计算架构,减少了外界干扰,进而提高了计算精度。
附图说明
[0021]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]
图1为本发明所提供的一种全数字存内计算装置结构示意图;
[0023]
图2为加法树的结构示意图;
[0024]
图3为加法器的结构示意图。
具体实施方式
[0025]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0026]
本发明的目的是提供一种全数字存内计算装置,能够减少外界干扰,提高计算精度。
[0027]
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0028]
图1为本发明所提供的一种全数字存内计算装置结构示意图,如图1所示,本发明所提供的一种全数字存内计算装置,包括:sram读/写控制模块、sram wl驱动和输入激活驱动模块、加法树和计算模式输出模块、存储模式数据通路模块以及多列sram阵列;每一所述sram阵列包括:多个sram单元;每一所述sram单元用于将权重与输入进行按位乘法运算。
[0029]
所述sram读/写控制模块与每一所述sram阵列中的位线bl和位线blb连接;sram读/写控制模块为sram阵列在存储模式时提供存数时的位线bl和位线blb的电压驱动。
[0030]
所述sram wl驱动和输入激活驱动模块与每一所述sram阵列中的位线wl和in端口连接;sram wl驱动和输入激活驱动模块为整个sram阵列提供字线wl激励和输入激励,在不同的阶段提供不同的激励。
[0031]
所述加法树和计算模式输出模块与每一所述sram阵列连接;所述加法树和计算模式输出模块用于当在计算模式时,将每一所述sram阵列中的计算结果通过加法树进行相加以及输出相加结果。
[0032]
所述存储模式数据通路模块与每一所述sram阵列中的位线bl和位线blb连接;所述存储模式数据通路模块用于提供与外界进行数据交互的路径。
[0033]
所述sram阵列的数量为32列。
[0034]
每一所述sram阵列包括32个所述sram单元。
[0035]
如图1所示,所述sram单元包括:6t sram结构和与门;所述6t sram结构分别与位线bl、位线blb以及字线wl连接;所述与门的第一输入端与所述6t sram结构中的权重存储点连接;所述与门的第二输入端与in端口连接;所述与门的输出端与所述加法树和计算模式输出模块连接。即,与门的两端输入为权重和输入,输出连接到加法器阵列的输入端口,作为其数据送入。
[0036]
sram单元的结构支持无符号的输入和权重,并支持单比特输入,其中多比特输入的不同权位按照脉冲的方式进入与权重相乘,最高支持1bit输入和1bit权重的输入。
[0037]
所述加法树和计算模式输出模块包括:由多列加法器阵列构成的加法树;每一列加法器阵列用于将输入数据的相加结果的高位输入相应列的加法器阵列中,并将相加结果的低位在当前加法器阵列中进行计算。
[0038]
作为一个具体的实施例,将每列加法器阵列作为加法树的相应的level。如图2所示,每一个level接收前级的输出数据,直到最后一级计算出结果的最终level。每一个level中包含32个加法器块,用于处理每一列的数据;每一个加法器块中包含多个加法器;每一个加法器可输入4个1bit的数据,并输出不同权位的3bit数据进入不同的level中。
[0039]
如图2所示,level1的加法器阵列的输入为sram阵列中的权重与输入相乘后输出的结果,输出中高位进入相应的level中,低位在同一级level中计算。
[0040]
level2中接收来自level1的输出结果作为输入,输出与level1相同,高位进入到相应的level中进行计算,低位在同一级level中计算。
[0041]
level3接收来自level1和level2的输出作为输入,同时将低位留在同一级level中进行计算,高位送入下一级level中。
[0042]
如图3所示,所述加法器包括:异或门xor1、异或门xor2、异或门xor3、异或门xor4、异或门xor5、与非门nand1、与非门nand2、与非门nand3、与非门nand4以及与门and4。
[0043]
所述异或门xor1输入输入数据a和输入数据b,所述异或门xor2输入输入数据c和输入数据d,所述异或门xor1的输出端和所述异或门xor2的输出端与所述异或门xor3的输入连接,所述异或门xor3的输出为out[0],所述与非门nand1的输入端与所述异或门xor1的输出端以及输入数据c连接;所述异或门xor4输入输入数据b和输入数据c,所述异或门xor5输入输入数据b和输入数据d,所述与非门nand2的输入端与所述异或门xor4的输出端以及
输入数据d连接,所述与非门nand3的输入端与所述异或门xor5的输出端以及输入数据a连接,所述与非门nand1的输出端、所述与非门nand2的输出端以及所述与非门nand3的输出端均与所述与非门nand4的输入端连接,所述与非门nand4的输出为out[1],所述与门and4的输入为输入数据a、输入数据b、输入数据c以及输入数据d,所述与门and4的输出为out[2]。
[0044]
本发明所提供的加法器通过结合多个输入数据,减少了加法器使用的级数,每4个输入数据仅需使用一个加法器,即通过将4个1bit乘法结果相加,得到一个3bit的部分和结果,从而通过一级加法器实现了两级加法器才能实现的功能,相比于传统加法器具有更快的速度。加法器通过门级电路产生数据的每一位,每一个新型加法器产生高、中、低三个权位的数据,分别送入到不同的level中去。
[0045]
本发明所提供的一种全数字存内计算装置的操作模式包括:存储模式和计算模式。
[0046]
存储模式的操作过程与传统sram阵列的操作过程类似,通过sram读/写控制模块来完成行列选择操作,将存储模式数据通路模块中的数据写入,再对位线bl和位线blb进行预充电,最后通过sram wl驱动和输入激活驱动模块打开读取数据的sram单元进行读数,最终的读取结果通过sram读/写控制模块输出,从而完成了一个读写操作。
[0047]
计算模式下,首先通过存储模式将权重数据存入到sram阵列中去,再经过sram wl驱动和输入激活驱动模块将输入数据送入到sram阵列中,每一个sram单元得到一个1bit乘加的结果,将此结果送入加法器阵列中去。
[0048]
加法器阵列分为多个level,每一个level计算同一权位的数据。例如最低位的数据在level1中进行计算,得到的结果分别送入下一级的加法器阵列中去;每一级的加法器阵列有32个加法器块,每一个加法器块计算一列和的结果。
[0049]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0050]
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

技术特征:


1.一种全数字存内计算装置,其特征在于,包括:sram读/写控制模块、sramwl驱动和输入激活驱动模块、加法树和计算模式输出模块、存储模式数据通路模块以及多列sram阵列;每一所述sram阵列包括:多个sram单元;每一所述sram单元用于将权重与输入进行按位乘法运算;所述sram读/写控制模块与每一所述sram阵列中的位线bl和位线blb连接;所述sram wl驱动和输入激活驱动模块与每一所述sram阵列中的位线wl和in端口连接;所述加法树和计算模式输出模块与每一所述sram阵列连接;所述加法树和计算模式输出模块用于当在计算模式时,将每一所述sram阵列中的计算结果通过加法树进行相加以及输出相加结果;所述存储模式数据通路模块与每一所述sram阵列中的位线bl和位线blb连接;所述存储模式数据通路模块用于提供与外界进行数据交互的路径。2.根据权利要求1所述的一种全数字存内计算装置,其特征在于,所述sram阵列的数量为32列。3.根据权利要求1所述的一种全数字存内计算装置,其特征在于,每一所述sram阵列包括32个所述sram单元。4.根据权利要求1所述的一种全数字存内计算装置,其特征在于,所述sram单元包括:6t sram结构和与门;所述6t sram结构分别与位线bl、位线blb以及字线wl连接;所述与门的第一输入端与所述6t sram结构中的权重存储点连接;所述与门的第二输入端与in端口连接;所述与门的输出端与所述加法树和计算模式输出模块连接。5.根据权利要求4所述的一种全数字存内计算装置,其特征在于,所述加法树和计算模式输出模块包括:由多列加法器阵列构成的加法树;每一列加法器阵列用于将输入数据的相加结果的高位输入相应列的加法器阵列中,并将相加结果的低位在当前加法器阵列中进行计算。6.根据权利要求5所述的一种全数字存内计算装置,其特征在于,每一列加法器阵列包括:32个加法器块;每一加法器块包括:多个加法器。7.根据权利要求6所述的一种全数字存内计算装置,其特征在于,所述加法器包括:异或门xor1、异或门xor2、异或门xor3、异或门xor4、异或门xor5、与非门nand1、与非门nand2、与非门nand3、与非门nand4以及与门and4;所述异或门xor1输入输入数据a和输入数据b,所述异或门xor2输入输入数据c和输入数据d,所述异或门xor1的输出端和所述异或门xor2的输出端与所述异或门xor3的输入连接,所述异或门xor3的输出为out[0],所述与非门nand1的输入端与所述异或门xor1的输出端以及输入数据c连接;所述异或门xor4输入输入数据b和输入数据c,所述异或门xor5输入输入数据b和输入数据d,所述与非门nand2的输入端与所述异或门xor4的输出端以及输入数据d连接,所述与非门nand3的输入端与所述异或门xor5的输出端以及输入数据a连接,所述与非门nand1的输出端、所述与非门nand2的输出端以及所述与非门nand3的输出端均与所述与非门nand4的输入端连接,所述与非门nand4的输出为out[1],所述与门and4的输入为输入数据a、输入数据b、输入数据c以及输入数据d,所述与门and4的输出为out[2]。

技术总结


本发明涉及一种全数字存内计算装置。该装置中SRAM读/写控制模块与每一SRAM阵列中的位线BL和位线BLB连接;SRAM WL驱动和输入激活驱动模块与每一SRAM阵列中的位线WL和IN端口连接;加法树和计算模式输出模块与每一SRAM阵列连接;加法树和计算模式输出模块用于当在计算模式时,将每一SRAM阵列中的计算结果通过加法树进行相加以及输出相加结果;存储模式数据通路模块与每一SRAM阵列中的位线BL和位线BLB连接;存储模式数据通路模块用于提供与外界进行数据交互的路径。本发明能够减少外界干扰,提高计算精度。高计算精度。高计算精度。


技术研发人员:

乔树山 曹景楠 尚德龙 周玉梅

受保护的技术使用者:

中科南京智能技术研究院

技术研发日:

2022.08.16

技术公布日:

2022/11/11

本文发布于:2024-09-22 04:16:26,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/3262.html

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

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