欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于gpu中的頁映射的專門機(jī)制的制作方法

文檔序號:6611276閱讀:177來源:國知局
專利名稱:用于gpu中的頁映射的專門機(jī)制的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及消除或減少用于檢索系統(tǒng)存儲器顯示數(shù)據(jù)存取所需的地址轉(zhuǎn)譯信息的系 統(tǒng)存儲器存取。背景技木圖形處理單元(GPU)被包含作為計算機(jī)、視頻游戲、汽車導(dǎo)航和其它電子系統(tǒng)的 一部分,以便在監(jiān)視器或其它顯示裝置上產(chǎn)生圖形圖像。待開發(fā)的最初的GPU將像素值 (即,實(shí)際顯示的顏色)存儲在稱為幀緩沖器的局部存儲器中。從那時起,GPU (尤其是由加州圣克拉拉的NVIDIA公司設(shè)計和開發(fā)的GPU)的復(fù) 雜性已顯著增加。存儲在幀緩沖器中的數(shù)據(jù)的大小和復(fù)雜性同樣增加。這種圖形數(shù)據(jù)現(xiàn) 不僅包含像素值,而且包含紋理、紋理描述符、遮影器程序指令和其它數(shù)據(jù)及命令。這 些幀緩沖器現(xiàn)因認(rèn)可了其擴(kuò)展的作用而常被稱為圖形存儲器。直到最近,GPU已經(jīng)由高級圖形端口或AGP總線與中央處理單元和計算機(jī)系統(tǒng)中的 其它裝置通信。雖然開發(fā)出這種總線的較快版本,但其不能夠?qū)⒆銐虻膱D形數(shù)據(jù)傳送到 GPU。因此,圖形數(shù)據(jù)存儲在GPU可用的局部存儲器中,而不必經(jīng)過AGP端口。幸運(yùn) 的是,已開發(fā)出一種新的總線,其是外圍組件互連(PCI)標(biāo)準(zhǔn)的增強(qiáng)版本,或稱PCIE (PCI express)。 NVIDIA公司已對這種總線協(xié)議和所引起的實(shí)施方案進(jìn)行了很大程度的 改進(jìn)和改良。這進(jìn)而已允許為了利于經(jīng)由PCIE總線存取的系統(tǒng)存儲器而消除局部存儲 器。由于圖形存儲器位置的變化而產(chǎn)生了各種復(fù)雜情況。 一種復(fù)雜情況是,GPU使用虛 地址跟蹤數(shù)據(jù)存儲位置,而系統(tǒng)存儲器使用實(shí)地址。為了從系統(tǒng)存儲器讀取數(shù)據(jù),GPU 將其虛地址轉(zhuǎn)譯為實(shí)地址。如果這一轉(zhuǎn)譯花費(fèi)過多的時間,那么系統(tǒng)存儲器可能不會以 足夠快的速度將數(shù)據(jù)提供到GPU。對于必須持續(xù)且快速地提供到GPU的像素或顯示數(shù)據(jù) 來說尤其如此。如果將虛地址轉(zhuǎn)譯為實(shí)地址所需的信息沒有存儲在GPU上,那么這種地址轉(zhuǎn)譯可能 花費(fèi)過多的時間。明確地說,如果此轉(zhuǎn)譯信息在GPU上不可用,那么需要第一存儲器存 取來從系統(tǒng)存儲器中檢索所述轉(zhuǎn)譯信息。只有這樣,才可在第二存儲器存取中從系統(tǒng)存 儲器讀取顯示數(shù)據(jù)或其它所需數(shù)據(jù)。因此,第一存儲器存取串聯(lián)于第二存儲器存取之前, 因?yàn)樵跊]有第一存儲器存取所提供的地址的情況下無法進(jìn)行第二存儲器存取。額外的第 一存儲器存取可能長達(dá)1 usee,從而大大減緩讀取顯示數(shù)據(jù)或其它所需數(shù)據(jù)的速率。因此,需要消除或減少用于從系統(tǒng)存儲器檢索地址轉(zhuǎn)譯信息的這些額外存儲器存取 的電路、方法和設(shè)備。發(fā)明內(nèi)容因此,本發(fā)明實(shí)施例提供消除或減少用于檢索系統(tǒng)存儲器顯示數(shù)據(jù)存取所需的地址 轉(zhuǎn)譯信息的系統(tǒng)存儲器存取的電路、方法和設(shè)備。明確地說,地址轉(zhuǎn)譯信息存儲在圖形 處理器中。這減少或消除對于用于檢索轉(zhuǎn)譯信息的單獨(dú)系統(tǒng)存儲器存取的需要。由于不 需要額外的存儲器存取,所以處理器可更快地轉(zhuǎn)譯地址并從系統(tǒng)存儲器讀取所需的顯示 數(shù)據(jù)或其它數(shù)據(jù)。本發(fā)明的示范性實(shí)施例通過用條目預(yù)填充稱為圖形轉(zhuǎn)譯后備緩沖器(圖形TLB)的 高速緩沖存儲器來消除或減少加電之后對于地址轉(zhuǎn)譯信息的系統(tǒng)存儲器存取,所述條目 可用于將由GPU使用的虛地址轉(zhuǎn)譯成由系統(tǒng)存儲器使用的實(shí)地址。在本發(fā)明的特定實(shí)施 例中,用顯示數(shù)據(jù)所需的地址信息來預(yù)填充圖形TLB,但在本發(fā)明的其它實(shí)施例中,用 于其它類型的數(shù)據(jù)的地址也可預(yù)填充圖形TLB。這防止原本需要用來檢索必要的地址轉(zhuǎn) 譯信息的額外系統(tǒng)存儲器存取。加電之后,為了確保所需的轉(zhuǎn)譯信息維持在圖形處理器上,鎖定或以另外的方式限 制圖形TLB中的顯示存取所需的條目。這可通過將存取限制在圖形TLB中的某些位置, 通過將旗標(biāo)或其它識別信息存儲在圖形TLB中,或通過其它適當(dāng)?shù)姆椒▉硗瓿?。這防止 重寫原本需要從系統(tǒng)存儲器再次讀取的數(shù)據(jù)。本發(fā)明的另一示范性實(shí)施例通過存儲系統(tǒng)BIOS所提供的系統(tǒng)存儲器的較大連續(xù)區(qū) 塊的基地址和地址范圍來消除或減少對于地址轉(zhuǎn)譯信息的存儲器存取。加電或發(fā)生其它 適當(dāng)?shù)氖录r,系統(tǒng)BIOS向GPU分配較大存儲器區(qū)塊,其可稱為"劃出區(qū)(carveout)"。 GPU可將此較大存儲器區(qū)塊用于顯示數(shù)據(jù)或其它數(shù)據(jù)。GPU將基地址和范圍存儲在芯片 上,例如存儲在硬件寄存器中。當(dāng)由GPU使用的虛地址將被轉(zhuǎn)譯成實(shí)地址時,進(jìn)行范圍檢査以查明虛地址是否在劃 出區(qū)的范圍內(nèi)。在本發(fā)明的特定實(shí)施例中,通過使劃出區(qū)的基地址對應(yīng)于虛地址零來對 此進(jìn)行簡化。劃出區(qū)中的最高虛地址則對應(yīng)于實(shí)地址的范圍。如果待轉(zhuǎn)譯的地址在劃出 區(qū)的虛地址的范圍內(nèi),那么可通過將基地址添加到虛地址而將虛地址轉(zhuǎn)譯成實(shí)地址。如 果待轉(zhuǎn)譯的地址不在此范圍內(nèi),那么可使用圖形TLB或頁表來轉(zhuǎn)譯所述地址。本發(fā)明的各個實(shí)施例可包含本文描述的這些或其它特征中的一個或一個以上特征。 可參看以下具體實(shí)施方式
和附圖來獲得對本發(fā)明的性質(zhì)和優(yōu)點(diǎn)的更好的理解。


