用于提供由狀態(tài)機引擎接收的數(shù)據(jù)的方法及設(shè)備的制造方法
【專利說明】
[0001] 相關(guān)申請案奪叉參考
[0002] 本申請案是于2013年3月15日提出申請的美國專利申請案第61/788,364號的 非臨時申請案。
技術(shù)領(lǐng)域
[0003] 本發(fā)明的實施例大體來說涉及電子裝置,且更具體來說在某些實施例中涉及具有 用于數(shù)據(jù)分析的平行裝置的電子裝置。
【背景技術(shù)】
[0004] 復(fù)雜數(shù)據(jù)分析(例如,型式辨識)在基于馮諾依曼(von Neumann)的常規(guī)計算機 上執(zhí)行起來效率低下。然而,生物大腦,特定來說人類大腦擅長執(zhí)行復(fù)雜數(shù)據(jù)分析。當(dāng)前研 究表明,人類大腦使用新皮質(zhì)中的一系列以分層方式組織的神經(jīng)元層來執(zhí)行數(shù)據(jù)分析。分 層的較低層中的神經(jīng)元分析來自(舉例來說)感覺器官的"原始信號",而較高層中的神經(jīng) 元分析來自較低層級中的神經(jīng)元的信號輸出。新皮質(zhì)中的此分層系統(tǒng),可能與大腦的其它 區(qū)域組合,實現(xiàn)復(fù)雜數(shù)據(jù)分析,此使得人類能夠執(zhí)行高級功能,例如空間推理、意識思考及 復(fù)雜語言。
[0005] 在計算領(lǐng)域中,舉例來說,型式辨識任務(wù)越來越具有挑戰(zhàn)性。計算機之間發(fā)射不斷 變大的數(shù)據(jù)量,且用戶希望檢測的型式的數(shù)目日益增加。舉例來說,通常通過搜索數(shù)據(jù)流中 的型式(例如,代碼的特定短語或片段)來檢測垃圾郵件或惡意軟件。型式數(shù)目隨垃圾郵 件及惡意軟件的多樣化而增加,這是因為可實施新型式以搜索新變體。針對這些型式中的 每一者搜索數(shù)據(jù)流可形成計算瓶頸。通常,在接收到數(shù)據(jù)流時,針對每一型式一次一個地搜 索數(shù)據(jù)流。在系統(tǒng)準備搜索數(shù)據(jù)流的下一部分之前的延遲隨型式數(shù)目而增加。因此,型式 辨識可使數(shù)據(jù)的接收減慢。
[0006] 已設(shè)計用以針對型式搜索數(shù)據(jù)流的硬件,但此硬件通常不能夠在給定的時間量中 處理充分數(shù)據(jù)量。經(jīng)配置以搜索數(shù)據(jù)流的某些裝置通過在多個電路當(dāng)中分布數(shù)據(jù)流來搜索 數(shù)據(jù)流。所述電路各自確定所述數(shù)據(jù)流是否匹配型式的一部分。通常,大量電路并行操作, 每一者在大體相同時間搜索數(shù)據(jù)流。然而,尚不存在實際上允許以更相當(dāng)于生物大腦的方 式的方式執(zhí)行復(fù)雜數(shù)據(jù)分析的系統(tǒng)。此系統(tǒng)的開發(fā)是合意的。
【附圖說明】
[0007] 圖1圖解說明根據(jù)本發(fā)明的各種實施例的具有狀態(tài)機引擎的系統(tǒng)的實例。
[0008] 圖2圖解說明根據(jù)本發(fā)明的各種實施例的圖1的狀態(tài)機引擎的有限狀態(tài)機(FSM) 點陣的實例。
[0009] 圖3圖解說明根據(jù)本發(fā)明的各種實施例的圖2的FSM點陣的塊的實例。
[0010] 圖4圖解說明根據(jù)本發(fā)明的各種實施例的圖3的塊的行的實例。
[0011] 圖5圖解說明根據(jù)本發(fā)明的各種實施例的圖4的行中的兩個一群組的實例。
[0012] 圖6圖解說明根據(jù)本發(fā)明的各種實施例的有限狀態(tài)機圖的實例。
[0013] 圖7圖解說明根據(jù)本發(fā)明的各種實施例的實施有FSM點陣的兩層級分層的實例。
[0014] 圖8圖解說明根據(jù)本發(fā)明的各種實施例的用于編譯器將源代碼轉(zhuǎn)換成用于編程 圖2的FSM點陣的二進制文件的方法的實例。
[0015] 圖9圖解說明根據(jù)本發(fā)明的各種實施例的狀態(tài)機引擎。
[0016] 圖10圖解說明根據(jù)本發(fā)明的各種實施例的布置成一排裝置的多個物理狀態(tài)機引 擎的實例。
[0017] 圖11圖解說明根據(jù)本發(fā)明的各種實施例的待提供到狀態(tài)機引擎的分組成數(shù)據(jù)塊 的數(shù)據(jù)分段的實例。
[0018] 圖12圖解說明根據(jù)本發(fā)明的各種實施例的插入于圖11的數(shù)據(jù)塊的數(shù)據(jù)分段之間 的數(shù)據(jù)填補的實例。
[0019] 圖13圖解說明根據(jù)本發(fā)明的各種實施例的在圖12的數(shù)據(jù)塊的數(shù)據(jù)分段之后插入 的數(shù)據(jù)填補的實例。
[0020] 圖14圖解說明根據(jù)本發(fā)明的各種實施例的經(jīng)組織用于發(fā)射到狀態(tài)機引擎的數(shù)據(jù) 緩沖器系統(tǒng)的圖13的數(shù)據(jù)塊的實例。
[0021] 圖15圖解說明根據(jù)本發(fā)明的各種實施例的布置成一排裝置且通過排間(IR)總線 與過程緩沖器接口耦合在一起的多個物理狀態(tài)機引擎的實例。
[0022] 圖16圖解說明根據(jù)本發(fā)明的各種實施例的耦合到多個物理狀態(tài)機引擎的IR總線 與過程緩沖器接口的信號的實例。
[0023] 圖17圖解說明根據(jù)本發(fā)明的各種實施例的IR總線與過程緩沖器接口的信號的時 序圖的實例。
[0024] 圖18圖解說明根據(jù)本發(fā)明的各種實施例的存儲于組織成多個邏輯群組的多個物 理狀態(tài)機引擎的數(shù)據(jù)緩沖器中的數(shù)據(jù)的實例。
[0025] 圖19圖解說明根據(jù)本發(fā)明的各種實施例的存儲于組織成多個邏輯群組的多個物 理狀態(tài)機引擎的過程緩沖器中的數(shù)據(jù)的實例。
[0026] 圖20圖解說明根據(jù)本發(fā)明的各種實施例的組織成一個邏輯群組的多個物理狀態(tài) 機引擎的數(shù)據(jù)緩沖器中的數(shù)據(jù)的實例。
[0027] 圖21圖解說明根據(jù)本發(fā)明的各種實施例的存儲于組織成一個邏輯群組的多個物 理狀態(tài)機引擎的過程緩沖器中的數(shù)據(jù)的實例。
【具體實施方式】
[0028] 現(xiàn)在翻到圖,圖1圖解說明基于處理器的系統(tǒng)(通常由參考編號10指定)的實 施例。系統(tǒng)1〇(例如,數(shù)據(jù)分析系統(tǒng))可為多種類型中的任一者,例如桌上型計算機、膝上 型計算機、傳呼機、蜂窩式電話、個人記事薄、便攜式音頻播放器、控制電路、相機等。系統(tǒng) 10還可為網(wǎng)絡(luò)節(jié)點,例如路由器、服務(wù)器或客戶端(例如,先前所描述類型的計算機中的一 者)。系統(tǒng)10可為某一其它類別的電子裝置,例如,復(fù)印機、掃描儀、打印機、游戲控制臺、電 視機、機上視頻分布或記錄系統(tǒng)、有線電視盒、個人數(shù)字媒體播放器、工廠自動化系統(tǒng)、汽車 計算機系統(tǒng)或醫(yī)療裝置。(用以描述系統(tǒng)的這些各種實例的術(shù)語(如同本文中所使用的許 多其它術(shù)語)可共享一些參照物,且因此不應(yīng)狹隘地憑借所列舉的其它項目來理解)。
[0029] 在典型基于處理器的裝置(例如,系統(tǒng)10)中,例如微處理器的處理器12控制系 統(tǒng)10中的系統(tǒng)功能及請求的處理。此外,處理器12可包括共享系統(tǒng)控制的多個處理器。處 理器12可直接或間接耦合到系統(tǒng)10中的元件中的每一者,使得處理器12通過執(zhí)行可存儲 于系統(tǒng)10內(nèi)或在系統(tǒng)10外部的指令來控制系統(tǒng)10。
[0030] 根據(jù)本文中所描述的實施例,系統(tǒng)10包含可在處理器12的控制下操作的狀態(tài)機 引擎14。如本文中所使用,狀態(tài)機引擎14是指單個裝置(例如,單個芯片)。狀態(tài)機引擎14 可采用任何自動機理論。舉例來說,狀態(tài)機引擎14可采用若干個狀態(tài)機架構(gòu)中的一者,包 含但不限于米利(Mealy)架構(gòu)、摩爾(Moore)架構(gòu)、有限狀態(tài)機(FSM)、確定性FSM(DFSM)、 位并行狀態(tài)機(BPSM)等。盡管可使用多種架構(gòu),但出于論述目的,本申請案是指FSM。然 而,所屬領(lǐng)域的技術(shù)人員將了解,可使用多種狀態(tài)機架構(gòu)中的任一者來采用所描述技術(shù)。
[0031] 如下文進一步論述,狀態(tài)機引擎14可包含若干個(例如,一或多個)有限狀態(tài)機 (FSM)點陣(例如,狀態(tài)機引擎14的核心)。出于本申請案的目的,術(shù)語"點陣"是指元件 (例如,布林(Boolean)單元、計數(shù)器單元、狀態(tài)機元件、狀態(tài)轉(zhuǎn)變元件)的組織框架(例如, 路由矩陣、路由網(wǎng)絡(luò)、幀)。此外,"點陣"可具有任何適合形狀、結(jié)構(gòu)或分層組織(例如,柵 格、立方體、球面、級聯(lián))。每一 FSM點陣可實施各自并行接收及分析相同數(shù)據(jù)的多個FSM。 此外,F(xiàn)SM點陣可布置成群組(例如,群集),使得FSM點陣的群集可并行分析相同輸入數(shù) 據(jù)。此外,狀態(tài)機引擎14的FSM點陣的群集可布置成分層結(jié)構(gòu),其中來自分層結(jié)構(gòu)的較低 層級上的狀態(tài)機點陣的輸出可用作較高層級上的狀態(tài)機點陣的輸入。通過經(jīng)由分層結(jié)構(gòu)串 聯(lián)級聯(lián)狀態(tài)機引擎14的平行FSM點陣的群集,可分析(例如,評估、搜索等)越來越復(fù)雜的 型式。
[0032] 此外,基于狀態(tài)機引擎14的分層平行配置,狀態(tài)機引擎14可用于利用高處理速度 的系統(tǒng)中的復(fù)雜數(shù)據(jù)分析(例如,型式辨識)。舉例來說,本文中所描述的實施例可并入于 具有處理速度1千兆字節(jié)/秒的系統(tǒng)中。因此,利用狀態(tài)機引擎14,可快速分析來自高速 存儲器裝置或其它外部裝置的數(shù)據(jù)。狀態(tài)機引擎14可大約同時(例如,在單個裝置循環(huán)期 間)根據(jù)數(shù)個準則(例如,搜索項)分析數(shù)據(jù)流。狀態(tài)機引擎14的層級上的FSM群集內(nèi) 的FSM點陣中的每一者可各自大約同時從數(shù)據(jù)流接收相同搜索項,且平行FSM點陣中的每 一者可確定所述項是否使?fàn)顟B(tài)機引擎14前進到處理準則中的下一狀態(tài)。狀態(tài)機引擎14可 根據(jù)相對大數(shù)目的準則(例如,100個以上、1000個以上或10, 〇〇〇個以上)來分析項。由 于其并行操作,因此其可將準則應(yīng)用于具有相對高帶寬的數(shù)據(jù)流(例如,大于或大體等于1 千兆字節(jié)/秒的數(shù)據(jù)流)而不使數(shù)據(jù)流減慢。
[0033] 在一個實施例中,狀態(tài)機引擎14可經(jīng)配置以辨識(例如,檢測)數(shù)據(jù)流中的大量 型式。舉例來說,狀態(tài)機引擎14可用于檢測用戶或其它實體可希望分析的多種類型的數(shù)據(jù) 流中的一或多者中的型式。舉例來說,狀態(tài)機引擎14可經(jīng)配置以分析經(jīng)由網(wǎng)絡(luò)接收的數(shù)據(jù) 流,例如,經(jīng)由因特網(wǎng)接收的包或經(jīng)由蜂窩式網(wǎng)絡(luò)接收的語音或數(shù)據(jù)。在一個實例中,狀態(tài) 機引擎14可經(jīng)配置以對數(shù)據(jù)流進行垃圾郵件或惡意軟件方面分析。數(shù)據(jù)流可作為串行數(shù) 據(jù)流接收,其中數(shù)據(jù)是以具有意義的次序(例如,以在時間上、在詞法上或在語義上有效的 次序)被接收?;蛘撸瑪?shù)據(jù)流可并行地或無序地被接收,且接著(例如)通過重新排序經(jīng)由 因特網(wǎng)接收的包而轉(zhuǎn)換成串行數(shù)據(jù)流。在一些實施例中,數(shù)據(jù)流可以串行方式呈現(xiàn)項,但表 達所述項中的每一者的位可并行地被接收。數(shù)據(jù)流可從系統(tǒng)10外部的源接收,或可通過訊 問存儲器裝置(例如存儲器16)并由存儲于存儲器16中的數(shù)據(jù)形成數(shù)據(jù)流來形成。在其 它實例中,狀態(tài)機引擎14可經(jīng)配置以辨識拼寫某一字的字符序列、規(guī)定基因的遺傳堿基對 序列、形成圖像的一部分的圖片或視頻文件中的位序列、形成程序的一部分的可執(zhí)行文件 中的位序列或形成歌曲或口語短語的一部分的音頻文件中的位序列。待分析的數(shù)據(jù)流可包 含呈二進制格式或其它格式(例如,十進制、ASCII等)的多個數(shù)據(jù)位。所述流可對具有單 個數(shù)字或多個數(shù)字(例如,數(shù)個二進制數(shù)字)的數(shù)據(jù)進行編碼。
[0034] 如將了解,系統(tǒng)10可包含存儲器16。存儲器16可包含易失性存儲器,例如動態(tài) 隨機存取存儲器(DRAM)、靜態(tài)隨機存取存儲器(SRAM)、同步DRAM(SDRAM)、雙倍數(shù)據(jù)速率 DRAM(DDR SDRAM)、DDR2SDRAM、DDR3SDRAM等。存儲器16還可包含非易失性存儲器,例如只 讀存儲器(ROM)、PC-RAM、硅-氧化物-氮化物-氧化物-硅(SONOS)存儲器、金屬-氧化 物-氮化物-氧化物-硅(MONOS)金屬、基于多晶硅浮動?xùn)艠O的存儲器及/或其它類型的 各種架構(gòu)的快閃存儲器(例如,NAND存儲器、NOR存儲器等)以結(jié)合易失性存儲器使用。存 儲器16可包含可提供待由狀態(tài)機引擎14分析的數(shù)據(jù)的一或多個存儲器裝置,例如DRAM裝 置。如本文中所使用,術(shù)語"提供"可通常指引導(dǎo)、輸入、插入、發(fā)送、傳送、發(fā)射、產(chǎn)生、賦予、 輸出、放置、寫入等。此類裝置可稱作或包含固態(tài)驅(qū)動器(SSD)、多媒體卡(MMC)、安全數(shù)字 (SD)卡、緊湊型快閃(CF)卡或任何其它適合裝置。此外,應(yīng)了解,此類裝置可經(jīng)由任何適 合接口(例如通用串行總線(USB)、外圍組件互連(PCI)、快速PCI (PCI-E)、小型計算機系 統(tǒng)接口(SCSI)、IEEE 1394(火線)或任何其它適合接口)耦合到系統(tǒng)10。為促進存儲器 16 (例如快閃存儲器裝置)的操作,系統(tǒng)10可包含存儲器控制器(未圖解說明)。如將了 解,存儲器控制器可為獨立裝置或其可與處理器12成整體。另外,系統(tǒng)10可包含外部存儲 裝置18,例如磁性存儲裝置。外部存儲裝置還可將輸入數(shù)據(jù)提供到狀態(tài)機引擎14。
[0035] 系統(tǒng)10可包含若干個額外元件。舉例來說,編譯器20可用于配置(例如,編程) 狀態(tài)機引擎14,如關(guān)于圖8更詳細描述。輸入裝置22還可耦合到處理器12以允許用戶將 數(shù)據(jù)輸入到系統(tǒng)10中。舉例來說,輸入裝置22可用于將數(shù)據(jù)輸入到存儲器16中以用于由 狀態(tài)機引擎14進行的稍后分析。舉例來說,輸入裝置22可包含按鈕、切換元件、鍵盤、光筆、 手寫筆、鼠標(biāo)及/或語音辨識系統(tǒng)。例如顯示器的輸出裝置24還可耦合到處理器12。舉 例來說,顯示器24可包含IXD、CRT、LED及/或音頻顯示器。所述系統(tǒng)還可包含用于與網(wǎng) 絡(luò)(例如因特網(wǎng))介接的網(wǎng)絡(luò)接口裝置26,例如網(wǎng)絡(luò)接口卡(NIC)。如將了解,系統(tǒng)10可 包含許多其它組件,取決于系統(tǒng)10的應(yīng)用。
[0036] 圖2到5圖解說明FSM點陣30的實例。在實例中,F(xiàn)SM點陣30包括塊32的陣列。 如將描述,每一塊32可包含對應(yīng)于FSM中的多個狀態(tài)的多個可選擇性耦合的硬件元件(例 如,可配置元件及/或?qū)S迷?。類似于FSM中的狀態(tài),硬件元件可分析輸入流并基于所 述輸入流激活下游硬件元件。
[0037] 可配置元件可經(jīng)配置(例如,編程)以實施許多不同功能。舉例來說,可配置元件 可包含以分層方式組織成行38 (圖3及4中所展示)及塊32 (圖2及3中所展示)的狀態(tài) 機元件(SME)34、36(圖5中所展示)。SME還可視為狀態(tài)轉(zhuǎn)變元件(STE)。為了在以分層 方式組織的SME 34、36之間路由信號,可使用可配置切換元件的分層,包含塊間切換元件 40(圖2及3中所展示)、塊內(nèi)切換元件42(圖3及4中所展示)及行內(nèi)切換元件44(圖4 中所展示)。
[0038] 如下文所描述,切換元件可包含路由結(jié)構(gòu)及緩沖器。SME 34、36可對應(yīng)于FSM點陣 30所實施的FSM的狀態(tài)??赏ㄟ^使用如下文所描述的可配置切換元件將SME 34、36耦合在 一起。因此,可通過配置SME 34、36以對應(yīng)于狀態(tài)的功能且通過選擇性地將SME 34、36耦 合在一起以對應(yīng)于FSM中的狀態(tài)之間的轉(zhuǎn)變而在FSM點陣30上實施FSM。
[0039] 圖2圖解說明FSM點陣30的實例的整體視圖。FSM點陣30包含可與可配置塊間 切換元件40選擇性地耦合在一起的多個塊32。塊間切換元件40可包含導(dǎo)體46 (例如,導(dǎo) 線、跡線等)及緩沖器48及50。在實例中,緩沖器48及50經(jīng)包含以控制信號去往/來自 塊間切換元件40的連接及時序。如下文進一步所描述,緩沖器48可經(jīng)提供以緩沖在塊32 之間發(fā)送的數(shù)據(jù),而緩沖器50可經(jīng)提供以緩沖在塊間切換元件40之間發(fā)送的數(shù)據(jù)。另外, 塊32可選擇性耦合到輸入塊52 (例如,數(shù)據(jù)輸入端口)以用于接收信號(例如,數(shù)據(jù))及 將數(shù)據(jù)提供到塊32。塊32還可選擇性耦合到輸出塊54 (例如,輸出端口)以用于將來自塊 32的信號提供到外部裝置(例如,另一 FSM點陣30)。FSM點陣30還可包含編程接口 56以 配置(例如,經(jīng)由圖像、程序)FSM點陣30。所述圖像可配置(例如,設(shè)定)SME 34、36的狀 態(tài)。也就是說,所述圖像可配置SME 34、36以便以某一方式對輸入塊52處的給定輸入做出 反應(yīng)。舉例來說,SME 34、36可經(jīng)設(shè)定以在輸入塊52處接收到字符'a'時輸出高信號。
[0040] 在實例中,可將輸入塊52、輸出塊54及/或編程接口 56實施為寄存器,使得到所 述寄存器的寫入或從所述寄存器的讀取將數(shù)據(jù)提供到相應(yīng)元件或從所述相應(yīng)元件提供數(shù) 據(jù)。因此,可將來自存儲于對應(yīng)于編程接口 56的寄存器中的圖像的位加載于SME 34、36上。 盡管圖2圖解說明塊32、輸入塊52、輸出塊54與塊間切換元件40之間的某一數(shù)目個導(dǎo)體 (例如,導(dǎo)線、跡線),但應(yīng)理解在其它實例中可使用較少或較多導(dǎo)體。
[0041] 圖3圖解說明塊32的實例。塊32可包含可與可配置塊內(nèi)切換元件42選擇性地 耦合在一起的多個行38。另外,行38可借助塊間切換元件40選擇性地耦合到另一塊32內(nèi) 的另一行38。行38包含多個SME 34、36,所述SME組織成若干元件對(在本文中稱作兩個 一群組(GOT)60)。在實例中,塊32包括十六(16)個行38。
[0042] 圖4圖解說明行38的實例。GOT 60可通過可配置行內(nèi)切換元件44選擇性地耦合 到行38內(nèi)的其它GOT 60及任何其它元件(例如,專用元件58)。GOT 60還可借助塊內(nèi)切 換元件42耦合到其它行38中的其它GOT 60,或借助塊間切換元件40耦合到其它塊32中 的其它GOT 60。在實例中,GOT 60具有第一輸入62及第二輸入64以及輸出66。第一輸入 62耦合到GOT 60的第一 SME 34且第二輸入64耦合到GOT 60的第二SME 36,如參考圖5 將進一步圖解說明。
[0043] 在實例中,行38包含第一多個行互連導(dǎo)體68及第二多個行互連導(dǎo)體70。在實例 中,GOT 60的輸入62、64可耦合到一或多個行互連導(dǎo)體68、70,且輸出66可耦合到一或多 個行互連導(dǎo)體68、70。在實例中,第一多個行互連導(dǎo)體68可耦合到行38內(nèi)的每一 GOT 60 的每一 SME 34、36。第二多個行互連導(dǎo)體70可耦合到行38內(nèi)的每一 GOT 60的僅一個SME 34、36,但不可耦合到GOT 60的另一 SME 34、36。在實例中,第二多個行互連導(dǎo)體70的第 一半體可耦合到行38內(nèi)的SME 34、36的第一半體(來自每一 GOT 60的一個SME 34)且第 二多個行互連導(dǎo)體70的第二半體可耦合到行38內(nèi)的SME 34、36的第二半體(來自每一 GOT 60的另一 SME 34、36),如關(guān)于圖5將更好圖解說明。第二多個行互連導(dǎo)體70與SME 34、36之間的有限連接性在本文中稱作"奇偶性"。在實例中,行38還可包含專用元件58, 例如計數(shù)器、可配置布林邏輯元件、查找表、RAM、現(xiàn)場可配置門陣列(FPGA)、專用集成電路 (ASIC)、可配置處理器(例如,微處理器)或用于執(zhí)行專用功能的其它元件。
[0044] 在實例中,專用元件58包括計數(shù)器(在本文中也稱作計數(shù)器58)。在實例中,計數(shù) 器58包括12位可配置遞減計數(shù)器。12位可配置計數(shù)器58具有計數(shù)輸入、重置輸入及零 計數(shù)輸出。計數(shù)輸入在被斷言時使計數(shù)器58的值遞減1。重置輸入在被斷言時致使計數(shù) 器58從相關(guān)聯(lián)寄存器加載初始值。對于12位計數(shù)器58來說,可加載多達12位的數(shù)值作 為所述初始值。當(dāng)計數(shù)器58的值遞減到零(0)時,斷言零計數(shù)輸出。計數(shù)器58還具有至 少兩種模式,脈沖及保持。當(dāng)計數(shù)器58設(shè)定到脈沖模式時,當(dāng)計數(shù)器58達到零且時鐘循環(huán) 時斷言零計數(shù)輸出。在計數(shù)器58的下一時鐘循環(huán)期間斷言零計數(shù)輸出。導(dǎo)致計數(shù)器58在 時間方面從時鐘循環(huán)偏移。在下一時鐘循環(huán)處,不再斷言零計數(shù)輸出。當(dāng)計數(shù)器58設(shè)定到 保持模式時,在計數(shù)器58遞減到零時于時鐘循環(huán)期間斷言零計數(shù)輸出,且保持斷言直到計 數(shù)器58由被斷言的重置輸入重置為止。
[0045] 在另一實例中,專用元件58包括布林邏輯。舉例來說,布林邏輯可用于執(zhí)行邏 輯函數(shù),例如AND、OR、NAND、N0R、乘積和(SoP)、否定輸出乘積和(NSoP)、否定輸出和乘積 (NPoS)及和乘積(PoS)函數(shù)。此布林邏輯可用于從FSM點陣30中的終端狀態(tài)SME (對應(yīng) 于FSM的終端節(jié)點,如本文中稍后論述)提取數(shù)據(jù)。所提取數(shù)據(jù)可用于將狀態(tài)數(shù)據(jù)提供到 其它FSM點陣30及/或提供用于重新配置FSM點陣30或重新配置另一 FSM點陣30的配 置數(shù)據(jù)。
[0046] 圖5圖解說明GOT 60的實例。GOT 60包含第一 SME 34及第二SME 36,第一 SME 34及第二SME 36具有輸入62、64且具有耦合到"或"門76及3對1多路復(fù)用器78的其輸 出72、74。3對1多路復(fù)用器78可經(jīng)設(shè)定以將GOT 60的輸出66耦合到第一 SME 34、第二 SME 36或者"或"門76。"或"門76可用于將兩個輸出72、74耦合在一起以形成GOT 60的 共同輸出66。在實例中,第一 SME 34及第二SME 36展現(xiàn)奇偶性,如上文所論述,其中第一 SME 34的輸入62可耦合到一些行互連導(dǎo)體68且第二SME 36的輸入64可耦合到其它行互 連導(dǎo)體70,可產(chǎn)生可克服奇偶性問題的共同輸出66。在實例中,GOT 60內(nèi)的兩個SME 34、 36可通過設(shè)定切換元件79中的任一者或兩者而級聯(lián)及/或循環(huán)回到自身。SME 34、36可 通過將SME 34、36的輸出72、74耦