CN115083462A - 一种基于Sram的新型数字型存内计算装置 - Google Patents
一种基于Sram的新型数字型存内计算装置 Download PDFInfo
- Publication number
- CN115083462A CN115083462A CN202210822856.1A CN202210822856A CN115083462A CN 115083462 A CN115083462 A CN 115083462A CN 202210822856 A CN202210822856 A CN 202210822856A CN 115083462 A CN115083462 A CN 115083462A
- Authority
- CN
- China
- Prior art keywords
- sram
- array module
- counting
- computing device
- memory computing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/12—Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Static Random-Access Memory (AREA)
Abstract
本发明涉及一种基于Sram的新型数字型存内计算装置。所述新型数字型存内计算装置包括:Sram权重阵列模块、输入端口、与门阵列模块、计数阵列模块和数字式称重配置模块。其中,Sram权重阵列模块用于存储计算权重;输入端口用于获取输入数据;与门阵列模块用于基于计算权重和输入数据得到计算结果;计数阵列模块对计算结果进行计数操作得到计数结果;数字式称重配置模块用于基于计数结果生成最终的计算结果,进而能够在不过多的增加面积的基础上,提高神经网络进行加速时的并行度。
Description
技术领域
本发明涉及电子元器件技术领域,特别是涉及一种基于Sram的新型数字型存内计算装置。
背景技术
随着边缘计算的需求增加,冯诺伊曼体系也逐渐到了瓶颈。此时出现了存内计算的概念,存内计算通过对原有的存储阵列增加计算结构,实现了在阵列中的乘累加计算,大大降低了功耗。但现有的存内计算针对神经网络进行加速时,存在并行度低等缺点。
发明内容
为解决现有技术存在的上述确定,本发明提供了一种基于Sram的新型数字型存内计算装置。
为实现上述目的,本发明提供了如下方案:
一种基于Sram的新型数字型存内计算装置,包括:
Sram权重阵列模块,用于存储计算权重;
输入端口,用于获取输入数据;
与门阵列模块,分别与所述Sram权重阵列模块和所述输入端口连接,用于基于所述计算权重和所述输入数据得到计算结果;
计数阵列模块,与所述与门阵列模块连接,用于对所述计算结果进行计数操作得到计数结果;
数字式称重配置模块,与所述计数阵列模块连接,用于基于所述计数结果生成最终的计算结果。
优先地,所述Sram权重阵列模块包括N×M个Sram bitcell。
优先地,所述Sram权重阵列模块中第i行的M个Sram bitcell用于存储第i个权重的位数,i=1,2,...,N。
优先地,N=16。
优先地,所述与门阵列模块包括1×M个与门。
优先地,所述计数阵列模块包括1×M个计数器。
优先地,M=16。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供的基于Sram的新型数字型存内计算装置,包括:Sram权重阵列模块、输入端口、与门阵列模块、计数阵列模块和数字式称重配置模块。其中,Sram权重阵列模块用于存储计算权重;输入端口用于获取输入数据;与门阵列模块用于基于计算权重和输入数据得到计算结果;计数阵列模块对计算结果进行计数操作得到计数结果;数字式称重配置模块用于基于计数结果生成最终的计算结果,进而能够在不过多的增加面积的基础上,提高神经网络进行加速时的并行度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于Sram的新型数字型存内计算装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于Sram的新型数字型存内计算装置,在不过多的增加面积的基础上,能够提高神经网络进行加速时的并行度。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明提供的基于Sram的新型数字型存内计算装置,包括:Sram权重阵列模块、输入端口、与门阵列模块、计数阵列模块和数字式称重配置模块。与门阵列模块分别与Sram权重阵列模块和输入端口连接。计数阵列模块与与门阵列模块连接。数字式称重配置模块与计数阵列模块连接。其中,Sram权重阵列模块用于存储计算权重。输入端口用于获取输入数据。与门阵列模块用于基于计算权重和输入数据得到计算结果。计数阵列模块用于对计算结果进行计数操作得到计数结果。数字式称重配置模块用于基于计数结果生成最终的计算结果。其中,Sram权重阵列模块包括N×M个Sram bitcell。Sram权重阵列模块中第i行的M个Sram bitcell用于存储第i个权重的位数,i=1,2,...,N。与门阵列模块包括1×M个与门。计数阵列模块包括1×M个计数器。
下面以Sram权重阵列模块包括16×16个Sram bitcell为例,对本发明上述提供的基于sram的新型数字型存内计算装置的具体工作原理进行说明,在实际应用过程中,Srambitcell的个数可以依据实际需求进行选择。
如图1所示,Sram权重阵列模块中每个方框为一个Sram bitcell,权重按照如图1所示的方式存放:W1存在第一行上,第一行的16个Sram bitcell分别存放W1的16位数(即Wi[j],i=1,2,...,N,j=0,1,2,...,M)。其位线和输入数据每一位都做“与”(也就是乘)的操作。计算结果会给一个计数器,如果计数器的结果为1,则计数器累计加1。
本实施例中,新型数字型存内计算装置的计算过程采用了时分复用的思路:首先将权重按照上述方式写入阵列,然后进行计算,每个计算周期首先打开一行,进行Sram的读操作,则这一行的数据会反映在位线上,位线上的数据和输入数据做与之后,如果结果为1,则该位的数据累计加1。下一个周期打开下一行,如果结果为1,则再次累计,若为0,则不累计。这样16个周期后完成了每一位分别的累计和。最后按照高低位的权重,数字式称重配置模块(digital weight configuration module)会把数据组合起来,成为最终的结果。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (7)
1.一种基于Sram的新型数字型存内计算装置,其特征在于,包括:
Sram权重阵列模块,用于存储计算权重;
输入端口,用于获取输入数据;
与门阵列模块,分别与所述Sram权重阵列模块和所述输入端口连接,用于基于所述计算权重和所述输入数据得到计算结果;
计数阵列模块,与所述与门阵列模块连接,用于对所述计算结果进行计数操作得到计数结果;
数字式称重配置模块,与所述计数阵列模块连接,用于基于所述计数结果生成最终的计算结果。
2.根据权利要求1所述的基于Sram的新型数字型存内计算装置,其特征在于,所述Sram权重阵列模块包括N×M个Sram bitcell。
3.根据权利要求2所述的基于Sram的新型数字型存内计算装置,其特征在于,所述Sram权重阵列模块中第i行的M个Sram bitcell用于存储第i个权重的位数,i=1,2,...,N。
4.根据权利要求3所述的基于Sram的新型数字型存内计算装置,其特征在于,N=16。
5.根据权利要求1所述的基于Sram的新型数字型存内计算装置,其特征在于,所述与门阵列模块包括1×M个与门。
6.根据权利要求1所述的基于Sram的新型数字型存内计算装置,其特征在于,所述计数阵列模块包括1×M个计数器。
7.根据权利要求2、5或6所述的基于Sram的新型数字型存内计算装置,其特征在于,M=16。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210822856.1A CN115083462B (zh) | 2022-07-14 | 2022-07-14 | 一种基于Sram的数字型存内计算装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210822856.1A CN115083462B (zh) | 2022-07-14 | 2022-07-14 | 一种基于Sram的数字型存内计算装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115083462A true CN115083462A (zh) | 2022-09-20 |
CN115083462B CN115083462B (zh) | 2022-11-11 |
Family
ID=83258924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210822856.1A Active CN115083462B (zh) | 2022-07-14 | 2022-07-14 | 一种基于Sram的数字型存内计算装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115083462B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005063548A (ja) * | 2003-08-11 | 2005-03-10 | Semiconductor Energy Lab Co Ltd | メモリ及びその駆動方法 |
US20190130980A1 (en) * | 2017-10-31 | 2019-05-02 | Harish Singidi | Block Read Count Voltage Adjustment |
CN110458279A (zh) * | 2019-07-15 | 2019-11-15 | 武汉魅瞳科技有限公司 | 一种基于fpga的二值神经网络加速方法及系统 |
CN110543933A (zh) * | 2019-08-12 | 2019-12-06 | 北京大学 | 基于flash存算阵列的脉冲型卷积神经网络 |
CN110647983A (zh) * | 2019-09-30 | 2020-01-03 | 南京大学 | 一种基于存算一体器件阵列的自监督学习加速系统及方法 |
CN110825345A (zh) * | 2018-08-08 | 2020-02-21 | 闪迪技术有限公司 | 使用非易失性存储器单元的乘法 |
CN111816232A (zh) * | 2020-07-30 | 2020-10-23 | 中科院微电子研究所南京智能技术研究院 | 一种基于4管存储结构的存内计算阵列装置 |
CN112581996A (zh) * | 2020-12-21 | 2021-03-30 | 东南大学 | 基于磁性随机存储器的时域存内计算阵列结构 |
CN113035251A (zh) * | 2021-05-21 | 2021-06-25 | 中科院微电子研究所南京智能技术研究院 | 一种数字存内计算阵列装置 |
CN114723031A (zh) * | 2022-05-06 | 2022-07-08 | 北京宽温微电子科技有限公司 | 一种计算装置 |
-
2022
- 2022-07-14 CN CN202210822856.1A patent/CN115083462B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005063548A (ja) * | 2003-08-11 | 2005-03-10 | Semiconductor Energy Lab Co Ltd | メモリ及びその駆動方法 |
US20190130980A1 (en) * | 2017-10-31 | 2019-05-02 | Harish Singidi | Block Read Count Voltage Adjustment |
CN110825345A (zh) * | 2018-08-08 | 2020-02-21 | 闪迪技术有限公司 | 使用非易失性存储器单元的乘法 |
CN110458279A (zh) * | 2019-07-15 | 2019-11-15 | 武汉魅瞳科技有限公司 | 一种基于fpga的二值神经网络加速方法及系统 |
CN110543933A (zh) * | 2019-08-12 | 2019-12-06 | 北京大学 | 基于flash存算阵列的脉冲型卷积神经网络 |
CN110647983A (zh) * | 2019-09-30 | 2020-01-03 | 南京大学 | 一种基于存算一体器件阵列的自监督学习加速系统及方法 |
CN111816232A (zh) * | 2020-07-30 | 2020-10-23 | 中科院微电子研究所南京智能技术研究院 | 一种基于4管存储结构的存内计算阵列装置 |
CN112581996A (zh) * | 2020-12-21 | 2021-03-30 | 东南大学 | 基于磁性随机存储器的时域存内计算阵列结构 |
CN113035251A (zh) * | 2021-05-21 | 2021-06-25 | 中科院微电子研究所南京智能技术研究院 | 一种数字存内计算阵列装置 |
CN114723031A (zh) * | 2022-05-06 | 2022-07-08 | 北京宽温微电子科技有限公司 | 一种计算装置 |
Non-Patent Citations (3)
Title |
---|
YIN S: "XNOR-SRAM: In-memory computing SRAM macro for binary/ternary deep neural networks", 《IEEE JOURNAL OF SOLID-STATE CIRCUITS》 * |
张锋: "一种用于SRAM快速仿真的模型", 《半导体学报》 * |
王俊杰: "基于忆阻器的神经网络硬件的研究", 《中国博士学位论文全文数据库信息科技辑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115083462B (zh) | 2022-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11335387B2 (en) | In-memory computing circuit for fully connected binary neural network | |
CN108805272A (zh) | 一种基于fpga的通用卷积神经网络加速器 | |
CN106127302A (zh) | 处理数据的电路、图像处理系统、处理数据的方法和装置 | |
CN109979503A (zh) | 一种在内存中实现汉明距离计算的静态随机存储器电路结构 | |
CN117636945B (zh) | 5bit带符号位的同或与同或累加运算电路、CIM电路 | |
CN110633069B (zh) | 一种基于静态随机存储器的乘法电路结构 | |
CN110058839A (zh) | 一种基于静态随机存储器内存内减法的电路结构 | |
CN111723336A (zh) | 一种采用循环迭代方式的基于cholesky分解的任意阶矩阵求逆硬件加速系统 | |
CN110176264A (zh) | 一种基于内存内计算的高低位合并电路结构 | |
CN116126779A (zh) | 一种9t存算电路、乘累加运算电路、存内运算电路及芯片 | |
CN109240644A (zh) | 一种用于伊辛芯片的局部搜索方法及电路 | |
CN114360595A (zh) | 一种基于8t sram内存内行列双向的减法计算电路结构 | |
CN112116937B (zh) | 一种在存储器中实现乘法和或逻辑运算的sram电路结构 | |
CN116206650A (zh) | 一种8t-sram单元及基于该种8t-sram单元的运算电路、芯片 | |
CN115083462B (zh) | 一种基于Sram的数字型存内计算装置 | |
CN111126619A (zh) | 一种机器学习方法与装置 | |
CN112233712B (zh) | 一种6t sram存算装置、存算系统及存算方法 | |
CN109446478A (zh) | 一种基于迭代和可重构方式的复协方差矩阵计算系统 | |
CN115472197A (zh) | 一种通过冗余行量化位线电压差的sram存内计算电路 | |
CN115691609A (zh) | 一种基于事件驱动型电路设计的异步存储单元及方法 | |
CN110245756A (zh) | 用于处理数据组的可编程器件及处理数据组的方法 | |
CN115223619A (zh) | 一种存内计算电路 | |
CN110119806A (zh) | 基于fpga实现人工神经网络的方法和装置 | |
CN115586885A (zh) | 一种存内计算单元和加速方法 | |
CN115171746A (zh) | 一种存内计算单元及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |