一种具有搜索功能的MRAM芯片及搜索方法与流程

文档序号:12907195阅读:293来源:国知局
一种具有搜索功能的MRAM芯片及搜索方法与流程

本发明涉及mram芯片,尤其涉及一种具有搜索功能的mram芯片及搜索方法。



背景技术:

关于mram:

本发明的背景是mram技术的成熟。mram是一种新的内存和存储技术,可以像sram/dram一样快速随机读写,还可以像flash闪存一样在断电后永久保留数据。

它的经济性想当地好,单位容量占用的硅片面积比sram有很大的优势,比在此类芯片中经常使用的norflash也有优势,比嵌入式norflash的优势更大。它的性能也相当好,读写时延接近最好的sram,功耗则在各种内存和存储技术最好。而且mram不像dram以及flash那样与标准cmos半导体工艺不兼容。mram可以和逻辑电路集成到一个芯片中。

mram的原理:

mram的原理,是基于一个叫做磁性隧道结(magnetictunneljunction,mtj)的结构。它是由两层铁磁性材料夹着一层非常薄的非铁磁绝缘材料组成的。如图:

下面的一层铁磁材料是具有固定磁化方向的参考层,上面的铁磁材料是可变磁化方向的记忆层,它的磁化方向可以和固定磁化层同向或反向。由于量子物理的效应,电流可以穿过中间的隧道势垒层,但是mtj的电阻和可变磁化层的磁化方向有关。磁化方向可以和固定磁化层同向为低电阻态,如图1所示;磁化方向可以和固定磁化层反向为高电阻态,如图2所示。

读取mram的过程就是对mtj的电阻进行测量。使用比较新的stt-mram技术,写mram也比较简单:使用比读更强的电流穿过mtj进行写操作。一个自下而上的电流把可变磁化层置成与固定层同向,自上而下的电路把它置成反向。

mram的架构

每个mram的记忆单元由一个mtj和一个mos管组成,mos管的栅极(gate)连接到芯片的字线(wordline)负责接通或切断这个单元,mtj和mos管串接在芯片的位线(bitline)上,读写操作在位线上进行,如图3所示。

一个mram芯片由一个或多个mram存储单元的阵列组成,每个阵列有若干外部电路,如:

●行地址解码器:把收到的地址变成字线的选择

●列地址解码器:把收到的地址变成位线的选择

●读写控制器:控制位线上的读(测量)写(加电流)操作

●输入输出控制:和外部交换数据

在普通的内存中搜索存储内容,只能在软件的控制下,按地址顺序逐一读出内存中的内容进行比较,非常耗时。

内容寻址内存(contentaddressablememory,cam)指的是能够按存储内容搜索地址的内存,搜索速度比软件搜索快得多。这种内容寻址内存,在大数据的时代将有广泛的应用。

本人提出了一种具有内容寻址功能的mram芯片,只需要在每个阵列外增加一部分电路,以比较小的成本代价,实现了内容寻址功能。

然而,搜索与内容寻址之间有着重要的差别。搜索的对象是一个字符串,在内存中的储存位置不知道。搜索需要解决移位的问题。



技术实现要素:

有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种具有搜索功能的mram芯片,搜索速度比软件的控制下的搜索快得多;由于只需要在每个阵列外增加一部分电路,因而以较小的成本代价,解决了mram中的字符串搜索。

本发明还提供上述mram芯片的搜索方法。

本发明提供一种具有搜索功能的mram芯片,包括一个或多个由mram存储单元组成的阵列,每个阵列与控制电路连接,控制电路包括行地址解码器、列地址解码器、读写控制器以及输入输出控制,控制电路还包括循环移位寄存器、搜索字符串寄存器、比较器与搜索控制器,循环移位寄存器用于存储从阵列中读出的内容并循环移位,搜索字符串寄存器用于存储搜索字符串,比较器用于比较循环移位寄存器中的内容与搜索字符串寄存器中的内容,搜索控制器用于控制搜索操作。

