TWI222011B - Memory shared between processing threads - Google Patents
Memory shared between processing threads Download PDFInfo
- Publication number
- TWI222011B TWI222011B TW090100117A TW90100117A TWI222011B TW I222011 B TWI222011 B TW I222011B TW 090100117 A TW090100117 A TW 090100117A TW 90100117 A TW90100117 A TW 90100117A TW I222011 B TWI222011 B TW I222011B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- stack
- scope
- patent application
- command
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Multi Processors (AREA)
- Seal Device For Vehicle (AREA)
- Glass Compositions (AREA)
Description
^22011 A7 ^^ -------B7________ 五、發明說明(1 ) 發明背景 本發明相關於在處理線串間共享的記憶體。 —電腦線申爲一執行工作的電腦指令序列及流出。—電 腦線串結合一組的資源及關聯。 發明概要 在本發明的一般觀點中,一種方法包含包含藉由第—處 理器將一資料推進一堆疊而由第二處理器將此資料擊出 堆疊。 本發明的優點與其他特色將由下面的説明及申請專利範 圍變得明顯。 圖示簡述 圖1爲採用以硬體爲基礎的多線串處理器之系統方 圖。 ' 圖2爲採用圖1以硬體爲基礎的多線串處理器之微引擎的 方塊圖。 圖3爲顯示在圖1及2微引擎上執行的兩個線串的指令集 方塊圖。 1 圖4爲圖1顯示所選擇包含堆疊模組之處理器的子系統的 系統簡化方塊圖。 圖5 A爲顯示圖4堆疊模組的記憶體元件方塊圖。 圖5 B爲顯示圖4堆疊模組替代實做的記憶體元件方塊 圖。 圖6 A爲從圖5 A 1己憶體元件擊出資料的處理之流程圖。 圖6 B爲顯示在圖6 A的擊出處理後圖5 A的記憶體元件的 -4- ^紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) "------- (請先閱讀背面之注音?事項再填寫本頁} 1_1 ϋ I —Mi I ϋ ϋ - · ϋ ·ϋ ϋ 1 ·ϋ .1 ^1 I ϋ ^ 經濟部智慧財產局員工消費合作社印製 經濟部智慧財產局員工消費合作社印製 1222011 A7 __Β7_______ 五、發明說明(2 ) 方塊圖。 圖7 Α爲將資料推到圖6記憶體元件的處理流程圖。 圖7 B爲顯示在圖7 A的推入處理後圖6 B的記憶體元件方 塊圖。 圖8爲顯示用來實做一堆疊模组之兩堆疊的記憶體元件 方塊圖。 詳細説明 參考圖1,一系統1 0包含一平行的,以硬體爲基礎的多 線串處理器1 2。硬體爲基礎的多線串處理器1 2連結到一 匯流排1 4、一記憶體系統1 6及一第二匯流排1 8。此匯流 排14符合周邊元件互連界面,版本2.1,1995年6月1日制 定的(PCI)。此系統1 0對於可分解爲平杆子工作或功能的 工作特別有11。特定的硬體爲某读的吝绐电處理器1 2對於 頻寬導向的工作比對延遲導向的右用。冲·麻骑鼠基礎的多 線串處理器1 2有多個微引螫2 2,矣一個有多個硬體控制 的線串,其可以同時的作用祐獨立的執行一工作。 此硬體爲基礎的多線串處理器1 2.還包含中央控制器 2 0,其協助載入微程式碼控制硬體爲基礎的多線串處理器 12的其他資源並執行其他一般目的的電腦形態功能,例如 處理通訊協定,例外處理以及封包處理的額外支援,在那 裡微引擎將封包傳出做更詳盡的處理,例如邊界條件。& 一具體實例中’這個處理器20爲strongArm (TM)(StrongArm爲ARM有限公司的註册商標,英國)爲美 礎的架構。此一般目的的處理器2 0有一作業系統。透過這 -5- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁)
ϋ ϋ ϋ ki— ϋ ftn ^ · ϋ ·ϋ ΚΜϋ Βϋ n ϋ ϋ I ρ 122201 i A7 B7 五、發明說明(3 經濟部智慧財產局員工消費合作社印製 個作業系統,此處理器2 0可呼叫在微引擎22a-22f運作的 函數。此處理器2 0可以使用任何支援的作業系統,最好是 即時的作業系統。針對以StrongArm架構實做的核心處理 器’作業系統例如,Microsoft NT real-time 及 VXWorks 及 uC/OS,可以使用一個可在網際網路上httn://www.i]nn.-取得的免費作業系統。 硬體爲基礎的多線串處理器丨2還包含複數個功能性的微 引擎22a-22f。功能性的微引擎(微引擎3)22心22£每一個在 硬體中維護複數個程式計數器以及與此程式計數器有關的 狀態。實際上,對應的複數個線串集可以同時在每一個微 引擎22a-22f作用,而在任一時間點上只有一個實際在運 作0 在一具體實例中,如顯示的有六個微引擎22a-22f。Each 微引擎22a-22f有能力處理四個硬體線串。此六個微引擎 22a-22f操作共用的資源,包含記憶體系統1 6以及匯流排 界面2 4及2 8。此記憶體系統1 6包含一同步的動態隨機存 取記憶體(SDRAM)控制器2 6 a以及靜態隨機存取記憶體 (SRAM)控制器2 6b。SDRAM記憶體1 6 a及SDRAM控制器 2 6 a通常用來處理大量的資料,例如,處理來自網路封包 的網路裝載物。此SRAM控制器2 6 b及SRAM記憶體1 6 b係 用在低延遲、快速存取工作的網路實做,例如,存取查閲 資料表,核心處理器2 0的記憶體等等。 這六個微引擎22a-22f根據此資料的特徵或存取SDRAM 16a或SRAM 16b。因此,低延遲、低頻寬的資料儲存在 6- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) % n ϋ n n n ϋ ϋ·"-口t _ ϋ ·ϋ n n -ϋ .1-1 n 1 ρ 經濟部智慧財產局員工消費合作社印製 1222011 A7 B7__ 五、發明說明(4 ) SRAM中及從之取出,反之延遲較不重要的較高頻寬資 料,儲存在SDRAM中及從之取出。此微引擎22a-22f可以 對SDRAM控制器2 6 a或SRAM控制器1 6 b執行記憶體參考 指令。 硬體多線串的優點可由SRAM或SDRAM記憶體存取加以 説明。如一範例,來自微引擎的一 Thread_0的SRAM存取 要求,將使得SRAM控制器2 6 b起始對SRAM記憶體1 6 b的 存取。此SRAM控制器控制SRAM匯流排的屬性,存取 SRAM 16b,從SRAM 16b取回資料,並將資料傳回到一要 求微引擎22a-l2b。在SRAM存取期間,如果微引擎例如, 2 2 a只有單一個線串可以運作,該微引擎在資料從SRAm 傳回前將會處於閒置狀態。藉由在每一個微引擎22a-22f内 採用硬體關聯交換,此硬體關聯交換可以讓獨一程式計數 器的其他關聯在該相同的微引擎中執行。因此,另一個線 串,例如,Thread一1可以在第一線串,例如,Threa(L〇, 在等待讀取資料傳回的同時工作。在執行期間内,
Thread」可以存取SDRAM記憶體16a。當Thread」在 SDRAM單元上運作,而Thread—(^+SRAM單元運作時,一 新的線串’例如,Thread一2可以在微引擎22a中運作。 Thread」可以運作一特定時間量,直到它需要存取記憶體 或執行某些其他長延遲時間的動作,例如存取一匯流排界 面。因此,同時的,處理器丨2可以有一匯流排動作, SRAM動作及SDRA1V[動作全部都完成或是對一微引擎22a 運作並且還有一個線串可以在此資料路徑中處理更多工 本紙張尺度適用中國國家標準(CNS)A4規格Ιο x 297公6 (請先閱讀背面之注意事項再填寫本頁) %· . 1222011 A7 B7 五、發明說明(5 ) 作〇 此硬體關聯又換還將工作的完成同步化。例如,兩個線 串可以擊中相同的共用資源,例如SRAM。這些分別功能 單元的每一個,例如FBUS界面28、SRAM控制器26&及 SDRAM控制器26b,在其完成要求的工作時從其一微引擎 、、泉串關聯回粮一旗標通知一動作的完成。當此微引擎接收 到此旗標時,此微引擎可以決定要打開那一個線串。 硬體基礎的多線串處理器12應用的一個範例是網路處理 器。在做爲網路處理器時,此硬體基礎的多線串處理器12 界接到網路裝置,例如媒體存取控制器裝置,例如1〇/1〇〇
BaseT Octal MAC 13a或是Gigabit乙太網路裝置1 3b。此
Gigabit乙太網路裝置丨3b符合IEEE 8〇23z標準,1998年6 月認可的。大體上,在做爲網路處理器時,硬體基礎的多 線串處理器1 2可以界接任何形態的通訊裝置或是接收/送 出大量資料的界面。在一網路應用中工作的通訊系統丨〇可 以接收複數個網路封包從裝置i3a、13b並以平行方式處理 那些封包。利用此硬體基礎的多線串處理器12,每一個網 路封包可以獨立的被處理。 處理器1 2用途的另一個範例是後記處理器的印表引擎或 是儲存子系統,也就是RAID磁碟儲存的處理器。另一用 途是配對引擎。以證券業爲例,電子交易的到來需要使用 電子配對引擎來配對買方與賣方的訂單。這些及其他工作 的平行形態可以在系統1 〇中完成。 此處理器1 2包含一匯流排界面2 8,其連接處理器與第 8- 本紙張尺度適用中國國豕標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注咅?事項再填寫本頁) %- 訂---------_' 經濟部智慧財產局員工消費合作社印製 1222011 A7 B7 經濟部智慧財產局員工消費合作社印製 五、發明說明(6 ) 二匯流排1 8。在一具體實例中的匯流排界面2 8連結處理 器1 2與所謂的FBUS 18(FIF0匯流排)。此FBUS界面2 8負 責控制與界接處理器12與FBUS 18。此FBUS 18爲64-位元 寬的FIFO匯流排,用來界接媒體存取控制器裝置。 此處理器1 2包含第二屆面,例如p c I匯流排界面2 4,其 連結在P CI 14匯流排上的其他系統元件與處理器1 2。此 P C I匯流排界面2 4 ’提供到記憶體1 6,例如,SDRAM記 憶體1 6 a的高速資料路徑2 4 a。透過該路徑資料可以藉由 直接記憶體存取(DMA)轉移快速的從SDRAM 16a通過PCI 匯流排1 4。硬體基礎的多線串處理器1 2支援影像轉移。 此硬體基礎的多線串處理器1 2可以採用複數個d Μ A通 道,如此在其中一個D Μ A轉移標的爲忙碌時,另一個 DMA通道可以替代此pci匯流排來遞送資訊到另一個標 的來維持處理器1 2的高效率。另外,此p c I匯流排界面 2 4支援標的及主控操作,標的操作爲匯流排1 4上的附屬 裝置透過附屬至標的操作的讀取與寫入來存取SDRAMs的 操作。在主控操作中,處理器核心2 〇.直接送出資料到p c工 界面24或直接從之接收資料。 每一個功能單元連結到一或多個内部匯流排。如下面説 明的,内部匯流排爲雙,3 2位元匯流排(也就是,一個匯 流排用來讀取一個用來寫入)。硬體基礎的多線串處理器 1 2係架構來讓處理器1 2内的内部匯流頻寬的加總超過連 接到此處理器1 2的外部匯流排頻寬。此處理器丨2包含一 内部核心處理器匯流排3 2,例如A S B匯流排(高等系統匯 -9 - (請先閱讀背面之注意事項再填寫本頁) -½½. 訂--------- ,· 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 1222011
五、發明說明(9 資料爲有效的或已送出。轉移暫存器庫7 8及8 ο都經由資 料路徑連接到執行方塊(ΕΒ〇χ)76。在一實做中,此讀取轉 移暫存器有64個暫存器及寫入轉移暫存器有64個暫存 器。 參考圖3 ’處理器12有分別在微引擎22a及22b中執行 的處理線串4 1及4 2。在其他的例子中,線串4 1及4 2可以 在相同的微引擎中執行。此處理線串可以共用或不共用其 間的資料。例如,圖3中,處理線串41接收資料43並加以 處理來產生資料44。處理線串42接收並處理資料44來產 生輸出資料45。線串41及42同時作用。 因爲微引擎22a及22b共用SDRAM 16a及SRAM 16b(記憶 體),一個微引擎22a可能需要指定記憶體區段做排它的使 用。爲有助於有效的分配記憶體區段,此Sdram記憶體 分割承記憶體區段,參考爲緩衝器。緩衝器中的記憶體位 置共用一共同的位址前置,或指標器。此指標器被處理器 用作緩衝器的識別。 目前未被處理線串使用的緩衝器指標器藉由將此指標推 入到間置的記憶體堆疊來管理。一線串可以藉由將一指標 擊出此堆登來分配一緩衝器給此線串使用,並利用使指標 來存取對應的緩衝器。當一處理線串不再需要一分配給此 處理線串的緩衝器’此線串將此緩衝器指標推入到此堆疊 讓其他線串可以使用此緩衝器。 線串41及42有處理器指令集46、47其分別包含一 ••PUSH” 46a及一,TOP” 47A指令。在執行或此,,pusH"i 此 -12 _ 本紙張尺度適用中國國家標準(CNS)A4規格(210 χ 297公釐) Γ睛先閱讀背面之注咅?事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 1222011
五、發明說明(12 ) 經濟部智慧財產局員工消費合作社印製 邏輯將指定SRAM中的一記憶體位置來儲存單元的資料(資 料),其被推入到堆疊上。推入堆疊的資料可以是文字、 數字資料或甚至是另一個記憶體位置的位址或指標。 參考圖6A,要將資料擊出儲存在SRAM暫存器中的 堆疊,線串42執行1〇 i指令”P〇P #1,,。此擊出指 擎22指令集的部份。此擊出指令在匯流排”上傳送到控 制邏輯51做堆疊的處理。控制邏輯51解碼1〇2擊出^ 令。此控制邏輯還決定丨03暫存器,其包含在指令中參考 的堆疊指標,根據擊出指令的引數。因爲擊出指令的引數 爲"#i",對應的暫存器爲(51。此控制邏輯51傳回1〇4,Qi 暫存器的内容,到處理線串42的關聯。圖5 A的堆疊將傳 回"OxC5"。處理線串42接收107,qi暫存器的内容,其爲 ”OxC5n,並利用1 〇 8接收到的内容來存取來自對應堆疊緩 衝器6 1 b資料,藉由將後置附加到内容中。 控制邏輯27讀取1〇5,儲存在(^丨暫存器中的位址(〇xC5) 的内容(OxAl)。控制邏輯27儲存1〇6,在Qi暫存器中的 讀取内容(OxAl)來指示0xC5已從堆疊中移除而〇χΑ1現在是 堆疊頂的資料項。 參考圖6 Β ’將説明在圖6 Α動作後堆疊的狀態。如所 不’暫存器Q 1現在包含位址〇χΑ1,其爲先前堆疊上第二 個資料項的位址。另外,先前堆疊緩衝器6丨b的位置(圖 5A中)現在疋處理緩衝器65,其被線串42所用。因此, 線串42已將堆疊緩衝器61b從堆疊6〇中移除並配置緩衝器 6 1 b供自己使用。 -15- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) (請先閱讀背面之注意事項再填寫本頁) 訂!——擎jtL. 1222011
經濟部智慧財產局員工消費合作社印制衣 五、發明說明(13 ) 參考圖7 A ’將説明把緩衝器加到堆疊中的處理。線串 41將處理緩衝器62(顯示在圖6B中)推到堆疊上,藉由執 行2 0 1指令"PUSH # 1 ΟχΟ 1 ”。引數〇χ〇!爲緩衝器6 2的指 標’因爲它是緩衝器中位置的位址空間共同的前置。此推 入指令在匯流排5 5上傳送到控制邏輯5 1。 在接收到推入指令時,控制邏輯5 1解碼2 〇 2指令並決定 203,對應此指令的SRAM暫存器,根據推入指令的第二 個引數。因爲此第二個引數爲”#1”,此對應暫存器爲Q1。 此控制邏輯5 1從推入指令的第三個引數(〇χ〇1)決定出要推 入的位址。此控制邏輯決定2 〇 5,Q 1暫存器的内容,藉由 謂取暫存器位置的値。此値OxAl爲圖6Β堆疊中Q1暫存器 的内谷。此控制邏輯儲存206,Q1暫存器内容(〇xai)在位 址爲推入位址(0x01)的SRAM位置中。此控制邏輯接著儲 存207,推入位址(0x01)在qi暫存器中。 參考圖7 B,將説明在圖7 A動作後的堆疊内容。如示, 此SRAM暫存器Q 1,包含堆疊上第一位置的位址,現在爲 0x01。堆疊上第一位置的位址也是堆疊緩衝器6 t d的位 址,其先前爲線串4 1使用的處理緩衝器6 2。此位置 OxAl,其爲堆疊上第一資料項,現在是堆疊上的第二資料 項。因此,線串41將堆疊緩衝器61 d加到堆疊,使之可分 配給其他線串。線串4 2可稍後配置此堆疊緩衝器6丨d給自 己使用’藉由將之擊出堆疊,如之前圖6 a説明的。 參考圖8’弟一堆疊60b(虛構中顯示的)可以實做在相同 的堆疊模組中,藉由使用第二SRAM控制暫存器來儲存第 -16 - 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) ' ----------- (請先閱讀背面之注意事項再填寫本頁) i 一 -------訂---------^w.
Claims (1)
1222011 益_正替換頁I D8]££^么月"且j 第0901001 π號專利_請案 土文申年6月) 申Μ專利範圍 1. 一種操作處理線串之方法,其包含: 由:-處徑線串將_資料推入到一堆叠上,·以及 由第二處理線串將此資料擊出堆疊。 2·如申請專利範圍第1项的方法’其中此推入包含: 引:弟―線串上執行—推入命令,此推入命令至少有— 決定目前堆疊資料的指標, 決疋與此推入命令引數結合的位置, 將決定出的指標儲存在此決定的位置, 標\ η ^ Λ疋出位^結合的指標,目前堆疊資料指 3. 如二請專利範圍第2項的方法,其中衫—位置包各·· 解碼此推入命令。 ° 4. 如申請專利範圍第2項的方法,其中決定_位 · 的 位7擊出命令的引數儲存在與此推入命令引數;合 理 5·如申請專利範圍第2項的方法,其中該推入命 器命令以及作業系統呼叫中的至少一個。 7疋處 6·如申請專利範圍第丨項的方法,其中擊出包& · 由第二處理線♦執行擊出命令, 口 決定出目前堆疊資料的指標, 將決定出的指標傳回第二處理線季, 從結合目前堆疊資料指標的位置取回前 的指標,以及 再®貝枓 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公董) 2 2 2
將取回的指標指定為目前堆疊資料的指標。 7·如申請專利範圍第6項的方法,其中結人 σ曰則堆疊資料 才曰fe的位置為其位址等於此目前堆疊资 i貝' 枓指標值的位 置。 8.如申請專利範圍第6項的方法,其中結人_ σ㈢則堆璺資料 指標的位置為其位址等於一差異值與目 堆®資料指標 值的和足位置。 9·如申請專利範圍第6項的方法,其中擊出命令為處理哭 指令或作業系統呼叫中的至少一個。 ^ 10·如申請專利範圍第1項的方法,其還包含·· 裝 儲存資料在記憶體缓衝器中,其可利 4用推入到此堆疊 上的資料的緩衝器指標來存取。 11.如申凊專利範圍第1項的方法,其還包含: 利用此擊出資料作為緩衝器指標來存取儲存在記憶體 緩衝器的資訊。 Κ 12·如申清專利範圍第1項的方法,其還包含: 將弟一資料推入到堆©上的第三處理線串。 13·如申請專利範圍第1項的方法,其還包含: 擊出堆疊第二資料的第三處理線串。 14. 一種多線串系統,其包含: 一堆疊模組,其藉由將之推入到堆疊中儲存資料而處 理線串可以藉由將資訊擊出此堆疊來取回資訊, 一第一處理線串,其有包含至少一個將資料推入堆疊 上的命令之第一命令集,以及 -2- 本纸張尺度適用中國國家標準(CNS) Α4規格(210X297公釐) 六、申請專利範圍 個將資料擊出堆叠 其中第一與第二處理線 其中第一與第二處理線 其中分別的處理引擎係 其中此堆疊模組及此處 其中此第一與第二命令 一第二處理線•,其有包含至少 的一命令之第二命令集。 如申請專利範圍第丨4項的系統 串在單一處理引擎上執行。 16.如申請專利範圍第丨4項的系統 争在分別的處理引擎上執行。 17·如申請專利範圍第丨6項的系統 貫做在相同的積體電路上。 18·如申請專利範圍第1 4項的系統 理線串係在相同的積體電路上。 19.如_請專利範圍第1 4項的系統 集為處理器指令集與作業系統指令集的至少一個 肌如申請專利範圍第14項的系,统,其還包含匯流排界面 用在至少一個處理線串與此堆疊模組間的通訊。 21· —種堆疊模組,其包含: 控制邏輯,其回應來自至少兩個處理線串的命令,出 控制邏輯儲存資料在堆疊結構上來回應推入命令γ並孩 堆疊取回資料來回應擊出命令。 P 7 ^ 22·如申請專利範圍第2 }項的堆疊模組,還包含一釺人堆黑 上的最近儲存資料的堆疊指標。 & 23.如_請專利範圍第22項的堆疊模組,還包含與堆疊上第 一'貝料結合的記憶體位置,此第二記憶體位置包本· 一與第二資料結合的指標,其在該第1料=诸存在 堆疊上。 -3-
本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
1222011 六、申請專利範圍 24. 如申請專利範圍第2 2項的堆疊模組,還包含結合第二堆 疊上最近儲存的資料的第二堆疊指標。 25. 如申請專利範圍第2 2項的堆疊模組,其中此堆疊指標為 一暫存器或處理器。 26. 如申請專利範圍第2 3項的堆疊模組,其中該記憶體位置 包含SRAM記憶體。 27. 如申請專利範圍第2 1項的堆疊模組,其中命令為處理器 指令。 28. 如申請專利範圍第2 1項的堆疊模組,其中命令為作業系 統指令。 29. —種包含儲存電腦邏輯之電腦可讀取媒體的物件,此電 腦邏輯包含: 一堆疊模組,組態來儲存來自第一處理線串的資料, 藉由將資料推入到堆疊上並為第二處理線串取回此資 料,藉由將資料擊出堆疊,此堆疊模組回應第一處理線 串的命令將資料儲存在堆疊上以及第二處裡線串命令來 從堆疊取回資料。 30. —種包含儲存電腦可執行指令之電腦可讀取媒體的物 件,此指令使得處理器: 儲存來自第一處理線串的資料,藉由執行一指令來將 資料堆入到堆疊上;以及 為第二處理線串取回資料,藉由執行指令將資料從堆 疊擊出供第二線_使用。 -4- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US09/479,377 US6631462B1 (en) | 2000-01-05 | 2000-01-05 | Memory shared between processing threads |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| TWI222011B true TWI222011B (en) | 2004-10-11 |
Family
ID=23903749
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW090100117A TWI222011B (en) | 2000-01-05 | 2001-01-03 | Memory shared between processing threads |
Country Status (10)
| Country | Link |
|---|---|
| US (2) | US6631462B1 (zh) |
| EP (1) | EP1247168B1 (zh) |
| CN (1) | CN1253784C (zh) |
| AT (1) | ATE280972T1 (zh) |
| AU (1) | AU2280101A (zh) |
| DE (1) | DE60015395T2 (zh) |
| HK (1) | HK1046180B (zh) |
| SG (1) | SG149673A1 (zh) |
| TW (1) | TWI222011B (zh) |
| WO (1) | WO2001050247A2 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI417792B (zh) * | 2007-02-06 | 2013-12-01 | Ibm | 在處理器系統之指令階使資源分配識別之方法及裝置 |
Families Citing this family (70)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030095967A1 (en) * | 1999-01-25 | 2003-05-22 | Mackay Fabienne | BAFF, inhibitors thereof and their use in the modulation of B-cell response and treatment of autoimmune disorders |
| US6668317B1 (en) | 1999-08-31 | 2003-12-23 | Intel Corporation | Microengine for parallel processor architecture |
| US6606704B1 (en) * | 1999-08-31 | 2003-08-12 | Intel Corporation | Parallel multithreaded processor with plural microengines executing multiple threads each microengine having loadable microcode |
| US6427196B1 (en) | 1999-08-31 | 2002-07-30 | Intel Corporation | SRAM controller for parallel processor architecture including address and command queue and arbiter |
| US6983350B1 (en) | 1999-08-31 | 2006-01-03 | Intel Corporation | SDRAM controller for parallel processor architecture |
| US7546444B1 (en) | 1999-09-01 | 2009-06-09 | Intel Corporation | Register set used in multithreaded parallel processor architecture |
| US7191309B1 (en) | 1999-09-01 | 2007-03-13 | Intel Corporation | Double shift instruction for micro engine used in multithreaded parallel processor architecture |
| CA2383531A1 (en) | 1999-09-01 | 2001-03-08 | Intel Corporation | Instruction for multithreaded parallel processor |
| US6532509B1 (en) | 1999-12-22 | 2003-03-11 | Intel Corporation | Arbitrating command requests in a parallel multi-threaded processing system |
| US6694380B1 (en) | 1999-12-27 | 2004-02-17 | Intel Corporation | Mapping requests from a processing unit that uses memory-mapped input-output space |
| US6307789B1 (en) | 1999-12-28 | 2001-10-23 | Intel Corporation | Scratchpad memory |
| US7620702B1 (en) | 1999-12-28 | 2009-11-17 | Intel Corporation | Providing real-time control data for a network processor |
| US6625654B1 (en) | 1999-12-28 | 2003-09-23 | Intel Corporation | Thread signaling in multi-threaded network processor |
| US6631430B1 (en) | 1999-12-28 | 2003-10-07 | Intel Corporation | Optimizations to receive packet status from fifo bus |
| US6661794B1 (en) | 1999-12-29 | 2003-12-09 | Intel Corporation | Method and apparatus for gigabit packet assignment for multithreaded packet processing |
| US6976095B1 (en) | 1999-12-30 | 2005-12-13 | Intel Corporation | Port blocking technique for maintaining receive packet ordering for a multiple ethernet port switch |
| US7480706B1 (en) | 1999-12-30 | 2009-01-20 | Intel Corporation | Multi-threaded round-robin receive for fast network port |
| US6952824B1 (en) | 1999-12-30 | 2005-10-04 | Intel Corporation | Multi-threaded sequenced receive for fast network port stream of packets |
| US6584522B1 (en) | 1999-12-30 | 2003-06-24 | Intel Corporation | Communication between processors |
| US7681018B2 (en) | 2000-08-31 | 2010-03-16 | Intel Corporation | Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set |
| US7020871B2 (en) | 2000-12-21 | 2006-03-28 | Intel Corporation | Breakpoint method for parallel hardware threads in multithreaded processor |
| US7216204B2 (en) | 2001-08-27 | 2007-05-08 | Intel Corporation | Mechanism for providing early coherency detection to enable high performance memory updates in a latency sensitive multithreaded environment |
| US7487505B2 (en) | 2001-08-27 | 2009-02-03 | Intel Corporation | Multithreaded microprocessor with register allocation based on number of active threads |
| US7225281B2 (en) | 2001-08-27 | 2007-05-29 | Intel Corporation | Multiprocessor infrastructure for providing flexible bandwidth allocation via multiple instantiations of separate data buses, control buses and support mechanisms |
| US6868476B2 (en) | 2001-08-27 | 2005-03-15 | Intel Corporation | Software controlled content addressable memory in a general purpose execution datapath |
| US7299470B2 (en) * | 2001-09-13 | 2007-11-20 | International Business Machines Corporation | Method and system for regulating communication traffic using a limiter thread |
| US7126952B2 (en) | 2001-09-28 | 2006-10-24 | Intel Corporation | Multiprotocol decapsulation/encapsulation control structure and packet protocol conversion method |
| US7158964B2 (en) | 2001-12-12 | 2007-01-02 | Intel Corporation | Queue management |
| US7107413B2 (en) | 2001-12-17 | 2006-09-12 | Intel Corporation | Write queue descriptor count instruction for high speed queuing |
| US7269179B2 (en) | 2001-12-18 | 2007-09-11 | Intel Corporation | Control mechanisms for enqueue and dequeue operations in a pipelined network processor |
| US7895239B2 (en) | 2002-01-04 | 2011-02-22 | Intel Corporation | Queue arrays in network devices |
| US7181573B2 (en) | 2002-01-07 | 2007-02-20 | Intel Corporation | Queue array caching in network devices |
| US6934951B2 (en) | 2002-01-17 | 2005-08-23 | Intel Corporation | Parallel processor with functional pipeline providing programming engines by supporting multiple contexts and critical section |
| US7610451B2 (en) | 2002-01-25 | 2009-10-27 | Intel Corporation | Data transfer mechanism using unidirectional pull bus and push bus |
| US7181594B2 (en) | 2002-01-25 | 2007-02-20 | Intel Corporation | Context pipelines |
| US7149226B2 (en) | 2002-02-01 | 2006-12-12 | Intel Corporation | Processing data packets |
| US7437724B2 (en) | 2002-04-03 | 2008-10-14 | Intel Corporation | Registers for data transfers |
| US7471688B2 (en) | 2002-06-18 | 2008-12-30 | Intel Corporation | Scheduling system for transmission of cells to ATM virtual circuits and DSL ports |
| US7337275B2 (en) | 2002-08-13 | 2008-02-26 | Intel Corporation | Free list and ring data structure management |
| US7352769B2 (en) | 2002-09-12 | 2008-04-01 | Intel Corporation | Multiple calendar schedule reservation structure and method |
| US7275247B2 (en) * | 2002-09-19 | 2007-09-25 | International Business Machines Corporation | Method and apparatus for handling threads in a data processing system |
| US7433307B2 (en) | 2002-11-05 | 2008-10-07 | Intel Corporation | Flow control in a network environment |
| US6941438B2 (en) | 2003-01-10 | 2005-09-06 | Intel Corporation | Memory interleaving |
| US7233335B2 (en) * | 2003-04-21 | 2007-06-19 | Nividia Corporation | System and method for reserving and managing memory spaces in a memory resource |
| US7443836B2 (en) | 2003-06-16 | 2008-10-28 | Intel Corporation | Processing a data packet |
| US7213099B2 (en) | 2003-12-30 | 2007-05-01 | Intel Corporation | Method and apparatus utilizing non-uniformly distributed DRAM configurations and to detect in-range memory address matches |
| JP4586526B2 (ja) | 2004-02-27 | 2010-11-24 | ソニー株式会社 | 情報処理装置、情報処理方法、情報処理システムおよび情報処理用プログラム |
| JP2005276165A (ja) * | 2004-02-27 | 2005-10-06 | Sony Corp | 情報処理装置、ネットワークシステム状況呈示方法およびコンピュータプログラム |
| US7418540B2 (en) * | 2004-04-28 | 2008-08-26 | Intel Corporation | Memory controller with command queue look-ahead |
| CN100349142C (zh) * | 2004-05-25 | 2007-11-14 | 中国科学院计算技术研究所 | 一种用于虚拟共享存储系统的远程取页方法及网络接口卡 |
| US20060067348A1 (en) * | 2004-09-30 | 2006-03-30 | Sanjeev Jain | System and method for efficient memory access of queue control data structures |
| US7277990B2 (en) | 2004-09-30 | 2007-10-02 | Sanjeev Jain | Method and apparatus providing efficient queue descriptor memory access |
| US7555630B2 (en) | 2004-12-21 | 2009-06-30 | Intel Corporation | Method and apparatus to provide efficient communication between multi-threaded processing elements in a processor unit |
| US7418543B2 (en) | 2004-12-21 | 2008-08-26 | Intel Corporation | Processor having content addressable memory with command ordering |
| US20060140203A1 (en) * | 2004-12-28 | 2006-06-29 | Sanjeev Jain | System and method for packet queuing |
| US7467256B2 (en) | 2004-12-28 | 2008-12-16 | Intel Corporation | Processor having content addressable memory for block-based queue structures |
| DE102005026721A1 (de) * | 2005-06-09 | 2007-01-11 | Rohde & Schwarz Gmbh & Co. Kg | Verfahren zur Speicherverwaltung von digitalen Recheneinrichtungen |
| US20070044103A1 (en) * | 2005-07-25 | 2007-02-22 | Mark Rosenbluth | Inter-thread communication of lock protected data |
| US7853951B2 (en) * | 2005-07-25 | 2010-12-14 | Intel Corporation | Lock sequencing to reorder and grant lock requests from multiple program threads |
| US20070124728A1 (en) * | 2005-11-28 | 2007-05-31 | Mark Rosenbluth | Passing work between threads |
| US20070157030A1 (en) * | 2005-12-30 | 2007-07-05 | Feghali Wajdi K | Cryptographic system component |
| US8051163B2 (en) * | 2006-05-11 | 2011-11-01 | Computer Associates Think, Inc. | Synthetic transactions based on system history and load |
| US8031612B2 (en) | 2008-09-11 | 2011-10-04 | Intel Corporation | Altering operation of a network interface controller based on network traffic |
| US8819700B2 (en) * | 2010-12-22 | 2014-08-26 | Lsi Corporation | System and method for synchronous inter-thread communication |
| US10725997B1 (en) * | 2012-06-18 | 2020-07-28 | EMC IP Holding Company LLC | Method and systems for concurrent collection and generation of shared data |
| US9424027B2 (en) * | 2013-07-29 | 2016-08-23 | Ralph Moore | Message management system for information transfer within a multitasking system |
| US9483272B2 (en) | 2014-09-30 | 2016-11-01 | Freescale Semiconductor, Inc. | Systems and methods for managing return stacks in a multi-threaded data processing system |
| CN105868014A (zh) * | 2016-04-08 | 2016-08-17 | 京信通信技术(广州)有限公司 | 内存优化的队列方法和系统 |
| US10901887B2 (en) * | 2018-05-17 | 2021-01-26 | International Business Machines Corporation | Buffered freepointer management memory system |
| CN115712902B (zh) * | 2022-11-28 | 2026-04-17 | 国网山东省电力公司信息通信公司 | 面向可执行文件的off-by-one的漏洞检测方法及系统 |
Family Cites Families (106)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3373408A (en) * | 1965-04-16 | 1968-03-12 | Rca Corp | Computer capable of switching between programs without storage and retrieval of the contents of operation registers |
| BE795789A (fr) * | 1972-03-08 | 1973-06-18 | Burroughs Corp | Microprogramme comportant une micro-instruction de recouvrement |
| IT986411B (it) * | 1973-06-05 | 1975-01-30 | Olivetti E C Spa | Sistema per trasferire il control lo delle elaborazioni da un primo livello prioritario ad un secondo livello prioritario |
| US3889243A (en) * | 1973-10-18 | 1975-06-10 | Ibm | Stack mechanism for a data processor |
| US4016548A (en) * | 1975-04-11 | 1977-04-05 | Sperry Rand Corporation | Communication multiplexer module |
| CH584488A5 (zh) * | 1975-05-05 | 1977-01-31 | Ibm | |
| US4075691A (en) * | 1975-11-06 | 1978-02-21 | Bunker Ramo Corporation | Communication control unit |
| JPS56164464A (en) * | 1980-05-21 | 1981-12-17 | Tatsuo Nogi | Parallel processing computer |
| US4831358A (en) * | 1982-12-21 | 1989-05-16 | Texas Instruments Incorporated | Communications system employing control line minimization |
| US4745544A (en) * | 1985-12-12 | 1988-05-17 | Texas Instruments Incorporated | Master/slave sequencing processor with forced I/O |
| US5115507A (en) * | 1987-12-23 | 1992-05-19 | U.S. Philips Corp. | System for management of the priorities of access to a memory and its application |
| FR2625340B1 (fr) * | 1987-12-23 | 1990-05-04 | Labo Electronique Physique | Systeme graphique avec controleur graphique et controleur de dram |
| US5179702A (en) * | 1989-12-29 | 1993-01-12 | Supercomputer Systems Limited Partnership | System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling |
| DE69132495T2 (de) * | 1990-03-16 | 2001-06-13 | Texas Instruments Inc., Dallas | Verteilter Verarbeitungsspeicher |
| US5390329A (en) * | 1990-06-11 | 1995-02-14 | Cray Research, Inc. | Responding to service requests using minimal system-side context in a multiprocessor environment |
| US5432918A (en) * | 1990-06-29 | 1995-07-11 | Digital Equipment Corporation | Method and apparatus for ordering read and write operations using conflict bits in a write queue |
| US5404482A (en) * | 1990-06-29 | 1995-04-04 | Digital Equipment Corporation | Processor and method for preventing access to a locked memory block by recording a lock in a content addressable memory with outstanding cache fills |
| KR960001273B1 (ko) * | 1991-04-30 | 1996-01-25 | 가부시키가이샤 도시바 | 단일칩 마이크로컴퓨터 |
| US5623489A (en) * | 1991-09-26 | 1997-04-22 | Ipc Information Systems, Inc. | Channel allocation system for distributed digital switching network |
| US5392412A (en) * | 1991-10-03 | 1995-02-21 | Standard Microsystems Corporation | Data communication controller for use with a single-port data packet buffer |
| GB2260429B (en) * | 1991-10-11 | 1995-05-24 | Intel Corp | Versatile cache memory |
| US5392391A (en) * | 1991-10-18 | 1995-02-21 | Lsi Logic Corporation | High performance graphics applications controller |
| US5442797A (en) * | 1991-12-04 | 1995-08-15 | Casavant; Thomas L. | Latency tolerant risc-based multiple processor with event driven locality managers resulting from variable tagging |
| JP2823767B2 (ja) * | 1992-02-03 | 1998-11-11 | 松下電器産業株式会社 | レジスタファイル |
| US5404484A (en) * | 1992-09-16 | 1995-04-04 | Hewlett-Packard Company | Cache system for reducing memory latency times |
| US5617327A (en) * | 1993-07-30 | 1997-04-01 | Xilinx, Inc. | Method for entering state flow diagrams using schematic editor programs |
| EP0617361B1 (en) * | 1993-03-26 | 2001-11-28 | Cabletron Systems, Inc. | Scheduling method and apparatus for a communication network |
| US6311286B1 (en) * | 1993-04-30 | 2001-10-30 | Nec Corporation | Symmetric multiprocessing system with unified environment and distributed system functions |
| CA2122182A1 (en) * | 1993-05-20 | 1994-11-21 | Rene Leblanc | Method for rapid prototyping of programming problems |
| JPH0740746A (ja) * | 1993-07-29 | 1995-02-10 | Aisin Seiki Co Ltd | 車両用サンルーフ装置のチエツク機構 |
| US5446736A (en) * | 1993-10-07 | 1995-08-29 | Ast Research, Inc. | Method and apparatus for connecting a node to a wireless network using a standard protocol |
| US5740402A (en) * | 1993-12-15 | 1998-04-14 | Silicon Graphics, Inc. | Conflict resolution in interleaved memory systems with multiple parallel accesses |
| US5490204A (en) * | 1994-03-01 | 1996-02-06 | Safco Corporation | Automated quality assessment system for cellular networks |
| JP3547482B2 (ja) * | 1994-04-15 | 2004-07-28 | 株式会社日立製作所 | 情報処理装置 |
| US5542088A (en) * | 1994-04-29 | 1996-07-30 | Intergraph Corporation | Method and apparatus for enabling control of task execution |
| US5721870A (en) * | 1994-05-25 | 1998-02-24 | Nec Corporation | Lock control for a shared main storage data processing system |
| US5781774A (en) * | 1994-06-29 | 1998-07-14 | Intel Corporation | Processor having operating modes for an upgradeable multiprocessor computer system |
| JP3810449B2 (ja) * | 1994-07-20 | 2006-08-16 | 富士通株式会社 | キュー装置 |
| US5625812A (en) * | 1994-11-14 | 1997-04-29 | David; Michael M. | Method of data structure extraction for computer systems operating under the ANSI-92 SQL2 outer join protocol |
| JP3169779B2 (ja) * | 1994-12-19 | 2001-05-28 | 日本電気株式会社 | マルチスレッドプロセッサ |
| US5784712A (en) * | 1995-03-01 | 1998-07-21 | Unisys Corporation | Method and apparatus for locally generating addressing information for a memory access |
| US5649157A (en) * | 1995-03-30 | 1997-07-15 | Hewlett-Packard Co. | Memory controller with priority queues |
| US5886992A (en) * | 1995-04-14 | 1999-03-23 | Valtion Teknillinen Tutkimuskeskus | Frame synchronized ring system and method |
| US5758184A (en) * | 1995-04-24 | 1998-05-26 | Microsoft Corporation | System for performing asynchronous file operations requested by runnable threads by processing completion messages with different queue thread and checking for completion by runnable threads |
| US5592622A (en) * | 1995-05-10 | 1997-01-07 | 3Com Corporation | Network intermediate system with message passing architecture |
| JPH08320797A (ja) * | 1995-05-24 | 1996-12-03 | Fuji Xerox Co Ltd | プログラム制御システム |
| US5613071A (en) * | 1995-07-14 | 1997-03-18 | Intel Corporation | Method and apparatus for providing remote memory access in a distributed memory multiprocessor system |
| RU2170494C2 (ru) * | 1995-12-29 | 2001-07-10 | Тикси. Ком ГмбХ Телекоммьюникейшн Системс | Способ и микрокомпьютерная система для автоматической безопасной и прямой передачи данных |
| US6201807B1 (en) * | 1996-02-27 | 2001-03-13 | Lucent Technologies | Real-time hardware method and apparatus for reducing queue processing |
| US5761507A (en) * | 1996-03-05 | 1998-06-02 | International Business Machines Corporation | Client/server architecture supporting concurrent servers within a server with a transaction manager providing server/connection decoupling |
| US5764915A (en) * | 1996-03-08 | 1998-06-09 | International Business Machines Corporation | Object-oriented communication interface for network protocol access using the selected newly created protocol interface object and newly created protocol layer objects in the protocol stack |
| US5784649A (en) * | 1996-03-13 | 1998-07-21 | Diamond Multimedia Systems, Inc. | Multi-threaded FIFO pool buffer and bus transfer control system |
| US6199133B1 (en) * | 1996-03-29 | 2001-03-06 | Compaq Computer Corporation | Management communication bus for networking devices |
| KR100219597B1 (ko) * | 1996-03-30 | 1999-09-01 | 윤종용 | 씨디-롬 드라이브에서의 큐잉 제어 방법 |
| JPH1091443A (ja) | 1996-05-22 | 1998-04-10 | Seiko Epson Corp | 情報処理回路、マイクロコンピュータ及び電子機器 |
| US5946487A (en) * | 1996-06-10 | 1999-08-31 | Lsi Logic Corporation | Object-oriented multi-media architecture |
| JP3541335B2 (ja) * | 1996-06-28 | 2004-07-07 | 富士通株式会社 | 情報処理装置及び分散処理制御方法 |
| US6023742A (en) * | 1996-07-18 | 2000-02-08 | University Of Washington | Reconfigurable computing architecture for providing pipelined data paths |
| US5745913A (en) * | 1996-08-05 | 1998-04-28 | Exponential Technology, Inc. | Multi-processor DRAM controller that prioritizes row-miss requests to stale banks |
| US5928736A (en) * | 1996-09-09 | 1999-07-27 | Raytheon Company | Composite structure having integrated aperture and method for its preparation |
| KR100417398B1 (ko) * | 1996-09-11 | 2004-04-03 | 엘지전자 주식회사 | 디에스피의명령어블록반복처리방법 |
| US6072781A (en) * | 1996-10-22 | 2000-06-06 | International Business Machines Corporation | Multi-tasking adapter for parallel network applications |
| US5860158A (en) * | 1996-11-15 | 1999-01-12 | Samsung Electronics Company, Ltd. | Cache control unit with a cache request transaction-oriented protocol |
| US5905876A (en) * | 1996-12-16 | 1999-05-18 | Intel Corporation | Queue ordering for memory and I/O transactions in a multiple concurrent transaction computer system |
| US6212542B1 (en) * | 1996-12-16 | 2001-04-03 | International Business Machines Corporation | Method and system for executing a program within a multiscalar processor by processing linked thread descriptors |
| US6256115B1 (en) * | 1997-02-21 | 2001-07-03 | Worldquest Network, Inc. | Facsimile network |
| US5742587A (en) * | 1997-02-28 | 1998-04-21 | Lanart Corporation | Load balancing port switching hub |
| US5905889A (en) | 1997-03-20 | 1999-05-18 | International Business Machines Corporation | Resource management system using next available integer from an integer pool and returning the integer thereto as the next available integer upon completion of use |
| US5898885A (en) * | 1997-03-31 | 1999-04-27 | International Business Machines Corporation | Method and system for executing a non-native stack-based instruction within a computer system |
| US5918235A (en) * | 1997-04-04 | 1999-06-29 | Hewlett-Packard Company | Object surrogate with active computation and probablistic counter |
| US6535878B1 (en) * | 1997-05-02 | 2003-03-18 | Roxio, Inc. | Method and system for providing on-line interactivity over a server-client network |
| US6182177B1 (en) * | 1997-06-13 | 2001-01-30 | Intel Corporation | Method and apparatus for maintaining one or more queues of elements such as commands using one or more token queues |
| US6092158A (en) * | 1997-06-13 | 2000-07-18 | Intel Corporation | Method and apparatus for arbitrating between command streams |
| US6067585A (en) * | 1997-06-23 | 2000-05-23 | Compaq Computer Corporation | Adaptive interface controller that can operate with segments of different protocol and transmission rates in a single integrated device |
| US5887134A (en) * | 1997-06-30 | 1999-03-23 | Sun Microsystems | System and method for preserving message order while employing both programmed I/O and DMA operations |
| US6393483B1 (en) * | 1997-06-30 | 2002-05-21 | Adaptec, Inc. | Method and apparatus for network interface card load balancing and port aggregation |
| US6247025B1 (en) * | 1997-07-17 | 2001-06-12 | International Business Machines Corporation | Locking and unlocking mechanism for controlling concurrent access to objects |
| GB2327784B (en) * | 1997-07-28 | 2002-04-03 | Microapl Ltd | A method of carrying out computer operations |
| US6170051B1 (en) * | 1997-08-01 | 2001-01-02 | Micron Technology, Inc. | Apparatus and method for program level parallelism in a VLIW processor |
| WO1999009469A1 (en) * | 1997-08-18 | 1999-02-25 | Koninklijke Philips Electronics N.V. | Stack oriented data processing device |
| US6014729A (en) * | 1997-09-29 | 2000-01-11 | Firstpass, Inc. | Shared memory arbitration apparatus and method |
| US6085294A (en) * | 1997-10-24 | 2000-07-04 | Compaq Computer Corporation | Distributed data dependency stall mechanism |
| US6061710A (en) * | 1997-10-29 | 2000-05-09 | International Business Machines Corporation | Multithreaded processor incorporating a thread latch register for interrupt service new pending threads |
| US5915123A (en) * | 1997-10-31 | 1999-06-22 | Silicon Spice | Method and apparatus for controlling configuration memory contexts of processing elements in a network of multiple context processing elements |
| EP0918280B1 (en) * | 1997-11-19 | 2004-03-24 | IMEC vzw | System and method for context switching on predetermined interruption points |
| US6360262B1 (en) * | 1997-11-24 | 2002-03-19 | International Business Machines Corporation | Mapping web server objects to TCP/IP ports |
| JPH11203860A (ja) * | 1998-01-07 | 1999-07-30 | Nec Corp | 半導体記憶装置 |
| US6223238B1 (en) * | 1998-03-31 | 2001-04-24 | Micron Electronics, Inc. | Method of peer-to-peer mastering over a computer bus |
| US6079008A (en) * | 1998-04-03 | 2000-06-20 | Patton Electronics Co. | Multiple thread multiple data predictive coded parallel processing system and method |
| KR100280460B1 (ko) * | 1998-04-08 | 2001-02-01 | 김영환 | 데이터 처리 장치 및 이의 복수의 스레드 처리 방법 |
| US6092127A (en) * | 1998-05-15 | 2000-07-18 | Hewlett-Packard Company | Dynamic allocation and reallocation of buffers in links of chained DMA operations by receiving notification of buffer full and maintaining a queue of buffers available |
| US6373848B1 (en) * | 1998-07-28 | 2002-04-16 | International Business Machines Corporation | Architecture for a multi-port adapter with a single media access control (MAC) |
| US6073215A (en) * | 1998-08-03 | 2000-06-06 | Motorola, Inc. | Data processing system having a data prefetch mechanism and method therefor |
| US6366998B1 (en) * | 1998-10-14 | 2002-04-02 | Conexant Systems, Inc. | Reconfigurable functional units for implementing a hybrid VLIW-SIMD programming model |
| US6347344B1 (en) * | 1998-10-14 | 2002-02-12 | Hitachi, Ltd. | Integrated multimedia system with local processor, data transfer switch, processing modules, fixed functional unit, data streamer, interface unit and multiplexer, all integrated on multimedia processor |
| US6212611B1 (en) * | 1998-11-03 | 2001-04-03 | Intel Corporation | Method and apparatus for providing a pipelined memory controller |
| US6389449B1 (en) * | 1998-12-16 | 2002-05-14 | Clearwater Networks, Inc. | Interstream control and communications for multi-streaming digital processors |
| US6338078B1 (en) * | 1998-12-17 | 2002-01-08 | International Business Machines Corporation | System and method for sequencing packets for multiprocessor parallelization in a computer network system |
| US6356692B1 (en) * | 1999-02-04 | 2002-03-12 | Hitachi, Ltd. | Optical module, transmitter, receiver, optical switch, optical communication unit, add-and-drop multiplexing unit, and method for manufacturing the optical module |
| US6529983B1 (en) * | 1999-11-03 | 2003-03-04 | Cisco Technology, Inc. | Group and virtual locking mechanism for inter processor synchronization |
| US6532509B1 (en) * | 1999-12-22 | 2003-03-11 | Intel Corporation | Arbitrating command requests in a parallel multi-threaded processing system |
| US6694380B1 (en) * | 1999-12-27 | 2004-02-17 | Intel Corporation | Mapping requests from a processing unit that uses memory-mapped input-output space |
| US6324624B1 (en) * | 1999-12-28 | 2001-11-27 | Intel Corporation | Read lock miss control and queue management |
| US6307789B1 (en) * | 1999-12-28 | 2001-10-23 | Intel Corporation | Scratchpad memory |
| US6560667B1 (en) * | 1999-12-28 | 2003-05-06 | Intel Corporation | Handling contiguous memory references in a multi-queue system |
| US6584522B1 (en) * | 1999-12-30 | 2003-06-24 | Intel Corporation | Communication between processors |
-
2000
- 2000-01-05 US US09/479,377 patent/US6631462B1/en not_active Expired - Lifetime
- 2000-12-19 AU AU22801/01A patent/AU2280101A/en not_active Abandoned
- 2000-12-19 SG SG200403754-5A patent/SG149673A1/en unknown
- 2000-12-19 WO PCT/US2000/034537 patent/WO2001050247A2/en not_active Ceased
- 2000-12-19 DE DE60015395T patent/DE60015395T2/de not_active Expired - Lifetime
- 2000-12-19 CN CNB008192847A patent/CN1253784C/zh not_active Expired - Fee Related
- 2000-12-19 HK HK02107751.2A patent/HK1046180B/zh not_active IP Right Cessation
- 2000-12-19 AT AT00986590T patent/ATE280972T1/de not_active IP Right Cessation
- 2000-12-19 EP EP20000986590 patent/EP1247168B1/en not_active Expired - Lifetime
-
2001
- 2001-01-03 TW TW090100117A patent/TWI222011B/zh not_active IP Right Cessation
-
2003
- 2003-08-20 US US10/644,337 patent/US20040039895A1/en not_active Abandoned
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI417792B (zh) * | 2007-02-06 | 2013-12-01 | Ibm | 在處理器系統之指令階使資源分配識別之方法及裝置 |
Also Published As
| Publication number | Publication date |
|---|---|
| DE60015395T2 (de) | 2005-11-10 |
| ATE280972T1 (de) | 2004-11-15 |
| SG149673A1 (en) | 2009-02-27 |
| CN1253784C (zh) | 2006-04-26 |
| US20040039895A1 (en) | 2004-02-26 |
| HK1046180B (zh) | 2005-05-13 |
| EP1247168A2 (en) | 2002-10-09 |
| AU2280101A (en) | 2001-07-16 |
| CN1451114A (zh) | 2003-10-22 |
| WO2001050247A2 (en) | 2001-07-12 |
| EP1247168B1 (en) | 2004-10-27 |
| HK1046180A1 (zh) | 2002-12-27 |
| DE60015395D1 (de) | 2004-12-02 |
| WO2001050247A3 (en) | 2002-01-31 |
| US6631462B1 (en) | 2003-10-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI222011B (en) | Memory shared between processing threads | |
| US11489791B2 (en) | Virtual switch scaling for networking applications | |
| TWI229259B (en) | A method and related apparatus and computer program product for distributed memory control and bandwidth optimization | |
| US9280290B2 (en) | Method for steering DMA write requests to cache memory | |
| TWI231125B (en) | Transmitting multicast data packets | |
| US7234004B2 (en) | Method, apparatus and program product for low latency I/O adapter queuing in a computer system | |
| TW508522B (en) | System input/output interface design for scaling | |
| TW525087B (en) | Processor architecture for executing two different fixed-length instruction sets | |
| CN110520851B (zh) | 数据处理系统的执行线程之间的基于缓存的通信 | |
| TW200302417A (en) | Data transfer mechanism | |
| TW200307875A (en) | Queue management | |
| US20150268985A1 (en) | Low Latency Data Delivery | |
| US8902915B2 (en) | Dataport and methods thereof | |
| WO2025138694A1 (zh) | 数据传输方法、设备及系统 | |
| US20230388371A1 (en) | System and method for accessing remote resource | |
| KR102757653B1 (ko) | 확장 메모리 인터페이스 | |
| US8850134B1 (en) | Method and system for aligning transaction split boundaries to memory burst boundaries | |
| CN117389685A (zh) | 虚拟机热迁移标脏方法及其装置、后端设备、芯片 | |
| US20250028640A1 (en) | Mechanism to enable out-of-order packet processing in a datatype engine | |
| TWI841060B (zh) | 快速查找裝置及交易風控裝置 | |
| WO2025050972A1 (zh) | Sram阵列的数据访问装置、系统、方法、设备、芯片和介质 | |
| WO2020197620A1 (en) | Extended memory operations | |
| US8244919B2 (en) | Data transfer apparatus, system and method using the same | |
| TW591405B (en) | Non-copy shared stack and register set device and dual language processor structure using the same | |
| TW579464B (en) | Transmission circuit and method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |