專利名稱:高速緩存旁路系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及多核處理器(MCP)。具體而言,本發(fā)明涉及繞過MCP中的低產(chǎn)率 或壞死高速緩沖存儲器單元。
背景技術(shù):
具有層級架構(gòu)的多核處理器(MCP)是尖端數(shù)字系統(tǒng)的發(fā)展趨勢。典型地,MCP用 極度縮放的納米CMOS技術(shù)來實現(xiàn),以具有高的器件密度和多核設(shè)計。另一方面,產(chǎn)率故障 由過程的可變性和納米CMOS制造中的缺陷所造成。利用層級架構(gòu),部分故障對樹形層級和 架構(gòu)中的部件造成延伸破壞。因此,用以拯救操作部件塊的系統(tǒng)設(shè)計和操作方法對于提高 產(chǎn)率以及增加可靠性都是至關(guān)重要的。
發(fā)明內(nèi)容
本發(fā)明描述了一種用于多核處理器的裝置、計算機架構(gòu)、存儲器結(jié)構(gòu)、存儲器控制 和高速緩沖存儲器操作方法。邏輯核心繞過具有低產(chǎn)率或性能障礙的緊鄰的高速緩沖存儲 器單元。該核心裝配可能已經(jīng)由其他邏輯核心使用的(多個)高速緩存單元。所選定的高 速緩沖存儲器單元服務(wù)于具有同樣內(nèi)容的多個邏輯核心。共享的(多個)高速緩沖存儲器 單元服務(wù)于具有高速緩存搜索、命中、不命中和寫回功能的所有的裝配核心。該方法通過將 有可能已經(jīng)工作于其他邏輯核心的高速緩沖存儲器塊進行共享,由此恢復(fù)其高速緩沖存儲 器塊不能操作的邏輯核心。該方法用于提高剩余系統(tǒng)的可靠性和性能。 本發(fā)明的第一方面提供一種旁路存儲器系統(tǒng),包括第一存儲器單元,裝配于總線 上;第一高速緩存管理器,耦合至所述第一存儲器單元;以及第二存儲器單元,裝配于所述 總線上,所述第一高速緩存管理器可操作用于接收請求,通過所述請求繞過所述第一存儲 器單元,并將所述請求發(fā)送給第二存儲器單元。 本發(fā)明第二方面提供一種高速緩存旁路系統(tǒng),包括第一高速緩沖存儲器單元,裝 配在總線上,第一高速緩存管理器,耦合至所述第一高速緩沖存儲器單元的輸入和輸出;第 一組子高速緩沖存儲器單元,耦合至所述第一高速緩存管理器;第二高速緩沖存儲器單元, 裝配在所述總線上;第二高速緩存管理器,耦合至所述第二高速緩沖存儲器單元的輸入和 輸出;以及第二組子高速緩沖存儲器單元,耦合至所述第二高速緩存管理器,所述第一高速 緩存管理器和所述第二高速緩存管理器的每一個可操作用于接收請求,繞過與其耦合的 高速緩沖存儲器單元,并將所述請求發(fā)送給不同的高速緩沖存儲器單元。 本發(fā)明的第三方面提供一種存儲器旁路方法,包括在高速緩存管理器上接收第 一請求,第一高速緩存管理器耦合至第一存儲器單元,所述第一存儲器單元耦合至總線;以 及通過從所述第一高速緩存管理器向第二高速緩存管理器發(fā)送所述第一請求來繞過所述 第一存儲器單元,所述第二高速緩存管理器耦合至第二存儲器單元,所述第二存儲器單元 耦合至所述總線。
通過以下參照附圖對本發(fā)明各個方面的詳細(xì)描述,本發(fā)明的上述和其他特征將得 到更好的理解 圖1描繪根據(jù)本發(fā)明的高速緩沖存儲器旁路和根據(jù)傳統(tǒng)方法的對比。
圖2描繪根據(jù)本發(fā)明的高速緩沖存儲器旁路系統(tǒng)。 圖3描繪根據(jù)本發(fā)明的一個實例,使用圖1的高速緩沖存儲器旁路系統(tǒng)處理請求 所涉及的事件的進展。 應(yīng)該理解,附圖并不必然按照比例繪制。附圖僅僅是示意性表示,并不意圖刻畫發(fā) 明的具體參數(shù)。附圖旨在僅描繪本發(fā)明的典型實施例,因此不應(yīng)考慮作為對本發(fā)明范圍的 限制。在附圖中,相同的標(biāo)號表示相同的元素。
具體實施例方式
為了方便起見,具體實施方式
包含下面的部分 I.概述 II.說明性示例 I.概述 如上所述,本公開文本描述了一種用于多核處理器的裝置、計算機架構(gòu)、存儲器結(jié) 構(gòu)、存儲器控制以及高速緩沖存儲器操作方法。具體而言,在本發(fā)明中,可用的片上存儲器 利用高速緩存管理器組被耦合至另一邏輯核心或存儲器(例如,高速緩存)。具體地,每個 高速緩存管理器被連接到高速緩沖存儲器單元的輸入和輸出。這允許分配的存儲器成為同 一級高速緩存,下一級高速緩沖存儲器或存儲器緩沖器的擴展。這還允許恢復(fù)其邏輯核心 不能操作的存儲器塊,并用于提高系統(tǒng)的高速緩沖存儲器性能。應(yīng)該預(yù)先理解,本文的教導(dǎo) 典型地適用于多核處理器(MCP),盡管并不必須如此。此外,應(yīng)該理解,盡管本公開文本討論 了存儲器單元作為(虛擬)高速緩存和子高速緩沖存儲器單元,但是這僅僅是本文記載的 教導(dǎo)所能實施的方式的示例。因此,應(yīng)該理解,這些教導(dǎo)可以結(jié)合任意類型的現(xiàn)在公知的或 以后開發(fā)的存儲器來實施。 具有層級架構(gòu)的多核處理器(MCP)是尖端數(shù)字系統(tǒng)的發(fā)展趨勢。它們用極度縮放 的納米CMOS技術(shù)來實現(xiàn),以具有高的器件密度和多核設(shè)計。另一方面,產(chǎn)率故障由過程的 可變性和納米CMOS制造中的缺陷所造成。利用層級架構(gòu),部分故障對樹形層級和架構(gòu)中的 部件造成延伸破壞。本發(fā)明要提高MCP的產(chǎn)率和可靠性。這樣的設(shè)計包括架構(gòu)、存儲器結(jié) 構(gòu)、存儲器控制和高速緩沖存儲器操作方法。 尖端數(shù)字系統(tǒng)采用如下所示的多核處理器架構(gòu)。它們被分層級安排用于進行有效 操作、計算管理和設(shè)計的可擴展性。由于它們假定層級中所有組件都是健全的,因此一個微 小的故障會導(dǎo)致對樹形架構(gòu)中組件的災(zāi)難性故障。本發(fā)明尤其致力于這樣的情況,即,存儲 器塊完好無損,而邏輯組件在制造、老化過程中,或因為其他原因受損。在傳統(tǒng)設(shè)計中,層級 和樹形中所有組件被廢棄,這導(dǎo)致MCP產(chǎn)品中非常昂貴的損失。本發(fā)明主張忽略、分離并繞 過屬于邏輯核心的緊鄰的不可操作存儲器塊,并將額外的且可用的存儲器裝配到操作的邏 輯核心。高速緩存管理器遮蔽處于同一級的每個高速緩存用于操作-繞過、裝配和共享。通 過復(fù)原邏輯核心,部分地修復(fù)MCP計算能力。除其它功能外,該方法提高芯片性能以及對制造缺陷的恢復(fù)力。 圖1描繪根據(jù)本發(fā)明的高速緩沖存儲器旁路和根據(jù)傳統(tǒng)方法的對比。在傳統(tǒng)方法 中,當(dāng)MA2壞死或產(chǎn)率低下時,所有的子處理元件因為MA2的故障而被廢棄。相反地,在本發(fā) 明中,當(dāng)MM壞死或產(chǎn)率低下時,繞過iV,同時允許其子處理元件保持功能性。在繞過iV時, 將如下所述地通過高速緩存管理器將入站請求重定向到MA2MB2。 現(xiàn)在參照圖2,示出根據(jù)本發(fā)明的旁路高速緩沖存儲器系統(tǒng)10。如圖描繪,系統(tǒng)10 包括主控制器12,總線14,耦合至總線14的(至少一個)高速緩沖存儲器單元16A-N的組, 耦合至高速緩沖存儲器單元16A-N組的(至少一個)子高速緩沖存儲器單元20A-N的組, 以及耦合至子高速緩沖存儲器單元20A-N的(至少一個)子處理元件22A-N的組。圖1還 示出了高速緩存管理器18A-N的組。如圖描繪,每個高速緩存管理器18A-N耦合至高速緩 沖存儲器單元16A-N的輸入24A-N和輸出26A-N。 高速緩存管理器18A-N促進圖1的組件之間的通信。通過使用高速緩存管理器, 兩個高速緩沖存儲器單元16A-N都可以從邏輯核心隔離。在高速緩沖存儲器單元16A中, 將故障存儲器隔離。在高速緩沖存儲器單元16N中,可以利用高速緩存管理器在不同邏輯 核心之間共享存儲器。這種通信的一種類型是存儲器請求。這在下面的情況下尤其有用, 即,當(dāng)一個存儲器單元"不命中"或者不能滿足請求時,可以這樣請求(層級中豎直地或者 相鄰)另一個存儲器單元。通過尋找MCP中壞死的邏輯和活動的存儲器,完成高速緩沖存 儲器裝配操作。任何具有壞死邏輯核心的活動存儲器塊都可以專用于另一存儲器或邏輯 核心,作為高速緩存或存儲器緩沖器。這并不必具有一對一的關(guān)系。處于頂部層級的主控 制器通過對存儲器和核心進行診斷來管理裝配過程。高速緩存管理器從主控制器接收(1) 正常高速緩存,(2)裝配,或(3)被裝配指令。主控制器12通過總線14與高速緩存管理器 18A-N通信。高速緩存管理器18A-N記住他們的狀態(tài),并執(zhí)行下面的高速緩存操作步驟遮 蔽高速緩沖存儲器單元的輸入和輸出;配置繞過的高速緩沖存儲器單元;配置高速緩存裝 配信息;以及,安排高速緩存的輸入和輸出用于共享。該方法可以適用于許多不同的情況。
II.說明性示例 圖3示出用于這種示例的事件進展。在這個示例中,假定高速緩沖存儲器單元16A 不可操作。在步驟1,子處理元件22A向子高速緩沖存儲器單元發(fā)出子高速緩沖存儲器單元 20A所不具有的(高速緩存不命中) 一段存儲器內(nèi)容的請求。子高速緩沖存儲器單元20A 于是產(chǎn)生用于高速緩沖存儲器單元16A的請求。高速緩存管理器18A阻止該請求。在步驟 2,高速緩存管理器18A將該搜索請求通過總線14重定向到高速緩沖存儲器單元16N。在步 驟3,高速緩存管理器16N將流入請求重定向到高速緩沖存儲器單元16N的輸入。在步驟4, 高速緩沖存儲器單元16N用高速緩存命中或不命中來響應(yīng)子高速緩沖存儲器單元20A。如 果是命中,那么就不需要進一步的操作,可以忽略下面的響應(yīng)和操作。在步驟5,如果高速 緩沖存儲器單元16N存儲器地址,它將產(chǎn)生L3高速緩沖存儲器請求(通常是機載外部存儲 器),該請求利用總線14被發(fā)送到第三高速緩沖存儲器單元(未示出)。L3和遠程高速緩 存搜索結(jié)果基于返回次序和優(yōu)先級被寫回到高速緩沖存儲器單元16A。
出于說明和描述的目的,給出了對本發(fā)明各個方面的前述描述。這些描述并不意圖 枚舉,或者將本發(fā)明限制為公開的具體形式,明顯地,可能會有許多改進和變體。旨在將那些 本領(lǐng)域技術(shù)人員顯而易見的改進和變體包括在如權(quán)利要求所限定的本發(fā)明的范圍之內(nèi)。
權(quán)利要求
一種旁路存儲器系統(tǒng),包括第一存儲器單元,裝配于總線上;第一高速緩存管理器,耦合至所述第一存儲器單元;以及第二存儲器單元,裝配于所述總線上,所述第一高速緩存管理器可操作用于接收請求,通過所述請求繞過所述第一存儲器單元,并將所述請求發(fā)送給第二存儲器單元。
2. 根據(jù)權(quán)利要求l的旁路存儲器系統(tǒng),所述第一存儲器單元和所述第二存儲器單元包 括虛擬化的高速緩沖存儲器單元。
3. 根據(jù)權(quán)利要求l的旁路存儲器系統(tǒng),還包括第二高速緩存管理器,耦合至所述第二 存儲器單元,所述第二高速緩存管理器可操作用于從所述第一高速緩存管理器接收請求, 并將該請求發(fā)送給所述第二存儲器單元。
4. 根據(jù)權(quán)利要求3的旁路存儲器系統(tǒng),所述第二高速緩存管理器還可操作用于接收額 外請求,通過所述額外請求繞過所述第二存儲器單元,并將所述額外請求發(fā)送給以下中的 至少一個第一存儲器單元;或第三存儲器單元。
5. 根據(jù)權(quán)利要求3的旁路存儲器系統(tǒng),還包括 第一組子存儲器單元,耦合至所述第一高速緩存管理器;以及 第一組子處理元件,耦合至所述第一組子存儲器單元。
6. 根據(jù)權(quán)利要求5的旁路存儲器系統(tǒng),還包括 第二組子存儲器單元,耦合至所述第二高速緩存管理器;以及 第二組子處理元件,耦合至所述第二組子存儲器單元。
7. 根據(jù)權(quán)利要求l的旁路存儲器系統(tǒng),所述總線耦合至主控制器。
8. 根據(jù)權(quán)利要求1的旁路存儲器系統(tǒng),當(dāng)所述第一存儲器單元處于以下狀態(tài)中的至少 一個時,所述第一高速緩存管理器繞過所述第一存儲器單元,所述狀態(tài)為呈現(xiàn)出低于預(yù)定 閾值的產(chǎn)率;或不可操作。
9. 根據(jù)權(quán)利要求l的旁路存儲器系統(tǒng),所述第一裝配單元耦合至所述第一存儲器單元 的輸入和輸出。
10. —種高速緩存旁路系統(tǒng),包括 第一高速緩沖存儲器單元,裝配在總線上;第一高速緩存管理器,耦合至所述第一高速緩沖存儲器單元的輸入和輸出; 第一組子高速緩沖存儲器單元,耦合至所述第一高速緩存管理器; 第二高速緩沖存儲器單元,裝配在所述總線上;第二高速緩存管理器,耦合至所述第二高速緩沖存儲器單元的輸入和輸出;以及 第二組子高速緩沖存儲器單元,耦合至所述第二高速緩存管理器,所述第一高速緩存管理器和所述第二高速緩存管理器的每一個可操作用于接收請求,繞過與其耦合的高速緩沖存儲器單元,并將所述請求發(fā)送給不同的高速緩沖存儲器單元。
11. 根據(jù)權(quán)利要求10的高速緩存旁路系統(tǒng),還包括第一組子處理元件,耦合至所述第 一組子高速緩沖存儲器單元。
12. 根據(jù)權(quán)利要求10的高速緩存旁路系統(tǒng),還包括第二組子處理元件,耦合至所述第 二組子高速緩沖存儲器單元。
13. 根據(jù)權(quán)利要求10的高速緩存旁路系統(tǒng),所述總線耦合至主控制器。
14. 一種存儲器旁路方法,包括在高速緩存管理器上接收第一請求,所述第一高速緩存管理器耦合至第一存儲器單元,所述第一存儲器單元耦合至總線;以及通過從所述第一高速緩存管理器向第二高速緩存管理器發(fā)送所述第一請求來繞過所述第一存儲器單元,所述第二高速緩存管理器耦合至第二存儲器單元,所述第二存儲器單元耦合至所述總線。
15. 根據(jù)權(quán)利要求14的存儲器旁路方法,從耦合至所述第一存儲器單元的第一組子存儲器單元接收所述第一請求。
16. 根據(jù)權(quán)利要求14的存儲器旁路方法,還包括在所述第二高速緩存管理器上接收第二請求,以及通過從所述第二高速緩存管理器向以下中的至少一個發(fā)送所述第二請求來繞過所述第二存儲器單元第一高速緩存管理器,或第三高速緩存管理器。
17. 根據(jù)權(quán)利要求15的存儲器旁路方法,從耦合至所述第二存儲器單元的第二組子存儲器單元接收所述第二請求。
18. 根據(jù)權(quán)利要求17的存儲器旁路方法,所述第一存儲器單元、所述第一組子存儲器單元、所述第二存儲器單元以及所述第二組子存儲器單元是高速緩沖存儲器單元。
19. 根據(jù)權(quán)利要求14的存儲器旁路方法,還包括從所述第二存儲器單元向請求的發(fā)起者發(fā)送對所述第一請求的響應(yīng)。
20. 根據(jù)權(quán)利要求19的存儲器旁路方法,所述響應(yīng)通過所述第二高速緩存管理器進行發(fā)送。
全文摘要
本發(fā)明描述了一種用于多核處理器的裝置、計算機架構(gòu)、存儲器結(jié)構(gòu)、存儲器控制和高速緩沖存儲器操作方法。邏輯核心繞過低產(chǎn)率或性能障礙的緊鄰的高速緩沖存儲器單元。該核心裝配可能已經(jīng)由其他邏輯核心使用的(多個)高速緩存單元。所選定的高速緩沖存儲器單元服務(wù)于具有同樣內(nèi)容的多個邏輯核心。共享的(多個)高速緩沖存儲器單元服務(wù)于具有高速緩存搜索、命中、不命中和寫回功能的所有的裝配核心。該方法通過將有可能已經(jīng)工作于其他邏輯核心的高速緩沖存儲器塊進行共享,由此恢復(fù)其高速緩沖存儲器塊不能操作的邏輯核心。該方法用于提高剩余系統(tǒng)的可靠性和性能。
文檔編號G06F11/16GK101739316SQ20091022244
公開日2010年6月16日 申請日期2009年11月13日 優(yōu)先權(quán)日2008年11月21日
發(fā)明者D·P·杜馬洛特, D·金, E·B·里斯, K·J·杜瓦爾森特, M·J·金 申請人:國際商業(yè)機器公司