计算器件、存储器控制器和执行存储器中计算的方法技术

技术编号:35816048 阅读:22 留言:0更新日期:2022-12-03 13:39
本申请的实施例提供了计算器件、存储器控制器和执行存储器中计算的方法。执行存储器中计算的方法包括:将数据储存在存储器阵列的存储器单元中,该数据包括用于计算的权重;确定是否接收到更新命令以改变至少一个权重;响应于接收到更新命令,对存储器阵列执行写入操作以更新至少一个权重;并且禁用对存储器阵列的写入操作,直到接收到下一个更新命令以改变至少一个权重。少一个权重。少一个权重。

【技术实现步骤摘要】
计算器件、存储器控制器和执行存储器中计算的方法


[0001]本申请的实施例涉及计算器件、存储器控制器和执行存储器中计算的方法。

技术介绍

[0002]本公开一般涉及在数据处理(诸如乘法累加操作)中使用的存储器阵列。存储器中计算(或存储器内计算)系统将信息储存在计算机的随机存取存储器(RAM)中并在存储器单元级别执行计算,而不是在用于每个计算步骤的RAM和数据储存单元之间移动大量数据。存储器中计算技术允许实时分析数据,因为储存在RAM中的数据可以快速存取,这使得能够在机器学习应用中更快地做出报告和决策。

技术实现思路

[0003]根据本申请的实施例的一个方面,提供了一种执行存储器中计算的方法,包括:将数据储存在存储器阵列的多个存储器单元中,数据包括用于计算的多个权重;确定是否接收到用于改变多个权重中的至少一个的更新命令;响应于接收到更新命令,对存储器阵列执行写入操作以更新改变的权重;以及禁用对存储器阵列的写入操作,直到接收到下一个更新命令以改变多个权重中的至少一个。
[0004]根据本申请的实施例的另一个方面,提供了一种计算器件,包括:存储器阵列,被配置为储存数据,数据包括用于计算的多个权重,存储器阵列包括分组在存储器单元的行和列中的多个存储器单元;以及存储器控制器,耦接到存储器阵列并且被配置为控制存储器单元。其中,存储器控制器被配置为:响应于更新命令,对存储器阵列执行写入操作以更新至少一个正在改变的权重;和禁用对存储器阵列的写入操作,直到收到下一个更新命令。
[0005]根据本申请的实施例的一个方面,提供了一种存储器控制器,包括:命令生成电路,被配置为当用于存储器中计算的多个权重中的一个被不同的权重替换时输出更新命令;以及控制电路,耦接到命令生成电路,并且被配置为禁用对用于储存多个权重的存储器阵列的写入操作直到接收到更新命令。
附图说明
[0006]当结合附图进行阅读取时,从以下详细描述可最佳理解本专利技术的各个方面。应该强调,根据工业中的标准实践,各个部件未按比例绘制并且仅用于说明的目的。实际上,为了清楚的讨论,各个部件的尺寸可以任意地增大或减小。
[0007]图1是根据本公开的一些实施例的示例性存储器器件的代表性部分的示意图。
[0008]图2是根据本公开的一些实施例的示例性存储器中计算(CIM)器件的代表性部分的示意图。
[0009]图3是根据本公开的一些实施例的示例性存储器单元的示意图。
[0010]图4是图示根据本公开的一些实施例的图2的CIM器件中的存储器操作的示例性图。
[0011]图5是图示根据本公开的一些实施例的图2的CIM器件中的存储器操作的另一示例性图。
[0012]图6是根据本公开的一些实施例的执行存储器中计算的方法的示例性流程图。
[0013]图7是根据本公开的一些实施例的执行图6的方法中的写入操作的操作的示例性流程图。
具体实施方式
[0014]以下公开内容提供了许多用于实现本专利技术的不同特征不同的实施例或实例。下面描述了组件和布置的具体实施例或实例以简化本专利技术。当然,这些仅是实例而不旨在限制。例如,在以下描述中,在第二部件上方或者上形成第一部件可以包括第一部件和第二部件直接接触形成的实施例,并且也可以包括在第一部件和第二部件之间可以形成额外的部件,从而使得第一部件和第二部件可以不直接接触的实施例。此外,本专利技术可以在各个示例中重复参考数字和/或字母。该重复是为了简单和清楚的目的,并且其本身不指示讨论的各个实施例和/或配置之间的关系。
[0015]本说明书中使用的术语通常具有其在本领域中和在使用每个术语的特定上下文中的普通含义。本说明书中示例的使用(包括本文讨论的任何术语的示例)仅是说明性的,并且绝不限制本公开或任何示例性术语的范围和含义。同样,本公开不限于本说明书中给出的各种实施例。
[0016]尽管在本文中可以使用术语“第一”、“第二”等来描述各种元件,但是这些元件不应受到这些术语的限制。这些术语用于区分一个元件和另一个元件。例如,可以将第一元件称为第二元件,并且类似地,可以将第二元件称为第一元件,而不脱离实施例的范围。如本文所用,术语“和/或”包括一个或多个相关列出的项目的任何和所有组合。
[0017]此外,为了便于描述,本文中可以使用诸如“在

