技术新讯 > 信息存储应用技术 > 用于存内计算操作的位线电压钳位读取电路的制作方法  >  正文

用于存内计算操作的位线电压钳位读取电路的制作方法

  • 国知局
  • 2024-07-31 19:21:38

实施例涉及一种利用静态随机存取存储器(sram)阵列的存内计算电路,并且具体地涉及一种在sram阵列的多行的同时访问期间对位线电压进行钳位以用于存内计算操作的读取电路。

背景技术:

1、参考图1,图1示出了存内计算电路10的示意图。电路10利用静态随机存取存储器(sram)阵列12,该sram阵列12由以具有n行和m列的矩阵格式布置的标准6t sram存储器单元14形成。作为替代,可以使用具有类似功能和拓扑结构的标准8t存储器单元或sram。每个存储器单元14被编程为存储用于存内计算操作的内核数据(kernel data)或计算权重的比特。在该上下文中,存内计算操作被理解为一种形式的高维矩阵向量乘法(mvm),该mvm支持存储在存储器的多位单元中的多位权重。该组位单元(在多位权重的情况下)可以被认为是虚拟突触元件(virtual synaptic element)。计算权重的每个位具有逻辑“1”或逻辑“0”值。

2、每个sram单元14包括字线wl以及一对互补位线blt和blc。8t型sram单元将另外包括读取字线rwl和读取位线blr。矩阵的公共行中的单元14通过公共字线wl(并且在8t型实现方式中通过公共读取字线rwl)彼此连接。矩阵的公共列中的单元14通过公共的一对互补位线blt和blc(以及在8t型实现方式中通过公共读取位线blr)彼此连接。每个字线wl、rwl由字线驱动器电路16驱动,该字线驱动器电路16可以被实现为cmos驱动器电路(例如,形成逻辑反相器电路的串联连接的p沟道和n沟道mosfet晶体管对)。施加到字线并且由字线驱动器电路16驱动的字线信号是从输入到存内计算电路10的特征数据生成的,并且由行控制器电路18控制。列处理电路20感测m列的各对互补位线blt和blc上(和/或读取位线blr上)的模拟电流信号,并且根据这些模拟电流信号生成用于存内计算操作的决策输出。列处理电路20可以被实现以支持处理,其中首先个体地处理列上的模拟电流信号,然后再对多个列输出进行重组。

3、尽管图1中没有明确示出,但可以理解,电路10还包括本领域技术人员已知的常规行解码、列解码和读写电路,以与将计算权重的位写入到存储器阵列12的sram单元14和从存储器阵列12的sram单元14中读取计算权重的位相结合来使用。

4、现在参考图2,每个存储器单元14包括两个交叉耦合的cmos反相器22和24,每个反相器包括一对串联连接的p沟道和n沟道mosfet晶体管。反相器22和24的输入和输出被耦合以形成锁存电路,该锁存电路具有真数据存储节点qt和互补数据存储节点qc,该互补数据存储节点qc存储所存储的数据位的互补逻辑状态。单元14还包括两个传输(通栅(passgate))晶体管26和28,晶体管26和28的栅极端子由字线wl驱动。晶体管26的源极漏极路径连接在真数据存储节点qt与和真位线blt相关联的节点之间。晶体管28的源极漏极路径连接在互补数据存储节点qc与和互补位线blc相关联的节点之间。每个反相器22和24中的p沟道晶体管30和32的源极端子被耦合以接收高电源节点处的高电源电压(例如,vdd),而每个反相器22和24中的n沟道晶体管34和36的源极端子被耦合以接收低电源节点处的低电源电压(如,接地(gnd)参考)。虽然图2特定于6t型单元的使用,但本领域技术人员认识到,8t型单元被类似地配置,并且将还包括耦合到存储节点中的一个存储节点的信号路径,并且包括传输(通栅)晶体管,该晶体管耦合到读取位线blr并且由读取字线rwl上的信号栅极驱动。字线驱动器电路16通常还被耦合以接收高电源节点处的高电源电压(vdd),并且参考低电源节点处的低电源电压(gnd)。

