首页 / 专利库 / 资料储存系统 / 随机存取存储器 / 内容可寻址存储器 / 具有自旋轨道转矩设备的内容可寻址存储器

具有自旋轨道转矩设备的内容可寻址存储器

阅读:668发布:2020-05-11

专利汇可以提供具有自旋轨道转矩设备的内容可寻址存储器专利检索,专利查询,专利分析的服务。并且本 发明 题为“具有自旋轨道转矩设备的内容可寻址 存储器 ”。本文提供了三态 内容可寻址存储器 (TCAM) 电路 。在一个示例性实施方式中,TCAM电路可以包括第一自旋轨道转矩(SOT) 磁隧道结 (MTJ)元件,该第一自旋轨道转矩(SOT)磁隧道结(MTJ)元件具有耦接到由第一搜索线控制的第一读取晶体管的钉扎层,并且具有跨补充写入输入以第一配置耦接的自旋霍尔效应(SHE)层。TCAM电路可以包括第二SOT MTJ元件,该第二SOT MTJ元件具有耦接到由第二搜索线控制的第二读取晶体管的钉扎层,并且具有跨补充写入输入以第二配置耦接的SHE层。TCAM电路可以包括:偏置晶体管,该偏置晶体管被配置成向第一读取晶体管和第二读取晶体管的漏极 端子 提供偏置 电压 ;以及电压保持器元件,该电压保持器元件将漏极端子耦接到匹配指示符线。,下面是具有自旋轨道转矩设备的内容可寻址存储器专利的具体信息内容。

1.一种内容可寻址存储器(CAM)电路,包括:
第一自旋轨道转矩(SOT)磁隧道结(MTJ)元件,所述SOT MTJ元件具有耦接到由第一搜索线控制的第一读取晶体管的钉扎层,并且具有跨补充写入输入以第一配置耦接的自旋霍尔效应(SHE)层;
第二SOT MTJ元件,所述第二SOT MTJ元件具有耦接到由第二搜索线控制的第二读取晶体管的钉扎层,并且具有跨所述补充写入输入以第二配置耦接的SHE层;
偏置晶体管,所述偏置晶体管被配置成将偏置电压连接到所述第一读取晶体管和所述第二读取晶体管的漏极端子;和
电压保持器元件,所述电压保持器元件将所述漏极端子耦接到匹配指示符线。
2.根据权利要求1所述的CAM电路,包括:
所述第一SOT MTJ元件的所述SHE层,所述SHE层通过由第一写入控制线控制的第一写入控制晶体管跨所述补充写入输入以所述第一配置耦接;和
所述第二SOT MTJ元件的SHE层,所述SHE层通过由第二写入控制线控制的第二写入控制晶体管跨所述补充写入输入以所述第二配置耦接。
3.根据权利要求2所述的CAM电路,包括:
控制电路,所述控制电路被配置成通过至少启用所述第一写入控制晶体管以建立通过所述第一SOT MTJ元件的所述SHE层的第一电流来将数据写入所述第一SOT MTJ元件中,所述第一电流根据所述数据改变所述第一SOT MTJ元件的磁化状态;和
所述控制电路被配置成通过至少启用所述第二写入控制晶体管以建立通过所述第二SOT MTJ元件的所述SHE层的第二电流来将数据写入所述第二SOT MTJ元件中,所述第二电流根据所述数据的补充版本改变所述第二SOT MTJ元件的磁化状态。
4.根据权利要求1所述的CAM电路,包括:
预充电元件,所述预充电元件根据预充电控制信号将所述匹配指示符线耦接到预定电压。
5.根据权利要求1所述的CAM电路,包括:
控制电路,所述控制电路被配置成将所述匹配指示符线预充电到预定电压并且禁用所述第一读取晶体管和所述第二读取晶体管;和
在对所述匹配指示符线预充电之后,所述控制电路被配置成在所述第一搜索线和所述第二搜索线上呈现补充搜索数据时,通过至少启用所述第一读取晶体管和所述第二读取晶体管来评估所述第一SOT MTJ元件与所述第二SOT MTJ元件之间的数据匹配状态,以响应性地在所述匹配指示符线上输出表示所述数据匹配状态的匹配结果电压。
6.根据权利要求5所述的CAM电路,其中当在所述搜索数据与存储在所述第一SOT MTJ和所述第二SOT MTJ中的数据之间确定匹配时,所述匹配结果电压包括所述预定电压,其中当在所述搜索数据与存储在所述第一SOT MTJ和所述第二SOT MTJ中的数据之间确定不匹配时,所述匹配结果电压包括低于所述预定电压的电压电平。
7.根据权利要求1所述的CAM电路,包括:
单独写入路径和读取路径布置,其中所述写入路径包括耦接到所述第一SOT MTJ的所述SHE层和所述第二SOT MTJ的所述SHE层的所述补充写入输入,并且其中所述读取路径包括由所述第一搜索线控制的所述第一读取晶体管和由所述第二搜索线控制的所述第二读取晶体管。
8.根据权利要求1所述的CAM电路,其中所述第一SOT MTJ元件的所述SHE层和所述第二SOT MTJ元件的所述SHE层各自包括自旋霍尔金属(SHM)材料,所述SHE材料包括贝塔(β)-钨和β-钽中的一者。
9.根据权利要求1所述的CAM电路,其中所述第一搜索线和所述第二搜索线接受三态输入。
10.一种三态内容可寻址存储器(TCAM)阵列,包括:
被布置成列和行的多个TCAM单元,其中每列的TCAM单元经由相关联的搜索线耦接,并且每行的TCAM单元经由相关联的匹配线耦接;
所述多个TCAM单元中的每一个包括:
第一自旋轨道转矩(SOT)磁隧道结(MTJ)元件,所述SOT MTJ元件具有耦接到由第一搜索线控制的第一搜索控制晶体管的钉扎层,并且具有跨补充写入输入以第一配置耦接的自旋霍尔效应(SHE)层;
第二SOT MTJ元件,所述第二SOT MTJ元件具有耦接到由第二搜索线控制的第二搜索控制晶体管的钉扎层,并且具有跨所述补充写入输入以第二配置耦接的SHE层;
偏置晶体管,所述偏置晶体管被配置成向所述第一搜索控制晶体管和所述第二搜索控制晶体管的漏极端子提供偏置电压;和
电压保持器元件,所述电压保持器元件将所述漏极端子耦接到对应的匹配线。
11.根据权利要求10所述的TCAM阵列,所述多个TCAM单元中的每一个还包括:
所述第一SOT MTJ元件的所述SHE层,所述SHE层通过由第一写入控制线控制的第一写入控制晶体管以所述第一配置耦接到所述补充写入输入;和
所述第二SOT MTJ元件的所述SHE层,所述SHE层通过由第二写入控制线控制的第二写入控制晶体管以所述第二配置耦接到所述补充写入输入。
12.根据权利要求11所述的TCAM阵列,包括:
控制电路,所述控制电路被配置成至少通过以下方式将数据写入所述TCAM单元:
启用所述TCAM单元的第一写入控制晶体管以建立通过所述第一SOT MTJ元件的所述SHE层的第一电流,所述第一电流根据所述数据改变所述TCAM单元的磁化状态;以及启用所述TCAM单元的第二写入控制晶体管以建立通过所述第二SOT MTJ元件的所述SHE层的第二电流,所述第二电流根据所述数据的补充版本改变所述TCAM单元的磁化状态。
13.根据权利要求10所述的TCAM阵列,所述多个TCAM单元中的每一个还包括:
预充电元件,所述预充电元件响应于预充电控制信号而将所述对应的匹配线耦接到预定电压。
14.根据权利要求10所述的TCAM阵列,包括:
控制电路,所述控制电路被配置成至少通过以下方式搜索所述TCAM单元中的数据:
在将所述相关联的匹配线预充电到预定电压之后,当在所述相关联的搜索线上呈现搜索数据时,通过至少启用所述TCAM单元的所述第一读取晶体管和所述第二读取晶体管来评估所述TCAM单元之间的数据匹配状态,以响应性地在所述相关联的匹配指示符线上输出表示所述TCAM单元的所述数据匹配状态的匹配结果电压。
15.根据权利要求14所述的TCAM阵列,其中当在所述搜索数据与存储在每行中搜索到的TCAM单元中的数据之间确定匹配时,每行的所述匹配结果电压包括所述预定电压,并且其中当在所述搜索数据与存储在每行中搜索到的TCAM单元中的数据之间确定不匹配时,每行的所述匹配结果电压包括低于所述预定电压的电压电平。
16.根据权利要求10所述的TCAM阵列,所述多个TCAM单元中的每一个还包括:
单独写入路径和读取路径布置,其中所述写入路径包括耦接到所述第一SOT MTJ的所述SHE层和所述第二SOT MTJ的所述SHE层的所述补充写入输入,并且其中所述读取路径包括由所述第一搜索线控制的所述第一读取晶体管和由所述第二搜索线控制的所述第二读取晶体管。
17.根据权利要求10所述的TCAM阵列,其中所述第一SOT MTJ元件的所述SHE层和所述第二SOT MTJ元件的所述SHE层各自包括自旋霍尔金属(SHM)材料,所述SHM材料包括贝塔(β)-钨和β-钽中的一者。
18.一种操作三态内容可寻址存储器(TCAM)单元的方法,包括:
通过建立通过第一写入控制晶体管和所述第一SOT MTJ元件的SHE层的第一电流来将数据写入第一自旋轨道转矩(SOT)磁隧道结(MTJ)元件中,所述第一电流根据所述数据改变所述第一SOT MTJ元件的磁化状态;以及
通过建立通过第二写入控制晶体管和所述第二SOT MTJ元件的SHE层的第二电流来将数据写入第二SOT MTJ元件中,所述第二电流根据所述数据的补充版本改变所述第二SOT MTJ元件的磁化状态。
19.根据权利要求18所述的方法,还包括:
将匹配指示符线预充电到预定电压;
接收在第一搜索线和第二搜索线上呈现的补充搜索数据;以及
通过至少启用由所述第一搜索线控制并耦接到所述第一SOT MTJ的钉扎层的第一读取晶体管并且启用由所述第二搜索线控制并耦接到所述第二SOT MTJ的钉扎层的第二读取晶体管来评估所述第一SOT MTJ元件与所述第二SOT MTJ元件之间的数据匹配状态;以及在所述匹配指示符线上呈现表示所述数据匹配状态的匹配结果电压。
20.根据权利要求19所述的方法,其中当在所述搜索数据与存储在所述第一SOT MTJ和所述第二SOT MTJ中的数据之间确定三态匹配时,所述匹配结果电压包括所述预定电压,其中当在所述搜索数据与存储在所述第一SOT MTJ和所述第二SOT MTJ中的数据之间确定不匹配时,所述匹配结果电压包括低于所述预定电压的电压电平。