圖1是通過包含本發(fā)明實(shí)施例而改進(jìn)的計算系統(tǒng)的方框圖;圖2是通過包含本發(fā)明實(shí)施例而改進(jìn)的另一計算系統(tǒng)的方框圖;圖3是說明根據(jù)本發(fā)明實(shí)施例的存取存儲在系統(tǒng)存儲器中的顯示數(shù)據(jù)的方法的流程圖;圖4A-C說明根據(jù)本發(fā)明實(shí)施例在存取顯示數(shù)據(jù)的方法期間計算機(jī)系統(tǒng)中命令和數(shù) 據(jù)的傳遞;圖5是說明根據(jù)本發(fā)明實(shí)施例的存取系統(tǒng)存儲器中的顯示數(shù)據(jù)的另一方法的流程圖;圖6說明根據(jù)本發(fā)明實(shí)施例在存取顯示數(shù)據(jù)的方法期間計算機(jī)系統(tǒng)中命令和數(shù)據(jù)的 傳遞;圖7是符合本發(fā)明實(shí)施例的圖形處理單元的方框圖;和
圖8是根據(jù)本發(fā)明實(shí)施例的圖形卡的圖。
具體實(shí)施方式
圖1是通過包含本發(fā)明實(shí)施例而改進(jìn)的計算系統(tǒng)的方框圖。此方框圖包含中央處理 單元(CPU)或主機(jī)處理器100、系統(tǒng)平臺處理器(SPP) 110、系統(tǒng)存儲器120、圖形處 理單元(GPU) 130、媒體通信處理器(MCP) 150、網(wǎng)絡(luò)160,和內(nèi)部及外圍裝置270。 還包含幀緩沖器、局部或圖形存儲器140,但用虛線展示。虛線指示雖然常規(guī)計算機(jī)系 統(tǒng)包含此存儲器,但本發(fā)明實(shí)施例允許將其移除。該圖與所包含的其它圖一樣,是僅出 于說明性目的而展示的,且不限制本發(fā)明的可能的實(shí)施例或扠利要求書。CPU IOO經(jīng)由主機(jī)總線105連接到SPP 110。 SPP IIO經(jīng)由PCIE總線135與圖形處 理單元130通信。SPP110經(jīng)由存儲器總線125從系統(tǒng)存儲器120讀取數(shù)據(jù)和將數(shù)據(jù)寫入 到系統(tǒng)存儲器120。 MCP 150經(jīng)由例如HyperTransport總線155的高速連接與SPP 110通 信,并將網(wǎng)絡(luò)160和內(nèi)部及外圍裝置170連接到計算機(jī)系統(tǒng)的剩余部分。圖形處理單元 130經(jīng)由PCIE總線135接收數(shù)據(jù),并產(chǎn)生用于通過監(jiān)視器或其它顯示裝置(未圖示)進(jìn) 行顯示的圖形和視頻圖像。在本發(fā)明其它實(shí)施例中,圖形處理單元包含在集成圖形處理 器(IGP)中,使用所述集成圖形處理器代替SPPllO。在另外其它實(shí)施例中,可使用通 用GPU作為GPU 130。CPU IOO可以是處理器,例如所屬領(lǐng)域的技術(shù)人員眾所周知的由Intel公司或其它供 應(yīng)商制造的那些處理器。SPP 110和MCP 150統(tǒng)稱為芯片集。系統(tǒng)存儲器120通常是排 列成許多雙線內(nèi)存儲器模塊(DIMM)的許多動態(tài)隨機(jī)存取存儲器裝置。圖形處理單元 130、 SPP 110、 MCP150和IGP (如果使用的話)優(yōu)選地由NVIDIA公司制造。圖形處理單元130可能位于圖形卡上,而CPU 100、系統(tǒng)平臺處理器IIO、系統(tǒng)存儲 器120和媒體通信處理器150可位于計算機(jī)系統(tǒng)母板上。包含圖形處理單元130的圖形 卡通常是附接有圖形處理單元的數(shù)據(jù)印刷電路板。所述印刷電路板通常包含連接器(例 如,PC正連接器),其同樣附接到印刷電路板并配合到母板上包含的PCIE槽中。在本發(fā) 明其它實(shí)施例中,圖形處理器包含在母板上,或歸入IGP中。計算機(jī)系統(tǒng)(例如,所說明的計算機(jī)系統(tǒng))可包含一個以上GPU 130。另外,這些 圖形處理單元的每一者可位于單獨(dú)的圖形卡上。這些圖形卡中的兩者或兩者以上可通過 跨接線或其它連接而接合在一起。NVIDIA公司已開發(fā)出一種此類技術(shù)——開拓性SLFM。 在本發(fā)明其它實(shí)施例中, 一個或一個以上GPU可位于一個或一個以上圖形卡上,而一個 或一個以上其它GPU位于母板上。
在先前開發(fā)的計算機(jī)系統(tǒng)中,GPU 130經(jīng)由AGP總線與系統(tǒng)平臺處理器110或其它 裝置(在例如北橋處)通信。不幸的是,AGP總線不能以所需速率將所需數(shù)據(jù)供應(yīng)到GPU 130。因此,幀緩沖器140是供GPU使用的。此存儲器允許在數(shù)據(jù)不必橫穿AGP瓶頸的 情況下存取所述數(shù)據(jù)。現(xiàn)己可用較快的數(shù)據(jù)傳遞協(xié)議,例如PCffi和HyperTransport。值得注意的是,NVIDIA 公司己開發(fā)出改進(jìn)的PCIE接口。因此,從GPU 130到系統(tǒng)存儲器120的帶寬已大大增 加。因此,本發(fā)明實(shí)施例提供并允許移除幀緩沖器140??捎糜谝瞥龓彌_器的另外的 方法和電路的實(shí)例可査閱共同待決且共同擁有的2005年10月18日申請的題為"Zero Frame Buffer"的第11/253438號美國專利申請案,所述專利申請案以引用的方式并入本 文中。本發(fā)明實(shí)施例所允許的對幀緩沖器的移除提供節(jié)省,其不僅包含這些DRAM的去除 而且還包含額外的節(jié)省。舉例來說,通常使用電壓調(diào)節(jié)器來控制存儲器的電源,且使用 電容器來提供電源過濾。移除DRAM、調(diào)節(jié)器和電容器提供成本節(jié)省,其減少了圖形卡 的材料清單(BOM)。此外,簡化了板布局,減小了板空間,并簡化了圖形卡測試。這些 因素縮減了研究和設(shè)計以及其它工程和測試成本,借此增加包含本發(fā)明實(shí)施例的圖形卡 的毛利。雖然本發(fā)明實(shí)施例較好地適于改進(jìn)零幀緩沖器圖形處理器的性能,但也可通過包含 本發(fā)明實(shí)施例來改進(jìn)其它圖形處理器(包含具有有限或芯片上存儲器或有限的局部存儲 器的那些圖形處理器)。并且,雖然此實(shí)施例提供可通過包含本發(fā)明實(shí)施例而改進(jìn)的特定 類型的計算機(jī)系統(tǒng),但也可改進(jìn)其它類型的電子或計算機(jī)系統(tǒng)。舉例來說,可通過包含 本發(fā)明實(shí)施例來改進(jìn)視頻和其它游戲系統(tǒng)、導(dǎo)航、機(jī)頂盒、彈球機(jī)以及其它類型的系統(tǒng)。并且,雖然本文描述的這些類型的計算機(jī)系統(tǒng)和其它電子系統(tǒng)目前較為常見,但當(dāng) 前正開發(fā)其它類型的計算機(jī)和其它電子系統(tǒng),且將來將開發(fā)出其它系統(tǒng)。預(yù)期這些系統(tǒng) 中的許多系統(tǒng)也可通過包含本發(fā)明實(shí)施例而得以改進(jìn)。因此,所列舉的特定實(shí)例本質(zhì)上 是闡釋性的,且不限制本發(fā)明的可能的實(shí)施例或權(quán)利要求書。圖2是通過包含本發(fā)明實(shí)施例而改進(jìn)的另一計算系統(tǒng)的方框圖。此方框圖包含中央 處理單元或主機(jī)處理器200、 SPP210、系統(tǒng)存儲器220、圖形處理單元230、 MCP250、 網(wǎng)絡(luò)260,和內(nèi)部及外圍裝置270。同樣,包含幀緩沖器、局部或圖形存儲器240,但用 虛線表示以突出其移除。CPU 200經(jīng)由主機(jī)總線205與SPP 210通信,并經(jīng)由存儲器總線225存取系統(tǒng)存儲
器220。 GPU 230經(jīng)由PCIE總線235與SPP210通信,并經(jīng)由存儲器總線245與局部存 儲器通信。MCP 250經(jīng)由例如HyperTransport總線255的高速連接與SPP 210通信,并 將網(wǎng)絡(luò)260和內(nèi)部及外圍裝置270連接到計算機(jī)系統(tǒng)的剩余部分。與之前一樣,中央處理單元或主機(jī)處理器200可以是由Intel公司或其它供應(yīng)商制造 的中央處理單元之一,且是所屬領(lǐng)域的技術(shù)人員眾所周知的。圖形處理器230、集成圖 形處理器210和媒體及通信處理器240優(yōu)選地由NVIDIA公司提供。圖1和2中移除幀緩沖器140和240,以及本發(fā)明其它實(shí)施例中移除其它幀緩沖器, 并非不產(chǎn)生后果。舉例來說,產(chǎn)生關(guān)于用于從系統(tǒng)存儲器存儲和讀取數(shù)據(jù)的地址的困難。當(dāng)GPU使用局部存儲器來存儲數(shù)據(jù)時,局部存儲器嚴(yán)格地處于GPU的控制下。通 常,其它電路均不存取局部存儲器。這允許GPU以其認(rèn)為合適的任何方式跟蹤并分配地 址。然而,系統(tǒng)存儲器由多個電路使用,且操作系統(tǒng)向那些電路分配空間。操作系統(tǒng)分 配到GPU的空間可形成一個連續(xù)的存儲器區(qū)。更有可能的是,分配到GPU的空間被細(xì) 分為許多區(qū)塊或區(qū),其中一些可能具有不同大小。這些區(qū)塊或區(qū)可通過初始、起始或基 地址和存儲器大小或地址范圍來描述。圖形處理單元使用實(shí)際的系統(tǒng)存儲器地址較困難且不便利,因?yàn)樘峁┙oGPU的地址 被分配于多個獨(dú)立區(qū)塊中。并且,每當(dāng)開啟電力或另外再分配存儲器地址時,提供給GPU 的地址可能變化。運(yùn)行于GPU上的軟件使用獨(dú)立于系統(tǒng)存儲器中實(shí)際實(shí)地址的虛地址會 容易得多。明確地說,GPU將存儲器空間視為一個較大的連續(xù)區(qū)塊,而以若干較小的完 全不同的區(qū)塊將存儲器分配到GPU。因此,當(dāng)將數(shù)據(jù)寫入到系統(tǒng)存儲器或從系統(tǒng)存儲器 讀取數(shù)據(jù)時,執(zhí)行由GPU使用的虛地址與由系統(tǒng)存儲器使用的實(shí)地址之間的轉(zhuǎn)譯。可使 用表來執(zhí)行這種轉(zhuǎn)譯,所述表的條目包含虛地址及其相應(yīng)的實(shí)地址對應(yīng)物。這些表稱為 頁表,而所述條目稱為頁表?xiàng)l目(PTE)。頁表太大以至于不能置于GPU上;由于成本約束的緣故,這樣做是不合需要的。因 此,將頁表存儲在系統(tǒng)存儲器中。不幸的是,這意味著每當(dāng)需要來自系統(tǒng)存儲器的數(shù)據(jù) 時,需要進(jìn)行第一或額外存儲器存取來檢索所需的頁表?xiàng)l目,且需要第二存儲器存取來 檢索所需的數(shù)據(jù)。因此,在本發(fā)明實(shí)施例中,頁表中的一些數(shù)據(jù)被高速緩沖存儲于GPU 上的圖形TLB中。當(dāng)需要頁表?xiàng)l目,且頁表?xiàng)l目在GPU上的圖形TLB中可用時,認(rèn)為已發(fā)生命中(hit), 且可進(jìn)行地址轉(zhuǎn)譯。如果頁表?xiàng)l目未被存儲在GPU上的圖形TLB中,那么認(rèn)為已發(fā)生 未中(miss)。此時,從系統(tǒng)存儲器中的頁表中檢索所需的頁表?xiàng)l目。
己檢索到所需的頁表?xiàng)l目之后,將再次需要此同一頁表?xiàng)l目的可能性很大。因此, 為了減少存儲器存取的數(shù)目,需要將此頁表?xiàng)l目存儲在圖形TLB中。如果高速緩沖存儲 器中沒有空位置,那么最近未使用的頁表?xiàng)l目可能為了利于此新的頁表?xiàng)l目而被重寫或 驅(qū)逐。在本發(fā)明各個實(shí)施例中,在驅(qū)逐之前,進(jìn)行檢查以確定當(dāng)前被高速緩沖存儲的條 目在其從系統(tǒng)存儲器被讀取之后是否被圖形處理單元修改。如果其被修改,那么在新的 頁表?xiàng)l目在圖形TLB中對其進(jìn)行重寫之前進(jìn)行回寫操作,在所述回寫操作中將經(jīng)更新的 頁表?xiàng)l目回寫到系統(tǒng)存儲器。在本發(fā)明其它實(shí)施例中,不執(zhí)行此回寫程序。在本發(fā)明特定實(shí)施例中,基于系統(tǒng)可能分配的最小間隔尺寸將頁表編入索引,例如, PTE可表示最少4個4KB區(qū)塊或頁。因此,通過將虛地址除以16KB并接著乘以條目的 大小,在頁表中產(chǎn)生相關(guān)的索引。圖形TLB未中之后,GPU使用上述索引來找到頁表?xiàng)l 目。在此特定實(shí)施例中,頁表?xiàng)l目可映射大于4KB的一個或一個以上區(qū)塊。舉例來說, 頁表?xiàng)l目可映射最少四個4KB區(qū)塊,且可映射大于4KB —直達(dá)到最大總計為256KB的 4、 8或16個區(qū)塊。 一旦將這種頁表?xiàng)l目載入高速緩沖存儲器中,圖形TLB就可通過參 考單個圖形TLB條目(其為單個PTE)而在所述256KB內(nèi)找到虛地址。在此情況下, 頁表本身排列成16字節(jié)條目,所述條目的每一者映射至少16KB。因此,256KB頁表?xiàng)l 目復(fù)制在位于虛地址空間的所述256KB內(nèi)的每個頁表位置處。因此,在此實(shí)例中,存在 具有精確相同的信息的16個頁表?xiàng)l目。256KB內(nèi)的未中讀取那些相同條目中的一者。如上文所提及,如果所需的頁表?xiàng)l目在圖形TLB中不可用,那么需要進(jìn)行額外存儲 器存取來檢索所述條目。對于需要對數(shù)據(jù)的穩(wěn)定、持續(xù)存取的特定圖形功能來說,這些 額外存儲器存取非常不合需要。舉例來說,圖形處理單元需要可靠地存取來顯示數(shù)據(jù), 使得其可以所需速率將圖像數(shù)據(jù)提供到監(jiān)視器。如果需要過多的存儲器存取,那么所產(chǎn) 生的等待時間可能中斷像素數(shù)據(jù)向監(jiān)視器的流動,借此破壞圖形圖像。明確地說,如果需要從系統(tǒng)存儲器讀取用于顯示數(shù)據(jù)存取的地址轉(zhuǎn)譯信息,那么所 述存取與后續(xù)數(shù)據(jù)存取串聯(lián),即必須從存儲器讀取地址轉(zhuǎn)譯信息,因此GPU可了解所需 的顯示數(shù)據(jù)存儲在何處。由此額外存儲器存取引起的額外等待時間減小了可將顯示數(shù)據(jù) 提供到監(jiān)視器的速率,從而再次破壞圖形圖像。這些額外存儲器存取還增加PC正總線上 的通信量并浪費(fèi)系統(tǒng)存儲器帶寬。當(dāng)加龜或發(fā)生圖形TLB為空或被清除的其它事件時,尤其可能進(jìn)行用于檢索地址轉(zhuǎn) 譯信息的額外存儲器讀取。明確地說,在計算機(jī)系統(tǒng)加電時,基本輸入/輸出系統(tǒng)(BIOS) 預(yù)期GPU可自由處置局部幀緩沖存儲器。因此,在常規(guī)系統(tǒng)中,系統(tǒng)BIOS不分配系統(tǒng)
存儲器中的空間以供圖形處理器使用。事實(shí)上,GPU從操作系統(tǒng)處請求一定量的系統(tǒng)存 儲器空間。操作系統(tǒng)分配存儲器空間之后,GPU可將頁表中的頁表?xiàng)l目存儲在系統(tǒng)存儲 器中,但圖形TLB為空。當(dāng)需要顯示數(shù)據(jù)時,針對PTE的每一請求導(dǎo)致未中,所述未中 進(jìn)一步導(dǎo)致額外存儲器存取。因此,本發(fā)明實(shí)施例用頁表?xiàng)l目預(yù)填充圖形TLB。也就是說,在需要頁表?xiàng)l目的請 求導(dǎo)致高速緩沖存儲器未中之前用頁表?xiàng)l目填充圖形TLB。這種預(yù)填充通常至少包含檢 索顯示數(shù)據(jù)所需的頁表?xiàng)l目,但其它頁表?xiàng)l目也可預(yù)填充圖形TLB。此外,為了防止頁 表?xiàng)l目被驅(qū)逐,可鎖定或以另外的方式限制一些條目。在本發(fā)明特定實(shí)施例中,鎖定或 限制顯示數(shù)據(jù)所需的頁表?xiàng)l目,但在其它實(shí)施例中,可鎖定或限制其它類型的數(shù)據(jù)。以 下圖式中展示說明一個此類示范性實(shí)施例的流程圖。圖3是說明根據(jù)本發(fā)明實(shí)施例的存取存儲在系統(tǒng)存儲器中的顯示數(shù)據(jù)的方法的流程 圖。該圖與所包含的其它圖一樣,是僅出于說明性目的而展示的,且不限制本發(fā)明的可 能的實(shí)施例或權(quán)利要求書。并且,盡管此處展示的這一實(shí)例和其它實(shí)例尤其較好地適于 存取顯示數(shù)據(jù),但可通過包含本發(fā)明實(shí)施例來改進(jìn)其它類型的數(shù)據(jù)存取。在本方法中,GPU,或更明確地說運(yùn)行于GPU上的驅(qū)動器或資源管理器,確??墒?用存儲在GPU本身上的轉(zhuǎn)譯信息將虛地址轉(zhuǎn)譯成實(shí)地址,而不需要從系統(tǒng)存儲器檢索此 信息。這是通過最初將轉(zhuǎn)譯條目預(yù)填充或預(yù)載入圖形TLB中來實(shí)現(xiàn)的。接著鎖定與顯示 數(shù)據(jù)相關(guān)聯(lián)的地址,或以另外的方式防止其被重寫或驅(qū)逐。明確地說,在動作310中,計算機(jī)或其它電子系統(tǒng)被加電,或經(jīng)歷重新啟動、功率 重置或類似事件。在動作320中,作為運(yùn)行于GPU上的驅(qū)動器的一部分的資源管理器從 操作系統(tǒng)處請求系統(tǒng)存儲器空間。在動作330中,操作系統(tǒng)為CPU分配系統(tǒng)存儲器中的 空間。雖然在此實(shí)例中,運(yùn)行于CPU上的操作系統(tǒng)負(fù)責(zé)分配系統(tǒng)存儲器中的幀緩沖器或圖 形存儲器空間,但在本發(fā)明的各個實(shí)施例中,運(yùn)行于CPU或系統(tǒng)中其它裝置上的驅(qū)動器或其它軟件可負(fù)責(zé)這項(xiàng)任務(wù)。在其它實(shí)施例中,這項(xiàng)任務(wù)由操作系統(tǒng)和所述驅(qū)動器或其它軟件中的一者或一者以上共享。在動作340中,資源管理器從操作系統(tǒng)接收系統(tǒng)存儲 器中的空間的實(shí)地址信息。此信息通常將至少包含系統(tǒng)存儲器中一個或一個以上區(qū)的基 地址和大小或范圍。資源管理器接著可壓縮或以另外的方式配置此信息,以便限制將由GPU使用的虛地 址轉(zhuǎn)譯成由系統(tǒng)存儲器使用的實(shí)地址所需的頁表?xiàng)l目的數(shù)目。舉例來說,可組合由操作
系統(tǒng)向GPU分配的系統(tǒng)存儲器空間的單獨(dú)但連續(xù)的區(qū)塊,其中將單個基地址用作起始地 址,且將虛地址用作索引信號。展示這一情況的實(shí)例可查閱共同待決且共同擁有的2005 年3月IO日申請的題為"Memory Management for Virtual Address Space with Translation Units of Variable Range Size"的第11/077662號美國專利申請案,所述專利申請案以引用 的方式并入本文中。并且,雖然在此實(shí)例中,這項(xiàng)任務(wù)是作為運(yùn)行于GPU上的驅(qū)動器的 一部分的資源管理器的責(zé)任;但在其它.實(shí)施例中,此實(shí)例和所包含的其它實(shí)例中展示的 此任務(wù)以及其它任務(wù)可由其它軟件、固件或硬件完成或共享。在動作350中,資源管理器將頁表的轉(zhuǎn)譯條目寫入到系統(tǒng)存儲器中。資源管理器還 用這些轉(zhuǎn)譯條目中的至少一些轉(zhuǎn)譯條目對圖形TLB進(jìn)行預(yù)載入或預(yù)填充。在動作360中, 可鎖定一些或所有的圖形TLB條目,或以另外的方式防止其被驅(qū)逐。在本發(fā)明的特定實(shí) 施例中,防止所顯示的數(shù)據(jù)的地址被重寫或驅(qū)逐,以確??稍诓恍枰槍Φ刂忿D(zhuǎn)譯信息 進(jìn)行額外的系統(tǒng)存儲器存取的情況下提供顯示信息的地址。可使用符合本發(fā)明實(shí)施例的各種方法來實(shí)現(xiàn)所述鎖定。舉例來說,在許多客戶端可 從圖形TLB讀取數(shù)據(jù)的情況下,可限制這些客戶端中的一者或一者以上,使其無法將數(shù) 據(jù)寫入到被限制的高速緩沖存儲器位置,而是必須寫入到許多共有的(pooled)或未被限 制的高速緩沖存儲器線中的一者。更多細(xì)節(jié)可參閱共同待決且共同擁有的2005年12月 8日申請的題為"Shared Cache with Client-Specific Replacement Policy"的第11/298256 號美國專利申請案,所述專利申請案以引用的方式并入本文中。在其它實(shí)施例中,可對 可向圖形TLB進(jìn)行寫入的電路施加其它限制,或可將例如旗標(biāo)的數(shù)據(jù)與條目一起存儲在 圖形TLB中。舉例來說,可對可向圖形TLB進(jìn)行寫入的電路隱藏一些高速緩沖存儲器線 的存在?;蛘?,如果設(shè)定了旗標(biāo),那么無法重寫或驅(qū)逐相關(guān)聯(lián)的高速緩沖存儲器線中的 數(shù)據(jù)。在動作370中,當(dāng)需要來自系統(tǒng)存儲器的顯示數(shù)據(jù)或其它數(shù)據(jù)時,使用圖形TLB中 的頁表?xiàng)l目將由GPU使用的虛地址轉(zhuǎn)譯成實(shí)地址。明確地說,將虛地址提供到圖形TLB, 且讀取相應(yīng)的實(shí)地址。同樣,如果此信息沒有存儲在圖形TLB中,那么需要在可發(fā)生地 址轉(zhuǎn)譯之前從系統(tǒng)存儲器處請求所述信息。在本發(fā)明各個實(shí)施例中,可包含其它技術(shù)來限制圖形TLB未中的影響。明確地說, 可采取額外的步驟以減少存儲器存取等待時間,借此減小高速緩沖存儲器未中對顯示數(shù) 據(jù)的供應(yīng)的影響。 一個解決方案是利用作為PCIE規(guī)格的一部分的虛通道VC1。如果圖 形TLB未中使用虛通道VC1,那么其可回避其它請求,從而允許更快地檢索所需條目。
然而,常規(guī)的芯片集不允許存取虛通道VC1。此外,雖然NVIDIA公司可以符合本發(fā)明 的方式在產(chǎn)品中實(shí)施此解決方案,但與其它裝置的互操作性使得當(dāng)前這樣做并不合乎需 要,但將來這一情況可能改變。另一解決方案涉及將由圖形TLB未中產(chǎn)生的請求列入優(yōu) 先或進(jìn)行標(biāo)記。舉例來說,可用高優(yōu)先權(quán)標(biāo)志對請求進(jìn)行標(biāo)記。此解決方案具有與上一 解決方案類似的互操作性考慮。圖4A-C說明根據(jù)本發(fā)明實(shí)施例在存取顯示數(shù)據(jù)的方法期間計算機(jī)系統(tǒng)中命令和數(shù) 據(jù)的傳遞。在此特定實(shí)例中,展示圖1的計算機(jī)系統(tǒng),但其它系統(tǒng)(例如,圖2所示的 系統(tǒng))中的命令和數(shù)據(jù)傳遞是類似的。圖4A中,當(dāng)系統(tǒng)加電、重置、重新啟動或發(fā)生其它事件時,GPU將對于系統(tǒng)存儲 器空間的請求發(fā)送到操作系統(tǒng)。同樣,此請求可來自在GPU上運(yùn)作的驅(qū)動器,明確地說, 驅(qū)動器的資源管理器部分可作出此請求,但其它硬件、固件或軟件也可作出此請求。此 請求可經(jīng)由系統(tǒng)平臺處理器410從GPU 430傳遞到中央處理單元400。圖4B中,操作系統(tǒng)為GPU分配系統(tǒng)存儲器中的空間以供用作幀緩沖器或圖形存儲 器422。存儲在幀緩沖器或圖形存儲器422中的數(shù)據(jù)可包含顯示數(shù)據(jù),即用于顯示的像 素值、紋理、紋理描述符、遮影器程序指令,和其它數(shù)據(jù)及命令。在此實(shí)例中,所分配的空間,即系統(tǒng)存儲器420中的幀緩沖器422,展示為連續(xù)的。 在其它實(shí)施例或?qū)嵗校峙涞目臻g可能不連續(xù),即,其可能完全不同,分裂為多個 區(qū)。將通常包含系統(tǒng)存儲器的區(qū)的一個或一個以上基地址和范圍的信息傳遞到GPU。同 樣,在本發(fā)明特定實(shí)施例中,將此信息傳遞到在GPU430上運(yùn)作的驅(qū)動器的資源管理器 部分,但可使用其它軟件、固件或硬件。此信息可經(jīng)由系統(tǒng)平臺處理器410從CPU 400 傳遞到GPU 430。圖4C中,GPU將頁表中的轉(zhuǎn)譯條目寫入在系統(tǒng)存儲器中。GPU還用這些轉(zhuǎn)譯條目 中的至少一些轉(zhuǎn)譯條目對圖形TLB進(jìn)行預(yù)載入。同樣,這些條目將由GPU使用的虛地 址轉(zhuǎn)譯成由系統(tǒng)存儲器420中的幀緩沖器422使用的實(shí)地址。與之前一樣,可鎖定或以另外的方式限制圖形TLB中的一些條目,使其無法被驅(qū)逐 或重寫。同樣,在本發(fā)明特定實(shí)施例中,鎖定或以另外的方式限制對識別幀緩沖器422 中存儲有像素或顯示數(shù)據(jù)的位置的地址進(jìn)行轉(zhuǎn)譯的條目。當(dāng)需要從幀緩沖器422存取數(shù)據(jù)時,使用圖形TLB 432將由GPU 430使用的虛地址 轉(zhuǎn)譯成實(shí)地址。接著將這些請求傳遞到系統(tǒng)平臺處理器410,系統(tǒng)平臺處理器410讀取
所需的數(shù)據(jù)并將其傳回GPU 430。在以上實(shí)例中,加電或其它功率重置或類似狀況之后,GPU將對于系統(tǒng)存儲器中的 空間的請求發(fā)送到操作系統(tǒng)。在本發(fā)明其它實(shí)施例中,GPU將需要系統(tǒng)存儲器中的空間 的事實(shí)是已知的,且不需要作出請求。在此情況下,在加電、重置、重新啟動或其它適 當(dāng)事件之后,系統(tǒng)BIOS、操作系統(tǒng)或其它軟件、固件或硬件可分配系統(tǒng)存儲器中的空間。 這在受控環(huán)境中尤其可行,例如在GPU不如其通常在桌面應(yīng)用中那樣容易被交換或替代 的移動應(yīng)用中。GPU可能己了解在系統(tǒng)存儲器中其將使用的地址,或地址信息可由系統(tǒng)BIOS或操 作系統(tǒng)傳遞到GPU。在任一情況下,存儲器空間可以是存儲器的連續(xù)部分,在此情況下, 僅單個地址一一基地址需要為巳知的或被提供到GPU?;蛘?,存儲器空間可以是完全不 同的或非連續(xù)的,且可能需要多個地址為已知的或被提供到GPU。通常,例如存儲器區(qū) 塊大小或范圍信息的其它信息也傳遞到GPU或?yàn)镚PU所知。并且,在本發(fā)明各個實(shí)施例中,可由系統(tǒng)的操作系統(tǒng)在加電時分配系統(tǒng)存儲器中的 空間,且GPU可在稍后的時間作出對于更多存儲器的請求。在此實(shí)例中,系統(tǒng)BIOS和 操作系統(tǒng)均可分配系統(tǒng)存儲器中的空間以供GPU使用。以下圖式展示本發(fā)明實(shí)施例的實(shí) 例,其中系統(tǒng)BIOS經(jīng)編程以在加電時為GPU分配系統(tǒng)存儲器空間。圖5是說明根據(jù)本發(fā)明實(shí)施例的存取系統(tǒng)存儲器中的顯示數(shù)據(jù)的另一方法的流程 圖。同樣,雖然本發(fā)明實(shí)施例較好地適于提供對顯示數(shù)據(jù)的存取,但各個實(shí)施例可提供 對此類型或其它類型的數(shù)據(jù)的存取。在此實(shí)例中,系統(tǒng)BIOS在加電時了解需要分配系 統(tǒng)存儲器中的空間以供GPU使用。此空間可以是連續(xù)或非連續(xù)的。并且,在此實(shí)例中, 系統(tǒng)BIOS將存儲器和地址信息傳遞到GPU上的驅(qū)動器的資源管理器或其它部分,但在 本發(fā)明的其它實(shí)施例中,GPU上的驅(qū)動器的資源管理器或其它部分可能提早知曉到所述 地址信息。明確地說,在動作510中,計算機(jī)或其它電子系統(tǒng)加電。在動作520中,系統(tǒng)BIOS 或其它適當(dāng)?shù)能浖⒐碳蛴布?例如,操作系統(tǒng))分配系統(tǒng)存儲器中的空間以供GPU 使用。如果存儲器空間是連續(xù)的,那么系統(tǒng)BIOS將基地址提供到在GPU上運(yùn)行的資源 管理器或驅(qū)動器。如果存儲器空間是非連續(xù)的,那么系統(tǒng)BIOS將提供許多基地址。每 一基地址通常伴隨有存儲器區(qū)塊大小信息,例如大小或地址范圍信息。通常,存儲器空 間是劃出的、連續(xù)的存儲器空間。此信息通常伴隨有地址范圍信息。在動作540中,存儲基地址和范圍以供在GPU上使用。在動作550中,可通過使用
虛地址作為索引而將后續(xù)虛地址轉(zhuǎn)換為實(shí)地址。舉例來說,在本發(fā)明的特定實(shí)施例中, 可通過將虛地址添加到基地址而將虛地址轉(zhuǎn)換為實(shí)地址。明確地說,當(dāng)要將虛地址轉(zhuǎn)譯為實(shí)地址時,執(zhí)行范圍檢查。當(dāng)所存儲的實(shí)基地址對 應(yīng)于虛地址零時,如果虛地址在所述范圍內(nèi),那么可通過將虛地址與實(shí)基地址相加來轉(zhuǎn) 譯虛地址。類似地,當(dāng)所存儲的實(shí)基地址對應(yīng)于虛地址"X"時,如果虛地址在所述范圍 內(nèi),那么可通過將虛地址與實(shí)基地址相加并減去"X"來轉(zhuǎn)譯虛地址。如果虛地址不在所 述范圍內(nèi),那么可如上所述使用圖形TLB或頁表?xiàng)l目來轉(zhuǎn)譯地址。圖6說明根據(jù)本發(fā)明實(shí)施例在存取顯示數(shù)據(jù)的方法期間計算機(jī)系統(tǒng)中命令和數(shù)據(jù)的 傳遞。在加電時,系統(tǒng)BIOS分配系統(tǒng)存儲器624中的空間——"劃出區(qū)"622,以供GPU 630使用。GPU接收并存儲系統(tǒng)存儲器620中所分配的空間或劃出區(qū)622的基地址(或多個基 地址)。此數(shù)據(jù)可存儲在圖形TLB 632中,或其可存儲在GPU 630上的其它地方,例如 存儲在硬件寄存器中。此地址連同劃出區(qū)622的范圍一起存儲在(例如)硬件寄存器中。當(dāng)將從系統(tǒng)存儲器620中的幀緩沖器622讀取數(shù)據(jù)時,可通過將虛地址視為索引而 將由GPU 630使用的虛地址轉(zhuǎn)化成由系統(tǒng)存儲器使用的實(shí)地址。同樣,在本發(fā)明特定實(shí) 施例中,通過將虛地址添加到基地址而將劃出地址范圍中的虛地址轉(zhuǎn)譯為實(shí)地址。也就 是說,如果基地址對應(yīng)于虛地址零,那么可通過如上所述將虛地址添加到基地址而將虛 地址轉(zhuǎn)化為實(shí)地址。同樣,可如上所述使用圖形TLB和頁表來轉(zhuǎn)譯范圍外的虛地址。圖7是符合本發(fā)明實(shí)施例的圖形處理單元的方框圖。圖形處理單元700的此方框圖 包含PCIE接口710、圖形管線720、圖形TLB 730,和邏輯電路740。 PCIE接口710經(jīng) 由PCIE總線750傳輸和接收數(shù)據(jù)。同樣,在本發(fā)明其它實(shí)施例中,可使用當(dāng)前己開發(fā)或 正開發(fā)的其它類型的總線,以及將來將開發(fā)的那些總線。圖形處理單元通常形成于集成 電路上,但在一些實(shí)施例中, 一個以上集成電路可包括GPU700。圖形管線720從PCIE接口接收數(shù)據(jù),并渲染數(shù)據(jù)以便在監(jiān)視器或其它裝置上顯示。 圖形TLB 730存儲用于將由圖形管線720使用的虛存儲器地址轉(zhuǎn)譯成由系統(tǒng)存儲器使用 的實(shí)存儲器地址的頁表?xiàng)l目。邏輯電路740控制圖形TLB 730,檢査對存儲在圖形TLB 730處的數(shù)據(jù)的鎖定或其它限制,并從高速緩沖存儲器讀取數(shù)據(jù)和將數(shù)據(jù)寫入到高速緩 沖存儲器。圖8是說明根據(jù)本發(fā)明實(shí)施例的圖形卡的圖。圖形卡800包含圖形處理單元810、 總線連接器820,和到達(dá)第二圖形卡的連接器830。總線連接器828可以是經(jīng)設(shè)計以配合PC正槽的PCIE連接器,例如計算機(jī)系統(tǒng)的母板上的槽上PC正。到達(dá)第二卡的連接器830 可經(jīng)配置以配合到達(dá)一個或一個以上其它圖形卡的跨接線或其它連接。可包含例如電源 調(diào)節(jié)器和電容器的其它裝置。應(yīng)注意,此圖形卡上不包含存儲器裝置。已出于說明和描述的目的呈現(xiàn)了對本發(fā)明示范性實(shí)施例的以上描述。不希望其為詳 盡的或?qū)⒈景l(fā)明限于所描述的精確形式,且鑒于以上教示,可能作出許多修改和變化。 選擇并描述所述實(shí)施例是為了最佳地闡釋本發(fā)明的原理及其實(shí)踐應(yīng)用,借此使所屬領(lǐng)域 的其他技術(shù)人員能夠最佳地將本發(fā)明用于各種實(shí)施例中,并作出適于所預(yù)期的特定用途 的各種修改。
權(quán)利要求
1.一種使用圖形處理器來檢索數(shù)據(jù)的方法,其包括請求存取系統(tǒng)存儲器中的存儲器位置;接收所述系統(tǒng)存儲器中存儲器位置的至少一個區(qū)塊的地址信息,所述地址信息包含識別至少一個實(shí)存儲器地址的信息;以及將對應(yīng)于所述實(shí)存儲器地址的頁表?xiàng)l目存儲在高速緩沖存儲器中;其中接收所述地址信息,且在不等待高速緩沖存儲器未中的情況下將所述頁表?xiàng)l目存儲在所述高速緩沖存儲器中。
2. 根據(jù)權(quán)利要求l所述的方法,其進(jìn)一步包括將所述頁表?xiàng)l目存儲在所述系統(tǒng)存儲 器中。
3. 根據(jù)權(quán)利要求2所述的方法,其進(jìn)一步包括鎖定所述高速緩沖存儲器中存儲有所 述頁表?xiàng)l目的位置。
4. 根據(jù)權(quán)利要求3所述的方法,其中所述圖形處理器是圖形處理單元。
5. 根據(jù)權(quán)利要求3所述的方法,其中將所述圖形處理器包含在集成圖形處理器上。
6. 根據(jù)權(quán)利要求3所述的方法,其中向操作系統(tǒng)作出所述存取系統(tǒng)存儲器中的存儲器 位置的請求。
7. 根據(jù)權(quán)利要求3所述的方法,其中所述識別至少一個實(shí)存儲器地址的信息包括基地 址和存儲器區(qū)塊大小。
8. —種圖形處理器,其包括數(shù)據(jù)接口,其用于提供存取系統(tǒng)存儲器中的存儲器位置的請求并用于接收關(guān)于所 述系統(tǒng)存儲器中的存儲器位置的地址信息,所述地址信息包含識別至少一個實(shí)存儲 器地址的信息;高速緩沖存儲器控制器,其用于寫入對應(yīng)于所述實(shí)存儲器地址的頁表?xiàng)l目;以及 高速緩沖存儲器,其用于存儲所述頁表?xiàng)l目,其中接收所述地址信息,且在不等待發(fā)生高速緩沖存儲器未中的情況下將所述頁 表?xiàng)l目存儲在所述高速緩沖存儲器中。
9. 根據(jù)權(quán)利要求8所述的圖形處理器, 在所述系統(tǒng)存儲器中的請求。
10. 根據(jù)權(quán)利要求8所述的圖形處理器, 統(tǒng)存儲器中的存儲器位置的請求。
11. 根據(jù)權(quán)利要求8所述的圖形處理器, 述頁表?xiàng)l目的位置。
12. 根據(jù)權(quán)利要求8所述的圖形處理器, 有虛地址和實(shí)地址的位置。
13. 根據(jù)權(quán)利要求8所述的圖形處理器,
14. 根據(jù)權(quán)利要求8所述的圖形處理器,
15. 根據(jù)權(quán)利要求8所述的圖形處理器, 上。其中所述數(shù)據(jù)接口還提供將所述頁表?xiàng)l目存儲其中所述數(shù)據(jù)接口提供在系統(tǒng)加電之后存取系其中所述高速緩沖存儲器控制器鎖定存儲有所其中所述高速緩沖存儲器控制器限制存取存儲其中所述數(shù)據(jù)接口電路是PC正接口電路。其中所述圖形處理器是圖形處理單元。其中所述圖形處理器被包含在集成圖形處理器
16. —種使用圖形處理器來檢索數(shù)據(jù)的方法,其包括-接收系統(tǒng)存儲器中的存儲器區(qū)塊的基地址和范圍;存儲所述基地址和范圍;接收第一地址;確定所述第一地址是否在所述范圍內(nèi),且如果是,通過將所述基地址添加到所述第一地址而將所述第一地址轉(zhuǎn)譯成第二地址,否則 從高速緩沖存儲器讀取頁表?xiàng)l目;以及 使用所述頁表?xiàng)l目將所述第一地址轉(zhuǎn)譯成第二地址。
17. 根據(jù)權(quán)利要求16所述的方法,其進(jìn)一步包括在從所述高速緩沖存儲器讀取頁表 條目之前,在不等待高速緩沖存儲器未中的情況下將所述頁表?xiàng)l目存儲在所述高速 緩沖存儲器中。
18. 根據(jù)權(quán)利要求16所述的方法,其進(jìn)一步包括在從所述高速緩沖存儲器讀取頁表 條目之前,確定所述頁表是否存儲在所述高速緩沖存儲器中,且如果不是,那么從 所述系統(tǒng)存儲器讀取所述頁表?xiàng)l目。
19. 根據(jù)權(quán)利要求16所述的方法,其中所述圖形處理器是圖形處理單元。
20. 根據(jù)權(quán)利要求16所述的方法,其中將所述圖形處理器包含在集成圖形處理器上。
全文摘要
本發(fā)明提供減少或消除用于檢索地址轉(zhuǎn)譯信息的系統(tǒng)存儲器存取的電路、方法和設(shè)備。在一個實(shí)例中,通過用條目預(yù)填充圖形TLB來減少或消除這些存取,所述條目用于將由GPU使用的虛地址轉(zhuǎn)譯成由系統(tǒng)存儲器使用的實(shí)地址。通過鎖定或限制所述圖形TLB中顯示存取所需的條目來維持轉(zhuǎn)譯信息。這可通過將存取限制在所述圖形TLB中的某些位置,通過將旗標(biāo)或其它識別信息存儲在所述圖形TLB中,或通過其它適當(dāng)?shù)姆椒▉硗瓿?。在另一?shí)例中,系統(tǒng)BIOS為GPU分配存儲器空間,所述存儲器空間存儲基地址和地址范圍。通過將所述地址范圍中的虛地址添加到所述基地址來轉(zhuǎn)譯所述虛地址。
文檔編號G06F12/10GK101118646SQ20071013764
公開日2008年2月6日 申請日期2007年7月27日 優(yōu)先權(quán)日2006年7月31日
發(fā)明者丹尼斯·K·馬, 凱文·J·克蘭楚施, 凱曼·吳, 加里·D·洛倫森, 彼得·C·童, 斯特凡·A·戈特沙爾克, 桑尼·S·楊, 科林恩·S·凱斯, 阿希什·K·考爾 申請人:輝達(dá)公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
自治县| 石林| 贵定县| 聂拉木县| 天津市| 左云县| 望谟县| 巴彦县| 砚山县| 迭部县| 张家口市| 白水县| 永丰县| 福建省| 集安市| 密云县| 大理市| 兴义市| 龙泉市| 隆林| 宝丰县| 唐海县| 东莞市| 扎鲁特旗| 华宁县| 山东省| 黑龙江省| 星座| 昌平区| 自治县| 鹤峰县| 许昌县| 邓州市| 高雄市| 垦利县| 内黄县| 济南市| 江源县| 托克逊县| 洪湖市| 德保县|