5、行控制器电路18执行以下功能:选择字线wl<0>至wl<n-1>中的哪些字线将在存内计算操作期间被同时并行访问(或致动),以及根据用于存内计算运算的特征数据来控制脉冲化信号到字线的施加。图1仅以示例的方式示出了用脉冲化字线信号同时致动所有n个字线,可以理解,存内计算操作可以改为利用对少于sram阵列的所有行的同时致动。给定的一对互补位线blt和blc上(或8t型实现方式中的读取位线rbl上)的模拟信号根据存储在对应列的存储器单元14中的计算权重的位的逻辑状态以及施加到这些存储器单元14的脉冲化字线信号的(一个或多个)宽度。

6、图1所示的实现方式示出了用于存内计算操作的所施加的字线信号的脉宽调制(pwm)形式的示例。对所施加的字线信号使用pwm或周期脉冲调制(ptm)是用于基于乘法累加(mac)运算的向量的线性度的存内计算操作的常见技术。脉冲化字线信号格式可以进一步发展为编码脉冲串,以管理存内计算操作的特征数据的块稀疏性(blcok sparsity)。因此认识到,当同时驱动多个字线时,可以使用所施加的字线信号的任意一组编码方案。此外,在更简单的实现方式中,应当理解,在同时致动中施加的所有字线信号可以改为具有相同脉冲宽度。

7、图3是时序图,其示出了在给定存内计算操作中将示例脉宽调制字线信号同时施加到sram阵列12中的多行存储器单元14,以及响应于由于那些字线信号的(一个或多个)脉冲宽度和存储在存储器单元14中的计算权重的位的逻辑状态而导致的单元读取电流(ir)的下降而分别在一对对应的互补位线blt和blc上随时间形成的电压va,t和va,c。所示的电压va电平的表示仅仅是一个示例。在存内计算操作的计算周期完成之后,电压va电平返回到位线预充电vdd电平。将注意到,存在位线blt和blc中的至少一个位线上的电压可能从vdd电压下降到低于写入裕度(margin)的电平的风险,其中相对于列的存储器单元14中的一个存储器单元中存储的数据位值发生不希望的数据翻转。例如,存储在列的单元14中的逻辑“1”状态可以被翻转到逻辑“0”状态。这种数据翻转在存储器单元中存储的计算权重中引入数据错误,从而危及后续存内计算操作的精度。

8、由于过度的位线电压降低而发生的不希望的数据翻转主要是在存内计算操作期间以矩阵向量乘法模式同时并行访问字线的结果。该问题不同于sram位单元的正常数据翻转,其是由于当位线接近电源电压vdd的电平时在串行位单元访问中发生的静态噪声裕度(static-noise-margin,snm)问题。在串行访问期间,正常数据翻转是由数据存储节点qt或qc的接地反弹引起的。

9、解决串行位单元访问snm故障问题的已知解决方案是将字线电压降低少量,并且这通常通过字线驱动器的短路和泄放路径的使用来实现。然而,在存内计算操作期间对多个字线的并行访问需要激进wl降低/调制(rwlm)技术。此外,解决上述问题的已知解决方案是在所有集成电路工艺角(process corner)上施加固定字线电压降低(例如,施加等于vdd/2的电压vwlud),以确保(secure)最差集成电路工艺角。然而,这种字线欠驱动(wlud)解决方案具有已知的缺点,即,位线上的单元读取电流(ir)对应减少,这可能对计算性能产生负面影响。此外,使用固定字线欠驱动电压会增加阵列上读取电流的可变性,从而导致存内计算操作的精度损失。

10、另一种解决方案是对每个存储器单元14使用专门的位单元电路设计,该位单元电路在用于存内计算操作的多行的同时(并行)访问期间不太可以遭受不希望的数据翻转。该解决方案的一个问题是这种位单元电路的占用电路面积的增加。对于一些存内计算电路应用来说,优选的是保留使用阵列12中的标准6t sram单元(图2)或8t sram单元或拓扑结构相似的位单元而提供的优势。

技术实现思路

1、在一个实施例中,一种存内计算电路包括:包括以具有多行和多列的矩阵布置的多个静态随机存取存储器(sram)单元的存储器阵列,每行包括连接到该行的sram单元的字线,并且每列包括连接到该列的sram单元的第一位线;具有被连接以驱动该行的字线的输出的用于每行的字线驱动器电路;被配置为通过将脉冲通过字线驱动器电路施加到字线,来同时致动多个字线以用于存内计算操作的行控制器电路;以及包括耦合到每个第一位线的第一读取电路的列处理电路。

2、每个第一读取电路包括:具有耦合到第一位线的第一输入、被配置为接收参考电压的第二输入(其中上述参考电压在用于存内计算操作的对多个字线进行的同时致动期间处于大于sram单元的位翻转电压的电平)和输出的第一差分放大器;具有耦合到第一位线以接收第一读取电流的漏极和耦合到第一差分放大器的输出的栅极的第一mos晶体管;具有耦合到第一差分放大器的输出的栅极和被配置为输出第一镜像读取电流的漏极的第二mos晶体管;以及被配置为对第一镜像读取电流进行积分以生成第一输出电压的第一积分电容器。

3、第一差分放大器和第一mos晶体管用于将第一位线上的电压钳位到上述参考电压。

4、在一个实施例中,一种存内计算电路包括:包括以具有多行以及第一列和第二列的矩阵布置的多个静态随机存取存储器(sram)单元的存储器阵列,每行包括连接到该行的sram单元的字线,并且第一列和第二列中的每个列包括连接到该列的sram单元的第一位线;具有被连接以驱动该行的字线的输出的用于每行的字线驱动器电路;被配置为通过将脉冲通过字线驱动器电路施加到字线,来同时致动多个字线以用于存内计算操作的行控制器电路;以及列处理电路。

5、列处理电路包括:第一读取电路和第二读取电路。第一读取电路包括:被配置为在用于存内计算操作的对多个字线进行的同时致动期间将第一列的第一位线上的电压钳位到参考电压的第一电压钳位电路;以及连接到上述第一电压钳位电路并且耦合到第一列的第一位线的第一电流镜像电路(current mirroring circuit),上述第一电流镜像电路具有第一电流镜像比率并且被配置为对第一列的第一位线上的第一读取电流进行镜像以生成第一镜像读取电流。第二读取电路包括:被配置为在用于存内计算操作的对多个字线进行的同时致动期间将第二列的第一位线上的电压钳位到参考电压的第二电压钳位电路;以及连接到上述第二电压钳位电路并且耦合到第二列的第一位线的第二电流镜像电路,上述第二电流镜像电路具有第二电流镜像比率并且被配置为对第二列的第一位线上的第二读取电流进行镜像以生成第二镜像读取电流。第一积分电容器被配置为对第一镜像读取电流和第二镜像读取电流的总和进行积分以生成第一输出电压。

6、在用于存内计算操作的对多个字线进行的同时致动期间,参考电压处于大于sram单元的位翻转电压的电平。

7、在一个实施例中,一种存内计算电路包括:包括以具有多行和多列的矩阵布置的多个6t静态随机存取存储器(sram)单元的存储器阵列,每行包括连接到该行的sram单元的字线,并且每列包括连接到该列的6t sram单元的第一位线;用于每行的字线驱动器电路,其具有被连接以驱动该行的字线的输出;被配置为通过将脉冲通过字线驱动器电路施加到字线,来同时致动多个字线以用于存内计算操作的行控制器电路;以及列处理电路。

8、列处理电路包括耦合到每个第一位线的第一读取电路,其中每个第一读取电路包括:具有耦合到第一位线的第一输入、被配置为接收参考电压的第二输入和输出的第一差分放大器;以及耦合在第一差分放大器的第一输入与输出之间的第一反馈电阻器,其中上述输出被配置为生成根据参考电压和第一位线上的第一读取电流的第一输出电压。第一差分放大器用于将第一位线上的电压钳位到上述参考电压,其中在用于存内计算操作的对多个字线进行的同时致动期间,上述参考电压处于大于sram单元的位翻转电压的电平。

本文地址:https://www.jishuxx.com/zhuanli/20240731/182398.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。