專利名稱:用于型式辨識(shí)處理器的總線的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的實(shí)施例一般來說涉及電子裝置,且更具體來說在某些實(shí)施例中涉及用于型式辨識(shí)處理器的總線。
背景技術(shù):
在計(jì)算領(lǐng)域中,型式辨識(shí)任務(wù)越來越具有挑戰(zhàn)性。計(jì)算機(jī)之間傳輸?shù)臄?shù)據(jù)量不斷增大,且用戶希望識(shí)別的型式數(shù)目日益增加。舉例來說,通常通過搜索數(shù)據(jù)流中的型式(例如,特定短語或代碼片段)來檢測(cè)垃圾郵件或惡意軟件。型式的數(shù)目隨著垃圾郵件及惡意軟件的變化而增加,因?yàn)榭蓪?shí)施新型式以搜索新變體。搜索數(shù)據(jù)流以找到這些型式中的每一者可形成計(jì)算瓶頸。通常,在接收到數(shù)據(jù)流時(shí),搜索數(shù)據(jù)流以一次一個(gè)地找到每一型式。 在系統(tǒng)準(zhǔn)備搜索數(shù)據(jù)流的下一部分之前的延遲隨著型式數(shù)目而增加。因此,型式辨識(shí)可使數(shù)據(jù)的接收減慢??赏ㄟ^特定針對(duì)型式辨識(shí)設(shè)計(jì)的硬件(例如,芯片)快速搜索數(shù)據(jù)流以找到大量型式。然而,此硬件的實(shí)施因缺少專用型式辨識(shí)硬件與中央處理單元(CPU)之間的廣泛接受的通信協(xié)議而為復(fù)雜的。系統(tǒng)的設(shè)計(jì)者具有學(xué)習(xí)新通信協(xié)議的有限能力。通曉一個(gè)通信協(xié)議甚至可花費(fèi)計(jì)算機(jī)設(shè)計(jì)領(lǐng)域中的數(shù)月或數(shù)年的工作。使用新協(xié)議與型式辨識(shí)硬件通信可添加實(shí)施所述硬件的成本。
圖1描繪搜索數(shù)據(jù)流的系統(tǒng)的實(shí)例;圖2描繪圖1的系統(tǒng)中的型式辨識(shí)處理器的實(shí)例;圖3描繪圖2的型式辨識(shí)處理器中的搜索項(xiàng)單元的實(shí)例;圖4及圖5描繪搜索數(shù)據(jù)流以找到單個(gè)字符的圖3搜索項(xiàng)單元;圖6到圖8描繪包含搜索數(shù)據(jù)流以找到詞的數(shù)個(gè)搜索項(xiàng)單元的辨識(shí)模塊;圖9描繪經(jīng)配置以搜索數(shù)據(jù)流以并行找到兩個(gè)詞的辨識(shí)模塊;圖10到圖12描繪根據(jù)指定具有相同前綴的多個(gè)詞的搜索準(zhǔn)則進(jìn)行搜索的辨識(shí)模塊;圖13圖解說明具有根據(jù)本技術(shù)的實(shí)施例的類似或相同的型式辨識(shí)總線與存儲(chǔ)器總線的系統(tǒng)的實(shí)施例;圖14圖解說明根據(jù)本技術(shù)的實(shí)施例的圖13型式辨識(shí)總線的實(shí)施例;及圖15圖解說明根據(jù)本技術(shù)的實(shí)施例的用于經(jīng)由總線的一部分發(fā)送多個(gè)類型的信號(hào)的過程的實(shí)施例。
具體實(shí)施例方式圖1描繪搜索數(shù)據(jù)流12的系統(tǒng)10的實(shí)例。系統(tǒng)10可包含型式辨識(shí)處理器14,其根據(jù)搜索準(zhǔn)則16搜索數(shù)據(jù)流12。
每一搜索準(zhǔn)則可指定一個(gè)或一個(gè)以上目標(biāo)表達(dá)(即,型式)。短語“目標(biāo)表達(dá) (target expression) ”是指型式辨識(shí)處理器14正在搜索的數(shù)據(jù)序列。目標(biāo)表達(dá)的實(shí)例包含拼寫某一詞的字符序列、指定基因的遺傳堿基對(duì)序列、圖片或視頻文件中形成圖像的一部分的位序列、可執(zhí)行文件中形成程序的一部分的位序列或音頻文件中形成歌曲或口語短語的一部分的位序列。搜索準(zhǔn)則可指定一個(gè)以上的目標(biāo)表達(dá)。舉例來說,搜索準(zhǔn)則可指定以字母序列 “Cl”開始的所有五個(gè)字母的詞、以字母序列“Cl”開始的任一詞、包含詞“cloud”三次以上的段落等。目標(biāo)表達(dá)的可能集合的數(shù)目為任意大,例如,可存在與數(shù)據(jù)流可呈現(xiàn)的數(shù)據(jù)排列同樣多的目標(biāo)表達(dá)。搜索準(zhǔn)則可以各種格式來表達(dá),包含規(guī)則表達(dá)、簡明地指定目標(biāo)表達(dá)集合而不必列舉每一目標(biāo)表達(dá)的編程語言。每一搜索準(zhǔn)則可由一個(gè)或一個(gè)以上搜索項(xiàng)構(gòu)成。因此,搜索準(zhǔn)則的每一目標(biāo)表達(dá)可包含一個(gè)或一個(gè)以上搜索項(xiàng)且一些目標(biāo)表達(dá)可使用共同搜索項(xiàng)。如本文中所使用,短語 “搜索項(xiàng)(search term) ”是指在單個(gè)搜索循環(huán)期間搜索的數(shù)據(jù)序列。所述數(shù)據(jù)序列可包含二進(jìn)制格式或其它格式(例如,十進(jìn)位、ASCII等)的多個(gè)數(shù)據(jù)位。所述序列可對(duì)具有單個(gè)數(shù)位或多個(gè)數(shù)位(例如,數(shù)個(gè)二進(jìn)制數(shù)位)的數(shù)據(jù)進(jìn)行編碼。舉例來說,型式辨識(shí)處理器14 可一次一個(gè)字符地搜索文本數(shù)據(jù)流12,且搜索項(xiàng)可指定單個(gè)字符的集合,例如,字母“a”, 字母“a”或“e”,或指定所有單個(gè)字符的集合的通配符搜索項(xiàng)。搜索項(xiàng)可小于或大于指定字符(或由數(shù)據(jù)流表達(dá)的信息的其它字形一即,基本單位,例如,音符、遺傳堿基對(duì)、10進(jìn)位數(shù)位或子像素)的位的數(shù)目。舉例來說,搜索項(xiàng)可為8 個(gè)位且單個(gè)字符可為16個(gè)位,在此情況下,兩個(gè)連續(xù)搜索項(xiàng)可指定單個(gè)字符。搜索準(zhǔn)則16可由編譯器18格式化以用于型式辨識(shí)處理器14。格式化可包含從所述搜索準(zhǔn)則拆析搜索項(xiàng)。舉例來說,如果由數(shù)據(jù)流12表達(dá)的字形大于所述搜索項(xiàng),那么所述編譯器可將所述搜索準(zhǔn)則拆析成多個(gè)搜索項(xiàng)以搜索單個(gè)字形。類似地,如果由數(shù)據(jù)流 12表達(dá)的字形小于所述搜索項(xiàng),那么編譯器18可為每一單獨(dú)字形提供具有未使用位的單個(gè)搜索項(xiàng)。編譯器18也可格式化搜索準(zhǔn)則16以支持型式辨識(shí)處理器14本機(jī)不支持的各種規(guī)則表達(dá)運(yùn)算子。型式辨識(shí)處理器14可通過評(píng)估來自數(shù)據(jù)流12的每一新項(xiàng)來搜索數(shù)據(jù)流12。此處,措辭“項(xiàng)”是指可匹配搜索項(xiàng)的數(shù)據(jù)量。在搜索循環(huán)期間,型式辨識(shí)處理器14可確定當(dāng)前所呈現(xiàn)的項(xiàng)是否匹配搜索準(zhǔn)則中的當(dāng)前搜索項(xiàng)。如果所述項(xiàng)匹配所述搜索項(xiàng),那么評(píng)估被“推進(jìn)”,即,將下一項(xiàng)與搜索準(zhǔn)則中的下一搜索項(xiàng)進(jìn)行比較。如果所述項(xiàng)不匹配,那么將下一項(xiàng)與搜索準(zhǔn)則中的第一項(xiàng)進(jìn)行比較,借此復(fù)位所述搜索??蓪⒚恳凰阉鳒?zhǔn)則編譯到型式辨識(shí)處理器14中的不同有限狀態(tài)機(jī)中。所述有限狀態(tài)機(jī)可并行運(yùn)行,從而根據(jù)搜索準(zhǔn)則16搜索數(shù)據(jù)流12。當(dāng)先前搜索項(xiàng)由數(shù)據(jù)流12匹配時(shí),所述有限狀態(tài)機(jī)可步進(jìn)經(jīng)過搜索準(zhǔn)則中的每一連續(xù)搜索項(xiàng),或如果所述搜索項(xiàng)未得到匹配,那么所述有限狀態(tài)機(jī)可開始搜索所述搜索準(zhǔn)則的第一搜索項(xiàng)。型式辨識(shí)處理器14可(例如)在單個(gè)裝置循環(huán)期間在約相同時(shí)間根據(jù)數(shù)個(gè)搜索準(zhǔn)則及其相應(yīng)搜索項(xiàng)評(píng)估每一新項(xiàng)。所述平行有限狀態(tài)機(jī)可在約相同時(shí)間各自接收來自數(shù)據(jù)流12的項(xiàng),且所述平行有限狀態(tài)機(jī)中的每一者可確定所述項(xiàng)是否將所述所述平行有限狀態(tài)機(jī)推進(jìn)到其搜索準(zhǔn)則中的下一搜索項(xiàng)。所述平行有限狀態(tài)機(jī)可根據(jù)相對(duì)大數(shù)目的搜索準(zhǔn)則(例如,100個(gè)以上、1000個(gè)以上或10,000個(gè)以上)來評(píng)估項(xiàng)。由于其并行操作,因此
其可將所述搜索準(zhǔn)則應(yīng)用于具有相對(duì)高帶寬的數(shù)據(jù)流12 (例如,大于或大體等于每秒64MB 或每秒U(xiǎn)8MB的數(shù)據(jù)流1 而不使所述數(shù)據(jù)流減慢。在一些實(shí)施例中,搜索-循環(huán)持續(xù)時(shí)間不隨搜索準(zhǔn)則的數(shù)目按比例調(diào)整,因此搜索準(zhǔn)則的數(shù)目對(duì)型式辨識(shí)處理器14的性能可幾乎沒有影響。當(dāng)搜索準(zhǔn)則得到滿足時(shí)(即,在推進(jìn)到最后一個(gè)搜索項(xiàng)且與其匹配后),型式辨識(shí)處理器14可將所述準(zhǔn)則的滿足報(bào)告給處理單元(例如,中央處理單元(CPU) 20)。中央處理單元20可控制型式辨識(shí)處理器14及系統(tǒng)10的其它部分。系統(tǒng)10可為搜索數(shù)據(jù)流的各種系統(tǒng)或裝置中的任一者。舉例來說,系統(tǒng)10可為監(jiān)視數(shù)據(jù)流12的桌上型計(jì)算機(jī)、膝上型計(jì)算機(jī)、手持式計(jì)算機(jī)或其它類型的計(jì)算機(jī)。系統(tǒng) 10也可為網(wǎng)絡(luò)節(jié)點(diǎn),例如,路由器、服務(wù)器或客戶端(例如,先前所描述類型的計(jì)算機(jī)中的一者)。系統(tǒng)10可為某一其它類別的電子裝置,例如,復(fù)印機(jī)、掃描儀、打印機(jī)、游戲控制臺(tái)、 電視、機(jī)上視頻散布或記錄系統(tǒng)、電纜盒、個(gè)人數(shù)字媒體播放器、工廠自動(dòng)化系統(tǒng)、汽車計(jì)算機(jī)系統(tǒng)或醫(yī)療裝置。(用于描述系統(tǒng)的這些各種實(shí)例的術(shù)語(像本文中所使用的許多其它術(shù)語)可共享一些所指物,且因此不應(yīng)僅根據(jù)所列舉的其它項(xiàng)來理解)。數(shù)據(jù)流12可為用戶或其它實(shí)體可希望搜索的各種類型的數(shù)據(jù)流中的一者或一者以上。舉例來說,數(shù)據(jù)流12可為經(jīng)由網(wǎng)絡(luò)接收的數(shù)據(jù)流,例如,經(jīng)由因特網(wǎng)接收的包或經(jīng)由蜂窩式網(wǎng)絡(luò)接收的語音或數(shù)據(jù)。數(shù)據(jù)流12可為從與系統(tǒng)10通信的傳感器(例如,成像傳感器、溫度傳感器、加速度計(jì)或類似物或其組合)接收的數(shù)據(jù)。數(shù)據(jù)流12可作為串行數(shù)據(jù)流由系統(tǒng)10接收,其中以具有意義的次序(例如,以時(shí)間、詞法或語義顯著的次序)接收數(shù)據(jù)。或者,可并行或無序地接收數(shù)據(jù)流12,且然后(例如)通過對(duì)經(jīng)由因特網(wǎng)接收的包重新排序?qū)⑵滢D(zhuǎn)換成串行數(shù)據(jù)流。在一些實(shí)施例中,數(shù)據(jù)流12可以串行方式呈現(xiàn)項(xiàng),但可并行地接收表達(dá)所述項(xiàng)中的每一者的位??蓮南到y(tǒng)10外部的源接收數(shù)據(jù)流12,或可通過詢問存儲(chǔ)器裝置且由所存儲(chǔ)的數(shù)據(jù)形成數(shù)據(jù)流12來形成數(shù)據(jù)流12。依據(jù)數(shù)據(jù)流12中的數(shù)據(jù)的類型,設(shè)計(jì)者可挑選不同類型的搜索準(zhǔn)則。舉例來說, 搜索準(zhǔn)則16可為病毒定義文件??杀碚鞑《净蚱渌鼝阂廛浖?,且可使用惡意軟件的方面來形成指示數(shù)據(jù)流12是否可能正在遞送惡意軟件的搜索準(zhǔn)則。可將所得搜索準(zhǔn)則存儲(chǔ)于服務(wù)器上,且客戶端系統(tǒng)的操作者可預(yù)訂將所述搜索準(zhǔn)則下載到系統(tǒng)10的服務(wù)。當(dāng)不同類型的惡意軟件出現(xiàn)時(shí),搜索準(zhǔn)則16可從所述服務(wù)器周期性地更新。所述搜索準(zhǔn)則也可用于指定可經(jīng)由網(wǎng)絡(luò)接收的不期望的內(nèi)容,舉例來說,不需要的電子郵件(通常稱為垃圾郵件)或令用戶反感的其它內(nèi)容。數(shù)據(jù)流12可由對(duì)系統(tǒng)10正在接收的數(shù)據(jù)感興趣的第三方搜索。舉例來說,可監(jiān)視數(shù)據(jù)流12以找到在版權(quán)作品中出現(xiàn)的文本、音頻序列或視頻序列??杀O(jiān)視數(shù)據(jù)流12以找到與刑事調(diào)查或民事訴訟有關(guān)或雇主感興趣的言論。搜索準(zhǔn)則16也可包含數(shù)據(jù)流12中針對(duì)其翻譯(例如)在可由CPU 20或型式辨識(shí)處理器14尋址的存儲(chǔ)器中可用的型式。舉例來說,搜索準(zhǔn)則16可各自指定在存儲(chǔ)器中存儲(chǔ)其對(duì)應(yīng)西班牙語詞的英語詞。在另一實(shí)例中,搜索準(zhǔn)則16可指定數(shù)據(jù)流12的經(jīng)編碼版本,例如,MP3、MPEG4、FLAC, Ogg Vorbis等,針對(duì)所述經(jīng)編碼版本,可得到數(shù)據(jù)流12的經(jīng)解碼版本,或反之亦然。
型式辨識(shí)處理器14可為與CPU 20—起集成到單個(gè)組件(例如,單個(gè)裝置)中的硬件裝置或可形成為單獨(dú)組件。舉例來說,型式辨識(shí)處理器14可為單獨(dú)集成電路。型式辨識(shí)處理器14可稱為“協(xié)處理器”或“型式辨識(shí)協(xié)處理器”。圖2描繪型式辨識(shí)處理器14的實(shí)例。型式辨識(shí)處理器14可包含辨識(shí)模塊22及聚合模塊對(duì)。辨識(shí)模塊22可經(jīng)配置以將所接收項(xiàng)與搜索項(xiàng)進(jìn)行比較,且辨識(shí)模塊22及聚合模塊M兩者可協(xié)作以確定將項(xiàng)與搜索項(xiàng)匹配是否滿足搜索準(zhǔn)則。辨識(shí)模塊22可包含一行解碼器觀及多個(gè)特征單元30。每一特征單元30可指定搜索項(xiàng),且特征單元30的群組可形成形成搜索準(zhǔn)則的平行有限狀態(tài)機(jī)。特征單元30的組件可形成搜索項(xiàng)陣列32、檢測(cè)陣列34及激活路由矩陣36。搜索項(xiàng)陣列32可包含多個(gè)輸入導(dǎo)體37,所述輸入導(dǎo)體中的每一者可使特征單元30中的每一者與行解碼器觀通信。行解碼器觀可基于數(shù)據(jù)流12的內(nèi)容在多個(gè)輸入導(dǎo)體37當(dāng)中選擇特定導(dǎo)體。舉例來說,行解碼器觀可為基于可表示一個(gè)項(xiàng)的所接收字節(jié)的值激活256個(gè)行中的一者的單字節(jié)到256行解碼器。0000 0000的單字節(jié)項(xiàng)可對(duì)應(yīng)于多個(gè)輸入導(dǎo)體37當(dāng)中的頂行,且1111 1111的單字節(jié)項(xiàng)可對(duì)應(yīng)于多個(gè)輸入導(dǎo)體37當(dāng)中的底行。因此,依據(jù)從數(shù)據(jù)流12接收到哪些項(xiàng),可選擇不同輸入導(dǎo)體37。在接收不同項(xiàng)時(shí),行解碼器觀可去激活對(duì)應(yīng)于先前項(xiàng)的行且激活對(duì)應(yīng)于新項(xiàng)的行。檢測(cè)陣列34可耦合到檢測(cè)總線38,所述檢測(cè)總線將指示搜索準(zhǔn)則的完全或部分滿足的信號(hào)輸出到聚合模塊對(duì)。激活路由矩陣36可基于搜索準(zhǔn)則中已得到匹配的搜索項(xiàng)的數(shù)目選擇性地激活及去激活特征單元30。聚合模塊M可包含鎖存器矩陣40、聚合路由矩陣42、閾值邏輯矩陣44、邏輯積矩陣46、邏輯和矩陣48及初始化路由矩陣50。鎖存器矩陣40可實(shí)施某些搜索準(zhǔn)則的部分。一些搜索準(zhǔn)則(例如,一些規(guī)則表達(dá))僅計(jì)數(shù)匹配或匹配群組的第一次出現(xiàn)。鎖存器矩陣40可包含記錄匹配是否已出現(xiàn)的鎖存器??稍谒阉鳒?zhǔn)則經(jīng)確定得到滿足或不可進(jìn)一步滿足(即,在可滿足所述搜索準(zhǔn)則之前,可需要再次匹配較早搜索項(xiàng))時(shí),在初始化期間清零鎖存器,且在操作期間周期性地重新初始化鎖存器。聚合路由矩陣42可類似于激活路由矩陣36發(fā)揮作用。聚合路由矩陣42可在檢測(cè)總線38上接收指示匹配的信號(hào)且可將所述信號(hào)路由到連接到閾值邏輯矩陣44的不同群組邏輯線53。聚合路由矩陣42也可將初始化路由矩陣50的輸出路由到檢測(cè)陣列34,以在搜索準(zhǔn)則經(jīng)確定得到滿足或不可進(jìn)一步滿足時(shí)復(fù)位檢測(cè)陣列34的部分。閾值邏輯矩陣44可包含多個(gè)計(jì)數(shù)器,例如,經(jīng)配置以遞增計(jì)數(shù)或遞減計(jì)數(shù)的32位計(jì)數(shù)器。閾值邏輯矩陣44可加載有初始計(jì)數(shù)且其可基于由辨識(shí)模塊發(fā)信的匹配而從所述計(jì)數(shù)遞增計(jì)數(shù)或遞減計(jì)數(shù)。舉例來說,閾值邏輯矩陣44可計(jì)數(shù)字在某一長度的文本中出現(xiàn)的數(shù)目。閾值邏輯矩陣44的輸出可為到邏輯積矩陣46的輸入。邏輯積矩陣46可選擇性地產(chǎn)生“積”結(jié)果(例如,布爾邏輯(Boolean logic)中的“AND”函數(shù))。邏輯積矩陣46可實(shí)施為方矩陣,其中輸出積的數(shù)目等于來自閾值邏輯矩陣44的輸入線的數(shù)目,或邏輯積矩陣46可具有不同于輸出的數(shù)目的輸入??蓪⑺梅e值輸出到邏輯和矩陣48。邏輯和矩陣48可選擇性地產(chǎn)生和(例如,布爾邏輯中的“OR”函數(shù))。邏輯和矩陣48也可為方矩陣,或邏輯和矩陣48可具有不同于輸出的數(shù)目的輸入。由于所述輸入為邏輯積,因此邏輯和矩陣48的輸出可為邏輯積和(例如,布爾邏輯積和(SOP)形式)。邏輯和矩陣48的輸出可由初始化路由矩陣50接收。初始化路由矩陣50可經(jīng)由聚合路由矩陣42復(fù)位檢測(cè)陣列34及聚合模塊M的部分。初始化路由矩陣50也可實(shí)施為方矩陣,或初始化路由矩陣50可具有不同于輸出的數(shù)目的輸入。例如,當(dāng)搜索準(zhǔn)則得到滿足或經(jīng)確定不可進(jìn)一步滿足時(shí),初始化路由矩陣50可響應(yīng)于來自邏輯和矩陣48的信號(hào)且重新初始化型式辨識(shí)處理器14的其它部分。聚合模塊M可包含輸出緩沖器51,其接收閾值邏輯矩陣44、聚合路由矩陣42及邏輯和矩陣48的輸出。聚合模塊M的輸出可在輸出總線沈上從輸出緩沖器51傳輸?shù)?CPU 20(圖1)。在一些實(shí)施例中,輸出多路復(fù)用器可多路復(fù)用來自這些組件42、44及48的信號(hào)且將指示準(zhǔn)則的滿足或搜索項(xiàng)的匹配的信號(hào)輸出到CPU 20(圖1)。在其它實(shí)施例中, 可在不經(jīng)由所述輸出多路復(fù)用器傳輸所述信號(hào)的情況下報(bào)告來自型式辨識(shí)處理器14的結(jié)果,此并非暗示也不可省略本文中所描述的任一其它特征。舉例來說,可將來自閾值邏輯矩陣44、邏輯積矩陣46、邏輯和矩陣48或初始化路由矩陣50的信號(hào)在輸出總線沈上并行傳輸?shù)紺PU。圖3圖解說明搜索項(xiàng)陣列32(圖幻中的單個(gè)特征單元30 (本文中稱為搜索項(xiàng)單元M的組件)的一部分。搜索項(xiàng)單元M可包含一輸出導(dǎo)體56及多個(gè)存儲(chǔ)器單元58。存儲(chǔ)器單元58中的每一者可既耦合到輸出導(dǎo)體56又耦合到多個(gè)輸入導(dǎo)體37當(dāng)中的導(dǎo)體中的一者。響應(yīng)于選擇其輸入導(dǎo)體37,存儲(chǔ)器單元58中的每一者可輸出指示其所存儲(chǔ)值的值,從而經(jīng)由輸出導(dǎo)體56輸出數(shù)據(jù)。在一些實(shí)施例中,多個(gè)輸入導(dǎo)體37可稱為“字線”,且輸出導(dǎo)體56可稱為“數(shù)據(jù)線”。存儲(chǔ)器單元58可包含各種類型的存儲(chǔ)器單元中的任一者。舉例來說,存儲(chǔ)器單元 58可為易失性存儲(chǔ)器,例如,具有晶體管及電容器的動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)單元。所述晶體管的源極及漏極可分別連接到所述電容器的板及輸出導(dǎo)體56,且所述晶體管的柵極可連接到輸入導(dǎo)體37中的一者。在易失性存儲(chǔ)器的另一實(shí)例中,存儲(chǔ)器單元58中的每一者可包含靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)單元。所述SRAM單元可具有輸出,其通過受輸入導(dǎo)體37中的一者控制的存取晶體管選擇性地耦合到輸出導(dǎo)體56。存儲(chǔ)器單元58也可包含非易失性存儲(chǔ)器,例如,相變存儲(chǔ)器(例如,雙向裝置)、快閃存儲(chǔ)器、硅-氧化物-氮化物-氧化物-硅(S0N0Q存儲(chǔ)器、磁阻式存儲(chǔ)器或其它類型的非易失性存儲(chǔ)器。存儲(chǔ)器單元58也可包含觸發(fā)器,例如,由邏輯門制成的存儲(chǔ)器單元。圖4及圖5描繪操作中的搜索項(xiàng)單元M的實(shí)例。圖4圖解說明搜索項(xiàng)單元M接收不匹配所述單元的搜索項(xiàng)的項(xiàng),且圖5圖解說明匹配。如圖4所圖解說明,搜索項(xiàng)單元M可經(jīng)配置以通過將數(shù)據(jù)存儲(chǔ)于存儲(chǔ)器單元58 中來搜索一個(gè)或一個(gè)以上項(xiàng)。存儲(chǔ)器單元58各自可表示數(shù)據(jù)流12可呈現(xiàn)的項(xiàng),例如,在圖 3中,每一存儲(chǔ)器單元58表示單個(gè)字母或數(shù)字,以字母“a”開始且以數(shù)字“9”結(jié)束。表示滿足搜索項(xiàng)的項(xiàng)的存儲(chǔ)器單元58可經(jīng)編程以存儲(chǔ)第一值,且不表示滿足搜索項(xiàng)的項(xiàng)的存儲(chǔ)器單元58可經(jīng)編程以存儲(chǔ)不同值。在所圖解說明的實(shí)例中,搜索項(xiàng)單元M經(jīng)配置以搜索字母“b”。表示“b”的存儲(chǔ)器單元58可存儲(chǔ)1或邏輯高,且不表示“b”的存儲(chǔ)器單元58 可經(jīng)編程以存儲(chǔ)0或邏輯低。
為將來自數(shù)據(jù)流12的項(xiàng)與搜索項(xiàng)進(jìn)行比較,行解碼器觀可選擇耦合到表示所接收項(xiàng)的存儲(chǔ)器單元58的輸入導(dǎo)體37。在圖4中,數(shù)據(jù)流12呈現(xiàn)小寫字母“e”。此項(xiàng)可由數(shù)據(jù)流12以八位ASCII代碼的形式呈現(xiàn),且行解碼器觀可將此字節(jié)解釋為行地址,從而通過致能導(dǎo)體60而在所述導(dǎo)體上輸出信號(hào)。作為響應(yīng),受導(dǎo)體60控制的存儲(chǔ)器單元58可輸出指示存儲(chǔ)器單元58存儲(chǔ)的數(shù)據(jù)的信號(hào),且所述信號(hào)可由輸出導(dǎo)體56傳達(dá)。在此情況下,由于字母“e”不是由搜索項(xiàng)單元 M指定的項(xiàng)中的一者,因此其不匹配搜索項(xiàng),且搜索項(xiàng)單元M輸出0值,從而指示未發(fā)現(xiàn)任何匹配。在圖5中,數(shù)據(jù)流12呈現(xiàn)字符“b”。同樣,行解碼器28可將此項(xiàng)解釋為地址,且行解碼器觀可選擇導(dǎo)體62。作為響應(yīng),表示字母“b”的存儲(chǔ)器單元58輸出其所存儲(chǔ)值,在此情況下,所述值為1,從而指示匹配。搜索項(xiàng)單元M可經(jīng)配置以一次搜索一個(gè)以上項(xiàng)。多個(gè)存儲(chǔ)器單元58可經(jīng)編程以存儲(chǔ)1,從而指定與一個(gè)以上項(xiàng)匹配的搜索項(xiàng)。舉例來說,表示小寫字母“a”及大寫字母“A” 的存儲(chǔ)器單元58可經(jīng)編程以存儲(chǔ)1,且搜索項(xiàng)單元M可搜索任一項(xiàng)。在另一實(shí)例中,搜索項(xiàng)單元M可經(jīng)配置以在接收任一字符的情況下輸出匹配。所有存儲(chǔ)器單元58可經(jīng)編程以存儲(chǔ)1,以使得搜索項(xiàng)單元M可充當(dāng)搜索準(zhǔn)則中的通配符項(xiàng)。圖6到圖8描繪辨識(shí)模塊22根據(jù)多項(xiàng)搜索準(zhǔn)則搜索(例如)詞。具體來說,圖6 圖解說明辨識(shí)模塊22檢測(cè)詞的第一字母,圖7圖解說明對(duì)第二字母的檢測(cè),且圖8圖解說明對(duì)最后一個(gè)字母的檢測(cè)。如圖6所圖解說明,辨識(shí)模塊22可經(jīng)配置以搜索詞“big”。對(duì)三個(gè)鄰近特征單元 63、64及66進(jìn)行圖解說明。特征單元63經(jīng)配置以檢測(cè)字母“b”。特征單元64經(jīng)配置以檢測(cè)字母“ i ”。且特征單元66經(jīng)配置以既檢測(cè)字母“g”又指示搜索準(zhǔn)則得到滿足。圖6還描繪檢測(cè)陣列34的額外細(xì)節(jié)。檢測(cè)陣列34可包含特征單元63、64及66 中的每一者中的檢測(cè)單元68。檢測(cè)單元68中的每一者可包含存儲(chǔ)器單元70 (例如,上文所描述類型的存儲(chǔ)器單元中的一者(例如,觸發(fā)器)),存儲(chǔ)器單元70指示特征單元63、64或 66是活動(dòng)的還是不活動(dòng)的。檢測(cè)單元68可經(jīng)配置以將指示所述檢測(cè)單元是否是活動(dòng)的及是否已從其相關(guān)聯(lián)搜索項(xiàng)單元M接收到指示匹配的信號(hào)兩者的信號(hào)輸出到激活路由矩陣 36。不活動(dòng)特征單元63、64及66可忽視匹配。檢測(cè)單元68中的每一者可包含具有來自存儲(chǔ)器單元70及輸出導(dǎo)體56的輸入的AND門??蓪⑺鯝ND門的輸出路由到檢測(cè)總線38 及激活路由矩陣36兩者或一者或另一者。激活路由矩陣36又可通過寫入到檢測(cè)陣列34中的存儲(chǔ)器單元70來選擇性地激活特征單元63、64及66。激活路由矩陣36可根據(jù)搜索準(zhǔn)則及接下來在數(shù)據(jù)流12中搜索哪一搜索項(xiàng)來激活特征單元63、64或66。在圖6中,數(shù)據(jù)流12呈現(xiàn)字母“b”。作為響應(yīng),特征單元63、64及66中的每一者可在其輸出導(dǎo)體56上輸出指示存儲(chǔ)于連接到導(dǎo)體62的存儲(chǔ)器單元58 (其表示字母“b” ) 中的值的信號(hào)。然后,檢測(cè)單元56可各自確定其是否已接收到指示匹配的信號(hào)及其是否是活動(dòng)的。由于特征單元63經(jīng)配置以檢測(cè)字母“b”且是活動(dòng)的(如其存儲(chǔ)器單元70所指示),因此特征單元63中的檢測(cè)單元68可將指示搜索準(zhǔn)則的第一搜索項(xiàng)已得到匹配的信號(hào)輸出到激活路由矩陣36。
如圖7所圖解說明,在第一搜索項(xiàng)得到匹配之后,激活路由矩陣36可通過將1寫入到其檢測(cè)單元68中的其存儲(chǔ)器單元70來激活下一特征單元64。在下一項(xiàng)滿足第一搜索項(xiàng)的情況下(例如,如果接收到項(xiàng)序列“bbig”),激活路由矩陣36也可維持特征單元63的活動(dòng)狀態(tài)。在搜索數(shù)據(jù)流12期間的一部分時(shí)間或大致所有時(shí)間期間,搜索準(zhǔn)則的第一搜索項(xiàng)可維持在活動(dòng)狀態(tài)中。在圖7中,數(shù)據(jù)流12將字母“i”呈現(xiàn)給辨識(shí)模塊22。作為響應(yīng),特征單元63、64 及66中的每一者可在其輸出導(dǎo)體56上輸出指示存儲(chǔ)于連接到導(dǎo)體72的存儲(chǔ)器單元58 (其表示字母“i”)中的值的信號(hào)。然后,檢測(cè)單元56可各自確定其是否已接收到指示匹配的信號(hào)及其是否是活動(dòng)的。由于特征單元64經(jīng)配置以檢測(cè)字母“i”且是活動(dòng)的(如其存儲(chǔ)器單元70所指示),因此特征單元64中的檢測(cè)單元68可將指示其搜索準(zhǔn)則的下一搜索項(xiàng)已得到匹配的信號(hào)輸出到激活路由矩陣36。接下來,激活路由矩陣36可激活特征單元66,如圖8所圖解說明。在評(píng)估下一項(xiàng)之前,可去激活特征單元64。舉例來說,特征單元64可通過其檢測(cè)單元68在檢測(cè)循環(huán)之間復(fù)位其存儲(chǔ)器單元70而去激活或激活路由矩陣36可去激活特征單元64。在圖8中,數(shù)據(jù)流12將項(xiàng)“g”呈現(xiàn)給行解碼器觀,所述行解碼器選擇表示項(xiàng)“g” 的導(dǎo)體74。作為響應(yīng),特征單元63、64及66中的每一者可在其輸出導(dǎo)體56上輸出指示存儲(chǔ)于連接到導(dǎo)體74的存儲(chǔ)器單元58 (其表示字母“g”)中的值的信號(hào)。然后,檢測(cè)單元56 可各自確定其是否已接收到指示匹配的信號(hào)及其是否是活動(dòng)的。由于特征單元66經(jīng)配置以檢測(cè)字母“g”且是活動(dòng)的(如其存儲(chǔ)器單元70所指示),因此特征單元66中的檢測(cè)單元 68可將指示其搜索準(zhǔn)則的最后一個(gè)搜索項(xiàng)已得到匹配的信號(hào)輸出到激活路由矩陣36。搜索準(zhǔn)則的末端或搜索準(zhǔn)則的一部分可由激活路由矩陣36或檢測(cè)單元68識(shí)別。 這些組件36或68可包含指示其特征單元63、64或66指定搜索準(zhǔn)則的最后一個(gè)搜索項(xiàng)還是搜索準(zhǔn)則的分量的存儲(chǔ)器。舉例來說,搜索準(zhǔn)則可指定其中詞“cattle”出現(xiàn)兩次的所有句子,且辨識(shí)模塊可將指示“cattle”在句子內(nèi)的每一出現(xiàn)的信號(hào)輸出到聚合模塊,所述聚合模塊可計(jì)數(shù)所述出現(xiàn)以確定所述搜索準(zhǔn)則是否得到滿足??稍跀?shù)個(gè)條件下激活特征單元63、64或66。特征單元63、64或66可為“始終活動(dòng)”的,此意指其在整個(gè)或大致整個(gè)搜索期間保持活動(dòng)。始終活動(dòng)特征單元63、64或66的實(shí)例是搜索準(zhǔn)則的第一特征單元,例如,特征單元63。特征單元63、64或66可為“在請(qǐng)求時(shí)活動(dòng)”,此意指特征單元63、64或66在某一先前條件得到匹配時(shí)(例如,在搜索準(zhǔn)則中的先前搜索項(xiàng)得到匹配時(shí))是活動(dòng)的。實(shí)例為當(dāng)由圖6到圖8中的特征單元63請(qǐng)求時(shí)活動(dòng)的特征單元64及當(dāng)由特征單元64請(qǐng)求時(shí)活動(dòng)的特征單元66。特征單元63、64或66可為“自激活”,此意指一旦被激活,只要其搜索項(xiàng)得到匹配其即激活自身。舉例來說,具有由任一數(shù)值數(shù)位匹配的搜索項(xiàng)的自激活特征單元可在序列 “123456xy”中保持活動(dòng)直到到達(dá)字母“X”為止。每當(dāng)自激活特征單元的搜索項(xiàng)得到匹配時(shí),其可激活搜索準(zhǔn)則中的下一特征單元。因此,始終活動(dòng)特征單元可由自激活特征單元及當(dāng)請(qǐng)求時(shí)活動(dòng)的特征單元形成所述自激活特征單元可經(jīng)編程以使其所有存儲(chǔ)器單元58 存儲(chǔ)1,且其可在每一項(xiàng)之后重復(fù)激活所述當(dāng)請(qǐng)求時(shí)活動(dòng)的特征單元。在一些實(shí)施例中,每一特征單元63、64及66可在其檢測(cè)單元68中或在激活路由矩陣36中包含指定所述特征
11單元是否始終活動(dòng)的存儲(chǔ)器單元,借此由單個(gè)特征單元形成始終活動(dòng)特征單元。圖9描繪經(jīng)配置以根據(jù)第一搜索準(zhǔn)則75及第二搜索準(zhǔn)則76并行搜索的辨識(shí)模塊 22的實(shí)例。在此實(shí)例中,第一搜索準(zhǔn)則75指定詞“big”,且第二搜索準(zhǔn)則76指定詞“cab”。 指示來自數(shù)據(jù)流12的當(dāng)前項(xiàng)的信號(hào)可在大體相同時(shí)間傳送到每一搜索準(zhǔn)則75及76中的特征單元。輸入導(dǎo)體37中的每一者橫跨搜索準(zhǔn)則75及76兩者。因此,在一些實(shí)施例中, 搜索準(zhǔn)則75及76兩者可大體同時(shí)評(píng)估當(dāng)前項(xiàng)。相信此加速對(duì)搜索準(zhǔn)則的評(píng)估。其它實(shí)施例可包含經(jīng)配置以并行評(píng)估更多搜索準(zhǔn)則的更多特征單元。舉例來說,一些實(shí)施例可包含并行操作的100、500、1000、5000或10,000個(gè)以上的特征單元。這些特征單元可大體同時(shí)評(píng)估數(shù)百個(gè)或數(shù)千個(gè)搜索準(zhǔn)則。具有不同數(shù)目的搜索項(xiàng)的搜索準(zhǔn)則可通過將更多或更少特征單元分配到所述搜索準(zhǔn)則形成。簡單搜索準(zhǔn)則可比復(fù)雜搜索準(zhǔn)則消耗更少的特征單元形式的資源。相信此相對(duì)于具有大量大體相同核心的處理器(全部經(jīng)配置以評(píng)估復(fù)雜搜索準(zhǔn)則)降低型式辨識(shí)處理器14(圖幻的成本。圖10到圖12描繪更復(fù)雜搜索準(zhǔn)則的實(shí)例及激活路由矩陣36的特征兩者。激活路由矩陣36可包含多個(gè)激活路由單元78,激活路由單元的群組可與特征單元63、64、66、80、 82,84及86中的每一者相關(guān)聯(lián)。舉例來說,所述特征單元中的每一者可包含5個(gè)、10個(gè)、20 個(gè)、50個(gè)或更多個(gè)激活路由單元78。激活路由單元78可經(jīng)配置以在先前搜索項(xiàng)得到匹配時(shí)將激活信號(hào)傳輸?shù)剿阉鳒?zhǔn)則中的下一搜索項(xiàng)。激活路由單元78可經(jīng)配置以將激活信號(hào)路由到鄰近特征單元或同一特征單元內(nèi)的其它激活路由單元78。激活路由單元78可包含指示哪些特征單元對(duì)應(yīng)于搜索準(zhǔn)則中的下一搜索項(xiàng)的存儲(chǔ)器。如圖10到圖12所圖解說明,辨識(shí)模塊22可經(jīng)配置以根據(jù)比指定單個(gè)詞的準(zhǔn)則復(fù)雜的搜索準(zhǔn)則進(jìn)行搜索。舉例來說,辨識(shí)模塊22可經(jīng)配置以搜索以前綴88開始且以兩個(gè)字尾90或92中的一者結(jié)束的詞。所圖解說明的搜索準(zhǔn)則指定依序以字母“C”及“1”開始且以字母序列“ap”或字母序列“oud”結(jié)束的詞。此為指定多個(gè)目標(biāo)表達(dá)(例如,詞“clap” 或詞“cloud”)的搜索準(zhǔn)則的實(shí)例。在圖10中,數(shù)據(jù)流12將字母“C”呈現(xiàn)給辨識(shí)模塊22,且特征單元63既是活動(dòng)的又檢測(cè)到匹配。作為響應(yīng),激活路由矩陣36可激活下一特征單元64。激活路由矩陣36也可維持特征單元63的活動(dòng)狀態(tài),因?yàn)樘卣鲉卧?3為搜索準(zhǔn)則中的第一搜索項(xiàng)。在圖11中,數(shù)據(jù)流12呈現(xiàn)字母“1”,且特征單元64辨識(shí)到匹配且是活動(dòng)的。作為響應(yīng),激活路由矩陣36可將激活信號(hào)傳輸?shù)降谝蛔治?0的第一特征單元66及第二字尾 92的第一特征單元82兩者。在其它實(shí)例中,可激活更多字尾,或多個(gè)前綴可對(duì)一個(gè)或一個(gè)以上字尾有作用。接下來,如圖12所圖解說明,數(shù)據(jù)流12將字母“0”呈現(xiàn)給辨識(shí)模塊22,且第二字尾92的特征單元82檢測(cè)到匹配且是活動(dòng)的。作為響應(yīng),激活路由矩陣36可激活第二字尾 92的下一特征單元84。搜索第一字尾90可在允許特征單元66變成不活動(dòng)時(shí)停止。圖10 到圖12所圖解說明的步驟可繼續(xù)經(jīng)過字母“U”及“d”,或搜索可停止直到下一次前綴88得到匹配為止。圖13圖解說明具有型式辨識(shí)總線96及存儲(chǔ)器總線98的系統(tǒng)94的實(shí)施例。型式辨識(shí)總線96及存儲(chǔ)器總線98可彼此類似或相同。使用類似總線可允許設(shè)計(jì)者在實(shí)施型式辨識(shí)總線96時(shí)利用其對(duì)存儲(chǔ)器總線98的知識(shí),借此促進(jìn)在系統(tǒng)94中實(shí)施型式辨識(shí)處理器 14。如果相同總線用于存儲(chǔ)器總線98與型式辨識(shí)總線96,那么這兩個(gè)裝置可存在于單個(gè)總線上,從而防止系統(tǒng)94中對(duì)額外信號(hào)的需要。在詳細(xì)描述型式辨識(shí)總線96之前,描述系統(tǒng) 94的其它方面。系統(tǒng)94可包含CPU 20、存儲(chǔ)器100、存儲(chǔ)器總線控制器102及型式辨識(shí)總線控制器104。存儲(chǔ)器總線控制器102可通過存儲(chǔ)器總線98連接到存儲(chǔ)器100且通過地址與控制總線106及數(shù)據(jù)總線108兩者連接到CPU 20。型式辨識(shí)總線控制器104可通過型式辨識(shí)總線96連接到型式辨識(shí)處理器14且通過地址與控制總線110及數(shù)據(jù)總線112連接到CPU 20。型式辨識(shí)總線控制器104可為耦合到CPU 20的單獨(dú)組件(例如,芯片),或其可集成到與CPU 20相同的組件中,例如,作為單芯片或多芯片模塊。類似地,存儲(chǔ)器總線控制器102 可為單獨(dú)組件,或其可集成到與CPU 20相同的組件中。型式辨識(shí)總線控制器104與存儲(chǔ)器總線控制器102兩者可整體地形成為同一組件,或其可為單獨(dú)組件。一些實(shí)施例可不包含存儲(chǔ)器100或存儲(chǔ)器總線控制器102,此并非暗示也不可省略本文中所描述的任一其它特征。存儲(chǔ)器100可包含各種不同類型的存儲(chǔ)器(例如,動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)), 或各種類型的非易失性存儲(chǔ)器(例如,快閃、相變存儲(chǔ)器),或硬磁盤驅(qū)動(dòng)器。存儲(chǔ)器總線控制器102可經(jīng)配置以經(jīng)由各種不同通信協(xié)議中的一者與存儲(chǔ)器100通信,所述不同通信協(xié)議例如雙數(shù)據(jù)速率同步Dram(雙數(shù)據(jù)速率(DDR)協(xié)議、DDR2協(xié)議、DDR3協(xié)議、DDR4協(xié)議)的總線修訂版中的任一者、同步DRAM (SDRAM)協(xié)議、串行十億位媒體獨(dú)立接口(SGMII)協(xié)議、 內(nèi)部集成電路(I2C)協(xié)議、串行外圍界面(SPI)協(xié)議、并行總線接口(PBI)協(xié)議、安全數(shù)字接口(SDI)協(xié)議、個(gè)人計(jì)算機(jī)存儲(chǔ)器卡協(xié)會(huì)(PCMCIA)協(xié)議、管理數(shù)據(jù)時(shí)鐘/管理數(shù)據(jù)輸入 /輸出(MDC/MDI0)協(xié)議、外圍組件互連(PCI)協(xié)議、PCI高速協(xié)議或其它通信協(xié)議。盡管在本文中將詳細(xì)描述使用DDR協(xié)議的實(shí)施,但所述通信協(xié)議中的任一協(xié)議或所有協(xié)議提供達(dá)成必要通信以傳送地址、控制、數(shù)據(jù)及狀態(tài)信息的能力。如本文中所提及,數(shù)據(jù)可包含(但不限于)1)存儲(chǔ)于型式辨識(shí)處理器中界定所追求型式辨識(shí)功能的所有方面的信息;2)常規(guī)數(shù)據(jù),例如存儲(chǔ)于存儲(chǔ)器裝置中的數(shù)據(jù);及幻發(fā)送到型式辨識(shí)處理器的數(shù)據(jù)流,從所述型式辨識(shí)處理器追求型式匹配結(jié)果。在一些通信協(xié)議中,僅存在一個(gè)物理數(shù)據(jù)總線,因此在所述通信協(xié)議內(nèi)所提供的槽中提供地址、控制、數(shù)據(jù)及狀態(tài)信息。型式辨識(shí)總線控制器104可經(jīng)配置以經(jīng)由與存儲(chǔ)器總線控制器102所使用的通信協(xié)議類似或相同的通信協(xié)議與型式辨識(shí)處理器14通信。舉例來說,型式辨識(shí)總線96可包含與存儲(chǔ)器總線98約相同數(shù)目或完全相同數(shù)目的連接。型式辨識(shí)總線控制器96可使用具有與存儲(chǔ)器總線控制器102類似或相同的計(jì)時(shí)的通信協(xié)議。舉例來說,型式辨識(shí)總線控制器104可響應(yīng)于與存儲(chǔ)器總線控制器102相同的時(shí)鐘信號(hào)進(jìn)行操作,或型式辨識(shí)總線控制器104可在時(shí)鐘信號(hào)的與存儲(chǔ)器總線控制器102相同的若干部分期間傳輸及接收數(shù)據(jù),例如,在所述時(shí)鐘信號(hào)的上升沿及下降沿期間。型式辨識(shí)總線96的物理尺寸可與存儲(chǔ)器總線 98的物理尺寸大體類似或相同。舉例來說,連接到型式辨識(shí)處理器14及存儲(chǔ)器100的引腳連接器或連接墊之間的間距可大體類似或相同。另外,使存儲(chǔ)器100與型式辨識(shí)處理器14在同一總線上可提供優(yōu)點(diǎn),例如消除從一個(gè)總線向另一總線傳遞數(shù)據(jù)所固有的延遲,例如,在PCIx總線上具有DDR3主存儲(chǔ)器100與型式辨識(shí)處理器14的計(jì)算機(jī)系統(tǒng)中,在型式辨識(shí)處理器14與主存儲(chǔ)器100之間進(jìn)行通信可存在顯著延遲;直接存儲(chǔ)器存取(DMA)更快且更容易地在同一總線上實(shí)施且可由單個(gè)共同型式辨識(shí)處理器14及/或存儲(chǔ)器控制器執(zhí)行;在單個(gè)總線的情況下,射頻干擾(RFI) 問題得到簡化;靜電放電(ESD)問題得到簡化且將較小;以單個(gè)總線生產(chǎn)印刷電路組合件 (PCA)較不昂貴(例如,PCB大小較小、消除額外控制器及額外總線的物件組件,組件插入時(shí)間減少、電源大小減小、質(zhì)量提高等);及功率使用減小(例如,由于消除額外時(shí)鐘及同步電路)。圖14圖解說明型式辨識(shí)總線96的實(shí)施例及所述實(shí)施例可如何與存儲(chǔ)器總線98 的實(shí)施例相關(guān)兩者。在此實(shí)例中,存儲(chǔ)器總線98可為DDR3總線,且型式辨識(shí)總線96可與存儲(chǔ)器總線98共享某些特征。所圖解說明的存儲(chǔ)器總線96包含與存儲(chǔ)器總線98相同數(shù)目的連接,其中添加了下文進(jìn)一步描述的輸出中斷信號(hào)114。其它實(shí)施例可包含與存儲(chǔ)器總線98相同數(shù)目的連接、與存儲(chǔ)器總線98不同數(shù)目的連接、在加或減1、2、4、6或8個(gè)連接的范圍內(nèi)連接數(shù)目相同,或以不同線速度及協(xié)議操作,但功能保持相同。地址、控制信號(hào)、數(shù)據(jù)及狀態(tài)信息映射到任一所挑選型式的總線的現(xiàn)有總線協(xié)議中。此外,型式辨識(shí)總線96的這些實(shí)施例可包含標(biāo)準(zhǔn)存儲(chǔ)器總線(例如,如果存儲(chǔ)器總線98為DDR3總線)的密切衍生物, 其消除型式辨識(shí)處理器14不使用的信號(hào)。實(shí)施例也可為型式辨識(shí)總線96為標(biāo)準(zhǔn)存儲(chǔ)器總線的“超集”的情形,以使得型式辨識(shí)總線96包含標(biāo)準(zhǔn)存儲(chǔ)器總線的所有信號(hào)且添加型式辨識(shí)處理器14所使用的信號(hào)。其它實(shí)施例可包含標(biāo)準(zhǔn)存儲(chǔ)器總線的密切衍生物的信號(hào)與標(biāo)準(zhǔn)存儲(chǔ)器總線的“超集”的信號(hào)的任一組合。型式辨識(shí)總線96上的一些信號(hào)可連接到同一引腳且發(fā)揮與存儲(chǔ)器總線98中的對(duì)應(yīng)信號(hào)相同的功能。舉例來說,時(shí)鐘信號(hào)116、時(shí)鐘啟用信號(hào)118、復(fù)位信號(hào)120、數(shù)據(jù)選通信號(hào)121及數(shù)據(jù)屏蔽信號(hào)122可在兩個(gè)總線96及98上具有同一功能及相對(duì)于總線96及 98的若干其它部分的相同位置。其它實(shí)施例可包含額外類似信號(hào)或更少類似信號(hào)。舉例來說,一些較舊的總線協(xié)議可不支持復(fù)位的信號(hào),但可將任一此種功能作為延伸添加到現(xiàn)有協(xié)議。型式辨識(shí)總線96上的一些信號(hào)可從其在存儲(chǔ)器總線98上的功能重新解釋。舉例來說,列選擇信號(hào)1 可由型式辨識(shí)處理器14解釋為總線啟用信號(hào)。行地址選通信號(hào)126、 列地址選通信號(hào)128、寫入啟用信號(hào)130及突發(fā)斬波信號(hào)132可由型式辨識(shí)處理器14解釋為型式辨識(shí)總線96上的命令解碼信號(hào)134。型式辨識(shí)總線96上的一些信號(hào)可發(fā)揮與存儲(chǔ)器總線96上的功能相同的功能或依據(jù)型式辨識(shí)處理器14的操作模式提供不同功能。舉例來說,地址信號(hào)與塊地址信號(hào)136可在型式辨識(shí)處理器14處于第一操作模式中時(shí)傳達(dá)地址數(shù)據(jù),可在型式辨識(shí)處理器14處于第二操作模式中時(shí)傳達(dá)命令解碼信號(hào),且在型式辨識(shí)處理器14處于第三操作模式中時(shí)傳達(dá)寄存器選擇信號(hào)。在另一實(shí)例中,存儲(chǔ)器總線96上的數(shù)據(jù)信號(hào)138在不同操作模式中可以不同方式解釋。當(dāng)處于第四操作模式(例如,配置模式)中時(shí),數(shù)據(jù)信號(hào)138可由型式辨識(shí)處理器14 解釋為輸入搜索準(zhǔn)則。所述搜索準(zhǔn)則可包含特征單元30(圖幻的設(shè)定(例如,存儲(chǔ)器單元 58(圖3)中所存儲(chǔ)的值、存儲(chǔ)器單元70 (圖6)中所存儲(chǔ)的值)及激活路由矩陣(圖10)的設(shè)定。所述搜索準(zhǔn)則也可包含聚合路由矩陣42 (圖幻、閾值邏輯矩陣44、邏輯積矩陣46、邏輯和矩陣48及初始化路由矩陣50的設(shè)定。型式辨識(shí)處理器14也可具有第五操作模式,例如,搜索報(bào)告模式,其中其可經(jīng)由數(shù)據(jù)信號(hào)138輸出搜索結(jié)果。在第六操作模式(例如,搜索模式)中,型式辨識(shí)處理器14可將數(shù)據(jù)信號(hào)138解釋為輸入數(shù)據(jù)流12(圖2)。輸出中斷信號(hào)114可由型式辨識(shí)處理器14響應(yīng)于數(shù)據(jù)流12(圖1)滿足搜索準(zhǔn)則而選擇。CPU 20(圖1 可響應(yīng)于通過引導(dǎo)型式辨識(shí)處理器14進(jìn)入搜索報(bào)告模式而選擇的輸出中斷信號(hào)114。一旦處于此模式中,型式辨識(shí)處理器14可經(jīng)由數(shù)據(jù)信號(hào)138輸出搜索結(jié)果。搜索結(jié)果可包含指示哪一搜索準(zhǔn)則得到滿足及來自所述數(shù)據(jù)流的哪些數(shù)據(jù)滿足所述準(zhǔn)則的數(shù)據(jù)。在所述搜索結(jié)果由CPU 20接收之后,CPU 20可引導(dǎo)型式辨識(shí)處理器14重新進(jìn)入所述搜索模式,且CPU 20可經(jīng)由數(shù)據(jù)線138將數(shù)據(jù)流12(圖1)傳輸?shù)叫褪奖孀R(shí)處理器14。其它實(shí)施例可不包含輸出中斷信號(hào)114。CPU 20可確定型式辨識(shí)處理器14是否已通過周期性地輪詢型式辨識(shí)處理器14而檢測(cè)到匹配,以確定型式辨識(shí)處理器14是否已檢測(cè)到得到滿足的準(zhǔn)則。舉例來說,可將指示匹配的數(shù)據(jù)存儲(chǔ)于型式辨識(shí)處理器14中的寄存器中,且CPU 20可讀取所述寄存器所存儲(chǔ)的值,以確定是否已檢測(cè)到匹配。圖15圖解說明經(jīng)由總線的單個(gè)部分傳輸多個(gè)類型的信號(hào)的過程140的實(shí)施例。信號(hào)類型的實(shí)例包含控制信號(hào)、地址信號(hào)、輸入數(shù)據(jù)信號(hào)、輸出數(shù)據(jù)信號(hào)、搜索準(zhǔn)則信號(hào)及時(shí)鐘信號(hào)。過程140可以在型式辨識(shí)總線的一部分上將第一類型的信號(hào)傳輸?shù)叫褪奖孀R(shí)處理器(如框142所圖解說明)而開始。在一些實(shí)施例中,所述第一類型的信號(hào)可為地址信號(hào)、 命令解碼信號(hào)、寄存器選擇信號(hào)、輸入搜索準(zhǔn)則信號(hào)、輸出搜索準(zhǔn)則信號(hào)或輸入數(shù)據(jù)流。接下來,可改變所述型式辨識(shí)處理器的模式,如框144所圖解說明??身憫?yīng)于準(zhǔn)則的滿足或其它事件而通過某一其它組件(例如,CPU 20(圖13))所發(fā)送的信號(hào)或通過型式辨識(shí)處理器14(圖1 來改變所述模式??赏ㄟ^改變型式辨識(shí)處理器14中的寄存器中所存儲(chǔ)的值來改變所述型式辨識(shí)處理器的模式。接下來,可在所述型式辨識(shí)總線的所述部分上傳輸?shù)诙愋偷男盘?hào),如框146所圖解說明。傳輸所述第二類型的信號(hào)可包含傳輸上文所描述類型的信號(hào)中不同于第一類型的信號(hào)的一者。傳輸?shù)姆较蚩膳c框142所描述的傳輸?shù)姆较蛳嗤?,或所述方向可不同。舉例來說,可在框142所描述的傳輸期間將輸入數(shù)據(jù)流傳輸?shù)叫褪奖孀R(shí)處理器14 (圖14),且可在所述總線的相同部分(例如,數(shù)據(jù)信號(hào)138)上從型式辨識(shí)處理器14傳輸輸出搜索結(jié)相信在不同操作模式期間在同一總線部分上傳輸不同信號(hào)類型相對(duì)于針對(duì)每一信號(hào)類型具有單獨(dú)信號(hào)路徑的總線減小型式辨識(shí)總線96上信號(hào)路徑的數(shù)目。相信共享信號(hào)路徑允許使型式辨識(shí)總線96更類似于上文所描述的存儲(chǔ)器總線98,相信此簡化型式辨識(shí)處理器的實(shí)施。雖然本發(fā)明可容許有各種修改及替代形式,但具體實(shí)施例已以實(shí)例方式顯示于圖式中并已詳細(xì)描述于本文中。然而,應(yīng)理解,本發(fā)明并非打算限定于所揭示的特定形式。相反,本發(fā)明將涵蓋歸屬于如以上所附權(quán)利要求書所界定的本發(fā)明的精神及范圍內(nèi)的所有修改形式、等效形式及替代形式。
權(quán)利要求
1.一種系統(tǒng),其包括型式辨識(shí)處理器;處理單元(PU),其經(jīng)由型式辨識(shí)總線耦合到所述型式辨識(shí)處理器;及存儲(chǔ)器,其經(jīng)由存儲(chǔ)器總線耦合到所述PU,其中所述型式辨識(shí)總線與所述存儲(chǔ)器總線分別形成去往所述型式辨識(shí)處理器及所述存儲(chǔ)器的約相同數(shù)目的連接。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述型式辨識(shí)總線比所述存儲(chǔ)器總線形成至少一個(gè)多出的連接。
3.根據(jù)權(quán)利要求2所述的系統(tǒng),其中所述一個(gè)多出的連接為輸出中斷信號(hào)。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述型式辨識(shí)總線及所述存儲(chǔ)器總線上的多個(gè)對(duì)應(yīng)連接中的每一者在兩個(gè)總線上用于同一相應(yīng)功能。
5.根據(jù)權(quán)利要求4所述的系統(tǒng),其中在兩個(gè)總線上用于所述同一功能的所述多個(gè)對(duì)應(yīng)連接包含芯片啟用信號(hào)及時(shí)鐘信號(hào)。
6.根據(jù)權(quán)利要求4所述的系統(tǒng),其中在兩個(gè)總線上用于所述同一功能的所述多個(gè)對(duì)應(yīng)連接包含數(shù)據(jù)選通信號(hào)及數(shù)據(jù)屏蔽信號(hào)。
7.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述存儲(chǔ)器總線為雙數(shù)據(jù)速率2存儲(chǔ)器總線。
8.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述型式辨識(shí)總線的一部分基于所述型式辨識(shí)處理器的操作模式而用于至少一個(gè)不同功能。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述至少一個(gè)不同功能包含地址、命令及寄存器選擇。
10.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述至少一個(gè)不同功能包含搜索準(zhǔn)則、輸出搜索結(jié)果及輸入數(shù)據(jù)。
11.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述型式辨識(shí)處理器及PU為單獨(dú)組件。
12.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述型式辨識(shí)處理器集成到與所述PU相同的組件中。
13.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述輸出搜索結(jié)果包括一個(gè)或一個(gè)以上搜索準(zhǔn)則中的哪一者得到滿足及來自所述輸入數(shù)據(jù)的哪些數(shù)據(jù)滿足所述一個(gè)或一個(gè)以上搜索準(zhǔn)則。
14.一種方法,其包括在型式辨識(shí)總線的一部分上將第一類型的信號(hào)傳輸?shù)叫褪奖孀R(shí)處理器;改變所述型式辨識(shí)處理器的模式;及在所述型式辨識(shí)總線的所述部分上傳輸?shù)诙愋偷男盘?hào)。
15.根據(jù)權(quán)利要求14所述的方法,其中傳輸所述第一類型的信號(hào)包括傳輸?shù)刂贰?br>
16.根據(jù)權(quán)利要求15所述的方法,其中傳輸所述第二類型的信號(hào)包括傳輸命令信號(hào)或寄存器選擇信號(hào)。
17.根據(jù)權(quán)利要求14所述的方法,其中傳輸所述第一類型的信號(hào)包括傳輸搜索準(zhǔn)則信號(hào),且其中改變所述型式辨識(shí)處理器的所述模式包括從配置模式改變所述型式辨識(shí)處理器的所述模式。
18.根據(jù)權(quán)利要求17所述的方法,其中傳輸所述第二類型的信號(hào)包括傳輸待由所述型式辨識(shí)處理器搜索的數(shù)據(jù)流,且其中改變所述型式辨識(shí)處理器的所述模式包括將所述型式辨識(shí)處理器的所述模式改變?yōu)樗阉髂J健?br>
19.根據(jù)權(quán)利要求14所述的方法,其中傳輸所述第一類型的信號(hào)包括傳輸待由所述型式辨識(shí)處理器搜索的數(shù)據(jù)流。
20.根據(jù)權(quán)利要求19所述的方法,其中改變所述型式辨識(shí)處理器的所述模式包括將所述型式辨識(shí)處理器的所述模式改變?yōu)樗阉鲌?bào)告模式。
21.根據(jù)權(quán)利要求20所述的方法,其中傳輸所述第二類型的信號(hào)包括從所述型式辨識(shí)處理器傳輸搜索結(jié)果信號(hào)。
22.根據(jù)權(quán)利要求20所述的方法,其中將所述型式辨識(shí)處理器的所述模式改變?yōu)樗阉鲌?bào)告模式包括檢測(cè)正在搜索的數(shù)據(jù)流已滿足搜索準(zhǔn)則;將輸出中斷信號(hào)傳輸?shù)絇U;及從所述PU接收進(jìn)入所述搜索報(bào)告模式的命令。
23.根據(jù)權(quán)利要求20所述的方法,其中將所述型式辨識(shí)處理器的所述模式改變?yōu)樗阉鲌?bào)告模式包括檢測(cè)正在搜索的數(shù)據(jù)流已滿足搜索準(zhǔn)則;存儲(chǔ)指示所述搜索準(zhǔn)則是否已得到滿足的值;將指示所述值的信號(hào)傳輸?shù)絇U ;及從所述PU接收進(jìn)入所述搜索報(bào)告模式的命令。
24.根據(jù)權(quán)利要求14所述的方法,其包括響應(yīng)于事件而改變所述型式辨識(shí)處理器的所述模式。
25.根據(jù)權(quán)利要求M所述的方法,其中所述事件包括搜索準(zhǔn)則的滿足。
26.—種系統(tǒng),其包括型式辨識(shí)處理器,其經(jīng)配置以按照與在經(jīng)由存儲(chǔ)器總線接收到時(shí)由存儲(chǔ)器解釋第一部分信號(hào)的相同方式來解釋經(jīng)由型式辨識(shí)總線接收的所述第一部分信號(hào)。
27.根據(jù)權(quán)利要求沈所述的系統(tǒng),其中所述型式辨識(shí)處理器經(jīng)配置以按照與在經(jīng)由所述存儲(chǔ)器總線接收到時(shí)由所述存儲(chǔ)器解釋第二部分信號(hào)的不同方式來解釋經(jīng)由所述型式辨識(shí)總線接收的所述第二部分信號(hào)。
28.根據(jù)權(quán)利要求沈所述的系統(tǒng),其中所述型式辨識(shí)處理器經(jīng)配置以依據(jù)所述型式辨識(shí)處理器的模式而按照與在經(jīng)由所述存儲(chǔ)器總線接收到時(shí)由所述存儲(chǔ)器解釋第三部分信號(hào)的相同方式及按照與在經(jīng)由所述存儲(chǔ)器總線接收到時(shí)由所述存儲(chǔ)器解釋所述第三部分信號(hào)的不同方式兩者來解釋經(jīng)由所述型式辨識(shí)總線接收的所述第三部分信號(hào)。
29.根據(jù)權(quán)利要求沈所述的系統(tǒng),其包括CPU,所述CPU經(jīng)由所述型式辨識(shí)總線耦合到所述型式辨識(shí)處理器。
30.根據(jù)權(quán)利要求四所述的系統(tǒng),其包括型式辨識(shí)總線控制器,所述型式辨識(shí)總線控制器經(jīng)由控制總線及數(shù)據(jù)總線耦合到所述CPU且經(jīng)由所述型式辨識(shí)總線耦合到所述型式辨識(shí)處理器。
31.根據(jù)權(quán)利要求30所述的系統(tǒng),其包括存儲(chǔ)器總線控制器,所述存儲(chǔ)器總線控制器經(jīng)由所述存儲(chǔ)器總線耦合到所述存儲(chǔ)器。
32.根據(jù)權(quán)利要求四所述的系統(tǒng),其中所述型式辨識(shí)處理器及所述CPU為單獨(dú)組件。
33.根據(jù)權(quán)利要求四所述的系統(tǒng),其中所述型式辨識(shí)處理器與所述CPU集成為單個(gè)組件。
34.根據(jù)權(quán)利要求31所述的系統(tǒng),其中所述存儲(chǔ)器總線控制器及所述型式辨識(shí)總線控制器為單獨(dú)組件。
35.根據(jù)權(quán)利要求31所述的系統(tǒng),其中所述存儲(chǔ)器總線控制器與所述型式辨識(shí)總線控制器集成為單個(gè)組件。
36.根據(jù)權(quán)利要求31所述的系統(tǒng),其中所述型式辨識(shí)總線控制器經(jīng)配置以通過至少類似于所述存儲(chǔ)器總線控制器所使用的通信協(xié)議的通信協(xié)議與所述型式辨識(shí)處理器通信。
37.根據(jù)權(quán)利要求沈所述的系統(tǒng),其中所述型式辨識(shí)總線包括與所述存儲(chǔ)器總線約相同數(shù)目的連接。
38.根據(jù)權(quán)利要求沈所述的系統(tǒng),其中所述型式辨識(shí)總線包括與所述存儲(chǔ)器總線約相同的物理尺寸。
39.一種方法,其包括在型式辨識(shí)總線的一部分上于型式辨識(shí)處理器與處理單元之間傳輸多個(gè)不同類型的信號(hào),其中所述多個(gè)不同類型的信號(hào)中的每一者與所述型式辨識(shí)處理器的不同模式相關(guān)聯(lián)。
40.根據(jù)權(quán)利要求39所述的方法,其中所述型式辨識(shí)處理器經(jīng)配置以響應(yīng)于所述型式辨識(shí)處理器的所述模式的改變而以不同方式解釋所述型式辨識(shí)總線的所述部分上的信號(hào)。
41.根據(jù)權(quán)利要求39所述的方法,其中所述多個(gè)不同類型的信號(hào)包括三個(gè)不同類型的信號(hào)。
42.根據(jù)權(quán)利要求39所述的方法,其中所述多個(gè)不同類型的信號(hào)包括地址信號(hào)、控制信號(hào)、狀態(tài)信號(hào)或其組合。
43.根據(jù)權(quán)利要求42所述的方法,其中所述多個(gè)不同類型的信號(hào)包括寄存器選擇信號(hào)。
44.根據(jù)權(quán)利要求39所述的方法,其中傳輸所述多個(gè)不同類型的信號(hào)包括當(dāng)處于搜索模式中時(shí)將待由所述型式辨識(shí)處理器搜索的數(shù)據(jù)流傳輸?shù)剿鲂褪奖孀R(shí)處理器且當(dāng)處于報(bào)告模式中時(shí)從所述型式辨識(shí)處理器傳輸搜索結(jié)果信號(hào)。
全文摘要
本發(fā)明揭示方法及系統(tǒng),其中一種系統(tǒng)(94)包含型式辨識(shí)處理器(14);中央處理單元(CPU)(20),其經(jīng)由型式辨識(shí)總線(96)耦合到所述型式辨識(shí)處理器(14);及存儲(chǔ)器(100),其經(jīng)由存儲(chǔ)器總線(98)耦合到所述CPU(20)。在一些實(shí)施例中,所述型式辨識(shí)總線(96)與所述存儲(chǔ)器總線(98)分別形成去往所述型式辨識(shí)處理器(14)及所述存儲(chǔ)器(100)的約相同數(shù)目的連接。
文檔編號(hào)G06K9/00GK102272776SQ200980154032
公開日2011年12月7日 申請(qǐng)日期2009年12月16日 優(yōu)先權(quán)日2009年1月7日
發(fā)明者J·托馬斯·帕夫洛夫斯基 申請(qǐng)人:美光科技公司