丟棄過(guò)濾器抽頭的紋理地址模式的制作方法
【專利摘要】各種實(shí)施例規(guī)定一種新的紋理地址模式,該模式排除落在紋理域外側(cè)的任何紋理過(guò)濾器抽頭(即,坐標(biāo))進(jìn)行過(guò)濾處理。在一個(gè)實(shí)施例中,不考慮位于紋理域外側(cè)的抽頭。并且,各種實(shí)施例關(guān)于紋理坐標(biāo)位置ti和權(quán)重wi的值提供靈活性??梢愿鶕?jù)抽頭位置并且特別是抽頭是否位于紋理內(nèi)來(lái)修改抽頭權(quán)重。
【專利說(shuō)明】丟棄過(guò)濾器抽頭的紋理地址模式
[0001]相關(guān)申請(qǐng)的交叉引用
[0002]本申請(qǐng)要求享有2013年3月15日遞交的申請(qǐng)序列號(hào)為61/789870的申請(qǐng)的優(yōu)先權(quán),這里以引用的方式明確地結(jié)合在本文中。
【背景技術(shù)】
[0003]本發(fā)明通常涉及圖形處理,并且尤其涉及紋理地址模式。
[0004]紋理是映射到形狀的表面的數(shù)據(jù)。典型地,紋理數(shù)據(jù)由顏色值組成。將紋理中的每一個(gè)像素稱為紋素。然后顏色地圖中的紋素是顏色值。
[0005]紋理過(guò)濾是從源讀取值且對(duì)其進(jìn)行組合并且然后使其對(duì)于圖形管線中的著色器可用的一種方式。例如,各向異性過(guò)濾涉及梯形區(qū)域中的三線性采樣。然而,存在許多其它紋理過(guò)濾技術(shù)。
[0006]對(duì)于每一個(gè)維度,在0.0到1.0的范圍中指定紋理坐標(biāo)。紋理地址模式指定如何處理過(guò)濾器抽頭或者位于這一范圍外側(cè)的坐標(biāo)。與該紋理過(guò)濾技術(shù)類似,存在許多紋理地址模式。
[0007]現(xiàn)有的紋理地址模式不適用于僅對(duì)落入紋理內(nèi)側(cè)的紋理過(guò)濾器內(nèi)核進(jìn)行采樣,因?yàn)樗鼈兎謩e引入某一種類的邊緣下偏差。特別是如圖1所示,當(dāng)過(guò)濾器覆蓋的區(qū)域(過(guò)濾器足跡)落在多個(gè)紋理上方時(shí),D3D11_TEXTURE_ADDRESS_CLAMP規(guī)定要包含在紋理內(nèi)的抽頭。會(huì)產(chǎn)生偏向一側(cè)的臟邊。這一方法會(huì)導(dǎo)致差的圖像質(zhì)量。
[0008]另一方法涉及到紋理的保護(hù)帶的使用。圖2中說(shuō)明了這一方法。該方法分配較大的紋理表面(稱之為保護(hù)帶)以便適應(yīng)紋理邊緣附近的過(guò)濾器寬度,并且將相鄰的紋理數(shù)據(jù)復(fù)制到邊界區(qū)域中。實(shí)際上,紋理過(guò)濾器內(nèi)核除了考慮實(shí)際正在被采樣的紋理,還考慮相鄰的紋理。這通常是可接受的,并且在低質(zhì)量渲染場(chǎng)景中可以產(chǎn)生改善的質(zhì)量。然而,這一方法由于數(shù)據(jù)的復(fù)制而明顯地要求更多的存儲(chǔ)器和帶寬。并且,著色器程序必須用于計(jì)算通常由硬件紋理采樣器計(jì)算的一些量。如果兩個(gè)片段具有不同的顏色,則所產(chǎn)生的樣本使兩個(gè)片段的顏色混合。可以出現(xiàn)可接受的顏色結(jié)果,但是卻以對(duì)于保護(hù)帶的存儲(chǔ)器存取和存儲(chǔ)以及附加計(jì)算的性能為代價(jià)。
[0009]對(duì)于每一個(gè)紋理抽頭,使用權(quán)重(稱之為Wi)對(duì)具有單獨(dú)坐標(biāo)的多個(gè)紋理抽頭(稱之為ti)進(jìn)行加權(quán)并且將其加和到一起。值i是從I到N的整數(shù)。紋理地址模式函數(shù)(稱之為F)確定每一個(gè)抽頭坐標(biāo)處的顏色,其或者是給定坐標(biāo)處的紋理顏色,或者是由紋理地址模式確定的修改的坐標(biāo)處的紋理顏色,或者是恒定的邊界顏色。最終顏色(稱之為C)計(jì)算為:
[0010]C=E i(Wi.F(ti))
[0011]執(zhí)行的實(shí)際計(jì)算可能與上面的數(shù)學(xué)公式不同。
[0012]使用這一方案,所有抽頭都有價(jià)值,而與抽頭是否落入紋理范圍內(nèi)無(wú)關(guān)。所有抽頭具有權(quán)重并且權(quán)重的和=I。然而,與D3D11_TEXTURE_ADDRESS_CLAMP的情況一樣,對(duì)于位于紋理外側(cè)的抽頭給予權(quán)重,并且最終的顏色可能失真。
【專利附圖】
【附圖說(shuō)明】
[0013]將參照以下附圖來(lái)描述一些實(shí)施例:
[0014]圖1示出了落在多個(gè)紋理上方的過(guò)濾器足跡;
[0015]圖2示出了保護(hù)帶紋理地址模式;
[0016]圖3示出了根據(jù)一個(gè)實(shí)施例具有位于紋理內(nèi)的三個(gè)抽頭和位于所述紋理外側(cè)的兩個(gè)抽頭的示例;
[0017]圖4是一個(gè)實(shí)施例的方框圖;
[0018]圖5示出了使用Ptex紋理化的實(shí)施例;
[0019]圖6是一個(gè)實(shí)施例的方框描述;
[0020]圖7是一個(gè)實(shí)施例的流程圖;
[0021]圖8是一個(gè)實(shí)施例的系統(tǒng)描述;并且
[0022]圖9是一個(gè)實(shí)施例的正視圖。
【具體實(shí)施方式】
[0023]各種實(shí)施例規(guī)定一種新的紋理地址模式,該模式從過(guò)濾處理排除落在紋理域外側(cè)的任何紋理過(guò)濾器抽頭(即,坐標(biāo))。在一個(gè)實(shí)施例中,不考慮位于紋理域外側(cè)的抽頭。并且,各種實(shí)施例關(guān)于紋理坐標(biāo)位置t和權(quán)重Wi的值提供靈活性。能夠根據(jù)抽頭位置,特別是抽頭是否位于紋理內(nèi),來(lái)對(duì)抽頭權(quán)重進(jìn)行修改。
[0024]除了像通常那樣計(jì)算C,還能夠確定落入紋理內(nèi)的總過(guò)濾權(quán)重(稱之為H)。新的函數(shù)(稱之為G)對(duì)于紋理內(nèi)的每一個(gè)點(diǎn)返回I并且對(duì)于紋理外側(cè)的每一個(gè)點(diǎn)返回O。通過(guò)除以H能夠使權(quán)重的和歸一化為I。根據(jù)各種實(shí)施例,可以按照下面來(lái)確定歸一化的顏色C,:
[0025]C,=C/H,其中
[0026]H=Ei (W1.G (tj))。
[0027]i = 1......N
[0028]再次,執(zhí)行的實(shí)際計(jì)算可能與上面的數(shù)學(xué)公式不同。
[0029]圖3提供了具有紋理內(nèi)的3個(gè)抽頭和紋理外側(cè)的2個(gè)抽頭的示例。在這一示例中,紋理內(nèi)的3個(gè)抽頭的G值為1,并且它們的權(quán)重Wi為0.1。因此,H = 0.6并且C’ = C/0.6。由于權(quán)重的總和可能不為1,因此通過(guò)除以H來(lái)修改最終的顏色值。
[0030]在一些實(shí)施例中,能夠定義N個(gè)抽頭的權(quán)重以使得它們的加和等于I。例如,三個(gè)抽頭可以使用權(quán)重0.25,0.5和0.25。如果足跡為橢圓形,并且沿著橢圓形的線進(jìn)行采樣,則位于橢圓形中間的樣本能夠獲得比朝向端點(diǎn)的樣本更多的權(quán)重?;貋?lái)參照抽頭具有權(quán)重0.25、0.5和0.25的示例,可以使橢圓形中間的樣本加權(quán)0.5。如果權(quán)重相加為1,則只要抽頭從不遭到拒絕(通過(guò)使它們的權(quán)重改變到O或者乘以O(shè)),就不需要通過(guò)除以總權(quán)重來(lái)進(jìn)行歸一化,因?yàn)榭倷?quán)重將為一。
[0031]是否使用歸一化取決于特定的實(shí)現(xiàn)。對(duì)于一種實(shí)現(xiàn),能夠在紋理采樣器(TS)中使過(guò)濾的顏色除以總權(quán)重,并且僅將所述過(guò)濾的顏色返回到著色器。
[0032]在一些情況中,如果沒(méi)有紋理過(guò)濾器抽頭位于該紋理內(nèi),則H = O。在這種情況下,C’是不清楚的。在一些實(shí)施例中,當(dāng)H = O時(shí),將紋理內(nèi)距離過(guò)濾器內(nèi)核中心最近的點(diǎn)的顏色提供為C’。
[0033]在一些實(shí)施例中,當(dāng)H = O時(shí),可以按照下列方式中的一種來(lái)確定值C’:
[0034]方法A
[0035]C’ -恒定邊界顏色(當(dāng)初始化采樣器對(duì)象時(shí)由應(yīng)用選擇的顏色)
[0036]方法B
[0037]C’ = [0,0,0,0](四個(gè)數(shù)字分別為紅、綠、藍(lán)和阿爾法)
[0038]方法C
[0039]使t。為紋理過(guò)濾器足跡的中心(這是由著色器實(shí)際提供的坐標(biāo))。然后,計(jì)算有效紋理域(該區(qū)域?yàn)閇0,1]X[0,1])內(nèi)的點(diǎn)tv,其最接近于tc:
[0040]tv = [max (0.0, min (1.0 X (tc))), max (0.0, min (1.0, y (tc)))]。
[0041]最后,使用現(xiàn)有技術(shù)的紋理地址機(jī)制來(lái)計(jì)算顏色:
[0042]C,=F(tv)
[0043]這里能夠使用對(duì)于F的夾取紋理地址模式,但是也可以使用其它地址模式。如果存在紋理邊界,則其能夠遵守偶數(shù)評(píng)估f(tv)。因此,C’可以是紋理中最接近紋理過(guò)濾器足跡中心的顏色。
[0044]在紋理具有未使用的阿爾法通道的情況下,能夠在紋理內(nèi)的每一個(gè)地方將阿爾法通道設(shè)置到一、定義具有零顏色和阿爾法的恒定邊界顏色,并且然后使用紋理地址函數(shù),該函數(shù)返回對(duì)于位于紋理外側(cè)的抽頭的邊界顏色。在這種情況下,能夠通過(guò)使過(guò)濾的結(jié)果的顏色分量除以阿爾法分量來(lái)獲得期望的顏色結(jié)果,以便進(jìn)行重新歸一化。
[0045]下面描述在一些實(shí)施例和保護(hù)帶方案之間的存儲(chǔ)器使用的示例比較。假設(shè)紋理具有128x128個(gè)紋素和全MIP MAP層級(jí)(MIP MAP是相同圖像的漸進(jìn)式較小版本,用于避免紋理內(nèi)的混淆),以及具有16個(gè)紋素的過(guò)濾器寬度(相當(dāng)普遍),則保護(hù)帶方法的尺寸為:
[0046]MipO: (128+16) *(128+16) = 20736
[0047]Mipl: (64+16) *(64+16) = 6400
[0048]Mip2: (32+16) *(32+16) = 2304
[0049]Mip3: (16+16) *(16+16) = 1024
[0050]Mip4: (8+16) *(8+16) = 576
[0051]Mip5: (4+16) *(4+16) = 400
[0052]Mip6: (2+16) *(2+16) = 324
[0053]Mip7: (1+16) *(1+16) = 289
[0054]總共:32053個(gè)紋素。在每像素32比特(通常)時(shí),為125kB。
[0055]使用各種實(shí)施例,對(duì)任何無(wú)邊界而言:
[0056]MipO: (128+0) *(128+0) = 16384
[0057]Mipl: (64+0) * (64+0) = 4096
[0058]Mip2: (32+0) *(32+0) = 1024
[0059]Mip3: (16+0) *(16+0) = 256
[0060]Mip4: (8+0) * (8+0) = 64
[0061]Mip5: (4+0)*(4+0) = 16
[0062]Mip6: (2+0) * (2+0) = 4
[0063]Mip7: (1+0)*(1+0) = I
[0064]總共:21845個(gè)紋素=85kB。
[0065]根據(jù)一個(gè)實(shí)施例,在每一個(gè)邊緣處對(duì)于合適的插值添加單個(gè)紋素邊界,即:
[0066]MipO: (128+1) *(128+1) = 16641
[0067]Mipl: (64+1) *(64+1) = 4225
[0068]Mip2: (32+1) *(32+1) = 1089
[0069]Mip3: (16+1) *(16+1) = 289
[0070]Mip4: (8+1) *(8+1) = 81
[0071]Mip5: (4+1)*(4+1) = 25
[0072]Mip6: (2+ 1) *(2+1) = 9
[0073]Mip7: (1+1)*(1+1) = 4
[0074]總共:22363個(gè)紋素=87kB。
[0075]因此,各種實(shí)施例在128x128個(gè)紋理上節(jié)省大致30%的存儲(chǔ)器空間。對(duì)于較低分辨率紋理,這一數(shù)字有所增加(對(duì)于64x64個(gè)紋理節(jié)省約50% );并且對(duì)于較大分辨率,這一數(shù)字有所降低(對(duì)于256x156,節(jié)省約17%)。在大多數(shù)時(shí)間,設(shè)計(jì)用于使用每對(duì)象許多紋理的系統(tǒng)將最可能使用具有尺寸為128x128個(gè)紋素或者更小的紋理。
[0076]紋理采樣
[0077]下面是使用一些實(shí)施例的紋理采樣系統(tǒng)的描述。圖4提供了該系統(tǒng)的方框圖。
[0078]1、在著色器核心12上執(zhí)行的著色器程序10發(fā)出指令14以便請(qǐng)求紋理采樣,指定要被采樣的紋理圖像、要被使用的采樣器狀態(tài)以及在其中將要對(duì)紋理進(jìn)行采樣的(U,V)紋理坐標(biāo)(典型地,0〈 = u< = I并且0〈 = v〈 = I代表紋理圖像)。該請(qǐng)求被傳送到紋理采樣器(TS)單兀16。
[0079]2、紋理采樣器(TS)計(jì)算以紋理坐標(biāo)為中心的足跡,其代表理想上應(yīng)該被積分以便計(jì)算過(guò)濾的顏色的紋理的區(qū)域。
[0080]3、TS將足跡近似為有限數(shù)量的抽頭,每一個(gè)抽頭代表(U,V)位置和權(quán)重,以使得抽頭處顏色值的加權(quán)和近似于整個(gè)足跡上的積分。使用的精確方案取決于如何配置采樣器狀態(tài)(例如,是否使能各向異性過(guò)濾)。
[0081]4、在一些實(shí)施例中,TS應(yīng)用可以基于其位置修改抽頭權(quán)重的操作(取決于如何配置采樣器狀態(tài))。例如,具有位于紋理圖像外側(cè)([0,1]X[0,1]區(qū)域外側(cè))的(U,V)位置的抽頭可以使其權(quán)重設(shè)置到零。
[0082]5、TS應(yīng)用可以修改存儲(chǔ)器20中的抽頭位置18的操作(取決于如何配置采樣器狀態(tài))。例如,可以將具有紋理圖像外側(cè)的(U,V)位置的任何抽頭移動(dòng)到位于該紋理圖像內(nèi)側(cè)的最近位置。
[0083]a、在一些情況下,可以通過(guò)向抽頭的U坐標(biāo)和V坐標(biāo)獨(dú)立地應(yīng)用函數(shù)來(lái)修改抽頭位置,以便產(chǎn)生修改的坐標(biāo)U’和V’。使用采樣器狀態(tài),能夠選擇幾種不同的模式,并且可以對(duì)于U坐標(biāo)和V坐標(biāo)設(shè)置不同的模式。
[0084]b、在一些情況下,可以使用“夾取”模式來(lái)將新的坐標(biāo)U’確定為:
[0085]『=0,如果沢0;
[0086]U'=1,如果價(jià)1;
[0087]U’ = U,如果 O ≤ U≤ 1 ;
[0088]并且對(duì)于V同理。如果U坐標(biāo)和V坐標(biāo)二者配置用于這一“夾取”行為,則新的位置(U’,V’ )將是紋理中最接近的點(diǎn)(按照到(U,V)的直線距離)。
[0089]6、TS在每一個(gè)抽頭位置22處從紋理圖像加載顏色值。
[0090]a、在各種實(shí)施例中,如果抽頭的權(quán)重為非零則僅加載顏色,并且如果抽頭位置的權(quán)重為零則不加載顏色。因此,能夠避免對(duì)于位于紋理外側(cè)的顏色的存儲(chǔ)器存取操作。
[0091]7,TS使每一個(gè)抽頭的顏色乘以其權(quán)重,并且將加權(quán)的顏色加和到一起以便產(chǎn)生過(guò)濾的顏色。根據(jù)一些實(shí)施例,TS通過(guò)計(jì)算所有抽頭的權(quán)重之和來(lái)計(jì)算總權(quán)重。
[0092]8、TS將過(guò)濾的顏色和總權(quán)重24提供回到著色器程序。
[0093]在一些情況下,如果權(quán)重之和大于O且小于1,則TS能夠執(zhí)行歸一化。在一些情況下,TS不執(zhí)行歸一化,而是將未歸一化的加和的過(guò)濾的顏色以及總權(quán)重二者提供回到著色器。這在不具有多重采樣抗鋸齒(MSAA)的情況下實(shí)現(xiàn)Ptex紋理化映射系統(tǒng)的情況中是有用的,因?yàn)樵跉w一化之前可以使用著色器代碼來(lái)組合跨越多個(gè)采樣請(qǐng)求的權(quán)重。
[0094]如圖7所示,根據(jù)一個(gè)實(shí)施例的紋理采樣序列40可以實(shí)現(xiàn)在軟件、固件和/或硬件中。在軟件和固件實(shí)施例中,它可以通過(guò)計(jì)算機(jī)執(zhí)行的指令來(lái)實(shí)現(xiàn),這些指令存儲(chǔ)在諸如磁、光學(xué)或者半導(dǎo)體存儲(chǔ)的一個(gè)或多個(gè)非暫態(tài)計(jì)算機(jī)可讀介質(zhì)中。
[0095]在一個(gè)實(shí)施例中,如在方框42中指示的,序列可以通過(guò)訪問(wèn)執(zhí)行紋理采樣的請(qǐng)求開(kāi)始。然后如在方框44中指示的,確定用于采樣的足跡位置和尺寸。之后,如在方框46中指示的,可以確定對(duì)于與所述足跡相關(guān)聯(lián)的每一個(gè)過(guò)濾器抽頭的一個(gè)或多個(gè)過(guò)濾器抽頭位置和權(quán)重。接下來(lái),如在方框48中指示的,選擇性地修改位于紋理圖像外側(cè)的任何抽頭的權(quán)重。
[0096]如在方框50中指示的,還可以選擇性地修改位于紋理圖像外側(cè)的任何抽頭的位置。對(duì)于位于紋理圖像內(nèi)并且具有非零權(quán)重的每一個(gè)過(guò)濾器抽頭位置,請(qǐng)求紋理圖像中的顏色值(方框54)。使每一個(gè)抽頭顏色乘以其權(quán)重(方框56)。如在方框58中指示的,確定加權(quán)顏色之和以便生成過(guò)濾的顏色。最后,如在方框60中指示的,產(chǎn)生最終過(guò)濾的顏色,該最終顏色基于過(guò)濾的顏色。
[0097]用戶模型
[0098]各種實(shí)施例可以用于實(shí)現(xiàn)圖形處理單元(GPU)-加速的Ptex風(fēng)格紋理化系統(tǒng)。例如,在ptex.us以太網(wǎng)上描述的Ptex紋理化:迪士尼動(dòng)畫工作室Ptex。可以從NVIDIA獲得其它版本。
[0099]PTEX實(shí)現(xiàn)(使用不具有MSAA的各種實(shí)施例)
[0100]1、在中央處理單元(CPU)上運(yùn)行的應(yīng)用加載用于模型的幾何形狀數(shù)據(jù)和紋理,其中,該幾何形狀中的每一個(gè)圖元可以與不同的紋理相關(guān)聯(lián)。這樣,如果由紋理采樣產(chǎn)生的過(guò)濾的顏色不正確,則存在在紋理之間的邊界處表現(xiàn)出的“縫隙”的潛在問(wèn)題。
[0101]2、應(yīng)用創(chuàng)建配置為使用各種實(shí)施例的采樣器狀態(tài)。
[0102]3、應(yīng)用創(chuàng)建包括紋理采樣操作的著色器程序。
[0103]4、應(yīng)用將紋理、采樣器狀態(tài)和著色器程序綁定到GPU的當(dāng)前狀態(tài),并且請(qǐng)求GPU渲染該幾何形狀。
[0104]5、GPU對(duì)該幾何形狀中的圖元進(jìn)行光柵化,產(chǎn)生片段。如果沒(méi)有使用MSAA,則圖元僅當(dāng)覆蓋像素的中心時(shí)生成片段。具體地說(shuō),如果分別與紋理Tl和T2相關(guān)聯(lián)的兩個(gè)相鄰的圖元Pl和P2 二者都部分地覆蓋相同的像素,則將僅對(duì)于覆蓋像素中心的圖元(假設(shè)為Fl)生成一個(gè)片段。取決于Pl或P2覆蓋了該像素多少,對(duì)于這一像素的理想顏色值將是來(lái)自Tl和T2的顏色的組合。
[0105]6、GPU對(duì)于每一個(gè)片段執(zhí)行一次著色器程序。
[0106]7、著色器程序請(qǐng)求使用各種實(shí)施例執(zhí)行的一個(gè)或多個(gè)紋理采樣操作。
[0107]a、如果處理片段Fl,則著色器程序?qū)⑹紫葟募y理Tl請(qǐng)求采樣,并且獲得過(guò)濾的顏色,其中將拒絕落入Tl外側(cè)的所有抽頭。
[0108]b、隨后,每當(dāng)正在被著色的片段的(X,y)位置位于圖元的邊界附近,著色器將發(fā)出附加的紋理采樣請(qǐng)求。通過(guò)發(fā)現(xiàn)由附近的圖元使用的紋理并且在相對(duì)應(yīng)的紋理坐標(biāo)處請(qǐng)求紋理采樣操作來(lái)做出每一個(gè)隨后的請(qǐng)求。如果該片段位于圖元的邊界附近而不是拐角附近,則這將涉及單個(gè)附加的采樣請(qǐng)求(例如,從紋理T2進(jìn)行采樣)。如果該片段在拐角附近,則附加請(qǐng)求的數(shù)量將取決于輸入幾何形狀中頂點(diǎn)的價(jià)數(shù)(即,共同享有那個(gè)頂點(diǎn)的圖元的數(shù)量)。使用由該應(yīng)用構(gòu)建并且由著色器訪問(wèn)的鄰近結(jié)構(gòu),能夠發(fā)現(xiàn)附近的圖元。
[0109]8、著色器計(jì)算跨越紋理采樣請(qǐng)求的過(guò)濾的顏色之和以及總權(quán)重,并且通過(guò)使過(guò)濾的顏色之和除以總權(quán)重之和來(lái)計(jì)算最終顏色。由于下面的a和b,這一最終顏色是在橢圓足跡上的理想積分的良好近似。
[0110]a、對(duì)于每一個(gè)請(qǐng)求的總權(quán)重取決于落在每一個(gè)紋理中的過(guò)濾器足跡的比例。這取決于由每一個(gè)圖元覆蓋的像素區(qū)域的部分(由于過(guò)濾器足跡與像素到紋理空間中的投影相關(guān))。
[0111]b、因而,對(duì)于來(lái)自例如Tl和T2的最終片段顏色的貢獻(xiàn)與Pl和P2(分別)覆蓋該像素的程度成比例,作為如上所述的理想結(jié)果。
[0112]在圖5所示的示例中,在頂部示出了目標(biāo)闡述,之后是PTEX闡述,并且在底部示出了本文描述的技術(shù)的一個(gè)實(shí)施例的結(jié)果。在這種情況下,在目標(biāo)視圖中,像素位于中心中但由兩個(gè)片段部分覆蓋,但是像素的中心位于較上片段中。因而,在PTEX闡述中,將像素表示為沿著其邊界跨越片段。在一個(gè)實(shí)施例中,如在底部闡述中示出的,所公開(kāi)技術(shù)的結(jié)果是包括像素中心的片段和不包括像素中心的片段的組合。
[0113]再次,最終顏色是在PTEX闡述以及所提出的方法的闡述中示出的橢圓形足跡上的理想積分的良好近似。對(duì)于每一個(gè)請(qǐng)求的總權(quán)重取決于落在每一個(gè)紋理中的過(guò)濾器足跡的比例,如在圖5的頂部闡述中所示。因而,來(lái)自兩個(gè)片段中的每一個(gè)的最終片段顏色的貢獻(xiàn)與每一個(gè)圖元覆蓋像素的程度成比例,這是理想的結(jié)果。
[0114]PTEX (使用各種實(shí)施例+MSAA)
[0115]1、在主機(jī)上運(yùn)行的應(yīng)用加載用于模型的幾何形狀數(shù)據(jù)和紋理,其中該幾何形狀中的每一個(gè)圖元可以與不同的紋理相關(guān)聯(lián)。這樣,如果由紋理采樣產(chǎn)生的過(guò)濾的顏色不正確,則存在在紋理之間的邊界處示出的“縫隙”的潛在問(wèn)題。
[0116]2、應(yīng)用創(chuàng)建配置為使用各種實(shí)施例的采樣器狀態(tài)。
[0117]3、應(yīng)用創(chuàng)建包括紋理采樣操作的著色器程序。
[0118]4、應(yīng)用將紋理、采樣器狀態(tài)和著色器程序綁定到GPU的當(dāng)前狀態(tài),并且請(qǐng)求GPU渲染該幾何形狀。
[0119]5、GPU對(duì)該幾何形狀中的圖元進(jìn)行光柵化,產(chǎn)生具有覆蓋遮蔽的片段。具體地說(shuō),如果分別與紋理Tl和T2相關(guān)聯(lián)的兩個(gè)相鄰的圖元Pl和P2 二者都部分地覆蓋相同的像素,則將生成片段Fl和F2,每一個(gè)片段具有在其遮蔽中被使能的樣本的不同子集。
[0120]a、這一像素的理想顏色值將是來(lái)自Tl和T2的顏色的組合,取決于Pl或P2覆蓋了該像素的多少。
[0121]6、GPU對(duì)于每一個(gè)片段執(zhí)行一次著色器程序。
[0122]7、著色器程序請(qǐng)求使用各種實(shí)施例執(zhí)行的紋理采樣操作(如上面在紋理采樣下描述的)。
[0123]a、當(dāng)處理片段Fl時(shí),紋理足跡可以跨越紋理Tl和T2 ;但是對(duì)于各種實(shí)施例,拒絕位于Tl外側(cè)的抽頭。
[0124]b、類似地,當(dāng)處理F2時(shí),拒絕位于T2外側(cè)的抽頭。
[0125]8、著色器程序使過(guò)濾的顏色除以總權(quán)重,以便計(jì)算每一個(gè)片段的顏色。這一重新歸一化步驟考慮到通過(guò)各種實(shí)施例的一些過(guò)濾器抽頭的拒絕。在一些情況下,紋理采樣器能夠使過(guò)濾的顏色除以總權(quán)重。
[0126]9、該管線的片段后端接收該片段連同其遮蔽以及計(jì)算的顏色值,并且將它們合成在相對(duì)應(yīng)的像素的樣本上。僅其中遮蔽被使能的樣本由給定片段更新。
[0127]a、因而,包含對(duì)于片段Fl和F2計(jì)算的顏色(使用紋理Tl和T2)的樣本的比例取決于由圖元Pl和P2覆蓋的像素的比例。
[0128]10、一種解決操作通過(guò)組合像素中所有樣本的顏色值來(lái)計(jì)算對(duì)于每一個(gè)像素的最終顏色值。
[0129]a、因而,來(lái)自Tl和T2的顏色的貢獻(xiàn)與Pl和P2 (分別)覆蓋每一個(gè)像素的樣本的程度成比例,作為如上所述的理想結(jié)果。
[0130]MSAA 示例
[0131]下面提供涉及使用MSAA的紋理采樣的處理的描述。圖6提供了能夠結(jié)合多重采樣抗鋸齒(MSAA)使用實(shí)施例的系統(tǒng)30。
[0132]1、在主CPU(未描述)上運(yùn)行的程序初始化采樣器狀態(tài)。
[0133]2、在主機(jī)上運(yùn)行的程序?qū)⒓y理上傳到紋理存儲(chǔ)器32。
[0134]3、在主機(jī)上運(yùn)行的程序編譯著色器程序,并且將著色器程序字節(jié)代碼上傳到程序存儲(chǔ)器34。
[0135]a、在圖6中,闡述了用于紋理和著色器程序的分離的存儲(chǔ)器。一些分立的GPU對(duì)于所有這些事情具有共享存儲(chǔ)器。一些嵌入式GPU對(duì)于每一件事情具有共享存儲(chǔ)器,包括位于主CPU和GPU上的資源??梢园凑崭鞣N方式來(lái)物理和/或邏輯地劃分存儲(chǔ)器。
[0136]4、在主CPU上運(yùn)行的程序初始化繪圖調(diào)用。
[0137]5、GPU處理該繪制調(diào)用。
[0138]6、一次對(duì)一個(gè)圖兀進(jìn)行柵格化。
[0139]a、在概念上一次是一個(gè)圖元。實(shí)際上,可以存在被并行處理的幾個(gè)三角形以便提高性能。
[0140]7、光柵化器36生成片段,該片段包含像素的(X,y)位置和遮蔽,該遮蔽說(shuō)明了像素中的哪些樣本被覆蓋。如果圖元覆蓋像素的至少一個(gè)樣本,則對(duì)于每一個(gè)像素生成片段。遮蔽指示樣本是/否由圖元覆蓋。(在多重采樣中,每像素取多于一個(gè)樣本。幀緩沖器內(nèi)容包括每樣本存儲(chǔ)的一個(gè)顏色。幀緩沖器以清零的顏色開(kāi)始。光柵化器在每一個(gè)樣本處測(cè)試重疊,結(jié)果是確定該樣本被覆蓋或者不被覆蓋。著色器計(jì)算每像素一個(gè)顏色。將像素位置和覆蓋信息稱為是片段。片段與單個(gè)三角形相關(guān)聯(lián)。由于幾個(gè)三角形與像素重疊,因此它們分別具有一個(gè)片段。被著色的顏色有時(shí)被稱為片段顏色。在像素內(nèi)每一個(gè)覆蓋的樣本處,將該像素的被著色的顏色存儲(chǔ)在幀緩沖器中。非覆蓋的樣本保留它們?cè)械闹?。光柵化器在每一個(gè)樣本處測(cè)試重疊,并且確定覆蓋。在渲染了所有幾何形狀之后,將多重采樣的幀緩沖器解析到能夠被顯示的具有每像素一個(gè)樣本的單個(gè)采樣的表面。對(duì)像素內(nèi)每一個(gè)樣本的顏色一起取平均,以便給出最終像素顏色。也可以使用其它過(guò)濾方法,例如帳篷過(guò)濾器或者米切爾過(guò)濾器,但是簡(jiǎn)單平均是對(duì)于實(shí)時(shí)圖形來(lái)說(shuō)最廣泛的方法)。
[0141]8、著色器核心38對(duì)于由光柵化器生成的每一個(gè)片段執(zhí)行一次位于程序存儲(chǔ)器之外的程序。
[0142]a、程序可以是用戶生成的。
[0143]9、著色器核心程序請(qǐng)求紋理采樣。紋理采樣指示到樣本的坐標(biāo),作為紋理過(guò)濾器足跡的中心。
[0144]10、紋理采樣器(TS)33通過(guò)確定紋理過(guò)濾器足跡中心到相鄰片段之間的距離來(lái)確定足跡尺寸(例如,橢圓)。這一距離有可能在著色器核心程序中進(jìn)行計(jì)算。
[0145]11、TS計(jì)算用于獲取的抽頭。
[0146]12、TS計(jì)算每一個(gè)抽頭的權(quán)重。
[0147]13、TS應(yīng)用基于抽頭位置修改抽頭權(quán)重的操作。
[0148]a、可以按照早期描述的方式來(lái)設(shè)置抽頭權(quán)重,以使得僅對(duì)于位于足跡內(nèi)和紋理內(nèi)的抽頭給出權(quán)重。
[0149]14、TS應(yīng)用修改抽頭位置的操作。在抽頭位于紋理外側(cè)的情況下,可以修改抽頭的位置。參見(jiàn)抽頭到紋理內(nèi)的重新定位的早期描述。
[0150]15、TS在每一個(gè)抽頭處從紋理存儲(chǔ)器加載顏色。
[0151]a、如果抽頭權(quán)重為非零,則僅加載顏色。
[0152]16、通過(guò)使每一個(gè)抽頭的顏色乘以其權(quán)重并且將加權(quán)的顏色加和到一起,TS對(duì)于著色器核心程序產(chǎn)生單個(gè)過(guò)濾的顏色值。
[0153]17、著色器核心程序按照某一方式使用過(guò)濾的顏色值以便計(jì)算片段顏色。
[0154]18、覆蓋的樣本被分配片段顏色。
[0155]19、當(dāng)所有三角形被柵格化時(shí),將像素顏色設(shè)置到像素中所有樣本的平均顏色。
[0156]a、在渲染了所有幾何圖形之后,將多重采樣的幀緩沖器35解析為能夠在屏幕上顯示的單個(gè)采樣的表面(每像素一個(gè)樣本)。
[0157]其它用途:
[0158]在虛擬存儲(chǔ)器系統(tǒng)的上下文中,通過(guò)將轉(zhuǎn)移到未映射的存儲(chǔ)器頁(yè)內(nèi)側(cè)的地址的抽頭的權(quán)重設(shè)置到零,可以拒絕這些抽頭。在一些情況下,這可以避免與頁(yè)錯(cuò)誤相關(guān)聯(lián)的性能成本。
[0159]圖8說(shuō)明了系統(tǒng)700的實(shí)施例。在實(shí)施例中,系統(tǒng)700可以是媒體系統(tǒng),盡管系統(tǒng)700不局限于這一上下文。例如,系統(tǒng)700可以結(jié)合到個(gè)人計(jì)算機(jī)(PC)、膝上型電腦、超級(jí)膝上型電腦、平板電腦、觸摸板、便攜式電腦、手持計(jì)算機(jī)、掌上電腦、個(gè)人數(shù)字助理(PDA)、蜂窩電話、組合蜂窩電話/PDA、電視、智能設(shè)備(例如智能電話、智能平板電腦或智能電視)、移動(dòng)互聯(lián)網(wǎng)設(shè)備(MID)、消息傳送設(shè)備、數(shù)據(jù)通信設(shè)備等等中。
[0160]在實(shí)施例中,系統(tǒng)700包括耦接到顯示器720的平臺(tái)702。平臺(tái)702可以從諸如內(nèi)容服務(wù)設(shè)備730或者內(nèi)容遞送設(shè)備740或者其它類似的內(nèi)容源的內(nèi)容設(shè)備接收內(nèi)容。例如,包括一個(gè)或多個(gè)導(dǎo)航特征的導(dǎo)航控制器750可以用于與平臺(tái)702和/或顯示器720進(jìn)行交互。以下將更加詳細(xì)地描述這些部件中的每一個(gè)。
[0161]在實(shí)施例中,平臺(tái)702可以包括芯片集705、處理器710、存儲(chǔ)器712、貯存器714、圖形子系統(tǒng)715、應(yīng)用716和/或無(wú)線電718的任意組合。芯片集705可以提供處理器710、存儲(chǔ)器712、貯存器714、圖形子系統(tǒng)715、應(yīng)用716和/或無(wú)線電718之間的相互通信。例如,芯片集705可以包括能夠提供與存儲(chǔ)器714的相互通信的存儲(chǔ)適配器(未闡述)。
[0162]處理器710可以實(shí)現(xiàn)為復(fù)雜指令集計(jì)算機(jī)(CISC)或精簡(jiǎn)指令集計(jì)算機(jī)(RISC)處理器、x86指令集兼容處理器、多核心、或者任何其它微處理器或中央處理單元(CPU)。在實(shí)施例中,處理器710可以包括雙核處理器、雙核移動(dòng)處理器等等。處理器可以與存儲(chǔ)器712一起實(shí)現(xiàn)圖7的序列。
[0163]存儲(chǔ)器712可以實(shí)現(xiàn)為易失性存儲(chǔ)器設(shè)備,例如但不局限于隨機(jī)存取存儲(chǔ)器(RAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)或者靜態(tài)RAM (SRAM)。
[0164]貯存器714可以實(shí)現(xiàn)為非易失性存儲(chǔ)設(shè)備,例如但不局限于磁盤驅(qū)動(dòng)、光盤驅(qū)動(dòng)、磁帶驅(qū)動(dòng)、內(nèi)部存儲(chǔ)設(shè)備、附接的存儲(chǔ)設(shè)備、閃存、電池備份SDRAM (同步DRAM)和/或網(wǎng)絡(luò)可訪問(wèn)的存儲(chǔ)設(shè)備。在實(shí)施例中,當(dāng)例如包括多個(gè)硬驅(qū)時(shí),存儲(chǔ)714可以包括用于增加對(duì)于有價(jià)值的數(shù)字媒體的存儲(chǔ)性能提升保護(hù)的技術(shù)。
[0165]圖形子系統(tǒng)715可以執(zhí)行諸如靜止或視頻的圖像的處理,以便用于顯示。例如,圖形子系統(tǒng)715可以是圖形處理單元(GPU)或者視覺(jué)處理單元(VPU)。模擬或數(shù)字接口可以用于可通信地耦接圖形子系統(tǒng)715和顯示器720。例如,該接口可以是高清多媒體接口、顯示端口、無(wú)線HDMI和/或無(wú)線HD兼容的技術(shù)中的任意一個(gè)。圖形子系統(tǒng)715可以集成到處理器710或者芯片集705中。圖形子系統(tǒng)715可以是可通信地耦接到芯片集705的獨(dú)立的卡。
[0166]可以在各種硬件架構(gòu)中實(shí)現(xiàn)本文描述的圖形和/或視頻處理技術(shù)。例如,可以在芯片集內(nèi)集成圖形和/或視頻功能。可選地,可以使用分立的圖形和/或視頻處理器。作為再一實(shí)施例,可以由包括多核處理器的通用處理器來(lái)實(shí)現(xiàn)該圖形和/或視頻功能。在更進(jìn)一步的實(shí)施例中,可以在消費(fèi)類電子設(shè)備中實(shí)現(xiàn)這些功能。
[0167]無(wú)線電718可以包括能夠使用各種合適的無(wú)線通信技術(shù)來(lái)發(fā)射和接收信號(hào)的一個(gè)或多個(gè)無(wú)線電。這樣的技術(shù)可以涉及跨越一個(gè)或多個(gè)無(wú)線網(wǎng)絡(luò)的通信。示例性無(wú)線網(wǎng)絡(luò)包括(但不局限于)無(wú)線局域網(wǎng)(WLAN)、無(wú)線個(gè)域網(wǎng)(WPAN)、無(wú)線城域網(wǎng)(WMAN)、蜂窩網(wǎng)絡(luò)和衛(wèi)星網(wǎng)絡(luò)。在跨越這樣的網(wǎng)絡(luò)進(jìn)行通信時(shí),無(wú)線電718可以根據(jù)任何版本中的一個(gè)或多個(gè)可用標(biāo)準(zhǔn)進(jìn)行操作。
[0168]在實(shí)施例中,顯示器720可以包括任何電視類型的監(jiān)視器或顯示器。例如,顯示器720可以包括電腦顯示器屏幕、觸摸屏顯示器、視頻監(jiān)視器、類似電視的設(shè)備和/或電視。顯示器720可以是數(shù)字的或模擬的。在實(shí)施例中,顯示器720可以是全息顯示器。并且,顯示器720可以是可以接收視覺(jué)投影的透明表面。這樣的投影可以傳遞各種形式的信息、圖像和/或?qū)ο?。例如,這樣的投影可以是移動(dòng)增強(qiáng)現(xiàn)實(shí)(MAR)應(yīng)用的視覺(jué)覆蓋。在一個(gè)或多個(gè)軟件應(yīng)用716的控制下,平臺(tái)702可以在顯示器720上顯示用戶界面722。
[0169]在實(shí)施例中,例如,內(nèi)容服務(wù)設(shè)備730可以由任何本土的、國(guó)際的和/或獨(dú)立的服務(wù)托管,并且因而經(jīng)由因特網(wǎng)對(duì)于平臺(tái)702可訪問(wèn)。內(nèi)容服務(wù)設(shè)備730可以耦接到平臺(tái)702和/或顯示器720。平臺(tái)702和/或內(nèi)容服務(wù)設(shè)備730可以耦接到網(wǎng)絡(luò)760,以便向并且自網(wǎng)絡(luò)760通信(例如,發(fā)送和/或接收)媒體信息。內(nèi)容遞送設(shè)備740也可以耦接到平臺(tái)702和/或顯示器720。
[0170]在實(shí)施例中,內(nèi)容服務(wù)設(shè)備730可以包括有線電視盒、個(gè)人電腦、網(wǎng)絡(luò)、電話、能夠傳送數(shù)字信息和/或內(nèi)容的互聯(lián)網(wǎng)使能的設(shè)備或裝置、以及能夠經(jīng)由網(wǎng)絡(luò)760或者直接地在內(nèi)容提供方和平臺(tái)702和/或顯示器720之間單向或雙向通信內(nèi)容的類似設(shè)備。需要理解的是,可以經(jīng)由網(wǎng)絡(luò)760向并且自系統(tǒng)700中的部件和內(nèi)容提供方中的任意一個(gè)單向和/或雙向地通信內(nèi)容。內(nèi)容的示例可以包括任何媒體信息,例如包括視頻、音樂(lè)、醫(yī)療和游戲隹自坐坐I I=I尼、寸寸O
[0171]內(nèi)容服務(wù)設(shè)備730接收諸如有線電視節(jié)目的內(nèi)容,包括媒體信息、數(shù)字信息和/或其它內(nèi)容。內(nèi)容提供方的示例可以包括任何有線或衛(wèi)星電視或者無(wú)線電或以太網(wǎng)內(nèi)容提供方。所提供的示例并不意味著局限于所包括的實(shí)施例的范圍。
[0172]在實(shí)施例中,平臺(tái)702可以從具有一個(gè)或多個(gè)導(dǎo)航特征的導(dǎo)航控制器750接收控制信號(hào)。例如,控制器750的導(dǎo)航特征可以例如用于與用戶界面722進(jìn)行交互。在實(shí)施例中,導(dǎo)航控制器750可以是指向設(shè)備,該指向設(shè)備可以是允許用戶向計(jì)算機(jī)輸入空間(例如,連續(xù)且多維)數(shù)據(jù)的計(jì)算機(jī)硬件部件(特別是人機(jī)接口設(shè)備)。諸如圖形用戶接口(GUI)、電視和監(jiān)視器的許多系統(tǒng)允許用戶利用身體姿勢(shì)、面部表情或聲音來(lái)向計(jì)算機(jī)或電視控制并提供數(shù)據(jù)。
[0173]控制器750的導(dǎo)航特征的移動(dòng)可以通過(guò)指針、光標(biāo)、聚焦環(huán)、或在顯示器上顯示的其它視覺(jué)指示器的移動(dòng)來(lái)反映在顯示器(例如,顯示器720)上。例如,在軟件應(yīng)用716的控制下,可以將位于導(dǎo)航控制器750上的導(dǎo)航特征映射到例如在用戶界面722上顯示的虛擬導(dǎo)航特征。在實(shí)施例中,控制器750可以不是單獨(dú)的部件,而是被集成到平臺(tái)702和/或顯示器720中。然而,實(shí)施例并不局限于所述元件或者本文示出或者描述的上下文中。
[0174]在實(shí)施例中,驅(qū)動(dòng)器(未示出)可以包括使用戶能夠在被啟用時(shí)在初始引導(dǎo)之后通過(guò)觸摸按鈕來(lái)立即打開(kāi)和關(guān)閉類似電視的平臺(tái)702。當(dāng)平臺(tái)被“關(guān)閉”時(shí),程序邏輯可以允許平臺(tái)702將內(nèi)容流傳送到媒體適配器或其它內(nèi)容服務(wù)設(shè)備730或內(nèi)容遞送設(shè)備740。此外,芯片集705可以例如包括支持5.1立體聲環(huán)繞和/或高清7.1立體聲環(huán)繞的硬件和/或軟件。驅(qū)動(dòng)器可以包括對(duì)于集成圖形平臺(tái)的圖形驅(qū)動(dòng)器。在實(shí)施例中,圖形驅(qū)動(dòng)器可以包括外圍部件互連(PCI)快速圖形卡。
[0175]在各種實(shí)施例中,可以集成系統(tǒng)700中示出的任何一個(gè)或多個(gè)部件。例如,可以集成平臺(tái)702和內(nèi)容服務(wù)設(shè)備730,或者可以集成平臺(tái)702和內(nèi)容遞送設(shè)備740,或者可以例如集成平臺(tái)702、內(nèi)容服務(wù)設(shè)備730和內(nèi)容遞送設(shè)備740。在各種實(shí)施例中,平臺(tái)702和顯示器720可以是集成的單元??梢约娠@示器720和內(nèi)容服務(wù)設(shè)備730,或者可以例如集成顯示器720和內(nèi)容遞送設(shè)備740。這些示例并不意味著限制本發(fā)明。
[0176]在各種實(shí)施例中,系統(tǒng)700可以實(shí)現(xiàn)為無(wú)線系統(tǒng)、有線系統(tǒng)或者二者的組合。當(dāng)實(shí)現(xiàn)為無(wú)線系統(tǒng)時(shí),系統(tǒng)700可以包括適合于經(jīng)過(guò)諸如一個(gè)或多個(gè)天線、發(fā)射機(jī)、接收機(jī)、收發(fā)機(jī)、放大器、濾波器、控制邏輯等等的無(wú)線共享介質(zhì)進(jìn)行通信的部件和接口。無(wú)線共享介質(zhì)的示例可以包括諸如RF頻譜等等的無(wú)線頻譜部分。當(dāng)實(shí)現(xiàn)為有線系統(tǒng)時(shí),系統(tǒng)700可以包括適合于經(jīng)過(guò)諸如輸入/輸出(I/O)適配器、使I/O適配器與相對(duì)應(yīng)的有線通信介質(zhì)進(jìn)行連接的物理連接器、網(wǎng)絡(luò)接口卡(NIC)、磁盤控制器、視頻控制器、音頻控制器等等的有線通信介質(zhì)進(jìn)行通信的部件和接口。有線通信介質(zhì)的示例可以包括導(dǎo)線、電纜、金屬引線、印刷電路板(PCB)、背板、交換機(jī)結(jié)構(gòu)、半導(dǎo)體材料、雙絞線、同軸電纜、光纖等等。
[0177]平臺(tái)702可以建立一個(gè)或多個(gè)邏輯或物理通道以便通信信息。該信息可以包括媒體信息和控制信息。媒體信息可以指代代表意在用于用戶的內(nèi)容的任何數(shù)據(jù)。內(nèi)容的示例可以例如包括來(lái)自語(yǔ)音會(huì)話、視頻會(huì)議、流視頻、電子郵件(“ emai I ”)消息、語(yǔ)音郵件消息、字母數(shù)字符號(hào)、圖形、圖像、視頻、文本等等的數(shù)據(jù)。來(lái)自語(yǔ)音會(huì)話的數(shù)據(jù)可以例如是語(yǔ)言信息、靜默時(shí)段、背景噪聲、舒適噪聲、音調(diào)等等??刂菩畔⒖梢灾复硪庠谟糜谧詣?dòng)化系統(tǒng)的命令、指令或控制字的任何數(shù)據(jù)。例如,控制信息可以用于經(jīng)過(guò)系統(tǒng)路由媒體信息,或者指示節(jié)點(diǎn)按照預(yù)定的方式處理媒體信息。然而,實(shí)施例并不局限于所述元件或者在圖8中示出或描述的上下文。
[0178]如上所述,系統(tǒng)700可以體現(xiàn)在各種物理風(fēng)格或形狀因數(shù)中。圖9說(shuō)明了其中可以體現(xiàn)系統(tǒng)700的小形狀因數(shù)設(shè)備800的實(shí)施例。例如,在實(shí)施例中,設(shè)備800可以實(shí)現(xiàn)為具有無(wú)線能力的移動(dòng)計(jì)算設(shè)備。移動(dòng)計(jì)算設(shè)備可以例如指代具有處理系統(tǒng)和移動(dòng)功率源或電源的任何設(shè)備,該移動(dòng)功率源或電源例如是一個(gè)或多個(gè)電池。
[0179]如上所述,移動(dòng)計(jì)算設(shè)備的示例可以包括個(gè)人計(jì)算機(jī)(PC)、手提電腦、超級(jí)手提電腦、平板電腦、觸摸板、便攜式電腦、手持式計(jì)算機(jī)、掌上電腦、個(gè)人數(shù)字助理(PDA)、蜂窩電話、組合蜂窩電話/PDA、電視、智能設(shè)備(例如,智能電話、智能平板電腦或智能電視)、移動(dòng)互聯(lián)網(wǎng)設(shè)備(MID)、消息傳送設(shè)備、數(shù)據(jù)通信設(shè)備等等。
[0180]移動(dòng)計(jì)算設(shè)備的示例還可以包括布置為由人體穿戴的計(jì)算機(jī),例如手腕電腦、手指電腦、戒指電腦、眼鏡電腦、皮帶夾電腦、臂帶電腦、鞋子電腦、衣服電腦和其它可穿戴的電腦。例如,在實(shí)施例中,移動(dòng)計(jì)算設(shè)備可以實(shí)現(xiàn)為能夠執(zhí)行計(jì)算機(jī)應(yīng)用以及語(yǔ)音通信和/或數(shù)據(jù)通信的智能電話。盡管通過(guò)示例的方式利用實(shí)現(xiàn)為智能電話的移動(dòng)計(jì)算設(shè)備描述了一些實(shí)施例,但是可以理解的是,也可以使用其它無(wú)線移動(dòng)計(jì)算設(shè)備來(lái)實(shí)現(xiàn)其它實(shí)施例。所述實(shí)施例并不局限于這一上下文。
[0181]在一些實(shí)施例中,處理器710可以與相機(jī)722和全球定位系統(tǒng)傳感器720進(jìn)行通信。耦接到處理器710的存儲(chǔ)器712可以存儲(chǔ)計(jì)算機(jī)可讀指令,用于在軟件和/或固件實(shí)施例中實(shí)現(xiàn)圖7中示出的序列。
[0182]如圖9所示,設(shè)備800可以包括殼體802、顯示器804、輸入/輸出(I/O)設(shè)備806和天線808。設(shè)備800還可以包括導(dǎo)航特征812。顯示器804可以包括用于顯示適合于移動(dòng)計(jì)算設(shè)備的信息的任何合適的顯示單元。I/O設(shè)備806可以包括用于將信息輸入到移動(dòng)計(jì)算設(shè)備中的任何合適的I/O設(shè)備。I/O設(shè)備806的示例可以包括字母數(shù)字鍵盤、數(shù)字小鍵盤、觸摸板、輸入鍵、按鈕、開(kāi)關(guān)、搖桿開(kāi)關(guān)、麥克風(fēng)、音箱、語(yǔ)音識(shí)別設(shè)備和軟件等等。也可以通過(guò)麥克風(fēng)的方式向設(shè)備800中輸入信息。這樣的信息可以通過(guò)語(yǔ)音識(shí)別設(shè)備進(jìn)行數(shù)字化。實(shí)施例并不局限于這一上下文。
[0183]可以使用硬件元件、軟件元件或者二者的組合來(lái)實(shí)現(xiàn)各種實(shí)施例。硬件元件的示例可以包括處理器、微處理器、電路、電路元件(例如,晶體管、電阻器、電容器、電感器等等)、集成電路、專用集成電路(ASIC)、可編程邏輯器件(PLD)、數(shù)字信號(hào)處理器(DSP)、現(xiàn)場(chǎng)可編程門陣列(FPGA)、邏輯門、寄存器、半導(dǎo)體設(shè)備、芯片、微芯片、芯片集等等。軟件的示例可以包括軟件組件、程序、應(yīng)用、計(jì)算機(jī)程序、應(yīng)用程序、系統(tǒng)程序、機(jī)器程序、操作系統(tǒng)軟件、中間件、固件、軟件模塊、例程、子例程、函數(shù)、方法、過(guò)程、軟件接口、應(yīng)用程序接口(API)、指令集、計(jì)算代碼、計(jì)算機(jī)代碼、代碼段、計(jì)算機(jī)代碼段、字、值、符號(hào)或者上述的任意組合。確定是否使用硬件元件和/或軟件元件實(shí)現(xiàn)實(shí)施例,可以根據(jù)任何數(shù)量的因素而變化,例如,期望的計(jì)算速率、功率水平、耐熱性、處理周期預(yù)算、輸入數(shù)據(jù)速率、輸出數(shù)據(jù)速率、存儲(chǔ)器資源、數(shù)據(jù)總線速度以及其它設(shè)計(jì)或性能約束。
[0184]下面的句子和/或示例涉及進(jìn)一步實(shí)施例:
[0185]一個(gè)示例實(shí)施例可以是包括存儲(chǔ)在其上的指令的至少一個(gè)計(jì)算機(jī)可讀介質(zhì),如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)排除過(guò)濾落在紋理域外側(cè)的任何紋理過(guò)濾器抽頭。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)訪問(wèn)執(zhí)行紋理采樣的請(qǐng)求、確定對(duì)于所述采樣的足跡位置和尺寸、確定對(duì)于與所述足跡相關(guān)聯(lián)的每一個(gè)過(guò)濾器抽頭的一個(gè)或多個(gè)過(guò)濾器抽頭位置和權(quán)重、選擇性地修改位于紋理圖像外側(cè)的任何抽頭的權(quán)重、選擇性地修改位于所述紋理圖像外側(cè)的任何抽頭的位置,并且對(duì)于位于紋理圖像內(nèi)并且具有非零權(quán)重的每一個(gè)抽頭位置,請(qǐng)求所述紋理圖像中的顏色值、使每一個(gè)抽頭顏色乘以它的權(quán)重、對(duì)加權(quán)的顏色進(jìn)行加和以便生成過(guò)濾的顏色,并且提供最終過(guò)濾的顏色,所述最終顏色基于該過(guò)濾的顏色。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)使所述過(guò)濾的顏色除以總權(quán)重,其中最終過(guò)濾的顏色包括所述過(guò)濾的顏色除以總權(quán)重,并且提供該總權(quán)重。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)使所述過(guò)濾的顏色除以總權(quán)重,其中最終過(guò)濾的顏色包括過(guò)濾的顏色除以總權(quán)重。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,其中最終過(guò)濾的顏色包括過(guò)濾的顏色,并且進(jìn)一步包括存儲(chǔ)在其上的指令,如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)提供總權(quán)重。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,其中所述請(qǐng)求包括要被采樣的紋理圖像、要被使用的采樣器狀態(tài)以及(U,V)紋理坐標(biāo),以便對(duì)紋理進(jìn)行采樣。計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,其中每一個(gè)抽頭代表(U,V)位置和權(quán)重,以使得在所述抽頭處顏色值的加權(quán)和近似于在整個(gè)足跡上的積分。計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,其中為了選擇性地修改位于紋理圖像外側(cè)的任何抽頭的權(quán)重,所述計(jì)算機(jī)用于將權(quán)重設(shè)置到零。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,其中為了選擇性地修改位于紋理圖像外側(cè)的任何抽頭的位置,所述計(jì)算機(jī)用于選擇所述紋理中與位于紋理圖像外側(cè)的任何抽頭按照直線距離最接近的點(diǎn)。計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,進(jìn)一步包括存儲(chǔ)在其上的指令,如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)選擇性地修改位于第二紋理圖像外側(cè)的任何抽頭的權(quán)重、選擇性地修改位于所述第二紋理圖像外側(cè)的任何抽頭的位置,對(duì)于位于第二紋理圖像內(nèi)并且具有非零權(quán)重的每一個(gè)過(guò)濾器抽頭位置,請(qǐng)求所述第二紋理圖像中的顏色值,使所述第二紋理圖像內(nèi)的每一個(gè)抽頭顏色乘以它的權(quán)重,對(duì)用于所述第二紋理圖像的加權(quán)的顏色進(jìn)行加和以便提供第二過(guò)濾的顏色,并且提供第二最終過(guò)濾的顏色,所述第二最終過(guò)濾的顏色基于所述第二過(guò)濾的顏色。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,包括存儲(chǔ)在其上的指令,如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)至少部分地基于所述最終過(guò)濾的顏色和所述第二最終過(guò)濾的顏色的混合來(lái)生成片段顏色。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,進(jìn)一步包括存儲(chǔ)在其上的指令,如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)將所述片段顏色存儲(chǔ)到緩沖器中,至少部分地基于所述片段顏色來(lái)生成像素顏色;并且促使所述像素顏色的顯示。所述計(jì)算機(jī)可讀介質(zhì)可以進(jìn)一步存儲(chǔ)指令,包括存儲(chǔ)在其上的指令,如果由計(jì)算機(jī)執(zhí)行,所述指令使所述計(jì)算機(jī)對(duì)等于零的總權(quán)重做出響應(yīng)而將所述過(guò)濾的顏色設(shè)置到所述紋理中與足跡中心最接近的顏色或者預(yù)定義值。
[0186]在另一示例實(shí)施例中,提供一種在圖形處理器中排除過(guò)濾落在紋理域外側(cè)的任何紋理過(guò)濾器抽頭的方法。所述方法還可以包括:訪問(wèn)執(zhí)行紋理采樣的請(qǐng)求,對(duì)于所述采樣確定足跡位置和尺寸,對(duì)于與足跡相關(guān)聯(lián)的每一個(gè)過(guò)濾器抽頭確定一個(gè)或多個(gè)過(guò)濾器抽頭位置和權(quán)重,選擇性地修改位于紋理圖像外側(cè)的任何抽頭的權(quán)重,選擇性地修改位于紋理圖像外側(cè)的任何抽頭的位置,對(duì)于位于紋理圖像內(nèi)并且具有非零權(quán)重的每一個(gè)過(guò)濾器抽頭,請(qǐng)求所述紋理圖像中的顏色值,使每一個(gè)抽頭顏色乘以它的權(quán)重,使加權(quán)的顏色加和以便生成過(guò)濾的顏色,并且提供最終過(guò)濾的顏色,所述最終顏色基于所述過(guò)濾的顏色。所述方法還可以包括:使所述過(guò)濾的顏色除以總權(quán)重,其中所述最終過(guò)濾的顏色包括所述過(guò)濾的顏色除以總權(quán)重,并且提供所述權(quán)重。所述方法還可以包括:使所述過(guò)濾的顏色除以總權(quán)重,其中,所述最終過(guò)濾的顏色包括所述過(guò)濾的顏色除以所述總權(quán)重。所述方法還可以包括:其中所述最終過(guò)濾的顏色包括所述過(guò)濾的顏色并且提供總權(quán)重。
[0187]另一示例實(shí)施例可以是包括處理器和存儲(chǔ)器的裝置,所述處理器用于排除過(guò)濾落在紋理域外側(cè)的任何紋理過(guò)濾器抽頭,所述存儲(chǔ)器耦接到所述處理器。所述裝置可以包括所述處理器,用于訪問(wèn)執(zhí)行紋理采樣的請(qǐng)求,對(duì)于所述采樣確定足跡位置和尺寸,對(duì)于與所述足跡相關(guān)聯(lián)的每一個(gè)過(guò)濾器抽頭確定一個(gè)或多個(gè)過(guò)濾器抽頭位置和權(quán)重,選擇性地修改位于紋理圖像外側(cè)的任何抽頭的權(quán)重,選擇性地修改位于所述紋理圖像外側(cè)的任何抽頭的位置,對(duì)于位于所述紋理圖像內(nèi)并且具有非零權(quán)重的每一個(gè)過(guò)濾器抽頭位置,請(qǐng)求所述紋理圖像中的顏色值,使每一個(gè)抽頭顏色乘以它的權(quán)重,對(duì)加權(quán)的顏色進(jìn)行加和以便生成過(guò)濾的顏色,并且提供最終過(guò)濾的顏色,所述最終顏色基于所述過(guò)濾的顏色。所述裝置可以包括所述處理器,用于使所述過(guò)濾的顏色除以總權(quán)重,其中,所述最終過(guò)濾的顏色包括所述過(guò)濾的顏色除以所述總權(quán)重,并且提供所述總權(quán)重。所述裝置可以包括所述處理器,用于使所述過(guò)濾的顏色除以總權(quán)重,其中所述最終過(guò)濾的顏色包括所述過(guò)濾的顏色除以總權(quán)重。所述裝置可以包括,其中所述最終過(guò)濾的顏色包括所述過(guò)濾的顏色,并且所述處理器用于提供總權(quán)重。所述裝置可以包括,其中所述請(qǐng)求包括將被采樣的紋理圖像、將被使用的采樣器狀態(tài)以及(U,V)紋理坐標(biāo),用于對(duì)所述紋理進(jìn)行采樣。所述裝置可以包括,其中每一個(gè)抽頭代表(U,V)位置和權(quán)重,以使得所述抽頭處的顏色值的加權(quán)和近似于在整個(gè)足跡上的積分。所述裝置可以包括,其中為了選擇性地修改位于紋理圖像外側(cè)的任何抽頭的權(quán)重,所述處理器用于將所述權(quán)重設(shè)置為零。所述裝置可以包括,其中為了選擇性地修改位于紋理圖像外側(cè)的任何抽頭的位置,所述處理器用于選擇所述紋理中到位于紋理圖像外側(cè)的任何抽頭按照直線距離最接近的點(diǎn)。所述裝置可以包括操作系統(tǒng)、電池、固件和用于更新所述固件的模塊。
[0188]可以在各種硬件架構(gòu)中實(shí)現(xiàn)本文描述的圖形處理技術(shù)。例如,可以在芯片集內(nèi)集成圖形功能。替代地,可以使用分立的圖形處理器。作為再一實(shí)施例,可以由包括多核處理器的通用處理器來(lái)實(shí)現(xiàn)該圖形功能。
[0189]整個(gè)說(shuō)明書(shū)中對(duì)“一個(gè)實(shí)施例”或“實(shí)施例”的提及意味著結(jié)合所述實(shí)施例描述的特定功能、結(jié)構(gòu)或特性包括在包含在本公開(kāi)內(nèi)的至少一個(gè)實(shí)現(xiàn)中。因而,詞語(yǔ)“一個(gè)實(shí)施例”或“實(shí)施例”的出現(xiàn)不必指代相同的實(shí)施例。而且,除了所說(shuō)明的特定實(shí)施例,可以按照其它適合的形式代替特定的功能、結(jié)構(gòu)或特性,并且所有這樣的形式可以包含在本申請(qǐng)的權(quán)利要求內(nèi)。
[0190]盡管描述了有限數(shù)量的實(shí)施例,但是本領(lǐng)域的普通技術(shù)人員將理解根據(jù)其的各種修改和變形。所附權(quán)利要求書(shū)意在覆蓋落入本公開(kāi)的真實(shí)精神和范圍內(nèi)的所有這樣的修改和變形。
【權(quán)利要求】
1.一種用于保護(hù)內(nèi)容的處理器,包括: 內(nèi)容存儲(chǔ)邏輯,用于將數(shù)字內(nèi)容解析為多個(gè)部分,并且使每一個(gè)部分存儲(chǔ)在存儲(chǔ)器的相對(duì)應(yīng)的頁(yè)中;以及 保護(hù)邏輯,用于: 接收具有位于所述存儲(chǔ)器內(nèi)的目的地地址的寫入指令; 如果所述目的地地址與存儲(chǔ)所述數(shù)字內(nèi)容中的一些的存儲(chǔ)器存儲(chǔ)位置相關(guān)聯(lián),則擦除與所述存儲(chǔ)器位置相關(guān)聯(lián)的頁(yè); 如果所述目的地地址與沒(méi)有存儲(chǔ)任何所述數(shù)字內(nèi)容的另一存儲(chǔ)器存儲(chǔ)位置相關(guān)聯(lián),則允許所述寫入指令的執(zhí)行。
2.根據(jù)權(quán)利要求1所述的處理器,進(jìn)一步包括解密邏輯,用于對(duì)加密的數(shù)字內(nèi)容進(jìn)行解密,并且用于將所述數(shù)字內(nèi)容輸出到所述內(nèi)容存儲(chǔ)邏輯。
3.根據(jù)權(quán)利要求1所述的處理器,其中,每一頁(yè)具有相同的頁(yè)尺寸。
4.根據(jù)權(quán)利要求1所述的處理器,進(jìn)一步包括一個(gè)或多個(gè)貯存器,每一個(gè)貯存器用于存儲(chǔ)相對(duì)應(yīng)的頁(yè)的最后寫入地址的表示。
5.根據(jù)權(quán)利要求4所述的處理器,其中,所述最后寫入地址的所述表示包括從所述相對(duì)應(yīng)的頁(yè)的初始地址的偏移。
6.根據(jù)權(quán)利要求4-5中的任意一項(xiàng)所述的處理器,其中,所述保護(hù)邏輯用于將所述目的地地址的表示與存儲(chǔ)在所述貯存器中的一個(gè)中的所述最后寫入地址的所述表示進(jìn)行比較,以便確定與所述目的地地址相關(guān)聯(lián)的所述存儲(chǔ)器存儲(chǔ)位置是否存儲(chǔ)所述數(shù)字內(nèi)容中的一些。
7.根據(jù)權(quán)利要求4所述的處理器,其中,如果所述目的地地址大于所述頁(yè)中的一個(gè)頁(yè)內(nèi)的所述最后寫入地址,則所述保護(hù)邏輯用于確定與所述目的地地址相關(guān)聯(lián)的所述存儲(chǔ)器存儲(chǔ)位置沒(méi)有存儲(chǔ)任何所述數(shù)字內(nèi)容。
8.根據(jù)權(quán)利要求4所述的處理器,其中,如果所述目的地地址位于特定頁(yè)的開(kāi)始與所述頁(yè)中的一個(gè)頁(yè)內(nèi)的所述最后寫入地址之間,則所述保護(hù)邏輯用于確定與所述目的地地址相關(guān)聯(lián)的所述存儲(chǔ)器存儲(chǔ)位置存儲(chǔ)所述數(shù)字內(nèi)容中的一些。
9.根據(jù)權(quán)利要求8所述的處理器,其中,所述處理器用于重置所述最后寫入地址的所述表示。
10.一種用于保護(hù)內(nèi)容的處理系統(tǒng),包括: 處理器; 耦接到所述處理器的動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM);以及 耦接到所述DRAM的存儲(chǔ)器控制器,所述存儲(chǔ)器控制器用于將數(shù)字內(nèi)容寫入到所述DRAM中的多個(gè)頁(yè)中,其中,對(duì)所述處理器接收到寫入指令做出響應(yīng),所述寫入指令具有所述頁(yè)中的一個(gè)頁(yè)中的存儲(chǔ)器存儲(chǔ)位置的目的地地址,所述存儲(chǔ)器控制器用于: 如果所述存儲(chǔ)器存儲(chǔ)位置沒(méi)有存儲(chǔ)任何所述數(shù)字內(nèi)容,則執(zhí)行所述寫入指令;并且 如果所述存儲(chǔ)器存儲(chǔ)位置存儲(chǔ)所述數(shù)字內(nèi)容中的一些,則擦除所述頁(yè)。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其中,所述存儲(chǔ)器控制器包括多個(gè)寄存器,每一個(gè)寄存器用于存儲(chǔ)與相對(duì)應(yīng)的頁(yè)的最后寫入地址相對(duì)應(yīng)的最后寫入偏移。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其中,所述存儲(chǔ)器控制器用于將與所述目的地地址相對(duì)應(yīng)的目的地偏移與存儲(chǔ)在所述寄存器中的一個(gè)中的偏移進(jìn)行比較,以便確定與所述目的地地址相關(guān)聯(lián)的所述存儲(chǔ)器存儲(chǔ)位置是否存儲(chǔ)所述數(shù)字內(nèi)容中的一些。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其中,如果所述目的地偏移位于特定頁(yè)的開(kāi)始和所述最后寫入偏移之間,則所述存儲(chǔ)器控制器用于確定與所述目的地地址相關(guān)聯(lián)的所述存儲(chǔ)器存儲(chǔ)位置存儲(chǔ)所述數(shù)字內(nèi)容中的一些。
14.根據(jù)權(quán)利要求11所述的系統(tǒng),其中,如果所述存儲(chǔ)器存儲(chǔ)位置存儲(chǔ)所述數(shù)字內(nèi)容中的一些,則所述存儲(chǔ)器控制器用于重置所述最后寫入偏移。
15.根據(jù)權(quán)利要求12所述的系統(tǒng),其中,如果所述目的地偏移大于所述最后寫入偏移,則所述存儲(chǔ)器控制器用于確定與所述目的地地址相關(guān)聯(lián)的所述存儲(chǔ)器存儲(chǔ)位置沒(méi)有存儲(chǔ)任何所述數(shù)字內(nèi)容。
16.—種保護(hù)內(nèi)容的方法,包括: 將數(shù)字內(nèi)容解析為多個(gè)部分; 將每一個(gè)部分存儲(chǔ)在存儲(chǔ)器的相對(duì)應(yīng)的頁(yè)中; 將寫入指令的目的地地址與所述頁(yè)中的一個(gè)頁(yè)中的最后寫入地址進(jìn)行比較,以便確定相對(duì)應(yīng)的存儲(chǔ)器存儲(chǔ)位置是否存儲(chǔ)所述數(shù)字內(nèi)容中的一些; 如果所述相對(duì)應(yīng)的存儲(chǔ)器存儲(chǔ)位置存儲(chǔ)所述數(shù)字內(nèi)容中的一些,則擦除所述頁(yè)中的至少一個(gè)頁(yè); 如果所述相對(duì)應(yīng)的存儲(chǔ)器存儲(chǔ)位置沒(méi)有存儲(chǔ)任何所述數(shù)字內(nèi)容,則執(zhí)行所述寫入指令。
17.根據(jù)權(quán)利要求16所述的方法,進(jìn)一步包括在解析所述數(shù)字內(nèi)容之前對(duì)所述數(shù)字內(nèi)容進(jìn)行解密。
18.根據(jù)權(quán)利要求16所述的方法,其中,所述比較包括: 確定第一頁(yè)包括所述目的地地址; 如果所述目的地地址位于所述第一頁(yè)的第一寫入地址與所述第一頁(yè)的最后寫入地址之間,則確定所述相對(duì)應(yīng)的存儲(chǔ)器存儲(chǔ)位置存儲(chǔ)所述數(shù)字內(nèi)容中的一些;并且 如果所述目的地地址沒(méi)有位于所述第一頁(yè)的所述第一寫入地址與所述第一頁(yè)的所述最后寫入地址之間,則確定所述相對(duì)應(yīng)的存儲(chǔ)器存儲(chǔ)位置沒(méi)有存儲(chǔ)任何所述數(shù)字內(nèi)容。
19.根據(jù)權(quán)利要求16所述的方法,進(jìn)一步包括對(duì)所述寫入指令的執(zhí)行做出響應(yīng)來(lái)更新所述相對(duì)應(yīng)的最后寫入地址。
20.一種包括代碼的機(jī)器可讀介質(zhì),當(dāng)被執(zhí)行時(shí),所述代碼使機(jī)器執(zhí)行權(quán)利要求16-19中的任意一項(xiàng)所述的方法。
21.一種用于保護(hù)內(nèi)容的處理器,包括: 一個(gè)或多個(gè)核心;以及 保護(hù)邏輯,用于對(duì)將與到存儲(chǔ)器的第一頁(yè)的寫入指令相關(guān)聯(lián)的寫入偏移與存儲(chǔ)在第一貯存器中并且與所述第一頁(yè)的最后寫入存儲(chǔ)器存儲(chǔ)位置相關(guān)聯(lián)的最后寫入偏移的比較做出響應(yīng),確定是否解鎖到所述第一頁(yè)的寫入訪問(wèn)。
22.根據(jù)權(quán)利要求21所述的處理器,其中,所述保護(hù)邏輯用于對(duì)所述比較指示所述寫入偏移超出所述最后寫入偏移做出響應(yīng)而解鎖到所述第一頁(yè)的所述寫入訪問(wèn)并且允許所述寫入指令的執(zhí)行。
23.根據(jù)權(quán)利要求21所述的處理器,進(jìn)一步包括更新邏輯,用于對(duì)所述寫入指令的執(zhí)行做出響應(yīng)而使用所述寫入偏移來(lái)更換所述第一貯存器中的所述最后寫入偏移。
24.根據(jù)權(quán)利要求21所述的處理器,其中,所述保護(hù)邏輯用于對(duì)所述比較指示所述寫入偏移小于或等于所述最后寫入偏移做出響應(yīng)而擦除所述第一頁(yè)。
25.根據(jù)權(quán)利要求21所述的處理器,進(jìn)一步包括更新邏輯,用于對(duì)所述比較指示所述寫入偏移小于或等于所述最后寫入偏移做出響應(yīng)而重置所述第一貯存器中的所述最后寫入偏 移。
【文檔編號(hào)】G06T5/00GK104050634SQ201410183145
【公開(kāi)日】2014年9月17日 申請(qǐng)日期:2014年3月14日 優(yōu)先權(quán)日:2013年3月15日
【發(fā)明者】R·M·托特, T·福利 申請(qǐng)人:英特爾公司