具備信息檢索功能的存儲(chǔ)器及其利用方法、裝置、信息處理方法【專利摘要】CPU不擅長(zhǎng)對(duì)存儲(chǔ)器上的信息進(jìn)行搜索的處理,而擅長(zhǎng)對(duì)信息進(jìn)行搜索的相聯(lián)存儲(chǔ)器(CAM)難以構(gòu)建能夠應(yīng)對(duì)大數(shù)據(jù)的大容量的存儲(chǔ)器。通過(guò)在一般的存儲(chǔ)器中加入電路規(guī)模極小的1比特并行邏輯運(yùn)算器,從而使大容量存儲(chǔ)器變身為具有與相聯(lián)存儲(chǔ)器(CAM)匹敵的信息檢索能力的能動(dòng)型的存儲(chǔ)器,通過(guò)該存儲(chǔ)器,能夠?qū)崿F(xiàn)完全并行檢索的超高速內(nèi)存數(shù)據(jù)庫(kù)?!緦@f(shuō)明】具備信息檢索功能的存儲(chǔ)器及其利用方法、裝置、信息處理方法
技術(shù)領(lǐng)域:
[0001]本發(fā)明涉及一種具備信息檢索功能的存儲(chǔ)器及其利用方法、裝置、信息處理方法?!?br>背景技術(shù):
】[0002]進(jìn)入了能夠利用低價(jià)格且大容量的半導(dǎo)體存儲(chǔ)器的時(shí)代,內(nèi)存數(shù)據(jù)庫(kù)(In-MemoryDatabase)技術(shù)作為對(duì)大數(shù)據(jù)高速地進(jìn)行處理的技術(shù)而備受矚目。其中之一是數(shù)據(jù)挖掘等使大量的數(shù)據(jù)常駐于半導(dǎo)體存儲(chǔ)器(內(nèi)存數(shù)據(jù)庫(kù)),加速數(shù)據(jù)的訪問(wèn)而高速地搜索出目的信息的技術(shù)。但是,通過(guò)使信息數(shù)據(jù)從硬盤裝置常駐于半導(dǎo)體存儲(chǔ)器,是能夠期待I個(gè)數(shù)量級(jí)至2個(gè)數(shù)量級(jí)程度的加速的程度。[0003]在從本質(zhì)上思考大數(shù)據(jù)的靈活運(yùn)用的情況下,當(dāng)前的羅曼型計(jì)算機(jī)的課題需要事先予以明確。[0004]由于當(dāng)前的計(jì)算機(jī)是由CPU進(jìn)行所有信息處理的計(jì)算機(jī),因此CPU不得不全盤接管CPU所擅長(zhǎng)的處理以及不擅長(zhǎng)的處理。例如,對(duì)于CPU來(lái)說(shuō),存儲(chǔ)器上的數(shù)據(jù)仿佛是翻轉(zhuǎn)后的撲克牌那樣的存在,只能一張一張(I個(gè)地址、I個(gè)地址)地進(jìn)行排查(訪問(wèn))而對(duì)信息進(jìn)行搜索。在CPU進(jìn)行對(duì)存儲(chǔ)器上的信息依次進(jìn)行檢索而搜索出特定的信息這種信息處理的情況下,信息處理量極大,等待時(shí)間增多。這就是羅曼型計(jì)算機(jī)的宿命、即總線瓶頸。[0005]雖然利用硬件解決上述課題的是CPU的并行處理(分散處理),但是存在如下課題,即,周邊電路變得復(fù)雜,系統(tǒng)臃腫化。[0006]基于上述背景,當(dāng)前,為了減輕具有總線瓶頸的當(dāng)前的計(jì)算機(jī)的CPU的負(fù)擔(dān)、減少信息處理的次數(shù),不斷提出并利用各種應(yīng)用技術(shù)(軟件算法)。[0007]例如,作為為了搜索出信息而利用的代表性的算法,存在哈希表(Hashtable)、索引(index)、樹(shù)構(gòu)造、二分查找(binarysearch)、聚類(clustering),另外,如果考慮它們的組合等,則存在無(wú)數(shù)的算法。這些應(yīng)用技術(shù)(軟件算法)只是用于減輕CPU的負(fù)擔(dān)、減少信息處理的次數(shù)的方法、使背負(fù)著宿命而誕生的CPU靈活運(yùn)用的應(yīng)用技術(shù)。即,上述算法均是如下等方法,即,事先對(duì)在存儲(chǔ)器上何處存在怎樣的信息進(jìn)行整理,創(chuàng)建CPU容易查找信息的標(biāo)題及其路徑,以從小到大的順序秩序井然地對(duì)數(shù)據(jù)進(jìn)行排列。[0008]根據(jù)上述算法,雖然能夠消除檢索時(shí)CPU的負(fù)擔(dān),但是在前處理、后處理中不得不進(jìn)行復(fù)雜的信息處理,例如以數(shù)據(jù)的插入、刪除為代表,每當(dāng)追加或者刪除信息數(shù)據(jù)時(shí),需要數(shù)組的排序、順序的變更等用于上述算法的前處理、后處理的信息處理。[0009]另外,對(duì)于以上的軟件算法,需要根據(jù)數(shù)據(jù)庫(kù)的種類、規(guī)模選擇幾個(gè)適當(dāng)?shù)能浖惴ǘ鴺?gòu)建最優(yōu)化系統(tǒng),除了具有知識(shí)和經(jīng)驗(yàn)的專業(yè)人士以外不能勝任。[0010]由于當(dāng)前的計(jì)算機(jī)由CPU進(jìn)行所有的信息處理,因此雖然存在以上的宿命,但是如果改變思路,能夠使存儲(chǔ)器自身搜索出特定的信息,則以上的信息處理會(huì)完全改變。[0011]以往,相聯(lián)存儲(chǔ)器(CAM)作為消除以上課題的技術(shù)而存在。但是,相聯(lián)存儲(chǔ)器(CAM)存在如下課題,S卩,需要完全并行的比較電路,電路尺寸大型化,而且構(gòu)成比較電路的并行電路消耗大電流。因此,當(dāng)前相聯(lián)存儲(chǔ)器(CAM)不過(guò)是限定地利用于如通信路由器那樣超高速檢索不可或缺的特殊的領(lǐng)域。[0012]本發(fā)明就是鑒于上述情況而提出的,其目的在于實(shí)現(xiàn)具有如下新思路的存儲(chǔ)器,即,在一般的存儲(chǔ)器中僅加入極少量的電路,以與相聯(lián)存儲(chǔ)器(CAM)匹敵的速度實(shí)現(xiàn)大數(shù)據(jù)的檢索。[0013]為了實(shí)現(xiàn)該目的,本發(fā)明人進(jìn)行了各種發(fā)明。例如,由本發(fā)明人所作出的日本發(fā)明專利第4588114號(hào)具備信息篩選檢測(cè)功能的存儲(chǔ)器是擅長(zhǎng)模式匹配等邏輯與運(yùn)算的存儲(chǔ)器。另外PCT/JP2013/059260號(hào)具備集合運(yùn)算功能的存儲(chǔ)器是擴(kuò)大發(fā)展了具有以上信息篩選檢測(cè)功能的存儲(chǔ)器的概念,能夠自由地進(jìn)行邏輯與運(yùn)算、邏輯或運(yùn)算、邏輯非運(yùn)算等的存儲(chǔ)器。通過(guò)該參照,將該2份申請(qǐng)的公開(kāi)內(nèi)容作為整體而包含于本發(fā)明書的公開(kāi)內(nèi)容中。[0014]本發(fā)明的存儲(chǔ)器101能夠應(yīng)用于以上兩個(gè)在先發(fā)明。[0015]另外,日本特愿平10—232531號(hào)、帶運(yùn)算功能的存儲(chǔ)器是如圖所示按照模塊單位設(shè)置運(yùn)算電路、以匹配效率的提高為目的的存儲(chǔ)器。與在所有存儲(chǔ)器均分別具有運(yùn)算電路相比,雖然運(yùn)算電路的尺寸變小,但存在運(yùn)算效率變差、而且匹配的效率差、成本上的問(wèn)題。[0016]另外,其他專利文獻(xiàn)的具有運(yùn)算功能的存儲(chǔ)器也是同樣的,未發(fā)現(xiàn)如本發(fā)明那樣僅通過(guò)最小結(jié)構(gòu)的I組運(yùn)算功能對(duì)存儲(chǔ)器內(nèi)的數(shù)據(jù)并行地進(jìn)行信息處理的在先申請(qǐng)?!?br/>發(fā)明內(nèi)容】[0017]本發(fā)明從根本上消除由CPU進(jìn)行的信息處理的最大課題,S卩,信息檢索、也就是信息處理變得復(fù)雜、除專業(yè)人士以外不能勝任、而且CPU的負(fù)擔(dān)大、周邊電路也復(fù)雜化而消耗電力大的情況,實(shí)現(xiàn)具有如下信息檢索功能的存儲(chǔ)器,即,該信息檢索功能基于還能夠利用于大數(shù)據(jù)的、全新的信息處理的思路。[0018]具體地說(shuō),提供如下在以往的信息處理的概念中沒(méi)有的新概念的存儲(chǔ)器元件,SP,靈活運(yùn)用能夠進(jìn)行并行信息檢索的相聯(lián)存儲(chǔ)器(CAM)的思路,抑制相聯(lián)存儲(chǔ)器(CAM)的課題、即電路尺寸、消耗電力的增大,還能夠應(yīng)對(duì)大數(shù)據(jù)。[0019]為了解決上述課題,根據(jù)本發(fā)明的主要觀點(diǎn),提供以下方案。[0020]在技術(shù)方案I中,[0021]—種具有信息檢索功能的存儲(chǔ)器,其能夠進(jìn)行信息的讀取、寫入,該具有信息檢索功能的存儲(chǔ)器的特征在于,[0022](I)該存儲(chǔ)器作為I個(gè)字的比特寬度為η且N個(gè)字地址、S卩NXη比特的存儲(chǔ)單元構(gòu)造,[0023](2)在該存儲(chǔ)器整體中I組η個(gè)比特的邏輯運(yùn)算器具備如下功能,SP:[0024](3)將從所述N個(gè)字地址中反復(fù)選擇指定的所述I個(gè)字的比特寬度為η的存儲(chǔ)單元信息并行地輸入(代入)至所述I組η個(gè)比特的所述邏輯運(yùn)算器而進(jìn)行邏輯運(yùn)算;以及[0025](4)輸出所述邏輯運(yùn)算器的內(nèi)容。[0026]在技術(shù)方案2中,[0027]根據(jù)技術(shù)方案I所記載的具有信息檢索功能的存儲(chǔ)器,其特征在于,[0028]所述邏輯運(yùn)算器是如下結(jié)構(gòu),S卩,能夠?qū)崿F(xiàn)針對(duì)所述輸入(代入)的所述I個(gè)字的比特寬度為η的存儲(chǔ)器存儲(chǔ)單元信息彼此的每一比特的邏輯存儲(chǔ)、邏輯與、邏輯或、邏輯非、互斥邏輯及其任意的組合運(yùn)算。[0029]在技術(shù)方案3中,[0030]根據(jù)技術(shù)方案I所記載的具有信息檢索功能的存儲(chǔ)器,其特征在于,[0031]所述邏輯運(yùn)算器具備移位寄存器功能。[0032]在技術(shù)方案4中,[0033]根據(jù)技術(shù)方案I所記載的具有信息檢索功能的存儲(chǔ)器,其特征在于,[0034]通過(guò)所述邏輯存儲(chǔ)、邏輯與、邏輯或、邏輯非、互斥邏輯及其任意的組合運(yùn)算,從而進(jìn)行數(shù)據(jù)值的完全一致以及數(shù)據(jù)值的范圍檢索。[0035]在技術(shù)方案5中,[0036]根據(jù)技術(shù)方案I所記載的具有信息檢索功能的存儲(chǔ)器,其特征在于,[0037]通過(guò)所述邏輯存儲(chǔ)、邏輯與、邏輯或、邏輯非、互斥邏輯及其任意的組合運(yùn)算,從而進(jìn)行數(shù)據(jù)值的加減運(yùn)算。[0038]在技術(shù)方案6中,[0039]根據(jù)技術(shù)方案I所記載的具有信息檢索功能的存儲(chǔ)器,其特征在于,[0040]與CPU等其他種類的半導(dǎo)體器件一體化。[0041]在技術(shù)方案7中,[0042]根據(jù)技術(shù)方案I所記載的具有信息檢索功能的存儲(chǔ)器,其特征在于,[0043]安裝于FPGA。[0044]在技術(shù)方案8中,[0045]技術(shù)方案I所記載的具有信息檢索功能的存儲(chǔ)器的使用方法,其特征在于,[0046]構(gòu)成為如下數(shù)據(jù)庫(kù),S卩,將數(shù)據(jù)庫(kù)的記錄分配給所述I個(gè)字的比特寬度為η的某一列,將I條記錄的字段總比特?cái)?shù)設(shè)為所述字地址數(shù)N。[0047]在技術(shù)方案9中,[0048]技術(shù)方案I所記載的具有信息檢索功能的存儲(chǔ)器的使用方法,其特征在于,[0049]將所述具有信息檢索功能的存儲(chǔ)器以(I)或者(2)的連接進(jìn)行使用,[0050](I)串行、并行、或者串并行連接[0051](2)階層式連接。[0052]在技術(shù)方案10中,[0053]一種裝置,其中,[0054]包含權(quán)利要求1所記載的存儲(chǔ)器。[0055]在技術(shù)方案11中,[0056]一種信息處理方法,其特征在于,[0057]在存儲(chǔ)器內(nèi)部反復(fù)進(jìn)行存儲(chǔ)器存儲(chǔ)單元信息的I個(gè)比特彼此的信息的邏輯與、邏輯或、邏輯非、互斥邏輯、及其組合的邏輯運(yùn)算而得到規(guī)定的運(yùn)算結(jié)果。[0058]在技術(shù)方案12中,[0059]根據(jù)技術(shù)方案11所記載的信息處理方法,其特征在于,[0060]對(duì)所述I個(gè)比特彼此的信息并行地進(jìn)行所述邏輯運(yùn)算。【附圖說(shuō)明】[0061]圖1是一般存儲(chǔ)器的結(jié)構(gòu)圖。[0062]圖2是具有信息檢索功能的存儲(chǔ)器的結(jié)構(gòu)圖。[0063]圖3是由具有信息檢索功能的存儲(chǔ)器所進(jìn)行的文獻(xiàn)檢索的例子(實(shí)施例1)。[0064]圖4是由具有信息檢索功能的存儲(chǔ)器所進(jìn)行的完全一致數(shù)據(jù)的檢索的例子(實(shí)施例2)。[0065]圖5是由具有信息檢索功能的存儲(chǔ)器所進(jìn)行的范圍數(shù)據(jù)的檢索的例子(實(shí)施例3)。[0066]圖6是具有信息檢索功能的存儲(chǔ)器的串并行連接的例子(實(shí)施例4)。[0067]圖7是具有信息檢索功能的存儲(chǔ)器的階層化連接的例子(實(shí)施例5)?!揪唧w實(shí)施方式】[0068]下面,參照附圖,對(duì)本發(fā)明的一個(gè)實(shí)施方式進(jìn)行說(shuō)明。[0069]圖1是表示一個(gè)實(shí)施方式所涉及的一般存儲(chǔ)器的結(jié)構(gòu)圖。[0070]圖1的存儲(chǔ)器100省略了地址解碼器、數(shù)據(jù)總線等功能電路,該存儲(chǔ)器是能夠自由地對(duì)信息數(shù)據(jù)進(jìn)行寫入、讀取的結(jié)構(gòu),在該結(jié)構(gòu)中,具有I個(gè)字為η比特的寬度103、N個(gè)字地址104,通過(guò)由NXn比特的單元構(gòu)成的存儲(chǔ)單元102構(gòu)成,該存儲(chǔ)器通常通過(guò)地址解碼器等方法而能夠從外部對(duì)從I至N為止的字地址進(jìn)行選擇指定。[0071]當(dāng)前由CPU所實(shí)現(xiàn)的信息處理以如下方式進(jìn)行,S卩,按照存儲(chǔ)器100的數(shù)據(jù)寬度103為8比特、16比特、32比特等恒定的數(shù)據(jù)寬度,在信息數(shù)據(jù)的檢索的情況下由CPU針對(duì)賦予了地址數(shù)量為IM地址、IG地址等的存儲(chǔ)器的地址空間依次對(duì)地址進(jìn)行訪問(wèn),讀入數(shù)據(jù),依次進(jìn)行處理。[0072]由本發(fā)明的存儲(chǔ)器所進(jìn)行的信息處理是對(duì)以上的一般存儲(chǔ)器構(gòu)造、數(shù)據(jù)庫(kù)表格構(gòu)造的數(shù)據(jù)寬度和地址的概念的常識(shí)進(jìn)行逆向思維而得到的,另外假設(shè)以I比特單位的并行邏輯運(yùn)算為基礎(chǔ)。[0073]圖2是表示具有本實(shí)施方式的信息檢索功能的存儲(chǔ)器結(jié)構(gòu)的一個(gè)例子的圖。[0074]與圖1同樣,在圖2中省略地址解碼器、數(shù)據(jù)總線等功能電路,該存儲(chǔ)器101是能夠自由地對(duì)信息數(shù)據(jù)進(jìn)行寫入、讀取的結(jié)構(gòu),在該結(jié)構(gòu)中,具有I個(gè)字為η比特的寬度103、N個(gè)字地址104,通過(guò)由NXη比特的單元構(gòu)成的存儲(chǔ)單元102構(gòu)成,該存儲(chǔ)器1I能夠從外部對(duì)從I至N為止的字地址進(jìn)行選擇指定110。如果考慮為I個(gè)字為η比特的寬度103相當(dāng)于數(shù)據(jù)庫(kù)的記錄數(shù)量(η)、1條記錄縱向排列、字地址104的N相當(dāng)于I條記錄的字段的構(gòu)造,則容易理解。[0075]S卩,該存儲(chǔ)器是I條記錄為N比特、且η條記錄的數(shù)據(jù)表格。在該存儲(chǔ)器的行方向(在本圖中是橫向)上以字地址104被進(jìn)行選擇指定110的、與η比特的存儲(chǔ)單元102并行設(shè)置的邏輯運(yùn)算器105,是針對(duì)被選擇指定110的字地址104的每個(gè)存儲(chǔ)單元102比特而能夠進(jìn)行邏輯存儲(chǔ)116的電路,是能夠自由地對(duì)邏輯與112、邏輯或113、邏輯非(Ν0Τ)114、互斥邏輯116及其組合進(jìn)行指定的結(jié)構(gòu)。[0076]另外,為了輸出該邏輯運(yùn)算器105的運(yùn)算結(jié)果,而具有優(yōu)先級(jí)地址編碼器輸出電路等運(yùn)算結(jié)果輸出106功能。由于該存儲(chǔ)器的大半部分是存儲(chǔ)器單元本身,其僅極少一部分是邏輯運(yùn)算器105以及運(yùn)算結(jié)果輸出106功能,因此通過(guò)將這些功能加入一般存儲(chǔ)器的微小區(qū)域,從而能夠作為可利用于數(shù)據(jù)庫(kù)的大容量的存儲(chǔ)器。[0077]當(dāng)然,為了高速化,也可以使得能夠同時(shí)對(duì)多個(gè)字地址進(jìn)行選擇指定110而準(zhǔn)備多組邏輯運(yùn)算器105。[0078]下面,考慮由DRAM實(shí)現(xiàn)本發(fā)明的情況下的例子。當(dāng)前時(shí)刻的每個(gè)半導(dǎo)體芯片(die)的存儲(chǔ)器容量為8G比特左右。[0079]如果認(rèn)為是可忽略邏輯運(yùn)算器105、運(yùn)算結(jié)果輸出106等功能的程度的電路規(guī)模,則能夠?qū)崿F(xiàn)在字地址為IM情況下8K比特的字寬的本存儲(chǔ)器101、在字地址為8K的情況下IM比特的字寬的本存儲(chǔ)器101等縱橫任意的組合的存儲(chǔ)器101。該存儲(chǔ)器101在所有信息搜索、特別是大數(shù)據(jù)的檢索、數(shù)據(jù)挖掘、基因組解析等方面是有效的,利用幾個(gè)例子來(lái)說(shuō)明本存儲(chǔ)器的應(yīng)用例子。[0080]我們大家進(jìn)行日常信息檢索的例子是互聯(lián)網(wǎng)檢索,其概念是通過(guò)由關(guān)鍵詞進(jìn)行的信息的篩選而實(shí)現(xiàn)的。它是如下機(jī)制,即,通過(guò)賦予例如“信息處理”、“信息檢索”、“CPU”等關(guān)鍵詞,從而進(jìn)行篩選,搜索出適當(dāng)?shù)幕ヂ?lián)網(wǎng)站點(diǎn)。[0081]說(shuō)明將該存儲(chǔ)器利用于文獻(xiàn)檢索的情況下的實(shí)施例。[0082]實(shí)施例1[0083]圖3是由具有信息檢索功能的存儲(chǔ)器所進(jìn)行的文獻(xiàn)檢索的例子。[0084]在本例的情況下,將從I至N為止的字地址設(shè)為“信息處理”、“信息檢索”、“專利”、“CPU”等詞匯,使字寬為η的任意的縱向I列作為I條記錄而與I個(gè)文獻(xiàn)相對(duì)應(yīng)。另外,構(gòu)成I條記錄的字地址I至N相當(dāng)于字段。即,在I個(gè)文獻(xiàn)中,“信息處理”、“信息檢索”、“專利”、“CPU”等文字即便只有I個(gè),也將“I”寫入相對(duì)應(yīng)的存儲(chǔ)器單元(字段)(省略“O”,下同)。因此,在本例的情況下,N個(gè)詞匯、和η本文獻(xiàn)(η條記錄)作為數(shù)據(jù)庫(kù)而被登記。[0085]介紹從將這些存儲(chǔ)后的數(shù)據(jù)庫(kù)中搜索出特定的文獻(xiàn)的例子。[0086]假設(shè)數(shù)據(jù)庫(kù)的關(guān)鍵詞的登記字地址18為“信息處理”、字地址5為“信息檢索”、字地址24為“專利”、字地址10為“CPU”,在運(yùn)算式為(包含“信息處理”或者“信息檢索”中任意者的詞匯在內(nèi)的文獻(xiàn))X(不包含詞匯“專利”在內(nèi)的文獻(xiàn))X(包含詞匯“CPU”在內(nèi)的文獻(xiàn))的情況下進(jìn)行說(shuō)明。[0087]在圖3的下方示出以上的關(guān)鍵詞檢索的運(yùn)算過(guò)程。[0088]包含字地址18的“信息處理”和字地址5的“信息檢索”中任意者的(邏輯或(OR))的詞匯在內(nèi)的文獻(xiàn)的記錄是3、4、5、13、14、16、19、21、25。然后,字地址24為“專利”,不包含詞匯“專利”在內(nèi)的文獻(xiàn)為4、8.11、16、22、25,先前的運(yùn)算結(jié)果、即文獻(xiàn)記錄3、4、5、13、14、16、19、21、25和該邏輯非運(yùn)算114進(jìn)行邏輯與運(yùn)算后的結(jié)果、即邏輯與(AND)運(yùn)算的交集文獻(xiàn)為4、16、25。最后,通過(guò)對(duì)包含字地址10的“0?1/’在內(nèi)的文獻(xiàn)記錄3、7、9、12、15、16、22和先前的交集文獻(xiàn)進(jìn)行邏輯與(AND)運(yùn)算,從而最終交集文獻(xiàn)107為記錄16。[0089]通過(guò)以上的說(shuō)明可知,未進(jìn)行選擇指定110的字地址成為運(yùn)算可忽略(Don’tcare)的結(jié)果,具有與相聯(lián)存儲(chǔ)器(CAM)的3值存儲(chǔ)器相同的效果。即,文獻(xiàn)16是(包含“信息處理”或“信息檢索中任意者的詞匯在內(nèi)的文獻(xiàn))X(不包含詞匯“專利”在內(nèi)的文獻(xiàn))X(包含詞匯“CPU”在內(nèi)的文獻(xiàn))。[0090]將以上結(jié)果從優(yōu)先級(jí)地址編碼器輸出電路等的運(yùn)算結(jié)果輸出106中依次讀取即可。[0091]CPU如果對(duì)該存儲(chǔ)器101進(jìn)行字地址選擇指定110,進(jìn)行運(yùn)算指定111,則能夠從該存儲(chǔ)器中對(duì)目的信息進(jìn)行檢測(cè),而不搜遍所有存儲(chǔ)器空間的信息。[0092]以上的說(shuō)明是全文檢索的例子,但如果將記錄設(shè)為URL,則能夠利用于網(wǎng)絡(luò)檢索用的數(shù)據(jù)庫(kù)。[0093]以上的全文檢索全部是由I個(gè)比特構(gòu)成的數(shù)據(jù),但在下面的實(shí)施例中,說(shuō)明以值對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ)的情況下的信息檢索。[0094]實(shí)施例2[0095]圖4是由具有信息檢索功能的存儲(chǔ)器所進(jìn)行的完全一致數(shù)據(jù)的檢索的例子。[0096]例如,考慮將字地址10作為最高位比特(MSB)、將字地址17作為最低位比特(LSB)的8比特的數(shù)據(jù)分配給字段的情況。由于是8比特的數(shù)據(jù),因此能夠存儲(chǔ)256個(gè)數(shù)據(jù),通過(guò)適當(dāng)?shù)剡x擇從字地址10起至字地址17的8個(gè)字地址,從而能夠進(jìn)行從256個(gè)數(shù)據(jù)的完全一致至大小判別為止的任意的檢索。例如,在按照完全一致對(duì)數(shù)據(jù)值“10”、S卩2進(jìn)制數(shù)“00001010”進(jìn)行搜索的情況下,將字地址10作為最高位比特(MSB),直至字地址17為最低位比特(LSB)為止進(jìn)行8次運(yùn)算而對(duì)數(shù)據(jù)“00001010”進(jìn)行檢測(cè)。[0097]如圖4的下方所示,在本例中,從MSB的字地址1起依次進(jìn)行運(yùn)算,此時(shí),在“00001010”的數(shù)值為“O”的情況下進(jìn)行邏輯非,在數(shù)值為T的情況下進(jìn)行正邏輯,反復(fù)進(jìn)行8次邏輯與運(yùn)算(交集運(yùn)算),取交集而得到的13及25這2條記錄為數(shù)據(jù)值“10”。如果將加法功能、減法功能加入邏輯運(yùn)算器105而進(jìn)行并行運(yùn)算,則還能夠進(jìn)行記錄數(shù)據(jù)的四則運(yùn)笪并ο[0098]實(shí)施例3[0099]圖5是由具有信息檢索功能的存儲(chǔ)器所進(jìn)行的范圍數(shù)據(jù)的檢索的例子。[0100]以上的說(shuō)明是求取數(shù)據(jù)值“10”的完全一致的說(shuō)明,在搜索大于或等于數(shù)據(jù)值“10”的情況下,如圖所示,通過(guò)取得從MSB的字地址10起至字地址13為止這4個(gè)字地址的邏輯或,從而能夠?qū)?shù)據(jù)值大于或等于“16”的記錄進(jìn)行檢測(cè)。并且,通過(guò)對(duì)更低位4比特的字地址15和16的邏輯或、和字地址14進(jìn)行邏輯與運(yùn)算,從而求出大于或等于數(shù)據(jù)值“10”且小于“16”,并與先前的數(shù)據(jù)值大于或等于“16”的記錄取得邏輯或,從而能夠搜索出數(shù)據(jù)值大于或等于“10”的記錄。并且,如果對(duì)數(shù)據(jù)值大于或等于“10”的記錄取非,則能夠檢測(cè)出小于“10”、即小于或等于“9”的記錄。對(duì)于其他數(shù)據(jù)值、范圍檢索,也反復(fù)進(jìn)行和以上同樣的I比特運(yùn)算即可。[0101]如果以上的運(yùn)算以10次左右針對(duì)所有記錄并行地進(jìn)行處理后的結(jié)果的數(shù)據(jù)值大于或等于16比特,則變?yōu)橐陨系?倍、如果大于或等于32比特,則變?yōu)橐陨系?倍,從而能夠根據(jù)完全一致而實(shí)現(xiàn)范圍檢索。另外,即使在將數(shù)據(jù)寬度從8比特增加到9比特、10比特的情況下,也是極度簡(jiǎn)單的,也不需要字地址必須連續(xù),即使將數(shù)據(jù)寬度設(shè)為17比特、33比特等,也能夠?qū)崿F(xiàn)而不會(huì)有不協(xié)調(diào)感。[0102]S卩,對(duì)于該存儲(chǔ)器,根據(jù)有/無(wú)這I個(gè)比特?cái)?shù)據(jù),利用任意數(shù)據(jù)寬度的范圍檢索而能夠自由地進(jìn)行字段內(nèi)的分配。[0103]例如在個(gè)人信息等的情況下,大的特征在于,通過(guò)進(jìn)行“住所在千葉縣、工作地址在東京都、身高170cm至175cm、50歲至60歲的、男性”等檢索,從而能夠?qū)π畔⑦M(jìn)行篩選,僅對(duì)所需的記錄進(jìn)行檢測(cè)??紤]到對(duì)海量的記錄進(jìn)行檢索的情況,還能夠構(gòu)成為,能夠?qū)?yōu)先級(jí)地址編碼器輸出電路等的運(yùn)算結(jié)果輸出106分割為幾個(gè)模塊而按照模塊單位進(jìn)行讀取。[0104]對(duì)于數(shù)據(jù)的寫入,除了利用恒定寬度的數(shù)據(jù)總線進(jìn)行寫入、讀取之外,能夠設(shè)為在縱橫方向上利用先入先出(FIFO)接口而串行地進(jìn)行寫入、讀取的結(jié)構(gòu),此時(shí)還能夠使幾個(gè)進(jìn)行并行處理。[0105]實(shí)施例4[0106]圖6是將本存儲(chǔ)器串并行地連接后的情況的例子。[0107]作為完全獨(dú)立的存儲(chǔ)器,由于還能夠在縱向(字地址方向)和橫向(數(shù)據(jù)寬度方向)上進(jìn)行擴(kuò)展,因此系統(tǒng)的擴(kuò)展極為簡(jiǎn)單,能夠使系統(tǒng)具有持久性。根據(jù)數(shù)據(jù)的種類的不同,在縱向(字地址方向)也設(shè)定橫向(數(shù)據(jù)寬度方向)所需的容量。如果是先前的全文檢索,則字地址多達(dá)數(shù)十萬(wàn),但是如果是個(gè)人信息,則每人具有數(shù)K至數(shù)十K的字地址就足夠。[0108]通常,在I個(gè)CPU從完全沒(méi)有數(shù)組的定義、索引的存儲(chǔ)器中對(duì)特定的信息進(jìn)行查找的情況下,即使以例如平均10納秒對(duì)存儲(chǔ)器進(jìn)行訪問(wèn)并進(jìn)行對(duì)照,在IM字地址的情況下需要10毫秒左右、在IG的情況下需要10秒、在IT的情況下需要10000秒(3小時(shí)左右)的時(shí)間。如果并行地使用CPU而進(jìn)行分散處理,則原則上能夠與CPU的數(shù)量成正比地削減處理時(shí)間。但是對(duì)大容量的數(shù)據(jù)庫(kù)實(shí)時(shí)(例如I秒以內(nèi))地進(jìn)行檢索是困難的。[0109]在本存儲(chǔ)器的情況下,不論以何種方式串并行,即使是例如1TB的數(shù)據(jù),也能夠?qū)崿F(xiàn)所有存儲(chǔ)器的并行處理,將字地址指定110和運(yùn)算指定111反復(fù)進(jìn)行數(shù)次至數(shù)十次、數(shù)百次即可。[0110]根據(jù)存儲(chǔ)元件的不同,訪問(wèn)速度各異,但如果將例如一次邏輯運(yùn)算的速度設(shè)為10納秒,假如對(duì)信息進(jìn)行搜索的時(shí)間為數(shù)百納秒至微秒、I毫秒,則能夠?qū)崿F(xiàn)100000次的運(yùn)算,能夠進(jìn)行完全并行處理,因此該技術(shù)的最大特征在于,不論是怎樣的大數(shù)據(jù),也能夠以數(shù)百納秒至微秒、I毫秒左右的固定時(shí)間而搜索到目的信息。[0111]將該發(fā)明的存儲(chǔ)器構(gòu)造和數(shù)據(jù)的縱橫關(guān)系逆轉(zhuǎn)的思路如實(shí)地顯示出,大幅度地削減信息處理的次數(shù)、大幅度地削減處理時(shí)間。該情況對(duì)于需要基于各種假定反復(fù)進(jìn)行檢索的、大數(shù)據(jù)的數(shù)據(jù)挖掘極其有效。[0112]實(shí)施例5[0113]圖7是具有信息檢索功能的存儲(chǔ)器的階層化連接的例子。[0114]在圖7的例子中構(gòu)成為,能夠使圖的最上段所示的具有信息檢索功能的存儲(chǔ)器101作為主機(jī)而與那些各條記錄相對(duì)應(yīng),對(duì)針對(duì)每條記錄而儲(chǔ)存了更詳細(xì)的數(shù)據(jù)的、具有輔助信息檢索功能的存儲(chǔ)器101進(jìn)行檢索,特別地,如果是大數(shù)據(jù),則通過(guò)利用上述階層化數(shù)據(jù)庫(kù),不論是怎樣規(guī)模的數(shù)據(jù)庫(kù),都能夠應(yīng)對(duì)。[0115]在利用該存儲(chǔ)器101構(gòu)建數(shù)據(jù)庫(kù)時(shí),僅通過(guò)記錄和字段的分配,之后能夠利用是怎樣地對(duì)邏輯運(yùn)算器105進(jìn)行運(yùn)算指定111,因此通過(guò)利用該存儲(chǔ)器101,不需要當(dāng)前通常的檢索算法、例如SQL等數(shù)據(jù)庫(kù)概念本身。作為使用CPU的信息搜索,為了減輕CPU的負(fù)擔(dān)而存在各種利用上的技巧,二分查找就是其典型的例子。[0116]該算法作為能夠使信息數(shù)據(jù)的檢索次數(shù)極少的技術(shù),是信息處理的常規(guī)技術(shù),但在將數(shù)據(jù)值寫入至存儲(chǔ)器上的數(shù)據(jù)表格時(shí),需要例如從小數(shù)據(jù)起至大數(shù)據(jù)依次排列那樣的事先準(zhǔn)備,每當(dāng)數(shù)據(jù)增加、或者減少時(shí),需要對(duì)存儲(chǔ)器上的數(shù)據(jù)進(jìn)行排序(數(shù)據(jù)維護(hù))。即,根據(jù)該算法,CPU對(duì)特定的數(shù)據(jù)值進(jìn)行搜索時(shí)的負(fù)擔(dān)縮小,但在此之前的事先處理、數(shù)據(jù)維護(hù)所涉及的負(fù)擔(dān)絕不會(huì)少。[0117]以上是二分查找的例子,但哈希表等其他算法也完全相同。[0118]如果利用本發(fā)明,則由于不需要使用如上述那樣的算法,因此完全不需要事先準(zhǔn)備、維護(hù)等信息處理,指定記錄的某處、字段的某處而將數(shù)據(jù)登記或者清除即可,繁瑣的數(shù)組變更、數(shù)據(jù)的排序等數(shù)據(jù)維護(hù)概不需要。因此,由于對(duì)本存儲(chǔ)器101進(jìn)行控制而對(duì)信息處理整體進(jìn)行控制的CPU不需要是高速的,因此能夠大幅度地削減與信息處理、特別是信息檢索相關(guān)的電力。由此,其結(jié)果,將(PU的負(fù)擔(dān)的消除和周邊電路、信息檢索的應(yīng)用技術(shù)簡(jiǎn)化。[0119]本發(fā)明人迄今為止進(jìn)行了各種存儲(chǔ)器設(shè)備的研究而得到的、日本專利第4588114號(hào)信息篩選檢測(cè)功能的存儲(chǔ)器是擅長(zhǎng)于模式匹配等邏輯與運(yùn)算的存儲(chǔ)器。[0120]另外,PCT/JP2013/059260號(hào)具有集合運(yùn)算功能的存儲(chǔ)器是擴(kuò)大發(fā)展了具有以上信息篩選檢測(cè)功能的存儲(chǔ)器的概念,能夠自由地進(jìn)行邏輯與運(yùn)算、邏輯或運(yùn)算、邏輯非運(yùn)算等的存儲(chǔ)器。[0121]以上的發(fā)明均為相聯(lián)存儲(chǔ)器(CAM)的應(yīng)用技術(shù),能夠利用本發(fā)明。[0122]作為一個(gè)例子,通過(guò)在邏輯運(yùn)算器105中加入移位寄存器功能,從而能夠?qū)崿F(xiàn)具有信息篩選檢測(cè)功能的存儲(chǔ)器、具有集合運(yùn)算功能的存儲(chǔ)器。[0123]如果將本方式與通常的相聯(lián)存儲(chǔ)器(CAM)進(jìn)行比較,則雖然并行運(yùn)算本身的速度略微降低,但由于能夠?qū)崿F(xiàn)大型的等價(jià)相聯(lián)存儲(chǔ)器(CAM),因此能夠壓倒性地縮短作為信息檢索整體的處理時(shí)間。[0124]上述存儲(chǔ)器101在基因組解析中極其有效。人類的DNA等是具有數(shù)G的堿基信息的大數(shù)據(jù),這樣的大數(shù)據(jù)的解析需要非常長(zhǎng)的時(shí)間。如果將數(shù)G的堿基信息集中地存儲(chǔ)于該存儲(chǔ)器101,則DNA解析比超級(jí)計(jì)算機(jī)更高速且精確。當(dāng)前的信息處理以如下方式進(jìn)行,S卩,按照存儲(chǔ)器100的數(shù)據(jù)寬度為32比特、64比特、128比特等恒定的數(shù)據(jù)寬度,CPU依次對(duì)地址進(jìn)行訪問(wèn),讀入數(shù)據(jù),依次進(jìn)行信息處理。數(shù)據(jù)寬度(總線寬度)越寬,則信息處理的效率越高,但由于設(shè)備的輸入輸出引腳的數(shù)量增加、和對(duì)設(shè)備進(jìn)行安裝的印刷基板的配線負(fù)擔(dān)大等原因,數(shù)據(jù)的總線寬度的擴(kuò)大存在極限。[0125]本發(fā)明的存儲(chǔ)器101的特征在于,將迄今為止的存儲(chǔ)器構(gòu)造、數(shù)據(jù)庫(kù)的信息處理的思路縱橫逆轉(zhuǎn),如果對(duì)于在存儲(chǔ)器內(nèi)設(shè)為進(jìn)行每I比特的并行運(yùn)算時(shí)的、即使每I比特的運(yùn)算,也能夠?qū)Υ罅康拇鎯?chǔ)單元102信息并行地進(jìn)行信息處理,則信息處理的運(yùn)算次數(shù)變得極少并且高效,而且靈活利用存儲(chǔ)器設(shè)備的特征,即,不需要將信息發(fā)送至外部,能夠在存儲(chǔ)器芯片內(nèi)部并行地驅(qū)動(dòng)大量的存儲(chǔ)器單元并輸入(代入)并行邏輯運(yùn)算器而進(jìn)行并行運(yùn)算。[0126]通常的DRAM、SPAM、FLASH、另外最近預(yù)期能夠?qū)崿F(xiàn)非易失、省電力的磁存儲(chǔ)型的存儲(chǔ)器單元也被大量研究,它們也能夠共通地利用于上述存儲(chǔ)器,由于本存儲(chǔ)器僅對(duì)芯片的極少一部分添加邏輯運(yùn)算功能,因此能夠以極大容量且超高速地進(jìn)行簡(jiǎn)便的信息處理。[0127]還能夠?qū)⒃摯鎯?chǔ)器101的算法容易地安裝于FPGA。[0128]該存儲(chǔ)器是不依賴于內(nèi)存數(shù)據(jù)庫(kù)而且也不依賴于CHJ的具有自檢索功能的存儲(chǔ)器,將該存儲(chǔ)器和(PU—體化后的設(shè)備結(jié)構(gòu)也是有效的。[0129]工業(yè)實(shí)用性[0130]以往,相聯(lián)存儲(chǔ)器(CAM)作為具有高速的運(yùn)算功能的設(shè)備而已知,雖然研究了包含各種知識(shí)處理在內(nèi)的各種應(yīng)用例,但由于不能具有大型的存儲(chǔ)容量、消耗電力大等理由,僅利用于通信路由器等極少一部分目的。[0131]由于本發(fā)明是大容量且具有與相聯(lián)存儲(chǔ)器(CAM)匹敵的信息檢索速度的新類型的信息處理存儲(chǔ)器,因此能夠廣泛利用于各種數(shù)據(jù)庫(kù)、大數(shù)據(jù)的數(shù)據(jù)挖掘、數(shù)據(jù)解析并且知識(shí)處理。[0132]另外,由于該技術(shù)能夠大幅度地抑制信息處理的電力,因此對(duì)于消除ICT儀器的環(huán)境問(wèn)題具有重大的意義,該技術(shù)是新的信息處理方法之一。[0133]標(biāo)號(hào)的說(shuō)明[0134]100存儲(chǔ)器[0135]101具有信息檢索功能的存儲(chǔ)器[0136]102存儲(chǔ)單元[0137]103字寬[0138]104字地址[0139]105邏輯運(yùn)算器[0140]106運(yùn)算結(jié)果輸出[0141]107運(yùn)算結(jié)果[0142]HO(字地址)選擇指定[0143]111運(yùn)算指定[0144]112邏輯與[0145]113邏輯或[0146]114邏輯非[0147]115互斥邏輯[0148]116邏輯存儲(chǔ)【主權(quán)項(xiàng)】1.一種具有信息檢索功能的存儲(chǔ)器,其能夠進(jìn)行信息的讀取、寫入,該具有信息檢索功能的存儲(chǔ)器的特征在于,(1)該存儲(chǔ)器作為I個(gè)字的比特寬度為η且N個(gè)字地址、S卩NXn比特的存儲(chǔ)單元構(gòu)造,(2)在該存儲(chǔ)器整體中I組η個(gè)比特的邏輯運(yùn)算器具備如下功能,SP:(3)將從所述N個(gè)字地址中反復(fù)選擇指定的所述I個(gè)字的比特寬度為η的存儲(chǔ)單元信息并行地輸入(代入)至所述I組η個(gè)比特的所述邏輯運(yùn)算器而進(jìn)行邏輯運(yùn)算;以及(4)輸出所述邏輯運(yùn)算器的內(nèi)容。2.根據(jù)權(quán)利要求1所述的具有信息檢索功能的存儲(chǔ)器,其特征在于,所述邏輯運(yùn)算器是如下結(jié)構(gòu),即,能夠?qū)崿F(xiàn)針對(duì)所述輸入(代入)的所述I個(gè)字的比特寬度為η的存儲(chǔ)器存儲(chǔ)單元信息彼此的每一比特的邏輯存儲(chǔ)、邏輯與、邏輯或、邏輯非、互斥邏輯及其任意的組合運(yùn)算。3.根據(jù)權(quán)利要求1所述的具有信息檢索功能的存儲(chǔ)器,其特征在于,所述邏輯運(yùn)算器具備移位寄存器功能。4.根據(jù)權(quán)利要求1所述的具有信息檢索功能的存儲(chǔ)器,其特征在于,通過(guò)所述邏輯存儲(chǔ)、邏輯與、邏輯或、邏輯非、互斥邏輯及其任意的組合運(yùn)算,從而進(jìn)行數(shù)據(jù)值的完全一致以及數(shù)據(jù)值的范圍檢索。5.根據(jù)權(quán)利要求1所述的具有信息檢索功能的存儲(chǔ)器,其特征在于,通過(guò)所述邏輯存儲(chǔ)、邏輯與、邏輯或、邏輯非、互斥邏輯及其任意的組合運(yùn)算,從而進(jìn)行數(shù)據(jù)值的加減運(yùn)算。6.根據(jù)權(quán)利要求1所述的具有信息檢索功能的存儲(chǔ)器,其特征在于,與CPU等其他種類的半導(dǎo)體器件一體化。7.根據(jù)權(quán)利要求1所述的具有信息檢索功能的存儲(chǔ)器,其特征在于,安裝于FPGA。8.—種存儲(chǔ)器的使用方法,該存儲(chǔ)器是權(quán)利要求1所記載的具有信息檢索功能的存儲(chǔ)器,該存儲(chǔ)器的使用方法的特征在于,構(gòu)成為如下數(shù)據(jù)庫(kù),即,將數(shù)據(jù)庫(kù)的記錄分配給所述I個(gè)字的比特寬度為η的某一列,將I條記錄的字段總比特?cái)?shù)設(shè)為所述字地址數(shù)N。9.一種存儲(chǔ)器的使用方法,該存儲(chǔ)器是權(quán)利要求1所記載的具有信息檢索功能的存儲(chǔ)器,該存儲(chǔ)器的使用方法的特征在于,將所述具有信息檢索功能的存儲(chǔ)器以(I)或者(2)的連接進(jìn)行使用,(1)串行、并行、或者串并行連接(2)階層式連接。10.—種裝置,其包含權(quán)利要求1所記載的存儲(chǔ)器。11.一種信息處理方法,其特征在于,在存儲(chǔ)器內(nèi)部反復(fù)進(jìn)行存儲(chǔ)器存儲(chǔ)單元信息的I個(gè)比特彼此的信息的邏輯與、邏輯或、邏輯非、互斥邏輯、及其組合的邏輯運(yùn)算而得到規(guī)定的運(yùn)算結(jié)果。12.根據(jù)權(quán)利要求11所述的信息處理方法,其特征在于,對(duì)所述I個(gè)比特彼此的信息并行地進(jìn)行所述邏輯運(yùn)算。【文檔編號(hào)】G06F17/30GK105900085SQ201480070692【公開(kāi)日】2016年8月24日【申請(qǐng)日】2014年12月18日【發(fā)明人】井上克己【申請(qǐng)人】井上克己