说明书全文

具有自旋轨道转矩设备的内容可寻址存储器

[0001] 相关申请
[0002] 本申请要求2018年8月30日提交的标题为“基于自旋轨道转矩设备的内容可寻址存储器(SPIN-ORBIT TORQUE DEVICE BASED CONTENT ADDRESSABLE MEMORY)”的美国临时专利申请62/725,088的权益和优先权,该临时专利申请据此全文以引用方式并入。

技术领域

[0003] 本公开的各方面涉及内容可寻址存储器和人工神经网络的领域。

背景技术

[0004] 内容可寻址存储器(CAM)是允许使用输入值在存储数据中快速搜索的数据存储布置。随机存取存储器(RAM)使用输入存储地址来检索特定地址处的数据。相比之下,CAM接受输入数据或输入标签以确定输入数据是否保持在CAM内,并且如果找到,则生成与CAM内的匹配输入数据相对应的一个或多个存储地址。当在称为联合存储器的布置中采用时,由CAM确定的一个或多个存储地址随后可以被输入到随机存取存储器以基于那些存储地址来产生输出值。另一种形式的CAM被称为三态内容可寻址存储器(TCAM),其允许输入数据的通配符、“不关心”或未定义部分。当并非所有输入数据的数字都已知时,该TCAM布置可能是有用的,并且可以从CAM生成与具有通配符值的输入数据模式匹配的地址列表。然而,TCAM实施方式要求为每个位编码至少三个状态,而不是针对更传统CAM(称为二态CAM)的两个状态。
[0005] 已经尝试了各种TCAM实施方式,但这些实施方式承受大功耗、高半导体占用面积和有限速度。例如,基于互补金属化物半导体(CMOS)的CAM可能具有大的静态功耗和大的面积开销,因为基于CMOS的CAM的密度增加。另一种TCAM实施方式采用自旋转移转矩(STT)磁随机存取存储器(MRAM)单元。然而,这些布置具有有限的搜索速度,部分原因在于STT MRAM配置的低隧道磁阻(TMR)特性。此外,基于STT MRAM的TCAM所需的高写入电流导致读/写支持电路的不期望的功耗和更大的特征尺寸。
[0006] CAM和TCAM通常用于网络路由设备。然而,这些存储器结构也可以用于人工神经网络(ANN)中。ANN可以由使用软件、集成硬件或其他分立元件模拟的单独人工神经元形成。神经形态计算可以采用ANN,其聚焦于在集成系统中使用诸如模拟/数字电路的电子部件来模仿人类大脑,并尝试更好地理解神经系统的神经生物架构。神经形态计算强调实现神经系统的模型以理解单独神经元、突触、电路和架构的形态如何导致理想的计算。发明内容
[0007] 本文提供了三态内容可寻址存储器(TCAM)电路。在一个示例性实施方式中,TCAM电路可以包括第一自旋轨道转矩(SOT)磁隧道结(MTJ)元件,该第一SOT MTJ具有耦接到由第一搜索线控制的第一读取晶体管的钉扎层,并且具有跨补充写入输入以第一配置耦接的自旋霍尔效应(SHE)层。TCAM电路可以包括第二SOT MTJ元件,该第二SOT MTJ具有耦接到由第二搜索线控制的第二读取晶体管的钉扎层,并且具有跨补充写入输入以第二配置耦接的SHE层。TCAM电路可以包括:偏置晶体管,该偏置晶体管被配置成向第一读取晶体管和第二读取晶体管的漏极端子提供偏置电压;以及电压保持器元件,该电压保持器元件将漏极端子耦接到匹配指示符线。附图说明
[0008] 参考以下附图可以更好地理解本公开的许多方面。虽然结合这些附图描述了若干实施方式,但本公开不限于本文公开的实施方式。相反,目的是涵盖所有替代方案、修改和等同物。
[0009] 图1示出了实施方式中的内容可寻址存储器。
[0010] 图2示出了实施方式中的人工神经网络。
[0011] 图3示出了实施方式中的内容可寻址存储器。
[0012] 图4示出了实施方式中的具有自旋轨道转矩设备的示例性电路。
[0013] 图5示出了实施方式中的具有自旋轨道转矩设备的示例性内容可寻址存储器。
[0014] 图6示出了实施方式中的具有自旋轨道转矩设备的内容可寻址存储器的示例性操作。
[0015] 图7示出了实施方式中的具有自旋轨道转矩设备的内容可寻址存储器的示例性操作。
[0016] 图8示出了根据实施方式的用于托管或控制具有自旋轨道转矩设备的人工神经网络或内容可寻址存储器的计算系统。
[0017] 图9示出了磁隧道结设备的示例性性能。

具体实施方式

[0018] 在本文的讨论中,提出了各种增强电路。这些增强电路可以包括内容可寻址存储器(CAM)元件,以进一步加速操作并降低神经网络的功耗以及其他应用。例如,可以在任何内容可寻址存储器和任何内容可寻址存储器应用中采用CAM结构。本文讨论了三态内容可寻址存储器(TCAM)结构,其允许使用输入数据的通配符、“不关心”或未定义部分来生成匹配结果。本文讨论的一种这样TCAM结构包括两个自旋霍尔效应(SHE)磁阻随机存取存储器(MRAM)单元,其采用自旋轨道转矩(SOT)磁隧道结(MTJ)元件。
[0019] CAM和TCAM结构通常采用非易失性存储器(NVM)元件以存储可使用输入数据或输入标签来搜索的数据。过去对CAM/TCAM结构的尝试包括用于实现静态随机存取存储器(SRAM)存储器元件的互补金属氧化物(CMOS)结构。虽然对于CAM/TCAM可行,但基于CMOS的单元很大并且比其他单元类型消耗更多功率。因此,基于CMOS的单元不期望用于神经网络TCAM结构,诸如下面在图2中讨论的那些。
[0020] CAM/TCAM结构可以替代地使用磁隧道结(MTJ)或各种电阻存储器设备(诸如忆阻器)来形成。MTJ元件可以用于形成数据存储元件。MTJ使用隧道磁阻(TMR)来进行操作,该隧道磁阻是磁阻效应。MTJ通常由被薄绝缘体层分开的两个磁材料层组成,电子可以通过该薄绝缘体层量子机械地从一个铁磁层隧穿到另一个铁磁层中。MTJ的一个铁磁层可以称为具有固定磁化状态的钉扎层,而MTJ的另一个铁磁层包括可以改变磁化状态的自由层。包括分开两个铁磁层的薄绝缘体的中间层可以由氧化物材料或其他合适的电绝缘体形成。电端子可以被形成为将MTJ的自由层和钉扎层与电路中的其他部件交接。
[0021] MTJ元件通常可以被置于两个不同状态,这两个状态可以对应于其中存储的不同逻辑值。这些状态取决于MTJ元件的磁化状态,其对应于MTJ元件当前呈现的磁阻值。本文讨论的MTJ元件的可变磁化状态可以在两种状态之间变化,即并行状态和反并行状态。当MTJ元件的自由层和钉扎层处于相同磁化状态时,发生并行状态。当MTJ元件的自由层和钉扎层处于不同磁化状态时,发生反并行状态。可以将逻辑值分配给磁化状态,诸如针对反并行状态的逻辑“0”和针对并行状态的逻辑“1”,以及其他配置。
[0022] MTJ类型可以包括可在人工神经网络电路和CAM/TCAM电路中采用的各种配置。MTJ设备通常采用自旋极化电流来可逆地切换铁磁层的磁化状态,即上述自由层的磁化状态。可以采用MTJ元件的垂直或并行布置,其是指与MTJ元件内的磁矩相对于对应半导体衬底表面的优选对准方向相关联的一种类型的磁各向异性。第一种类型的MTJ配置包括均匀垂直自旋转移转矩(STT)设备,其通常包括由至少三个堆叠材料层形成的2端子设备。这三层包括设置在钉扎层与自由层之间的隧道势垒层。自由层和钉扎层耦接到STT MTJ的两个端子。
[0023] 已经开发了基于STT MTJ的TCAM单元,其可以由若干控制晶体管和两个STT MTJ元件组成。该结构具有优于上述CMOS配置的优点,因为几乎不发生静态功耗,包括更紧凑的尺寸,并且具有减少的晶体管量。而且,基于STT MTJ的TCAM的配置可以使用共享或单独的写入线(WL)和读取/搜索线(SL)。单独的写入线和搜索线可以具有优于CMOS设计的结构优势。然而,在基于STT MTJ的电路中,搜索速度(读取速度)受到限制,这部分是由于STT MTJ元件的低隧道磁阻(TMR)特性以及STT配置中固有的较高相对写入电流。因此,为了提高TCAM搜索速度,必须采用更大尺寸的STT MTJ。而且,由于电路配置,可能遇到读取干扰。
[0024] 由于基于CMOS和STT MTJ的TCAM设计的限制和性能问题,现在提出了基于MTJ的增强设计。本文讨论的一种这样基于MTJ的设计包括两个自旋霍尔效应(SHE)磁阻随机存取存储器(MRAM)单元,其采用异质性面内自旋轨道转矩(SOT)磁隧道结(MTJ)元件。这种增强设计可以用于任何CAM或TCAM,其可以在神经网络应用中采用或不采用。因此,可以向通用内容可寻址存储器结构提供这些增强单元电路结构。
[0025] SOT MTJ设备通常包括3端子设备。与双端子STT MTJ设备相比,SOT MTJ设备可以具有附加的金属底层端子以及其他差异。在这些SOTMTJ配置中,提供单独的“写入”和“读取”电流路径,这可以允许更长的设备寿命。在SOT MTJ设备中,写入电流通过单独的下层而不是通过隧道势垒层运送,如STT MTJ元件中发生的那样。与SOT MTJ元件相比,通过STT MTJ元件中的隧道势垒层的写入电流可导致度隧道势垒层材料的更多磨损和损坏。此外,当采用单独的写入路径和读取路径时,读取控制元件和写入控制元件(诸如读取或写入控制晶体管)可以具有与STT MTJ结构相比更小的相对尺寸。这部分是由于与STT MTJ结构相比,SOT MTJ配置的隧道磁阻(TMR)更大。具体地,SOT MTJ设备可以采用比STT MTJ设备更高的TMR,这可以降低本文讨论的CAM/TCAM结构所需的写入和读取能量。与其他MRAM或CMOS结构相比,减少的所需能量对应于SOT MTJ配置中所需的更少读取/写入电流,这可导致更长的设备持续时间。
[0026] SOT MTJ在本文中也可称为自旋霍尔效应(SHE)MTJ,其中金属底层包括自旋霍尔金属(SHM)。示例性SHE MTJ结构如下面的图4所示。其他方法可以用施加有外部电场的SOT垂直MTJ来代替SOT平面内MTJ。然而,该外部场可能降低相邻电路的热稳定性
[0027] 在讨论基于增强的基于SOT/SHM MTJ的CAM/TCAM结构之前,将简要介绍各种CAM/TCAM存储器单元技术之间的相对性能。图9示出了用于实现存储器单元结构的各种技术之间的性能比较,这些技术可能在CAM/TCAM设计中采用。图9示出了读取性能通过增加SHE-MRAM结构中的热稳定性(Δ)而增加。从图9中的曲线图900-902可以看出,即使具有与STT-MRAM结构相比更高的热稳定性(Δ),SHE-MRAM结构也显示出小的写入开销。较高Δ也允许较大读取电流。因此,通过使用SHE-MRAM结构,可以在最小程度地牺牲写入延迟的情况下减小读取延迟。
[0028] 在图9的曲线图900中,随着沿平轴线指示的热稳定性百分比的增加,在STT-MRAM设备和SHE-MRAM之间示出了写入延迟行为的比较。可以看出,与STT-MRAM设备相比,SHE-MRAM设备在更大的热稳定性范围内保持更低的写入延迟。在图9的曲线图901中,随着沿水平轴线示出的热稳定性范围,示出了SHE-MRAM设备的读取电流。在图9的曲线图902中,随着沿水平轴线示出的热稳定性范围,示出了SHE-MRAM设备的读取延迟。读取电流性能和读取延迟性能可能受到SHE-MRAM结构的下层的材料选择、材料纯度和材料成分的影响。
[0029] 图9中的表903示出了SHE-MRAM在级别2(L2)高速缓存结构中采用时的性能。在表903中,在各种类型的存储器单元结构(诸如CMOS(SRAM)、STT-MRAM和SHE-MRAM结构)之间进行比较。与SRAM设备相比,SHE-MRAM设备提供类似的读取延迟,但提供更低的泄漏和更致密的区域利用。与STT-MRAM设备相比,SHE-MRAM设备的性能优于STT-MRAM设备,降低了位单元故障率。然而,STT-MRAM设备和SHE-MRAM设备具有相似的占有面积。此外,可以在SHE-MRAM设备中采用较高隧道磁阻(TMR)以减少本文所讨论的CAM/TCAM结构所需的读取能量。
[0030] 现在转向用于实现内容可寻址存储器(CAM)和三态内容可寻址存储器(TCAM)设备的增强结构,给出了图1。如上所述,CAM是允许经由输入搜索数据代替数据地址(如大多数随机存取存储器设备所做的那样)来查找存储数据的存储器。CAM将输入的搜索数据与存储数据表进行比较并返回匹配数据的地址。然后,该地址可用于从存储器中检索数据本身。可以形成各种类型的CAM,其中一种示例性类型称为三态CAM(TCAM)。传统的CAM需要二态格式化输入搜索数据。然而,TCAM允许针对输入搜索数据的未定义部分使用“不关心”或通配符的第三状态(三态),使得不需要将精确的输入搜索数据实例呈现给TCAM以产生所得地址。图1示出了示例性CAM系统100。
[0031] 在图1中,系统100的输入搜索数据120被呈现给CAM电路110,该CAM电路将输入的搜索数据与CAM的数据内容的存储表进行比较。如果找到匹配,则呈现匹配位置121作为结果。该结果可以进一步呈现给随机存取存储器111以用作查找地址。当该查找地址被呈现给存储器时,该查找地址从随机存取存储器111产生对应于输入搜索数据120和匹配位置121的输出数据。在图1的示例中,通信网络路由“端口”仅用于示出CAM的一种常见示例性使用。输出数据122包括用于基于包括网络地址的输入搜索数据来路由通信的端口,但可以替代地使用/存储任何类型的数据。
[0032] 图1中还示出了包括CAM的详细概念视图的电路130。在该示例中,输入搜索数据120包括n位搜索字,其被保存在搜索数据寄存器中以用于在搜索线上呈现给具有先前存储字0至w的查找表131。输出编码器132呈现一个或多个匹配位置134,其可以包括对应于与输入搜索数据120相关联的存储位置的一个或多个数据地址。在电路130中,这被示为存储字w-1,其呈现在相关联的匹配线上。在一些示例中,匹配线可以被称为匹配指示符线或输出线。该数据地址可以用于从存储器中检索目标数据或用于其他更直接的应用。
[0033] CAM/TCAM结构的一个示例性应用是人工神经网络(ANN)。可以使用常规处理设备以及专用电路来形成人工神经网络。示例性处理设备包括中央处理单元(CPU)或图形处理单元(GPU),其适用于机器学习应用,诸如图像识别语音识别、手写识别以及其他应用。
[0034] 为了执行机器学习操作,由于大多数CPU的架构设计,CPU可能是有限的选择。例如,CPU擅长非常有效地处理一个非常复杂指令集但缺乏并行性。在机器学习计算中,尤其是训练操作中,基本操作是向量矩阵乘法。已开始受到超过CPU的青睐的GPU使用并行架构并且擅长处理许多并行的非常简单指令集。另一个新兴选择是ASIC,诸如张量处理单元(TPU),其擅长执行一项特定任务。随着机器学习越来越多地集成到日常应用中,人们越来越感兴趣的是为机器学习任务制作这些专用芯片以及使现有的基于处理器的设计更加高效。
[0035] 除了数据处理速度之外,机器学习和神经网络中的另一个问题是功耗。机器学习任务可以使GPU或TPU花费高达数百瓦来执行,这与通过仅使用大约20瓦来执行类似认知任务的人脑形成对比。这种高耗电的缺点激发人们研究生物启发或大脑启发的方法(诸如神经形态计算)以处理机器学习功耗问题。如下面将讨论的,采用另一种方法来降低在使用GPU或其他处理设备时的功耗。这种增强方法使用内容可寻址存储器(CAM)设备的新结构来补充神经网络中的GPU的操作。
[0036] 如上所述,诸如卷积神经网络(CNN)的ANN可以使用由GPU形成的多核处理器来实现。在GPU架构中,浮点单元(FPU)消耗大量能量,该浮点单元包括处理数据的流式核心中的加法器(ADD)元件、乘法器(MUL)元件和乘法累加器元件。本文的增强CAM/TCAM示例可以用在使用处理器(诸如GPU)的ANN中。具体地,内容可寻址存储器(CAM)可以耦接到GPU或其他处理器中的处理流水线。CAM可以用于存储CNN遇到的高频模式。可以经由搜索项或搜索数据有效地搜索这些高频率模式,从而可以在CNN中提供显著的计算减少和节能。
[0037] 图2示出了用于将CAM应用于神经网络实施方式的示例性系统200,其可以提供GPU实现的神经网络或机器学习任务处理器的增强操作。系统200包括三态CAM(TCAM)221和存储器222,其形成联合存储器220以补充使用对应GPU中的浮点单元(FPU)210来形成的神经网络的操作。在GPU流式核心中的每个FPU旁边集成TCAM 221提供了计算减少和节能。具体地,提供联合存储器220以用于使用对TCAM 221的输入数据来查找高频率模式。该配置可以提供显著的计算减少和节能。如上所述,GPU是除了仅图形处理之外还用于处理任何数据任务的通用形式的GPU。这种类型的GPU在本文中可以称为通用图形处理单元(GPGPU)。
[0038] 在图2中,输入201被呈现给对应GPGPU内的FPU 210的FPU级211-215的流水线。浮点结果(QFPU)来源于通过FPU流水线处理输入。输入201也同时作为输入搜索数据呈现给TCAM 221。当搜索在TCAM 221中成功(例如,搜索命中)时,则命中指示符信号223被呈现给流水线控制电路216。流水线控制电路216可以包括向FPU级211-215提供时钟信号的时钟电路。命中指示符信号223向流水线控制电路216的时钟电路指示选通或以其他方式禁用对FPU级211-215的时钟信号。一旦命中结果产生来自与TCAM 221相关联的存储器的数据输出,则提供对应结果(QAM)作为流水线的输出来代替QFPU结果。多路复用器217由联合存储器220的命中指示符信号223控制,其可以被提供以在由QFPU和QAM呈现的结果中进行选择。
[0039] 从图2中可以看出,当输入包含在联合存储器220中时,则输入不需要由FPU流水线处理。通过使用命中指示符信号223和时钟电路控制在这些情况下禁用FPU流水线,可以实现显著的功率节省。除了时钟控制电路之外,还可以实现控制FPU流水线的其他方式,诸如对FPU流水线电路元件的功率控制选通、FPU流水线电路的逻辑禁用或其他技术。然而,当输入操作数不包含在联合存储器220中时,则可以启用FPU流水线来处理输入以产生结果。基于TCAM的结果或基于FPU的结果中的选择是基于是否指示TCAM中的匹配来实现的。
[0040] 更新联合存储器220以保持通过FPU流水线处理输入操作数数据而得的频繁结果。可以基于各种标准来执行该更新,诸如当结果与先前结果类似时,或者在初始化时段期间使用每个结果直到联合存储器填充到容量。后续命中可以指示允许所得数据保持在联合存储器中,并且具有与其相关联的几个命中的数据可以用FPU流水线提供的新结果替换。由于TCAM221可以基于三态格式化数据指示成功命中,因此不需要将精确匹配呈现为输入操作数以产生命中。在机器学习应用和其他神经网络应用中,该匹配/命中可足以产生结果并消除FPU流水线阶段的功耗。
[0041] 图3呈现了内容可寻址存储器310的示意图300。该示意图具有成列的单元(C)311-323,其包括CAM或TCAM单元并以列耦接到多条搜索线(SL0-SL2)和逻辑补充搜索线当CAM 310的单元包括TCAM单元时,多个TCAM单元因此被布置成列和行,其中每列的TCAM单元经由相关联的搜索线耦接,并且每行的TCAM单元经由相关联的匹配线耦接。当搜索数据经由搜索数据寄存器/驱动器330呈现在搜索线上时,可以经由馈送到感测放大器341-344的各行匹配线(ML)来监测结果。编码器350可以基于哪个匹配线产生命中来呈现结果。该结果包括匹配位置302或匹配地址。
[0042] 控制电路360被配置成将数据写入CAM 310中,将输入数据呈现为搜索字301以搜索CAM 310,并且读出匹配位置302。控制电路360可以包括离散控制逻辑、集成控制逻辑、处理设备、固件、软件、或者可用于控制图3中呈现的电路的操作的其他控制元件,以及下面在图5中看到的。控制电路360可以与图3和图5中的电路的一个或多个实例集成。例如,当使用图5中的电路来形成TCAM单元阵列时,则控制电路360可以耦接到用于排列成行和列的TCAM单元的共享控制线。具体地,搜索线、写入线、控制线、匹配线等可以耦接到控制电路360的控制元件。当用于神经网络电路时,如图2所示,该TCAM阵列可以用于在TCAM阵列中找到输入数据的匹配时加速神经网络的操作并减小神经网络的功耗。
[0043] 为了实现TCAM,可以采用各种方法。参考图3,内容可寻址存储器310中的每个“单元”(C)部件可以由各种存储器结构形成。通常,这些存储器结构包括非易失性存储器(NVM)元件以及控制逻辑。一种这样的NVM元件是具有下面自旋霍尔效应(SHE)材料的自旋轨道转矩(SOT)MTJ元件。在讨论增强TCAM单元结构之前,我们首先简要介绍自旋轨道转矩(SOT)MTJ单元的结构。包含该SOT MTJ元件的非易失性存储器元件可以称为自旋霍尔效应(SHE)磁阻随机存取存储器(MRAM)。图4示出了示例性SHE-MRAM结构400。
[0044] 在图4中,未示出的控制电路控制通过自旋霍尔金属(SHM)元件430的材料层431的电荷移动的方向。根据自旋霍尔效应,相反取向的自旋可以累积在电荷携带材料的相对表面上。当与MTJ元件配对时,诸如图4中针对MTJ 420所示,MTJ元件420的自由层423与下面电荷携带材料431配合。当电流流过材料431时,该电流可以因此根据电荷通过材料431的流动而改变MTJ 420的自由层423的磁化状态。相对于保持在相同磁状态的固定或钉扎层421,改变MTJ 420的自由层423的磁化状态。MTJ 420还包括隧道层422,其在自由层423和钉扎层421之间形成绝缘层。
[0045] 图4中还示出了用于形成MRAM配置的外围结构,该MRAM配置允许通过MTJ元件420的磁化状态改变来写入和读取一些数据。这些结构包括读取控制晶体管(440)和写入控制晶体管(441)以及各种控制线。此外,结构400包括自旋霍尔金属(SHM)元件430,其包括两个端子432-433和自旋霍尔效应材料431。
[0046] 图4所示的SHE-MRAM结构的操作可以根据表401中所呈现的电压进行。在操作中,第一控制晶体管440或读取开关元件控制读取通路,并且经由栅极端子耦接到图4的RWL线411。第二控制晶体管441或写入开关元件控制写入通路,并且经由栅极端子耦接到图4的WWL线412。在写入操作期间,当WWL线412被启用并且对应写入控制晶体管441处于“导通”状态时,则在搜索线(SL)414与位线(Bl)413之间存在的电压通过材料431引入对应电流,其可以改变MTJ元件420的自由层423的磁阻或磁化状态。基于SL线与BL线之间的电流方向,逻辑“1”或“0”可以存储在SHE-MRAM结构400中。在读取操作期间,当RWL线411被启用并且对应读取控制晶体管440处于“导通”状态时,在BL线413上呈现的读取电压(VREAD)可以用于检测自由层423相对于MTJ元件420的钉扎层421的当前磁阻或磁化状态。
[0047] 有利地,图4中的SHE-MRAM结构对于每单位热稳定性(Δ)提供低电流(即通过下面材料431的ICHANNEL),即低ICHANNEL/Δ,其中每单位充电电流具有有效的自旋生成(即ISPIN/ICHARGE>100%)。用于材料431的示例性材料包括自旋霍尔金属(SHM)材料,包括钨(W)和钽(Ta)等,其可以影响SHE-MRAM结构的热稳定性。在一些示例中,采用W和Ta的贝塔(β)构型,诸如β-W(贝塔-钨或β-钨)和β-Ta(贝塔-钽或β-钽)材料。此外,SHE-MRAM结构提供单独的读取路径和写入路径,从而允许更长的设备寿命。具体地,与其他MRAM或CMOS结构相比,上述SHE-MRAM结构中的读取操作需要更少的电流,这可导致更长的结构持续时间。
[0048] 我们现在转向基于SHE-MRAM设备的TCAM单元的示例性实施方式。图5示出了具有SHE(SOT)-MRAM元件的增强CAM/TCAM单元结构。具体地,图5示出了包括基于六晶体管(6T)自旋霍尔效应(SHE)磁阻随机存取存储器(MRAM)的三态内容可寻址存储器(TCAM)的电路500。两个SHE-MRAM结构540-541包括在电路500中。每个SHE-MRAM结构包括自旋轨道转矩(SOT)MTJ配置,其包括耦接到下面自旋霍尔金属(SHM)层(544,545)的MTJ(542,543)。每个SOT MTJ的耦接到对应SHM层的层是MTJ的自由层,而隧道层和钉扎层在MTJ叠层中沿路径从自由层向上。先前在图4中示出了层的详细视图,并且图5中示出的视图仅是示意性的。
[0049] 如上所述,电路500包括基于6T SHE-MRAM的TCAM。六个晶体管包括M1-M6。M1和M2包括读取控制晶体管531-532。M3和M4包括写入控制晶体管533-534。M5包括偏置控制晶体管535。M6包括由晶体管536形成的电压保持器配置。另外,M0包括预充电控制晶体管530。在该示例中,M1、M2、M3、M4和M6包括负沟道金属氧化物半导体(NMOS)晶体管,而M0和M5包括正沟道金属氧化物半导体(PMOS)晶体管。其他合适的开关元件或选择部件可以替代地用于M1、M2、M3、M4和M6。
[0050] 应当注意,图5中的控制线上使用的“B”符号指示伴随信号的逻辑互补或逻辑补充版本。例如,行SLB(517)是行SL(516)的逻辑补充版本。补充版本是指特定信号或逻辑值的逻辑否定或逻辑反转。例如,当线SL处于特定电压电平(诸如VDD或逻辑“1”)时,则线SLB处于补充电压电平(即0V或逻辑“0”)。
[0051] 现在转到电路500的结构,包括读取控制晶体管531、532(M1,M2)以控制通过SHE-MRAM结构的每个SHM层(544,545)的读取电流。读取控制晶体管531、532由SL线和SLB线(516,517)控制,该SL线和SLB线包括用于电路500的搜索线。与上面讨论的STT MTJ结构相比,由于针对SOTMTJ结构采用较小读取电流,读取控制晶体管531、532也具有较小的相对特征尺寸。包括写入控制晶体管533、534(M3,M4)以控制通过SHE-MRAM结构的每个SHM层(544,545)的写入电流。写入控制晶体管533、534由WL1线和WL2线(514,515)控制,该WL1线和WL2线包括用于电路500的写入线。因此,使用读取线和写入线来实现单独的读取路径和写入路径。由于SOT MTJ配置的较大隧道磁阻(TMR)特性,写入控制晶体管533、534与STT MTJ结构相比也具有较小的相对尺寸。
[0052] 另外的控制元件包括在图5的TCAM单元结构中。首先,预充电晶体管530(M0)包括被配置成在读取/搜索操作之前将ML 511拉到预定电压电平(诸如VDD)的预充电元件。预充电晶体管530响应于预充电控制信号(PC)而将对应匹配线511耦接到预定电压。包括偏置晶体管535(M5)以将电压偏置到TCAM单元结构的读取晶体管531、532之间共享的公共节点523上。偏置晶体管535被配置成响应于偏置控制信号(BIAS)而向读取控制晶体管531和读取控制晶体管532的漏极端子提供偏置电压。偏置电压通常具有低于VDD的电平,诸如零伏或者对于M5所示的PMOS晶体管的场效应晶体管阈值电压(VTH)。
[0053] 包括另一元件536(M6)作为ML 511的电压保持器。在该示例中,电压保持器元件536包括二极管连接的NMOS晶体管。当许多TCAM单元包括在阵列中(连同包括在电路500中的TCAM单元)时,电压保持器的功能是为并行搜索操作保持足够的ML 511电压摆动。电压保持器元件536将读取控制晶体管531和读取控制晶体管532的漏极端子耦接到对应匹配线
511。图3示出了具有许多TCAM单元的示例性阵列。在搜索操作期间,ML 511响应于在SL/SLB线516、517上呈现给TCAM单元的搜索输入而通过与搜索输入不匹配的TCAM单元中的电压保持器536连续放电。当ML 511放电时,TCAM单元阵列的每个电压保持器536变为亚阈值区域,并且ML 511上的电压变化(ΔVML)以对数标度稍微降低(连同搜索输入的字长)。然而,由于电压保持器536,ML 511保持足够的电压摆动以用于感测超过0.1V。因此,与不匹配相比,TCAM单元中的匹配使ML 511更慢地放电,并且ML 511在匹配情况下也保持在预充电电平,其持续时间比不匹配情况更长。
[0054] 在图5的示例性SHE-MRAM设备中采用六个晶体管来实现单独的读取路径和写入路径。因此,对于可比较的四晶体管STT-MRAM设备,可以假设更大的结构占用面积。然而,SHE-MRAM设备中的读取控制晶体管531、532对应地是较小的,并且图5中的SOT MTJ结构具有比STT MTJ结构相对更小的占用面积。因此,即使在SHE-MRAM设备中可以采用附加的晶体管结构来实现单独的读取路径和写入路径,六晶体管SHE-MRAM也在尺寸方面与四晶体管STT-MRAM结构相当,具有以上针对单独读取/写入路径描述的附加优点、以及增强的性能和增强的热稳定性。
[0055] 如上所述,实现示例性增强TCAM单元结构的电路500采用两个自旋轨道转矩(SOT)磁隧道结(MTJ)元件与下面自旋霍尔效应(SHE)层来形成两个SHE-MRAM结构。第一自旋轨道转矩(SOT)磁隧道结(MTJ)元件542具有耦接到由第一搜索线517控制的第一搜索控制晶体管531的钉扎层。第一SOT MTJ元件542具有包括SHM 544的自旋霍尔效应(SHE)层。第二SOTMTJ元件543具有耦接到由第二搜索线516控制的第二搜索控制晶体管532的钉扎层。第二SOT MTJ元件543也具有包括SHM 545的SHE层。第一搜索控制晶体管531和第二搜索控制晶体管532可以称为读取控制晶体管。
[0056] SHM 544以第一配置耦接到补充写入输入512、513(BL,BLB)。如本文所用,第一配置指的是补充写入输入512、513(BL,BLB)和SHM 544之间的连接的特定布置和集合。补充的写入输入512、513(BL,BLB)和SHM 544可能以不同的配置来布置和连接,这些不同配置仍然在本公开内容的权利要求的范围内。此外,在某些实施方案中,包括补充写入输入512、513(BL,BLB)和SHM 544的第一配置还可以包括附加部件,诸如被配置成控制何时将写入电流或电压施加到SHM 544部件的写入控制晶体管533。该第一配置根据关于补充写入输入512、513(BL,BLB)的第一电压极性耦接对应的SHE层。在该示例中,写入控制晶体管533将补充写入输入512、513施加以选定配置的SHM 544,以便根据期望的电流方向跨SHM 544建立电压。
补充的写入输入512、513在对SHM 544的写入操作期间携带逻辑上补偿的信号电平。逻辑补充的信号电平各自具有对应的电压,该电压表示相反逻辑状态,诸如在其他逻辑表示中的“0”和“1”。线518、520和522还通过写入控制晶体管533将写入输入512、513耦接到SHM 544。
写入控制晶体管533由第一写入控制线514(WL1)控制。
[0057] SHM 545以第二配置耦接到补充写入输入512、513(BL,BLB),也称为第二配置。如本文所用,第二配置指的是补充写入输入512、513(BL,BLB)和SHM 545之间的连接的特定布置和集合。补充的写入输入512、513(BL,BLB)和SHM 545可能以不同的配置来布置和连接,这些不同配置仍然在本公开内容的权利要求的范围内。此外,在某些实施方案中,包括补充写入输入512、513(BL,BLB)和SHM 545的第二配置还可以包括附加部件,诸如被配置成控制何时将写入电流或电压施加到SHM 545的写入控制晶体管534。该第二配置根据关于补充写入输入512、513(BL,BLB)的第二电压极性耦接对应的SHE层。在该示例中,写入控制晶体管534将补充写入输入512、513施加以选定配置的SHM 545,以便根据期望的电流方向跨SHM 
545建立电压。补充的写入输入512、513在对SHM 545的写入操作期间携带逻辑上补偿的信号电平。逻辑补充的信号电平各自具有对应的电压,该电压表示相反逻辑状态,诸如在其他逻辑表示中的“0”和“1”。线519、521和522还通过写入控制晶体管534将写入输入512、513耦接到SHM 545。写入控制晶体管534由第二写入控制线515(WL2)控制。
[0058] 在图6中详述了基于SHE-MRAM设备的TCAM电路500的操作。当以阵列部署时,许多基于SHE-MRAM的TCAM单元可以被布置成共享控制线,诸如如图3的示例中可见的搜索线(SL)和匹配线(ML)。在该配置中,TCAM单元阵列被排列成各种行和列。
[0059] 在TCAM的搜索/读取操作之前,可以将数据值写入TCAM中。写入控制晶体管533、534(M3,M4)控制通过对应SHM层544、545的电流以用于对MTJ元件542、543进行写入操作。在示例性写入操作中,WL线514、515(WL1/WL2)可以被单独启用,并且对应写入控制晶体管(M3,M4)处于“导通”状态。然后,BL线和BLB线之间存在的电压通过下面SHM材料引入对应电流,其可以改变对应MTJ元件的自由层的磁阻/磁化状态。MTJ元件542、543的磁阻状态可以处于并行或反并行状态。并行MTJ状态指示钉扎层和自由层具有相同的磁化状态。反并行MTJ状态指示钉扎层和自由层具有不同的磁化状态。因此,可以基于BL/BLB线之间的电流的方向或极性将逻辑“1”或“0”存储在MTJ元件中。在该示例中,逻辑“1”对应于并行MTJ状态,而逻辑“0”对应于反并行MTJ状态,但其他配置也是可能的。
[0060] Wl1被配置成控制写入控制晶体管533(M3)并将数据写入左侧MTJ结构中,其中数据基于BL/BLB线之间的电流。WL2被配置成基于BL/BLB线之间的电流来控制写入控制晶体管534(M4)并将数据写入右侧MTJ结构中。WL1与WL2取决于要写入的数据同时或以顺序方式启用,部分原因是共享BL/BLB线。上面的图5示出了对应真值表中的BL/BLB线的示例性写入值。
[0061] 取决于通过对应SHM层544、545的电流的方向或极性,SHE-MRAM结构540-541中的每一个的写入过程可以将逻辑“1”或“0”写入对应的SOT MTJ元件542、542。图6的表600示出了在SOT MTJ元件542、542中实现逻辑“1”或“0”的写入电压。对于第一写入情况(MTJ 542=0,MTJ543=1),控制电路可以应用BL=VDD,BLB=GND,同时应用WL1=WL2=VDD(即,M3/M4都导通)。因此,该第一写入情况写入MTJ542和MTJ 543两者。对于第二写入情况(MTJ 542=1,MTJ 543=0),控制电路可以应用BL=GND,BLB=VDD,同时仍然应用WL1=WL2=VDD。该第二写入情况也写入MTJ 542和MTJ 543两者。然而,对于第三情况(MTJ542=0,MTJ 543=0),控制电路需要顺序地写入SOT MTJ元件542、542。例如,控制电路可以应用BL=VDD,BLB=GND以首先将“0”写入MTJ542中,同时应用WL1=VDD,WL2=GND(即M3导通,M4截止)。然后,控制电路可以切换到应用BL=GND,BLB=VDD以将“0”写入MTJ543中,同时应用WL1=GND,WL2=VDD(即M3截止,M4导通)。
[0062] 在图6中,基于SHE-MRAM的TCAM单元提供两步搜索/读取操作,即预充电阶段和评估阶段。在预充电阶段中,读取控制晶体管(M1,M2)经由SL/SLB线来截止,并且匹配线(ML)511通过使用预充电控制信号(PC)以启用预充电晶体管530来充电到VDD。一旦被预充电,则禁用预充电晶体管530。然后,在评估阶段中,经由读取控制晶体管M1、M2激活MRAM单元540、
541,并且ML 511上的电压逐渐通过MRAM单元540、541下拉。MRAM单元540、541的被存储为MTJ元件542、543的磁阻状态(即磁化状态)的逻辑状态确定ML 511上的电压的放电率,从而指示逻辑值。例如,当在SL/SLB线上呈现的搜索数据与MTJ元件542、543中存储的数据相等时,则ML 511的放电相对较慢以使得ML 511保持在相对高的电压电平,从而表示指示匹配的逻辑“1”。当在SL/SLB线上呈现的搜索数据与MTJ元件542、543中存储的数据不相等时,则ML 511的放电相对较快以使得ML 511不会保持在相对较高的电压电平,从而表示指示不匹配的逻辑“0”。
[0063] 图6所示的表600进一步表示MTJ元件542、543中的存储数据、搜索线和匹配线之间的对应关系。MTJ元件542、543的磁阻状态可以表示“1”或“0”二态值。通过两个MTJ元件和相关控制晶体管/互连的结构实现三态(“X”值)。表600中示出了SL“搜索”值,其可以对应于这些磁阻状态。当表600的SL值呈现在TCAM阵列的搜索线(SL/SLB)上时,则可以在TCAM阵列的匹配线上指示输出。该输出指示对搜索线值的匹配或不匹配响应。
[0064] 控制电路(诸如离散控制逻辑、集成控制逻辑、处理设备、固件、软件、或者其他控制元件)可以用于控制图5中呈现的电路的操作。该控制电路可以与图5中的电路的一个或多个实例集成。例如,当使用图5中的电路来形成TCAM单元阵列时,则控制电路可以耦接到用于排列成行和列的TCAM单元的共享控制线。具体地,SL/SLB、WL1/WL2和BL/BLB线可以耦接到如图3所示的输入驱动器电路。匹配线(ML)可以耦接到感测放大器和另外的输出电路,以用于将数据匹配状态呈现给另外的电路或处理设备。当用于神经网络电路时,如图2所示,该TCAM阵列可以用于在TCAM阵列中找到输入数据的匹配时加速神经网络的操作并减小神经网络的功耗。
[0065] 在可以用作TCAM单元的另一示例性电路中,第一磁阻随机存取存储器(MRAM)结构包括在对应自由层处耦接到第一自旋霍尔金属(SHM)层的第一磁隧道结(MTJ)元件。该第一MTJ元件在对应钉扎层处耦接到由第一搜索线(SLB)控制的第一读取控制晶体管(M1)。第一SHM层包括耦接到由第一写入线(WL1)控制的第一写入控制晶体管(M3)的第一端子,以及耦接到位线(BL)的第二端子。第二MRAM结构包括在对应自由层处耦接到第二SHM层的第二MTJ元件。该第二MTJ元件在对应钉扎层处耦接到由第二搜索线(SL)控制的第二读取控制晶体管(M2)。第二SHM层包括耦接到由第二写入线(WL2)控制的第二写入控制晶体管(M4)的第一端子,以及耦接到位线(BL)的第二端子。该电路可以包括偏置晶体管(M5),该偏置晶体管(M5)被配置成向第一读取控制晶体管(M1)和第二读取控制晶体管(M2)提供偏置电压。当在具有多于一个共享ML的TCAM单元的阵列中使用时,该电路可以包括耦接在匹配线与偏置电压之间的电压保持器元件(M6),以及耦接到匹配线(ML)的预充电元件(M0)。
[0066] 图7呈现了上面讨论的电路(诸如图5的电路)的附加示例性操作。在图7中,在操作701-702中讨论写入过程700,而在操作703-705中讨论搜索或读取过程710。还针对图7的一些操作呈现了示例性详细操作以提供关于每个相关步骤的进一步细节。
[0067] 在写入过程700中,控制电路将数据写入TCAM单元的第一自旋轨道转矩(SOT)磁隧道结(MTJ)元件中。关于图5的元件,控制电路可以通过以下方式将数据写入(701)第一MRAM结构(540)中:至少启用第一写入控制晶体管533(M3)并在第一SHM 544的第一端子(520)与第一SHM 544的第二端子(522)之间呈现写入电压电平以建立通过第一SHM 544的电流,该电流根据数据改变第一MTJ元件542的磁化状态。控制电路可以通过以下方式将数据写入(702)第二MRAM结构(541)中:至少启用第二写入控制晶体管534(M4)并在第二SHM 545的第一端子(521)与第二SHM 545的第二端子(522)之间呈现写入电压电平以建立通过第二SHM 545的电流,该电流根据数据的补充版本改变第二MTJ元件543的磁化状态。写入电压被引入图5中的线BLB和BL(512,513)之间的电路。
[0068] 在读取过程710中,控制电路从TCAM单元读取。通常,许多TCAM单元被置于阵列配置中,并且读取操作并行地跨越许多TCAM单元。该读取操作通常被称为搜索操作。关于图5的元件,控制电路可以首先将匹配指示符线(即匹配线(ML)511)预充电(703)到预定电压。通过至少禁用第一读取控制晶体管531(M1)和第二读取控制晶体管532(M2),并且随后通过预充电元件530(M0)将ML 511带到预定电压来执行预充电。使用PC控制线527来控制预充电元件或晶体管530。
[0069] 在对ML 511预充电之后,通过针对先前存储在第一MRAM结构540和第二MRAM结构541中的数据评估输入数据,搜索或读取过程可以评估(704)TCAM单元内的数据匹配状态。
数据匹配状态指示根据传输到搜索线或读取线上的搜索数据或读取数据的TCAM单元评估结果。该数据匹配状态可以指示二态匹配、二态不匹配、三态匹配、三态不匹配、或指示存储在TCAM单元中的数据如何与搜索数据进行比较的其他结果。当补充搜索数据被呈现在第一搜索线517(SLB)和第二搜索线516(SL)上时,通过至少启用第一读取控制晶体管531(M1)和第二读取控制晶体管532(M2)来执行该评估,以响应性地输出(705)表示数据匹配状态的ML 
511上的所得电压。部分地由于电压保持器元件536(M6)允许M1和M2经由公共节点523从ML 
511吸收电流,因此当在搜索数据与存储在第一SOT MTJ 542和第二SOT MTJ 543中的数据之间确定匹配时,ML 511上的所得电压包括预定电压。当在搜索数据与存储在第一SOT MTJ 
542和第二SOT MTJ 543中的数据之间确定不匹配时,所得电压包括低于预定电压的电压电平。具体地,匹配状态将以比不匹配状态更慢的速率使ML 511放电,并且因此,匹配允许ML 
511上的预充电电压持续在比不匹配更长的指定阈值。
[0070] 如本文所讨论,基于SHE-MRAM设备的TCAM具有优于STT-MRAM TCAM的若干优点。例如,与基于STT-MRAM设备的TCAM相比,基于SHE-MRAM设备的TCAM通过采用更大的读取电流而具有更快的搜索。基于SHE-MRAM设备的TCAM对于数据保持失败是更加鲁棒性的,部分原因是具有由SOT-MRAM元件启用的单独读取/写入路径。与基于CMOS的TCAM相比,SOT-MRAM元件也能够实现更低的写入电流,同时仍保持接近零的静态功耗和紧凑的位单元尺寸。图5中详述的基于SHE-MRAM设备的TCAM电路的元件的制造区域开销也是有利的。例如,M1、M2晶体管可以小于基于STT或CMOS的TCAM中的晶体管,部分原因是M1、M2仅用于读取操作。即使在基于SHE-MRAM设备的TCAM中采用附加的两个写入控制晶体管(M3,M4),这些晶体管由于相对较低的SOT-MRAM写入电流也是相对较小的。
[0071] 因此,本文提出的SHE-MRAM配置可以通过增加热稳定性用更大读取电流来提高TCAM单元的读取速度,因为对应的写入开销由于高自旋极化效率而是不显著的。基于SHE-MRAM设备的TCAM可以成功地用于基于SOT-MRAM的人工神经网络引擎,诸如上面在图2中讨论的那些。
[0072] 图8示出了计算系统801,该计算系统表示其中可实现本文公开的各种操作架构、情况和过程的任何系统或系统集合。例如,计算系统801可以用于实现图1的元件的控制电路、图2的元件的控制部分、以及图2的FPU级、图3的控制电路360、图5的控制电路、以及本文讨论的其他电路。此外,计算系统801可以用于在存储到TCAM单元之前存储写数据,并在搜索过程完成之后存储搜索结果。在另一示例中,计算系统801可以将互连电路配置成建立TCAM单元的一个或多个阵列或者将TCAM单元连接到人工神经网络电路中。在又一些另外的示例中,计算系统801可以完全实现人工神经网络,诸如图2所示的人工神经网络,以便通过外部实现的增强TCAM单元结构来创建至少部分软件实现的人工神经网络。计算系统801可以实现对本文所讨论的任何TCAM单元操作的控制,无论是使用硬件还是软件部件或其任何组合来实现。
[0073] 计算系统801的示例包括但不限于计算机、智能电话、平板计算设备、笔记本计算机、台式计算机、混合计算机、机架服务器、web服务器、计算平台、云计算系统、分布式计算系统、软件限定联网系统和数据中心设备、以及任何其他类型的物理或虚拟机、和其他计算系统和设备、以及其任何变型或组合。
[0074] 计算系统801可以被实现为单个装置、系统或设备,或者可能以分布式方式实现为多个装置、系统或设备。计算系统801包括但不限于处理系统802、存储系统803、软件805、通信接口系统807和用户界面系统808。处理系统802与存储系统803、通信接口系统807和用户界面系统808可操作地耦接。
[0075] 处理系统802加载并执行来自存储系统803的软件805。软件805包括TCAM控制环境820,其表示相对于前面附图所讨论的过程。当由处理系统802执行以实现和增强TCAM操作或ANN操作时,软件805指示处理系统802如本文所述的那样操作以至少用于前述实施方式中讨论的各种过程、操作情况和序列。计算系统801可以任选地包括为简洁起见而未讨论的附加设备、特征或功能。
[0076] 仍然参考图8,处理系统802可以包括从存储系统803检索并执行软件805的微处理器和处理电路。处理系统802可以在单个处理设备中实现,但也可以跨多个处理设备、子系统或专用电路分布,其在执行程序指令以及执行本文讨论的操作时协作。处理系统802的示例包括通用中央处理单元、专用处理器和逻辑设备、以及任何其他类型的处理设备、其组合或变型。
[0077] 存储系统803可以包括可由处理系统802读取并且能够存储软件805以及能够任选地存储TCAM输入/输出值810的任何计算机可读存储介质。存储系统803可以包括以用于存储信息(诸如计算机可读指令、数据结构、程序模或其他数据)的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。存储介质的示例包括随机存取存储器、只读存储器、磁盘、光盘、闪存存储器、虚拟存储器和非虚拟存储器、磁性卡带、磁带、磁盘存储装置或其他磁存储设备、电阻存储设备、磁随机存取存储器设备、相变存储器设备、或任何其他合适的非暂态存储介质。
[0078] 除了计算机可读存储介质之外,在一些实施方式中,存储系统803还可以包括计算机可读通信介质,通过该计算机可读通信介质可以内部或外部地传送至少一些软件805。存储系统803可以被实现为单个存储设备,但也可以跨相对于彼此共处或分布的多个存储设备或子系统实现。存储系统803可以包括能够与处理系统802或可能的其他系统通信的附加元件,诸如控制器
[0079] 软件805可能以程序指令实现,并且除了其他功能之外,在由处理系统802执行时,指示处理系统802如相对于本文所示的各种操作情况、序列和过程所描述的那样操作。例如,软件805可以包括用于控制增强TCAM电路并与增强TCAM电路交接以及其他操作的程序指令。
[0080] 具体地,程序指令可以包括协作或以其他方式交互以执行本文描述的各种过程和操作情况的各种部件或模块。各种部件或模块可以以体现在编译或解释的指令中,或者体现在指令的某种其他变型或组合中。各种部件或模块可能以同步或异步方式、串行或并行、在单线程环境或多线程中、或根据任何其他合适的执行范例、变型或其组合来执行。除了或包括TCAM控制环境820,软件805可以包括附加过程、程序或部件,诸如操作系统软件或其他应用软件。软件805还可以包括可由处理系统802执行的固件或某种其他形式的机器可读处理指令。
[0081] 通常,软件805在被加载到处理系统802中并被执行时可以将合适的装置、系统或设备(其由计算系统801表示)整体从通用计算系统转换成被定制以便于控制增强TCAM电路并与其交接的专用计算系统。实际上,存储系统803上的编码软件805可以变换存储系统803的物理结构。物理结构的特定变换可以取决于本说明书的不同实施方式中的各种因素。此类因素的示例可以包括但不限于用于实现存储系统803的存储介质的技术、以及计算机存储介质被表征为主存储或二级存储、以及其他因素。
[0082] 例如,如果计算机可读存储介质被实现为基于半导体的存储器,则软件805可以在程序指令在其中编码时变换半导体存储器的物理状态,诸如通过变换构成半导体存储器的晶体管、电容器或其他分立电路元件的状态。相对于磁介质或光学介质可能发生类似的变换。在不脱离本说明书的范围的情况下,物理介质的其他变换是可能的,其中提供前述示例仅是为了便于本讨论。
[0083] TCAM控制环境820包括一个或多个软件元件,诸如OS 821和应用程序822。这些元件可以描述计算系统801的TCAM阵列、TCAM单元、控制系统、人工神经网络或外部系统的元件可以与其交接或交互的部分。例如,OS 821可以提供在其上执行应用程序822并允许增强的TCAM操作和控制的软件平台。
[0084] 在一个示例中,TCAM控制环境820包括TCAM控制823。TCAM控制823可以包括TCAM读取/写入(R/W)服务824和GPU TCAM服务825。TCAM R/W服务824可以控制在对应的写入控制线和写入数据线上(诸如
[0085] 图5中的WL1/WL2和BL/BLB)将数据写入TCAM单元或阵列中。TCAMR/W服务824可以按照正确的排序控制写入控制晶体管的启用/禁用以将数据正确地写入TCAM单元和TCAM阵列中。TCAM R/W服务824还可以执行搜索或读取操作。TCAM R/W服务824可以诸如图5中的PC、BIAS和SL/SLB线来控制搜索对于先前写入TCAM单元或TCAM阵列中的数据的匹配。TCAM R/W服务824可以读取在匹配线(ML)上呈现的结果。在一些示例中,TCAM R/W服务824可以实现输出编码器/解码器或多路复用器逻辑,以将离散搜索结果值组装成位向量或处理由TCAM产生的多个搜索匹配输出。TCAM R/W服务824可以通过通信接口807将所得搜索匹配/不匹配指示传输到一个或多个其他系统,或者通过用户界面系统808向一个或多个用户呈现所得搜索匹配/不匹配指示。
[0086] 当在GPU实现的ANN或CNN中采用TCAM结构时,GPU TCAM服务825可以包括控制功能。GPU TCAM服务825可以向基于GPU或GPGPU的ANN呈现输入。这些输入可以作为输入搜索数据同时呈现给TCAM结构。GPU TCAM服务825可以基于由相关联的ANN/CNN确定的频繁结果来控制何时将数据写入包括TCAM的联合存储器。当使用输入数据来遇到TCAM命中时,GPU TCAM服务825可以控制GPU/FPU流水线中的流水线级的启用或禁用。GPU TCAM服务825可以实现输出电路,诸如多路复用电路,以基于使用输入数据遇到的TCAM命中在由FPU级或TCAM结构呈现的结果中进行选择。
[0087] 通信接口系统807可以包括通信连接和设备,其允许通过通信网络(未示出)与其他计算系统(未示出)通信。通信接口系统807还可以与硬件实现的ANN的部分通信,诸如与ANN的层、或TCAM结构和电路通信。一起允许系统间通信的连接和设备的示例可以包括NVM存储器接口、网络接口卡、天线、功率放大器、RF电路、收发器和其他通信电路。连接和设备可以通过通信介质(诸如金属、玻璃、空气或任何其他合适的通信介质)进行通信以与其他计算系统或系统网络交换通信或数据。
[0088] 用户界面系统808是任选的,并且可以包括键盘鼠标、语音输入设备、触摸输入设备以用于接收来自用户的输入。输出设备(诸如显示器、扬声器、web接口、终端接口和其他类型的输出设备)也可以包括在用户界面系统808中。用户界面系统808可以通过数据接口或网络接口(诸如通信接口系统807)提供输出和接收输入。用户界面系统808还可以包括能够由处理系统802执行的相关用户界面软件以支持上面讨论的各种用户输入和输出设备。单独地或相互结合以及与其他硬件和软件元件结合,用户界面软件和用户界面设备可以支持图形用户界面自然用户界面、或任何其他类型的用户界面。
[0089] 计算系统801与其他计算系统(未示出)之间的通信可以通过一个或多个通信网络并且根据各种通信协议、协议的组合或其变型而发生。示例包括内联网、互联网、因特网、局域网、广域网、无线网络、有线网络、虚拟网络、软件定义网络、数据中心总线、计算背板、或任何其他类型的网络、网络组合或其变型。上述通信网络和协议是众所周知的并且这里不需要详细讨论。然而,可使用的一些通信协议包括但不限于因特网协议(IP、IPv4、IPv6等)、传输控制协议(TCP)和用户数据报协议(UDP)、以及任何其他合适的通信协议、变型或其组合。
[0090] 所包括的描述和附图描绘了具体实施方案以教导本领域技术人员如何制作和使用最佳模式。出于教导发明原理的目的,已经简化或省略了一些常规方面。本领域技术人员将理解落入本公开范围内的这些实施方案的变型。本领域技术人员还将理解,上述特征可能以各种方式组合以形成多个实施方案。因此,本发明不限于上述具体实施方案,而是仅由权利要求及其等同物限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