TW385395B - Method of shared intervention for cache lines in the shared state for SMP bus - Google Patents

Method of shared intervention for cache lines in the shared state for SMP bus Download PDF

Info

Publication number
TW385395B
TW385395B TW086116353A TW86116353A TW385395B TW 385395 B TW385395 B TW 385395B TW 086116353 A TW086116353 A TW 086116353A TW 86116353 A TW86116353 A TW 86116353A TW 385395 B TW385395 B TW 385395B
Authority
TW
Taiwan
Prior art keywords
memory
cache
response
cache memory
processing unit
Prior art date
Application number
TW086116353A
Other languages
English (en)
Inventor
Ravi Kumar Arimilli
John Steven Dodson
John Michael Kaiser
Jerry Don Lewis
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Application granted granted Critical
Publication of TW385395B publication Critical patent/TW385395B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Description

經濟部中央標準局員工消費合作社印製 A7 --------—___B7 _ 五、發明説明(丨) " ---- 發明背景 1.發明镅媸 本發明裨言之係關於電腦系統,且更明確地説係關於-種=改善對稱型多處理器電腦系統之記憶體讀取型運作 資把的,法,而該種方法是積由當發出處理器想要讀取 料且可在另一處理器之一快取記憶體發現處於未經修 改狀態之該資料時,使用插入來達成。 1 ·相關技術説明 傳,’充之多處理器電腦系統丨0之基本結構展示於圖i。電 腦系統ίο具有許多處理單元―,而該等處理單元之二處理單 元l2a&〗2b,受到展示,且該二處理單元i2a及12b連 j至各種週邊裝置,而該等週邊裝置包含輸入/輸出(1/〇) 裝置14(例如顯示器,鍵盤,圖形指示器(滑鼠),與永久儲 存裝置(硬碟機)),記憶體裝置16(例如隨機存取記憶體或 RAM),與軔體18,且處理單元使用記憶體装置16來勃—行 ϋ指令,而韌體u之主要目的是無論何時電腦第一次受 到開啓則自該等週邊裝置之一(通常是永久記憶體裝置)尋找 並載入一作業系統。處理單元12&及121)經由各種裝置,包 含一般化連接裝置或匯流排2 〇或直接記憶體存取通道(未加 以展示)’來與該等週邊裝置進行通訊。電腦系統1 〇可具有 坪多未受到展示之額外元件,例如串列埠及並列埠,而該 等'埠可連接至,例如,數據機或印表機。熟悉本技藝領域 者應可進一步理解存在其他元件可與圖1之方塊圖所展示之 該等元件一起使用;例如,顯示轉接器可用以控制視訊顯 -4- 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公爱) ---------¾------,玎------0 (請先閲讀背面之注t-事項#_填寫本頁) 示恶, 可具有多於二處理琴 在對稱型多‘理丨 相同;換句話說, 可用以存取記憶體1 6,等等β電腦也 元。 (SMP)電腦中,所有處理單元通常皆 們皆使用相同之指令集或子集ϋ定 集或予集來運作,且通常具有相同之架構…典型之架構 展示於圖】。處理單元包含—處理器核心22,且處理器核心 U具有多個暫存器及執行單元,而該等暫存器及執行單元 Τ程式扣々以择作電腦。—處理單元之範例是IΒ Μ公司 所販售之P 〇werPcTM處理器.。處理單元也可具有一或更多快 取圮憶體,例如一指令快取記憶體24及—資料快取記憶體 2 6,且茲等快取記憶體是利用快速記憶體裝置來加以建構 。快取圮憶體通常是用以暫時儲存一處理器可能重複存取 '^値,以藉由免除自記憶體丨6載入該等値之較耗時步骚來 加快處理。當該等快取記憶體與處理器核心整合封裝於單 —積體晶片28時,該等快取記憶體稱爲,,板上"快取記憶體 。每一快取記憶體皆相關於一快取記憶體控制器(未加以展 示),且名快取a己憶體控制器管理資料及指令在處理器核心 及快取記憶體間之轉移。 經濟部中央橾準局貝工消費合作杜印裝 處理單元可包含額外之快取記憶體,例如快取記憶體3 〇 ,而快取g己憶體3 0稱爲弟一階(L 2 )快取記憶體,因爲快.取 記憶體30支援板上(第一階)快取記憶體24及26。換句話説 ,抉取記憶體3 0充當記憶體1 6及板上快取記憶體之中間裝 置,且可儲存遠較板上快取記憶體爲多之資訊(指令及資料) ’―而付出之代價是存取時間較長。例如,快取記憶體3 〇可 本紙張尺度適用中國國家標準(CNS ) A4规格(2丨OX2?7公釐〉 A7 B7 五、發明説明( 爲一儲存容量爲256或512千位元組之晶片,而處理器可爲 一 IBM Powei:PCTM 604系列之處理器,且該處理器具有綠 儲存容量爲6 4千位元組之板上快取記憶體。快取記憶體3 〇 連接至匯流排20,且所有自記憶體16至處理器核心22之資 訊載入皆必須經由快取記憶體3 0。雖然圖1只描繪2 -階快取 記憶體階層,也可提供多階快取記憶體階層,其中存在許 多階(L 3,L 4,等等)之串聯連接之快取記憶體。 經濟部中央標準局員工消费合作社印製 在SMP電腦中,必須提供一致型記憶體系統;換句話說 ,必須導致所有處理器對於每一個別記憶體位置之寫入以 某種順序受到串列化。在快取記憶體一致型系統中,所有 處理器皆觀察到對於一給定位置之窝入是按照所顯示之順 序出現。存在許多可用以達成快取記憶體—致性之協―定及 技術’且該等協定及技術爲熟悉本技術領域者所熟知。所 有用以維持一致性之該等機制之關鍵是要求該等協定只允 it 一處理器具有一"許可",且該許可允許在任一给定時間 数玲一給定記憶體位置(快取記憶體塊區)進行—窝入。因爲 此要求,無論何時一處理組件試圖寫入至—記憶體位置時 ’其首先必須通知所有其他處理組件其想要寫入該位置, 並接收來自所有其他處理組件對於執行該寫入之許可。在 該寫入發生之前’㈣之所有其他處理器必須由啓始處理 器告知該寫人。D卜,如果—塊區存在於—给定處理單元 之Li快取記憶體,其也存在於該處理單元本以。快取記 種特性稱爲包含(ineiusiQn),且爲熟悉本技術領域 者所熟知。 -6- A7 B7 經濟部中央樣準局貞工消費合作衽_製 五、發明説明( 爲建構一系统之快!起憶體^敢性,所有處理器皆緩由 一共同一般化連接裝置(亦即麗流排2 〇 )來堪行通訊。所有 該寺處理器皆經由該連接裝置來傳送訊息以顯示他們對於 記憶體位置之讀取或窝入的需求。當—運作置放於該連接 裝置時,所有其他處理器監測"(s n〇〇p)此運作,並決定是 否他們之快取記憶體之狀態可允許所請求之運作獲得實$ ,且如果答案是肯定的,在何種條件之下。有許多匯流排 異動需要進行監測及後續動作以實現該等匯流排異動並維 持3己憶體一致性。監測回應是由一般常駐於一系統控制點 單元32之系統邏輯來收集及分析。監測運作是由一合格監 測請求之接收來觸發,且是由某些匯流排訊號之致能來產 生。此種通訊是必要的,因爲,在具有快取記憶體之系統 中,兄憶體之一給定塊區之最近有效拷貝可自系統記憶體 1 6和動至系統之該等快取1己憶體之一或更多快取記憶體。 如果一處理器(例如1 2 a)試圖存取—不存在於其之快取記憶 體階層之記憶體位置,則包含該記憶體位置之眞實(正確)値 又該塊區的正確版本可存在於系統記憶體丨6或另一處理單 兀,例如處理單元12b,之該等快取記憶體之一或更多快取 死憶體。如果該正確版本是存在於系統之其他快取記憶體 之一或更多快取記憶體,則必須自系統之該(等)快取記憶 體,而非系統記憶體,取得該正確値。 例如’考慮一試圖讀取記憶體之一位置之處理器,例如 】2a。該處理器首先輪詢其本身之[I快取記憶體(24或26) 。如果該塊區不存在於L 1快取記憶體之中,則轉送該請求 -HI i i I 装 n n 訂*~ n 線 (請先閲讀背面之注^事項再填寫本頁) _尺度適I中關家標準(CNS ) ) 經濟部中央標準局員工消费合作社印製 A7 B7 五、發明説明(5 ) 至L 2快取記憶體(3 〇 )。如果該塊區不存在於[2快取記憶體 之中,則轉送該請求至更低階之快取記憶體,例如L 3快取 §己憶體。如果該塊區不存在於一更低階之快取記憶體之中 ,則接著傳送該請求至一般化連接裝置(2〇)以接受服務。 一旦一運作已置放於—般化連接裝置,則所有其他更低階 之快取記憶體監測該運作,並決定是否該塊區存在於他們 之快取記憶體之中。如果一給定處理單元之L1快取記憶體 具有一處理單元所請求之塊區,且該塊區之値受到修改, 則藉由包含原理,L2快取記憶體及任何更低階之快取記憶 體也具有該塊區之拷貝(但是,他們之拷貝可能已經過時, 因爲該處理器之快取記憶體之拷貝受到修改)。因此,當處 理單元之最低階快取記憶體(例如L 3快取記憶體)監測出該 讀取運作時,該快取記憶體將決定是否所請求之塊區存在 .於較高階之快取記憶體且受到修改。當此種情形發生時, L 3快取記憶體置放一訊息於一般化連接裝置以通知該處理 單元其必須在一稍後時間再一次"重試,,其之運作,因爲該 1己憶體位置之眞實値存在於記憶體階層頂端之L 1快取記憶 體,且必須受到擷取以使該値可用以服務啓始處理單元之 讀取請求。 一旦來自啓始處理單元之請求受到重試,則L 3快取記憶 體開始一過程,以自L 1快取記憶體擷取該經修改之値,且 使該値儲存於L3快取記憶體,主記憶體,(或以上二者,而 此決定於非特定相關於本發明之建構的確切細節。爲自較 南階之快取記憶體擷取塊區,L 3快取記憶體經由快取記憶 本紙張尺度適用中國國家標準(CNS ) A4規格(210x297公爱> (請先閲讀背面之注意事項#-填寫本頁) •華. ,-° A7 經濟部中央榡準局員工消費合作社印製 五、發明説明(6 ) • . 體間之連結來傳送訊息至較高階之快取記憶體,以請求該 塊區受到擷取。該等訊息沿著處理單元階層向上傳送,直 到他們達到L1快取記憶體並導致該塊區沿著處理單元階層 向下移動至最低階(L3或主記憶…以致能夠服務來自啓始 處理單元之請求爲止。 聲始處理單元最終會在一般化連接裝置重試該讀取請求 、。但是,在此時,已經自一處理單元之[丨快取記憶體擷取 該經修改之値,且來自啓始處理器之讀取請求將受到滿足 。剛才説明之過程通常稱爲"監測推移"β在一般化連接裝 置上監測一讀取請求,且此會導致處理單元"推移,,該塊區 至該階層之底部以滿足啓始處理單元所提出之讀取請求。 田處理器想要讀取或寫入一塊區時,該處理器必須傳 送該需求至系統之其他處理單元以維持快取記憶體一致性 。爲達成此目標,快取記憶體一致型協定使得快取記憶體 1¾層之每一階之每一塊區相關於一狀態顯示碼,而該狀整 顯示碼顯示該塊區之目前"狀態"。狀態資訊是用以達成一 致型協定之某些最佳化,且該等最佳化會降低一般化連接 裝置及快取i己憶體間連結之訊息流量。做爲此機制之一範 例,當處理單元執行讀取時,該處理單元接收一訊息,而 孩訊息是用以顯示是否稍後必須重試該讀取。如果該讀取 運作未受到重試,則該訊息通常也包含一些資訊,且該等 資訊允許處理單元決定是否任何其他處理單元也具有該塊 區之仍然有效拷貝(這是藉由使得其他最低階之快取記憶體 提供他們不會重試之任何讀取之"共用"或"非共用"顯示來 -9- 本紙張尺度準(CNST^^ 2|〇χ297公趵 (#先閲讀背面之注*-事項再填寫本頁) 裝. 訂 線· 經濟部中央標準局貝工消费合作社印製 A7 —--------- _ B7 . 五、發明説明(7 ' ~~~ 達成)。因此’ 41理單疋可決定是否系統之任何其他處理器 具有孩塊區之拷貝。如果無其他處理單元具有該塊區之有 拷貝則凟取處理單元標示該塊區之狀態成爲I,獨占I, (ClUS1Ve)如果一塊區被標示成爲獨占,則處理單元稍後 γ在未首先與系統之其他處理單元進行通訊之下寫入該塊 =,因爲無其他處理單元具有該塊區之拷貝。因此,處理 器可讀取或寫入-位置,在未首先傳送此意圖至連接裝置 又下’但是只有在一致型協定確保無其他處理器對於該塊 區具有興趣之處。 則述之快取圮憶體一致型技術建構於一稱爲? "之特 定協定,且展示於囷2。在此協定中,快取記億體塊區可處 於四種狀態之一 (修改),"E,,(獨占),„s,,(共用),或 I (揲政)。在Μ E S I協定之下,每一快取記憶體輸入項(例 如一 3 2 -位元扇區)具有二額外位元,見該二額外位元顯示 該輸入項之狀態爲該四種可能狀態之那一種。決定於輸入 項之啓始狀態及請求處理器所尋求之存取型式,該狀態可 受到改變,且請求處理器之快取記憶體之該輸入項可設定 成爲一特定狀態。例如,當一扇區處於修改狀態時,所討 論之扇區只有在具有該經修改之扇區之快取記憶體之中, 且該經修改之値尚未寫回至系統記憶體,方爲有效。當一 扇區處於獨占狀態時’該扇區只存在於所顯示之扇區,且 與系統圮憶體維持一致。當一扇區處於共用狀態時,該扇 區在該快取記憶體及至少—其他快取記憶體是有效的,且 所有該等共用扇區皆與系統記憶體形成—致。最後,當一 -10- 本紙張尺度適用中國國家榡準(CNS ) Α4規格(210 X 297公釐) ---------装------1Τ------ (請先閲讀背面之注彖事項#-填寫本頁) A7 B7 經濟部中央標準局員工消費合作社印製 五、發明説明(8 ) ^區處於無效狀態時,其顯示所討論之扇區未存在於該快 取6己憶體。如圖2所示’如果一扇區處於修改,共用,或在 =狀態之任-狀態’則該扇區可移動於該等狀態之間,視 特定之匯流排異動而定。雖然處於獨占狀態之扇區可移動 至任何其他狀m只有t其首先是無效時方可變爲 獨占。 存取佚取記憶體塊區之另—種改良可藉由使用前述之快 取記憶體-致型協定來達心此種改良,稱爲"插入" ㈤™。n)’允許-料,纟於修改狀態之記憶體塊區具 有控制的快取記憶體直接提供該塊區之資料或指令至請求 孩値之快取記憶體(對於讀取型運作);換句話説,無需 寫入該資料或指令至系統記憶體,且接著使得請求處理器 再一次自記憶體讀回該資料。插入只可由—具有—塊區之 ㈣快取記μ㈣行,且該塊區處於修岐p在此種 狀二之下/、有快取s己憶體塊區具有該値之有效拷貝, 所以在無需首先寫入該値至系統記憶體之下經由匯流排2〇 來提供該値非常簡單。插人程序因此藉由免除寫人至系統 #體及自系統記憶體讀取之較耗時過程(其實際上涉及三 匯机排運作及—圮憶體運作)來加快處理。此種程序不僅導 致較低之等待時間,而且增加可用之匯流排頻寬。 — 以則技術(協定當資料或指令是以非修改(亦即共用或獨 圭)狀心來保存時、然法提供插入。一種解決、方案是將共用快 取記憶體塊區视爲處於一修改狀態,而此允許由包含該値 之決取名隐fa來提供該値,但是接著該値也會寫入至系統 -Π (纸張尺度賴t S目家榇準(CNS ) A4規格77^297^· ---------^------ΐτ------0 (請先閲讀背面之注意事項*.填寫本頁) A7 B7 經濟部中夬榡準局貝工消費合作衽印製 五、發明説明( 兄憶!,而此是不必要的且可導致進一步之等待時間。因 此’最好設計一種用以維持快取記憶體—致性之方法,且 該種方法允許未經修改之資料或指令之高效率插入\如果 :種方法可利用_種簡化値之插入之方式來建.構,無:非 修改狀態之特定型式(亦即共用,獨占或任何其他非修二狀 態),則更爲有利。 " 發明摘要 因此本發明之一目標是提供一種用以在多處理器電腦系 統中執行讀取型運作之改良方法。 本發明之另一目標是提供一種方法,且當目標値可以一 非修改狀悲出現於另一處理器之一快取記憶體時,該種方 法允許改良之插入回應。 本發明之另一目標是提供一種方:法,且該種方法可利用 一快取記憶體一致型協定來有效地建構,且該快取記憶體 —致型協定爲保存於快取記憶體塊區之該等未經修改之值 定義多種狀態。 前述目標可利用一種改良相關於一讀取型運作之記憶體 等待時間的方法來達成,且該讀奥型遲作是—虫多處理器電 H辣之一請求處理單元發出,而該種方法通常包含下列 步驟··自系統記憶體載入一値至至少第一及第二快取記憶體 ,標示該等快取記憶體成爲包含該値之共用,未經修改之 __拷_貝,自一請求處理單元發出一訊息以顯 <示該請求處理鼻 元想要讀取該値,及傳送一來自該等快取記憶體之一給定 快取記憶體之回應,以顯示該給定快取記憶體可提供該値 -12- 表紙張尺度適用中國國家標準(CNS ) A4規格(2】0X297公釐) I n 裝 訂 . 線 (請先閲讀背面之注t-事項-S--填寫本頁) A7 B7 , 五、發明説明(10 ) ' ^ S- 。該回應受到傳送以回應快取記憶體在一醒流排上監剛出 該訊息,且該匯流排連接至請求處理單元。該回應是由 統邏輯來偵測,且自系統邏輯轉送至請求處理單元。快取 記憶體接著提供該値至一連接至請求處理單元之匯流排。 該訊息可附加一請求辨識碼,且快取記憶體提供該値做爲 -回答’而該回答也附加該請求辨識碼4統記憶體偵測 該m息且通常會提供該値,但是該回應通知記憶體裝置該 値相對地應由快取記憶體所提供。可依照各種方式,例如 任意,自第一及第二快年記憶體之中選擇給定之快取記憶 體。因爲快取記憶體等待時間可遠低於記憶體等待時間, 利用此種新協定可大幅改良讀取效能。 閲謂下列詳細之書面説明應可明瞭本發明之前述與其他 目標,特點,及優點。 附圖簡短說明 據信爲本發明之特徵之新奇特點陳述於附加之申請專利 範園。但是,當參照下列附圖來閱讀—示範實例之下列詳 細説明時,應可最容易瞭解本發明本身,以及本發明之一 較佳使用模式,其他目標,及優點,其中. 經濟部中央標準局員工消費合作社印製 圖1是一以前技術之多處理器電腦系統的方塊圖; 圖2是一描述一以前技術之快取記憶體一致型協定 (MESI)的狀態圖;且 圖3是一描述一新奇快取記憶體一致型協、定之狀態圖,且 該新奇快取記憶體一致型協定可用以執行本發明。 較佳實例説明 -13- 本紙張尺度適用中國國家標淨(CNS ) A4規格(2Ι0Χ297公釐) 發明説明(11 本發明係針對一種用以在多 V1 , 馬'理益系統,例如圖1之萃枝 ’執行讀取型指令之方法 μ圖κ系統 ,.Λ| . ^ 疋本發明也適用於不必蚨是 傳統型<電腦系統,亦即該等 …、孓 之新硬@T0 系統可包含未展示於®j :新硬“件’或在現有元件之間具有新奇連接。因此, 熟悉本技術領域者應可理解本 一般化系統。 +發月未文限於展不於該圖之 :本發明中,一協定受到建立以傳送—致性回應至一請 求讀取運作之處理器,自相關於多處理器«系統之其他 處理器之所有快取記憶體的_者。該^應是依照表U 格式化: 位址回應 優先權 定義 000 預留 00 1 3(1) 共用插入 0 10 6 遠端狀態 0 11 4 重新執行 100 1(2) 重試 101 2(3) 修改插入 110 5 共用 1 1 1 7 空白或清除 , '〜 一 ^ -ψ αΠ* ^jXj m ^ 12Z. 址回應)及定義陳述於表1。該等訊號受到鴒碼以顯示位址 保有以後之li測結果.。表〖展示共用線’修改線,及清除( 無效)線,以及重試回應之回應,類似於以前技,所用之回 14- 尺度適用l國國家標準(CNS > A4規格(210X297公釐 請 先 閲 讀 背 δ 之 注 項 再- 奢 裝 訂 線 經濟部中央標準局貝工消费合作社印裝 張 一紙 I本 經濟部中央標準局貝工消費合作社印装 A7 _______B7 - 五、發明説明(12 )~~" ~ ' 應。表1也展示三新回應,”共用插入”,I,遠端狀態”及"重 新執行"。只用於讀取運作之遠端狀態回應是用以顯示該讀 取將成功,且稍後將利用另一訊號送回共用或獨占之—致 性回應以及資料。重新執行回應是用於當無法立即決定— 致性回應且必須轉送該回應至階層之較低階時。重新執行 回應不同於重試,因爲前一訊息必須重新受到發出,且其 必須具有相同之辨識碼以致其可匹配先前受到轉送之訊息。 共用插入回應允許—快取記憶體當其具有尚未受到修改 之資料或指令之拷貝時提供一値,且因此不同於以前技術 之修改插入回應。共用插入回應因此可用於任何狀態以顯 示一未經修改之値,而該等狀態包含共用狀態及獨占狀態 ,以及下文所提供之一新狀態("R I,狀態,用於最近讀取)。 此回應通知請求處理器在匯流排(—般化連接裝置)上尋找讀 取回合資料或指令,與一訊號,且該讀取回答資料或指令 附有其之請求辨識碼,且該訊號是來自快取記憶體而非記 憶體之値。本文廣義使用匯流排這個術語,且可有許多匯 流排受到提供,例如一用以轉接請求及回應訊息之監測匯 流排’與連接至一交錯點之—或更多其他値匯流排。 該回答附加一 8 -位元値於一分別之資料標籤匯流排,且 1¾資料標臧匯泥排追縱資料匯流排之每—循環。資料標錢 匯流排之一値顯示資料匯流排之資料屬於一具有相同値之 訊息’且該相同値傳送於位址匯流排。在、插入期間另外有 一訊號"快取記憶體資料而非記憶體資料,,(DCache)受到致 能,以顯示此資料是來自快取記憶體,而非來自記憶體。 -15- 本紙張又度適用中國國家榡準(CNS > A4規格(210X297公釐) f請先聞讀背面之>!#·事項再填寫本頁) -裝' 訂 線 開始傳送資料,所以如果 之資料正受到傳送,而且 A7 B7 五、發明説明(丨3 ) 圮憶體或快取記憶體理,上可在請求者看見插入回應之前 DC ache受到致能,則其顯示最近 a 如果D C a c he受到去能,則其必須 等候回應以決定是否插^[正在發生,且如果答案是肯定的 ^則捨棄該資料且等候標示有DCache(與相同之匹配資料 ,籤)之資料。除此之外,此新回應將通知記憶體系統放棄 二讀取叫求,因爲该请取請求可藉由另—快取記憶體之插 入來滿足。因爲快取記憶體等待時間可遠低於記憶體等待 時間,運用此種新協定可大幅改善讀取效能。 、値可進一步相關於每一回應以允許系統邏輯決定那些 回應在對於請求處理器之單一回應之格式化中應具有優先 權,如表1所示。例如,如果一或更多快取記憶體以一共用 插入回應(優先權3)來回應,且一或更多快取記憶體以一重 4回應(優先權1)來回應,則重試回應將具有優先權,且系 統邏輯將發出重試回應至請求處理器。此系統邏輯可常駐 於各種元件,例如系統控制點單元,或者甚至位於記憶體 控制β以内。表1所示之優先權之主値提供最高優先權給重 忒回應,類似於以前技術。但是,可使用另一優先權方法 以強化共用插入協定之用途。在此另一種方法中,以表it 括弧以内之優先權號碼來表示,共用插入回應具有最高之 優先權,隨後疋重試回應,且再隨後是修改插入回應;所 有其他優先權則相同於第—種方法。在此声一種方法中, 共用插入回應永遠優先於其他回應,而這因爲許多原因是 可以接受的。首先,如果—快取線保有一處於共用狀態之 -】6· 尽紙珉尺度通州肀因因豕知準(CNS > A4規格(210X297公缝) ----------^--1----1T------^ (請先閲讀背面之注*-事項f填寫本頁) 經濟部中央標準局員工消费合作社印製 Α7 Β7 五、發明説明(14 ) (請先閱讀背面之注t事項再填寫本頁) 値(資料或指令),則無其他快取記憶體可保有對應於相同位 址且處於修改狀態之値,且所以無其他快取記憶體可利用 一修改插入回應來回應。同時,如果任何其他快取記憶體 發出一重試,則來自相同快取記憶體且基於該重試之任何 稍後回應最多只能共用,而此再一次意謂最初發出共用插 入回應是可以接受的。 .經濟部中央橾準局員工消費合作社印製 在本發明中’许多不同之機制可用以確保那一快取記憶 t疋茲未經修改之値之"擁有者",且因此該快取記憶體有 資格提供該値。如果電聪系統使用圖2所示之以前技術 Μ E S I協定,且一快取線以獨占狀態來保有一値,則該快取 記憶體是包含該値之有效拷.貝的惟一快取記憶體,且所以 該快取記憶體很明顯地是擁有者而可發出共用插入回應。 $是.,.如果一快取線以共用狀態來保有一値,則該値也可 以相同之狀態保存於至少一其他狀態,且所以那一快取記 懷體應提供資料並不立刻明確。在此種情形之下,許多其 他方案可用以決定應使用那一快取記憶體。例如,多重快 取記憶體可利用共用插入來回應,且接著系統邏輯(例如系 統控制點)可選擇那一快取記憶體將提供該値。在此種情形 之下,系統可送回一重試回應給所有潛在擁有者,除了一 選定之潛在擁有者以外,且只送回共用插入回應給該選定 I擁有者。該擁有者可任意選擇,或以—固定或旋轉優先 權方法爲基礎。 用以在包含一共用値之多個快取記憶體之中決定擁有者 的另一種方法是提辟一機制以顯示那一快取記憶體最近讀 -17· 本紙张尺度適用中國國家標準(CNS ) A4規格(210X297公釐) 經濟部中央標準扃貝工消费合作社印製 Α7 Β7 五、發明説明(l5 ) 取該快取線。該快取記憶體接著自動被視爲此線之擁有者 ’直到另一快取記憶體讀取該線或該線受到捨棄爲止。此 種方法可利用一新快取記憶體一致型協定來加以建構,且 該快取記憶體一致塑協定描述於圖3之狀態圖。此協定類似 於圖.2之以前技術MESI協定,因爲其包含相同之四狀態(修 改,獨占’共用及無效),但是其也包含一新"R "狀態(最近 )’以提供一最近受到參考之塊區之顯示,且否則該塊區會 具有一共用顯示。換句話説,當二或更多快取記憶體保有 一指令或資料値之有效拷貝時一,所有該等快取記憶體皆處 於共用狀態,除了最近存取該指令或資科値之快取記憶體 之外,且該快取記憶體將處於最近狀態。因爲現在總共有 五可能之狀態,每一快取記憶體輸入項需要一3-位元欄( 而非如同以前技術之2-位元欄)以辨識該輸入項處於那一狀 態。 此種新協定在本文稱爲"R- ΜE SI"協定。如同以前技術之 協定,四狀態M-E-S-I可利用輸入項之最初狀態及請求處_ 理器所尋求之存取型式爲基礎來加以改變。該四狀態改變 之方式概言之相同於以前技術之MESI協定,除了下文所述 之例外以外。表2展示讀取型運作之主快取記憶體狀態變遷 ,其中一"不中"發生: ---------參— 一请先聞讀背面之注«-事項-S--填寫本萸)· -1Τ -線 表2 匯流排運作 主狀態 一致性回應 _ 1 Read I->R Shfl,Shr,或Mod _ 2 RWITM I-^E Shrl,Shr,或Null 3 Read I-^E Null 4 RWITM I->M Mod -18- 本紙張尺度適用中國國家標李((^5)八4規格(2〗0'/297公楚) 經濟部中央梯準局負工消费合作社印褽 A 7 B7__ · 五、發明説明(16 ) 如果一致性回應是修改(Mod),共用(Shr),或共用插入 (Shrl),則一"讀取不中"匯流排運作將導致進入最近狀態( 表2之第一列);如果一"讀取不中"運作之回應是修改,則 受到修改之快取記憶體也將傳送該指令或資料至記憶體, 以致其不再處於修改狀態。如果一"讀取不中"運作沒有導 致一致性回應(Nu 11)(表2之第三列),則如同以前技術之 MESI協定一般將進入獨占狀態。對於"RWITM不中"運作 而言(RWITM是具有修改意圖之讀取的縮寫),如果一致性 回應是Null,Shr,或ShrJ,則進入獨占狀態(表2之第二 列);且如果一致性回應是Μ 〇 d則進入修改狀態(表2之第四 列)。R WITM情形只適用於仍然準備好可供執行之資料或 指令,因爲指令一旦準備妤可供執行一般就不會受到修改。 表3展示一範例,且該範例顯示當一快取記憶體充當監測 者時一匯流排異動如何影響該快取記憶體,就讀取型運作( 讀取命中)而言: 表3 匯流排運作 監測者狀態 —致性回應 1 Read-Burst R —S Shrl. 2 Read-Burst E ->S Shrl 3 Read-Burst M —S Mod 4 RWITM E 或 R— I Shrl 5 RWITM Μ Mod 對於獨占或最近啓始狀態(表3之第一,第二,及第四列) 而言,快取記憶哮將傳送一共用插入一致性回應,意謂其 將藉由插入來提供該指令或資料之其拷貝直接至請求處理 -19- 本紙張尺度適用中國國家標準(CNS ) A4規格(21〇X297公釐) 五、發明説明(Π ) 器,而無需涉及系統記憶體。無論何時如此提供一指令,,, 讀取命中"運作將使得卞一狀態爲共用(表3之第一及第二列 ),而"RWITM命中"運作將使下一狀態變爲無效(表3之第 四列)。在啓始狀態是修改之情形中(表3之第三及第五列) ’ 一致性回應將是修改,且插入仍然發生,而此再一次不 適用於指令之情形,因爲程式指令一般未受到修改。如果 匯流排運作是” R w I τ Μ ”,該値只是自一快取記憶體轉移至 另一快取記憶體,但是如果匯流排運作是讀取,則該値同 時傳送至快取記憶體及記憶體。 如前所述,對於表2及3未-展示之狀態及運作而言,變遷 及一致性回應是依照以前技術之MESI協定來執行,在一條 件之下,亦即一快取記憶體輸入項可具有,,R"狀態,而,,r" 狀態會受到寫入運作之影響,且該輸入項將以一方式來變 遷至修改狀態,而該方式類似於當一共用輸入項受到寫入 運作之影響時的變遷方式。^R_MESI協定應進―步注意 下列諸點:輸入項絕不可自無效狀態變遷至共用狀態(相對地 其會變遷至最近狀態);輸入項絕不可自獨占狀態變遷至最 近狀態(其會變遷至共用狀態);輸人項絕不可自最近狀態變 遷至獨占狀態(正如同共用輸入項無法變遷至獨占狀態);且 輸入項絕不可自修改狀態變遷至最近狀態(其會變遷至共用 狀態’而在請求處理器之快取記憶體之輪人項會變遷至最 -20- 經濟部中央樣準为舅工消費合作社印裝 A7 —-----—_____ B7 五、發明説明(is ) <好處:快取記憶,維持在最近受到使用,且因而減輕受到 去指配之機會,如果運用最久未受到使用(LRU)快取記憶 .體置換機制的話。,R"快取記憶體狀態也可有利地用於其他 應用’例如用以中k一處理器/快取記憶體之智慧型輸入/輸 出控制器,且該處理器/快取記憶體最近讀取一快取之輸入/ 輸出狀態位置’因爲此處理器/快取記憶體最可能已快取該 -輸入/輸出裝置驅動程式碼,且因此其之執行速度將快於需 要掏取該程式碼至其之快取記憶體之另一處理器。 積由提供共用指令及資料(亦即,有效存在於多於一快取 圮憶體之指令或資料)之插入,記憶體等待時間可大幅改善 。在R-MESI協定之一評估中,根據一業界標準評估,效能 可自53 00 TPMC增加至7500 TPM。(每秒之異動數目),當 相較於以前技術之MES][協定時β 1而言,本發明釋放記 -J4.蹲控制器,且對於記憶體頻寬之需求獲得減輕。 雖然一直參照特定實例來説明本發明,此種説明並未竟 謂做爲限制。熟悉本技術領域者,—旦閲讀本發明之説^ ,應可想出所説明之實例之各種修改,以及本發明之替代 貫例。因此本文意謂包含在不脱離附加之申請專利範圍所 定義之本發明的精神或範疇之下所能實施的各種修改。 •21 - 本纸張尺度適用中國國家標準(CNS ) A4麟(210X297公釐) -----------装------ΐτ------線 (請先閱讀背面之注t-i項#-填寫本頁)

Claims (1)

  1. 經濟部中央梯隼局貝工消費合作社印製 A8 B8 C8 〜--------D8 ' '申請專利範圍 L —種用以改善相麗於一讀取型運作之記憶體等待時間之 i方法,該讀取型運作是由多處理器電腦系統之一請求處 理單元所發出,該電腦系統包含多個處理單元,而每一 處理單元具有一相關之快取記憶體,且該種方法包含下 列步驟: 自一記憶體裝置之一位址載入一値至至少第一及第二 快取記憶體; 標示該等第一及第二快取記憶體成爲包含該,値之共用 ’未經修改之拷貝; . 自一請求處理單元發出一訊息,以顯示該請求處理單 元想要自該記憶體裝置之位址讀取該値;及 自該等第一及第二快取記憶體之一給定快取記憶體傳 送一回應’以顯示該給定快取記憶體可提供該値。 2. 如申請專利範圍第1項之方法,其中回應是由系統邏輯 來加以偵測,且進一步包含下列步驟:轉送回應自系統 邏輯至請求處理單元。 3. 如申請專利範圍第1項之方法’該方法進一步包含下列 步驟:給定之快取記憶體提供該値至一連接裝置,且該 連接裝置連接至請求處理單元。 4. 如申請專利範圍第1項之方法,其中給定之快^^憶^體 是自該等第—一及第二快取記憶體之中任意挑選。 5..如申請專利範園第1項之方法’其中回應受到傳送以回 應下列步驟:给定之快取記憶體監測來自一連接裝置之 訊息,且該連接裝置連接至請求處理單元。 -22- 本紙張尺度適用中國國家榇準(CNS ) A4規格(210X297公釐) I . . 裝 ^ 訂—-----1—線 (請先聞讀背面之注f事項#-填寫本頁) 申請專利範圍 Α8 Β8 C8 DS 經濟部中央標準局員工消費合作衽印I 6·如申請專利範園第1項之方法,該方法進一步包含下列 步驟:利用附加一請求辨識碼於該訊I。 7. 如申請專利範圍第1項之方法,其中. 記憶體裝置偵測該訊息;且 該回應通知記憶體裝置該値是由給定之快取記憶體來 提供。 8. 如申請專利範圍第1項之方法,其中: 除了給定之快取記憶體以外,至少一其>他快取記憶體 傳送另一回應; .. 第一優先權値相關於來自给定之快取記憶體的回應;及 第二優先權値相關於另一回應,且第二優先權値顯示 一低於第一優先權値之優先權。 9. 如申請專利範圍第6項之方法,該方法進一步包含下列 步驟··給定之快取記憶體提供該値做爲送往一連接裝置 之回答’且該連接裝置連接至請求處理單元,且附加請 求辨識碼至該回答。 10_ —種電腦系統,且該種電腦系統包含: 一記憶體裝置; —連接至該記憶體裝置之連接裝置; 連接至該連接裝置之多個處理單元,每一處理單无具 ’為一快取記憶體以儲存來自該記憶體裝置之値,該等快 取記憶體之一給定快取記憶體進—步具有用以顯:何時 該給定之快取記憶體包含一値之共用,未經修改之拷貝 的裝置,且該拷貝是自該記憶體裝置載入,且該等快取 請 先 閲 讀 背 之 注- I- 裝 訂 線 -23- 本紙張尺度適用中國國家揉準(CNS ) A4規格(210X297公釐) A8 BS C8 D8 經濟部中央標準局員工消费合作社印¾ 、申請專利範圍 記憶體之至少一其他快取記憶體也包含該値之一共用, 未經修改的拷貝;及 用以自該給定之快取記憶體傳送一回應的裝置,該回 應是用以顯示該給定之快取記憶體可提供該値,且該値 自該記憶體裝置載入至一請求讀取該値之處理單元。 U·如申請專利範園第1 〇項之電腦系統,該電腦系統進一步 包含—連接至該連接裝置之系統控制點單元,且該系統 控制點單元具有用以偵測該回應並轉送該回應至該請求 處理單元之裝置。 . 如申請專利範圍第1 〇項之電腦系統,該電腦系統進一步 包含用以提供該値自該給定之快取記憶體至該請求處理 單元之裝置。‘ 13. 如申請專利範圍第丨〇項之電腦系統,該電腦系統進一步 包含用以自包含該値之共用,未經修改拷貝之該等快取 記憶體之中任意挑選該給定之快取記憶體的裝置。 14. 如申請專利範圍第1 〇項之電腦系統,其中每—該等快取 記憶體皆包含用以監測該連接裝置是否存在來自該請求 處理單元之訊息的裝置。 15. 如申請專利範圍第1 〇項之電腦系統,該電腦系統進一步 包含用以決定相關於該回應之優先權的裝置。 16. 如申請專利範圍第1 4項之電腦系統,該電腦系統進一步 包含用以附加一請求辨識碼至該訊息之裝置。' 17. 如申請專利範園第1 4項之電腦系統,其中該記憶體裝置 偵測該訊息;且進一步包含用以通知該記憶體裝置該値 -24- 本紙張尺度適用中國國家標準OCNS ) A4規格(210X297公釐) (請先閲讀背面之注.意事項再填寫本頁) -裝· 訂 線· A8 Β8 C8 D8 六、申讀專利範圍 是由該给定之快取記憶體來提供之裝置。 18.如申請專利範圍第1 6項之電腦系統,該電腦系統進一步 包含用以提供該値做爲回答之裝置,且附加該請求辨識 碼及一額外訊號至該回答,且該額外訊號顯示該值是由 一快取記憶體提供,而非來自該記憶體裝置。 ---------装-- ($先»讀背在冬A意事^.為填爲本寅) 經濟部中央標準局負工消費合作杜印褽 -25- 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐)
TW086116353A 1997-04-14 1997-11-04 Method of shared intervention for cache lines in the shared state for SMP bus TW385395B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/837,516 US5940856A (en) 1997-04-14 1997-04-14 Cache intervention from only one of many cache lines sharing an unmodified value

Publications (1)

Publication Number Publication Date
TW385395B true TW385395B (en) 2000-03-21

Family

ID=25274682

Family Applications (1)

Application Number Title Priority Date Filing Date
TW086116353A TW385395B (en) 1997-04-14 1997-11-04 Method of shared intervention for cache lines in the shared state for SMP bus

Country Status (4)

Country Link
US (1) US5940856A (zh)
JP (1) JPH10289155A (zh)
KR (1) KR100274771B1 (zh)
TW (1) TW385395B (zh)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6065077A (en) 1997-12-07 2000-05-16 Hotrail, Inc. Apparatus and method for a cache coherent shared memory multiprocessing system
US6292705B1 (en) 1998-09-29 2001-09-18 Conexant Systems, Inc. Method and apparatus for address transfers, system serialization, and centralized cache and transaction control, in a symetric multiprocessor system
US6633945B1 (en) 1997-12-07 2003-10-14 Conexant Systems, Inc. Fully connected cache coherent multiprocessing systems
US6418537B1 (en) 1997-12-07 2002-07-09 Conexant Systems, Inc. Accurate timing calibration for each of multiple high-speed clocked receivers using a single DLL
US6516442B1 (en) 1997-12-07 2003-02-04 Conexant Systems, Inc. Channel interface and protocols for cache coherency in a scalable symmetric multiprocessor system
US6446237B1 (en) * 1998-08-04 2002-09-03 International Business Machines Corporation Updating and reading data and parity blocks in a shared disk system
US6446220B1 (en) 1998-08-04 2002-09-03 International Business Machines Corporation Updating data and parity data with and without read caches
US6108764A (en) * 1998-12-17 2000-08-22 International Business Machines Corporation Non-uniform memory access (NUMA) data processing system with multiple caches concurrently holding data in a recent state from which data can be sourced by shared intervention
US6115804A (en) * 1999-02-10 2000-09-05 International Business Machines Corporation Non-uniform memory access (NUMA) data processing system that permits multiple caches to concurrently hold data in a recent state from which data can be sourced by shared intervention
US6192452B1 (en) * 1999-02-26 2001-02-20 International Business Machines Corporation Method and system for avoiding data loss due to cancelled transactions within a non-uniform memory access system
US6405285B1 (en) 1999-06-25 2002-06-11 International Business Machines Corporation Layered local cache mechanism with split register load bus and cache load bus
US6446166B1 (en) 1999-06-25 2002-09-03 International Business Machines Corporation Method for upper level cache victim selection management by a lower level cache
US6463507B1 (en) * 1999-06-25 2002-10-08 International Business Machines Corporation Layered local cache with lower level cache updating upper and lower level cache directories
US6385694B1 (en) 1999-06-25 2002-05-07 International Business Machines Corporation High performance load instruction management via system bus with explicit register load and/or cache reload protocols
US6434667B1 (en) 1999-06-25 2002-08-13 International Business Machines Corporation Layered local cache with imprecise reload mechanism
US6418513B1 (en) 1999-06-25 2002-07-09 International Business Machines Corporation Queue-less and state-less layered local data cache mechanism
US6397300B1 (en) 1999-06-25 2002-05-28 International Business Machines Corporation High performance store instruction management via imprecise local cache update mechanism
US6469988B1 (en) 1999-07-08 2002-10-22 Conexant Systems, Inc. Low-level circuit implementation of signal flow graphs for real-time signal processing of high-speed digital signals
US6738837B1 (en) 2001-02-02 2004-05-18 Cradle Technologies, Inc. Digital system with split transaction memory access
US6874049B1 (en) 2001-02-02 2005-03-29 Cradle Technologies, Inc. Semaphores with interrupt mechanism
EP1298506A1 (de) * 2001-09-27 2003-04-02 Siemens Aktiengesellschaft Dynamischer Zugriff auf Automatisierungsressourcen
FR2832859B1 (fr) * 2001-11-28 2004-01-09 Commissariat Energie Atomique Generateur electrochimique au lithium comprenant au moins une electrode bipolaire avec substrats conducteurs en aluminium ou alliage d'aluminium
US6839816B2 (en) * 2002-02-26 2005-01-04 International Business Machines Corporation Shared cache line update mechanism
US6922756B2 (en) * 2002-12-19 2005-07-26 Intel Corporation Forward state for use in cache coherency in a multiprocessor system
US6976132B2 (en) * 2003-03-28 2005-12-13 International Business Machines Corporation Reducing latency of a snoop tenure
US7085898B2 (en) * 2003-05-12 2006-08-01 International Business Machines Corporation Coherency management for a “switchless” distributed shared memory computer system
US6988173B2 (en) * 2003-05-12 2006-01-17 International Business Machines Corporation Bus protocol for a switchless distributed shared memory computer system
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
US8914557B2 (en) 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
JP4335298B2 (ja) 2006-02-24 2009-09-30 富士通株式会社 スヌープ制御方法および情報処理装置
US8195890B1 (en) * 2006-08-22 2012-06-05 Sawyer Law Group, P.C. Method for maintaining cache coherence using a distributed directory with event driven updates
EP2159694B1 (en) * 2007-06-20 2019-03-27 Fujitsu Limited Method and device for barrier synchronization, and multicore processor
US9032151B2 (en) 2008-09-15 2015-05-12 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
US9069684B2 (en) * 2012-07-16 2015-06-30 Nvidia Corporation System, method, and computer program product for invalidatng cache lines

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317716A (en) * 1988-08-16 1994-05-31 International Business Machines Corporation Multiple caches using state information indicating if cache line was previously modified and type of access rights granted to assign access rights to cache line
US5297269A (en) * 1990-04-26 1994-03-22 Digital Equipment Company Cache coherency protocol for multi processor computer system
US5210845A (en) * 1990-11-28 1993-05-11 Intel Corporation Controller for two-way set associative cache
JPH04353947A (ja) * 1991-02-13 1992-12-08 Hewlett Packard Co <Hp> メモリページ特性タグ付けシステム
US5319766A (en) * 1992-04-24 1994-06-07 Digital Equipment Corporation Duplicate tag store for a processor having primary and backup cache memories in a multiprocessor computer system
US5553266A (en) * 1992-04-24 1996-09-03 Digital Equipment Corporation Update vs. invalidate policy for a snoopy bus protocol
US5555382A (en) * 1992-04-24 1996-09-10 Digital Equipment Corporation Intelligent snoopy bus arbiter
US5528764A (en) * 1992-12-24 1996-06-18 Ncr Corporation Bus system with cache snooping signals having a turnaround time between agents driving the bus for keeping the bus from floating for an extended period
US5671391A (en) * 1994-01-10 1997-09-23 Ncr Corporation Coherent copyback protocol for multi-level cache memory systems
US5559987A (en) * 1994-06-30 1996-09-24 Digital Equipment Corporation Method and apparatus for updating a duplicate tag status in a snoop bus protocol based computer system
US5713004A (en) * 1995-05-18 1998-01-27 Data General Corporation Cache control for use in a multiprocessor to prevent data from ping-ponging between caches

Also Published As

Publication number Publication date
KR100274771B1 (ko) 2000-12-15
JPH10289155A (ja) 1998-10-27
KR19980079662A (ko) 1998-11-25
US5940856A (en) 1999-08-17

Similar Documents

Publication Publication Date Title
TW385395B (en) Method of shared intervention for cache lines in the shared state for SMP bus
TW475117B (en) Method of shared intervention for cache lines in the recently read state for SMP bus
US5963974A (en) Cache intervention from a cache line exclusively holding an unmodified value
US6018791A (en) Apparatus and method of maintaining cache coherency in a multi-processor computer system with global and local recently read states
US5940864A (en) Shared memory-access priorization method for multiprocessors using caches and snoop responses
CN101097545B (zh) 独占所有权探听过滤器
TW533353B (en) Non-uniform memory access (NUMA) data processing system with multiple caches concurrently holding data in a recent state from which data can be sourced by shared intervention
CA2349569C (en) Non-uniform memory access (numa) data processing system that speculatively forwards a read request to a remote processing node
TW452690B (en) Reservation management in a non-uniform memory access (NUMA) data processing system
US5943685A (en) Method of shared intervention via a single data provider among shared caches for SMP bus
JP4733932B2 (ja) マルチプロセッサシステム及びマルチプロセッサシステムのキャッシュ一貫性維持方法
JP3714617B2 (ja) キャッシュ階層で首尾一貫性を維持する方法、コンピュータ・システム、及び処理ユニット
EP0301354A2 (en) Cache consistency protocol for multiprocessor system
TW200534110A (en) A method for supporting improved burst transfers on a coherent bus
US20020087803A1 (en) Apparatus for identifying memory requests originating on remote I/O devices as noncacheable
US8209490B2 (en) Protocol for maintaining cache coherency in a CMP
US6574714B2 (en) Efficient instruction cache coherency maintenance mechanism for scalable multiprocessor computer system with write-back data cache
US5996049A (en) Cache-coherency protocol with recently read state for data and instructions
US6807608B2 (en) Multiprocessor environment supporting variable-sized coherency transactions
EP0976047B1 (en) Read operations in multiprocessor computer system
US7395381B2 (en) Method and an apparatus to reduce network utilization in a multiprocessor system
TW548547B (en) Method and system for maintaining cache coherency for write-through store operations in a multiprocessor system
US6658536B1 (en) Cache-coherency protocol with recently read state for extending cache horizontally
JP3202943B2 (ja) 処理装置及びルックアサイド・キャッシュをスヌープする改善された装置及び方法
US6826654B2 (en) Cache invalidation bus for a highly scalable shared cache memory hierarchy

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees