WO2018112736A1 - 数据搜索系统及方法 - Google Patents

数据搜索系统及方法 Download PDF

Info

Publication number
WO2018112736A1
WO2018112736A1 PCT/CN2016/111011 CN2016111011W WO2018112736A1 WO 2018112736 A1 WO2018112736 A1 WO 2018112736A1 CN 2016111011 W CN2016111011 W CN 2016111011W WO 2018112736 A1 WO2018112736 A1 WO 2018112736A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
information data
array
stored
query information
Prior art date
Application number
PCT/CN2016/111011
Other languages
English (en)
French (fr)
Inventor
康晋锋
黄鹏
刘晓彦
刘力锋
Original Assignee
北京大学
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 北京大学 filed Critical 北京大学
Priority to PCT/CN2016/111011 priority Critical patent/WO2018112736A1/zh
Priority to US15/778,160 priority patent/US11145365B2/en
Publication of WO2018112736A1 publication Critical patent/WO2018112736A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0038Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • G11C15/046Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements using non-volatile storage elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0007Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/004Reading or sensing circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods

Definitions

  • the present invention relates to a semiconductor integrated circuit, and more particularly to a data search system and method.
  • the data stored in the storage medium is transferred to the processor and the specified data is matched and compared.
  • the performance of computer processors has been greatly improved, and data matching comparison can also be accelerated by an acceleration chip such as FGPA (Field Programmable Gate Array).
  • FGPA Field Programmable Gate Array
  • the speed of data transmission is slow due to bandwidth limitation. Therefore, the main bottleneck of current data search is data transmission.
  • the computational storage integration technology based on the cross-array of memristive devices has been rapidly developed. At present, it is possible to perform arbitrary logic operations on data stored at any position on the cross-array of the memristive device and store the calculation result at a specified position.
  • a data search system comprising:
  • a storage module comprising at least one storage unit, the storage unit comprising a memristive device cross array, the memristive device cross array for storing query information data and stored information data, and matching and comparing the two; a control module, And generating a command signal and a control signal, configured to control the storage module to complete storage and matching comparison of the query information data.
  • the query information data includes feature values of the query data or the query data
  • the stored information data includes feature values of the stored data or the stored data.
  • each of the memory cells is independent of each other and is calculated in parallel.
  • the memristive device cross array comprises at least one memristive unit, which may be a memristive device, or a memristive device and a bidirectional selection tube, or a Memristive device and one transistor.
  • the storage unit further includes:
  • a decoder configured to generate an address signal and an operation type signal according to the instruction signal generated by the control module, and output the address signal to the multi-way strobe, and output the operation type signal to the read/write unit;
  • a reading and writing unit generating an operation signal according to the operation type signal, and outputting to the multi-way gate, wherein the operation signal is a write signal, a read signal, and a logic operation signal; and outputting the query information data to the multi-way gate; Returning the operation result of the cross-array device cross-array output to the multi-way gate;
  • the multiplexer is configured to output the operation signal to a corresponding port of the memristive device cross array according to the address signal, and write the query information data into the memristive device cross array.
  • the data search system may further include a feature extraction module, configured to extract feature values of the query data.
  • a data search method for searching, in a cross array of at least one memristive device in a storage module, whether there is stored information data matching the query information data, including:
  • the stored information data is at least one, and the stored information data is listed in at least one column other than the column in which the query information data is located; and the stored data information in the cross-array of different memristive devices is not completely the same.
  • the query information data is stored in the complement array in the memristive device cross array.
  • step S4 is specifically:
  • the storage module can search for the stored information data that matches the query information data; if the operation result is 0, the storage module cannot search for The stored information data that matches the query information data, and the number of operations result is 1, that is, the number of stored information data that matches the query information data.
  • the data matching process and the data are stored under the control of the controller, all of which are completed in the cross-array of the memristive device, thereby greatly reducing the amount of data transmission, and simultaneously utilizing the parallel operation characteristics of the cross-array of the memristive device greatly Improve data search speed.
  • Figure 1 is a schematic illustration of a data search system in accordance with an embodiment of the present invention
  • FIG. 2 is a view schematically showing an internal composition structure of a memory cell of an embodiment of the present invention
  • FIG. 3 is a view schematically showing a data search method of an embodiment of the present invention.
  • FIG. 4 is a view schematically showing a data operation method of a cross-array of a memristive device according to an embodiment of the present invention
  • Fig. 5 is a view schematically showing the structure of a memristive unit in a cross array of memristive devices of an embodiment of the present invention.
  • an aspect of the embodiment of the present invention provides a data search system, including:
  • a storage module comprising at least one memory unit, the memory unit comprising a memristive device cross array, the memristive device cross array for storing query information data and stored information data, and matching and comparing the two; the query
  • the information data includes feature values of the query data or the query data; the stored information data includes feature values of the stored data or the stored data.
  • the control module generates a command signal and a control signal, and is used to control the storage module to complete storage and matching comparison of the query information data.
  • the data search system may further include a feature extraction module, configured to extract feature values of the query data.
  • each of the memory cells is independent of each other and is calculated in parallel.
  • the memristive device cross array includes at least one memristive unit, which may be a memristive device, or a memristive device and a bidirectional select transistor, or a memristive device and a transistor.
  • the storage unit further includes:
  • a decoder configured to generate an address signal and an operation type signal according to the instruction signal generated by the control module, and output the address signal to the multi-way strobe, and output the operation type signal to the read/write unit;
  • a reading and writing unit generating an operation signal according to the operation type signal, and outputting to the multi-way gate, wherein the operation signal is a write signal, a read signal, and a logic operation signal; and outputting the query information data to the multi-way gate; Returning the operation result of the cross-array device cross-array output to the multi-way gate;
  • the multiplexer is configured to output the operation signal to a corresponding port of the memristive device cross array according to the address signal, and write the query information data into the memristive device cross array.
  • a data search method is further provided for searching, in a cross array of at least one memristive device in the storage module, whether there is stored information data that matches the query information data, including:
  • the stored information data is at least one, and the stored information data is listed in at least one column other than the column in which the query information data is located; and the stored data information in the cross-array of different memristive devices is not completely the same.
  • the step S4 is specifically:
  • the stored information data that matches the query information data can be searched in the storage module; if the operation result is 0, the save The stored information data that matches the query information data cannot be searched in the storage module, and the number of the operation result is 1, that is, the number of stored information data that matches the query information data.
  • FIG. 1 is a schematic diagram showing a data search system according to an embodiment of the present invention.
  • the data search system includes a storage module, a control module, and a feature extraction module
  • the storage module includes at least one storage unit.
  • the memory unit includes a meristor cross-array for storing query information data and stored information data, and matching and comparing the two;
  • the control module generates a command signal and a control signal, And controlling the storage module to complete storage and matching comparison of the query information data;
  • the feature extraction module is configured to extract feature values of the query data.
  • the feature extraction module obtains the feature value of the query data by performing feature extraction on the query data input from the outside world.
  • the query data or the query data feature value that is, the query information data
  • the query data or the query data feature value is stored in the memory module's crossover array of memristive devices under the control of the control module.
  • the stored information data that is, the stored value of the stored data or the stored data and the search information and the matching of the query information data are compared, thereby determining whether the storage module has the stored data matching the query information data.
  • Information data The number of data units in the storage system provided by the present invention can be determined depending on actual needs and manufacturing capabilities. Since each computing unit is independent of data units, data search can be performed simultaneously, achieving high parallelism and improved data search. Speed and efficiency of the cable.
  • FIG. 2 is a schematic diagram showing the internal composition of a memory cell according to an embodiment of the present invention.
  • the memory cell includes a memristive device cross array, a read/write unit, a decoder, and a multi-way gate.
  • the control module in the storage system outputs a command signal to the decoder, and the decoder generates an address signal and an operation type signal according to the command signal, and outputs the address signal to the multi-way strobe, and outputs the operation type signal to the read/write unit.
  • the reading and writing unit generates an operation signal according to the operation type signal, and outputs the signal to the multiplexer, the operation signal is a write signal, a read signal, and a logic operation signal; and the query information data is output to the multi-way strobe; And the result of the operation of returning the memristive device cross-array output to the multi-way gate.
  • the multiplexed signal outputs the operation signal to a corresponding port of the memristive device cross array according to the address signal, and writes the query information data to the memristive device cross array.
  • control module generates a control signal output to each component structure inside the storage unit, thereby implementing control of the storage unit by the control module.
  • FIG. 3 is a schematic diagram showing a data search method according to an embodiment of the present invention. As shown in FIG. 3, the method includes the following steps:
  • the query information is subjected to feature extraction of the feature value of the query data or directly, the query data, that is, the query information data, is stored in a column of the memristive device cross array by the read/write unit under the guidance of the decoder, and the query information is performed.
  • the data is stored in the form of a complement.
  • the stored information data is at least one, and the stored information data is listed in at least one column other than the column in which the query information data is located; and the stored data information in the cross-array of different memristive devices is not completely the same.
  • the storage module has stored information data that matches the query information data; if the operation result is 0, the storage module does not have the query information.
  • the data matches the stored information data, and the number of operation results is 1, that is, the number of stored information data that matches the query information data.
  • FIG. 4 is a schematic diagram showing a data operation method of a cross-array of a memristive device according to an embodiment of the present invention.
  • a cross-array of a memristive device is composed of a word line, a bit line, and a memory between a word line and a bit line.
  • the resistance unit is composed of a fixed resistor at one end of the word line and the bit line for logic calculation.
  • the stored information data A and other stored information data are stored in a plurality of columns of a memristive device cross array.
  • the query information data Q is written in the complement form to the column of the unreserved data in the cross-arrake of the memristive device by the read/write unit under the guidance of the decoder.
  • the circuit control can ensure that each of the cross arrays does not have all the memory cells have been written to the stored data.
  • Each bit of the stored information data is then XORed with the query information data.
  • the results of the operation are stored directly in multiple columns of un-stored data in the other columns of the memristive device cross-array.
  • each bit of data of the result of the calculation is subjected to an AND operation, and the result obtained by the operation is stored in the memrist unit which is not stored in any of the same columns stored in the operation result, that is, the Y unit.
  • the state of the Y unit can be read to know the matching result. If the query information data Q and the stored information data A are completely matched, each bit in the first step is 1 and the data stored in the Y unit is also If 1, the currently stored data A exactly matches the query information data Q.
  • the data of one bit must be 0 in the first calculation result, and the data stored in the Y unit is also 0, then the currently stored information data A is not Matches the query information data Q.
  • the other stored data in the crossover array of the same memristive device and the stored data in the cross array of the other memristive devices are operated in an operation to obtain the data stored in the Y unit. If the data in the Y unit exists as 1, the stored module has stored information data that matches the query information data, indicating that the query information can search for the stored information data that matches the storage module.
  • the number of 1 in the Y unit is the number of the storage module matching the query information data; if the data stored in the Y unit is 0, the storage module has no stored information data matching the query information data. , indicating that the query information cannot search for the stored information data that matches the storage module.
  • each storage unit in the storage module is independent of each other, which can realize parallel computing and improve search efficiency.
  • FIG. 5 is a view schematically showing the structure of a memristive unit in a cross-array of a memristive device according to an embodiment of the present invention, which may be a 1T1R, 1S1R and 1R structure, wherein T represents a transistor, R represents a memristive device, and may be an oxide.
  • the resistive device RRAM is based on a metal ion redox-based resistive device CBRAM, a phase change memory, a magnetoresistive memory MRAM, and the like, which can perform logic operations.
  • S represents a bidirectional selection tube with a bidirectional strobe function.

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种数据搜索系统及方法,用于搜索存储模块中是否有与查询信息数据匹配的已存储信息数据。所述数据搜索系统包括存储模块、控制模块、特征提取模块,所述存储模块包括至少一个存储单元,所述存储单元包括忆阻器件交叉阵列、读写单元、译码器和多路选通器,所述特征模块用于提取查询数据的特征值。所述数据搜索方法中,数据的匹配对比过程和数据存储在控制模块的控制下均在忆阻器件交叉阵列中完成,因此极大地减少了数据传输量,同时利用忆阻器件交叉阵列的并行运算特点极大地提高了数据搜索速度。

