国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      三維繪圖裝置的制作方法

      文檔序號:6654852閱讀:222來源:國知局
      專利名稱:三維繪圖裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種電腦繪圖裝置,特別是將一部份的繪圖內(nèi)存作為幾何引擎的資料緩沖器的三維繪圖加速器。


      圖1為一整合的三維繪圖控制裝置(integrated 3D graphicscontroller device)的方塊圖,本裝置包括指令序列(command queue)11,二維繪圖引擎(2D graphics engine)13,以及包含有幾何引擎(geometryengine)14與彩現(xiàn)引擎(rendering engine)15的三維繪圖引擎(3Dgraphics engine)。由電腦系統(tǒng)(未圖示)的AGP或PCI匯流排(bus)114下達(dá)二維或三維的繪圖指令。二維繪圖引擎13或彩現(xiàn)引擎15的輸出被傳送至一繪圖內(nèi)存(graphics memory)17內(nèi)的本地像框緩沖器(Local FrameBuffer-LFB)處171。
      一般說來,二維繪圖引擎13為一個字節(jié)區(qū)塊傳送(bit blocktransfer-BitBlt)的繪圖引擎。從現(xiàn)有技術(shù)可知,二維繪圖引擎13會選擇性地進行光域運算(raster operation)、矩形填充(rectangle fill)、色彩/字形擴張(color/font expansion)、具有圖案設(shè)計的線條繪制(line-drawing with styled pattern)、矩形修剪(rectangle clipping)、透明的字節(jié)區(qū)塊傳送(transparent BitBlt)、多重掃描線繪圖(multiplescan line drawing)、及梯形填充(trapezoid fill)。特別的是,字節(jié)區(qū)塊傳送會將一區(qū)塊的資料由某一處(出發(fā)點)傳送至另一處(目的地)。字節(jié)區(qū)塊傳送基本上分為三種由主內(nèi)存(host memory)傳送至顯示內(nèi)存(display memory)、由顯示內(nèi)存?zhèn)魉椭林鲀?nèi)存、以及由顯示內(nèi)存的某處傳送至顯示內(nèi)存的另一處。光域運算會對繪圖資料進行邏輯運算(logicaloperations)或算術(shù)運算(arithmetic operations)。我們都知道微軟(Microsoft)共定義有256種光域運算。
      如前所述,三維繪圖引擎由幾何引擎14與彩現(xiàn)引擎15所構(gòu)成。根據(jù)現(xiàn)有技術(shù),幾何引擎14接收信號線(signal line)110上的三維物體的資料,也就是座標(biāo)、顏色、Z軸深度等等,并選擇性地進行浮點運算(floatingpoint operation),其中包括由轉(zhuǎn)換電路(transformation circuitry)執(zhí)行的座標(biāo)轉(zhuǎn)換,及由打光電路(lighting circuitry)執(zhí)行的色彩打光。幾何引擎14的輸出142包括與一標(biāo)的(object)的三角形(triangle)有關(guān)的資料,也就是其頂點座標(biāo)、顏色、Z軸深度等等。如熟悉電腦繪圖這項技術(shù)的人士所知,一繪圖標(biāo)的在繪圖過程中是被分割成許多小三角形或其他形式(四角形)的繪圖元件來代表此一繪圖標(biāo)的,然后所有的繪圖處理都是以這些小三角形進行的,而每一個三角形具有三個頂點。
      另外,彩現(xiàn)引擎15亦針對每一個三角形進行由建構(gòu)引擎(setupengine)執(zhí)行的三角形設(shè)定運算(setup operation),及由光域引擎執(zhí)行的光域運算。建構(gòu)引擎負(fù)責(zé)計算并準(zhǔn)備基本圖元(primitive)繪圖所需的所有參數(shù)。所有的計算都涉及了數(shù)以百計的加減乘除。一旦三角形的建構(gòu)運算完成后,建構(gòu)引擎會將這所有的參數(shù)傳送至下游的光域引擎。
      光域引擎為一管線結(jié)構(gòu)(pipeline structure)的引擎,其包含色度引擎(shading engine)、紋理引擎(texture engine)、及后處理引擎(postengine)。色度引擎會選擇性地進行實體色度效應(yīng)(solid shading)、平面色度效應(yīng)(flat shading)、及高勞得色度效應(yīng)(Gouraud shading)。色度引擎的輸出為一連串的像素(pixel)色彩,像素色彩代表基本圖元的色度,基本圖元包含三角形。紋理引擎負(fù)責(zé)在像素上加入紋理的色澤。而后處理引擎則為此像素執(zhí)行如霧化(fogging)、α混合(alpha blending)、混色(dithering)、及最終光域運算(final raster operation)等等。
      如圖1,當(dāng)失能信號(disable signal)140觸發(fā)后,幾何引擎14被失能,而所有關(guān)于幾何引擎的運算則由電腦系統(tǒng)中的中央處理單元(CPU)來進行。在過去,由于半導(dǎo)體制造技術(shù)的限制,幾何引擎14本身即為一集成芯片(integrated chip),而彩現(xiàn)引擎15為另外一集成芯片。舉例來說,現(xiàn)有技術(shù)的個人電腦的繪圖加速器內(nèi)的繪圖芯片僅包括彩現(xiàn)引擎15。在這樣的配置情況下,中央處理單元(未圖示)必須當(dāng)作幾何引擎來運作。
      然而,由于半導(dǎo)體制造技術(shù)的改進,將彩現(xiàn)引擎15及幾何引擎14統(tǒng)合至一個繼承芯片中已成為現(xiàn)今的趨勢。統(tǒng)合的結(jié)果改善了系統(tǒng)的三維繪圖的能力,并減少了中央處理單元的工作量。
      如圖1,指令序列11的運作為,除非在未執(zhí)行的二維繪圖指令前所下達(dá)的三維繪圖指令完全處理完畢,否則其內(nèi)的二維繪圖指令并不會由指令序列11發(fā)出,并經(jīng)由信號線112傳送至二維繪圖引擎13。該指令選出的機制用于維持指令的正確順序;換句話說,二維繪圖引擎與三維繪圖引擎共用同一個指令序列11,但在某一特定時刻只有單一引擎處于可活動狀態(tài)。此方法可保證命令執(zhí)行次序的正確性。
      當(dāng)幾何引擎14致能時,彩現(xiàn)引擎15通過信號線142由幾何引擎14獲得關(guān)于三角形頂點的資料。當(dāng)幾何引擎14失能時,中央處理單元便進行幾何引擎的功能,而彩現(xiàn)引擎15通過信號線110由指令序列11獲得關(guān)于三角形頂點的資料。
      根據(jù)上述的機制,若某些時刻幾何引擎14與彩現(xiàn)引擎15的處理速度有些許不同時,其中一引擎就必須等待另外一引擎。舉例來說,若幾何引擎14比彩現(xiàn)引擎15慢,彩現(xiàn)引擎15會于幾何引擎14輸出下一筆新的頂點資料之前就完成前一筆頂點資料的處理。比如當(dāng)該電腦繪圖系統(tǒng)中有不只一個光源時,幾何引擎14會變得非常緩慢。在這種情況下,彩現(xiàn)引擎15將會閑置(idle)直到幾何引擎14再輸出新的頂點資料。反過來說,若某一時刻幾何引擎14的速度快過彩現(xiàn)引擎15,彩現(xiàn)引擎15便無法在幾何引擎14輸出下一筆新的頂點資料之前完成前一筆頂點資料的處理。比如當(dāng)需要彩現(xiàn)處理的三角形很大時,彩現(xiàn)引擎15會變得很慢。在這種情況下,幾何引擎14必須停止處理信號線110上的新指令。通常我們在此二引擎之間使用一芯片上緩沖器(on-chip buffer)16來減少相對應(yīng)于此二引擎的閑置時間。然而,在各種不同的運作情況下,此二引擎間并沒有一個固定的運作模式關(guān)系。因此,為了更有效地減少閑置時間,提供于此二引擎間的緩沖器16通常必須很大。而大型緩沖器16的費用則相當(dāng)高昂。
      本發(fā)明的目的就在于克服現(xiàn)有技術(shù)的缺點,解決幾何引擎與彩現(xiàn)引擎的工作量不均衡的問題,提供一種裝置將其中一引擎閑置的時間減至最少。
      本發(fā)明的技術(shù)方案為在繪圖內(nèi)存(SDRAM,SGRAM,或其他類型的DRAM)內(nèi)設(shè)置一幾何引擎芯片外部的資料緩沖器(Off-chi data buffer),以提供幾何引擎與彩現(xiàn)引擎間的緩沖功能。除了由幾何引擎產(chǎn)生的頂點資料之外,二維繪圖指令亦儲存于該資料緩沖器,且根據(jù)執(zhí)行次序、二維繪圖指令與對應(yīng)三維繪圖指令的頂點資料來儲存在一起。為降低對內(nèi)存頻寬(bandwidth)需求的負(fù)面沖擊,資料緩沖器的存取優(yōu)先權(quán)需設(shè)定至最低。由于繪圖內(nèi)存較便宜,資料緩沖器的尺寸可以增大許多。
      由上可知,本發(fā)明的三維繪圖裝置中個別引擎的閑置時間在最低成本的狀態(tài)下可以減至最少;這就帶來了內(nèi)存利用率高、對指令反應(yīng)快的效果。
      以下是本發(fā)明的附圖圖1為現(xiàn)有技術(shù)中整合的三維繪圖控制裝置的方塊圖;圖2為本發(fā)明所示的三維繪圖裝置方塊圖。
      下面結(jié)合附圖對本發(fā)明做進一步詳述如圖2所示,本發(fā)明的三維繪圖裝置(3D graphics device)包括有指令序列(command queue)21、二維繪圖引擎(2D graphics engine)23、及三維繪圖引擎(3D graphics engine),其中該三維繪圖引擎包括幾何引擎(geometry engine)24、外部(芯片外(off-chip))緩沖器(buffer)26、彩現(xiàn)引擎(rendering engine)25、一第一選擇器(first selector)22、一第二選擇器(second selector)28、以及一控制邏輯(controllogic)29。二維繪圖引擎23及彩現(xiàn)引擎25的輸出傳送至一繪圖內(nèi)存(graphicsmemory)27。根據(jù)本發(fā)明的一個具體實施例,一部份的繪圖內(nèi)存27被指定為資料緩沖器(data buffer)26。由于繪圖內(nèi)存27價格很低,因此緩沖器26的尺寸可以盡可能的增大。當(dāng)disable 1信號(disable 1 signal)致能,使資料緩沖器26失能時,繪圖芯片(graphics chip)即在無外部資料緩沖器26的情況下運作,因而具有前面所提到的缺點。在這種情況下,由指令序列21發(fā)出的二維繪圖指令經(jīng)由信號線212及信號線222傳送至二維繪圖引擎23。而二維繪圖引擎23的輸出233被傳送至繪圖內(nèi)存27。
      當(dāng)緩沖器26致能時,繪圖裝置運作如下由AGP或PCI匯流排(bus)產(chǎn)生的二維或三維繪圖指令經(jīng)由信號線(signal line)210傳送至指令序列21。指令序列21的功能包含指令緩沖(command buffer)及指令剖析(command parser)。二維或三維繪圖指令會經(jīng)由信號線214傳送至控制邏輯29。二維繪圖指令亦經(jīng)由信號線212傳送至選擇器22。然而,當(dāng)disable 1信號被失效而使資料緩沖器26致能時,經(jīng)由信號線212輸入至選擇器22的二維繪圖指令即宣告無效。當(dāng)idle 2信號(idle 2 signal)觸發(fā)而disable 1信號遭失效時,第一選擇器22亦接收儲存于資料緩沖器26中的二維繪圖指令263,并經(jīng)由信號線222將該二維繪圖指令輸出至二維繪圖引擎23。只有在觸發(fā)disable 1信號使資料緩沖器26失能時,信號線212上的二維繪圖指令才會通過第一選擇器22傳送至二維繪圖引擎23。
      當(dāng)信號線241上的資料為一個二維繪圖指令,并且?guī)缀我?4經(jīng)idle 1信號顯示呈閑置狀態(tài)時,在控制信號297的控制下,二維繪圖指令由控制邏輯29經(jīng)信號線291儲存至資料緩沖器26內(nèi)。也就是說,在幾何引擎24將未執(zhí)行(pending)的二維繪圖指令之前的三維繪圖指令處理完畢后,該二維繪圖指令會儲存于資料緩沖器26內(nèi)。當(dāng)disable 2信號使幾何引擎24失能時,中央處理單元(CPU)即充當(dāng)幾何引擎來運作,而關(guān)于信號線241上的三維繪圖指令的三角形頂點資料則借由控制邏輯29經(jīng)信號線295傳至第二選擇器28,并經(jīng)信號線281傳至彩現(xiàn)引擎25。當(dāng)幾何引擎24致能時,關(guān)于信號線241上的三維繪圖指令的三角形頂點資料則由控制邏輯29經(jīng)信號線293傳至幾何引擎24。
      幾何引擎24的輸出為與正處理中的三角形頂點有關(guān)的資料(參數(shù))。當(dāng)disable 1信號的觸發(fā)顯示資料緩沖器26處于失能狀態(tài)時,幾何引擎24的輸出即經(jīng)由信號線241傳送至選擇器28,再經(jīng)由信號線281傳送至彩現(xiàn)引擎25。當(dāng)disable 1信號遭失效時,幾何引擎24的輸出即經(jīng)由信號線243傳送至資料緩沖器26。如上述,資料緩沖器26根據(jù)各指令進入指令序列21的順序來儲存頂點資料與二維繪圖指令。第一裝置包括控制邏輯29中的一部分、信號291、信號243、disable 1信號(失能)。
      選擇器28經(jīng)由信號線261接收儲存于資料緩沖器26中的頂點資料。并通過信號線281將頂點資料傳送至彩現(xiàn)引擎25。待彩現(xiàn)引擎25將所有下達(dá)于二維指令前的三維指令完成處理之后,即由idle 2信號的觸發(fā)顯示其處于閑置狀態(tài)。回應(yīng)此idle 2信號的觸發(fā),儲存于資料緩沖器26內(nèi)的二維繪圖指令經(jīng)信號線263傳送至第一選擇器22,并經(jīng)由信號線222傳送至二維繪圖引擎23。此機制用來維持指令序列21中二維/三維繪圖指令的正確執(zhí)行順序。第二裝置包括控制邏輯29中的另一部分、選擇器28、選擇器22、信號263、信號261、信號222、信號281、idle 2信號(致能)、select2信號。
      值得注意的是,使用繪圖內(nèi)存27作為幾何引擎24的資料緩沖器會增加繪圖內(nèi)存頻寬(bandwidth)的需求。繪圖內(nèi)存頻寬需求的增加會稍微減緩彩現(xiàn)引擎25的運作速度。為將此減緩程度降至最少,資料緩沖器26的存取優(yōu)先權(quán)需設(shè)定至最低。另有一替代方案,即只有在無其他需求要存取繪圖內(nèi)存27時,才可以由幾何引擎24來進行存取資料緩沖器26的動作。然而實際上,內(nèi)存頻寬并非隨時處于完全使用的狀態(tài),因此根據(jù)本發(fā)明,幾何引擎24與彩現(xiàn)引擎25的閑置時間可大量地減少。
      同樣的,幾何引擎24中轉(zhuǎn)換引擎(transformation engine)與打光引擎(lighting engine)間的處理速度差異亦非常明顯。因此,在本發(fā)明的精神下,亦可提供與資料緩沖器26功能極為近似的一個外部資料緩沖器,來作為轉(zhuǎn)換引擎與打光引擎間的緩沖。
      權(quán)利要求
      1.一種三維繪圖裝置,其包含一指令序列(command queue)一二維(2D)繪圖引擎(graphics engine)、一幾何引擎(geometry engine)、與一彩現(xiàn)引擎(rendering engine),其中該指令序列按一先后順序儲存二維繪圖指令與三維繪圖指令,對應(yīng)于每一個三維(3D)繪圖指令的被處理的三角形頂點有關(guān)的資料由幾何引擎中輸出,其特征在于此裝置包含一繪圖內(nèi)存,其連接于該三維繪圖裝置的外部;一第一裝置,依該先后順序,將三角形頂點有關(guān)的資料及該二維繪圖指令儲存至該繪圖內(nèi)存內(nèi);一第二裝置,依該先后順序,由該繪圖內(nèi)存讀取三角形頂點有關(guān)的資料及該二維繪圖指令;其中對應(yīng)于各三維繪圖指令的被處理三角形頂點有關(guān)的資料被輸入至彩現(xiàn)引擎內(nèi),而該二維繪圖指令被輸入至二維繪圖引擎內(nèi)。
      2.如權(quán)利要求1所述的三維繪圖裝置,其特征在于其中只有在該幾何引擎閑置時,該二維繪圖指令才儲存于該繪圖內(nèi)存內(nèi)。
      3.如權(quán)利要求1所述的三維繪圖裝置,其特征在于其中只有在該彩現(xiàn)引擎閑置時,該二維繪圖指令才由二維繪圖引擎來執(zhí)行。
      4.如權(quán)利要求1所述的三維繪圖裝置,其特征在于其中該二維繪圖指令包含一字節(jié)區(qū)塊傳送(BitBlt)運算。
      5.一種三維繪圖裝置,其包含一指令序列、一二維繪圖引擎、一幾何引擎、與一彩現(xiàn)引擎,其中該指令序列按一先后順序儲存二維繪圖指令與三維繪圖指令,對應(yīng)于每一個三維繪圖指令的被處理三角形頂點有關(guān)的資料由幾何引擎中輸出,其特征在于此裝置包含一繪圖內(nèi)存,其連接于該三維繪圖裝置的外部;一控制邏輯,分別與指令序列及幾何引擎連接,依該先后順序,將三角形頂點有關(guān)的資料及該二維繪圖指令儲存至該繪圖內(nèi)存內(nèi),并依該先后順序,由該繪圖內(nèi)存讀取三角形頂點有關(guān)的資料及該二維繪圖指令,其中對應(yīng)于各三維繪圖指令的被處理三角形頂點有關(guān)的資料被輸入至彩現(xiàn)引擎內(nèi),而該二維繪圖指令被輸入至二維繪圖引擎內(nèi)。
      6.如權(quán)利要求5所述的三維繪圖裝置,其特征在于其中只有在該幾何引擎閑置時,該二維繪圖指令才儲存于該繪圖內(nèi)存內(nèi)。
      7.如權(quán)利要求5所述的三維繪圖裝置,其特征在于其中只有在該彩現(xiàn)引擎閑置時,該二維繪圖指令才由二維繪圖引擎執(zhí)行。
      8.如權(quán)利要求5所述的三維繪圖裝置,其特征在于其中該二維繪圖指令包含一字節(jié)區(qū)塊傳送(BitBlt)運算。
      全文摘要
      在三維繪圖系統(tǒng)中,幾何引擎與彩現(xiàn)引擎的工作量不均衡會導(dǎo)致其中一引擎閑置;本發(fā)明提供了一種將此閑置時間減至最少的三維繪圖裝置;本發(fā)明采用一部份的繪圖內(nèi)存作為幾何引擎的外部資料緩沖器,此資料緩沖器不僅儲存由幾何引擎?zhèn)鱽淼捻旤c資料,亦可儲存二維繪圖指令以確保二維及三維繪圖指令按照正確的順序執(zhí)行;由于繪圖內(nèi)存的價格不高,因此可以使用較大的資料緩沖器,如此便能顯著減少引擎閑置的時間。
      文檔編號G06F17/15GK1337656SQ01109189
      公開日2002年2月27日 申請日期2001年3月21日 優(yōu)先權(quán)日2000年8月9日
      發(fā)明者涂俊安, 蕭見忠, 白宏達(dá) 申請人:矽統(tǒng)科技股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1