TW200818054A - Tile based precision rasterization in graphics pipeline - Google Patents
Tile based precision rasterization in graphics pipeline Download PDFInfo
- Publication number
- TW200818054A TW200818054A TW096126076A TW96126076A TW200818054A TW 200818054 A TW200818054 A TW 200818054A TW 096126076 A TW096126076 A TW 096126076A TW 96126076 A TW96126076 A TW 96126076A TW 200818054 A TW200818054 A TW 200818054A
- Authority
- TW
- Taiwan
- Prior art keywords
- image
- imaging
- level
- precision
- pixels
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
Description
200818054 九、發明說明: 【發明所屬之技術領域】 本發明-般而言係關於硬體加速圖像電腦系統。 【先前技術】 電腦效能之最近進展已使圖像系統能夠使用個人電腦、 家用視訊遊戲電腦、手持裝置等提供更逼真之圖像影像。 在此類圖像糸統中,盡| ^十&加^ + τ轨仃夕個程序以向系統螢幕”顯像,,或 繪製圖像圖元。”圖像圖元,,為圖像圖片之基本組成部分, 諸如頂,點夕邊形等。經顯像之影像由此等圖像圖元之組 合形成。可利用許多程序執行3_D圖像顯像。 已研I出夕種專用圖像處理單元(例如,GPU等)以最佳 化執=圖像顯像程序所需之計算。咖經組態以高速操作 且通系併入有-或多個顯像管線。每一管線包括多個基於 更體之功月b單元,該等功能單元經最佳化以高速執行圖像 指令/資料’其中將指令/資料饋入至管線之前端中,且於 e線之後端處出現計算結果。Gpu之基於硬體之功能單 70决取β己彳思體、拿刀體等經最佳化以對於低級圖像圖元 (例如包a點"、”線"、"三角形,,等)操作且產生經即時 顯像之3 -D影像。 _使用光栅顯示技術產生經即時顯像之3_d影像。光拇顯 =技術廣泛用於電腦圖像系統中,且一般指代組成影像之 夕\像素之拇格文圖像圖元影響的機制。對於每個圖元, -型成像系統-般逐像素步進,且按照圖元之貢獻確定是 否將』像給^像素或將其寫人訊框緩衝H或像素映射 122688.doc 200818054 中。此又確定如何將資料寫入代表每個像素之顯示緩衝 器。 已研發出各種追蹤演算法(traversal alg〇rithm)及各種成 像方法,用於以覆蓋組成給定3-D場景之圖元内所有像素 之方式自基於圖像圖元之描述計算為基於像素之描述(例 如,對於每個圖元進行逐像素成像)。 典型之解決方案涉及以單向方式藉由系統地逐行步進越 過場景(例如,自左至右)而產生像素,且訪問該場景之每 像素。按妝組成该場景之各個圖元之貢獻確定每個像素 之覆蓋度。其它傳統之解決方案涉及利用每像素評估技術 而精密評估組成顯示器之像素中之每一者,且確定哪些像 素由哪些圖元覆蓋。 一旦圖元被成像為其組成像素,隨即接著在成像級隨後 之官線級中處理此等像素,其中執行顯像操作。一般而 言,此等顯像操作根據組成場景之圖元之覆蓋度向顯示器 之像素中之每一者分配顏色。亦根據分配於圖元之紋理映 射資訊、光照資訊等確定每像素之顏色。 然而,先前技術3-D顯像結構在符合處理當今應用之曰 盈複雜之3-D場景之能力方面存在問題。電腦螢幕現通常 具有1920x1200個像素或更大之螢幕解析率。先前技術成 像解決方案愈來愈成為3-D顯像過程之瓶頸。由於顯示螢 幕之尺寸不可動搖地增加至(例如920個像素寬或更大, 因而先4技術之用於成像之逐行步進及每像素評估解決方 案愈來愈需要更大之資源以處理計算負荷。為了處理此類 122688.doc 200818054 幕尺寸GPU之成像資源需要在每時鐘週期基礎上處 理較大數目之每圖元評估操作(例如,多邊形邊緣等式), 且需要每圖元評估操作處理相應較大數目之像素。因此, 八1之先%技術GPU不具有足夠之成像資源以符合大螢幕 尺寸且同時料可接受之即時Μ顯像效能。 a力3 D顯像效月包之傳統方法(例如,增加時鐘速度)具 . f諸如增加功率消耗及增加由GPU積體電路晶粒產生之熱 〇 *之負面影響。用於增加效能之其它方法(例如併入較大 數目之並行執行#元以並行執行Gpu操作)具有諸如增加 積體電路晶粒尺寸、減少GPU製造過程之產率、增加功率 需求等負面影響。 因此,需要一種成像過程,其能夠符合圖像應用需求之 要求且提供增加之效能,而不會招致諸如功率消耗增加及/ 或製作產率降低之不利結果。 【發明内容】 本發明實施例提供一種用於成像過程之方法及系統,其 旎夠符合圖像應用需求之要求且提供增加之效能,而不會 招致諸如功率消耗增加及/或製作產率降低之不利結果。 , 在一個實施例中,本發明實施為一種用於在圖像處理器 • 之光柵級中進行基於方塊之精度之成像的方法。該方法包 括接收圖像圖元以於圖像處理器之光柵級中成像,以及以 第一水平精度成像圖像圖元以產生複數個像素方塊。接著 以第二水平精度成像該等方塊,以產生覆蓋之像素。接著 輸出該等覆蓋之像素,以於圖像處理器之隨後級中進行顯 122688.doc 200818054 像操作。第一水平精度通常高於第二水平精度,以使得用 於以第一水平精度處理該複數個方塊之整數值大於用於以 第二水平精度處理複數個像素之整數值。 以此方式,可根據需要處理之各個像素或樣品之數目調 節所需精度。舉例而言,在一個實施例中,以第一水平精 度成像圖像圖元,以處理組成螢幕影像之多個像素。相應 地,在一個實施例中,以第二水平精度成像圖像圖元,以 處理組成該複數個方塊中之每一者之複數個像素。 藉由此種做法,本發明實施例有效利用GPU之成像資源 在每時鐘週期基礎上處理每圖元評估操作(例如,多邊形 邊緣等式),以有效符合大螢幕尺寸且同時維持可接受之 即時3_D顯像效能。 【實施方式】 現將詳細參看本發明之較佳實施例,附圖中說明該等較 佳實施例之實例。儘管將結合較佳實施例描述本發明,但 將瞭解不希望其將本發明限於此等實施例。相反,希望本 發明涵蓋可包含在隨附申請專利範圍中所界定之本發明精 神及範疇内之替代物、修改及均等物。此外,在本發明實 施例之以下詳細描述中,陳述多個特定細節以提供對本發 明之徹底理解。然而,普通熟習此項技術者將認識到可在 不存在此等特定細節之情況下實踐本發明。在其它例子 中,未詳細描豸熟知之方法、程序、㈣及電路以免不必 要地混淆本發明實施例之態樣。 符號及術語 122688.doc 200818054 自電腦記憶體内對資料位元所進行之操作的程序、牛 :的苹邏:塊、處理及其他符號表示之角度展現以下㈣ 部分。此等描述及表示為熟習資料處理技術者用 =作品實質最有效傳達至其它熟習此項技術者的方 \転序、電腦執行步驟、邏輯塊、處理等在此處且一般 被⑽為疋導致希望結果之自相容步驛或指令序列。該等牛 驟為需要對於實體量作出實體操作之步驟。通常(儘管: 必要),此等量採用能在電腦系統中存儲、傳遞、組合、 比車乂及以其他方式操縱之電信號或磁信號的形式。已多次 證實將此等信號稱為位元、值、元素、符號、字符、項^ 數字或類似形式是便利的,主要因為常見用法之緣故。 然而’應記住所有此等及類似術語與適#實體量相關聯 且僅僅為應用於此等量之方便標記。除非自以下論述中容 易看出另有特別規定,否則理解為在本發明中使用諸如 處理或存取"或"執行,,或"存儲"或"顯像"等術語之論述 始終指代電腦系統(例如圖丨之電腦系統1〇〇)或類似電子計 算裝置之行為及處理,其操縱表示為電腦系統之暫存器及 記憶體内的實體(電子)量之資料且將其變換為類似表^為 電腦系統記憶體或暫存器或其它此類資訊存儲、傳輸或顯 示裝置内之實體量的其它資料。 電腦系統平臺 圖1展示根據本發明一個實施例之電腦系統1〇〇。電腦系 統100描繪根據本發明實施例之基本電腦系統的組件,其 為特定的基於硬體及基於軟體之功能性提供執行平臺。一 122688.doc -10· 200818054 般而言’電腦系統100包含至少一個CPU 101、系統記憶體 115及至少一個圖像處理器單元(GPU)l 10。該CPU 101可經 由橋接器組件/記憶體控制器(未圖示)耦合至系統記憶體 Π5,或可經由在cpu 101内部至記憶體控制器(未圖示)直 接麵合至系統記憶體115。GPU 110耦合至顯示器112。一 或多個額外GPU可視情況耦合至系統1 〇〇,以進一步增加 ' 其計异能力。GPU 110耦合至CPU 101及系統記憶體115。 / 系統100可實施為(例如)桌上型電腦系統或伺服器電腦系 統’其具有耦合至專用圖像顯像GPU 110之強大的通用 CPU 101。在此類實施例中,可包括添加外圍匯流排、專 門圖像記憶體、1〇裝置等的組件。類似地,系統1 〇〇可實 施為手持裝置(例如,手機等)或置頂視訊遊戲控制台裝置 (例如 了 自 Microsoft Corporation of Redmond,Washington 講知之 Xbox® 或可自 Sony Computer Entertainment C〇rporati〇n of T〇ky〇, Japan購得之piayStati〇n3⑧)〇 (J 應理解,GpU 110可實施為離散組件、經設計以經由連 接器(例如,AGP插槽、PCI_Express插槽等)耦合至電腦系 統100之離散圖像卡、離散積體電路晶粒(例如,直接安裝 、 於主機板上)或作為包括於電腦系統晶片組組件(未圖示)之 . 積體電路晶粒内的積體GPU。視情況,可對於GPU 11〇包 括本地圖像記憶體114以用於高頻寬圖像資料存儲。 本發明實施例 圖2展示根據本發明之一個實施例描繪位於螢幕25〇上用 於成像之多邊形201的圖2〇〇。 122688.doc 200818054 J:描緣根據本發明實施例執行之成像過程。在該成像 罝^間,多邊形(在此情況下為三角形201)之覆蓋範圍在 … ^個方塊之個別部分上方分解為其各個貢獻部分 •如每方塊32x32個像素、每方塊16><16個像素、每方 塊8X8個〜像素等)°對於覆蓋較大數目像素之非常大之三角 幵〉’界定三角形且因此界定覆蓋哪些像素之邊緣等式可用 :較:數目之位元表示其整數操作數。此是由於這樣之事
U ^而要以足夠之精度界定三角形邊緣等式,以便允許確 疋那些像素由三角形(或其它類型圖像圖元)覆蓋。 圖2描繪比較大之螢幕25〇,在此情況下其橫越卟個像素 (例如,8192個像素)。使用此類大螢幕25〇,需要較大數目 元界疋且處理組成螢幕25〇之像素,如由例示性線 描繪,其中成像器在螢幕25〇之寬度上自左至右步進越過 一行方塊。 圖3展不根據本發明一個實施例之三角形2〇1及沿著成像 線202產生之覆蓋方塊。如上所述,三角形邊緣等式之較 大整數操作數用於評估較大三角形(例如,三角形2〇丨),且 確定哪些方塊具有覆蓋。三角形邊緣等式之較大整數操作 數用於為該三角形切割出具有至少某些覆蓋之彼等方塊。 沿著成像線202說明此等方塊。根據本發明實施例,一旦 確定了此等方塊,即可使用較小整數操作數評估每一該方 塊内有哪些像素具有覆蓋。此屬性利用這樣之事實:步進 越過方塊所需之位元數目比步進越過大螢幕(例如,螢幕 25 0)所需之位元數目小得多。 122688.doc -12- 200818054 圖4展示根據本發明之一個實施例描繪例示性方塊400之 尺度之圖。如上所述,組成方塊400之像素之數目比組成 大勞幕(例如,螢幕250)之像素之數目小得多。舉例而言, 在一個實施例中,方塊400具有32像素之寬度及32像素之 而度。在另一實施例中,方塊400具有16像素之寬度及16 像素之高度。 對於圖2之全螢幕影像250,三角形邊緣等式需要能夠處 理相對較大數目之像素(例如,4096或8192個像素)。此意 味著三角形邊緣等式操作數使用13或14個位元(例如,13 位70 X維度操作數及13位元y維度操作數)。在後續成像操 作中(例如,在細成像期間),計算僅需要處理各個方塊(例 如方塊400(例如,ι6χ16個像素))内所發生之事物。對於此 等情形,在每個維度上僅處理16個像素是足夠的。因而, 舉例而言,該演算法僅需要提供三或四位元整數像素位址 而非13或14位元。因此,對於此等稍後成像操作,藉由消 除最高有效10位元(舉例而言),給定成像器級可節省大量 矽面積而不會損失有用精度。舉例而言,在一個實施方案 中,成像過程被劃分為粗成像及細成像。在細成像期間, 當在32x32方塊内工作時,精度自13或14位元調節至5位 元。 節省之矽面積提供諸多優點。舉例而言,節省之矽面積 可用於其它用途,諸如較大之記憶體超高速緩存、更強大 之ALU等。類似地,較小整數操作數降低了存儲操作數所 需之矽面積。節省之矽面積亦改進整個GPU製作過程之產 122688.doc -13- 200818054 率,且降低所得GPU晶粒之功率消耗。 因此’舉例而言’在成像器與大榮幕2 5 0 —起作用之情 況下,為執行初始成像,成像器需要能夠處理螢幕250之 8K範圍内之各個像素,從而導致較大整數操作數(例如, 14、15位元或更多)。一旦切割出各個方塊,成像器便僅 需要在組成方塊400之該數目之像素内工作。因此,在方 塊400為32個像素寬之情況下,成像器僅需要在寬度維度 上處理32個像素,此僅需要5個位元。類似地,在方塊為8 個像素寬之情況下,成像器級僅需要在每一維度上處理8 個像素,此僅需要每維度3個位元。 換而言之,一旦成像過程進入方塊水平,精度之整數水 平便可降低為足以覆蓋界定該方塊之像素範圍。對於執行 多級成像之成像級,隨著方塊尺寸進一步沿著成像管線向 下而變小’重複此過程。精度相應降低以匹配組成該方塊 之像素數目乃至組成該方塊之樣品數目。 圖5展示根據本發明一個實施例於光柵級5〇〇内實施之基 於方塊之精度之成像過程的圖。如圖5描繪,當光栅級以 螢幕相關之精度尺度(例如,圖2之螢幕25〇)操作時,三角 形邊緣等式操作數具有第一整數精度水平,展示為整數精 度水平501。當光柵級(例如)在組成各個方塊(例如,圖4之 方塊400)之像素内以第二水平方塊相關之精度操作時,三 角形邊緣等式操作數向下調節為第二精度水平,從而產生 較小整數操作數,展示為整數精度水平5〇2。因此,當光 柵級(例如)在方塊400之子部分(例如,在方塊4〇〇被進一步 122688.doc 200818054 劃分成較小子方塊之情況下)内或用各個像素之樣品以第 二水平方塊相關之精度操作時,三角形邊緣等式操作數向 下調節為第三精度水平,從而產生較小整數操作數,展示 為整數精度水平503。 以此方式,每當降低方塊尺寸時,可相應降低處理組成 • 該方塊之像素所需之精度。在計算樣品時類似地降低精 • 度。 圖6展示根據本發明實施例描繪包括擴展位元601之例示
C 性整數操作數之圖600。圖6描繪擴展位元601之可選使用 之使用’該擴展位元601可添加為操作數之最高有效位 元’以才曰示二角形(例如,三角形2〇 1)之邊緣位於方塊邊界 以外之情況。舉例而言,在一個實施例中,擴展位元6〇1 將由光栅級之硬體用以指示覆蓋範圍延伸超過方塊邊界, 如同邊緣位於無限遠處一樣。 圖7展示根據本發明一個實施例之GPU 110之内部組件的 Q 圖。如圖7所示,GPU 110包括設置引擎701及成像器單元 702 °在本實施例中,本發明之功能性在成像器單元702之 硬體及軟體内實施。一般而言,成像器單元702藉由將自 ' 設置引擎701接收之基於頂點之描述轉換為基於邊緣描述 • 之描述而起作用。成像器單元702隨後將此等邊緣描述轉 換為組成實際像素描述之填充區域(例如,像素區域、像 素子樣品等)。隨後將像素描述傳遞至GPU 110内之其它單 兀以供進_步處理及顯像。 &本實施例中,成像器單元702包括粗光柵組件703及細 122688.doc •15- 200818054 光栅組件704。粗光柵組件703在快速查找方塊柵格以識別 所關注之方塊(例如,由圖元覆蓋之方塊)時實施第一少許 精度方塊成像過程(如上所述)。一旦識別到所關注之方塊 群組,細光柵組件704單獨識別由圖元覆蓋之像素。因 此,在此類實施例中,粗光柵组件703藉由使用方塊而快 速查找像素栅格,且細光柵組件704使用由粗光柵組件703 產生之資訊,且藉由單獨識別由圖元覆蓋之像素而實施第 二水平精度細粒度成像。 仍參看圖7,CPU 110進一步包括快取記憶體721,其藉 由對於最頻繁使用之圖像顯像資料實施高速低等待時間存 儲而起作用。此類資料通常包含紋理資訊、頂點資訊、顏 色等。快取記憶體721展示為耦合至本地圖像記憶體114。 快取記憶體721利用一或多個快取維持機制維持與本地圖 像記憶體114之一致性。箭頭74〇展示Gpu 11〇與系統記憶 體(例如,圖1所示之記憶體115)之間之通信路徑。
C 在個實施例中,包含光栅單元702之硬體經最佳化以 在母時鐘基礎上操作。舉例而言,為提供高處理量且因此 維持高顯像訊框速率,粗光柵組件7()3及細光柵組件7〇4包 t經設計以在每時鐘·基礎上實施第-水平精度成像及 水平精度成像之硬體。成像器單元繼可經實施以使 :在粗光栅組件703中實施第一水平成像,該粗光桃組件 你 ^ 刀J Φ覆盍給定圖元之方塊。隨 二:光柵組件704中實施具有第二水平精度之成像, 先柵組件取在單個時鐘週期中切割出方塊之覆蓋之 122688.doc _ 16 · 200818054 像辛0 ^ U此’舉例而言,可每時鐘處理64個像素之硬體將 使用64像素佔地面積(例如,四個每一者具有16個像素之 鬼)而可母時鐘處理128個像素之硬體將使用128個像 素2地面積(例如,八個每一者具有16個像素之方塊、四 個母者具有32個像素之方塊等)。 於。兒明及描述目之展現對本發明特定實施例之以上描 述不希望其為詳盡的或將本發明限於所揭示之精確形 式,且能夠根據以上教示作出多種修改及改變。選擇且描 述忒等實施例是為了最好地解釋本發明原理及其實際應 用,因而使得熟習此項技術者能夠最好地利用本發明及具 有適合於所希望之特定使用之各種修改之各種實施例。希 望本發明範圍由隨附申請專利範圍及其均等物界定。 【圖式簡單說明】 在附圖圖式中以實例方式而非以限制方式來說明本發 月其中相同元件符號指代類似元件。 圖1展示根據本發明一個實施例之電腦系統。 圖2展不根據本發明一個實施例描繪位於螢幕上用於成 像之多邊形201之圖。 圖3展示根據本發明一個實施例之三角形及沿著成像線 產生之覆蓋方塊。 圖4展示根據本發明一個實施例描繪示範性方塊之尺度 之圖。 圖5展示根據本發明一個實施例於光柵級内實施之基於 方塊之精度之成像過程的圖。 122688.doc -17- 200818054 圖6展示根據本發明實施例描繪包括擴展位元之例示性 整數操作數之圖。 圖7展示根據本發明一個實施例之GPU之内部組件的 圖。 【主要元件符號說明】 100 電腦系統
101 CPU
110 GPU
112 顯示器 114 本地圖像記憶體 115 系統記憶體 201 多邊形(三角形) 202 成像線 250 螢幕 400 方塊 500 光柵級 501 整數精度水平 502 整數精度水平 503 整數精度水平 600 圖 601 擴展位元 701 設置引擎 702 成像器單元 703 細光柵組件 122688.doc -18- 200818054
U 704 粗光柵組件 721 快取記憶體 740 箭頭 122688.doc
Claims (1)
- 200818054 十、申請專利範圍: 1· 一種於一圖像處理器之一光柵級中用於基於方塊之精度 之成像的方法,其包含: 接收一圖像圖元以於一圖像處理器之一光柵級中成 像; 以一第一水平精度成像該圖像圖元以產生複數個像素 方塊;以及 以一第二水平精度成像該等方塊以產生覆蓋之像素; 以及 輸出該等覆蓋之像素以於該圖像處理器之一隨後級中 進行顯像操作。 2.如請求項丨之方法,其中該第一水平精度高於該第二水 平精度。 月长項2之方法,其中用於以該第一水平精度處理該 複數個方塊之整數值A於用於以該第二水平精度處理複 Ο 數個像素之整數值。 月长項1之方法’其中以該第一水平精度成像該等圖 <圖π ’以處理組成—螢幕影像之複數個像素。 5. 2求項1之方法,其中以該第二水平精度成像該等圖 :=,以處理組成該複數個方塊中之每一者之複數個 6·如請求項5之方法, 分為至少兩個部分, 至少兩個部分以處理 其中將該複數個方塊中之每一者劃 且^以―第三水平精度成像該等 組成每個部分之複數個像素。 122688.doc 200818054 7·如請求項1之方法,其中在每時鐘週期基礎上實施該具 有該第一水平精度之成像。 8·如印求項1之方法,其中在每時鐘週期基礎上實施該具 有該第二水平精度之成像。 9·如睛求項1之方法,其中於一粗光栅單元中實施具有該 第一水平精度之成像,且於一細光柵單元中實施具有該 第二水平精度之成像。 10· —種GPU(圖像處理器單元),其包含: 一設置單元,其用於產生多邊形描述; 一成像器單元,其耦合至該設置單元,用於成像該等 多邊形描述; 一粗光柵單元,其位於該成像器單元内,用於以一第 一水平精度成像一圖像圖元,以產生複數個像素方塊; 以及 一細光栅單元,其位於該成像器單元内,用於以一第 二水平精度成像該圖像圖元,以產生覆蓋之像素以於該 圖像處理器之一隨後級中進行顯像操作。 11.如請求項10之GPU,其中該第一水平精度高於該第二水 平精度。 12·如請求項1〇2GPU,其中用於以該第一水平精度處理該 複數個方塊之整數值大於用於以該第二水平精度處理複 數個像素之整數值。 13.如請求項1〇2GPU,其中以該第一水平精度成像該等圖 像圖元,以處理組成一螢幕影像之複數個像素。 122688.doc 200818054 14·=求項Η)之GPU,其中以該第二水平精度成像該等圖 圖%,以處理組成該複數個方塊中之每一者之複數個 像素。 15· 2請求項14之GPU,其中將該複數個方塊中之每一者劃 為至夕兩個部分,且其中以一第三水平精度成像該等 至少兩個部分以處理組成每個部分之複數個像素。 16·如請,項10之GPU,其中在每時鐘週期基礎上實施該具 有該第一水平精度之成像。 17·如請求項1〇之Gpu,其中在每時鐘週期基礎上實施該具 有該第二水平精度之成像。 18· 一種電腦系統,其包含: 一系統記憶體; 中央處理器單兀,其耦合至該系統記憶體;以及 -圖像處理器單元,其以通信方式耦合至該中央處理 器單元; 一设置單元,其位於該圖像處理器單元内,用於產生 多邊形描述; 一成像器單元,其位於該圖像處理器單元内且耦合至 該設置單元,用於成像該等多邊形描述;以及 -粗光柵組件’其位於該光栅單元内,其中該粗成像 器 圖像處理器 組件經組態以接收一圖像圖元以用於在一 之-光柵級中成像,以-第-水平精度成像該圖像圖元 以產生複數個像素方塊,且以一第二水平精度成像該等 方塊以產生覆蓋之像素;且其中輸出料覆蓋之像素以 122688.doc 200818054 於該圖像處理器之一隨後級中進行顯像操作。 19 ·如請求項1 8之電腦糸統,其中該第一水平精度高於該第 二水平精度。 20·如請求項19之電腦系統,其中用於以該第一水平精度處 理該複數個方塊之整數值大於用於以該第二水平精度處 • 理複數個像素之整數值。122688.doc
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/494,398 US9070213B2 (en) | 2006-07-26 | 2006-07-26 | Tile based precision rasterization in a graphics pipeline |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW200818054A true TW200818054A (en) | 2008-04-16 |
| TWI386862B TWI386862B (zh) | 2013-02-21 |
Family
ID=38985712
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW096126076A TWI386862B (zh) | 2006-07-26 | 2007-07-17 | 於圖像管線中以方塊為基礎之精確成像 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US9070213B2 (zh) |
| JP (1) | JP4598030B2 (zh) |
| KR (1) | KR100902974B1 (zh) |
| CN (1) | CN101131768B (zh) |
| TW (1) | TWI386862B (zh) |
Families Citing this family (36)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8732644B1 (en) | 2003-09-15 | 2014-05-20 | Nvidia Corporation | Micro electro mechanical switch system and method for testing and configuring semiconductor functional circuits |
| US8775997B2 (en) * | 2003-09-15 | 2014-07-08 | Nvidia Corporation | System and method for testing and configuring semiconductor functional circuits |
| US8872833B2 (en) | 2003-09-15 | 2014-10-28 | Nvidia Corporation | Integrated circuit configuration system and method |
| US8711161B1 (en) | 2003-12-18 | 2014-04-29 | Nvidia Corporation | Functional component compensation reconfiguration system and method |
| US8723231B1 (en) | 2004-09-15 | 2014-05-13 | Nvidia Corporation | Semiconductor die micro electro-mechanical switch management system and method |
| US8711156B1 (en) | 2004-09-30 | 2014-04-29 | Nvidia Corporation | Method and system for remapping processing elements in a pipeline of a graphics processing unit |
| US8427496B1 (en) | 2005-05-13 | 2013-04-23 | Nvidia Corporation | Method and system for implementing compression across a graphics bus interconnect |
| US8698811B1 (en) | 2005-12-15 | 2014-04-15 | Nvidia Corporation | Nested boustrophedonic patterns for rasterization |
| US8390645B1 (en) | 2005-12-19 | 2013-03-05 | Nvidia Corporation | Method and system for rendering connecting antialiased line segments |
| US9117309B1 (en) | 2005-12-19 | 2015-08-25 | Nvidia Corporation | Method and system for rendering polygons with a bounding box in a graphics processor unit |
| US8928676B2 (en) | 2006-06-23 | 2015-01-06 | Nvidia Corporation | Method for parallel fine rasterization in a raster stage of a graphics pipeline |
| US8237738B1 (en) | 2006-11-02 | 2012-08-07 | Nvidia Corporation | Smooth rasterization of polygonal graphics primitives |
| US8427487B1 (en) | 2006-11-02 | 2013-04-23 | Nvidia Corporation | Multiple tile output using interface compression in a raster stage |
| US8482567B1 (en) | 2006-11-03 | 2013-07-09 | Nvidia Corporation | Line rasterization techniques |
| US8724483B2 (en) | 2007-10-22 | 2014-05-13 | Nvidia Corporation | Loopback configuration for bi-directional interfaces |
| US8780123B2 (en) | 2007-12-17 | 2014-07-15 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
| US9064333B2 (en) | 2007-12-17 | 2015-06-23 | Nvidia Corporation | Interrupt handling techniques in the rasterizer of a GPU |
| US8633936B2 (en) | 2008-04-21 | 2014-01-21 | Qualcomm Incorporated | Programmable streaming processor with mixed precision instruction execution |
| US8923385B2 (en) | 2008-05-01 | 2014-12-30 | Nvidia Corporation | Rewind-enabled hardware encoder |
| US8681861B2 (en) | 2008-05-01 | 2014-03-25 | Nvidia Corporation | Multistandard hardware video encoder |
| US20110063306A1 (en) | 2009-09-16 | 2011-03-17 | Nvidia Corporation | CO-PROCESSING TECHNIQUES ON HETEROGENEOUS GPUs INCLUDING IDENTIFYING ONE GPU AS A NON-GRAPHICS DEVICE |
| US9530189B2 (en) | 2009-12-31 | 2016-12-27 | Nvidia Corporation | Alternate reduction ratios and threshold mechanisms for framebuffer compression |
| US9331869B2 (en) | 2010-03-04 | 2016-05-03 | Nvidia Corporation | Input/output request packet handling techniques by a device specific kernel mode driver |
| US9171350B2 (en) | 2010-10-28 | 2015-10-27 | Nvidia Corporation | Adaptive resolution DGPU rendering to provide constant framerate with free IGPU scale up |
| US9019292B2 (en) | 2011-09-12 | 2015-04-28 | Microsoft Technology Licensing Llc | Reordering graph execution for processing optimization |
| US9218679B2 (en) * | 2012-10-08 | 2015-12-22 | Intel Corporation | Reduced bitcount polygon rasterization |
| US9607407B2 (en) | 2012-12-31 | 2017-03-28 | Nvidia Corporation | Variable-width differential memory compression |
| US9591309B2 (en) | 2012-12-31 | 2017-03-07 | Nvidia Corporation | Progressive lossy memory compression |
| US9947084B2 (en) | 2013-03-08 | 2018-04-17 | Nvidia Corporation | Multiresolution consistent rasterization |
| US9390541B2 (en) * | 2013-04-09 | 2016-07-12 | Intel Corporation | Programmable tile shader |
| US9449410B2 (en) * | 2013-04-11 | 2016-09-20 | Qualcomm Incorporated | Intra-frame timestamps for tile-based rendering |
| US9710894B2 (en) | 2013-06-04 | 2017-07-18 | Nvidia Corporation | System and method for enhanced multi-sample anti-aliasing |
| KR102188543B1 (ko) | 2014-02-07 | 2020-12-08 | 삼성전자주식회사 | 그래픽 처리 장치 |
| KR20150095144A (ko) | 2014-02-12 | 2015-08-20 | 삼성전자주식회사 | 그래픽스 데이터를 렌더링하는 방법 및 장치 |
| US9418471B2 (en) * | 2014-03-18 | 2016-08-16 | Intel Corporation | Compact depth plane representation for sort last architectures |
| EP3183653A4 (en) * | 2014-08-20 | 2018-07-04 | Landmark Graphics Corporation | Optimizing computer hardware resource utilization when processing variable precision data |
Family Cites Families (44)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4208810A (en) * | 1978-09-11 | 1980-06-24 | The Singer Company | Clipping polygon faces through a polyhedron of vision |
| US4918626A (en) * | 1987-12-09 | 1990-04-17 | Evans & Sutherland Computer Corp. | Computer graphics priority system with antialiasing |
| US5303334A (en) | 1992-03-05 | 1994-04-12 | Adobe Systems Incorporated | System for generating a rasterized graphic image |
| TW241196B (zh) * | 1993-01-15 | 1995-02-21 | Du Pont | |
| US5543935A (en) * | 1994-11-18 | 1996-08-06 | Xerox Corporation | Halftoning method using space filling curves |
| US5786826A (en) * | 1996-01-26 | 1998-07-28 | International Business Machines Corporation | Method and apparatus for parallel rasterization |
| US6160557A (en) * | 1996-10-17 | 2000-12-12 | International Business Machines Corporation | Method and apparatus providing efficient rasterization with data dependent adaptations |
| JP2915363B2 (ja) | 1996-11-05 | 1999-07-05 | 核燃料サイクル開発機構 | 空間探索システム |
| JPH11195132A (ja) | 1997-10-31 | 1999-07-21 | Hewlett Packard Co <Hp> | テクスチャマッピング用バッファ、3次元グラフィクス処理装置、3次元グラフィクス処理システム、3次元グラフィクス処理方法および処理プログラムが記憶された記憶媒体 |
| US6259460B1 (en) * | 1998-03-26 | 2001-07-10 | Silicon Graphics, Inc. | Method for efficient handling of texture cache misses by recirculation |
| US6611272B1 (en) | 1998-07-02 | 2003-08-26 | Microsoft Corporation | Method and apparatus for rasterizing in a hierarchical tile order |
| US6480205B1 (en) * | 1998-07-22 | 2002-11-12 | Nvidia Corporation | Method and apparatus for occlusion culling in graphics systems |
| US7068272B1 (en) * | 2000-05-31 | 2006-06-27 | Nvidia Corporation | System, method and article of manufacture for Z-value and stencil culling prior to rendering in a computer graphics processing pipeline |
| US6771264B1 (en) * | 1998-08-20 | 2004-08-03 | Apple Computer, Inc. | Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor |
| US6614448B1 (en) * | 1998-12-28 | 2003-09-02 | Nvidia Corporation | Circuit and method for displaying images using multisamples of non-uniform color resolution |
| US6323874B1 (en) * | 1999-02-08 | 2001-11-27 | Silicon Graphics, Inc. | System and method for rendering an image |
| JP4332934B2 (ja) * | 1999-06-17 | 2009-09-16 | 株式会社セガ | アンチエイリアシング方法及びこれを用いた画像処理装置 |
| DE60025005T2 (de) * | 1999-09-03 | 2006-06-22 | Nippon Soda Co. Ltd. | Alkenylphenolcopolymer und verfahren zu dessen herstellung |
| US7002591B1 (en) * | 2000-08-23 | 2006-02-21 | Nintendo Co., Ltd. | Method and apparatus for interleaved processing of direct and indirect texture coordinates in a graphics system |
| US6597356B1 (en) * | 2000-08-31 | 2003-07-22 | Nvidia Corporation | Integrated tessellator in a graphics processing unit |
| US6961057B1 (en) * | 2000-10-12 | 2005-11-01 | Nvidia Corporation | Method and apparatus for managing and accessing depth data in a computer graphics system |
| US6900800B2 (en) * | 2001-02-27 | 2005-05-31 | David Robert Baldwin | Tile relative origin for plane equations |
| US6803916B2 (en) * | 2001-05-18 | 2004-10-12 | Sun Microsystems, Inc. | Rasterization using two-dimensional tiles and alternating bins for improved rendering utilization |
| US6924820B2 (en) * | 2001-09-25 | 2005-08-02 | Sun Microsystems, Inc. | Over-evaluating samples during rasterization for improved datapath utilization |
| US6938176B1 (en) * | 2001-10-05 | 2005-08-30 | Nvidia Corporation | Method and apparatus for power management of graphics processors and subsystems that allow the subsystems to respond to accesses when subsystems are idle |
| US6836808B2 (en) * | 2002-02-25 | 2004-12-28 | International Business Machines Corporation | Pipelined packet processing |
| US7636095B2 (en) * | 2002-09-06 | 2009-12-22 | Ati Technologies, Inc. | Pixel delta interpolation method and apparatus |
| US7075542B1 (en) * | 2002-11-12 | 2006-07-11 | Ati Technologies Inc. | Selectable multi-performance configuration |
| US7061495B1 (en) * | 2002-11-18 | 2006-06-13 | Ati Technologies, Inc. | Method and apparatus for rasterizer interpolation |
| US7633506B1 (en) * | 2002-11-27 | 2009-12-15 | Ati Technologies Ulc | Parallel pipeline graphics system |
| US6933945B2 (en) * | 2003-03-31 | 2005-08-23 | Sun Microsystems, Inc. | Design for a non-blocking cache for texture mapping |
| US6956579B1 (en) * | 2003-08-18 | 2005-10-18 | Nvidia Corporation | Private addressing in a multi-processor graphics processing system |
| US20050122338A1 (en) * | 2003-12-05 | 2005-06-09 | Michael Hong | Apparatus and method for rendering graphics primitives using a multi-pass rendering approach |
| JP4064339B2 (ja) | 2003-12-19 | 2008-03-19 | 株式会社東芝 | 描画処理装置、描画処理方法および描画処理プログラム |
| US7505043B2 (en) * | 2004-08-30 | 2009-03-17 | Qualcomm Incorporated | Cache efficient rasterization of graphics data |
| US20060170703A1 (en) * | 2005-02-01 | 2006-08-03 | Via Technologies, Inc. | Color compression using an edge data bitmask in a multi-sample anti-aliasing scheme |
| JP4218840B2 (ja) * | 2005-05-27 | 2009-02-04 | 株式会社ソニー・コンピュータエンタテインメント | 描画処理装置および描画処理方法 |
| US7483029B2 (en) * | 2005-12-15 | 2009-01-27 | Nvidia Corporation | GPU having raster components configured for using nested boustrophedonic patterns to traverse screen areas |
| US7634637B1 (en) * | 2005-12-16 | 2009-12-15 | Nvidia Corporation | Execution of parallel groups of threads with per-instruction serialization |
| US7965902B1 (en) * | 2006-05-19 | 2011-06-21 | Google Inc. | Large-scale image processing using mass parallelization techniques |
| US20070268298A1 (en) * | 2006-05-22 | 2007-11-22 | Alben Jonah M | Delayed frame buffer merging with compression |
| TW200744019A (en) * | 2006-05-23 | 2007-12-01 | Smedia Technology Corp | Adaptive tile depth filter |
| US8928676B2 (en) * | 2006-06-23 | 2015-01-06 | Nvidia Corporation | Method for parallel fine rasterization in a raster stage of a graphics pipeline |
| US7843468B2 (en) * | 2006-07-26 | 2010-11-30 | Nvidia Corporation | Accellerated start tile search |
-
2006
- 2006-07-26 US US11/494,398 patent/US9070213B2/en active Active
-
2007
- 2007-07-17 TW TW096126076A patent/TWI386862B/zh active
- 2007-07-25 CN CN2007101300465A patent/CN101131768B/zh not_active Expired - Fee Related
- 2007-07-26 KR KR1020070075314A patent/KR100902974B1/ko active Active
- 2007-07-26 JP JP2007194797A patent/JP4598030B2/ja active Active
Also Published As
| Publication number | Publication date |
|---|---|
| CN101131768B (zh) | 2011-10-26 |
| US20080024497A1 (en) | 2008-01-31 |
| TWI386862B (zh) | 2013-02-21 |
| JP2008097583A (ja) | 2008-04-24 |
| CN101131768A (zh) | 2008-02-27 |
| JP4598030B2 (ja) | 2010-12-15 |
| KR100902974B1 (ko) | 2009-06-15 |
| KR20080010361A (ko) | 2008-01-30 |
| US9070213B2 (en) | 2015-06-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TW200818054A (en) | Tile based precision rasterization in graphics pipeline | |
| US20220405582A1 (en) | Systems and methods for training neural networks with sparse data | |
| US10362289B2 (en) | Method for data reuse and applications to spatio-temporal supersampling and de-noising | |
| JP6563048B2 (ja) | スクリーンの位置によって異なる解像度のターゲットの複数レンダリングのテクスチャ・マッピングの傾き調整 | |
| US9082180B2 (en) | System, method, and computer program product for implementing a spatially varying unsharp mask noise reduction filter | |
| JP6185211B1 (ja) | 適応的シェーディングによるテクスチャルックアップを使用した帯域幅低減 | |
| US8063903B2 (en) | Edge evaluation techniques for graphics hardware | |
| US9245363B2 (en) | System, method, and computer program product implementing an algorithm for performing thin voxelization of a three-dimensional model | |
| US10460504B2 (en) | Performing a texture level-of-detail approximation | |
| CN109034385A (zh) | 用稀疏数据训练神经网络的系统和方法 | |
| US10600232B2 (en) | Creating a ray differential by accessing a G-buffer | |
| TWI596569B (zh) | 促進針對在計算裝置上之部分被遮蔽圖形影像之動態且有效的預啓用裁剪之技術 | |
| US20160203635A1 (en) | Frustum tests for sub-pixel shadows | |
| US9721381B2 (en) | System, method, and computer program product for discarding pixel samples | |
| US9148544B2 (en) | System, process, and computer program product for implementing a document scanner in a hand-held device | |
| US8427487B1 (en) | Multiple tile output using interface compression in a raster stage | |
| US8508544B1 (en) | Small primitive detection to optimize compression and decompression in a graphics processor | |
| US20190236166A1 (en) | Performing a texture level-of-detail approximation | |
| TWI616844B (zh) | 當複合物件在圖形影像中無法產生可見改變時促進圖形處理單元中此等物件之淘汰的技術 | |
| US8477134B1 (en) | Conservative triage of polygon status using low precision edge evaluation and high precision edge evaluation | |
| Randall | Talisman: Multimedia for the PC | |
| US8085264B1 (en) | Tile output using multiple queue output buffering in a raster stage | |
| US9123173B2 (en) | Method for rasterizing non-rectangular tile groups in a raster stage of a graphics pipeline | |
| Peddie | The GPUs’ Functions | |
| Mrochuk et al. | Real time 3D rendering patch processing using an embedded SIMD computer architecture |