Description

数据搜索系统及方法 技术领域
本发明涉及半导体集成电路,特别是涉及一种数据搜索系统及方法。
背景技术
随着信息技术的高速发展,当前信息处理中的数据量呈爆炸式增长。目前不管是个人电脑上还是数据中心的存储介质上存在大量媒体数据,例如文本、幻灯片文件、图像和声音等。如何找到用户指定的数据,随着数据量的增加变得越来越困难。如何高效快速地找到用户指定的数据信息,提高工作效率变得非常迫切。
传统计算机搜索过程中是把存储在存储介质中的数据传输到处理器中和指定数据进行匹配对比。在过去的10年内,计算机处理器的性能得到了极大提升,此外数据匹配对比也可以采用FGPA(现场可编程门阵列)等的加速芯片进行加速。但其数据传输的速度由于带宽限制而发展缓慢,因此当前制约数据搜索的主要瓶颈在于数据传输。近年来基于忆阻器件交叉阵列的计算存储一体化技术迅速发展,目前已经可以对存储在忆阻器件交叉阵列上任意位置的数据进行任意的逻辑运算并且把计算结果存储在指定的位置上。
发明内容
本发明的一方面,提供了一种数据搜索系统,包括:
存储模块,包括至少一个存储单元,所述存储单元包括忆阻器件交叉阵列,所述忆阻器件交叉阵列用于存储查询信息数据和已存储信息数据,以及对两者进行匹配对比;控制模块,,产生指令信号和控制信号,用于控制所述存储模块完成查询信息数据的存储和匹配对比。
优选地,所述查询信息数据包括查询数据或查询数据的特征值;所述已存储信息数据包括已存储数据或已存储数据的特征值。
优选地,每一个存储单元之间互相独立,并行计算。
优选地,所述忆阻器件交叉阵列包含至少一个忆阻单元,所述忆阻单元可以为一个忆阻器件、或者一个忆阻器件和一个双向选择管、或者一个 忆阻器件和一个晶体管。
优选地,所述存储单元还包括:
译码器,用于根据所述控制模块产生的指令信号产生地址信号和操作类型信号,并把地址信号输出至多路选通器,把操作类型信号输出至读写单元;
读写单元,根据所述操作类型信号,产生操作信号,并输出至多路选通器,所述操作信号为写信号、读信号和逻辑运算信号;将查询信息数据输出至多路选通器;以及返回忆阻器件交叉阵列输出至多路选通器的与操作结果;
多路选通器,用于根据所述地址信号,将所述操作信号输出至忆阻器件交叉阵列的对应端口,将所述查询信息数据写入忆阻器件交叉阵列。
优选地,所述数据搜索系统还可以包括特征提取模块,用于提取所述查询数据的特征值。
本发明的另一方面,还提供了一种数据搜索方法,用于搜索存储模块中的至少一个忆阻器件交叉阵列中,是否有与查询信息数据匹配的已存储信息数据,包括:
S1、将查询信息数据存储在一个忆阻器件交叉阵列中的一列中;
S2、将查询信息数据和已存储信息数据的每一位进行异或运算,并将运算结果存储在同一忆阻器件交叉阵列的查询信息数据及已存储信息数据所在列之外的至少一列中;
S3、对运算结果的每一位进行与操作,并将与操作结果存储在与所述运算结果存储的同列的任一个未存储数据的忆阻单元中;
S4、对其他忆阻器件交叉阵列重复步骤S1至S3,得到至少一个与操作结果,根据与操作结果判断数据搜索结果;
优选地,所述已存储信息数据至少为一个,已存储信息数据所在列为查询信息数据所在列之外的至少一列中;且不同忆阻器件交叉阵列中的已存储数据信息不完全相同。
优选地,所述步骤S1中,将查询信息数据以补码形式存储在忆阻器件交叉阵列中。
优选地,所述步骤S4具体为:
若所述与操作结果存在为1的情况,则所述存储模块能搜索到与查询信息数据匹配的已存储信息数据;若所述与操作结果都为0,则所述存储模块中不能搜索到与查询信息数据匹配的已存储信息数据,且与操作结果为1的数目,即为与所述查询信息数据匹配的已存储信息数据的数目。
本发明中数据的匹配对比过程和数据存储在控制器的控制下,全部在忆阻器件交叉阵列中完成,因此极大地减少了数据传输量,同时利用忆阻器件交叉阵列的并行运算特点极大地提高数据搜索速度。
附图说明
图1示意性示出了本发明实施例的数据搜索系统;
图2示意性示出了本发明实施例的存储单元的内部组成结构;
图3示意性示出了本发明实施例的数据搜索方法;
图4示意性示出了本发明实施例的忆阻器件交叉阵列的数据运算方法;
图5示意性示出了本发明实施例的忆阻器件交叉阵列中的忆阻单元的结构。
具体实施方式
在大数据时代和忆阻器件交叉阵列存储计算一体化计算快速发展的背景下,为了提高数据搜索的效率,本发明实施例的一方面,提供了一种数据搜索系统,包括:
存储模块,包括至少一个存储单元,所述存储单元包括忆阻器件交叉阵列,所述忆阻器件交叉阵列用于存储查询信息数据和已存储信息数据,以及对两者进行匹配对比;所述查询信息数据包括查询数据或查询数据的特征值;所述已存储信息数据包括已存储数据或已存储数据的特征值。
控制模块,产生指令信号和控制信号,用于控制所述存储模块完成查询信息数据的存储和匹配对比。
具体地,所述数据搜索系统还可以包括特征提取模块,用于提取所述查询数据的特征值。
具体地,每一个存储单元之间互相独立,并行计算。
所述忆阻器件交叉阵列包含至少一个忆阻单元,所述忆阻单元可以为一个忆阻器件、或者一个忆阻器件和一个双向选择管、或者一个忆阻器件和一个晶体管。
具体地,所述存储单元还包括:
译码器,用于根据所述控制模块产生的指令信号产生地址信号和操作类型信号,并把地址信号输出至多路选通器,把操作类型信号输出至读写单元;
读写单元,根据所述操作类型信号,产生操作信号,并输出至多路选通器,所述操作信号为写信号、读信号和逻辑运算信号;将查询信息数据输出至多路选通器;以及返回忆阻器件交叉阵列输出至多路选通器的与操作结果;
多路选通器,用于根据所述地址信号,将所述操作信号输出至忆阻器件交叉阵列的对应端口,将所述查询信息数据写入忆阻器件交叉阵列。
本发明实施例的另一方面,还提供了一种数据搜索方法,用于搜索存储模块中的至少一个忆阻器件交叉阵列中,是否有与查询信息数据匹配的已存储信息数据,包括:
S1、将查询信息数据存储在一个忆阻器件交叉阵列中的一列中;
S2、将查询信息数据和已存储信息数据的每一位进行异或运算,并将运算结果存储在同一忆阻器件交叉阵列的查询信息数据及已存储信息数据所在列之外的至少一列中;
具体地,所述已存储信息数据至少为一个,已存储信息数据所在列为查询信息数据所在列之外的至少一列中;且不同忆阻器件交叉阵列中的已存储数据信息不完全相同。
S3、对运算结果的每一位进行与操作,并将与操作结果存储在与所述运算结果存储的同列的任一个未存储数据的忆阻单元中;
S4、对其他忆阻器件交叉阵列重复步骤S1至S3,得到至少一个与操作结果,根据与操作结果判断数据搜索结果;
所述步骤S4具体为:
若所述与操作结果存在为1的情况,则所述存储模块中能搜索到与查询信息数据匹配的已存储信息数据;若所述与操作结果都为0,则所述存 储模块中不能搜索到与查询信息数据匹配的已存储信息数据,且与操作结果为1的数目,即为与所述查询信息数据匹配的已存储信息数据的数目。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
需要说明的是,在附图或说明书描述中,相似或相同的部分都使用相同的图号。且在附图中,实施例的形状或是厚度可扩大,并以简化或是方便标示。再者,附图中未绘示或描述的元件或实现方式,为所属技术领域中普通技术人员所知的形式。另外,虽然本文可提供包含特定值的参数的示范,但应了解,参数无需确切等于相应的值,而是可在可接受的误差容限或设计约束内近似于相应的值。
以下将在上述实施例的基础上,给出本发明的最优实施例。需要说明的,该最优的实施例仅用于理解本发明,并不用于限制本发明的保护范围。并且,最优实施例中的特征,在无特别注明的情况下,均同时适用于方法实施例和装置实施例,在相同或不同实施例中出现的技术特征在不相互冲突的情况下可以组合使用。
图1示意性示出了本发明实施例的数据搜索系统,如图1所示,所述数据搜索系统包含存储模块、控制模块和特征提取模块,所述存储模块,包括至少一个存储单元,所述存储单元包括忆阻器件交叉阵列,所述忆阻器件交叉阵列用于存储查询信息数据和已存储信息数据,以及对两者进行匹配对比;所述控制模块,产生指令信号和控制信号,用于控制所述存储模块完成查询信息数据的存储和匹配对比;所述特征提取模块用于提取所述查询数据的特征值。
特征提取模块通过对外界输入的查询数据进行特征提取,得到查询数据的特征值。查询数据或查询数据特征值即查询信息数据,在控制模块的控制下存储至存储模块的忆阻器件交叉阵列中。在忆阻器件交叉阵列中,已存储信息数据即已存储数据或已存储数据的特征值和查询信息数据完成数据的搜索和匹配对比,从而判断存储模块中是否有与查询信息数据匹配的已存储信息数据。本发明提供存储系统的中的数据单元数目可以视实际需求和制造能力设计而定。由于每一个计算存储一体化的数据单元之间是独立的,因此数据搜索可以同时进行,实现高并行度,从而提高数据搜 索的速度和效率。
图2示意性示出了本发明实施例的存储单元的内部组成结构,如图2所示,存储单元包含忆阻器件交叉阵列、读写单元、译码器及多路选通器。存储系统中的控制模块输出指令信号至译码器,译码器根据指令信号产生地址信号和操作类型信号,并将地址信号输出至多路选通器,将操作类型信号输出至读写单元。所述读写单元,根据所述操作类型信号产生操作信号,并输出至多路选通器,所述操作信号为写信号、读信号和逻辑运算信号;将查询信息数据输出至多路选通器;以及返回忆阻器件交叉阵列输出至多路选通器的与操作结果。所述多路选通信号根据地址信号,将所述操作信号输出至忆阻器件交叉阵列的对应端口,将所述查询信息数据写入忆阻器件交叉阵列。
同时,控制模块产生控制信号输出至存储单元内部的各个组成结构,从而实现控制模块对存储单元的控制。
基于同一发明构思,本发明的实施例还提供了一种数据搜索方法,图3示意性示出了本发明实施例的数据搜索方法,如图3所示,包括以下步骤:
S1、将查询信息数据存储在一个忆阻器件交叉阵列中的一列中;
更具体地,查询信息经过特征提取得到的查询数据的特征值或者直接将查询数据,即查询信息数据通过读写单元在译码器的引导下存储到忆阻器件交叉阵列中的一列,查询信息数据的存储形式为补码形式。
S2、将查询信息数据和已存储信息数据的每一位进行异或运算,并将运算结果存储在同一忆阻器件交叉阵列的查询信息数据及已存储信息数据所在列之外的至少一列中;
更具体地,所述已存储信息数据至少为一个,已存储信息数据所在列为查询信息数据所在列之外的至少一列中;且不同忆阻器件交叉阵列中的已存储数据信息不完全相同。
S3、对运算结果的每一位进行与操作,并将与操作结果存储在与所述运算结果存储的同列中的任一个未存储数据的忆阻单元中。
S4、对其他忆阻器件交叉阵列重复步骤S1至S3,得到至少一个与操作结果,根据与操作结果判断数据搜索结果:
若所述与操作结果存在为1的情况,则所述存储模块中有与查询信息数据匹配的已存储信息数据;若所述与操作结果都为0,则所述存储模块中没有与查询信息数据匹配的已存储信息数据,且与操作结果为1的数目,即为与所述查询信息数据匹配的已存储信息数据的数目。
图4示意性示出了本发明实施例的忆阻器件交叉阵列的数据运算方法,如图4所示,忆阻器件交叉阵列由字线、位线以及位于字线和位线之间的忆阻单元组成,在字线和位线的一端都结有一个固定电阻,供逻辑计算使用。已存储信息数据A以及其他已存储信息数据存储在一个忆阻器件交叉阵列的多列中。查询信息数据Q通过读写单元在译码器的引导下以补码形式写入到该忆阻器件交叉阵列中未存放数据的一列。忆阻器件交叉阵列在进行数据存储的时候,通过电路控制可以实现保证每一块交叉阵列不会出现所有的存储单元都已经被写入存储数据的状态。
然后把已存储信息数据的每一位和查询信息数据进行异或运算。运算后的结果直接存储在忆阻器件交叉阵列的另外几列未存储数据的多列中。然后对计算的结果每一位数据进行与操作,将与操作得到的结果存储在与运算结果存储的同列中的任一个未存储数据的忆阻单元中即Y单元。读取Y单元的状态即可知道匹配对比结果,如果查询信息数据Q和已存储信息数据A之间完全匹配,则第一步计算后结果中每一位都为1,Y单元存储的数据也为1,则当前已存储数据A与查询信息数据Q完全匹配。如果查询信息数据Q和已存储信息数据A之间有一位不同,则第一步计算的结果中必有一位的数据为0,Y单元存储的数据也为0,则当前已存储信息数据A不与查询信息数据Q匹配。同时依次按照上述步骤对同一忆阻器件交叉阵列中的其他已存储数据、以及其他忆阻器件交叉阵列中的各个已存储数据进行运算操作,得到Y单元存储的数据。若Y单元中的数据存在为1的情况,则所述存储模块中有与查询信息数据匹配的已存储信息数据,表明所述查询信息能在存储模块中搜索到与之匹配的已存储信息数据,其中Y单元中1的数目即为所述存储模块中与查询信息数据匹配的数目;若Y单元存储的数据都为0,则所述存储模块中没有与查询信息数据匹配的已存储信息数据,表明所述查询信息不能在存储模块中搜索到与之匹配的已存储信息数据。
由于对比计算过程在忆阻器件交叉阵列中进行,且计算后的结果以及已存储数据信息和查询信息数据均存储在忆阻器件交叉阵列中,实现了计算和存储一体化,极大地减少了数据传输。同时存储模块中的每一个存储单元之间为互相独立的,可以实现并行计算,提高搜索效率。
图5示意性示出了本发明实施例的忆阻器件交叉阵列中忆阻单元的结构,该结构可以是1T1R,1S1R和1R结构,其中T表示晶体管,R表示忆阻器件,可以是氧化物的阻变器件RRAM,基于金属离子氧化还原的阻变器件CBRAM,相变存储器,磁阻存储器MRAM等可以进行逻辑运算的新型存储单元。S表示双向选择管,具有双向选通功能。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

  1. 一种数据搜索系统,其特征在于,包括:
    存储模块,包括至少一个存储单元,所述存储单元包括忆阻器件交叉阵列,所述忆阻器件交叉阵列用于存储查询信息数据和已存储信息数据,以及对两者进行匹配对比;
    控制模块,产生指令信号,用于控制所述存储模块完成查询信息数据的存储和匹配对比。
  2. 如权利要求1所述的数据搜索系统,其特征在于,所述查询信息数据包括查询数据或查询数据的特征值;所述已存储信息数据包括已存储数据或已存储数据的特征值。
  3. 如权利要求1所述的数据搜索系统,其特征在于,每一个存储单元之间互相独立,并行计算。
  4. 如权利要求1所述的数据搜索系统,其特征在于,所述忆阻器件交叉阵列包含至少一个忆阻单元,所述忆阻单元为一个忆阻器件、或者一个忆阻器件和一个双向选择管、或者一个忆阻器件和一个品体管。
  5. 如权利要求1所述的数据搜索系统,其特征在于,所述存储单元还包括:
    译码器,用于根据所述控制模块产生的指令信号产生地址信号和操作类型信号,并把地址信号输出至多路选通器,把操作类型信号输出至读写单元;
    读写单元,根据所述操作类型信号,产生操作信号,并输出至多路选通器,所述操作信号为写信号、读信号和逻辑运算信号;将查询信息数据输出至多路选通器;以及返回忆阻器件交叉阵列输出至多路选通器的与操作结果;
    多路选通器,用于根据所述地址信号,将所述操作信号输出至忆阻器件交叉阵列的对应端口,将所述查询信息数据写入忆阻器件交叉阵列。
  6. 如权利要求2所述的数据搜索系统,其特征在于,所述数据搜索系统还包括特征提取模块,用于提取所述查询数据的特征值。
  7. 一种数据搜索方法,用于搜索存储模块中的至少一个忆阻器件交 叉阵列中,是否有与查询信息数据匹配的已存储信息数据,其特征在于,包括:
    S1、将查询信息数据存储在一个忆阻器件交叉阵列中的一列中;
    S2、将查询信息数据和已存储信息数据的每一位进行异或运算,并将运算结果存储在同一忆阻器件交叉阵列的查询信息数据及已存储信息数据所在列之外的至少一列中;
    S3、对运算结果的每一位进行与操作,并将与操作结果存储在与所述运算结果存储的同列的任一个未存储数据的忆阻单元中;
    S4、对其他忆阻器件交叉阵列重复步骤S1至S3,得到至少一个与操作结果,根据与操作结果判断数据搜索结果。
  8. 如权利要求7所述的数据搜索方法,其特征在于,所述已存储信息数据至少为一个,已存储信息数据所在列为查询信息数据所在列之外的至少一列中;且不同忆阻器件交叉阵列中的已存储数据信息不完全相同。
  9. 如权利要求7所述的数据搜索方法,其特征在于,所述步骤S1中,将查询信息数据以补码形式存储在忆阻器件交叉阵列中。
  10. 如权利要求7所述的数据搜索方法,其特征在于,所述步骤S4具体为:
    若所述与操作结果存在为1的情况,则所述存储模块中能搜索到与查询信息数据匹配的已存储信息数据;若所述与操作结果都为0,则所述存储模块中不能搜索到与查询信息数据匹配的已存储信息数据,且与操作结果为1的数目,即为与所述查询信息数据匹配的已存储信息数据的数目。
PCT/CN2016/111011 2016-12-20 2016-12-20 数据搜索系统及方法 WO2018112736A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2016/111011 WO2018112736A1 (zh) 2016-12-20 2016-12-20 数据搜索系统及方法
US15/778,160 US11145365B2 (en) 2016-12-20 2016-12-20 Data search systems and methods

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/111011 WO2018112736A1 (zh) 2016-12-20 2016-12-20 数据搜索系统及方法

Publications (1)

Publication Number Publication Date
WO2018112736A1 true WO2018112736A1 (zh) 2018-06-28

Family

ID=62624566

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/111011 WO2018112736A1 (zh) 2016-12-20 2016-12-20 数据搜索系统及方法

Country Status (2)

Country Link
US (1) US11145365B2 (zh)
WO (1) WO2018112736A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11631808B2 (en) 2020-12-07 2023-04-18 Rockwell Collins, Inc. System and device including memristor material
US11462267B2 (en) * 2020-12-07 2022-10-04 Rockwell Collins, Inc. System and device including memristor material
US11456418B2 (en) 2020-09-10 2022-09-27 Rockwell Collins, Inc. System and device including memristor materials in parallel
US11469373B2 (en) 2020-09-10 2022-10-11 Rockwell Collins, Inc. System and device including memristor material

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102832343A (zh) * 2012-09-18 2012-12-19 北京大学 一种多阻态忆阻器
CN103811058A (zh) * 2014-01-28 2014-05-21 华中科技大学 基于忆阻的非易失性存储器、读写擦除操作方法及测试电路
WO2016099472A1 (en) * 2014-12-17 2016-06-23 Hewlett Packard Enterprise Development Lp Temperature gradients for controlling memristor switching
CN106128503A (zh) * 2016-06-20 2016-11-16 北京大学 基于忆阻器的运算存储阵列设备及其操作方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2864808Y (zh) 2005-12-23 2007-01-31 航天信息股份有限公司 椭圆曲线加密算法的协处理器
CN101610152B (zh) 2008-06-19 2012-02-01 华为技术有限公司 内容识别方法和系统以及内容管理客户端和服务器
KR101054815B1 (ko) 2008-10-31 2011-08-05 (주)올라웍스 다중 정밀도를 가진 멀티미디어 데이터의 검색 서비스 제공시스템 및 그 제공 방법
US8937829B2 (en) * 2012-12-02 2015-01-20 Khalifa University of Science, Technology & Research (KUSTAR) System and a method for designing a hybrid memory cell with memristor and complementary metal-oxide semiconductor
US9715655B2 (en) * 2013-12-18 2017-07-25 The United States Of America As Represented By The Secretary Of The Air Force Method and apparatus for performing close-loop programming of resistive memory devices in crossbar array based hardware circuits and systems
US9489618B2 (en) * 2014-05-27 2016-11-08 Purdue Research Foudation Electronic comparison systems
CN104051009B (zh) 2014-06-20 2017-02-15 中国科学院微电子研究所 一种电阻转变随机存储器rram的选通电路及选通方法
CN105353995A (zh) 2015-12-15 2016-02-24 上海新储集成电路有限公司 非挥发内容可寻址的存储方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102832343A (zh) * 2012-09-18 2012-12-19 北京大学 一种多阻态忆阻器
CN103811058A (zh) * 2014-01-28 2014-05-21 华中科技大学 基于忆阻的非易失性存储器、读写擦除操作方法及测试电路
WO2016099472A1 (en) * 2014-12-17 2016-06-23 Hewlett Packard Enterprise Development Lp Temperature gradients for controlling memristor switching
CN106128503A (zh) * 2016-06-20 2016-11-16 北京大学 基于忆阻器的运算存储阵列设备及其操作方法

Also Published As

Publication number Publication date
US20210225445A1 (en) 2021-07-22
US11145365B2 (en) 2021-10-12

Similar Documents

Publication Publication Date Title
WO2018112736A1 (zh) 数据搜索系统及方法
KR102446713B1 (ko) 전자 장치
US10431267B2 (en) Electronic device and method for driving the same
CN106844223B (zh) 数据搜索系统及方法
US10255974B2 (en) Electronic devices having semiconductor magnetic memory units
US10861540B2 (en) Electronic device with semiconductor memory having increased read margin
US9865345B2 (en) Electronic device including a semiconductor memory having memory arrays with variable resistance storage elements and a bias voltage generator arranged between the arrays
US10403345B2 (en) Electronic device
KR102016543B1 (ko) 반도체 장치, 프로세서, 시스템 및 반도체 장치의 동작 방법
KR102114875B1 (ko) 반도체 장치, 프로세서, 시스템 및 반도체 장치를 포함하는 테스트 시스템
US9378819B2 (en) Electronic device and method for operating the same
US9373394B2 (en) Reference column of semiconductor memory, and electronic device including the same
US9263114B2 (en) Electronic device
US11037653B2 (en) Memory devices performing repair operations and repair operation methods thereof
US9368180B2 (en) Variable resistance memory device and storage devices using the same
US9741456B2 (en) Electronic device
US20190238136A1 (en) Memory device including nitegrated deterministic pattern recognition circuitry
US11342043B2 (en) Electronic device for changing short-type defective memory cell to open-type defective memory cell by applying stress pulse
KR20170075202A (ko) 전자 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16924474

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16924474

Country of ref document: EP

Kind code of ref document: A1