專利名稱:用于清洗電子設(shè)備內(nèi)的鏈表的電路和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及信息電子設(shè)備領(lǐng)域,并且更具體地涉及清洗(purging)電 子設(shè)備內(nèi)的鏈表。
背景技術(shù):
在包括在硬件中實(shí)現(xiàn)的鏈表的系統(tǒng)中,很可能清洗鏈表。典型地,鏈表 清洗以鏈表的頭部的指針開始。隨后,鏈表中每個節(jié)點(diǎn)的指針在它們被清洗 后,放置在自由塊(freeblock)列表中。目前,當(dāng)存在多個可清洗鏈表的點(diǎn)并且 僅有兩個讀取端口可用來遍歷鏈表時,不存在有效清洗鏈表的清洗機(jī)制。通 常,兩個讀取端口為用于RAM或寄存器陣列的最大讀取端口數(shù)。當(dāng)前的鏈表 清洗系統(tǒng)不提供用于接收多個頭指針并且然后盡可能快地以那些頭指針開始 清洗鏈表的有效的清洗機(jī)制。因而,存在克服如上所述的現(xiàn)有技術(shù)的問題的需要。發(fā)明內(nèi)容簡要地,根據(jù)本發(fā)明,公開用于同時查詢向量的兩端的電路和網(wǎng)絡(luò)設(shè)備。 該電路包括至少一個輸入端,用于接收頭指針的向量。存儲鎖存器包括兩個 輸入端和一個輸出端,其中第一輸入端接收頭指針的向量。第一優(yōu)先級解碼 器包括輸入端和輸出端,其中該第 一優(yōu)先級解碼器的輸入端從存儲鎖存器接 收頭指針的向量。第一優(yōu)先級解碼器從所述向量的第一端遍歷頭指針的向量, 以識別該向量中的一個有效位。第一反向模塊,包括輸入端和輸出端,其中 該輸入端也從存儲鎖存器接收頭指針的向量。第二優(yōu)先級解碼器包括輸入端 和輸出端。第二優(yōu)先級解碼器的輸入端從第一反向模塊接收頭指針的向量。 從第一反向模塊接收的頭指針的向量為以反向順序在至少一個輸入端處接收 的頭指針的向量。第二優(yōu)先級解碼器從頭指針的反向向量的第一端遍歷從第 一反向模塊接收的頭指針的向量,以識別該向量中的一個有效位。在另一實(shí)施例中,公開了連網(wǎng)設(shè)備。該網(wǎng)絡(luò)設(shè)備包括存儲器和通信耦合至存儲器的處理器。該連網(wǎng)設(shè)備也包括用于同時查找向量的兩端的電路。該 電路通信耦合至存儲器和處理器。該電路包括至少一個輸入端,用于接收頭 指針的向量。存儲鎖存器包括兩個輸入端和一個輸出端,其中第一輸入端接 收頭指針的向量。第一優(yōu)先級解碼器包括輸入端和輸出端,其中該第一優(yōu)先 級解碼器的輸入端從存儲鎖存器接收頭指針的向量。第一優(yōu)先級解碼器從所 述向量的第一端遍歷頭指針的向量,以識別該向量中的一個有效位。第一反 向模塊包括輸入端和輸出端,其中該輸入端也從存儲鎖存器接收頭指針的向 量。第二優(yōu)先級解碼器包括輸入端和輸出端。第二優(yōu)先級解碼器的輸入端從 第 一反向模塊接收頭指針的向量。從第 一反向模塊接收的頭指針的向量為以 反向順序在至少一個輸入端處接收的頭指針的向量。第二優(yōu)先級解碼器從頭 指針的反向向量的第 一端遍歷從第 一反向模塊接收的頭指針的向量,以識別 該向量中的 一個有效位。本發(fā)明的一個優(yōu)勢在于,提供向量遍歷(traverse)電路,其可同時從兩端 遍歷向量以識別兩個有效位。在鏈表的環(huán)境中,有效位可以是指向不同的鏈 表的指針,其被鏈表步進(jìn)器(walker)用來同時遍歷兩個不同的鏈表。向量 遍歷過程將遍歷向量的時間減少至多兩倍。
附圖與下面的詳細(xì)描述一起并入并且形成說明書的一部分,用于進(jìn)一步 示出各種實(shí)施例和說明各種原理以及與本發(fā)明相關(guān)的各種優(yōu)勢,其中貫穿分離的#見圖,同樣的參考數(shù)字指示相同的或功能類似的元件。 圖1為根據(jù)本發(fā)明的實(shí)施例的向量遍歷電路的示意圖; 圖2為示出根據(jù)本發(fā)明的實(shí)施例的頭指針指向不同鏈表的框圖; 圖3為根據(jù)本發(fā)明的一個實(shí)施例的優(yōu)先級解碼器的示意圖; 圖4為示出才艮據(jù)本發(fā)明的實(shí)施例的、在一個時鐘周期中A^兩端遍歷向量的處理的時序圖;圖5為根據(jù)本發(fā)明的實(shí)施例的鏈表清洗電路的示意圖;以及 圖6為根據(jù)本發(fā)明的實(shí)施例的信息處理系統(tǒng)的框圖。
具體實(shí)施方式
如需要的,在此公開本發(fā)明的詳細(xì)實(shí)施例;然而,應(yīng)當(dāng)理解,公開的實(shí)施例僅是本發(fā)明的示例,本發(fā)明可以以各種形式具體化。因而,在此公開的 具體結(jié)構(gòu)和功能的細(xì)節(jié)不被解釋為是限制性的,而僅僅解釋為權(quán)利要求的基 礎(chǔ)并且解釋為教導(dǎo)本領(lǐng)域普通技術(shù)人員將本發(fā)明以不同方式應(yīng)用在實(shí)際任何適當(dāng)?shù)木唧w結(jié)構(gòu)中的典型基礎(chǔ)。此外,在此使用的術(shù)語和短語并非意圖限定;相反的,是為了提供發(fā)明的可理解的描述。如在此使用的術(shù)語"一個"定義為一個或多于一個。如在此使用的術(shù)語多 個定義為兩個或多于兩個。如在此使用的術(shù)語另一個定義為至少第二個或更 多。如在此使用的術(shù)語包括和/或具有定義為包含(即,開放性語言)。如在 此使用的術(shù)語耦合定義為連接,盡管不需要直接地并且不需要機(jī)械地連接。 如在此使用的術(shù)語程序、軟件應(yīng)用等定義為設(shè)計用來在計算機(jī)系統(tǒng)上執(zhí)行的 指令序列。程序、計算機(jī)程序或軟件應(yīng)用可包括子程序、函數(shù)、過程、對象方法、對象實(shí)現(xiàn)、可執(zhí)行應(yīng)用、小應(yīng)用程序(applet)、小服務(wù)程序(servlet)、源 代碼、目標(biāo)代碼、共享庫/動態(tài)負(fù)載庫和/或其它設(shè)計為在計算機(jī)系統(tǒng)上執(zhí)行的 指令序列。向量遍歷電^各圖1示出向量遍歷電路100的示意圖。在一個實(shí)施例中,向量遍歷電路 100位于連網(wǎng)設(shè)備中。然而,這僅僅是一個例子而非限制。向量遍歷電路100 利用優(yōu)先級解碼器和反向優(yōu)先級解碼器并發(fā)地識別向量中的一個或多個有效 位。換句話說,向量遍歷電路100同時遍歷向量的每一端,以在單個時鐘周 期中識別一個或多個有效位。本發(fā)明的一個優(yōu)勢在于在位向量中識別兩個有: 效位的時間減少至多2倍。應(yīng)該注意到,在鏈表的環(huán)境中,以下的描述使用 向量遍歷電路100,其是存儲在存儲器中的數(shù)據(jù)的邏輯組織。鏈表是在計算 機(jī)編程中公知的基本數(shù)據(jù)結(jié)構(gòu)。術(shù)語鏈表由向在這一 自參考數(shù)據(jù)類型中的相 同類型的另一數(shù)據(jù)的鏈接或指針得到。然而,本發(fā)明不限于鏈表。在一個實(shí)施例中,向量為一元陣列。圖1示出了一個或多個耦合至各自 的解碼器的源。例如,源A(例如,道(lane)O清洗指針)102耦合至解碼器A 108, 源B(例如,道1清洗指針)104耦合至解碼器B 110,以及源N(例如,道 N-l清洗指針)106耦合至解碼器N 112。每個源102、 104、 106提供頭指針(例如,7位值)到所述源希望包被清洗的鏈表中。換句話說,頭指針指向 鏈表的頭部。電^各100同時從源102、 104、 106的一個或多個接收數(shù)據(jù)。圖 2示出圖示來自源的頭指針的結(jié)構(gòu)圖。如可由圖2看出的,來自源A102的頭指針202指向第一鏈表208的頭部。來自源B 104的頭指針204指向第二鏈 表210的頭部。類似的,來自源N106的頭指針206指向第三鏈表212的頭部。回來參考圖1,每個源102、 104、 106傳遞其數(shù)據(jù)(例如頭指針)到各個解 碼器環(huán)、110、 112中。每個解碼器108、 110、 112的輸出作為到或門114 的輸入?;蜷T獲得每個解碼器108、 110、 112的輸出并且將它們或在一起。 或門114的輸出用于設(shè)置鎖存器116的向量,所述鎖存器116存儲指向需要 清洗的鏈表的頭部向量。在一個實(shí)施例中,由可包括多于一個值的置位-復(fù)位 鎖存器116輸出128位向量。認(rèn)識到在圖1中為了簡化僅僅示出代表128位 的1位的一個置位-復(fù)位鎖存器116是很重要的。其它127位將并行地形成至 圖1的電路。鎖存器向量并行地通過兩個相同的優(yōu)先級解碼器118、 120,其 中一個使信號在輸入端122和輸出端124上均反向,因此第二優(yōu)先級解碼器 120的優(yōu)先級機(jī)制與第一個118的相反。例如,圖4示出如何能夠通過本發(fā)明遍歷鎖存器116的向量,該向量代 表指向需要清洗的鏈表的解碼的指針。在第一時鐘周期Tp第一優(yōu)先級解碼 器118遍歷向量116的MSB 402。同時,第二優(yōu)先級解碼器120遍歷向量116 的LSB404。已經(jīng)發(fā)現(xiàn)了這兩個有效位402、 404,它們通過隨后將描述的邏輯 由鎖存器116復(fù)位,導(dǎo)致狀態(tài)T2?,F(xiàn)在在該狀態(tài)中,408和406將被復(fù)位, 導(dǎo)致狀態(tài)T3。在狀態(tài)T3中,兩個優(yōu)先級解碼器指示412并且在此這是唯一 的有效輸出。注意到, -假如兩個優(yōu)先級解碼器118、 120產(chǎn)生不同結(jié)果154,則兩個結(jié) 果都認(rèn)為是有效的。假如兩個優(yōu)先級解碼器118、 120產(chǎn)生相同結(jié)果,則僅有 一個結(jié)果是有效的(并且通過156門截止),并且如果兩個來自優(yōu)先級解碼器 118、 120的結(jié)果都未能產(chǎn)生有效位,那么結(jié)果都不是有效的。只有有效位可 編碼回到指針中去,該指針可由鏈表步進(jìn)器用作進(jìn)入鏈表的指針?;貋韰⒖紙D1,優(yōu)先級解碼器118、 120的結(jié)果(在給定時鐘周期中當(dāng)前 遍歷的位的值)每一個分別傳到編碼器126、 128。編碼器126、 128編碼優(yōu) 先級解碼器118、 120的結(jié)果,以用作鏈表結(jié)構(gòu)中的指針。在鏈表步進(jìn)器134 的指針端口 130、 132接收編碼器126、 128的輸出。而且分別在或門136、 138接收優(yōu)先級解碼器118、 120的輸出作為輸入?;蜷T136、 138對優(yōu)先級 解碼器118、 120的輸出進(jìn)行或操作并且發(fā)送該輸出至鏈表步進(jìn)器134的各個"有效,,端口 140、 142。"有效,,端口 140、 142 4企查指針的有效性。鏈表步進(jìn)器134是使用從優(yōu)先級解碼器118、 120接收的指針、以使一次 同時遍歷兩個鏈表以清洗列表的元素的電路。例如,鏈表步進(jìn)器的指針端口 130、 132每一個可接收指針,其中每個指針指向兩個不同的鏈表。鏈表步進(jìn) 器134使用這些指針來識別每個鏈表的起點(diǎn),以開始清洗每個鏈表的元素。 一旦元素已經(jīng)被清洗,則其對應(yīng)的存儲器被添加至自由存儲塊池。如可見的,本發(fā)明的優(yōu)勢在于可以/人兩端同時遍歷向量以識別兩個有效 位。在鏈表的環(huán)境中,有效位可以是不同的鏈表中的指針,其被鏈表步進(jìn)器 使用以同時遍歷兩個不同鏈表。該向量遍歷過程將遍歷向量的時間減少了至 多2倍。應(yīng)該注意,電路100可以比通過鏈表步進(jìn)器134遍歷鏈表更快地接收源 數(shù)據(jù)。例如,在一些情形中,可能花費(fèi)許多時鐘周期來遍歷鏈表。因而,在 電路100中提供選通機(jī)制。例如,圖1示出第一與門144也接收來自第一優(yōu) 先級解碼器118的輸出,并且還從鏈接步進(jìn)器134上的第一忙(busy)端口 148接收數(shù)據(jù)。第二與門也接收來自第二優(yōu)先級解碼器120的輸出并且還從 鏈表步進(jìn)器134處的第二忙端口 150接收數(shù)據(jù)。每個與門144、 146的輸出為第三或門152的輸入。第三或門152的輸出 為置位_復(fù)位鎖存器116處的復(fù)位端口的輸入。這確保置位-復(fù)位鎖存器使 優(yōu)先級解碼器保持在當(dāng)前位直到鏈表步進(jìn)器134指示準(zhǔn)備接收新的值。例如, 在鏈表步進(jìn)器134完成遍歷至少一個鏈表后,它指示它已經(jīng)獲得提供給它的 值并且清除鎖存器向量中的對應(yīng)的位。圖5非常詳細(xì)地示出了鏈表步進(jìn)器134。圖5示出了連接到存儲器506 的讀取端口 504的多路轉(zhuǎn)換器(MUX) 502,例如靜態(tài)隨機(jī)存取存儲器模塊。 多路轉(zhuǎn)換器502采用來自優(yōu)先級解碼器118、 120的新頭指針、有效指針以及 來自數(shù)據(jù)輸出端口 508的輸出作為輸入。在一個實(shí)施例中,來自數(shù)據(jù)輸出端 口 508的數(shù)據(jù)為下一指針和尾標(biāo)位(tailbit)。圖5還示出了置位-復(fù)位鎖存器510,其采用來自數(shù)據(jù)輸出端口 508的有 效指針信號和尾標(biāo)信號作為輸入。置位-復(fù)位鎖存器510的輸出被上面討論 的與門144、 146用作為忙信號,以指示什么時候鏈表步進(jìn)器134可以處理來 自解碼器118、 120的另一指針。置位-復(fù)位鎖存器的輸出還將已經(jīng)從鏈表釋 放的存儲器推進(jìn)自由塊存儲池。示例的信息處理系統(tǒng)圖6為示出信息處理系統(tǒng)600的具體視圖的框圖。在一個實(shí)施例中,信 息處理系統(tǒng)600基于適于執(zhí)行本發(fā)明的示例性實(shí)施例的適當(dāng)配置的處理系 統(tǒng)。任何適當(dāng)配置的處理系統(tǒng)能夠類似地被本發(fā)明的實(shí)施例用作信息處理系 統(tǒng)600,例如,個人計算機(jī)、工作站等。信息處理系統(tǒng)600包括計算機(jī)602。計算機(jī)602具有通信連接至主存儲 器606 (例如,易失性存儲器)的處理器604、非易失性存儲器接口 608、終 端接口 610、網(wǎng)絡(luò)適配器硬件612以及向量遍歷電路100。系統(tǒng)總線614使這 些系統(tǒng)元件互連。非易失性存儲器接口 608用于將例如數(shù)據(jù)存儲設(shè)備616的 海量存儲設(shè)備連接至信息處理系統(tǒng)600。數(shù)據(jù)存儲設(shè)備的一種具體類型為計 算機(jī)可讀介質(zhì),例如CD驅(qū)動器,其可以用來從/向CD或DVD 618或軟盤(未 示出)讀取/存儲數(shù)據(jù)。另一種類型的數(shù)據(jù)存儲設(shè)備為配置為支持例如NTFS 型文件系統(tǒng)操作的數(shù)據(jù)存儲設(shè)備。在一個實(shí)施例中,主存儲器606包括一個或多個鏈表210、 212、 214。 如上面描述的,通過鏈表步進(jìn)器134遍歷和清洗鏈表。盡管示出為位于存儲 器606中,這些元件可以以信息處理系統(tǒng)600內(nèi)的硬件來實(shí)現(xiàn)。在另一實(shí)施 例中,信息處理系統(tǒng)600利用傳統(tǒng)虛擬尋址機(jī)制以允許程序好象它們已經(jīng)存 取大的、單個存儲實(shí)體(此處稱作計算機(jī)存儲器)那樣運(yùn)轉(zhuǎn),而不是存取多個、 較小存儲實(shí)體(例如主存儲器606以及數(shù)據(jù)存儲設(shè)備616)。注意到,在此使 用的術(shù)語"計算機(jī)系統(tǒng)存儲器"整體地指示信息處理系統(tǒng)600的整個虛擬存儲 器。盡管對于計算機(jī)602僅示出 一個CPU 604,具有多個CPU的計算機(jī)系統(tǒng) 可以等效地使用。本發(fā)明的實(shí)施例進(jìn)一步并入每個包括分離的、充分編程的 微處理器的接口,所述微處理器用于從CPU604的卸載處理。終端接口 610 用于直接連接一個或多個終端626至計算機(jī)602,以向計算機(jī)602提供用戶 接口。這些終端626可以是非智能或充分可編程工作站,并用于允許系統(tǒng)管 理員和用戶與瘦客戶端通信。這些終端626也能夠由連接至計算機(jī)602并且 由包括在終端I/F610中的終端接口硬件控制的用戶界面和外圍設(shè)備組成,所 述終端I/F610包括視頻適配器和用于鍵盤、指示設(shè)備等的接口 。根據(jù)實(shí)施例,操作系統(tǒng)可包括在主存儲器606中并且適于多任務(wù)操作系 統(tǒng),例如Linux、 UNIX、 Windows XP和Windows Server操作系統(tǒng)。本發(fā)明的實(shí)施例能夠使用任何其它適合的搡作系統(tǒng)、或內(nèi)核、或其它適合的控制軟 件。本發(fā)明的一些實(shí)施例利用體系結(jié)構(gòu),例如面向?qū)ο蟮目蚣軝C(jī)制,其允許 操作系統(tǒng)(未示出)元件的指令可以在位于客戶機(jī)內(nèi)的任何處理器上執(zhí)行。網(wǎng)絡(luò)適配器硬件612用于向網(wǎng)絡(luò)628提供接口 。本發(fā)明的實(shí)施例能夠適配為 利用包括現(xiàn)代模擬和/或數(shù)字技術(shù)的任何數(shù)據(jù)通信連接或經(jīng)由未來網(wǎng)絡(luò)連接 才幾制來工作。盡管在完全功能性計算機(jī)系統(tǒng)的環(huán)境中描述了本發(fā)明的示例性實(shí)施例, 但本領(lǐng)域技術(shù)人員將意識到,實(shí)施例能夠通過軟盤(例如軟盤618)、 CD ROM 或其它形式的可記錄介質(zhì)或通過任何類型的電子傳送機(jī)制作為程序產(chǎn)品來分 發(fā)。非限制示例上述電路是集成電路芯片的設(shè)計的一部分。該芯片設(shè)計以編程語言創(chuàng)建, 并且存儲在計算機(jī)存儲介質(zhì)中(例如磁盤、磁帶、物理硬驅(qū)動器或者例如在 存儲器存取網(wǎng)絡(luò)中的虛擬硬驅(qū)動器)。如果設(shè)計者不制造芯片或用于制造芯片 的光刻掩膜,設(shè)計者通過物理手段(例如,通過提供存儲設(shè)計的存儲介質(zhì)的 副本)或電子地(例如,通過因特網(wǎng))將作為結(jié)果的設(shè)計直接或間接地發(fā)送 至那些實(shí)體。然后存儲的設(shè)計轉(zhuǎn)換成對于制造光刻掩膜合適的格式(例如, GDSII),其典型地包括正在討論的將在晶片上形成的芯片設(shè)計的多個副本。 光刻掩膜用于定義將被刻蝕或經(jīng)過其它處理的晶片區(qū)域(和/或在其上的層)。如上所述的方法用在集成電路芯片的制造中。作為結(jié)果的集成電路芯片可以由制造者以未加工晶片形式(也就是,作 為具有多個未封裝芯片的單個晶片)作為棵芯片,或以封裝形式來分發(fā)。在后者的情形中,芯片安裝在單個芯片封裝中(例如,塑料載體,具有粘附到 母板或其它較高級別的載體的導(dǎo)線)或安裝在多芯片封裝中(例如具有任一 個或兩個表面互連或掩埋互連的陶瓷載體)。在任何情形中,該芯片隨后同其 它芯片、離散電路元件,和/或其它信號處理設(shè)備集成,作為(a)中間產(chǎn)品 例如母板或(b)最終產(chǎn)品的一部分。最終產(chǎn)品可以是任何包括集成電路芯片 的產(chǎn)品,范圍從玩具和其它低端應(yīng)用至具有顯示器、鍵盤或其它輸入設(shè)備以 及中央處理器的高級的計算機(jī)產(chǎn)品。如本領(lǐng)域普通技術(shù)人員公知的,本發(fā)明能夠以硬件或軟件或以硬件和軟 件的結(jié)合生產(chǎn)。然而,在一個實(shí)施例中,發(fā)明以軟件實(shí)現(xiàn)。根據(jù)結(jié)合優(yōu)選實(shí)施例公開的發(fā)明原理的系統(tǒng)或方法可在單個計算機(jī)系統(tǒng)中生產(chǎn)或可以布置在 通過如本領(lǐng)域普通技術(shù)人員公知的任何合適的手段互連的分布計算機(jī)系統(tǒng) 中,所述單個計算機(jī)系統(tǒng)具有用于執(zhí)行描述的或根據(jù)權(quán)利要求要求的各個功 能或步驟的分離的元件或手段或結(jié)合公開的或權(quán)利要求要求的任何功能或步 驟的性能的 一個或多個元件或手段。根據(jù)結(jié)合優(yōu)選實(shí)施例公開的發(fā)明原理,發(fā)明以及發(fā)明原理不限于任何特 定類型的計算機(jī)系統(tǒng),而是如本領(lǐng)域普通技術(shù)人員公知的,可以由任何布置 為執(zhí)行描述的功能和描述的方法步驟的通用計算機(jī)使用。發(fā)明不限于任何特 定的計算機(jī)程序或邏輯或語言或指令,而是如本領(lǐng)域普通技術(shù)人員公知的, 可以由任何這種合適的程序、邏輯或語言、或指令來實(shí)踐。盡管已經(jīng)公開了本發(fā)明的具體實(shí)施例,本領(lǐng)域普通技術(shù)人員應(yīng)理解,可 在不脫離本發(fā)明的精神和范圍的情況下,對具體實(shí)施例作出改變。因而,本 發(fā)明的范圍不限制于具體實(shí)施例,并且意圖是附加權(quán)利要求覆蓋在本發(fā)明的 范圍之內(nèi)的任何及所有應(yīng)用、修改及具體化。
權(quán)利要求
1.一種用于同時查找向量的兩端的電路,該電路包括至少一個輸入端,用于接收頭指針的向量;存儲鎖存器,包括兩個輸入端和一個輸出端,其中第一輸入端接收頭指針的向量;第一優(yōu)先級解碼器,包括輸入端和輸出端,其中該第一優(yōu)先級解碼器的輸入端從存儲鎖存器接收頭指針的向量,其中該第一優(yōu)先級解碼器從頭指針的向量的第一端遍歷所述向量,以識別該向量中的一個有效位;第一反向模塊,包括輸入端和輸出端,其中該輸入端也從存儲鎖存器接收頭指針的向量;以及第二優(yōu)先級解碼器,包括輸入端和輸出端,其中該第二優(yōu)先級解碼器的輸入端從第一反向模塊接收頭指針的向量,其中從第一反向模塊接收的頭指針的向量為以反向順序在所述至少一個輸入端處接收的頭指針的向量,并且其中該第二優(yōu)先級解碼器從頭指針的反向向量的第一端遍歷從第一反向模塊接收的頭指針的向量,以識別該向量中的一個有效位。
2、 權(quán)利要求1的電路,其中所述第一優(yōu)先級解碼器和所述第二優(yōu)先級解 碼器的每一個在一個時鐘周期內(nèi)遍歷完整的頭指針的向量。
3、 權(quán)利要求1的電路,其中所述第一優(yōu)先級解碼器包括耦合至第一編碼 器的輸入端的輸出端,其中該第一優(yōu)先級解碼器輸出識別的有效位至該第一 編碼器。
4、 權(quán)利要求3的電路,其中所述第一編碼器基于從第一優(yōu)先級編碼器接 收的識別的有效位而生成指針,其中該指針指向第一鏈表的起始點(diǎn),并且其 中該指針傳遞給鏈表清洗電路的第 一輸入端。
5、 權(quán)利要求4的電路,其中第二編碼器基于從第二反向模塊接收的識別 的有效位而生成指針,其中該指針指向第二鏈表的起始點(diǎn),并且其中該指針 傳遞給鏈表清洗電路的第二輸入端。
6、 權(quán)利要求1的電路,其中所述第二優(yōu)先級解碼器的輸出端耦合至第二 反向模塊,其中該第二反向模塊輸出從第二優(yōu)先級編碼器接收的識別的有效 位至第二編碼器。
7、 權(quán)利要求l的電路,其中該電路進(jìn)一步包括用于對兩個或更多頭指針的向量一起進(jìn)行或操作的第一或門,其中該第一或門包括耦合至存儲鎖存器 的輸出。
8、 權(quán)利要求7的電路,其中該第一或門的輸出用于清除指示不再有效的 有效指針的位。
9、 權(quán)利要求1的電路,其中所述存儲鎖存器的第二輸入端從鏈表清洗電 ^各接收指示"忙"和"就緒"之一的狀態(tài)的信號。
10、 權(quán)利要求1的電路,其中所述第一優(yōu)先級解碼器的輸出和所述第二 優(yōu)先級解碼器的輸出^皮;險測為實(shí)質(zhì)上類似,從而導(dǎo)致該第二優(yōu)先級解碼器的 輸出無效,并且其中響應(yīng)于該第一優(yōu)先級解碼器的輸出和該第二優(yōu)先級解碼 器的輸出被^r測為無效,不對該第一優(yōu)先級解碼器的輸出和該第二優(yōu)先級解 碼器的輸出采取行動。
11、 一種連網(wǎng)設(shè)備,該連網(wǎng)設(shè)備包括 存儲器;通信耦合至存儲器的處理器;和通信耦合至存儲器和處理器、用于同時查找向量的兩端的電路,該電踏 包括至少一個輸入端,用于接收頭指針的向量;存儲鎖存器,包括兩個輸入端和一個輸出端,其中第一輸入端接收 頭指針的向量;第一優(yōu)先級解碼器,包括輸入端和輸出端,其中該第一優(yōu)先級解碼 器的輸入端從存儲鎖存器接收頭指針的向量,其中該第一優(yōu)先級解碼器 從頭指針的向量的第一端遍歷所述向量,以識別該向量中的一個有效位;第一反向模塊,包括輸入端和輸出端,其中該輸入端也從存儲鎖存 器接收頭指針的向量;以及第二優(yōu)先級解碼器,包括輸入端和輸出端,其中該第二優(yōu)先級解碼 器的輸入端從第 一反向模塊接收頭指針的向量,其中從第一反向模塊接 收的頭指針的向量為以反向順序所述在至少一個輸入端處接收的頭指針 的向量,并且其中該第二優(yōu)先級解碼器從頭指針的反向向量的第一端遍 歷從第一反向模塊接收的頭指針的向量,以識別該向量中的一個有效 位。
12、 權(quán)利要求11的連網(wǎng)設(shè)備,其中所述第一優(yōu)先級解碼器和所述第二優(yōu)先級解碼器的每一個在一個時鐘周期內(nèi)遍歷完整的頭指針的向量。
13、 權(quán)利要求ll的連網(wǎng)設(shè)備,其中所述第一優(yōu)先級解碼器包括耦合至第 一編碼器的輸入端的輸出端,其中該第 一優(yōu)先級解碼器輸出識別的有效位至 該第一編碼器。
14、 權(quán)利要求13的連網(wǎng)設(shè)備,其中所述第一編碼器基于從第一優(yōu)先級編 碼器接收的識別的有效位而生成指針,其中該指針指向第一鏈表的起始點(diǎn), 并且其中該指針傳遞給鏈表清洗電路的第 一輸入端。
15、 權(quán)利要求ll的連網(wǎng)設(shè)備,其中所述第二優(yōu)先級解碼器的輸出端耦合 至第二反向模塊,其中該第二反向模塊輸出從第二優(yōu)先級編碼器接收的識別 的有效位至第二編碼器。
16、 權(quán)利要求15的連網(wǎng)設(shè)備,其中所述第二編碼器基于從第二反向模塊 接收的識別的有效位而生成指針,其中該指針指向第二鏈表的起始點(diǎn),并且 其中該指針傳遞給鏈表清洗電路的第二輸入端。
17、 權(quán)利要求11的連網(wǎng)設(shè)備,其中該電路進(jìn)一步包括用于對兩個或更多 頭指針的向量一起進(jìn)行或操作的第一或門,其中該第一或門包括耦合至存儲 鎖存器的輸出。
18、 權(quán)利要求17的連網(wǎng)設(shè)備,其中該第一或門的輸出用于清除指示不再 有效的有效指針的位。
19、 權(quán)利要求11的連網(wǎng)設(shè)備,其中所述存儲鎖存器的第二輸入端從鏈表 清洗電路接收指示"忙"和"就緒"之一的狀態(tài)的信號。
20、 權(quán)利要求ll的連網(wǎng)設(shè)備,其中所述第一優(yōu)先級解碼器的輸出和所述 第二優(yōu)先級解碼器的輸出被檢測為實(shí)質(zhì)上類似,從而導(dǎo)致該第二優(yōu)先級解碼 器的輸出無效,并且其中響應(yīng)于該第一優(yōu)先級解碼器的輸出和該第二優(yōu)先級 解碼器的輸出^皮^r測為無效,不對該第 一優(yōu)先級解碼器的輸出和該第二優(yōu)先 級解碼器的輸出采取行動。
全文摘要
公開了一種用于同時查找向量的兩端的電路。該電路包括至少一個用于接收頭指針的向量的輸入端。存儲鎖存器的第一輸入端接收頭指針的向量。第一優(yōu)先級解碼器的輸入端從存儲鎖存器接收頭指針的向量。第一優(yōu)先級解碼器從向量的第一端遍歷頭指針的向量,以識別向量中的一個有效位。第一反向模塊的輸入端也從存儲鎖存器接收頭指針的向量。第二優(yōu)先級解碼器的輸入端從第一反向模塊接收頭指針的向量(以反向順序)。第二優(yōu)先級解碼器從反向向量的第一端遍歷從第一反向模塊接收的向量,以識別向量中的一個有效位。
文檔編號G06F12/02GK101251829SQ20081009208
公開日2008年8月27日 申請日期2008年1月3日 優(yōu)先權(quán)日2007年1月3日
發(fā)明者托德·A·斯特雷德, 斯科特·H·里德 申請人:國際商業(yè)機(jī)器公司