亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

減少存儲庫碰撞的方法及處理圖形的計(jì)算機(jī)系統(tǒng)的制作方法

文檔序號:6610422閱讀:195來源:國知局

專利名稱::減少存儲庫碰撞的方法及處理圖形的計(jì)算機(jī)系統(tǒng)的制作方法
技術(shù)領(lǐng)域
:本發(fā)明是關(guān)于圖形處理,且特別是關(guān)于用于圖形數(shù)據(jù)管理的系統(tǒng)以及方法。
背景技術(shù)
:如已知的先前技術(shù),計(jì)算機(jī)圖形處理系統(tǒng)需處理大量數(shù)據(jù),其中包括紋理(texture)數(shù)據(jù)。紋理為具有一(u,v)坐標(biāo)空間的數(shù)字影像(通常為矩形的)。紋理的最小可定址單元為紋理元素(texel),根據(jù)其位置而被指派一特定(u,v)坐標(biāo)。在紋理映射(mapping)運(yùn)算中,紋理被映射至圖解模型的表面來呈現(xiàn)模型以建立目的影像。在目的影像中,紋理元素位于(x,y)坐標(biāo)系統(tǒng)中的特定坐標(biāo)處。紋理映射的目的為在物件的表面上提供實(shí)際外觀。紋理數(shù)據(jù)通常內(nèi)存在系統(tǒng)存儲器中,系統(tǒng)存儲器為共用資源。在許多計(jì)算機(jī)系統(tǒng)中,其他元件可能嘗試存取由圖形處理系統(tǒng)使用的數(shù)據(jù)或利用共用的系統(tǒng)總線,此兩種情形可能會導(dǎo)致圖形處理系統(tǒng)的數(shù)據(jù)存取時(shí)間增加。此外,請求來自系統(tǒng)存儲器的數(shù)據(jù)由于其他原因可能會用去過量的時(shí)間。因此,存取系統(tǒng)存儲器可能會對圖形處理系統(tǒng)具有效能抑制效應(yīng)。在現(xiàn)代計(jì)算機(jī)圖形中,紋理處理可包括許多不同類型的紋理映射4支術(shù),包4舌立方映射(cubicmapping)、mip映射(mipmapping),以及各向異性(anisotropic)映射。由于執(zhí)4亍紋理處理所需的算術(shù)以及邏輯運(yùn)算十分復(fù)雜以及大量,使得除了用于其他圖形處理運(yùn)算的電路之外,紋理處理專用電路的使用成為必要。因此,此等紋理處理專用電路可包括顯著百分比的構(gòu)成圖形處理單元的硬件門(gate)。紋理映射在計(jì)算與存儲器存取上需付出昂貴的代價(jià)。改良數(shù)據(jù)可存取性的一種技術(shù)為經(jīng)由專用于儲存紋理數(shù)據(jù)的紋理快取存儲器,在數(shù)據(jù)需要進(jìn)行紋理處理之前,將紋理數(shù)據(jù)自系統(tǒng)存儲器提供給紋理快取存儲器,借此提供圖形系統(tǒng)所需的紋理數(shù)據(jù),且減少對存取系統(tǒng)存儲器的需要。此方式又可減少與存儲器延遲(latency)相關(guān)的問題。然而,由于可能偶爾出現(xiàn)存儲庫石並撞(bankcollision)或快耳又存儲器猛移(cachethrashing),即使使用紋理快取存儲器,存儲器延遲仍繼續(xù)成為問題。因此,產(chǎn)業(yè)中存在對紋理像磚(tile)數(shù)據(jù)于快取存儲器儲存中改良的需要。
發(fā)明內(nèi)容本發(fā)明提供用于儲存圖形數(shù)據(jù)的系統(tǒng)以及方法。一實(shí)施例包括用于減少2級(L2)快取存儲器內(nèi)的存儲庫碰撞的方法,其包含自用以儲存圖形處理單元內(nèi)執(zhí)行紋理過濾所需的紋理數(shù)據(jù)之外部存儲器讀取紋理數(shù)據(jù);將紋理數(shù)據(jù)分為存儲庫;對存儲庫執(zhí)行存儲庫攪和操作(bankswizzleoperation);以及將數(shù)據(jù)的存儲庫寫入至L2快取存儲器。另一實(shí)施例包括用于處理圖形數(shù)據(jù)的計(jì)算機(jī)系統(tǒng),此計(jì)算機(jī)系統(tǒng)包含外部存儲器,用以儲存用于圖形處理單元內(nèi)的紋理過濾的紋理數(shù)據(jù);存儲庫攪和模塊,用以自外部存儲器接收紋理數(shù)據(jù),將紋理數(shù)據(jù)分為存儲庫,且對紋理數(shù)據(jù)的存儲庫執(zhí)行存儲庫攪和操作;以及2級(L2)快取存儲器,其耦接至存儲庫攪和模塊,其中L2快取存儲器可用以儲存經(jīng)攪和過的紋理數(shù)據(jù)。又一實(shí)施例包括用于減少L2快取存儲器內(nèi)的存儲庫碰撞的方法,方法包含自L2快取存儲器提取紋理數(shù)據(jù),此紋理數(shù)據(jù)用于圖形處理單元內(nèi)的紋理過濾;確認(rèn)在提取紋理數(shù)據(jù)時(shí)是否已出現(xiàn)存儲庫碰撞,其中紋理數(shù)據(jù)被分為位于L2快取存儲器內(nèi)的至少一快取線中的多個(gè)存儲庫;以及在會出現(xiàn)存儲庫碰撞時(shí)對存儲庫執(zhí)行存儲庫攪和操作;其中所述紋理數(shù)據(jù)在逐存儲庫的基礎(chǔ)上被分為多個(gè)存儲庫。本發(fā)明所述的減少存儲庫碰撞的方法及處理圖形的計(jì)算機(jī)系統(tǒng),可用于有效地管理并組織紋理數(shù)據(jù),以爿使紋理過濾器處理時(shí)所需的任何紋理數(shù)據(jù)在圖形處理系統(tǒng)中可易于擷取。圖1為圖形處理器系統(tǒng)的實(shí)施例的方塊圖。圖2說明圖形處理系統(tǒng)內(nèi)的紋理快取系統(tǒng)的部分基本組件。圖3為例L2快取存儲器組織格式的方塊圖。圖4繪示經(jīng)由存儲庫攪和模塊自外部存儲器轉(zhuǎn)送紋理數(shù)據(jù)至L2快取存儲器的實(shí)施例。圖5為存儲庫攪和操作的實(shí)施例。圖6為具有32BPE的解析度的紋理數(shù)據(jù)的4x8占據(jù)面積。圖7為存儲庫攪和操作之后鄰近快取線中同樣編號存儲庫之間的距離。圖8為存儲庫攪和操作之前以及之后占據(jù)面積的大小。圖9繪示用于執(zhí)行存儲庫攪和操作以減少存儲庫碰撞的方法的實(shí)施例流程圖。圖IO繪示用于執(zhí)行存儲庫攪和操作以減少存儲庫碰撞的方法的另一實(shí)施例的流程圖。具體實(shí)施例方式在檢查以下圖式以及實(shí)施方式時(shí),本發(fā)明的其他系統(tǒng)、方法、特征以及益處將對于本領(lǐng)域技術(shù)人員為顯而易見的或變得顯而易見。所有此等額外系統(tǒng)、方法、特征以及益處是打算被包括在此描述內(nèi),在本發(fā)明的范疇內(nèi),且通過隨附權(quán)利要求書加以j呆護(hù)。在概括了本發(fā)明的各種觀點(diǎn)之后,現(xiàn)將詳細(xì)參看如圖式中所說明的本發(fā)明的描述。雖然將結(jié)合此等圖式來描述本發(fā)明,但是不意欲將本發(fā)明限制于本文所揭露的一或多個(gè)實(shí)施例。而是意欲涵蓋包括在如通過隨附權(quán)利要求書界定的本發(fā)明的精神以及范疇內(nèi)的所有替代、修改以及均等物。本發(fā)明所揭露的系統(tǒng)以及方法可用于有效地管理并組織紋理數(shù)據(jù),以使(例如)紋理過濾器處理時(shí)所需的任何紋理數(shù)據(jù)在圖形處理系統(tǒng)中可易于擷取。通常,自系統(tǒng)存儲器接收眾多不同格式以及大小的紋理數(shù)據(jù),若未考慮此數(shù)據(jù)的大小或組成方式可能會導(dǎo)致紋理快取存儲器資源的使用上較無效率。此種無效率的導(dǎo)因之一為在擷取紋理數(shù)據(jù)時(shí)存在過多延遲??衫斫獾?,擷取紋理像磚數(shù)據(jù)(texturetilingdata)的延遲導(dǎo)致在處理此數(shù)據(jù)中的延遲。在某些情況下,此延遲可能通過出現(xiàn)在快取存儲器內(nèi)的存儲庫相互碰撞而引起。當(dāng)試圖自具有相同索引且儲存在不同快取線中的存儲庫擷取數(shù)據(jù)時(shí),則出現(xiàn)存儲庫碰撞。給定紋理數(shù)據(jù)的定域性(localizednature),緊接地儲存在一起的存儲庫將更可能在存儲器存取期間一起受到提取。在作圖形處理時(shí),紋理數(shù)據(jù)不必要一次一快取線地?cái)X取,而是在逐存儲庫的基礎(chǔ)上擷取。因此,在存儲器存取期間可自任何給定快取線擷取存儲庫的任何組合。舉例而言,在存儲器存取期間,可一起提取(快取線l,存儲庫0)、(快取線2,存儲庫l)等。然而,若試圖同時(shí)擷取(快取線l,存儲庫0)以及(快取線2,存儲庫0),則出現(xiàn)存儲庫碰撞,因此具有相同索引的兩個(gè)存儲庫必須獨(dú)立地加以擷取,導(dǎo)致至少一周期的延遲。因此,由于存儲庫碰撞的故,需要額外周期來擷取存儲庫。用于執(zhí)行存儲庫攪和(swizzle)#:作的系統(tǒng)以及方法的實(shí)施例可通過增離來減少存儲庫碰撞的可能性。簡要參看圖6以及圖7,其說明具有相同索引數(shù)字且位于鄰近快取線中的存儲庫之間的距離。如圖6中所揭示,(快取線O,存儲庫0)以及(快取線l,存儲庫0)是以距離A隔開,其中通過紋理元素來量測距離。對快取線1執(zhí)行存儲庫攪和操作可有效地將此等兩個(gè)存儲庫之間的距離增加至新距離A,如圖7中所示。因此,本發(fā)明揭露一種系統(tǒng)以及方法可用于對紋理數(shù)據(jù)執(zhí)行存儲庫攪和操作以便減少存儲庫碰撞的可能性,借此導(dǎo)致在計(jì)算機(jī)圖形環(huán)境中提取數(shù)據(jù)耗費(fèi)較少時(shí)脈周期?,F(xiàn)參看圖l,其為計(jì)算機(jī)系統(tǒng)100的簡化方塊圖。計(jì)算機(jī)系統(tǒng)100包括CPU102、系統(tǒng)存儲器104以及圖形處理系統(tǒng)110。CPU102執(zhí)行各種功能,包括確定產(chǎn)生圖形顯示所需的信息(諸如,觀察點(diǎn)位置)。系統(tǒng)存儲器104儲存各種數(shù)據(jù),包括諸如紋理數(shù)據(jù)106的圖形顯示數(shù)據(jù)。根據(jù)CPU102所確定的信息以及儲存在系統(tǒng)存儲器104中的數(shù)據(jù),圖形處理系統(tǒng)110產(chǎn)生用于顯示元件130(諸如,監(jiān)視器)的顯示數(shù)據(jù)。紋理映射用于將紋理施加至物件,圖形處理系統(tǒng)110再現(xiàn)3D物件的紋理片,紋理片實(shí)質(zhì)上經(jīng)"堆迭"起來以形成物件。一旦建立了3D紋理,便將紋理施加給物件以形成影像,借此物件變得紋理化。CPU102經(jīng)由系統(tǒng)接口108向圖形處理系統(tǒng)110提供請求,包括對處理并顯示圖形信息的請求。來自CPU102的圖形請求通過圖形處理系統(tǒng)110接收,且提供給前端處理器112。前端處理器112產(chǎn)生含有像素坐標(biāo)的像素流。前端處理器112所產(chǎn)生的像素坐標(biāo)的相關(guān)信息經(jīng)由紋理快取系統(tǒng)114提供至紋理過濾器118。紋理快取系統(tǒng)114自前端處理器112接收信息且組織紋理數(shù)據(jù),從而將數(shù)據(jù)儲存在快取存儲器中。紋理過濾器118隨后通過執(zhí)行(例如)雙線性過濾、三線性過濾或其組合來過濾信息,且產(chǎn)生每一像素的紋理數(shù)據(jù)。除已知紋理過濾器組件(諸如線性內(nèi)插器以及累加器)之外,紋理過濾器118亦包括可編程表過濾器(tablefilter)以用于結(jié)合其他紋理過濾器組件來提供特定過濾操作。紋理數(shù)據(jù)106為發(fā)送至幀緩沖器120的最終色彩數(shù)據(jù)的分量,其用于在顯示元件130上產(chǎn)生顯示。紋理快取系統(tǒng)114可包括多個(gè)快取存儲器,包括(例如)1級(Ll)快取存儲器以及2級(L2)快取存儲器。紋理信息是以個(gè)別的紋理元素而儲存,紋理元素在圖形處理期間用于界定以像素坐標(biāo)顯示的色彩數(shù)據(jù)。紋理數(shù)據(jù)106自系統(tǒng)存儲器104流至紋理快取系統(tǒng)114,且隨后流至紋理過濾器118?,F(xiàn)參看圖2,其說明圖形處理系統(tǒng)內(nèi)的紋理快取系統(tǒng)的某些基本組件。應(yīng)注意出于簡要的目的,省略了對于(由本領(lǐng)域技術(shù)人員)理解紋理數(shù)據(jù)管理單元非必要的某些組件。圖形處理系統(tǒng)110包括接收紋理數(shù)據(jù)106的紋理快取系統(tǒng)114。數(shù)據(jù)在經(jīng)轉(zhuǎn)發(fā)至快取存儲器以用于儲存之前受到處理。對于某些實(shí)施例,紋理快取系統(tǒng)114包括存儲庫攪和模塊210以及L2快取存儲器220。存儲庫攪和模塊210獲取自外部存儲器接收的紋理數(shù)據(jù)106,且在將紋理數(shù)據(jù)106轉(zhuǎn)發(fā)至L2快取存儲器220以作儲存之前對數(shù)據(jù)執(zhí)行存儲庫攪和操作。通常,存儲庫攪和操作是指重的紋理數(shù)據(jù)可同時(shí)得以擷取,而不用等到下一周期。L2快取存儲器220耦接至存儲庫攪和模塊210,且在存儲庫攪和模塊210已處理自外部存儲器接收的數(shù)據(jù)后儲存紋理數(shù)據(jù)106以用于未來擷取。參看圖3,其為一實(shí)施例的L2快取存儲器組織格式的方塊圖。如以上所論述的,紋理快取系統(tǒng)114可包括多個(gè)快取存儲器,包括(例如)L1快取存儲器以及L2快取存儲器,L2快取存儲器310可包括多個(gè)快取線320。每一條快取線320可進(jìn)一步分為奇數(shù)區(qū)塊330以及偶數(shù)區(qū)塊340,偶數(shù)區(qū)塊340用于處理來自偶數(shù)管線的紋理數(shù)據(jù),而奇數(shù)區(qū)塊330用于處理來自奇數(shù)管線的紋理數(shù)據(jù)。在區(qū)塊330、340的每一個(gè)內(nèi),可將L2快取存儲器進(jìn)一步分為數(shù)據(jù)的存儲庫350。盡管所揭示每一區(qū)塊包括八個(gè)存儲庫(存儲庫0至存儲庫7),但本領(lǐng)域技術(shù)人員應(yīng)了解快取存儲器可分為不同數(shù)目的存儲庫。通常,存儲庫為紋理數(shù)據(jù)得以提取的手段之一。應(yīng)注意L2快取存儲器310可含有多個(gè)L2快取線320,包括(例如)64個(gè)、128個(gè)、256個(gè),或512個(gè)快取線。此外,每一L2快取線320可具有變化的寬度,包括(例如)128個(gè)、256個(gè)、512個(gè)、1024個(gè)或2048個(gè)位的寬度?,F(xiàn)參看圖4,其繪示經(jīng)由存儲庫攪和模塊自外部存儲器轉(zhuǎn)送紋理數(shù)據(jù)至L2快取存儲器的一實(shí)施例。儲存在外部存儲器410中的紋理數(shù)據(jù)412在其最終儲存在L2快取存儲器418中以用于未來擷取之前,會先轉(zhuǎn)發(fā)至存儲庫攪和模塊414。存儲庫攪和模塊414在逐存儲庫的基礎(chǔ)上處理并重組自外部存儲器410接收的紋理數(shù)據(jù)412,且將數(shù)據(jù)轉(zhuǎn)發(fā)至L2快取存儲器418。如圖4中所展示,L2快取存儲器418可經(jīng)再分為多個(gè)快取線416,快取線416可進(jìn)一步再分為多個(gè)存儲庫420。對于某些實(shí)施例,每一快取線416的大小為1024位,或lKb。此外,每一快取線416可進(jìn)一步再各自分為大小為128位的八個(gè)存儲庫420。在準(zhǔn)備儲存在快取存儲器418中時(shí),存儲庫攪和模塊414將自外部存儲器410接收的紋理數(shù)據(jù)412組織為獨(dú)立的存儲庫以及快取線。一旦執(zhí)行了存儲庫攪和操作,便將紋理數(shù)據(jù)412轉(zhuǎn)發(fā)至L2快取存儲器418以用于儲存?,F(xiàn)參看圖5,其說明存儲庫攪和操作的一實(shí)施例。在進(jìn)行存儲庫攪和操作之前,將自外部存儲器接收的紋理數(shù)據(jù)分為快取線(例如,快取線O、快取線l),再將每一快取線進(jìn)一步分為個(gè)別存儲庫510。對于所示的實(shí)施例而言,每一快取線包含八個(gè)存儲庫510(存儲庫0至存儲庫7)。應(yīng)注意通??梢愿鞣N方法來擷取紋理數(shù)據(jù),包括在逐存儲庫的基礎(chǔ)上。對于在逐存儲庫的基礎(chǔ)上擷取紋理數(shù)據(jù)的實(shí)施例而言,可在存儲器存取期間擷取任何給定快取線內(nèi)的任何存儲庫。于一實(shí)施例中,存儲器存取可試圖提取以下存儲庫(快取線O,存儲庫O)、(快取線O,存儲庫2)、(快取線l,存儲庫7)以及(快取線l,存儲庫O)。對于此實(shí)例,因?yàn)樵噲D存取具有相同索引的兩個(gè)存儲庫((快取線O,存儲庫O)以及(快取線l,存儲庫O)),所以出現(xiàn)存儲庫碰撞。結(jié)果,在此周期期間僅能擷取兩個(gè)存儲庫中的一個(gè),因而需要額外周期來擷取剩余存儲庫。通常,因?yàn)榧y理數(shù)據(jù)本質(zhì)上傾向于定域的,所以很可能會出現(xiàn)存儲庫碰撞,紋理數(shù)據(jù)很可能儲存在彼此鄰近儲存的存儲庫中。圖5中揭示存儲庫攪和操作的一實(shí)施例,其增加了同樣編號存儲庫之間的距離,以便減少存儲庫碰撞的可能性。對于某些實(shí)施例,可在L2快取存儲器230內(nèi)執(zhí)行存儲庫攪和操作。應(yīng)注意因?yàn)樵谕獠看鎯ζ髦袑?shí)施攪和操作可能會由于外部存儲器為共用資源而需要改變關(guān)于存儲器存取的所有模塊,所以存儲庫攪和操作最好在L2快取存儲器230內(nèi)執(zhí)行而不在外部存儲器中執(zhí)行,否則將最終增加硬件的整體復(fù)雜性。在執(zhí)行存儲庫攪和操作時(shí)可遵循各種映射機(jī)制或攪和模式。對于某些實(shí)施例而言,存儲庫攪和操作可通過根據(jù)所使用的映射機(jī)制重新路由(route)L2快取存儲器230內(nèi)的特定存儲器位置(亦即,存儲庫)的指定紋理數(shù)據(jù)。對于某些實(shí)施例,利用以下映射機(jī)制或存儲庫攪和模式存儲庫0"存儲庫4存儲庫1^存儲庫5存儲庫2一存儲庫6存儲庫3^存儲庫7亦即,將待儲存在L2快取存儲器230內(nèi)的存儲庫0與存儲庫4中的數(shù)據(jù)重新映射且調(diào)換,以及將存儲庫l中的數(shù)據(jù)與存儲庫5中的數(shù)據(jù)調(diào)換等。以上攪和模式在圖5中加以說明。應(yīng)注意對于各種實(shí)施例而言,每隔一快取線即需執(zhí)行存儲庫攪和操作以便達(dá)成具有相同索引數(shù)字的存儲庫之間的最大距離。通常,利用存儲庫攪和操作可用以達(dá)成u方向與v方向上的最佳距離。詳言之,重點(diǎn)在于兩個(gè)方向(u,v)上的距離在執(zhí)行存儲庫攪和操作之后為相等量值。參看圖6,其說明具有32BPE解析度的紋理數(shù)據(jù)的4x8占據(jù)面積(footprint)。每一存儲庫內(nèi)的像素的數(shù)目為128位/32BPE,或每存儲庫4紋理元素。如圖6中所見,將鄰近快取線(例如,快取線0以及快取線1)中同樣編號存儲庫(例如,存儲庫0)之間的距離指定為距離A且等于4像素。一旦執(zhí)行存儲庫攪和操作,存儲庫之間的距離便增加,借此減少由于紋理數(shù)據(jù)的定域性而發(fā)生存儲庫碰撞的可能性。現(xiàn)參看圖7,其說明存儲庫攪和操作之后鄰近快取線中的同樣編號存儲庫之間的距離上的增加。為說明的目的,僅存儲庫0以及存儲庫4得以重新映射。一旦執(zhí)行存儲庫攪和操作,存儲庫之間的距離便增加至新距離A?,F(xiàn)通過以下表達(dá)式來簡單地計(jì)算新距離A的值新距離^=#2+,」="57因此,位于鄰近快取線中具有相同索引的存儲庫之間的距離為相隔5.657像素。簡要參看圖8,其說明存儲庫攪和操作之前以及之后占據(jù)面積的大小。占據(jù)面積810反映^爭越四個(gè)快取線的具有32BPE解析度的紋理數(shù)據(jù)的8x4占據(jù)面積。為了解兩個(gè)存儲庫之間的距離上的增加,在此僅4全查兩個(gè)快取線。占據(jù)面積820顯示來自占據(jù)面積810的兩個(gè)快取線。因此,占據(jù)面積820的大小為4x4存儲庫。同樣編號存儲庫之間的距離為4像素(距離A),產(chǎn)生16像素2的面積。占據(jù)面積830反映經(jīng)由存儲庫攪和操作所達(dá)成的有效占據(jù)面積。占據(jù)面積830的面積為(新距離A)2,或5.6572。因此,歸因于存儲庫攪和操作的面積上的百分比增力口為([新距離々2—O一jC如以上所見,歸因于存儲庫攪和操作的面積上的有效增加為原始面積的百分之百。參看圖9,其繪示用于執(zhí)行存儲庫攪和操作以減少存儲庫碰撞的方法的一實(shí)施例的流程圖。在以下步驟中,可透過執(zhí)行存儲庫攪和操作以增加鄰近快取線中的同樣編號存儲庫之間的距離,以便減少圖形處理單元的L2快取存儲器內(nèi)的存儲庫碰撞的可能性。方法開始于步驟910,自外部存儲器接收紋理數(shù)據(jù)。接著在步驟920中,將紋理數(shù)據(jù)分為多個(gè)存儲庫以準(zhǔn)備儲存在快取存儲器中。隨后,通常將存儲庫轉(zhuǎn)發(fā)至L2快取存儲器以用于儲存。然而,在步驟930中,首先對自外部存儲器所擷取的紋理數(shù)據(jù)執(zhí)行存儲庫攪和操作,再將紋理數(shù)據(jù)于轉(zhuǎn)發(fā)至L2快取存儲器以作儲存之前,在逐存儲庫的基礎(chǔ)上執(zhí)行存儲庫攪和。在步驟940中,將經(jīng)重新映射的紋理數(shù)據(jù)寫入至L2快取存儲器內(nèi)的適當(dāng)存儲庫。于一實(shí)施例中,返回參看圖5。(存儲庫O,快取線l)中所含有的紋理數(shù)據(jù)得以重新映射且現(xiàn)被寫入至L2快取存儲器內(nèi)的(快取線l,存儲庫4)。同樣,(快取線l,存儲庫l)中所含有的紋理數(shù)據(jù)得以重新映射且現(xiàn)被寫入至L2快取區(qū)內(nèi)的(存儲庫5,線l)。應(yīng)強(qiáng)調(diào)對交替快取線執(zhí)行步驟930中的存儲庫攪和操作,以便加大鄰近快取線中同樣編號存儲庫之間的距離。重復(fù)步驟930至940直至所有紋理數(shù)據(jù)得以處理并重新映射為止(判定步驟950)?,F(xiàn)參看圖10,其繪示用于執(zhí)行存儲庫攪和操作以減少存儲庫碰撞的方法的替代實(shí)施例的流程圖。對于此實(shí)施例而言,當(dāng)在提取操作期間出現(xiàn)存儲庫碰撞時(shí),可進(jìn)行存儲庫攪和操作。自外部存儲器接收紋理數(shù)據(jù)且隨后在轉(zhuǎn)發(fā)至L2快取存儲器之前將其分為存儲庫。隨后,當(dāng)需要紋理數(shù)據(jù)時(shí),自L2快取存儲器提取數(shù)據(jù)(步驟1030)。若偵測到存儲庫碰撞(判定步驟1040中的"是"條件),則對涉及存儲庫碰撞的存儲庫執(zhí)行存儲庫攪和操作,以將涉及碰撞的存儲庫中的至少一個(gè)重新映射至另一存儲庫(步驟1050)。于一實(shí)施例中,假定在給定周期期間自L2快取存儲器擷取紋理數(shù)據(jù)的以下存儲庫(快取線O,存儲庫O)、(快取線O,存儲庫7)、(快取線1,存儲庫5),以及(快取線l,存儲庫O)。由于此擷取試圖同時(shí)自快取線0與快取線1擷取存儲庫0,所以出現(xiàn)存儲庫碰撞。因此,在當(dāng)前周期期間僅能擷取存儲庫中的一個(gè),且需要額外周期來擷取涉及碰撞的第二存儲庫。因?yàn)橐殉霈F(xiàn)存儲庫碰撞(判定步驟1040中的"是"條件),所以需對存儲庫O執(zhí)行存儲庫攪和操作,以便減少另一存儲庫碰撞出現(xiàn)的可能性。根據(jù)先前所論述的存儲庫攪和模式,將來自兩個(gè)快取線中的一個(gè)(快取線0或快取線1)的存儲庫0重新映射至存儲庫4。因此,當(dāng)需要相同紋理數(shù)據(jù)時(shí),因?yàn)楝F(xiàn)在擷取以下存儲庫(快取線O,存儲庫O)、(快取線O,存儲庫7)、(快取線l,存儲庫5)以及(快取線l,存儲庫4),所以避免了存儲庫碰撞。應(yīng)注意由于不存在存儲庫碰撞,故不再需要額外周期來擷取紋理數(shù)據(jù)的存儲庫。在用于執(zhí)行存儲庫攪和操作的方法的替代實(shí)施例中,可在存儲庫攪和操作之前執(zhí)行分析,借此首先檢查待提取的數(shù)據(jù)的存儲庫。通常,若偵測到存儲庫碰撞,則執(zhí)行存儲庫攪和操作。然而,在新存儲庫碰撞將由于存儲庫攪和操作而出現(xiàn)的情況下,可對先前所描述的一個(gè)實(shí)施替代存儲庫攪和模式。于一實(shí)施例中,假定在給定周期期間自L2快取存儲器擷取紋理數(shù)據(jù)的以下存儲庫(快取線O,存儲庫O)、(快取線O,存儲庫4)、(快取線l,存儲庫5)以及(快取線l,存儲庫O)。因?yàn)槌霈F(xiàn)存儲庫碰撞(快取線O、存儲庫O與快取線l,存儲庫O之間),所以通常對存儲庫中的一個(gè)(例如,存儲庫O)執(zhí)行存儲庫攪和操作,以便減少另一存儲庫碰撞出現(xiàn)的可能性。若利用先前所論述的存儲庫攪和模式,則來自兩個(gè)快取線中的一個(gè)(快取線0或快取線1)的存儲庫0經(jīng)重新映射至存儲庫4。因此,當(dāng)需要相同紋理數(shù)據(jù)時(shí),因?yàn)楝F(xiàn)在擷取以下存儲庫(快取線O,存儲庫O)、(快取線O,存儲庫4)、(快取線l,存儲庫5)以及(快取線l,存儲庫4),所以避免了存儲庫碰撞。然而,請注意新存儲庫碰撞(快取線O,存儲庫4與快取線1,存儲庫4之間)由于利用先前所描述的存儲庫攪和操作而產(chǎn)生。因此,在另一實(shí)施例中,可執(zhí)行"預(yù)攪和"分析來確定另一個(gè)新的存儲庫碰撞是否會由于存儲庫攪和操作而產(chǎn)生。若將出現(xiàn)新存儲庫碰撞,則實(shí)施另一存儲庫攪和模式以避免隨后又存儲庫碰撞。于一實(shí)施例中,可代替利用以下替代存儲庫攪和模式存儲庫0w存儲庫7存儲庫1"存儲庫6存儲庫2^存儲庫5存儲庫3^存儲庫4返回參看以上實(shí)例,存儲庫因此將經(jīng)重新映射至以下存儲庫(快取線O,存儲庫O)、(快取線O,存儲庫4)、(快取線l、存儲庫5),以及(快取線l,存儲庫3)。結(jié)果,不出現(xiàn)隨后的存儲庫碰撞。本發(fā)明的實(shí)施例可在硬件、軟件、韌體或其組合中實(shí)施。在某些實(shí)施例中,可通過儲存于存儲器中且通過適合的指令執(zhí)例中,若在硬件中實(shí)施,則可通過此項(xiàng)技術(shù)中所熟知的以下技術(shù)的任何個(gè)或組合來實(shí)施方法以及系統(tǒng)一或多個(gè)離散邏輯電路,其具有邏輯門以用于在數(shù)據(jù)信號上實(shí)施邏輯功能;專用集成電路(ASIC),其具有適當(dāng)?shù)慕M合邏輯門;一或多個(gè)可編程門陣列(PGA);現(xiàn)場可編程門陣列(FPGA)等。如熟知本發(fā)明的技術(shù)者所能了解的,流程圖中的任何處理描述或步驟應(yīng)理解為表示包括用于實(shí)施處理中的特定邏輯功能或步驟的一或多個(gè)可執(zhí)行指令的模塊、程序碼的片段或部分,且替代實(shí)施例包括在本發(fā)明的實(shí)施例的范疇內(nèi),其中可視所包含的功能性而以不同于所展示或所論述的次序執(zhí)行功能(包括實(shí)質(zhì)上同時(shí)或逆序執(zhí)行)。本文中包含用于實(shí)施邏輯功能的可執(zhí)行指令的有序列表的方法以及系統(tǒng)可在任何計(jì)算機(jī)可讀介質(zhì)中具體化,計(jì)算機(jī)可讀介質(zhì)可由指令執(zhí)行系統(tǒng)、裝置或元件使用或結(jié)合指令執(zhí)行系統(tǒng)、裝置或元件使用,本文中的系統(tǒng)諸如基于計(jì)算機(jī)的系統(tǒng)、含處理器的系統(tǒng),或可自指令執(zhí)行系統(tǒng)、裝置,或元件提取指令且執(zhí)行指令的其他系統(tǒng)。在此文獻(xiàn)的上下文中,"計(jì)算機(jī)可讀介質(zhì)"可為可含有、儲存、通信、傳播或傳送由指令執(zhí)行系統(tǒng)、裝置或元件使用或結(jié)合指令執(zhí)行系統(tǒng)、裝置或元件使用的程序的任何構(gòu)件。計(jì)算機(jī)可讀介質(zhì)可為(例如,但不限于)電子、磁性、光學(xué)、電磁、紅外或半導(dǎo)體系統(tǒng)、裝置、元件或傳播介質(zhì)。計(jì)算機(jī)可讀介質(zhì)的更特定實(shí)例(非詳盡列表)將包括以下者具有一或多個(gè)導(dǎo)線的電連接(電子式)、攜帶型計(jì)算機(jī)磁片(磁性式)、隨機(jī)存取存儲器(RAM)(電子式)、只讀存儲器(ROM)(電子式)、電可擦可編程只讀存儲器(EPROM或快閃存儲器)(電子式)、光學(xué)纖維(光學(xué)式),以及攜帶型緊密光盤只讀存儲器(CDROM)(光學(xué)式)。注意到因?yàn)槌绦蚩山?jīng)由(例如)紙或其他介質(zhì)的光學(xué)掃描而電子地俘獲,隨后經(jīng)編譯、解譯或若需要以適合的方式另外處理,且隨后儲存在計(jì)算機(jī)存儲器中,所以計(jì)算機(jī)可讀介質(zhì)甚至可為紙或另一適合的介質(zhì),在其上印的介質(zhì)中具體化的邏輯模塊來具體化本發(fā)明的實(shí)施例的功能性。此外,應(yīng)強(qiáng)調(diào)以上所描述的實(shí)施例僅為可能實(shí)施例的實(shí)例。在不背離本揭露內(nèi)容的原則的情況下可對以上所描述的實(shí)施例進(jìn)行許多變化以及修改。所有此等修改以及變化在本文中意欲包括在本揭露內(nèi)容的范疇內(nèi)且通過權(quán)利要求書保護(hù)。舉例而言,基于本文所提供的描述,本領(lǐng)域技術(shù)人員應(yīng)了解實(shí)施例包括用于減少L2快取存儲器內(nèi)的存儲庫碰撞的方法,方法包含以下步驟自用以儲存用于圖形處理單元內(nèi)的紋理過濾的紋理數(shù)據(jù)之外部存儲器讀取紋理數(shù)據(jù);將紋理數(shù)據(jù)分為多個(gè)存儲庫;對存儲庫執(zhí)行存儲庫攪和操作;以及將數(shù)據(jù)的存儲庫寫入至L2快取存儲器。對于某些實(shí)施例而言,將紋理數(shù)據(jù)分為多個(gè)存儲庫包含將紋理數(shù)據(jù)組織成具有對應(yīng)索引的連續(xù)存儲庫,其中存儲庫儲存在至少一快取線中,且將存儲庫組織成快取線。對于其他實(shí)施例而言,快取線各自的大小為1024位且存儲庫的大小為128位,以致每快取線存在八個(gè)存儲庫。在某些實(shí)施例中,在逐存儲庫的基礎(chǔ)上執(zhí)行將紋理數(shù)據(jù)分為多個(gè)存儲庫且將數(shù)據(jù)的存儲庫寫入至L2快取存儲器的步驟。在某些實(shí)施例中,執(zhí)行存儲庫攪和包含重新映射位于交替快取線中的存儲庫。在某些實(shí)施例中,執(zhí)行存儲庫攪和更包含將位于鄰近快取線中的具有相同索引的存儲庫以關(guān)于彼此成具有45度的數(shù)值的角而置放。在某些實(shí)施例中,重新映射包含以下步驟將存儲庫O與存儲庫4調(diào)換;將存儲庫1與存儲庫5調(diào)換;將存儲庫2與存儲庫6調(diào)換;以及將存儲庫3與存儲庫7調(diào)換。另一實(shí)施例包括用于處理圖形的計(jì)算機(jī)系統(tǒng),計(jì)算機(jī)系統(tǒng)包含外部存儲器,其用以儲存用于圖形處理單元內(nèi)的紋理過濾的紋理數(shù)據(jù);存儲庫攪和模塊,其用以自外部存儲器接收紋理數(shù)據(jù),將紋理數(shù)據(jù)分為多個(gè)存儲庫,以及對紋理數(shù)據(jù)的存儲庫執(zhí)行存儲庫攪和操作;以及L2快取存儲器,其耦接至存儲庫攪和模塊,其中L2快取存儲器可用以儲存經(jīng)重新映射的紋理數(shù)據(jù)。對于某些實(shí)施例而言,將紋理數(shù)據(jù)分為多個(gè)存儲庫,其中存儲庫儲存在至少一快取線中。在某些實(shí)施例中,一或多個(gè)快取線各自的大小為1024位。在某些實(shí)施例中,存儲庫的大小為128位以致每快取線存在八個(gè)存儲庫。在某些實(shí)施例中,存儲庫攪和模塊進(jìn)一步可用以對交替快取線內(nèi)的存儲庫執(zhí)行存儲庫攪和操作。在某些實(shí)施例中,存儲庫攪和模塊可用以僅在自L2快取存儲器提取紋理數(shù)據(jù)期間出現(xiàn)存儲庫碰撞時(shí)執(zhí)行存儲庫攪和操作。在某些實(shí)施例中,存儲庫攪和模塊可用以在自外部存儲器接收紋理數(shù)據(jù)之后執(zhí)行存儲庫攪和操作。在某些實(shí)施例中,存儲庫攪和模塊基于以下映射機(jī)制來執(zhí)行存儲庫攪和操作將存儲庫0與存儲庫4調(diào)換;將存儲庫1與存儲庫5調(diào)換;將存儲庫2與存儲庫6調(diào)換;以及將存儲庫3與存儲庫7調(diào)換。又一實(shí)施例包括用于減少L2快取存儲器內(nèi)的存儲庫碰撞的方法,方法包含以下步驟自L2快取存儲器提取紋理數(shù)據(jù),其中紋理數(shù)據(jù)用于圖形處理單元內(nèi)的紋理過濾;確定在提取紋理數(shù)據(jù)時(shí)是否出現(xiàn)存儲庫碰撞,其中紋理數(shù)據(jù)被分為位于L2快取存儲器內(nèi)的至少一快取線中的多個(gè)存儲庫;以及在已出現(xiàn)存儲庫碰撞時(shí)對存儲庫執(zhí)行存儲庫攪和操作。對于某些實(shí)施例而言,執(zhí)行存儲庫攪和的步驟包含根據(jù)交替快取線重新映射涉及存儲庫碰撞的存儲庫。在某些實(shí)施例中,重新映射包含以下步驟將存儲庫0與存儲庫4調(diào)換;將存儲庫1與存儲庫5調(diào)換;將存儲庫2與存儲庫6調(diào)換;以及將存儲庫3與存儲庫7調(diào)換。在某些實(shí)施例中,將紋理數(shù)據(jù)分為多個(gè)存儲庫,其中存儲庫儲存在至少一快取線中,其中快取線各自的大小為1024位,且存儲庫的大小為128位以致每快取線存在八個(gè)存儲庫。在某些實(shí)施例中,在逐存儲庫的基礎(chǔ)上執(zhí)行將紋理數(shù)據(jù)分為多個(gè)存儲庫且將數(shù)據(jù)的存儲庫寫入至L2快取區(qū)的步驟。以上所述僅為本發(fā)明較佳實(shí)施例,然其并非用以限定本發(fā)明的范圍,任何熟悉本項(xiàng)技術(shù)的人員,在不脫離本發(fā)明的精神和范圍內(nèi),可在此基礎(chǔ)上做進(jìn)一步的改進(jìn)和變化,因此本發(fā)明的保護(hù)范圍當(dāng)以本申請的權(quán)利要求書所界定的范圍為準(zhǔn)。附圖中符號的簡單說明如下100:計(jì)算機(jī)系統(tǒng)102:CPU104:系統(tǒng)存儲器106:紋理凄丈^居108:系統(tǒng)接口110圖形處理系統(tǒng)112前端處理器114紋理快取系統(tǒng)118紋理過濾器120幀緩沖器130顯示元件210存儲庫攪和模塊220L2快取存儲器230'L2快取存儲器310:L2快取存儲器320:快取線330:奇數(shù)區(qū)塊340:偶數(shù)區(qū)塊350:存儲庫410'外部存儲器412'紋理數(shù)據(jù)414:存儲庫攪和模塊416.快取線418L2快取存儲器/快取存儲420存儲庫510存儲庫810占據(jù)面積820占據(jù)面積830占據(jù)面積A:距離權(quán)利要求1.一種減少存儲庫碰撞的方法,用于減少L2快取存儲器內(nèi)的存儲庫碰撞,其特征在于,包含自用以儲存用于一圖形處理單元內(nèi)的紋理過濾操作的紋理數(shù)據(jù)的一外部存儲器接收紋理數(shù)據(jù);將所述紋理數(shù)據(jù)分為多個(gè)存儲庫;對所述存儲庫執(zhí)行存儲庫攪和操作;以及將所述紋理數(shù)據(jù)的所述存儲庫寫入至所述L2快取存儲器;其中將所述紋理數(shù)據(jù)分為多個(gè)存儲庫以及將所述紋理數(shù)據(jù)的所述存儲庫寫入至所述L2快取存儲器的步驟是在逐存儲庫的基礎(chǔ)上執(zhí)行。2.根據(jù)權(quán)利要求l所述的減少存儲庫碰撞的方法,其特征在于,將所述紋理數(shù)據(jù)分為多個(gè)存儲庫包含將所述紋理數(shù)據(jù)組織成具有對應(yīng)索引的連續(xù)存儲庫,其中所述存儲庫儲存在至少一快取線中;以及將所述存儲庫組織成快取線。3.根據(jù)權(quán)利要求l所述的減少存儲庫碰撞的方法,其特征在于,執(zhí)行所述存儲庫攪和包含重新映射位于交替快取線中的所述存儲庫,其中重新映射包含將存儲庫0與存儲庫4調(diào)換;將存儲庫1與存儲庫5調(diào)換;將存儲庫2與存儲庫6調(diào)換;以及將存儲庫3與存儲庫7調(diào)換。4.根據(jù)權(quán)利要求3所述的減少存儲庫碰撞的方法,其特征在于,重新映射更包含分析待重新映射的所述存儲庫以確定新存儲庫碰撞是否將由于重新映射所述存儲庫而出現(xiàn);以及利用不同的存儲庫攪和模式,以避免新存儲庫碰撞。5.—種處理圖形的計(jì)算機(jī)系統(tǒng),其特征在于,包含一外部存儲器,用以儲存用于一圖形處理單元內(nèi)的紋理過濾操作的紋理數(shù)據(jù);一存儲庫攪和模塊,用以自所述外部存儲器接收紋理數(shù)據(jù),將所述紋理數(shù)據(jù)分為多個(gè)存儲庫,且執(zhí)行存儲庫攪和操作以重新映射所述紋理數(shù)據(jù)的所述存儲庫;以及一L2快取存儲器,耦接至所述存儲庫攪和模塊,其中所述L2快取存儲器可用以儲存所述經(jīng)重新映射的紋理數(shù)據(jù)。6.根據(jù)權(quán)利要求5所述的處理圖形的計(jì)算機(jī)系統(tǒng),其特征在于,所述紋理數(shù)據(jù)被分為多個(gè)存儲庫,其中所述存儲庫儲存在至少一快取線中。7.根據(jù)權(quán)利要求5所述的處理圖形的計(jì)算機(jī)系統(tǒng),其特征在于,所述存儲庫攪和模塊更用以對交替快取線內(nèi)的存儲庫執(zhí)行所述存儲庫攪和操作。8.根據(jù)權(quán)利要求5所述的處理圖形的計(jì)算機(jī)系統(tǒng),其特征在于,所述存儲庫攪和模塊用于下列情況其中之一僅在當(dāng)自所述L2快取存儲器提取紋理數(shù)據(jù)出現(xiàn)存儲庫碰撞時(shí),執(zhí)行所述存儲庫攪和操作;以及在自外部存儲器接收所述紋理數(shù)據(jù)之后執(zhí)行所述存儲庫攪和操作。9.根據(jù)權(quán)利要求5所述的處理圖形的計(jì)算機(jī)系統(tǒng),其特征在于,所述存儲庫攪和模塊根據(jù)一映射機(jī)制執(zhí)行所述存儲庫攪和操作,所述映射機(jī)制包含將存儲庫0與存儲庫4調(diào)換;將存儲庫1與存儲庫5調(diào)換;將存儲庫2與存儲庫6調(diào)換;以及將存儲庫3與存儲庫7調(diào)換。10.根據(jù)權(quán)利要求9所述的處理圖形的計(jì)算機(jī)系統(tǒng),其特征在于,所述存儲庫攪和模塊可用以分析待執(zhí)行的所述存儲庫攪和操作,以確定新存儲庫碰撞是否將由于利用所述映射機(jī)制而出現(xiàn),且其中所述存儲庫攪和模塊更可用以利用不同的存儲庫攪和模式以避免新的存儲庫碰撞。11.一種減少存儲庫碰撞的方法,用于減少L2快取存儲器內(nèi)的存儲庫碰撞,其特征在于,包含自所述L2快取存儲器提取紋理數(shù)據(jù),其中所述紋理數(shù)據(jù)用于一圖形處理單元內(nèi)的紋理過濾;確定在提取所述紋理數(shù)據(jù)時(shí)是否已出現(xiàn)存儲庫碰撞,其中所述紋理數(shù)據(jù)分為位于所述L2快取存儲器內(nèi)的至少一快取線中的多個(gè)存儲庫;以及若出現(xiàn)所述存儲庫碰撞,則對所述存儲庫執(zhí)行存儲庫攪和操作;其中所述紋理數(shù)據(jù)在逐存儲庫的基礎(chǔ)上被分為多個(gè)存儲庫。12.根據(jù)權(quán)利要求ll所述的減少存儲庫碰撞的方法,其特征在于,執(zhí)行所述存儲庫攪和包含根據(jù)交替快取線重新映射涉及所述存儲庫碰撞的所述存儲庫。13.根據(jù)權(quán)利要求12所述的減少存儲庫碰撞的方法,其特征在于,所述重新映射包含將存儲庫0與存儲庫4調(diào)換;將存儲庫1與存儲庫5調(diào)換;將存儲庫2與存儲庫6調(diào)換;以及將存儲庫3與存儲庫7調(diào)換。14.根據(jù)權(quán)利要求13所述的減少存儲庫碰撞的方法,其特征在于,所述重新映射更包含分析待重新映射的所述存儲庫以確定新存儲庫碰撞是否將由于重新映射所述存儲庫而出現(xiàn);以及利用不同的存儲庫攪和模式以避免新的存儲庫碰撞。全文摘要本發(fā)明提供一種減少存儲庫碰撞的方法及處理圖形的計(jì)算機(jī)系統(tǒng)。一實(shí)施例包括一種減少L2快取存儲器內(nèi)的存儲庫碰撞的方法,方法包含以下步驟自用以儲存用于圖形處理單元內(nèi)的紋理過濾的紋理數(shù)據(jù)之外部存儲器讀取紋理數(shù)據(jù);將紋理數(shù)據(jù)分為存儲庫;對存儲庫執(zhí)行存儲庫攪和操作;以及將數(shù)據(jù)的存儲庫寫入至L2快取存儲器。本發(fā)明所述的減少存儲庫碰撞的方法及處理圖形的計(jì)算機(jī)系統(tǒng),可用于有效地管理并組織紋理數(shù)據(jù),以使紋理過濾器處理時(shí)所需的任何紋理數(shù)據(jù)在圖形處理系統(tǒng)中可易于擷取。文檔編號G06F12/08GK101114376SQ20071012332公開日2008年1月30日申請日期2007年6月20日優(yōu)先權(quán)日2006年6月20日發(fā)明者徐建明,亮李,陳文中申請人:威盛電子股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1