进一步地,阵列每行存储m个字节,搜索字符串寄存器能够存储m个字节。

进一步地,搜索字符串为n个字节,n小于或等于m,循环移位寄存器至少能够存储m+n-1个字节。

本发明还提供一种上述具有搜索功能的mram芯片的搜索方法,包括以下步骤:

(1)从最低位开始,将搜索字符串重复存储到搜索字符串寄存器中;

(2)读出搜索区域的最低地址一行,存储到循环移位寄存器的n、n+1、……、m+n-1字节;

(3)循环比较搜索字符串寄存器与循环移位寄存器,如果存在匹配则输出搜索结果,搜索结束或执行步骤(4);如果不存在匹配,执行步骤(4);

(4)搜索区域的当前行如果是搜索区域的最高地址,则未搜索到搜索字符串,搜索结束;

(5)读出搜索区域的下一行,存储到循环移位寄存器的n、n+1、……、m+n-1 字节,执行步骤(3)。

进一步地,步骤(3)中循环比较搜索字符串寄存器与循环移位寄存器,如果存在匹配则输出搜索结果包括以下步骤:

(31)比较搜索字符串寄存器与循环移位寄存器的第1字节至第m字节,如果存在匹配则输出搜索结果,退出循环比较;

(32)左移次数加1,如果左移次数等于n,退出循环比较;

(33)循环寄存器左移一个字节,第m+n-1字节移入第1字节;执行步骤(31)。

进一步地,如果重复存储到搜索字符串寄存器中的任何一个完整的搜索字符串,与步骤(31)中循环移位寄存器的第1字节至第m字节中的对应字节相同,搜索字符串寄存器与循环移位寄存器存在匹配。

本发明还提供一种上述具有搜索功能的mram芯片的搜索方法,包括以下步骤:

(1)从最高位开始,将搜索字符串重复存储到搜索字符串寄存器中;

(2)读出搜索区域的最高地址的一行,存储到循环移位寄存器的1、2、……、m字节;

(3)循环比较搜索字符串寄存器与循环移位寄存器,如果存在匹配则输出搜索结果,搜索结束或执行步骤(4);如果不存在匹配,执行步骤(4);

(4)搜索区域的当前行如果是搜索区域的最低地址,则未搜索到搜索字符串,搜索结束;

(5)读出搜索区域的上一行,存储到循环移位寄存器的1、2、……、m字节,执行步骤(3)。

进一步地,步骤(3)中循环比较搜索字符串寄存器与循环移位寄存器,如果存在匹配则输出搜索结果包括以下步骤:

(31)比较搜索字符串寄存器与循环移位寄存器的第1字节至第m字节,如果存在匹配则输出结果;

(32)右移次数加1,如果右移次数等于n,退出循环比较;

(33)循环寄存器右移一个字节,第1字节移入第m+n-1字节;执行步骤(31)。

进一步地,如果重复存储到搜索字符串寄存器中的任何一个完整的搜索字符串,与步骤(31)中循环移位寄存器的第1字节至第m字节中的对应字节相同,搜索字符串寄存器与循环移位寄存器存在匹配。

与现有技术相比,本发明提供的具有搜索功能的mram芯片及搜索方法,具有以下有益效果:

(1)搜索速度比软件搜索快得多,一个时钟周期内就可以完成对每个阵列上的整行内容的搜索,速度可以比软件搜索快几十倍到一百倍;

(2)多个阵列的搜索操作是并行的,进一步提高搜索速度;

(3)由于实现电路比较简单,完成同样搜索的耗电大大降低,非常适用于对 待机功耗要求很严格的物联网和可穿戴电子设备等领域。

以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。

附图说明

图1是磁性隧道结的低电阻态示意图;

图2是磁性隧道结的高电阻态示意图;

图3是mram存储单元;

图4是现有技术中的mram芯片的结构示意图;

图5是本发明的一个实施例的mram芯片的结构示意图。

具体实施方式

如图5所示,本发明提供一种具有搜索功能的mram芯片,包括一个或多个由mram存储单元组成的阵列,每个阵列与控制电路连接,控制电路包括行地址解码器、列地址解码器、读写控制器以及输入输出控制,控制电路还包括循环移位寄存器、搜索字符串寄存器、比较器与搜索控制器,循环移位寄存器用于存储从阵列中读出的内容并循环移位,搜索字符串寄存器用于存储搜索字符串,比较器用于比较循环移位寄存器中的内容与搜索字符串寄存器中的内容,搜索控制器用于控制搜索操作。

阵列每行存储m个字节,搜索字符串寄存器能够存储m个字节。

搜索字符串为n个字节,n小于或等于m,循环移位寄存器至少能够存储m+n-1个字节。

本发明还提供一种上述具有搜索功能的mram芯片的搜索方法,包括以下步骤:

(1)从最低位开始,将搜索字符串重复存储到搜索字符串寄存器中;

(2)读出搜索区域的最低地址一行,存储到循环移位寄存器的n、n+1、……、m+n-1字节;

(3)循环比较搜索字符串寄存器与循环移位寄存器,如果存在匹配则输出搜索结果,搜索结束或执行步骤(4);如果不存在匹配,执行步骤(4);

(4)搜索区域的当前行如果是搜索区域的最高地址,则未搜索到搜索字符串,搜索结束;

(5)读出搜索区域的下一行,存储到循环移位寄存器的n、n+1、……、m+n-1字节,执行步骤(3)。

进一步地,步骤(3)中循环比较搜索字符串寄存器与循环移位寄存器,如果存在匹配则输出搜索结果包括以下步骤:

(31)比较搜索字符串寄存器与循环移位寄存器的第1字节至第m字节,如果 存在匹配则输出搜索结果,退出循环比较;

(32)左移次数加1,如果左移次数等于n,退出循环比较;

(33)循环寄存器左移一个字节,第m+n-1字节移入第1字节;执行步骤(21)。

进一步地,如果重复存储到搜索字符串寄存器中的任何一个完整的搜索字符串,与步骤(31)中循环移位寄存器的第1字节至第m字节中的对应字节相同,搜索字符串寄存器与循环移位寄存器存在匹配。

具体地,图5中的阵列每行存储10个字节,即m=10;搜索字符串寄存器能够存储10个字节。

搜索字符串为abcd,即n=4;将搜索字符串重复存储到搜索字符串寄存器中,abcdabcd,最高两个字节为空。

本发明还提供一种上述具有搜索功能的mram芯片的搜索方法,包括以下步骤:

(1)从最高位开始,将搜索字符串重复存储到搜索字符串寄存器中;

(2)读出搜索区域的最高地址的一行,存储到循环移位寄存器的1、2、……、m字节;

(3)循环比较搜索字符串寄存器与循环移位寄存器,如果存在匹配则输出搜索结果,搜索结束或执行步骤(4);如果不存在匹配,执行步骤(4);

(4)搜索区域的当前行如果是搜索区域的最低地址,则未搜索到搜索字符串,搜索结束;

(5)读出搜索区域的上一行,存储到循环移位寄存器的1、2、……、m字节,执行步骤(3)。

进一步地,步骤(3)中循环比较搜索字符串寄存器与循环移位寄存器,如果存在匹配则输出搜索结果包括以下步骤:

(31)比较搜索字符串寄存器与循环移位寄存器的第1字节至第m字节,如果存在匹配则输出结果;

(32)右移次数加1,如果右移次数等于n,退出循环比较;

(33)循环寄存器右移一个字节,第1字节移入第m+n-1字节;执行步骤(21)。

进一步地,如果重复存储到搜索字符串寄存器中的任何一个完整的搜索字符串,与步骤(31)中循环移位寄存器的第1字节至第m字节中的对应字节相同,搜索字符串寄存器与循环移位寄存器存在匹配。

以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1