專利名稱:在不同高速緩存一致性域之間共享信息的技術(shù)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明的實(shí)施例一般涉及信息處理領(lǐng)域。更具體而言,本發(fā)明的實(shí)施例涉及在工 作于至少兩個(gè)不同高速緩存一致性域中的各代理之間實(shí)現(xiàn)高速緩存一致性的技術(shù)。
背景技術(shù):
隨著越來(lái)越多的功能被集成到計(jì)算平臺(tái)和微處理器中,不同功能單元之間的信息 共享趨向于增長(zhǎng)。例如,將圖形或其它輸入輸出邏輯與一個(gè)或多個(gè)主中央處理單元(CPU) 或“核”集成到同一計(jì)算平臺(tái)、封裝或集成電路中可使得需要在該一個(gè)或多個(gè)核與該圖形邏 輯之間共享信息。在一些現(xiàn)有技術(shù)實(shí)例中,不同功能單元被集成到同一系統(tǒng)、封裝、或管芯 中,一個(gè)或多個(gè)核所訪問(wèn)(存儲(chǔ)或讀取)的信息被保持在對(duì)應(yīng)的高速緩存層級(jí)(例如一級(jí)、 中級(jí)、二級(jí)高速緩存)中,該高速緩存層級(jí)與諸如圖形邏輯的其他功能單元的高速緩存層 級(jí)位于不同的一致性域中。在不同高速緩存地址之間或根據(jù)不同高速緩存一致性域在不同一致性域中保持 數(shù)據(jù)可能需要使用較多高速緩存存儲(chǔ)器,這會(huì)增加系統(tǒng)成本和功耗。此外,在其中不同功能 單元之間共享信息的情況下,維護(hù)不同的對(duì)應(yīng)高速緩存層級(jí)域會(huì)使得每個(gè)功能單元不得不 訪問(wèn)諸如DRAM的主存儲(chǔ)器源,以在不同功能單元間共享信息。諸如DRAM的主存儲(chǔ)器源在 訪問(wèn)速度方面通常比諸如高速緩存的其它存儲(chǔ)器結(jié)構(gòu)慢。因此,采取主存儲(chǔ)器在不同功能 單元間共享信息會(huì)降低功能單元和/或系統(tǒng)的性能。附圖簡(jiǎn)述本發(fā)明的實(shí)施例在各附圖中是作為示例而非作為限制示出的,在附圖中相同的附 圖標(biāo)記指代相同的元素,并且其中
圖1示出其中可以使用本發(fā)明的至少一個(gè)實(shí)施例的系統(tǒng)的框圖;圖2示出其中可以使用本發(fā)明的至少一個(gè)實(shí)施例的處理器。圖3示出其中可以使用本發(fā)明的至少一個(gè)實(shí)施例的共享總線計(jì)算機(jī)系統(tǒng)的框圖;圖4示出其中可以使用本發(fā)明的至少一個(gè)實(shí)施例的點(diǎn)對(duì)點(diǎn)互連計(jì)算機(jī)系統(tǒng)的框 圖;圖5是示出可在一個(gè)實(shí)施例中使用的操作的流程圖。詳細(xì)描述本發(fā)明的實(shí)施例涉及計(jì)算機(jī)系統(tǒng)和信息處理。更具體而言,本發(fā)明的實(shí)施例涉及 允許至少一個(gè)中央處理單元(CPU)獲得由另一處理邏輯(例如,圖形處理邏輯)訪問(wèn)或產(chǎn) 生的信息的可視性,從而獲得與該信息的某種程度的一致性的技術(shù),該另一處理邏輯可能 在與該至少一個(gè)CPU不同的一致性域中操作。在一些實(shí)施例中,一個(gè)或多個(gè)CPU與一個(gè)或多 個(gè)處理邏輯(例如圖形邏輯)共享一緩存等級(jí),諸如“末級(jí)高速緩存”(LLC)或“二級(jí)”(L2) 高速緩存,這一個(gè)或多個(gè)處理邏輯可與這一個(gè)或多個(gè)CPU實(shí)現(xiàn)不同的一致性協(xié)議或者工作 在不同的一致性域中。在一個(gè)實(shí)施例中,CPU和圖形邏輯被集成在相同的管芯、封裝或系統(tǒng) 中,并且該CPU可以訪問(wèn)圖形邏輯的高速緩存一致性層級(jí)中的至少一個(gè)高速緩存等級(jí)以及該圖形邏輯也可訪問(wèn)的LLC,由此允許在CPU與圖形邏輯間共享信息,而不用訪問(wèn)諸如DRAM 的主存儲(chǔ)器源。圖1示出其中可以使用至少一個(gè)實(shí)施例的系統(tǒng)。在圖1中,至少一個(gè)CPU 101和至 少一個(gè)圖形邏輯105被集成到同一管芯、封裝或系統(tǒng)中。此外,在一個(gè)實(shí)施例中,該CPU和圖 形邏輯與各自的高速緩存層級(jí)通信,該高速緩存層級(jí)可包括第一級(jí)高速緩存或“一級(jí)”(L1) 高速緩存103、104,中級(jí)高速緩存107、108,以及末級(jí)高速緩存(LLC)或“二級(jí)”(L2)高速緩 存110。在一個(gè)實(shí)施例中,各個(gè)L1和中級(jí)高速緩存是不同的邏輯結(jié)構(gòu),而LLC是構(gòu)造成可存 儲(chǔ)相同信息的一個(gè)高速緩存,因此包括存儲(chǔ)在CPU的L1和MLC以及圖形邏輯的MLC中的每 一個(gè)中的信息。在一個(gè)實(shí)施例中,通過(guò)圖形邏輯將它的L1高速緩存104的內(nèi)容移動(dòng)或復(fù)制 到它的MLC108——MLC 108關(guān)于CPU —致性控制操作保持與LLC的一致性,LLC就可包括 圖形邏輯的L1高速緩存。通過(guò)復(fù)制或移動(dòng)圖形L1高速緩存104(在圖形一致性域111中) 和圖形MLC (在CPU —致性域109中)的信息,可在CPU —致性域109(在一個(gè)實(shí)施例中,包 括CPU 101、L1高速緩存103、MLC107以及LLC 110)和圖形一致性域111 (在一個(gè)實(shí)施例 中,包括圖形邏輯105和圖形L1高速緩存104)之間共享信息。在一些實(shí)施例中,響應(yīng)于與 渲染圖形圖像相關(guān)聯(lián)的多個(gè)事件的發(fā)生,可由圖形邏輯虛擬尋址的圖形L1高速緩存104中 所存儲(chǔ)的信息被移動(dòng)或復(fù)制到圖形MLC 108。在一個(gè)實(shí)施例中,由圖形驅(qū)動(dòng)或一些其它邏輯 或軟件程序來(lái)管理和執(zhí)行從圖形L1高速緩存104向MLC 108移動(dòng)/復(fù)制信息。在導(dǎo)致圖 形L1高速緩存104中的信息被移動(dòng)或復(fù)制到MLC 108的事件之后,該信息于是存在于CPU 一致性域中,并且在一個(gè)實(shí)施例中可以由CPU使用物理地址或通過(guò)CPU使用的其它尋址方 案(例如,虛擬地址)來(lái)尋址和訪問(wèn)。除CPU和圖形一致性域之外,圖1的系統(tǒng)也包括可能在其自身的一致性域113中 的顯示設(shè)備(例如,監(jiān)視器)115,該一致性域113與CPU和圖形一致性域不一致。在一個(gè)實(shí) 施例中,顯示設(shè)備115可與主系統(tǒng)存儲(chǔ)器120通信,而不是直接與CPU或圖形邏輯的高速緩 存層級(jí)中的高速緩存通信。在一個(gè)實(shí)施例中,圖形邏輯105可通過(guò)訪問(wèn)由CPU存儲(chǔ)在LLC 110中的信息并監(jiān) 聽(tīng)CPU的L1 (103)和CPU的MLC(107)中的信息來(lái)訪問(wèn)CPU可用或可修改的信息,而無(wú)需借 助系統(tǒng)存儲(chǔ)器120。此外,在一個(gè)實(shí)施例中,CPU可訪問(wèn)或“監(jiān)聽(tīng)”存儲(chǔ)在圖形邏輯的中級(jí)高 速緩存107中的信息,而無(wú)需借助LLC 110或系統(tǒng)存儲(chǔ)器120。在一個(gè)實(shí)施例中,可在CPU 一致性域和圖形邏輯一致性域間共享信息,而無(wú)需CPU或圖形設(shè)備訪問(wèn)主系統(tǒng)存儲(chǔ)器,訪 問(wèn)主系統(tǒng)存儲(chǔ)器相對(duì)于訪問(wèn)高速緩存層級(jí)而言花費(fèi)大量時(shí)間。此外,在一個(gè)實(shí)施例中,可以 在CPU和圖形邏輯一致性域之間共享信息,而無(wú)需顯著改變或影響相應(yīng)的CPU或圖形高速 緩存一致性協(xié)議。在一個(gè)實(shí)施例中,圖形邏輯生成虛擬地址以訪問(wèn)其高速緩存一致性域(111)中的 數(shù)據(jù)。然而,圖形一致性域中的一些高速緩存,諸如圖形邏輯只讀或以其他方式“擁有”的 那些高速緩存(“R/0高速緩存”)可能僅使用虛擬標(biāo)簽,而圖形一致性域中的其它高速緩 存,諸如那些可由圖形邏輯讀寫(xiě)的高速緩存("R//W高速緩存")可使用虛擬和物理標(biāo)簽 二者以既支持虛擬尋址又支持物理地址。在一個(gè)實(shí)施例中,如果有高速緩存未命中,則對(duì)高 速緩存層級(jí)的圖形邏輯訪問(wèn)將從虛擬地址被轉(zhuǎn)換成物理地址,以便能生成系統(tǒng)存儲(chǔ)器中正 確的物理地址。
在CPU —致性域中,至少兩個(gè)規(guī)則可適用。第一,高速緩存一致性規(guī)則可要求基于 每個(gè)位置的訪問(wèn)排序彼此在順序上相一致。順序一致訪問(wèn)需要對(duì)于訪問(wèn)高速緩存位置的所 有操作的按順序的全局可視性。第二,CPU排序規(guī)則通常需要單個(gè)處理器的寫(xiě)入被所有處 理器觀測(cè)到是一樣的,但不同處理器的寫(xiě)入可以不同順序被觀測(cè)。然而,處理器必須按執(zhí)行 順序觀測(cè)到自己的寫(xiě)入。圖形高速緩存一致性域可以多種方式不同于主控CPU的高速緩存一致性域。舉例 來(lái)說(shuō),在圖形高速緩存域中,可能僅在圖像渲染過(guò)程中的某些點(diǎn)處保證一致性,而典型CPU 高速緩存域中的一致性被持續(xù)保持。此外,由于圖形一致性域高速緩存通常被虛擬尋址并 且不被監(jiān)聽(tīng),所以不保證LLC中包括存儲(chǔ)在L1或中級(jí)高速緩存(MLC)中的信息。因此,當(dāng) 從LLC被收回一行時(shí),較低層級(jí)高速緩存可能不被更新。為了補(bǔ)償,對(duì)于整行收回,圖形邏 輯可使用修改無(wú)效(“ItoM”)交易來(lái)執(zhí)行這些收回回寫(xiě)交易,而對(duì)于部分行收回,使用讀 取所有權(quán)(RF0)交易。最后,圖形設(shè)備通常是連接到無(wú)序非核(im-core)構(gòu)造的非推理性 無(wú)序機(jī)。由于圖形邏輯在將訪問(wèn)發(fā)送給高速緩存層級(jí)或存儲(chǔ)器后通常不能重新排序這些訪 問(wèn),所以相關(guān)訪問(wèn)必須確保它們被發(fā)出前它們之前的訪問(wèn)已被全局觀察到。本發(fā)明的實(shí)施例考慮到圖形與CPU高速緩存一致性域之間的不同,同時(shí)允許在這 些域之間共享數(shù)據(jù)而無(wú)需借助訪問(wèn)主系統(tǒng)存儲(chǔ)器。在一個(gè)實(shí)施例中,CPU高速緩存一致性規(guī) 則適用于任何物理尋址結(jié)構(gòu),包括圖形邏輯的中級(jí)高速緩存、LLC以及主存儲(chǔ)器。對(duì)于CPU 與圖形域的跨一致性邊界訪問(wèn),CPU可監(jiān)聽(tīng)圖形MLC,這將與CPU —致性域中的行為相同。此 外,本發(fā)明實(shí)施例允許在LLC中包括圖形L1和MLC中存儲(chǔ)的數(shù)據(jù),以便圖形邏輯可使用LLC 而不借助主系統(tǒng)存儲(chǔ)器。在一個(gè)實(shí)施例中,通過(guò)圖形設(shè)備響應(yīng)于渲染事件將L1數(shù)據(jù)復(fù)制或 移動(dòng)到它的MLC中,由此將圖形L1數(shù)據(jù)置于CPU —致性域中并保證它被包含在LLC中,可 使來(lái)自圖形L1的數(shù)據(jù)被包含在LLC中。如果不能在圖形L1或MLC中找到該信息,則圖形 邏輯可以稍后從LLC上訪問(wèn)該信息。圖2示出其中可以使用本發(fā)明的至少一個(gè)實(shí)施例的處理器。具體而言,圖2示出處 理器200,該處理器200具有一個(gè)或多個(gè)中央處理單元(CPU) 205和210以及相應(yīng)的至少一 個(gè)非CPU功能單元207和213。圖2還示出了至少另一個(gè)非CPU功能單元215,該單元215 可執(zhí)行功能單元207和213不執(zhí)行的其他操作。在一個(gè)實(shí)施例中,功能單元207、213和215 可包括諸如圖形處理、存儲(chǔ)器控制和外圍設(shè)備控制的功能,諸如音頻、視頻、磁盤控制、數(shù)字 信號(hào)處理等。在一些實(shí)施例中,處理器200也可包括圖2中未示出的其它邏輯,諸如I/O控 制。在一個(gè)實(shí)施例中,多處理器系統(tǒng)中的每個(gè)處理器或多核處理器中的每個(gè)處理器核可包 括或以其他方式與邏輯219相關(guān)聯(lián),以在一個(gè)或多個(gè)CPU與一個(gè)或多個(gè)圖形邏輯之間實(shí)現(xiàn) fn息共孕。 在一些實(shí)施例中,處理器200可以是通用CPU。在其它實(shí)施例中,處理器可以是能 在可包括通用CPU集成電路和圖形專屬硬件或其它并行計(jì)算硬件的系統(tǒng)中執(zhí)行圖形專屬 功能的通用CPU或硬件。隨著通用計(jì)算變得與諸如圖形引擎、紋理樣本等并行計(jì)算硬件更 集成,邏輯219變得更通用和位置無(wú)關(guān)。因此,邏輯219可包括硬件/軟件或兩者的任何組 合,并且定位或集成在處理器200的任何部分內(nèi)部或外部。 在一個(gè)實(shí)施例中,邏輯219包括用于使CPU能在不顯著修改CPU或圖形邏輯的高 速緩存一致性規(guī)則的情況下監(jiān)聽(tīng)圖形MLC的邏輯。此外,邏輯219可包括允許圖形設(shè)備在無(wú)需首先借助于主存儲(chǔ)器的情況下訪問(wèn)LLC中的信息的邏輯。此外,當(dāng)存儲(chǔ)在圖形L1高速 緩存中的信息目前存在于圖形MLC中時(shí),邏輯219可幫助告知CPU,以便CPU可以偵聽(tīng)該信 肩、o圖3示出其中可使用本發(fā)明的一個(gè)實(shí)施例的共享總線計(jì)算機(jī)系統(tǒng)。微處理器 301-315可包含多種功能單元,諸如一個(gè)或多個(gè)CPU(323,327,333,337,343,347,353, 357)、圖形設(shè)備(307,317,327,337)、存儲(chǔ)器控制器(325,335,345,355)、I/O控制或諸如 PCI或PCIe控制器(320,330,340,350)的其它功能單元。圖3的系統(tǒng)也可包括將微處理器 對(duì)接到外設(shè)控制設(shè)備360的I/O控制器365。在一個(gè)實(shí)施例中,該系統(tǒng)包括用于使CPU能在不顯著修改CPU或圖形邏輯的高速 緩存一致性規(guī)則的情況下監(jiān)聽(tīng)圖形MLC的邏輯319。此外,邏輯319可包括用于允許圖形 設(shè)備在無(wú)需首先借助主存儲(chǔ)器的情況下訪問(wèn)LLC里的信息的邏輯。此外,當(dāng)存儲(chǔ)在圖形L1 高速緩存中的信息目前存在于圖形MLC中時(shí),邏輯219可幫助告知CPU,以便CPU可以監(jiān)聽(tīng) 它。在一些實(shí)施例中,圖3中示出的一些或所有元件可被包括在微處理器中,且包括 其它互連,諸如直接存儲(chǔ)器接口(DMI)、PCI高速圖形(PEG)互連等。不論配置如何,本發(fā) 明的實(shí)施例可被包括在圖3的系統(tǒng)的任何部分中或以其他方式與其相關(guān)聯(lián)。圖3的系統(tǒng)也 可包括主存儲(chǔ)器(未示出),該主存儲(chǔ)器可包括多種存儲(chǔ)器結(jié)構(gòu),諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器 (DRAM)、硬盤驅(qū)動(dòng)器(HDD)或經(jīng)由包含多種存儲(chǔ)設(shè)備和技術(shù)的網(wǎng)絡(luò)接口位于計(jì)算機(jī)系統(tǒng)遠(yuǎn) 程的存儲(chǔ)器源。圖3的系統(tǒng)中的高速緩存存儲(chǔ)器可位于處理器中或接近處理器,諸如在處 理器的本地總線上。更進(jìn)一步,高速緩存存儲(chǔ)器可包括諸如六晶體管(6T)單元的相對(duì)較快的存儲(chǔ)器 單元,或具有近似相等或更快存取速度的其它存儲(chǔ)器單元。除圖3所示的共享總線的計(jì)算機(jī)系統(tǒng)之外,可以結(jié)合本發(fā)明的各實(shí)施方式使用其 它系統(tǒng)配置,包括點(diǎn)對(duì)點(diǎn)(P2P)互連系統(tǒng)和環(huán)互連系統(tǒng)。圖4的P2P系統(tǒng)例如可包括若干 處理器,其中作為示例僅示出了兩個(gè)處理器470、480。處理器470、480可各包括本地存儲(chǔ)器 控制器中樞(MCH)472、482來(lái)與存儲(chǔ)器42、44連接。處理器470、480可使用點(diǎn)對(duì)點(diǎn)(PtP) 接口電路478、488經(jīng)由PtP接口 450來(lái)交換數(shù)據(jù)。處理器470、480均可使用點(diǎn)對(duì)點(diǎn)接口電 路476、494、486、498經(jīng)由單獨(dú)的PtP接口 452、454來(lái)與芯片組490交換數(shù)據(jù)。芯片組490 還可經(jīng)由高性能圖形接口 439來(lái)與高性能圖形電路438交換數(shù)據(jù)。本發(fā)明的各實(shí)施例可位 于具有任何數(shù)量的處理核的任何處理器中,或位于圖4的PtP總線代理的每一個(gè)中。在一個(gè)實(shí)施例中,圖4包括用于使CPU能在不顯著修改CPU或圖形邏輯的高速緩 存一致性規(guī)則的情況下監(jiān)聽(tīng)圖形MLC的邏輯419。此外,邏輯419可包括用于允許圖形設(shè)備 在無(wú)需首先借助主存儲(chǔ)器的情況下訪問(wèn)LLC中的信息的邏輯。此外,當(dāng)存儲(chǔ)在圖形L1高速 緩存中的信息目前存在于圖形MLC中時(shí),邏輯219可幫助告知CPU,以便CPU可以監(jiān)聽(tīng)它。圖5示出可結(jié)合本發(fā)明的至少一個(gè)實(shí)施例使用的操作的流程圖。在操作501,圖形 設(shè)備使存儲(chǔ)在它的L1高速緩存中的信息被復(fù)制或移動(dòng)到CPU —致性域中的MLC,且在操作 505,針對(duì)CPU所請(qǐng)求的信息從CPU向圖形邏輯的MLC發(fā)出監(jiān)聽(tīng)。在操作510中,如果所請(qǐng) 求信息不存在于圖形邏輯的MLC中,則在操作515中,監(jiān)聽(tīng)可針對(duì)該信息前進(jìn)到LLC。在操 作520,如果該信息不存在于LLC中,則在操作525中,訪問(wèn)前進(jìn)到主存儲(chǔ)器。在一個(gè)實(shí)施例中,CPU可使用物理地址來(lái)監(jiān)聽(tīng)MLC,因?yàn)镸LC除圖形邏輯使用的虛擬地址以外還包括物理 地址標(biāo)簽。此外,在一個(gè)實(shí)施例中,因?yàn)閳D形邏輯可存儲(chǔ)和訪問(wèn)LLC中的信息,所以CPU所 請(qǐng)求的信息可能在LLC中而不在MLC中。至少一個(gè)實(shí)施例的一個(gè)或多個(gè)方面可以由存儲(chǔ)在機(jī)器可讀介質(zhì)上的代表性數(shù)據(jù) 來(lái)實(shí)現(xiàn),該數(shù)據(jù)表示處理器中的各種邏輯,該數(shù)據(jù)在被機(jī)器讀取時(shí)使得該機(jī)器制造用于執(zhí) 行此處所描述的技術(shù)的邏輯。被稱為“IP核”的這些表示可以被存儲(chǔ)在有形的機(jī)器可讀介 質(zhì)(“帶”)上,并被提供給各個(gè)顧客或生產(chǎn)設(shè)施以加載到實(shí)際制造該邏輯或處理器的制造 機(jī)器中。因此,描述了用于指導(dǎo)微架構(gòu)存儲(chǔ)器區(qū)域訪問(wèn)的方法和裝置。應(yīng)當(dāng)理解,以上描述 旨在是說(shuō)明性的而非限制性的。在閱讀并理解以上描述之后,許多其它實(shí)施方式對(duì)本領(lǐng)域 技術(shù)人員而言將是顯而易見(jiàn)的。因此,本發(fā)明的范圍應(yīng)參考所附權(quán)利要求書(shū)以及這些權(quán)利 要求享有權(quán)利的等效方案的完全范圍來(lái)確定。
權(quán)利要求
一種裝置,包括圖形邏輯一致性域中的第一高速緩存和第二高速緩存,其中第一高速緩存在高速緩存層級(jí)中的等級(jí)比第二高速緩存低;中央處理單元(CPU),所述中央處理單元使用物理地址訪問(wèn)存儲(chǔ)在所述第一高速緩存中的信息,其中所述CPU與所述圖形邏輯在不同的一致性域中。
2.如權(quán)利要求1所述的裝置,其特征在于,所述圖形邏輯將信息存儲(chǔ)在所述第二高速 緩存中。
3.如權(quán)利要求2所述的裝置,其特征在于,所述第二高速緩存是包括更低等級(jí)高速緩 存的末級(jí)高速緩存(LLC)。
4.如權(quán)利要求1所述的裝置,其特征在于,所述第一高速緩存是中級(jí)高速緩存(MLC)。
5.如權(quán)利要求1所述的裝置,其特征在于,進(jìn)一步包括與所述CPU的高速緩存一致性域 相對(duì)應(yīng)的第三和第四高速緩存,其中所述第三高速緩存是一級(jí)(L1)高速緩存,且所述第四 高速緩存是中級(jí)高速緩存(MLC)。
6.如權(quán)利要求5所述的裝置,其特征在于,進(jìn)一步包括與所述圖形邏輯的一致性域相 對(duì)應(yīng)的L1高速緩存。
7.一種系統(tǒng),包括包括中央處理單元(CPU)的微處理器,所述CPU與包括CPU—級(jí)(L1)高速緩存、CPU中 級(jí)高速緩存(MLC)以及末級(jí)高速緩存(LLC)的CPU高速緩存層級(jí)相對(duì)應(yīng),其中所述微處理 器包括與圖形L1高速緩存、圖形MLC以及圖形LLC相對(duì)應(yīng)的圖形邏輯,其中所述CPU高速 緩存層級(jí)與所述圖形邏輯高速緩存層級(jí)的一部分在不同的一致性域中,且其中所述CPU監(jiān) 聽(tīng)所述圖形MLC;系統(tǒng)存儲(chǔ)器,所述系統(tǒng)存儲(chǔ)器用于存儲(chǔ)包括在所述CPU高速緩存層級(jí)和圖形高速緩存 層級(jí)中的信息。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述LLC包括存儲(chǔ)在所述CPU和圖形L1高 速緩存以及MLC中的信息。
9.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述圖形邏輯在針對(duì)所請(qǐng)求的信息訪問(wèn)所 述系統(tǒng)存儲(chǔ)器之前針對(duì)所述信息訪問(wèn)所述LLC。
10.如權(quán)利要求7所述的系統(tǒng),其特征在于,進(jìn)一步包括顯示設(shè)備。
11.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述顯示設(shè)備在與所述CPU和所述圖形邏 輯不同的一致性域中。
12.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述CPU和所述圖形處理器被包括在相同 的管芯中。
13.一種方法,包括將來(lái)自圖形一級(jí)(L1)高速緩存的數(shù)據(jù)存儲(chǔ)到圖形中級(jí)高速緩存(MLC)中;從中央處理單元向所述中級(jí)高速緩存發(fā)出監(jiān)聽(tīng);如果所述監(jiān)聽(tīng)產(chǎn)生未命中,則訪問(wèn)更高級(jí)高速緩存,其中存儲(chǔ)在所述圖形L1高速緩存 中的信息將被包括在所述更高級(jí)高速緩存中;如果訪問(wèn)所述更高級(jí)高速緩存產(chǎn)生未命中,則訪問(wèn)系統(tǒng)存儲(chǔ)器。
14.如權(quán)利要求13所述的方法,其特征在于,所述更高級(jí)高速緩存是包括所述圖形高速緩存的末級(jí)高速緩存(LLC)。
15.如權(quán)利要求14所述的方法,其特征在于,所述圖形L1高速緩存在第一一致性域中, 且所述圖形MLC在第二一致性域中。
16.如權(quán)利要求15所述的方法,其特征在于,進(jìn)一步包括訪問(wèn)與所述CPU的高速緩存一 致性域相對(duì)應(yīng)的第三和第四高速緩存,其中所述第三高速緩存是一級(jí)(L1)高速緩存,且第 四高速緩存是中級(jí)高速緩存(MLC)。
17.如權(quán)利要求16所述的方法,其特征在于,所述圖形L1高速緩存與所述圖形邏輯的 一致性域相對(duì)應(yīng)。
18.如權(quán)利要求17所述的方法,其特征在于,進(jìn)一步從顯示設(shè)備向所述系統(tǒng)存儲(chǔ)器發(fā) 出讀請(qǐng)求。
19.一種處理器,包括中央處理單元(CPU),所述中央處理單元(CPU)與CPU高速緩存一致性域相對(duì)應(yīng);圖形處理單元(GPU),所述圖形處理單元(GPU)與GPU高速緩存一致性域相對(duì)應(yīng),其中 所述CPU和GPU高速緩存一致性域在無(wú)需訪問(wèn)系統(tǒng)存儲(chǔ)器的情況下共享存儲(chǔ)在所述第一和 第二高速緩存一致性域中的信息。
20.如權(quán)利要求19所述的處理器,其特征在于,所述CPU高速緩存一致性域包括第一一 級(jí)(L1)高速緩存和第一中級(jí)高速緩存(MLC)。
21.如權(quán)利要求20所述的處理器,其特征在于,所述GPU高速緩存一致性域包括第二 L1高速緩存和第二 MLC。
22.如權(quán)利要求21所述的處理器,其特征在于,所述CPU和GPU高速緩存一致性域包括 用于存儲(chǔ)所述第一和第二 MLC中所存儲(chǔ)的所有信息的末級(jí)高速緩存(LLC)。
23.如權(quán)利要求19所述的處理器,其特征在于,所述CPU用于監(jiān)聽(tīng)所述第二MLC,且所 述GPU用于監(jiān)聽(tīng)所述第一 MLC。
24.如權(quán)利要求23所述的處理器,其特征在于,所述第一MLC用于響應(yīng)于圖形渲染事件 存儲(chǔ)所述第一 L1高速緩存中所存儲(chǔ)的信息。
25.如權(quán)利要求24所述的處理器,其特征在于,將來(lái)自第一L1高速緩存的信息存儲(chǔ)到 所述第一 MLC中使所述信息對(duì)所述CPU高速緩存一致性域可用。
全文摘要
一種在不同高速緩存一致性域中的代理間實(shí)現(xiàn)信息共享的技術(shù)。在一個(gè)實(shí)施例中,圖形設(shè)備可使用由一個(gè)或多個(gè)處理核所使用的一個(gè)或多個(gè)高速緩存來(lái)存儲(chǔ)或讀取信息,該信息可以被一個(gè)或多個(gè)處理器核以不影響屬于圖形設(shè)備的程序設(shè)計(jì)和一致性規(guī)則的方式訪問(wèn)。
文檔編號(hào)G06T1/00GK101978359SQ200980110677
公開(kāi)日2011年2月16日 申請(qǐng)日期2009年3月27日 優(yōu)先權(quán)日2008年3月28日
發(fā)明者A·伯克威茨, A·考克, O·卡恩, R·L·法瑞爾, T·A·皮薩, Z·奧芬 申請(qǐng)人:英特爾公司