TW200820132A - Frame buffer merging - Google Patents

Frame buffer merging Download PDF

Info

Publication number
TW200820132A
TW200820132A TW096118213A TW96118213A TW200820132A TW 200820132 A TW200820132 A TW 200820132A TW 096118213 A TW096118213 A TW 096118213A TW 96118213 A TW96118213 A TW 96118213A TW 200820132 A TW200820132 A TW 200820132A
Authority
TW
Taiwan
Prior art keywords
pixels
group
memory location
polygon
memory
Prior art date
Application number
TW096118213A
Other languages
English (en)
Other versions
TWI498850B (zh
Inventor
Jonah M Alben
John M Danskin
Henry Packard Moreton
Original Assignee
Nvidia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of TW200820132A publication Critical patent/TW200820132A/zh
Application granted granted Critical
Publication of TWI498850B publication Critical patent/TWI498850B/zh

Links

Description

200820132 九、發明說明: 【發明所屬之技術領域】 本發明一般而言係關於圖形電腦系統。本發明至少揭示 帶有壓縮之經延遲之訊框緩衝區歸併。 【先前技術】 一般而言,適合處理3D圖像資料之電腦系統除了傳統 CPU(中央處理單元)之外亦包括專門圖形處理器單元(或
GPU)。GPU包括經組態以處理3]0之電腦產生之物件之專 門硬體。GPU經組態以對一組資料模型及其構成"圖元"(通 常為以算術形式描述之三角多邊形)進行操作,該等"圖元" 界定物件之形狀、位置及屬性。Gpu之硬體處理該^勿 件’實施在電腦系統之顯示器上產生逼真之扣圖像所兩之 計算。 而 典型圖形渲染處理之效能在很大程度上取決於系統之底 層硬體之效能。高效能實時圖料染要求儲存鳩件資料 及構成圖元之記憶體具有高資料傳送頻寬及低等待時間。 因此’世人投人大量開發卫作以增加傳送頻寬且減少記情 體之資料存取等待時間。 ' 系統(例如,配備GPU 12 8 MB或更大)之專 用於將所需之資料饋 晶片上高速緩衝記憶 之暫存器組。較便宜 mb或更少)之此類本 因此,更為昂貴之先前技術GPU子 之圖形卡等)通常包括較大(例如, 門、昂貴、高頻寬本機圖形記憶體, 送至GPU。此種GPU通常包括較大之 體及具有非常低之資料存取等待時間 之先前技術GPU子系統包括較小(64 121173.doc 200820132 己憶體,且有些最便宜之Gpu子系統不具有本機圖 "己麽'體,而是依賴於系統記憶體以儲存圖形渲染資料。 ;上述類型之先前技術Gpu中之每—者之問題在於,系統 5己憶體(或本機圖形▲ # /、
L、尽㈣形舌己憶體)之資料傳送頻寬遠遠低於GPU 内口p之而速緩衝記恃㈣抑 一 匕體及暫存裔之資料傳送頻寬。舉例而 σ,GPU需要讀取命令流 庶 且確定訊框緩衝區 之母個像素受到每個包含場景之圖形圖元之影響之程度。 ?過程可能引起對儲存像素資料之訊框緩衝記憶體之多次 ΙΓ及Γ。雖然晶片上高速緩衝記憶體及暫存器提供非 吊低之存取等待時間,但給㈣景中之大量像素(例如, 等)使得對訊框緩衝區之大量存取 不可避免。 因此’對總體圖形㈣過程造成較大等待時間誘發之效 能惡化。對於W憶體中儲存其訊框緩衝區之㈣., 效咸惡化遠為嚴重。對於每個像素需要對複數個樣本進行 頃取及寫入之淫染過程(例如,抗混疊等)特別容易受到此 類由等待時間誘發之效能惡化之影響。 因此’需要-種能夠減少至本機圖形記憶體之通信路和 及/或至系統記憶體之通信路徑之資料傳送等待時間所導 =之侷限性之解決方案。本發明為以上需求提供新穎之解 方案。 【發明内容】
在一個實施例中,本發明實雜A 為料經㈣之訊框緩衝 之由GPU實施之方法。該方法包括存取與健存在記 121173.doc 200820132 =:置處之:群組像素(例如,一或多個拼接片)相關之 二二其中每一像素具有現有之顏色。確定多邊形覆蓋 ,像素’其中每一像素包括複數個樣本。產生對應於由 夕邊形覆蓋之樣本之覆蓋遮罩。藉由將多邊形之覆蓋遮罩 及顏色健存於記憶體位置中而更新該像素群組。之後某一 時間,將該像素群組歸併至訊框緩衝區中。 在一個實施例中,將複數個多邊形更新至像素 藉此^>1;存取與像素群組相關之複數個後續多邊形(例 =#刀覆蓋像素之後續多邊形)。對於後續多邊形中之 母一者,藉由將每-後續多邊形之個別覆蓋遮罩及個別顏 色儲存於記憶體位置中而更新該像素群組。 在一個實施例中,使用標籤值追蹤儲存群組像素之記憶 體位置之狀悲,其中根據後續多邊形更新標鐵值。此外, 可使用標籤值確定儲存該群組像素之記憶體位置何時充 滿’且藉此指示何時應當將該群組像素歸併至訊框緩衝區 中。 、方式本發明之經延遲之訊框緩衝區歸併過程可將 來自到達多邊形之更新累積至低等待時間記憶體(例如, 暫存器、高速緩衝記憶體)内之像素勒中,而非必須讀 寫入4框緩衝區且因此導致高等待時間效能惡化。因 此^經延遲之訊框缓衝區歸併過程可改善本機圖形記億體 及’二心憶體之較高資料存取等待時間所導致之瓶頸。
【貫施方式J 在將柏參考本發明之較佳實施例,該實施例之實例 121173.doc 200820132 在附圖中說明。儘管將結合較佳實施例描述本發明,作應 瞭解:希望其使本發明限於此等實施例。相反’希望本; :::盍包括在由隨附申請專利範圍界定之本發明之精神及 =内的替代方案、修改及等效物。此外,在以下本發明 :/之4、’、® “述中,陳述許多特定細節以便提供對本發 明之徹底理解。然而,熟習此項技術者將認識到,可在沒 有此等特定細節之情況下實踐本發明。在其它情況下,沒 有詳細描述孰知夕古、土 ^ . .、,、^之方法、私序、組件及電路,以便不會不 必要地混淆本發明實施例之各態樣。 符號及術語 。關於對電腦記憶體内資料位元之操作之程序、步驟、邏 輯鬼處理及其它符號表示法而提出隨後之!羊細描述之某 :邛刀^匕等描述及表示法為資料處理&術領域之技術人 員用、將’、工作之實質内容最有效地傳達給其他熟習此項 技術者之方式。在此處(且通常)設想程序、電腦執行之步 驟1輯塊、過程等為導致期望結果《自相容之步驟或指 :序列。该步驟為需,要對實體量進行實體操控之步驟。通 常(但不必要)’此等量採用電或磁信號之形式,該等信號 能夠在電腦系統中儲存、傳送、組合、比較及以另外方式 插控。主要出於通用之原因,事實有時證明,將此等信號 稱為位、值、元件、符號、字符、術語、數字等是方便 的。 然而應意識到’所有此等術語及類似術語將與適當之實 體量相關聯,且僅為靡用於μ举θ 、 且僅為應用於此專量之方便標記。除非根據 121173.doc 200820132 發明全文:而易見以另外方式具體規定’否則應瞭解在本 ,使用諸如"處理”或,,存取”或”壓縮,,或,,儲存" 語 η /以電子计异裝置之動作及過程,其將表示為電 ③二之暫存器及記憶體内之實體(電子)量之資料操控及 轉文為類似表示為電腦系統記憶體或暫存器或其它此類資 =存傳輸或顯示裝置内之物理量之其它資料。
電纖系統平台: 、 圖1展示根據本發明一個實施例之電腦系統100。電腦系 、冼1陶田繪基本電腦系、统之組件,言亥電腦系統提供用於某 種基於硬體及基於軟體之功能性之執行平台。一般而言, 電腦系統100包含至少—個cpu 101、系、统記憶體115及至 少一個圖形處理單元(GPU)110。CPU 101可經由橋接組件 105耦合至系統記憶體115,或者可經由cpu 1〇1内部之記 憶體控制(未圖示)直接耦合至系統記憶體u 5。橋接組件 1〇5(例如,北橋)可支持連接各種1/〇裝置(例如,一或多個 硬磁碟I區動器、以太網適配器、CD R〇M、等)之擴展 匯流排(例如,擴展匯流排1〇6)。Gpu 11〇耦合至顯示器 112。可視需要將一或多個額外之Gpu耦合至系統ι〇〇,以 進一步增加其計算能力。GPU 110經由橋接組件1〇5耦合至 CPU 101及系統記憶體115。系統100可實施為(例如)桌上 型電腦系統或伺服器電腦系統,其具有耦合至專用圖形演 染GPU 110之有力之通用CPU 101。在此實施例中,可包 括添加週邊匯流排、專門之本機圖形記憶體、1〇裝置及類 I2I173.doc -10- 200820132 似物之組件。類似地,系統100可實施為手持裝置(例如, 手機等)或置頂視頻遊戲控制台裝置,例如可自華盛頓
Microsoft Corporation of Redmond購得之 Xbox⑯及可自日 本東京 Sony Computer Entertainment Corporation購得之 playStation3 ⑧。
應瞭解,GPU Π 0可實施為離散組件、設計為經由連接 器(例如,AGP插槽、PCI-Express插槽等)耦合至電腦系統 100之離散圖形卡、離散積體電路晶粒(例如,直接安裝於 母板上),或貫施為包括在電腦系統晶片組組件之積體電 路b曰粒内(例如,整合於橋接晶片1Μ内)之積體GPU。另 外,對於GPU 110,可視需要包括本機圖形記憶體116,以 提供高頻寬圖形資料儲存。 本發明之實施例: 本發明之實施例實施-種用於經延遲之訊框緩衝區歸$ 之方法。在-個實施例中,GPU利用標籤值及訊框緩衝位 拼接片(frame buffe"iIe)之子部分儲存覆蓋料(⑽叫 mask)。t蓋遮罩對應於拼接片之覆蓋程度(例如,被覆】 之樣本之數目)。包含訊框緩衝區拼接片之像素可藉由弟 多邊形之顏色及該多邊形之覆蓋遮罩儲存至儲存該等㈣ 片之記憶體位置中而以壓縮狀態儲存。此外’藉由將用友 新多邊形之後續覆蓋料及用於該新多邊形之顏色儲存友 該記憶體位置中’可將額外之多邊形澄染至拼接片中。 此使得能在不必存取及寫入訊框緩衝區之情況下 邊形演染至拼接片中。舉例而言,可在拼接片充滿之前: Ϊ 21173.doc -II - 200820132 用經延遲之訊框緩衝區歸併過程將多邊形㈣至拼接片 中,在拼接片充滿時可將拼接片歸併至訊框緩衝區中。以 此方式’本务明之經延遲之訊框緩衝區歸併過程可使來自 到達多邊形。之^新累積至GPU u。之低等待時間記憶體(例 ' 如’暫存态、尚速緩衝記憶體)之有限大小内之拼接片 • 巾,而非必須讀取及寫人訊框緩衝區(例如,儲存在本機 圖形記憶體m或系統記憶體115中)且因此引起高等待時 φ 門放此心化下文在圖2中更詳細描述經延遲之訊框缓衝 • 區歸併過程。 圖2展示根據本發明一個實施例之過程2〇〇之步驟之流程 圖。如圖2描繪,過程描繪根據本發明—個實施例之由 電腦系統(例如,電腦系統1〇〇)之Gpu(例如,Gpu HO)實 施之經延遲之訊框緩衝區歸併過程中包含之操作步驟。 在圖1之例示性電腦系統100及圖3-13之情境下且參考其 而描述圖2之過程2〇〇實施例之步驟。 • 過程200開始於步驟201,其中GPU 110存取與儲存於一 記憶體位置之一群組像素相關之多邊形。在渲染過程期 間,GpU 110接收界定包含3-D場景之物件之形狀、位置及 屬性之圖το (通常為三角形多邊形)。Gpu之硬體處理圖元 且實施在顯示器112上產生逼真之3D圖像所需之計算。此 過私之至少一個部分涉及將多邊形光柵化及抗混疊至訊框 緩衝區之像素中,藉此GPU 110確定訊框緩衝區之每一像 素受包含場景之每一圖形圖元影響之程度。在一個實施例 中,GPU 11〇處理作為群組之像素,該等群組常稱為拼接 121173.doc -12- 200820132 羊、、且或拼接片通常每個拼接片包含四個像素(例 :可實施具有8、12、16或更多像素之拼接片)。在 也例中,GPU 11 〇經組態以處理兩個相鄰拼接片(例 如,包含八個像素)。 —在步驟202中,過程2〇〇確定群組中哪些像素被多邊形覆 盍:圖3中說明此關於哪些像素被多邊形覆蓋之確定,圖3 展不正針對包含八個像素之群組經受光柵化之多邊形301 2圖圖3展不各具有四個像素之並排之兩個拼接片。將 每-像素進一步劃分為四個子像素,其中每一子像素具有 個採樣點’其在圖3中描緣為”,, 、日田 τ r田、曰馮X從而獲得(例如)4\抗 -豐中使用之16個採樣點。圖4展示所得之樣本,藉此, 由多邊形覆蓋之採樣點變p 交暗而未由多邊形覆蓋之採樣點 茭日。如圖4所示,將像素標記為a、B、匸、d、E、 F、G及Η。請注意,像素啦全未被覆蓋。 在步驟203中,產& 生對應於由多邊形301覆蓋之樣本之 蓋遮罩。在一個實施例中 μ也1夕J甲,覆盍遮罩可實施為 其中群組之每個樣本各且有^, m ^ 遙罩 +谷具有一位兀。因此,16個位元可 示群組之16個樣本,j:中浙 ^ 八宁根據忒樣本疋否被覆蓋而設定 -^元。因此,在多邊形301部分覆蓋群組之像素且因此 P覆蓋該16個樣本之情況下’可藉由將多邊形3〇1之所 知之覆蓋遮罩及顏色儲存至 仔至儲存拼接片之記憶體位置中而 將此資訊(即,覆蓋程度)更新至群組中。 重要的是,應注意此更新可在_ 發生。此記憶體在針對多1 4 己=體内 對夕邊㊉光柵化m像素群組時儲 121173.doc 200820132 存像素群組。因此’可將多邊形光柵化及渲染至像素群組 中’而不必自訊框緩衝區讀取像素群組、更新像素群組及 接著將、、二更新之像素群組寫回至訊框緩衝區(例如,讀取· 修改-寫入)。 在步驟2G4中,藉由將多邊形之覆蓋遮罩及相應顏色儲 存至群組之記憶體位置中而更新像素群組。此在圖5中展 不。應注意’覆蓋遮罩儲存於由於像素狀全未被覆蓋而 導致為空之記憶體中。如圖5說明,將儲存像素群組之記 憶體位置描繪為具有四個象限之矩形5〇〇。空間之四分之 (例如,左上象限)儲存八個像.素之經壓縮之背景顏色或 先前壓縮之顏色,其中(例如)單個前-多邊形完全覆蓋所 2八個像素,且因此可將樣本⑷壓縮且儲存為每個像·素 =種顏色。右上象限儲存覆蓋遮罩朗及勒像素AM之 Γ種顏色。如上所述’覆蓋遮罩指示哪些樣本由多邊形覆 蓋。 :此方式’本發明之經延遲之訊框緩 來声到達多邊形之若干更新累積至像料組巾,同時延i 將忒等更新歸併至訊框緩衝區中之必要性。 仍參看圖2之過程200,在步驟2〇5中 -是否充滿。在一個實施例中,此二〜記憶體位置 GPTT . ^ . 疋错由監視維持於 GPU之内部記憶體内之若干標籤位元而 符於 籤位元指示記憶體位置5〇()中哪些 、、中该等標 位置未充滿,則過程·可進行至—步空。若記憶體 备教,士 乂驟206且繼續處理盥德 素群組有關之後續多邊形,且對於每 & "像 後々多邊形,執行 121I73.doc 14 200820132
=驟202至2〇4。舉例而言,圖6展示覆蓋像素群組之後續 夕邊糊,圖7展示由多邊形⑷覆蓋之像素之樣本,其 中像素八凡全未被覆蓋,且圖8展示儲存於記憶體位置$⑽ 之左了象限中之多邊形⑷之所得覆蓋遮罩8〇ι及顏色。圖 9接者展不覆蓋像素群組之後續多邊形贿,圖⑺展示由多 邊㈣1覆蓋之像素之樣本,其中像素c、d、韻^完全未 被覆蓋,且圖11展示儲存於記憶體位置500之右下象限中 之多邊物之所得覆蓋遮罩讓及顏色。. 又以此方式,本發明之經延遲之訊框緩衝區歸併過程可將 f自到達乡邊敎若干更㈣積至像素群組t,藉此延遲 :併^作之必要性’直至像素群組之記憶體充滿為止。此 減=歸併操作之總數,該等歸併操作每—者均需要對訊框 :衝&作出耗費時間之讀取、修改及寫入,而渲染給定場 :必須執彳丁此等操作。如上所述,可用後續多邊形更新像 ’、f、、且而不用迫使歸併進人用於每一多邊形之訊框緩衝 參在〔驟2G7中,當如圖i}所示,記憶體位置$⑽充滿時, 田後只夕邊形到達時,儲存於記憶體位置中之資訊恭 要解壓縮且盥新容、鑫r人t 〇而 / /、新夕邊形合成。接著可將此資訊歸併至訊框 緩衝區中。-Η -η 一,併至訊框緩衝區中,資訊即可保留 經壓縮之形式。 在一個實施例中,在將資訊歸併至訊框緩衝區中之後, GPU 110可重新壓縮像素群組之顏色資訊,且以壓縮形式 :象素群、、且儲存於低等待時間記憶體中。可使用上述覆蓋 I21173.doc -15- 200820132 遮罩及顏色壓縮此顏色資訊。此過程在圖12中說明,其中 後夕邊形1201覆蓋像素群組。在儲存於記憶體位置⑽ 中之資訊解壓縮且與多邊形⑽合成之後,將資訊重新壓 縮且儲存於記憶體位置500内’如和所示。圖13展示記 憶體位置⑽’其中第一顏色在左上象限中(例如,背景顏 色)’覆蓋料13G1及對應於覆蓋遮罩1301之第二顏色在 右上象限中’且覆蓋遮罩1302及對應於覆蓋遮罩1302之第 三顏色在左下象限中。因此’在重新I縮之後,記憶體位 置500之右下象限打開以接收另一多邊形。 應注意,若接收到完全覆蓋群組之所有像素之後續多邊 形,則每-像素中之所有樣本將具有相同之顏色,且因此 可經⑷壓縮且作為單個顏色儲存於(例如)左上象限中。 應庄思’儘官已在4χ多採樣之情境中描述本發明之實施 例,但本發明在實踐更高等級之多採樣(例如,k多採樣 等)之情形中及除抗混疊之外之應用中更加有用。 〜另外’應注意在-個實施例中,Gpu η〇使用標鐵值追 縱用於像素群組之記憶體位置⑽之狀態。此標籤值使 GPU 11 〇此夠追蹤已被更新至記憶體位置鳩中之多邊形之 牛例而",在一個實施例中,可將標籤值實施為3 :兀值’其中(例如)標籤值〇指示每個像素一種顏色之4比1 Μ縮’標鐵值1指#記憶體位置5〇〇之兩個象限被佔據之4 壓縮如圖5所不,標籤值3指示記憶體位置5〇〇之三個 象限被估據之4比1壓縮,如圖8所示,且標籤值4指示:憶 體位置500之全部四個象限被佔據之4比丄壓縮,如圖η所 121173.doc -16- 200820132 示0 圖14至16說明根據本發明替代實施例之經延遲之訊框緩 衝區歸併過程。在替代實施例中,將標籤實施為指向記憶 體位置500内之自由指針。在此實施例中,記憶體位置5⑽ 可支持多達六個更新,而不必執行與訊框緩衝區之歸併。 在此實施例中,可實施標籤值使其具有以下意義: 〇==未經壓縮;
1=完全壓縮,樣本8處之自由指針; 2 =複數個片斷,樣本12處自由指針; 3 =樣本16處之自由指針; 4 =樣本20處之自由指針; 5 -樣本2 4處之自由指針; 6 -樣本2 8處之自由指針; 7 =記憶體位置500充滿,但仍然未決。 示為儲存於記憶體位置500之樣本位置8處之q 圖14展示根據所指示樣本位置而具有顏色之像素群組。 圖15展示記憶體位置500’其中在上文圖2之討論中描述之 方案下儲存顏色資訊。圖16展示指示記憶體狀態(佔據/未 佔據)之標籤值。該標籤值指示記憶體中下一空閒位置在 何處。其允許GPU硬體知曉在何處儲存下一區塊之資料。 在更新需要四個以上實體之情況下,該標籤遞增相應 地’圖16展示根據替代實施例之標籤值,其中標籤值g 標籤值2 展示為儲存於樣本位置16處之,,2,, 古s描# 心、z ,且類似地,直至標籤 值6展示為樣本位置28處 一 0 °圖17展不記憶體位置 121173.doc -17· 200820132 500,其中在本發明替代實施例之方案下儲存顏色資訊。 因此’如圖17所示’像素群組可具有背景顏色及多達六種 新之更新之顏色,#中所得之覆蓋遮罩i7Gi损2分別儲 存於樣本位置12及8,且與覆蓋遮罩__衝相關聯之顏 色與其相鄰而儲存。 圖18至20視覺上說明覆蓋遮罩自後續到達多邊形中捕獲 更新之方式。舉例而言’圖18展示兩個樣本及其由覆蓋遮 罩1701 &不之各自顏色’且9展示兩個樣本及其由覆蓋 遮罩1702指示之各自顏色。圖2〇展示像素群組之三個連續 ,態’其說明在記憶體位置5GG内建立像素群組之最終狀 L之方式’其中狀態2〇〇2展示初始兩個樣本,狀態2刚展 示隨後兩個樣本’狀態2004展示與背景顏色合成之顏色, 且最終狀態2005描繪儲存於記憶體位置5〇〇内之所得資 訊。 ' 因此,根據替代實施例,需要16字節寫入,其未必較之 3+2字節寫人更有安文’但仍節省一次自tfi框緩衝區之讀取。 藉由#乂冰之像素或較大之像素佔據面積,替代實施例方法 =可用3位元標籤發揮作用。在上述實例中,像素群組包 :八像素佔據面積。在像素佔據面積包含16個像素群組之 h况下過私將接著以八樣本增量或32字節顆粒分配儲 存。或者’在正寫入8字節像素之情況下,如本文使用之2 X4像素群組充分起作用以產生32字節寫入。 圖21展示根據本發明一個實施例之圖解21〇〇,其說明系 先圯隐體11 5、本機圖形記憶體〗〗6及高速緩衝記憶體2 J 〇] 121173.doc 200820132 及暫存II 21G2之資料存取等待時間之間的相對差。如上所 述,本發明之經延遲之訊框緩衝區歸併過程可將來自到達 多邊形之更新累積至低等待時間記憶體(例如,暫存器 ^102冋速緩衝記憶體2101)内之像素群組中,藉此減少 讀取及寫入訊框缓衝區之次數,且藉此減少由高記憶體存 取等待時間導致之效能惡 <匕。此屬性在訊框缓衝區(例 士圖形 > 料212〇)儲存於本機圖形記憶體116中時將改善 效能,且當訊框緩衝區(例如,圖形資料2ιι〇)儲存於系統 圯te體115中時將在高得多之程度上改善效能。以此方 式,經延遲之訊框緩衝區歸併過程因此改善了由本機圖形 。己隐體116及系統記憶體丨〗5之較高資料存取等待時間導致 之瓶頸。 簡單概括而言,本發明揭示以下内容: 概心1. 種用於訊框緩衝區歸併之方法,其包含: 存取與儲存於記憶體位置之像素群組相關之多邊形,其 中泫等像素中之每一者具有現有之顏色; 確定該等像素中哪些像素被該多邊形覆蓋,其中每一像 素包含複數個樣本; 產生對應於被該多邊形覆蓋之樣本之覆蓋遮罩; 藉由將該多邊形之該覆蓋遮罩及顏色儲存於該記憶體位 置中而更新該像素群組;及 p边後將該像素群組歸併至訊框緩衝區中。 概念2·如概念i之方法,其進一步包含: 存取與該像素群組相關之複數個後續多邊形;及 121173.doc -19- 200820132 對於該等後❹邊形中之每—者,藉由將每_後續 形之個別覆蓋遮罩及個別顏色儲存於該記憶體位 新該像素群組。 Μ 概念3 ·如概念2之方法,其進一步包含: 使用標籤值追蹤儲存該像素群组之記憶體位 態;及 狀 根據該後續多邊形更新該標籤值。
概念4·如概念2之方法,其進一步包含: 確定儲存該像素群組之記憶體位置何時充滿;及 當記憶體位置充滿時將像素群組歸併至訊框緩衝區中。 概念5·如概念4之方法,其進一步包含: 在歸併之後,藉由根據像素之顏色將至少—個覆蓋遮罩 及至少—種顏色儲存至記憶體位置巾而將像素群組# 記憶體位置中。 、百主 概念6·如概念4之方法’其中該將像素群組歸併至 衝區中t組恶以減少存取該訊框緩衝區之次數。 其中該將像素群組更新至記憶體 概念7 ·如概念1之方法, 位置中導致4比1壓縮。 概 >念8、.一種儲存電腦可讀代碼之電腦可讀媒體,該電灌 可=代碼當由具㈣合至記憶體之處理器之電腦系統執右 時導致㈣腦系統實施用於經延遲之訊框緩衝區歸併之 月自可頃媒體,其包含: ' 存取與儲存於記憶體位置之像素群組相關之多邊形 中該等像素中之每一者具有現有之顏色; " 121173.doc _20· 200820132 確疋違等像素中哪些像素被該多邊形覆蓋,其中每一像 素包含複數個樣本; 產生對應於被該多邊形覆蓋之樣本之覆蓋遮罩; 藉由將"亥夕邊形之該覆蓋遮罩及顏色儲存於該記憶體位 置中而更新該像素群組; ' 存取與该像素群組相關之複數個後續多邊形; 對於5亥等後績多邊形中之每一者,藉由將每一後續多邊 _ &之個別覆蓋遮罩及個別顏色儲存於該記憶體位置中而更 新該像素群組;及 隨後將該像素群組歸併至訊框緩衝區中。 概念9·如概念8之電腦可讀媒體,其進一步包含: 使用標籤值追蹤儲存該像素群組之記憶體位置之狀 恶,及 根據该等後續多邊形更新該標籤值。 概心10·如概念8之電腦可讀媒體,其進一步包含: • 確定儲存該像素群組之記憶體位置何時充滿;及 ‘田忑隐體位置充滿時將像素群組歸併至訊框緩衝區中。 概念U·如概念10之電腦可讀媒體,其進一步包含: 在歸併之後,藉由根據像素之顏色將至少一個覆蓋遮罩 及至/種顏色儲存至記憶體位置中而將像素群組壓縮至 έ己憶體位置中。 概W 12.如概念丨〇之電腦可讀媒體,其中該將像素群組歸 併至訊框緩衝區中經組態以減少存取該訊框緩衝區之次 數0 I21173.doc 21- 200820132 概念丨3·如概念8之電腦可讀媒體,其中該將像素群組更 新至記憶體位置中導致4比1壓縮。 概念14· 一種電腦系統,其包含: 處理器; 系統記憶體,其耦合至該處理器;及 囷开/處理單元,其耦合至該處理器,其中該圖形處理器 經組態以執行電腦可讀代碼,該電腦可讀代碼導致該圖形
處理器實施一種用於經延遲之訊框緩衝區歸併之方法,該 方法包含: 存取與儲存於記憶體位置之像素群組相關之多邊形, 其中該像素中之每一者具有現有之顏色; 確定該等像素中哪些像素被該多邊形覆蓋,其中每一 像素包含複數個樣本; f生對應於被該多邊形覆蓋之樣本之覆蓋遮罩; 猎由將該多邊形之該覆蓋遮罩及顏色儲存於該記憶體 位置中而更新該像素群組; 存取與該像素群組相_之複數個後續多邊形; …對於4等後續多邊形中之每—者,藉由將每—後續多 邊士之個別覆蓋料及個別顏色儲存於該記憶體位置中而 更新該像素群組;及
Ik後將該像素群組歸併至訊框緩衝區中。 概念15·如概念14之電腦系統,其進一步包含: 位置之狀 使用私籤值追蹤儲存該像素群組之記憶 態;及 121173.doc -22- 200820132 根據该等後續多邊形更新該標籤值。 概念16·如概念14之電腦系統,其進一步包含: 確定儲存該像素群組之記憶體位置何時充滿;及 當七憶體位置充滿時將像素群組歸併至訊框緩衝區中。 概念17.如概念16之電腦系統,其進一步包含: 在歸併之後,藉由根據像素之顏色將至少一個覆蓋遮罩 及至少一種顏色儲存至記憶體位置中而將像素群組壓縮至 記憶體位置中。 概念18·如概念14之電腦系統,其進一步包含: 使用標籤值作為自由指針,以追縱儲存像素群組之記憶 體位置之狀態;及 °心 根據該等後續多邊形更新該標籤值。 概念19. >概念14之電腦系統,其中該訊框緩衝區儲存於 系統記憶體中。 概念20· #概念!4之電㈣統,其中該訊框緩衝區儲存於 耦合至該圖形處理單元之本機圖形記憶體中。 &廣義上’本發明至少揭示—種用於經延遲之訊框緩衝區 f併之方4》方法可包括存取與儲存於記憶體位置之像 素群組相關之多邊形,丨中該等像素中之每-者具有現有 j色T 4定4等像素巾哪些像素被該多邊形覆蓋,其 :母-像素包含複數個樣本。可產生對應於被該多邊形覆 —樣本之覆蓋遮罩。可藉由將該多邊形之該覆蓋遮罩及 ,色儲存於該記憶體位置中而更新該像素群組。在隨後之 ¥間’可將該像素群組歸併至訊框緩衝區中。 121173.doc -23- 200820132 已出於說明及描述之目之呈現對本發明特定實施例之以 上“述。不希望其為徹底的或將本發明限於所揭示之精確 形式,且根據以上教示,許多修改及變化是可能的。選擇 及描述貫施例,以便最佳解釋本發明之原理及其實際應 用,借此使其他熟習此項技術者能夠最佳利用本發明及適 於預期特疋用途之具有各種修改之各種實施例。希望本發 明之範疇由附加於本發明之申請專利範圍及其等效物^ 定。
【圖式簡單說明】 在附圖之各圖中以舉例而非限制之方式說明本發明,且 在附圖各圖中,相同參考元件符號指待相似元件。 圖1展示根據本發明—個實施例之電腦系統。 圖2展不根據本發明一布I每#点丨> 個貝轭例之過程之步驟之流程 圖0 之確 形覆蓋一群 圖3展示根據本發明一個實施 組中之哪些像素之說明。 圖4展示描繪根據本發 组後夺卜夕一 .個實轭例之對多邊形在一群 、/'覆盍乾圍估計之所得樣本的圖。 圖5展示根據本發明一個實施例之 於記憶體位置巾之覆蓋Μ。 ϋ組像素儲存 圖6展示根據本發明—個實施例之 續多邊形。 覆盒该群組像素之後 圖7展示根據本發 之樣本,,中有一個像二==多邊形覆蓋之像素 121173.doc -24- 200820132 圖8展示根據本菸 ,m ^ , p 本“-個貫施例之儲存於記憶體位置之 —個象”之多邊形之所得覆蓋遮罩及顏色。 之 圖9展不根據本發明—個實施例之覆蓋哕群组傻去 續多邊形。 设盍》亥群組像素之後
圖10展示根據本發 之樣本,其中有一個 明一個實施例之由多邊形覆蓋 像素完全未被覆蓋。 之像素 圖11展示根據本發明 右下象限中之多邊形之 圖12展示根據本發明 多邊形。 一個實施例之儲存於記憶體 所得覆蓋遮罩及顏色。 一個實施例之覆蓋像素群組 位置之 之後續 圖13展不根據本發明一個實施例之記憶體位置,其中第 一顏色位於記憶體位置之左上象限中。 圖14展示根據本發明替代實施例之由經延遲之訊框緩衝 區歸併過程操作之像素群組。 圖15展示在根據本發明之一個方案下儲存顏色資訊之記
憶體位置。 圖16展示根據本發明替代實施例之第二方案下之桿籤 值。 、 不紙 圖17展示在本發日月替代實施例下儲存顏色資訊之記憶體 位置之第二說明。 " 圖1 8展示根據本發明一個實施例之兩個樣本及其由其相 應之覆蓋遮罩指示之各自的顏色。 圖1 9展示根據本發明一個實施例之四個額外樣本及其由 其相應覆蓋遮罩指示之各自的顏色。 121173.doc -25- 200820132 圖20展示根據本發明一個實施例合成之作為顏色資訊之 像素群組之連續狀態。 圖21展示根據本發明一個實施例之說明系統記憶體、本 機圖形記憶體及高速缓衝記憶體及暫存器之資料存取等待 時間之間之相對差的圖。 【主要元件符號說明Ϊ 、
100 電腦系統 101 CPU 105 橋接組件 106 擴展匯流排 110 圖形處理單元(GPU) 112 顯示器 115 系統記憶體 116 本機圖形記憶體 200 過程 301 多邊形 500 矩形 501 覆蓋遮罩 601 多邊形 801 覆蓋遮罩 901 多邊形 1001 覆蓋遮罩 1201 多邊形 1301 覆蓋遮罩 121173.doc -26- 1302200820132 1701 1702 2002 2003 2004 2005 2100
2101 2102 2110
2120 A、B、C、D、E、F、G、H 覆蓋遮罩 覆蓋遮罩 覆蓋遮罩 狀態 狀態 狀態 狀態 實施例的圖 高速缓衝記憶體 暫存器 圖形資料 圖形資料 像素 121173.doc 27-

Claims (1)

  1. 200820132 十、申請專利範圍: 1 · 一種用於訊框緩衝區歸併之方法,其包含: 存取一與儲存於一記憶體位置處之一群組像素相關之 多邊形,其中該等像素中之每一者具有一現有之顏色; 確疋该多邊形覆蓋該等像素中之哪些像素,其中每一 像素包含複數個樣本; 產生一對應於由該多邊形覆蓋之該等樣本之覆蓋遮 罩; 藉由將該多邊形之該覆蓋遮罩及一顏色儲存於該記憶 體位置中而更新該群組像素;及 " 隨後將該群組像素歸併至一訊框緩衝區中。 2·如請求項1之方法,其進一步包含: 存取與'亥群組像素相關之複數個後續多邊形;及 邊續多邊形中之每-者,藉由將每—後續多 八®別復盖遮罩及—個別顏色儲存I該記憶體位 中而更新該群組像素。 置 3·如請求項2之方法,其進一步包含·· 使用一標籤值追蹤儲存 一狀熊;及 仔巧群組像素之該記憶體位置之 根據該等後續多邊形更新該標籤值。 4·如请求項2之方法,其進一步包含: 確定儲存該群組傻去 當記憶體位置充滿時,=位置何時充滿;及 衝區中。 將该群組像素歸併至該訊框緩 121173.doc 200820132 5·如凊求項4之方法,其進一步包含: /歸併之後,藉由根據該等像素之該等顏色將至少 二设蓋遮罩及至少一個顏色儲存於該記憶體位置中將 该群組像素壓縮至該記憶體位置中。 6· 2請求項4之方法,其中該將該群組像素歸併至該訊框 、、爰衝區經組態以減少對該訊框緩衝區之存取之一數目。 月求項1之方法,其中該將該群組像素更新至該記憶 體位置導致一 4比1壓縮。 8. —種儲存電腦可讀代碼之電腦可讀媒體,該電腦可讀代 碼當由一具有輕合至一記憶體之—處理器之電腦系統執 行時冷致该電腦系統實施一用於經延遲之訊框緩衝區 歸併之電腦可讀媒體,該電腦可讀媒體包含·· 存取一與儲存於一記憶體位置處之一群組像素相關之 多邊形,其中該等像素中之每一者具有一現有之顏色; 確定該多邊形覆蓋該等像素中之哪些像素,其中每— 像素包含複數個樣本; 產生一對應於由該多邊形覆蓋之該等樣本之覆蓋遮 罩; 、、、 藉由將該多邊形之該覆蓋遮罩及一顏色儲存於該記憶 體位置中而更新該群組像素; 存取與該群組像素相關之複數個後續多邊形,· 對於該等後續多邊形中之每一者,藉由將每一後續多 邊形之一個別覆蓋遮罩及一個別顏色儲存於該記憶體位 置中而更新該群組像素;及 12I173.doc 200820132 隨後將該群組像素歸# 〇 , ^ ^ 戒框緩衝區中。 9·如印求項8之電腦可讀媒體,1 使用-標籤值追縱錯存加步包含: 一狀態;及 且像素之該記憶體位置之 根據該等後續多邊形更新該標籤值。 1〇.如請求項8之電腦可讀媒體,其進—步包含: 確定儲存該群組像♦夕#七^ 素之该记憶體位置何時充滿,·及
    ®记憶體位置充滿時,將 衝區中。 亥群組像素歸併至該訊框緩 η.如請求項ίο之電腦可讀媒體,其進_步包含: 在该併之後,藉由根撼 Μ费Μ 祀據4專像素之該等顏色將至少 一個覆盍遮罩及至少一個葙& 顏色儲存於該記憶體位置中將 該群組像素壓縮至該記憶體位置中。 12·如請求項10之電腦可讀媒體,其h將該群組像素歸併 至^框緩衝區經組態以減少對該訊框緩㈣1_之 一數目。 13·如請求項8之電腦可讀掸#,苴由兮 貝炼體其中该·將該群組像素更新 至該記憶體位置導致一 4比1壓縮。 14· 一種電腦系統,其包含·· 一處理器; 一系統記憶體,其耦合至該處理器;及 -圖形處理單元’其耦合至該處理器’其中該圖形處 理組態以執行電腦可讀代碼’該代碼導致該圖形處 理器實施一用於經延遲之訊框緩衝區歸併之方法,該方 121173.doc 200820132 法 包含: 處之一群組像素相關 一者具有一現有之顏 之哪些像素,其中每 之該等樣本的覆蓋遮 存取一與儲存於一記憶體位置 之多邊形,其中該等像素中之每 色; 確定該多邊形覆蓋該等像素中 一像素包含複數個樣本; 產生一對應於由該多邊形覆蓋 罩;
    藉由將該多邊形之該覆蓋料及—顏色儲存於該記 憶體位置中而更新該群組像素; 存取與該群組像素相關之複數個後續多邊形; 對於該等後續多邊形中之每—者,藉由將每一後續 多邊形之-個別覆蓋遮罩及一個別顏色儲存於該記憶 體位置中而更新該群組像素;及 隨後將該群組像素歸併至一訊框緩衝區中。 15.如請求項14之電腦系統,其進一步包含: 使用一標籤值追蹤儲存該群組像素之該記憶體位置之 一狀態;及 根據該等後續多邊形更新該標籤值。 16·如請求項14之電腦系統,其進一步包含: 確定儲存該群組像素之該記憶體位置何時充滿;及 當記憶體位置充滿時’將該群組像素歸併至該訊框緩 衝區中。 17·如請求項16之電腦系統,其進一步包含: 121173.doc 200820132 在該歸併之後,藉由根據該等像素之該等顏色將至少 個覆蓋遮罩及至少一個顏色儲存於該記憶體位置中將 該群組像素壓縮至該記憶體位置中。 18. 如請求項14之電腦系統,其進一步包含·· 使用-標籤值作為-自由指針而追縱儲存該群組像素 之该記憶體位置之一狀態;及 、 根據該等後續多邊形更新該標籤值。 19. 如请求項14之電腦系統,其中該訊框緩衝區 統記憶體中。'糸 1如請求項U之電腦系統,其中該訊框緩衝區儲存 至該圖形處理單元之一本機圖形記憶體中。 、輕曰
    121173.doc
TW096118213A 2006-05-22 2007-05-22 訊框緩衝區歸併的方法、電腦可讀取記憶體、與電腦系統 TWI498850B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US80274606P 2006-05-22 2006-05-22

Publications (2)

Publication Number Publication Date
TW200820132A true TW200820132A (en) 2008-05-01
TWI498850B TWI498850B (zh) 2015-09-01

Family

ID=39022709

Family Applications (2)

Application Number Title Priority Date Filing Date
TW096118198A TW200820131A (en) 2006-05-22 2007-05-22 Frame buffer merging
TW096118213A TWI498850B (zh) 2006-05-22 2007-05-22 訊框緩衝區歸併的方法、電腦可讀取記憶體、與電腦系統

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW096118198A TW200820131A (en) 2006-05-22 2007-05-22 Frame buffer merging

Country Status (2)

Country Link
CN (2) CN101114382B (zh)
TW (2) TW200820131A (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200820131A (en) * 2006-05-22 2008-05-01 Nvidia Corp Frame buffer merging
GB0922126D0 (en) * 2009-12-17 2010-02-03 Advanced Risc Mach Ltd Graphics processing systems
US9530189B2 (en) 2009-12-31 2016-12-27 Nvidia Corporation Alternate reduction ratios and threshold mechanisms for framebuffer compression
US9591309B2 (en) 2012-12-31 2017-03-07 Nvidia Corporation Progressive lossy memory compression
US9607407B2 (en) 2012-12-31 2017-03-28 Nvidia Corporation Variable-width differential memory compression
US10043234B2 (en) 2012-12-31 2018-08-07 Nvidia Corporation System and method for frame buffer decompression and/or compression
US9832388B2 (en) 2014-08-04 2017-11-28 Nvidia Corporation Deinterleaving interleaved high dynamic range image by using YUV interpolation
KR102275712B1 (ko) * 2014-10-31 2021-07-09 삼성전자주식회사 렌더링 방법, 렌더링 장치 및 전자 장치
CN105045726B (zh) * 2015-08-10 2019-10-11 Tcl集团股份有限公司 一种基于并行计算的图片操作方法及系统
CN113473226B (zh) * 2021-08-09 2023-02-14 深圳软牛科技有限公司 提高视频渲染效率的方法、装置、计算机设备及存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5684939A (en) * 1993-07-09 1997-11-04 Silicon Graphics, Inc. Antialiased imaging with improved pixel supersampling
US5990904A (en) * 1995-08-04 1999-11-23 Microsoft Corporation Method and system for merging pixel fragments in a graphics rendering system
US6128000A (en) * 1997-10-15 2000-10-03 Compaq Computer Corporation Full-scene antialiasing using improved supersampling techniques
JP2001016593A (ja) * 1999-06-25 2001-01-19 Mitsubishi Electric Corp 画像復号表示装置
US6518974B2 (en) * 1999-07-16 2003-02-11 Intel Corporation Pixel engine
US6529201B1 (en) * 1999-08-19 2003-03-04 International Business Machines Corporation Method and apparatus for storing and accessing texture maps
JP2002328846A (ja) * 2001-02-20 2002-11-15 Sony Computer Entertainment Inc コピー管理システム,クライアント端末装置の情報処理プログラムが記憶されたコンピュータ読み取り可能な記憶媒体,管理サーバ装置の情報処理プログラムが記憶されたコンピュータ読み取り可能な記憶媒体,クライアント端末装置の情報処理プログラム,管理サーバ装置の情報処理プログラム,コピー管理方法,クライアント端末装置の情報処理方法、及び管理サーバ装置の情報処理方法
CN1200396C (zh) * 2001-04-04 2005-05-04 矽统科技股份有限公司 在电脑绘图描绘时进行像素数据压缩的方法
US7564460B2 (en) * 2001-07-16 2009-07-21 Microsoft Corporation Systems and methods for providing intermediate targets in a graphics system
US6937244B2 (en) * 2003-09-23 2005-08-30 Zhou (Mike) Hong Apparatus and method for reducing the memory traffic of a graphics rendering system
TW200820131A (en) * 2006-05-22 2008-05-01 Nvidia Corp Frame buffer merging

Also Published As

Publication number Publication date
CN101114382B (zh) 2010-09-01
CN101114381B (zh) 2012-02-22
TW200820131A (en) 2008-05-01
TWI498850B (zh) 2015-09-01
CN101114382A (zh) 2008-01-30
CN101114381A (zh) 2008-01-30

Similar Documents

Publication Publication Date Title
TW200820132A (en) Frame buffer merging
KR100908779B1 (ko) 프레임 버퍼 병합
US11113788B2 (en) Multi-space rendering with configurable transformation parameters
US7456835B2 (en) Register based queuing for texture requests
TWI243987B (en) An apparatus and method for facilitating memory data access with generic read/write patterns
US9406149B2 (en) Selecting and representing multiple compression methods
US7916155B1 (en) Complementary anti-aliasing sample patterns
US8760455B2 (en) Restart index that sets a topology
US20100079454A1 (en) Single Pass Tessellation
US9153209B2 (en) Method and system for generating a displacement map from a normal map
US8271734B1 (en) Method and system for converting data formats using a shared cache coupled between clients and an external memory
TW200818054A (en) Tile based precision rasterization in graphics pipeline
US8624910B2 (en) Register indexed sampler for texture opcodes
CN111062858A (zh) 高效的提前渲染方法、装置及计算机存储介质
US6664971B1 (en) Method, system, and computer program product for anisotropic filtering and applications thereof
US9679530B2 (en) Compressing graphics data rendered on a primary computer for transmission to a remote computer
EP1828989A1 (en) An efficient interface and assembler for a graphics processor
KR20190109396A (ko) 압축된 자원에 셰이더의 기입
US6756989B1 (en) Method, system, and computer program product for filtering a texture applied to a surface of a computer generated object
JP4532746B2 (ja) 3dパイプラインを使用したストレッチ・ブリッティングのための方法および装置
US8310482B1 (en) Distributed calculation of plane equations
US6308237B1 (en) Method and system for improved data transmission in accelerated graphics port systems
TW200809691A (en) A graphics processing unit and a method of processing border color information
US8427496B1 (en) Method and system for implementing compression across a graphics bus interconnect
US8489911B1 (en) Hardware WCK2CK training engine using meta-EDC sweeping and adjustably accurate voting algorithm for clock phase detection