包括對數(shù)和反對數(shù)單元的圖形照明引擎的制作方法
【專利摘要】本發(fā)明公開了一種基于多個照明因子產(chǎn)生照明值的裝置和方法。照明加速器首先將照明因子的環(huán)境部分、漫射光部分、和鏡面光部分轉(zhuǎn)換到對數(shù)域中。接著在照明因子已被轉(zhuǎn)換之后,數(shù)據(jù)組合單元在照明因子進行操作。然后,例如反對數(shù)處理將照明因子從對數(shù)域轉(zhuǎn)換回。將照明因子轉(zhuǎn)換到對數(shù)域中由利用使用均基于二的冪的系數(shù)的線性方程完成,并因此易于計算。而且,當在對數(shù)域中時,照明因子的鏡面光部分通過使用截斷的部分乘積樹的專用乘法器操作,從而節(jié)省了面積和功率且僅具有極少量的誤差。
【專利說明】包括對數(shù)和反對數(shù)單元的圖形照明引擎
【技術(shù)領(lǐng)域】
[0001]公開的技術(shù)涉及三維圖形,并且更具體地涉及包括用于執(zhí)行照明計算的對數(shù)和反對數(shù)單元的圖形照明引擎。
【背景技術(shù)】
[0002]著色和紋理映射是圖1所示的3D圖形流水線的最計算密集型和耗電的級(stage)。紋理映射中的功耗主要在存儲器訪問中被耗散。在幾何處理中,照明計算占用幾何變換時鐘周期的83%。
[0003]照明計算確定所渲染的圖元中的每個像素的顏色強度。照明是光通量(所感知的光功率的測量)從光源通過直接和間接路徑的傳輸,并可被調(diào)整以反映眼睛對不同波長的光的不同敏感度。照明指的是材料和光源之間的交互作用,從而確定每個像素的顏色強度。著色基于照明和照明模型確定像素的顏色。
[0004]簡化且廣泛使用的用于照明的模型被稱為馮氏(Phong)照明方程,該方程描述了就環(huán)境、漫射、和鏡面分量而言的反射光強度并且它針對每個R、G、B分量和針對每個光源來計算。方程為如下給出:
【權(quán)利要求】
1.一種裝置,包括: 輸入端,所述輸入端用于接收表示照明因子的多個數(shù); 照明加速器,所述照明加速器耦合至輸入端并且構(gòu)造成基于所接收的照明因子產(chǎn)生照明值,所述照明加速器包括: 多個對數(shù)單元,至少一個對數(shù)單元用于照明引擎的環(huán)境部分、漫射光部分、和鏡面光部分的每一個; 多個數(shù)據(jù)組合單元,至少一個數(shù)據(jù)組合單元用于環(huán)境部分、漫射光部分、和鏡面光部分的每一個; 多個反對數(shù)單元,至少一個反對數(shù)單元用于照明引擎的環(huán)境部分、漫射光部分、和鏡面光部分的每一個。
2.如權(quán)利要求1所述的裝置,其特征在于,用于照明引擎的鏡面光部分的至少一個數(shù)據(jù)組合單元是乘法器。
3.如權(quán)利要求2所述的裝置,其特征在于,所述乘法器為包括經(jīng)截斷的部分乘積樹的Booth編碼的定點乘法器。
4.如權(quán)利要求3所述的裝置,其特征在于,所述乘法器為構(gòu)造成計算具有8.23b x8.23b結(jié)構(gòu)的定點乘法的32位x32位乘法器。
5.如權(quán)利要求4所述的裝置,進一步包括截斷設(shè)施,在所述截斷設(shè)施中乘法器中的具有16.46b結(jié)構(gòu)的中間結(jié)果被截斷為16.16b。
6.如權(quán)利要求3所述的裝置,其特征在于,由于截斷引起的最大誤差為2_16。
7.如權(quán)利要求1所述的裝置,其特征在于,用于照明引擎的漫射光部分的數(shù)據(jù)組合單元是加法器的組合。
8.如權(quán)利要求1所述的裝置,其特征在于,多個對數(shù)單元中的一個包括: 輸入端,所述輸入端用于接收在O到I之間的單精度浮點數(shù); 線性插值器,所述線性插值器構(gòu)造成逼近所接收的數(shù)的對數(shù);以及 輸出端,所述輸出端構(gòu)造成輸出所接收的數(shù)的對數(shù)逼近。
9.如權(quán)利要求8所述的裝置,其特征在于,所述對數(shù)逼近被輸出為定點數(shù)。
10.如權(quán)利要求9所述的裝置,其特征在于,所述定點數(shù)包括符號位、作為整數(shù)部分的八個位、和作為小數(shù)部分的23個位。
11.如權(quán)利要求8所述的裝置,其特征在于,所述線性插值器包括五個單獨的區(qū)間,并且五個區(qū)間中的一個特定區(qū)間用于根據(jù)所接收的數(shù)的值逼近所述數(shù)的對數(shù)。
12.如權(quán)利要求11所述的裝置,其特征在于,根據(jù)所接收的數(shù)包括根據(jù)所接收的浮點數(shù)的尾數(shù)的值。
13.如權(quán)利要求11所述的裝置,其特征在于,多個對數(shù)單元中的一個包括: 范圍選擇器,所述范圍選擇器構(gòu)造成確定使用五個區(qū)間中的哪一個特定區(qū)間。
14.如權(quán)利要求13所述的裝置,其特征在于,到范圍選擇器的輸入為所接收的數(shù)的尾數(shù)的高三位。
15.如權(quán)利要求11所述的裝置,其特征在于,基于多個系數(shù)確定線性插入器的五個單獨的區(qū)間。
16.如權(quán)利要求15所述的裝置,其特征在于,所述多個系數(shù)均為2的冪,并且采用移位電路和選擇器實現(xiàn)。
17.如權(quán)利要求1所述的裝置,其特征在于,多個反對數(shù)單元中的一個包括: 輸入端,所述輸入端用于接收包括符號部分、整數(shù)部分、和小數(shù)部分的定點數(shù),并且其中小數(shù)部分具有在O到I之間的值; 反對數(shù)線性插值器,所述反對數(shù)線性插值器構(gòu)造成由定點數(shù)的小數(shù)部分逼近浮點數(shù)的尾數(shù),并且導出浮點數(shù)的指數(shù);以及 輸出端,所述輸出端構(gòu)造成輸出經(jīng)逼近的尾數(shù)和所導出的指數(shù)的表示。
18.如權(quán)利要求17所述的裝置,其特征在于,所述線性插值器包括四個單獨的區(qū)間,并且四個區(qū)間中的一個特定區(qū)間用于根據(jù)所接收的定點數(shù)的值逼近所述浮點數(shù)的尾數(shù)。
19.如權(quán)利要求17所述的裝置,其特征在于,多個反對數(shù)單元中的一個包括: 范圍選擇器,所述范圍選擇器構(gòu)造成確定使用四個區(qū)間中的哪一個特定區(qū)間。
20.如權(quán)利要求18所述的裝置,其特征在于,基于多個系數(shù)確定線性插入器的四個單獨的區(qū)間。
21.如權(quán)利要求20所述的裝置,其特征在于,所述多個系數(shù)均為2的冪,并且采用移位電路和選擇器實現(xiàn)。
22.—種方法,包括: 接收表示照明因子的多個數(shù); 基于所接收的照明因子通過如下步驟在照明加速器中產(chǎn)生照明值: 將環(huán)境部分照明因子、漫射部分照明因子、和鏡面部分照明因子轉(zhuǎn)換到對數(shù)域中; 組合用于環(huán)境部分、漫射部分、和鏡面部分中的每一個的因子;以及利用反對數(shù)單元將用于環(huán)境部分、漫射部分、和鏡面部分中的每一個的經(jīng)組合的因子轉(zhuǎn)換回初始域。
23.如權(quán)利要求22所述的方法,其特征在于,組合用于鏡面部分的因子包括: 利用具有經(jīng)截斷的部分乘積樹的Booth編碼的定點乘法器將鏡面因子相乘;以及 將部分乘積樹結(jié)果的中間結(jié)果截斷成鏡面因子的最終輸出。
24.如權(quán)利要求23所述的方法,其特征在于,進一步包括將兩個32b數(shù)一起相乘并且產(chǎn)生以8.23b χ8.23b形式的輸出。
25.如權(quán)利要求24所述的方法,其特征在于,進一步包括將乘法器中的具有16.46b結(jié)構(gòu)的中間結(jié)果截斷為16.16b。
26.如權(quán)利要求22所述的方法,其特征在于,將環(huán)境部分照明因子、漫射部分照明因子、和鏡面部分照明因子轉(zhuǎn)換到對數(shù)域中包括: 接收包括符號部分、整數(shù)部分、和小數(shù)部分的單精度浮點輸入數(shù),并且其中小數(shù)部分具有在O到I之間的值; 利用線性插值器逼近所述輸入數(shù)的對數(shù);以及 產(chǎn)生經(jīng)逼近的對數(shù)的輸出。
27.如權(quán)利要求26所述的方法,其特征在于,所述線性插值器包括五個單獨的區(qū)間,并且五個區(qū)間中的一個特定區(qū)間用于根據(jù)輸入數(shù)的值逼近所述數(shù)的對數(shù)。
28.如權(quán)利要求27所述的方法,進一步包括: 基于所述輸入數(shù)的尾數(shù)部分的高三位來選擇將使用五個區(qū)間中的哪一個特定區(qū)間。
29.如權(quán)利要求22所述的方法,其特征在于,利用反對數(shù)單元將用于環(huán)境部分、漫射部分、和鏡面部分中的每一個的經(jīng)組合的因子轉(zhuǎn)換回初始域包括: 接收包括符號部分、整數(shù)部分、和小數(shù)部分的定點數(shù),并且其中小數(shù)部分具有在輸入處的在O到I之間的值; 由定點數(shù)的小數(shù)部分逼近浮點數(shù)的尾數(shù),并且利用線性插值器導出浮點數(shù)的指數(shù);以及 產(chǎn)生表示經(jīng)逼近的反對數(shù)的輸出。
30.如權(quán)利要求29所述的方法,其特征在于,所述線性插值器包括四個單獨的區(qū)間,并且四個區(qū)間中的一個特定區(qū)間用于根據(jù)所接收的定點數(shù)的值逼近所述定點數(shù)的尾數(shù)。
31.如權(quán)利要求30所述的方法,其特征在于,進一步包括僅利用移位器和選擇器導出用于特定區(qū)間的至少一個系數(shù)。
32.如權(quán)利要求31所述的方法,其特征在于,至少一個系數(shù)為二的冪。
33.一種方法,包括: 在便攜式設(shè)備中檢測輸入機構(gòu)的動作; 產(chǎn)生用于基于所述動作產(chǎn)生照明值的請求; 在便攜式設(shè)備上的圖形處理器中接收表示照明因子的多個數(shù); 基于所接收的照明因子通過如下步驟在照明加速器中產(chǎn)生照明值: 將環(huán)境部分照明因子、漫射部分照明因子、和鏡面部分照明因子轉(zhuǎn)換到對數(shù)域中; 組合用于環(huán)境部分、漫射部分、和鏡面部分中的每一個的因子;以及利用反對數(shù)單元將用于環(huán)境部分、漫射部分、和鏡面部分中的每一個的經(jīng)組合的因子轉(zhuǎn)換回初始域;以及 至少部分地利用所產(chǎn)生的照明值在便攜式設(shè)備的顯示器上輸出圖像。
34.如權(quán)利要求33所述的方法,其特征在于,將環(huán)境部分照明因子、漫射部分照明因子、和鏡面部分照明因子轉(zhuǎn)換到對數(shù)域中包括: 接收包括符號部分、整數(shù)部分、和小數(shù)部分的單精度浮點輸入數(shù),并且其中小數(shù)部分具有在O到I之間的值; 利用線性插值器逼近所述輸入數(shù)的對數(shù);以及 產(chǎn)生經(jīng)逼近的對數(shù)的輸出。
35.如權(quán)利要求34所述的方法,其特征在于,所述線性插值器包括五個單獨的區(qū)間,并且五個區(qū)間中的一個特定區(qū)間用于根據(jù)輸入數(shù)的值逼近所述數(shù)的對數(shù)。
36.如權(quán)利要求33所述的方法,其特征在于,利用反對數(shù)單元將用于環(huán)境部分、漫射部分、和鏡面部分中的每一個的經(jīng)組合的因子轉(zhuǎn)換回初始域包括: 接收包括符號部分、整數(shù)部分、和小數(shù)部分的定點數(shù),并且其中小數(shù)部分具有在輸入處的在O到I之間的值; 由定點數(shù)的小數(shù)部分逼近浮點數(shù)的尾數(shù),并且利用線性插值器導出浮點數(shù)的指數(shù);以及 產(chǎn)生表示經(jīng)逼近的反對數(shù)的輸出。
37.如權(quán)利要求36所述的方法,其特征在于,所述線性插值器包括四個單獨的區(qū)間,并且四個區(qū)間中的一個特定區(qū)間用于根據(jù)所接收的定點數(shù)的值逼近該定點數(shù)的尾數(shù)。
38.如權(quán)利要求37所述的方法,進一步包括僅利用移位器和選擇器導出用于特定區(qū)間的至少一 個系數(shù)。
【文檔編號】G06F17/00GK104011706SQ201180076064
【公開日】2014年8月27日 申請日期:2011年12月31日 優(yōu)先權(quán)日:2011年12月31日
【發(fā)明者】F·謝赫, S·馬修, R·克里西那莫西 申請人:英特爾公司