CN117476060A - 具有电荷域被动求和电路的存算一体电路及相关方法 - Google Patents
具有电荷域被动求和电路的存算一体电路及相关方法 Download PDFInfo
- Publication number
- CN117476060A CN117476060A CN202310939120.7A CN202310939120A CN117476060A CN 117476060 A CN117476060 A CN 117476060A CN 202310939120 A CN202310939120 A CN 202310939120A CN 117476060 A CN117476060 A CN 117476060A
- Authority
- CN
- China
- Prior art keywords
- circuit
- cim
- memory array
- memory
- external analog
- 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
- 238000000034 method Methods 0.000 title claims description 12
- 239000003990 capacitor Substances 0.000 claims abstract description 64
- 238000012545 processing Methods 0.000 claims abstract description 35
- 238000004364 calculation method Methods 0.000 claims abstract description 8
- 239000000872 buffer Substances 0.000 claims description 78
- 238000012546 transfer Methods 0.000 claims description 7
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims 1
- 210000004027 cell Anatomy 0.000 description 59
- 238000010586 diagram Methods 0.000 description 15
- 238000013527 convolutional neural network Methods 0.000 description 10
- 238000013461 design Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 7
- 210000002569 neuron Anatomy 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000003071 parasitic effect Effects 0.000 description 4
- 238000004088 simulation Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101100422614 Arabidopsis thaliana STR15 gene Proteins 0.000 description 1
- 229920002430 Fibre-reinforced plastic Polymers 0.000 description 1
- 101100141327 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RNR3 gene Proteins 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 101150112501 din1 gene Proteins 0.000 description 1
- 239000011151 fibre-reinforced plastic Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
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/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/16—Storage of analogue signals in digital stores using an arrangement comprising analogue/digital [A/D] converters, digital memories and digital/analogue [D/A] converters
Landscapes
- Analogue/Digital Conversion (AREA)
Abstract
存算一体(CIM)电路包括处理电路。处理电路包括数据选择电路和电荷域被动求和电路。数据选择电路包括存储器阵列以及选择电路。存储器阵列储存多个候选权重。选择电路从存储在存储器阵列中的多个候选权重中选择目标权重。电荷域被动求和电路通过与第一存储器阵列集成在一起的第一加权电容器阵列,产生第一处理电路所接收的第一输入和存储在第一存储器阵列中的第一目标权重的第一模拟计算结果。
Description
技术领域
本发明涉及存算一体(compute-in-memory,CIM)设计,更具体地,涉及具有电荷域被动求和电路的CIM电路以及相关方法。
背景技术
人工智能(artificial intelligence,AI)应用所使用的卷积神经网络(convolutional neural network,CNN)由具有可学习权重的神经元(weight)组成。每个神经元接收AI输入,并对AI输入和权重执行点(dot)积(即卷积运算)。一种传统方法采用中央处理单元(central processing unit,CPU)来处理卷积运算,这不是一种节能的解决方案。另一种传统方法可以采用逐位的(bit-wise)基于电流或基于时间的存算一体(compute-in-memory,CIM)电路来处理卷积运算,这既不是节能的解决方案也不是高准确度的解决方案。因此,需要一种低功耗、高准确度的创新CIM设计。
发明内容
本发明的目的之一是提供一种具有电荷域被动求和的CIM电路及相关方法。
根据本发明的第一方面,公开了示例性CIM电路。示例性CIM电路包括处理电路。处理电路包括数据选择电路和电荷域被动求和电路(charge-domain passive summationcircuit)。数据选择电路包括存储器阵列以及选择电路。存储器阵列用于储存多个候选权重。选择电路用于从存储在存储器阵列中的多个候选权重中选择目标权重。电荷域被动求和电路用于通过与存储器阵列集成在一起的加权电容器阵列,产生处理电路所接收的输入和存储在存储器阵列中的目标权重的模拟计算结果。
根据本发明的第二方面,公开了一种示例性CIM方法。该示例性CIM方法包括:将多个候选权重存储在存储器阵列中;从多个候选权重中选择目标权重;由与存储器阵列集成在一起的加权电容器阵列执行电荷域被动求和,以产生输入与目标权重的模拟计算结果。其中,电荷域被动求和可以表示在电荷域使用被动元件求和。
在阅读了以下对各个附图和附图中示出的优选实施例的详细描述之后,本发明的这些和其他目的对于本领域普通技术人员来说无疑将变得显而易见。
附图说明
图1是示出根据本发明实施例的存算一体(CIM)电路的示意图。
图2是示出根据本发明的实施例的图1所示出的CIM电路所使用的处理电路的电路设计的示意图。
图3是示出根据本发明实施例的CIM电路的不同的外部模拟缓冲器的校准的示意图。
图4是示出不同外部模拟缓冲器之间的缓冲器间失配的示意图。
图5是示出根据本发明实施例的CIM电路的不同外部模拟缓冲器的附加校准的示意图。
图6是示出在参考电压调整之前的不同的外部模拟缓冲器的相同转换曲线与理想曲线之间的偏差的示意图。
图7是示出在参考电压调整之后的不同的外部模拟缓冲器的相同转换曲线与理想曲线相同的示意图。
图8是示出根据本发明实施例的CIM电路的不同的外部模拟缓冲器的每层校准的示意图。
具体实施方式
在整个以下描述和权利要求中使用了某些术语,其指代特定的组件。如本领域技术人员将理解的,电子设备制造商可以用不同的名称来指代组件。本申请无意区分名称不同但功能相同的组件。在下面的描述和权利要求中,术语“包括”和“包含”以开放式方式使用,因此应当被解释为表示“包括但不限于……”。而且,术语“耦接”旨在表示间接或直接电连接。因此,如果一个设备耦接到另一设备,则该连接可以是通过直接电连接,或者通过经由其他设备和连接的间接电连接。
图1是示出本发明实施例的CIM电路的示意图。CIM电路100包括多个处理电路102_1、102_2、…、102_Z,分别用于处理多个输入。例如但不限于此,处理电路102_1-102_Z(Z≥2)可以具有相同的电路架构。以处理电路102_1为例,其可以包括数据选择电路104和电荷域被动求和电路106。数据选择电路104可以包括存储器阵列108和选择电路110。电荷域被动求和电路106可以包括加权电容器阵列112。如图1所示,加权电容器阵列112包括多个具有不同电容值的电容器C1、C2、…、CN。存储器阵列108包括多个存储单元114,并且被布置为存储多个候选权重CW1、CW2、...、CWY。候选权重CW1-CWY(Y≥2)中的每个权重可以是X位权重CWi[X-1:0](i={1,2,…,Y}&X≥2),并且X位权重CWi[X-1:0]的每个位被存储在存储器阵列108的一个存储单元114中。例如,存储器阵列108可以是静态随机存取存储器(staticrandom access memory,SRAM)阵列,并且每个存储单元114可以是SRAM单元。然而,这仅用于说明目的,并不意味着对本发明的限制。实际上,存储器阵列108的存储器类型可以根据实际设计考虑进行调整。
应当注意的是,本发明对存储器阵列108的字线(word line,WL)和位线(bitline,BL)的布置没有限制。在一种示例性实施方式中,存储器阵列108可以被设计为具有在水平方向上的WL和在垂直方向上的BL。在另一示例性实施方式中,存储器阵列108可以被设计为具有在垂直方向上的WL和在水平方向上的BL。
在本发明的一些实施例中,CIM电路100可以是人工智能(artificialintelligence,AI)应用所使用的模拟CIM(analog CIM,ACIM)电路,并且候选权重CW1-CWY可以是诸如卷积神经网络(convolutional neural network,CNN)的神经网络的权重。选择电路110被布置为从存储在存储器阵列108中的候选权重CW1-CWY中选择目标权重Wk(k={1,2,…,Z})。例如,处理电路102_1的选择电路110可以选择作为候选权重CW1-CWY中一个的目标权重W1(即,k=1的Wk),另一处理电路102_2的选择电路110可以选择作为候选权重CW1-CWY中的一个的目标权重W2(即,k=2的Wk),以及又一处理电路102_Z的选择电路110可以选择作为候选权重CW1-CWY中一个的目标权重WZ(即,k=Z的Wk)。不同处理电路102_1-102_Z选择和使用的目标权重可以彼此相同或彼此不同。在CIM电路100被AI应用使用的情况下,CIM电路100可以被用来充当CNN中的一个神经元,并且可以被重用以充当CNN中的另一神经元。因此,候选权重CW1-CWY可以包括CNN中不同的神经元的权重。
在本实施例中,CIM电路100为ACIM电路,其利用电荷域被动求和电路106通过具有特定电容比的加权电容器阵列112,来产生处理电路102_1所接收的模拟输入AOUTl(即,k=1的AOUTk)与目标权重Wl(即,k=1的Wk,其为存储在存储器阵列108中的候选权重CW1-CWY中一个)的模拟计算结果,其中特定电容比可以根据实际设计考虑进行调整。例如,加权电容器阵列112的电容器C1-CN可以使用MOM(Metal-Oxide-Metal,金属-氧化物-金属)电容器来实现,因此在芯片中占据较大的布局面积。在此实施例中,电荷域被动求和电路106的加权电容器阵列112能被存储器阵列108中存储的多个候选权重CW1-CWY共享。因此,加权电容器阵列112可与存储器阵列108集成在一起以用于优化面积。具体地,在集成电路的垂直方向上,使用MOM电容器实现的加权电容器阵列112与用于存储候选权重CW1-CWY的存储器阵列108共用布局面积。
在该实施例中,处理电路102_1-102_Z被布置为接收分别从多个外部模拟缓冲器10_1、10_2、…、10_Z接收的多个模拟输入AOUT1、AOUT2、…、AOUTZ。例如,每个外部模拟缓冲器10_1-10_Z可以使用数模转换器(标记为“DA”)来实现。因此,模拟输入AOUT1、AOUT2、…、AOUTZ是通过将多个数字码DIN1、DIN2、…、DINZ从数字域转换到模拟域而产生的。由于处理电路102_1-102_Z的输入是模拟信号,因此可以减少节点(能量)。例如,处理电路102_1仅需要单个节点N_IN来从外部模拟缓冲器10_1仅接收单个模拟输入AOUT1(其具有代表数字码DIN1的特定电压电平),从而可以大大降低输入功率损耗(fCV2),其中,f表示频率,C表示电流,V表示电压。
如上所述,候选权重CW1-CWY(Y≥2)中每个候选权重可以是X位权重CWi[X-1:0](i={1,2,…,Y}&X≥2),且X位权重CWi[X-1:0]的每个位被存储在存储器阵列108的一个存储单元114中。因此,目标权重W1(即,k=1的Wk)具有分别存储在存储器阵列108中的多个存储单元114中的多个位W1[X-1:0]。在本实施例中,选择电路110还被设置为根据位W1[X-1:0]选择性地将模拟输入AOUT1分别施加到电容器C1-CN。例如,加权电容器阵列112是由电容器CN=2X-1C、…、C2=2C、C1=1C组成的二进制加权电容器阵列(N=X-1)。当W1[i](i={1,2,…,X-1})等于1时,选择电路110允许模拟输入AOUT1被传送至二进制加权电容器阵列112的电容器Ci(即,VINi=AOUT1)。当W1[i](i={1,2,…,X-1})等于0时,选择电路110阻止模拟输入AOUT1被传送到二进制加权电容器阵列112的电容器Ci,并允许参考电压(例如,接地电压GND)被传送到二进制加权电容器阵列112的电容器Ci(即,VINi=GND)。在本实施例中,选择电路110被布置为通过分别参考位W1[X-1:0]来控制模拟输入AOUT1的传输,从而启用直接的多位操作(multi-bit operation)以用于在电荷域被动求和电路106处设置模拟计算结果。因此,处理电路102_1的电荷域被动求和电路106(具体地,电荷域被动求和电路106的加权电容器阵列112)通过二进制加权电容器阵列CN=2X-1C,…,C2=2C,C1=1C之间的电荷重分配(charge redistribution)来组合电压信号VIN1-VINN,产生模拟计算结果(即DIN1×W1[X-1:0]的模拟输出)。由于模拟计算结果是通过根据位W1[X-1:0]控制施加到加权电容器阵列112的电容器C1-CN的电压信号VIN1-VINN来设定的,因此可以从处理电路102_1产生高准确度的模拟计算结果。
类似地,另一个处理电路102_2的电荷域被动求和电路106(特别是电荷域被动求和电路106的加权电容器阵列112)通过二进制加权电容器阵列CN=2X-1C,…,C2=2C,和C1=1C之间的电荷重分配来组合电压信号VIN1-VINN,产生模拟计算结果(其为DIN2×W2[X-1:0]的模拟输出)。而另一处理电路102_Z的电荷域被动求和电路106(特别是电荷域被动求和电路106的加权电容器阵列112)通过二进制加权电容器阵列CN=2X-1C,…,C2=2C,和C1=1C之间的电荷重新分配来组合电压信号VIN1-VINN,产生模拟计算结果(其为DINZ×WZ[X-1:0]的模拟输出)。
如图1所示,每个电容器C1-CN具有顶板P1和底板P2,并且所有处理电路102_1-102_Z的加权电容器阵列112中包括的电容器C1-CN的顶板P1直接连接而无需选择。通过这种简单的设计就可以得到输出电压VOUT(即的模拟输出)。
为了更好地理解本发明的技术特征,图2示出了所提出的CIM电路100所使用的处理电路的示例性电路设计。图2所示的处理电路102_k(k={1,2,…,Z})可以是图1所示的处理电路102_1-102_Z中的任意一个。在本实施例中,候选权重CW1-CWY中目标权重Wk和未被选作目标权重的权重Wj可以分别存储在不同的存储单元线(例如存储单元行或存储单元列)中;候选权重CW1-CWY中所包括的未被选作处理电路102_k使用的目标权重Wk的候选权重共同由Wj表示。选择电路110可以是基于开关的电路,包括可以使用P沟道金属氧化物半导体(P-channel metal-oxide-semiconductor,PMOS)晶体管或N沟道金属氧化物半导体(N-channel metal-oxide-semiconductor,NMOS)晶体管来实现的多个开关,并且可以与存储器阵列108集成在一起。如图2所示,选择电路110包括多个全局选择开关SWk和SWj,其中全局选择开关SWk对应于被选为目标权重Wk的候选权重,全局选择开关SWj对应于未被选为目标权重Wk的任意候选权重。具体地,全局选择开关SWk被存储被选为目标权重Wk的候选权重的位的多个存储单元共享,并且全局选择开关SWj被存储未被选为目标权重Wk的候选权重的位的多个存储单元共享。另外,选择电路110包括用于存储候选权重CW1-CWY的一个位的每个存储单元的多个本地选择开关。以存储位Wk[X-1]的存储单元为例,有两个权重开关SW1和SW2以及一个单元开关SW3。然而,这仅用于说明目的,并不意味着对本发明的限制。实际上,可以根据实际设计考虑来调整用于每个存储单元的本地选择开关的数量。
全局选择开关SWk和SWj中的每一个开关均具有被布置为从外部模拟缓冲器(未示出)接收模拟输入AOUTk的一个端。多个全局选择开关中与存储目标权重Wk的存储单元线(例如,存储单元行或存储单元列)相对应的一个全局选择开关被接通,并且其余的全局选择开关被关断。在该实施例中,一个开关控制信号W_ADD_ENk可以被宣告(assert)以接通全局选择开关SWk,并且另一开关控制信号W_ADD_ENj可以被解除宣告(deassert)以关断全局选择开关SWj。尽管候选权重Wj没有被选择作为目标权重Wk,但是存储候选权重Wj的位的存储单元可以包括输入寄生电容Cpar_in。通过关断全局选择开关SWj,可以防止存储候选权重Wj的位的存储单元的输入寄生电容Cpar_in导致的功耗,从而实现节能/省电。
假设存储器阵列108为SRAM阵列,且每一存储单元114为SRAM单元。因此,每个存储单元114可以具有两条位线BL和其中位线BL(在图2中用“+”标记)处的电压电平是基于存储在存储单元114中的位来设置的,并且位线/>(在图2中用“-”标记)处的电压电平是基于存储在存储单元114中的位的反相(inverse)来设置。关于存储目标权重Wk的一个位的存储单元,权重开关SW1和SW2(其为存储单元的本地选择开关)由存储在存储单元中的位来控制。以存储位Wk[X-1]的存储单元的权重开关SW1和SW2为例,权重开关SW1由位Wk[X-1]控制,而权重开关SW2由位Wk[X-1]的反相(即/>)控制,其中权重开关SW1决定模拟输入AOUTk(从接通的全局选择开关SWk接收的)是否被传递给电荷域被动求和电路(具体地,加权电容器阵列112的电容器2X-1C),并且权重开关SW2确定参考电压(例如地电压)是否被传递到电荷域被动求和电路(具体地,加权电容器阵列112的电容器2X-1C)。需要说明的是,权重开关SW1和SW2不同时接通。即,在权重开关SW1被接通的期间,权重开关SW2被断开,在权重开关SW2被接通的期间,权重开关SW1被断开。
单元选择开关SW3也是与每个存储单元114集成在一起的本地选择开关。在该实施例中,候选权重CW1-CWY中目标权重Wk和未被选作目标权重的权重Wj可以分别存储在不同的存储单元线(例如,存储器单元行或存储器单元列)中。与存储器阵列108集成在一起的单元选择开关SW3可以被分为分别与多个存储单元线(例如,存储单元行或存储单元列)相对应的多个单元选择开关组。因此,每个单元选择开关组包括单元选择开关SW3,每个单元选择开关具有耦接到电荷域被动求和电路(具体地,加权电容器阵列122的一个电容器)的一个端。举例来说,存储位Wk[X-1]的存储单元的单元选择开关SW3的一端耦接至加权电容器阵列112的电容器2X-1C,储存位Wk[0]的存储单元的单元选择开关SW3的一端耦接至加权电容器阵列112的电容器1C,以此类推。在该实施例中,多个单元选择开关组中与存储目标权重Wk的存储单元线(例如,存储单元行或存储单元列)相对应的一个单元选择开关组的单元选择开关被接通,并且其余单元选择开关组的单元选择开关被断开。例如,与存储有候选权重Wj的存储单元线(例如,存储单元行或存储单元列)相对应的单元选择开关组的单元选择开关SW3被断开。尽管候选权重Wj没有被选择作为目标权重Wk,但是存储候选权重Wj的位的存储单元可以包括单元寄生电容Cpar_cell。通过关断单元选择开关SW3,可以防止存储候选权重Wj(未被选为目标权重Wk)的位的存储单元的单元寄生电容Cpar_cell导致的功率损耗(powerdissipation),以实现节能/省电。
如图1所示,外部模拟缓冲器(例如,数模转换器)10_1-10_Z分别生成处理电路102_1-102_Z的模拟输入AOUT1-AOUTZ。理想地,当两个数字码(例如,DIN1和DIN2)相同时,CIM电路100接收到的相应模拟输入(例如,AOUT1和AOUT2)应该相同。然而,由于电路元件的缺陷,不同模拟缓冲器之间可能存在缓冲器间的(inter-buffer)失配。因此,输出电压VOUT(即的模拟输出)可能会偏离正确的电压电平。在CIM电路100被AI应用使用的情况下,分类准确度(classification accuracy)可能由于缓冲器间失配而降低。为了解决这个问题,CIM电路100还涉及外部模拟缓冲器(例如,数模转换器)10_1-10_Z的校准。
请参考图3和图4。图3是示出根据本发明实施例的CIM电路的不同外部模拟缓冲器的校准的示意图。图4是示出不同外部模拟缓冲器之间的缓冲器间失配的示意图。外部模拟缓冲器301可以是图1所示的外部模拟缓冲器(例如,数模转换器)10_1-10_Z中一个。外部模拟缓冲器302可以是图1所示的外部模拟缓冲器(例如,数模转换器)10_1-10_Z中另一个。由于电路元件的缺陷,外部模拟缓冲器301的转换曲线(transfer curve)CV1与外部模拟缓冲器302的转换曲线CV2不同。因此,外部模拟缓冲器301和302的校准可以包括消除外部模拟缓冲器301和302之间的缓冲器间失配。例如,可以采用自动归零(auto-zeroing)技术来消除缓冲器间失配。在本发明的一些实施例中,外部模拟缓冲器301和302中的每一个可以是离散时间缓冲器(discrete-time buffer)。外部模拟缓冲器301/302的离散时间操作可以包括外部模拟缓冲器301/302操作在重置(reset,RST)模式下的第一阶段和外部模拟缓冲器301/302操作在缓冲(BUF)模式下的第二阶段。外部模拟缓冲器301和302的校准是在外部模拟缓冲器301和302都操作在RST模式的时段期间执行的。如图3所示,相同的数字输入(例如,数字码=0)被馈送到两个外部模拟缓冲器301和302,并且接地电压被施加到包含在加权电容器阵列112中的电容器的顶板。这样,当外部模拟缓冲器301和302操作在RST模式下时,外部模拟缓冲器301和302之间的缓冲器间失配被存储在加权电容器阵列112中,并且当外部模拟缓冲器301和302操作在BUF模式时,该缓冲器间失配可以被从输出电压VOUT(其是模拟输出)中减去。由于外部模拟缓冲器301和302之间的缓冲器间失配可以通过自动归零(auto-zeroing)来消除,因此在校准之后外部模拟缓冲器301和302可以被认为具有相同的转换曲线(即,CV1=CV2)。
然而,在自动归零之后外部模拟缓冲器301和302所拥有的相同转换曲线可能仍然偏离理想曲线。为了解决这个问题,外部模拟缓冲器301和302的校准还可以包括将外部模拟缓冲器301和302中的每个模拟缓冲器的转换曲线与预定曲线对齐。
请参考图5,图6和图7。图5是示出根据本发明实施例的CIM电路的不同外部模拟缓冲器的附加校准的示意图。图6是示出在参考电压调整之前的外部模拟缓冲器301和302的相同转换曲线与理想曲线CV’之间的偏差的示意图。图7是示出在参考电压调整之后的外部模拟缓冲器301和302的相同转换曲线与理想曲线CV’相同的示意图。最小数字输入(例如,最小码min)被施加到外部模拟缓冲器301和302,并且ADC 304获得全局偏移(globaloffset)E1,其中ADC 304的偏置电压Vbias是从参考电压产生器产生的。另外,最大数字输入(例如,最大码max)被施加到外部模拟缓冲器301和302,并且ADC 304获得增益误差(gainerror)E2。如图5所示,执行参考电压产生器校准(标记为“Vref Gen Calibration”),以调整外部模拟缓冲器301和302所使用的参考电压Vref。这样,通过参考电压调整,外部模拟缓冲器301和302可以具有与理想曲线CV'对齐的相同转换曲线(由自动归零导致的结果)。
如上所述,所提出的CIM电路100可以由AI应用采用。例如,AI应用可以采用具有多层的CNN,并且所提出的CIM电路100可以被一层中的神经元使用并且被另一层中的神经元重用(reuse)。在本发明的一些实施例中,可以采用每层校准来跟踪工艺、电压、温度(process,voltage,temperature,PVT)变化。图8是示出根据本发明实施例的CIM电路的不同外部模拟缓冲器的每层校准的示意图。在本实施例中,神经网络包括多个层,例如图8所示的L1、L2和L3。相同的CIM电路100可以被不同的层L1、L2和L3共享。上述对不同外部模拟缓冲器(例如,图3和图5所示的外部模拟缓冲器301和302)的校准(标记为“ReK”)是逐层进行的,从而使得外部模拟缓冲器301和302具有与理想曲线CV’对齐的相同转换曲线。借助逐层校准,可以实现对PVT不敏感的ACIM电路。
本领域技术人员将容易地观察到,在保留本发明的教导的同时,可以对装置和方法进行多种修改和改变。因此,上述公开应当被解释为仅受所附权利要求的范围和界限限制。
Claims (20)
1.一种存算一体CIM电路,其特征在于,包括:
第一处理电路包括第一数据选择电路和第一电荷域被动求和电路,其中,
所述第一数据选择电路,包括:
第一存储器阵列,用于存储多个候选权重;以及
第一选择电路,用于从所述第一存储器阵列中存储的多个候选权重中选择第一目标权重;
所述第一电荷域被动求和电路,用于通过与所述第一存储器阵列集成在一起的第一加权电容器阵列,产生所述第一处理电路所接收的第一输入和所述第一目标权重的第一模拟计算结果。
2.根据权利要求1所述的CIM电路,其特征在于,所述多个候选权重是神经网络的权重。
3.根据权利要求1所述的CIM电路,其特征在于,所述第一处理电路的第一输入是从外部模拟缓冲器产生的单个模拟信号。
4.根据权利要求1所述的CIM电路,其特征在于,所述第一目标权重包括多个位,并且所述多个位分别存储在所述存储器阵列中的多个存储单元中。
5.根据权利要求4所述的CIM电路,其特征在于,所述第一加权电容器阵列包括多个电容器;所述第一选择电路还用于根据所述多个位,选择性地分别将所述第一输入施加到所述多个电容器中的对应电容器。
6.根据权利要求5所述的CIM电路,其特征在于,所述第一选择电路还用于通过参考所述多个位来控制所述第一输入的传输。
7.根据权利要求1所述的CIM电路,其特征在于,还包括:
第二数据选择电路,包括:
第二存储器阵列,用于存储多个候选权重;以及
第二选择电路,用于从所述第二存储器阵列中存储的多个候选权重中选择第二目标权重;以及
第二电荷域被动求和电路,用于通过与所述第二存储器阵列集成的第二加权电容器阵列,产生第二处理电路所接收的第二输入与存储在所述第二存储器阵列中的第二目标权重的第二模拟计算结果;
其中,所述第一加权电容器阵列包括多个第一电容器,每个第一电容器具有第一极板和第二极板;第二加权电容器阵列包括多个第二电容器,每个第二电容器具有第一极板和第二极板;所述多个第一电容器的第一极板连接到所述多个第二电容器的第一极板。
8.根据权利要求7所述的CIM电路,其特征在于,所述多个候选权重是神经网络的权重。
9.根据权利要求1所述的CIM电路,其特征在于,所述第一电荷域被动求和电路的所述第一加权电容器阵列被所述第一存储器阵列中存储的所述多个候选权重共享。
10.根据权利要求1所述的CIM电路,其特征在于,所述第一存储器阵列包括多个存储单元线,所述多个存储单元线用于存储所述多个候选权重,所述第一选择电路包括:
分别对应于所述多个存储单元线的多个全局选择开关,其中所述多个全局选择开关中的每一个具有用于接收所述第一输入的一个端,并且所述多个全局选择开关中对应于存储有所述第一目标权重的存储单元线的一个全局选择开关被接通。
11.根据权利要求10所述的CIM电路,其特征在于,所述多个全局选择开关中的其余全局选择开关被关断。
12.根据权利要求1所述的CIM电路,其特征在于,所述多个存储器单元包括用于存储所述第一目标权重的多个位的多个第一存储单元;对于所述第一目标权重的多个位中的每个位,所述第一选择电路包括:
第一开关,由该位控制,其中,所述第一开关确定所述第一输入是否被传递至所述第一电荷域被动求和电路;以及
第二开关,由该位的反相控制,其中,所述第二开关确定参考电压是否被传递至所述第一电荷域被动求和电路。
13.根据权利要求1所述的CIM电路,其特征在于,所述第一存储器阵列包括多个存储单元线,所述多个存储单元线用于存储所述多个候选权重,所述第一选择电路包括:
多个单元选择开关组,分别对应于所述多个存储单元线,其中每个单元选择开关组包括单元选择开关,每个单元选择开关的一端耦接至所述第一电荷域被动求和电路;多个单元选择开关组中与存储有所述第一目标权重的存储单元线相对应的一个单元选择开关组的单元选择开关被接通。
14.根据权利要求13所述的CIM电路,其特征在于,所述多个单元选择开关组的其余单元选择开关组的单元选择开关被关断。
15.根据权利要求1所述的CIM电路,其特征在于,还包括:
第二数据选择电路,包括:
第二存储器阵列,用于存储多个候选权重;以及
第二选择电路,用于从所述第二存储器阵列中存储的多个候选权重中选择第二目标权重;以及
第二电荷域被动求和电路,用于通过与所述第二存储器阵列集成在一起的第二加权电容器阵列,产生所述第二数据选择电路所接收的第二输入与存储在所述第二存储器阵列中的第二目标权重的第二模拟计算结果;
其中,所述第一数据选择电路从第一外部模拟缓冲器接收所述第一输入,并且所述第二数据选择电路从第二外部模拟缓冲器接收所述第二输入;以及
其中,所述CIM电路还参与所述第一外部模拟缓冲器和所述第二外部模拟缓冲器的校准。
16.根据权利要求15所述的CIM电路,其特征在于,所述第一外部模拟缓冲器和所述第二外部模拟缓冲器的校准包括:消除所述第一外部模拟缓冲器和所述第二外部模拟缓冲器之间的缓冲器间失配。
17.根据权利要求16所述的CIM电路,其特征在于,所述第一外部模拟缓冲器和所述第二外部模拟缓冲器的校准还包括:将所述第一外部模拟缓冲器和所述第二外部模拟缓冲器中的每个外部模拟缓冲器的转换曲线与预定曲线对齐。
18.根据权利要求15所述的CIM电路,其特征在于,神经网络包括多个层,所述CIM电路由所述多个层中的每个层使用,并且所述第一外部模拟缓冲器和所述第二外部模拟缓冲器的校准被在每个层执行。
19.一种存算一体CIM方法,其特征在于,包括:
将多个候选权重存储在存储器阵列中;
从多个候选权重中选择目标权重;以及
与所述存储器阵列集成在一起的加权电容器阵列执行电荷域被动求和,以产生输入与目标权重的模拟计算结果。
20.根据权利要求19所述的CIM方法,其特征在于,所述多个候选权重是神经网络的权重。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63/369,673 | 2022-07-28 | ||
US63/369,674 | 2022-07-28 | ||
US18/215,175 | 2023-06-28 | ||
US18/215,175 US20240037178A1 (en) | 2022-07-28 | 2023-06-28 | Compute-in-memory circuit with charge-domain passive summation and associated method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117476060A true CN117476060A (zh) | 2024-01-30 |
Family
ID=89638585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310939120.7A Pending CN117476060A (zh) | 2022-07-28 | 2023-07-28 | 具有电荷域被动求和电路的存算一体电路及相关方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117476060A (zh) |
-
2023
- 2023-07-28 CN CN202310939120.7A patent/CN117476060A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7812757B1 (en) | Hybrid analog-to-digital converter (ADC) with binary-weighted-capacitor sampling array and a sub-sampling charge-redistributing array for sub-voltage generation | |
Lee et al. | Fully row/column-parallel in-memory computing SRAM macro employing capacitor-based mixed-signal computation with 5-b inputs | |
US8456340B2 (en) | Self-timed digital-to-analog converter | |
US6236346B1 (en) | Cell array circuitry | |
US20130076546A1 (en) | Charge compensation calibration for high resolution data converter | |
JP6037947B2 (ja) | 固体撮像装置および半導体装置 | |
Wang et al. | A charge domain SRAM compute-in-memory macro with C-2C ladder-based 8-bit MAC unit in 22-nm FinFET process for edge inference | |
CN107046424A (zh) | 具有双转换的adc后台校准 | |
EP2401814B1 (en) | Capacitive voltage divider | |
KR102497616B1 (ko) | 메모리 내 데이터 판독을 위한 디바이스 및 방법 | |
US6633249B1 (en) | Low power, scalable analog to digital converter having circuit for compensating system non-linearity | |
Caselli et al. | Charge sharing and charge injection A/D converters for analog in-memory computing | |
CN115080501A (zh) | 基于局部电容电荷共享的sram存算一体芯片 | |
CN114759927A (zh) | 一种应用于模拟存内计算的逐次逼近型模数转换器电路 | |
CN117476060A (zh) | 具有电荷域被动求和电路的存算一体电路及相关方法 | |
US20240037178A1 (en) | Compute-in-memory circuit with charge-domain passive summation and associated method | |
Rasul et al. | A 128x128 SRAM macro with embedded matrix-vector multiplication exploiting passive gain via MOS capacitor for machine learning application | |
CN114499529B (zh) | 模拟数字转换器电路、模拟数字转换器及电子设备 | |
CN116032258A (zh) | 延时缓冲单元及其操作方法、计算装置及其操作方法 | |
TW202420117A (zh) | 具有電荷域被動求和電路的存算一體電路及相關方法 | |
US20240039546A1 (en) | Capacitor weighted segmentation buffer | |
Mroszczyk et al. | Mismatch compensation technique for inverter-based CMOS circuits | |
CN111429954B (zh) | 电压校准电路、半导体存储结构及其电压校准方法 | |
CN113625034A (zh) | 采样电路、采样阵列、存算一体芯片以及电子设备 | |
JP7124498B2 (ja) | ニューラルネットワーク回路 |
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 |