下方”、“在

下面”、“下部”、“在

上面”、“上部”等的间隔关系术语,以描述如图中所示的一个元件或部件与另一元件或部件的关系。除了图中所示的方位外,间隔关系术语旨在包括器件在使用或操作工艺中的不同方位。装置可以以其它方式定位(旋转90度或在其它方位),并且在本文中使用的间隔关系描述符可以同样地作相应地解释。
[0018]在本文中,术语“耦接”也可以称为“电耦接”,并且术语“连接”可以称为“电连接”。“耦接”和“连接”也可以用来表示两个或多个元件相互协作或交互。
[0019]将针对特定上下文中的实施例,即存储器中计算(“CIM”)应用来描述本公开的各种实施例。CIM应用的示例是乘法累加(“MAC”)操作。在MAC操作中,输入数组(例如,行)中的数字乘以或“加权”数字(例如,权重)的另一数组(例如,列)中的对应元素,并且由累加器将乘积相加(累加)在一起以计算输出总和。此操作在数学上类似于两个向量的点乘积(即,标量乘积)。在点乘积操作中,两个向量的点乘积定义为分量对的乘积的和,其中两个向量的分量成对相互相乘。
[0020]在某些人工智能(AI)系统中,诸如人工神经网络,可以通过多列权重对数字数组进行加权。通过每列加权产生对应的输出和。因此,人工智能系统可以由数字输入数组乘以多列矩阵中的权重来产生和输出数组。换句话说,AI系统基于权重的集合将输入映射到输出。在诸如多位卷积神经网络(“CNN”)操作的各种其他应用中,采用了类似的操作。当AI系
统训练神经网络时,神经网络可能会使用各种算法来更新MAC操作中使用的这些权重以找到权重的合适集合,使得神经网络能够正确分类数据。在这些CIM应用中,更新权重所需的功耗可能很大,并且MAC操作的效率是一个问题。通过降低SRAM操作更新权重的功耗,可以相应地改进CIM应用中MAC操作的效率。
[0021]图1是根据本公开的一些实施例的示例性存储器器件100的代表性部分的示意图。如图1所示,存储器器件100包括存储器阵列110和存储器控制器120,存储器控制器120被配置为对存储器阵列110执行读取操作或写入操作。
[0022]存储器阵列110包括排列成M行和N列的存储器单元112,其中M是对应于行数的整数并且N是对应于列数的整数。例如,存储器阵列110可以是256
×
256存储器单元(112)的阵列,即,存储器单元112排列成256行
×
256列,但本公开不限于此。在各种实施例中,M和N可以是任何整数,诸如16、32、64、128等。此外,存储器阵列110也可以使用不同类本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种执行存储器中计算的方法,包括:将数据储存在存储器阵列的多个存储器单元中,所述数据包括用于计算的多个权重;确定是否接收到更新命令以改变所述多个权重中的至少一个;响应于接收到所述更新命令,对所述存储器阵列执行写入操作以更新改变的所述权重;以及禁用对所述存储器阵列的所述写入操作,直到接收到下一个更新命令以改变所述多个权重中的至少一个。2.根据权利要求1所述的方法,还包括:禁用对储存用于计算的所述多个权重的所述存储器单元的读取操作。3.根据权利要求1所述的方法,其中,执行所述写入操作包括:将与用于储存更新的所述权重的所述存储器单元中的一个相关联的位线和互补位线预充电到电源电压;基于与所述更新命令相关联的更新的权重将所述位线设置为第一逻辑值;基于更新的所述权重将所述互补位线设置为与所述第一逻辑值互补的第二逻辑值;和将与所述存储器阵列的所述存储器单元中的所述一个相关联的字线设置为逻辑一。4.根据权利要求1所述的方法,其中,禁用所述写入操作包括:禁用预充电与具有未改变的权重的所述存储器单元中的一个相关联的位线和互补位线;和禁用设置所述位线和设置所述互补位线。5.根据权利要求1所述的方法,其中,禁用所述写入操作包括将与具有未改变的权重的所述存储器单元中的一个相关联的字线设置为逻辑零。6.根据权...

【专利技术属性】
技术研发人员:池育德李嘉富
申请(专利权)人:台湾积体电路制造股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1