CN118016123A - 一种基于10t sram单元的存内计算和cam电路 - Google Patents
一种基于10t sram单元的存内计算和cam电路 Download PDFInfo
- Publication number
- CN118016123A CN118016123A CN202410295744.4A CN202410295744A CN118016123A CN 118016123 A CN118016123 A CN 118016123A CN 202410295744 A CN202410295744 A CN 202410295744A CN 118016123 A CN118016123 A CN 118016123A
- Authority
- CN
- China
- Prior art keywords
- nmos transistor
- electrically connected
- line
- drain
- sram
- 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.)
- Pending
Links
- 102100035273 E3 ubiquitin-protein ligase CBL-B Human genes 0.000 claims description 3
- 101000737265 Homo sapiens E3 ubiquitin-protein ligase CBL-B Proteins 0.000 claims description 3
- 230000002093 peripheral effect Effects 0.000 abstract description 11
- 230000002457 bidirectional effect Effects 0.000 abstract description 6
- 238000004364 calculation method Methods 0.000 abstract description 4
- 239000011159 matrix material Substances 0.000 abstract description 3
- 230000017105 transposition Effects 0.000 abstract description 3
- 230000004913 activation Effects 0.000 abstract description 2
- 238000000926 separation method Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 7
- 102100026413 Branched-chain-amino-acid aminotransferase, mitochondrial Human genes 0.000 description 2
- 101000935638 Homo sapiens Basal cell adhesion molecule Proteins 0.000 description 2
- 101000766294 Homo sapiens Branched-chain-amino-acid aminotransferase, mitochondrial Proteins 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Static Random-Access Memory (AREA)
Abstract
本发明涉及集成电路电路领域,公开了一种基于10T SRAM单元的存内计算和CAM电路。本发明中,本发明公开了一种新型的10T SRAM,和基于10T SRAM的存内运算和CAM电路。10T SRAM具有行和列访问晶体管,支持跨行和列的写操作。所提出的SRAM具有水平和垂直的读取端口,利用双向的读取端口可以实现双向的逻辑操作、搜索操作和矩阵转置,显著提高了计算的灵活性。读写端口的分离解决了多行激活时的读干扰问题,提高了单元的抗干扰能力。此外,外围的计算外设支持阵列进行加法、乘法等复杂的算数运算。
Description
技术领域
本发明属于集成电路电路技术领域,具体为一种基于10T SRAM单元的存内计算和CAM电路。
背景技术
长期以来,存算分离的冯诺伊曼架构被认为是一个主流的计算范式。然而,随着机器学习和人工智能等数据密集型应用程序的快速发展,计算单元和存储单元之间的频繁数据传输导致了功耗增加和吞吐量减小,产生了存储墙和带宽墙的瓶颈。为了解决这一瓶颈,提出了存内计算架构。存内计算结构因有望成为突破冯诺依曼架构的瓶颈而受到学术界和工业界的青睐。
目前许多工作支持存内逻辑运算和CAM搜索。Agrawal等人提出了一种以8T SRAM单元改进的X-SRAM电路结构,可以实现存内布尔运算(包括NAND、NOR等);S.Jeloka等人也提出了分离字线的6T SRAM单元,实现了布尔逻辑运算和CAM搜索。然而,现有的SRAM大多只能支持单向数据写入,对基于SRAM的存内计算和CAM电路不兼容。而且现有的基于SRAM的存内计算电路功能较为单一,只能支持简单的布尔运算,通用性较差。
发明内容
本发明的目的在于:为了解决上述提出多行激活时的读干扰问题,数据单向写入和搜索方式不兼容的问题和现有的存内计算电路功能单一的问题,提供一种基于10T SRAM单元的存内计算和CAM电路。
本发明采用的技术方案如下:。
一种基于10T SRAM单元的存内计算和CAM电路,包括一个4T SRAM组成的存储部分、2个NMOS晶体管组成的行写入部分、2个NMOS晶体管组成的列写入部分和2个NMOS晶体管组成的计算部分,其特征在于:
所述的一个4T SRAM,包括NMOS晶体管N3、NMOS晶体管N4、PMOS晶体管P1、PMOS晶体管P2;
所述的2个NMOS组成的行写入部分,包括NMOS晶体管N1、NMOS晶体管N2;
所述的2个NMOS组成的列写入部分,包括NMOS晶体管N7、NMOS晶体管N8;
所述的2个NMOS组成的计算部分,包括NMOS晶体管N5、NMOS晶体管N6;
在一优选的实施方式中,
1、本发明采用解耦的读端口进行存内计算和读取,保证存储数据的独立性,提高单元的抗干扰能力。
2、本发明提出了一种计算外设和适用于该计算外设的算法,实现了更为复杂的存内加法、减法和乘法等算数运算。
3、本发明提出了一种水平和垂直方向的写入和读取方案,具有非常好的对称特性,使得存内逻辑运算、算数运算、矩阵转置和CAM搜索都呈现双向操作的优势。
通过采用上述技术方案,PMOS晶体管P1的源极、PMOS晶体管P2的源极与电源电连接;NMOS晶体管N3的源极、NMOS晶体管N4的源极与地电连接;
PMOS晶体管P1的漏极与NMOS晶体管N3的漏极电连接于节点Q,PMOS晶体管P2的漏极与NMOS晶体管N4的漏极电连接于节点QB;
NMOS晶体管N1的源极与线WBL电连接,NMOS晶体管N2的源极与线WBLB电连接;
NMOS晶体管N1的栅极、NMOS晶体管N2的栅极与线WWL电连接;
NMOS晶体管N1的漏极与NMOS晶体管N3的漏极电连,NMOS晶体管N2的漏极与NMOS晶体管N2的漏极电连接;
NMOS晶体管N7的源极与线CBL电连接,NMOS晶体管N8的源极与线CBLB电连接;
NMOS晶体管N7的栅极、NMOS晶体管N8的栅极与线CWL电连接;
NMOS晶体管N7的漏极与NMOS晶体管N3的漏极电连,NMOS晶体管N8的漏极与NMOS晶体管N4的漏极电连接;
NMOS晶体管N5的栅极与NMOS晶体管N1的源极电连接,NMOS晶体管N6的栅极与NMOS晶体管N2的源极电连接;
NMOS晶体管N5的源极与线RRL电连接、NMOS晶体管N6的源极与线RRLB电连接;
NMOS晶体管N5的漏极与线CRL电连接、NMOS晶体管N6的漏极与线CRLB电连接;
在进行行与行之间的逻辑运算时,被选中的行的线CRL和线CRLB的信号从高电平变化到低电平,未被选中的行的线CRL和线CRLB的信号保持高电平,线RRL上的电压和线RRLB的电压代表逻辑运算结果,可用灵敏放大器读出;
在进行列与列之间的逻辑运算时,被选中的行的线RRL和线RRLB的信号从高电平变化到低电平,未被选中的行的线RRL和线RRLB的信号保持高电平,线CRL上的电压和线CRLB的电压代表逻辑运算结果,可用灵敏放大器读出;
本发明还提出一种计算外设,其包括一个可配置的灵敏放大器、一个带两级延迟的全加器、一个用于选择不同运算类型的MUX和一个存储乘数的触发器链;
本发明基于上述的计算外设,提出一种适用于SRAM的算法,实现了存内的加法、减法和乘法等算数运算。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明中,
1、本发明采用解耦的读端口进行存内计算和读取,保证存储数据的独立性,提高单元的抗干扰能力。
2、本发明提出了一种计算外设和适用于该计算外设的算法,实现了更为复杂的存内加法、减法和乘法等算数运算。
3、本发明提出了一种水平和垂直方向的写入和读取方案,具有非常好的对称特性,使得存内逻辑运算、算数运算、矩阵转置和CAM搜索都呈现双向操作的优势。
附图说明
图1为本发明实施例提供的10T SRAM单元的结构示意图;
图2是本发明实施例提按行和按列数据读取的结构示意图和操作时序图;
图3为本发明实施例提供的按行和按列逻辑运算结构示意图和操作时序图;
图4为本发明实施例提供的简化存储阵列(2*2)实现BCAM数据按行和按列搜索操作结构示意图;
图5是本发明实施例提供的计算外设结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1所示,本发明公开一种基于10T SRAM单元的存内计算和CAM电路,包括一个存储模块、与所述存储模块连接的左右两个写通路、与所述存储模块连接的上下两个写通路、以及与所述存储模块连接的左右两个解耦合的读通路。存储数据和写入数据是由所述的存储模块和与所述存储模块连接的四个写通路来完成。读取数据、存内计算和CAM搜索主要由所述的2个NMOS组成的计算部分来完成。
NMOS晶体管N3、NMOS晶体管N4、PMOS晶体管P1、PMOS晶体管P2组成所述的存储模块。NMOS晶体管N1、NMOS晶体管N2构成所述的与存储模块连接的左右两个写通路。NMOS晶体管N7、NMOS晶体管N8构成所述的与存储模块连接的上下两个写通路。NMOS晶体管N5、NMOS晶体管N6构成所述的计算部分;
PMOS晶体管P1的源极、PMOS晶体管P2的源极与电源电连接;NMOS晶体管N3的源极、NMOS晶体管N4的源极与地电连接;
PMOS晶体管P1的漏极与NMOS晶体管N3的漏极电连接于节点Q,PMOS晶体管P2的漏极与NMOS晶体管N4的漏极电连接于节点QB;
NMOS晶体管N1的源极与线WBL电连接,NMOS晶体管N2的源极与线WBLB电连接;
NMOS晶体管N1的栅极、NMOS晶体管N2的栅极与线WWL电连接;
NMOS晶体管N1的漏极与NMOS晶体管N3的漏极电连,NMOS晶体管N2的漏极与NMOS晶体管N2的漏极电连接;
NMOS晶体管N7的源极与线CBL电连接,NMOS晶体管N8的源极与线CBLB电连接;
NMOS晶体管N7的栅极、NMOS晶体管N8的栅极与线CWL电连接;
NMOS晶体管N7的漏极与NMOS晶体管N3的漏极电连,NMOS晶体管N8的漏极与NMOS晶体管N4的漏极电连接;
NMOS晶体管N5的栅极与NMOS晶体管N1的源极电连接,NMOS晶体管N6的栅极与NMOS晶体管N2的源极电连接;
NMOS晶体管N5的源极与线RRL电连接、NMOS晶体管N6的源极与线RRLB电连接;
NMOS晶体管N5的漏极与线CRL电连接、NMOS晶体管N6的漏极与线CRLB电连接;
实施例2
参照图2的(a)和(b)部分所示,同一行的所有单元的所有列读线CRL连接在一起,同一列的所有的行读线连接在一起。
参照图2的(a)部分所示,行读取时,线RRL和线RRLB和驱动电路断开(图中未标出)并连接到下方的灵敏放大器SA。线CRL和线CRLB连接到驱动电路(图中未标出),选中行的线CRL和线CRLB被驱动到低电平,线RRL和线RRLB根据SRAM中存储的数据充电或者保持不变,灵敏放大器比较线RRL和线RRLB的电压值,即可输出存储的数据。
参照图2的(b)部分所示列读取时,线CRL和线CRLB和驱动电路断开(图中未标出)并连接到右方的灵敏放大器SA。线RRL和线RRLB连接到驱动电路(图中未标出),选中行的线RRL和线RRLB被驱动到低电平,线CRL和线CRLB根据SRAM中存储的数据充电或者保持不变,灵敏放大器比较线CRL和线CRLB的电压值,即可输出存储的数据。
实施例3
参照图3的(a)部分所示,列逻辑操作时,线CRL和线CRLB和驱动电路断开(图中未标出)并连接到右方的灵敏放大器SA。线RRL和线RRLB连接到驱动电路(图中未标出),选中的两行的线RRL和线RRLB被驱动到低电平,未被选中的行的线RRL和线RRLB保持高电平,线CRL和线CRLB根据SRAM中存储的数据充电或者保持不变,灵敏放大器分别比较线CRL和线CRLB的电压值和参考电压值Vref的大小,即可实现行逻辑运算。
参照图3的(b)部分所示,行逻辑操作时,线RRL和线RRLB和驱动电路断开(图中未标出)并连接到下方的灵敏放大器SA。线CRL和线CRLB连接到驱动电路(图中未标出),选中的两行的线CRL和线CRLB被驱动到低电平,未被选中的行的线CRL和线CRLB保持高电平,线RRL和线RRLB根据SRAM中存储的数据充电或者保持不变,灵敏放大器分别比较线RRL和线RRLB的电压值和参考电压值Vref的大小,即可实现行逻辑运算。
参照图3的(d)部分所示,逻辑运算的两个单元之间存在四种组合方式:00、01、10、11。行逻辑操作时,线RRL和线RRLB会根据不同的操作数放电或保持不变。00时,线RRL保持不变,线RRLB放电;01和10时,线RRL和线RRLB都放电;11时,RRL放电,RRLB不放电。列逻辑操作时,线CRL和线CRLB会根据不同的操作数放电或保持不变。00时,线CRL保持不变,线CRLB放电;01和10时,线CRL和线CRLB都放电;11时,线CRL放电,线CRLB不放电。
实施例4
本发明实施例中所提到的电路充分利用了前文提到的解耦读通路,通过垂直和水平双向读位线构成垂直和水平双向的比较模块,呈现对称的结构,从而实现垂直和水平方向的BCAM搜索操作:1)数据按行搜索时,行读位线RRL和RRLB作为搜索线SL和SLB,列读位线CRL和CRLB作为匹配线ML和MLB,匹配结果通过列读位线CRL和位线CRLB末端灵敏放大器读出;2)数据按列搜索时,列读位线CRL和CRLB作为搜索线SL和SLB,行读位线RRL和RRLB作为匹配线ML和MLB,匹配结果通过行读位线RRL和位线RRLB末端灵敏放大器读出。
对于列搜索操作,待搜索数据预先按列的存储在单元中。搜索时,匹配线ML(RRL)和MBL(RRLB)预充到高电平后浮空,搜索数据线SL(CRL)和SLB(CRLB)根据搜索数据置为高电平或者低电平,若搜索数据为1,线SL为高电平,线SLB为低电平;若搜索数据为0,线SL为第电平,线SLB为高电平。
参照图4的(a)部分所示,以一个简化的2*2阵列为例介绍列搜索的查找方式。第一列SRAM单元记为CELL00和CELL10;第二列SRAM单元记为CELL01和CELL11。搜索数据是01,数据搜索线SL1和线SLB1分别接低电平和高电平;数据搜索线SL2和线SLB2分别接高电平和低电平。对于第一列,CELL00和CELL10存储数据为11,CELL00左侧的读端口导通,ML1会通过导通路径放电,CELL00单元右侧读晶体管栅极接0,不形成导电通路不放电,CELL10左侧端口导通,但是单元两端线SL2和线ML1都是高电压,不足以形成导电通道,所以不放电,CELL10右侧同理;匹配线ML1放电,匹配线MLB1不放电,下方的灵敏放大器将匹配线ML1和线MLB1的电压和参考电压Vref进行比较,左侧灵敏放大器的结果是0,右侧灵敏放大器的结果是1,与门得出结果为0,表示失配;对于第二列数据,CELL01和CELL11两侧的读端口和CELL10同理,都不会形成导电路径,匹配线ML2和匹配线MLB2都不放电,两个灵敏放大器的结果都是1,与门得出结果为1,表示匹配。
参照图4的(b)部分所示,以一个简化的2*2阵列为例介绍行搜索的查找方式。第一行SRAM单元记为CELL00和CELL01;第二行SRAM单元记为CELL10和CELL11。搜索数据是10,数据搜索线SL1和SLB1分别接高电平和低电平;数据搜索线SL2和SLB2分别接低电平和高电平。对于第一行,CELL00和CELL01存储数据为10,CELL00左侧的读端口导通,但是线SL1和线ML1不形成导电通道,CELL01单元左侧读晶体管栅极为0,不形成导电通路不放电,所以线ML1不放电;CELL00右侧的读端口不导通,CELL01单元右侧的读端口导通,但是线MLB2和线SLB2不形成导电通路不放电,所以线ML2不放电;阵列右边两个灵敏放大器的结果都是高电平,与门输出结果为1,表示匹配。对于第二行,CELL10和CELL11存储数据为11,CEL10左侧的读端口导通,但是线SL1和线ML2不形成导电通道,CELL11单元左侧读晶体管栅极为1,线SL2和线ML2形成导电通道,所以线ML2放电;CELL10右侧的读端口不导通,CELL11单元右侧的读端口不导通,线MLB2和线SLB1,线MLB2和线SLB2都不形成导电通道,所以线MLB2不放电;阵列右边两个灵敏放大器的结果分别是0和1,与门输出结果为0,表示失配。
实施例5
参照图5所示,外围计算外设主要有四个部分组成,一个可配置的灵敏放大器(图中已经配置成两个单端放大器)、一个具有两级延迟的全加器电路、一个用来存储乘数的触发器链和一个用于选择不同运算模式的多路选择器。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种基于10T SRAM单元的存内计算和CAM电路,包括一个4TSRAM组成的存储部分、2个NMOS晶体管组成的行写入部分、2个NMOS晶体管组成的列写入部分和2个NMOS晶体管组成的计算部分,其特征在于所述的一个4T SRAM,包括NMOS晶体管N3、NMOS晶体管N4、PMOS晶体管P1、PMOS晶体管P2;所述的2个NMOS组成的行写入部分,包括NMOS晶体管N1、NMOS晶体管N2;所述的2个NMOS组成的列写入部分,包括NMOS晶体管N7、NMOS晶体管N8;所述的2个NMOS组成的计算部分,包括NMOS晶体管N5、NMOS晶体管N6。
2.如权利要求1所述的一种基于10T SRAM单元的存内计算和CAM电路,其特征在于:PMOS晶体管P1的源极、PMOS晶体管P2的源极与电源电连接;NMOS晶体管N3的源极、NMOS晶体管N4的源极与地电连接。
3.如权利要求1所述的一种基于10T SRAM单元的存内计算和CAM电路,其特征在于:PMOS晶体管P1的漏极与NMOS晶体管N3的漏极电连接于节点Q,PMOS晶体管P2的漏极与NMOS晶体管N4的漏极电连接于节点QB。
4.如权利要求1所述的一种基于10T SRAM单元的存内计算和CAM电路,其特征在于:NMOS晶体管N1的源极与线WBL电连接,NMOS晶体管N2的源极与线WBLB电连接;NMOS晶体管N1的栅极、NMOS晶体管N2的栅极与线WWL电连接。
5.如权利要求1所述的一种基于10T SRAM单元的存内计算和CAM电路,其特征在于:NMOS晶体管N1的漏极与NMOS晶体管N3的漏极电连,NMOS晶体管N2的漏极与NMOS晶体管N2的漏极电连接。
6.如权利要求1所述的一种基于10T SRAM单元的存内计算和CAM电路,其特征在于:NMOS晶体管N7的源极与线CBL电连接,NMOS晶体管N8的源极与线CBLB电连接;NMOS晶体管N7的栅极、NMOS晶体管N8的栅极与线CWL电连接;NMOS晶体管N7的漏极与NMOS晶体管N3的漏极电连,NMOS晶体管N8的漏极与NMOS晶体管N4的漏极电连接。
7.如权利要求1所述的一种基于10T SRAM单元的存内计算和CAM电路,其特征在于:NMOS晶体管N5的栅极与NMOS晶体管N1的源极电连接,NMOS晶体管N6的栅极与NMOS晶体管N2的源极电连接。
8.如权利要求1所述的一种基于10T SRAM单元的存内计算和CAM电路,其特征在于:NMOS晶体管N5的源极与线RRL电连接、NMOS晶体管N6的源极与线RRLB电连接;NMOS晶体管N5的漏极与线CRL电连接、NMOS晶体管N6的漏极与线CRLB电连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410295744.4A CN118016123A (zh) | 2024-03-15 | 2024-03-15 | 一种基于10t sram单元的存内计算和cam电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410295744.4A CN118016123A (zh) | 2024-03-15 | 2024-03-15 | 一种基于10t sram单元的存内计算和cam电路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118016123A true CN118016123A (zh) | 2024-05-10 |
Family
ID=90958405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410295744.4A Pending CN118016123A (zh) | 2024-03-15 | 2024-03-15 | 一种基于10t sram单元的存内计算和cam电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118016123A (zh) |
-
2024
- 2024-03-15 CN CN202410295744.4A patent/CN118016123A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7193924B2 (en) | Dual-port static random access memory having improved cell stability and write margin | |
US7609541B2 (en) | Memory cells with lower power consumption during a write operation | |
CN110875071B (zh) | 一种静态随机存储器sram单元以及相关装置 | |
CN116364137A (zh) | 一种同侧双位线的8t单元、逻辑运算电路及cim芯片 | |
CN115588446A (zh) | 一种存储运算电路、存内计算电路及其芯片 | |
CN115810374A (zh) | 存储电路、具有bcam寻址和逻辑运算功能的存内计算电路 | |
US10930340B2 (en) | Semiconductor storage circuit, semiconductor storage apparatus, and data detection method | |
CN111883191B (zh) | 10t sram单元、及基于10t sram单元的存内逻辑运算及bcam电路 | |
CN112233712B (zh) | 一种6t sram存算装置、存算系统及存算方法 | |
CN113096710B (zh) | 一种单元电路及其动态三态内容寻址存储器 | |
US8913456B2 (en) | SRAM with improved write operation | |
Gupta et al. | Exploration of 9T SRAM cell for in memory computing application | |
CN115662483B (zh) | Sram存储单元阵列、读写方法、控制器及系统 | |
CN217280038U (zh) | 一种适用于sram的低功耗电路 | |
CN112214197B (zh) | Sram全加器及多比特sram全加器 | |
CN118016123A (zh) | 一种基于10t sram单元的存内计算和cam电路 | |
CN114093400B (zh) | 一种低漏电单比特存内计算单元及装置 | |
WO2022237039A1 (zh) | 适用于高速内容寻址和存内布尔逻辑计算的sram单元 | |
CN115035931A (zh) | 一种基于8t-sram单元的电路结构、芯片和模块 | |
CN117727346A (zh) | 一种四分裂字线的双向计算8t存内计算单元 | |
CN114464229B (zh) | 一种乘法计算器 | |
US20220415396A1 (en) | Ternary content addressable memory device based on ternary memory cell | |
CN116913342B (zh) | 具有存内布尔逻辑运算功能的存储电路及其模块、芯片 | |
CN114822637B (zh) | 一种基于10t-sram单元的电路结构、芯片及模块 | |
CN115831187A (zh) | 一种双生8t sram存算单元、计算系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |