TWI305900B - Method of rendering graphics and 3d graphics hardware accelerator - Google Patents

Method of rendering graphics and 3d graphics hardware accelerator Download PDF

Info

Publication number
TWI305900B
TWI305900B TW092106511A TW92106511A TWI305900B TW I305900 B TWI305900 B TW I305900B TW 092106511 A TW092106511 A TW 092106511A TW 92106511 A TW92106511 A TW 92106511A TW I305900 B TWI305900 B TW I305900B
Authority
TW
Taiwan
Prior art keywords
loop
graphics
pixel
texture
hardware accelerator
Prior art date
Application number
TW092106511A
Other languages
English (en)
Other versions
TW200403595A (en
Inventor
Michael F Deering
Michael G Lavelle
Original Assignee
Michael F Deering
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 Michael F Deering filed Critical Michael F Deering
Publication of TW200403595A publication Critical patent/TW200403595A/zh
Application granted granted Critical
Publication of TWI305900B publication Critical patent/TWI305900B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Description

1305900 (1) 玖、發明說明 【發明所屬之技術領域】 本發明係有關電腦圖形之領域,特別爲3 d圖形硬體 加速器。 【先前技術】
大部份習知一般用途電腦具有某種形式的硬體副系統 ’此硬體副系統能連接電腦內所儲存或計算之資訊至某種 形式的實體影像顯示裝置,作爲互動視覺回饋至人類使用 者。數十年前,這些實體影像顯示裝置及連接電腦至實體 影像顯示裝置之特殊電子電路是非常原始的’例如閃爍光 ’ ”玻璃打字(g 1 a s s 11 y s)",或示波器,但經過時間,複雜 性已增長至一程度,專門用以驅動實體影像顯示裝置之硬 體副系統或圖形系統變得十分複雜,特殊之計算系統在其 本身權責中。確實,用以建造習知圖形系統之許多目前” 圖形晶片”包含較一般用途電腦本身中之強力單個晶片 CPU爲多之電晶體。 明確言之,圖形系統不止連接主電腦至實體影像顯示 裝置。它亦分擔電腦更複雜之繪圖操作,包括2d繪圖及 3d繪圖。專門用於特殊工作之硬體加速器通常具有性能 及/或價格優勢,勝於完全在一般用途電腦之軟體中執行 相同之工作。當然,假設有經常執行特殊工作之充分的消 費者需求,此爲在許多市場部份中,包含工業及消費者家 庭娛樂中之2d及3d電腦圖形之情形。 -6- I305^°
雖然早期之圖形系統可僅擔任繪制2d線或本文之簡 單工作’但更進步之高性能圖形系統負責採取來自主電腦 之三維物件之高階表示,並執行接近計算模擬光子在真實 世界中如何照射一群物件,及這些物件之影像如何形成於 實體照相機之影像平面或實體人類肉眼內。換言之,現代 的圖形系統能執行3 d繪圖。於是,並不是稱爲一般術語” 圖形系統”’而是稱爲” 3 d圖形硬體加速器’·。最後合成的" 影像平面"變爲視訊輸出信號,此視訊輸出信號是由3 d圖 形硬體加速器發送至各種實體影像顯示裝置,供人類使用 者觀看。這些實體影像顯示裝置包括,但不限於:直視 C R T ’直視L C D面板’直視電漿面板,直視電發光顯示 器,led基礎之顯示器,CRT基礎之投影機,LCD基礎之 投影機,LCOS基礎之投影機,DMD基礎之投影機,雷射 基礎之投影機,以及頭戴式顯示器(HMD)。
更強力之3d圖形硬體加速器之近來發展進步刺激不 斷發展新架構觀念之需求,以建造3d圖形硬體加速器, 能產生較之先前架構觀念所可能達成的更豐富之3d物件 影像。當以更強力之半導體晶片爲基礎之新建築區塊在甚 至幾年之後使用時,用以建造當時最高性能之3 d圖形硬 體加速器之架構觀念可能不再適用。同時’如果發展個別 晶片之成本增加,亦需要找出可高度伸縮之3d圖形硬體 加速器架構,亦即在許多不同價格/性能點上之廣大範圍 之商業上可用的產品能由同樣少組的晶片建造。 在將來數十年中’値得高性能3 d圖形硬體加速器高 I305?3?° 度需要支援之二特色爲:完全可程式屏蔽及高品質防混淆 。高品質防混淆藉由減少或消除由大部份目前的3 d圖形 硬體加速器所產生之所謂"鋸齒",產生更真實外觀之影像 。爲達成此高品質,3 d圖形硬體加速器需要能支援更複 雜之框緩衝器,其中,需要保持正被繪製之影像中之每一 像素之大量的樣品。在產生視訊輸出信號前之某點,此架 構亦需要支援這些樣品之·強力防混淆濾波。
即時互動式之大部份習知3 d圖形硬體加速器並不支 援保持每像素多個樣品,或支援僅僅非常有限之樣品密度 ’例如2或4,且有時8。在視訊輸出信號之產生期間,這 些系統亦支援僅僅最有限形態之防混淆濾波。例如,防混 淆濾波器通常被限制於以一像素匣濾波器只濾波一像素。 對於將來系統,在進步的情形中支援每像素1 6樣品,及每 像素32,48’或甚至64樣品或更多是更多高度有利的。這 些樣品密度不獨支援低解像度影像信號格式,例如N T S C ,亦支援高解像度格式,例如HDTV,及2百萬像素電腦 視訊信號格式。所需之信號處理將支援具有負葉之四像素 乘四像素之立方體濾波防混淆濾波器,及更大面積之防混 淆濾波器’例如在進步之情形中,爲八乘八像素或更多。 可程式屏蔽爲一技術,數十年來用於3d軟體繪圖系 統,其中一般用途電腦一次工作數小時或天以產生一單個 最後繪製影像。這些爲產生最真實之3 d電腦圖形影像之 系統’且其使用現在主要是在製造許多電影之特殊效果。 觀念爲雖然許多所謂”圖形管線”具有不能修改之固定功能
-8- 1305900 (4) ,但在該管線之一些"關鍵"點,可選擇應用特定圖形演算 法。此支援最後繪製影像中之更真實化。例如用於警察、 救火員及空降人員之災難訓練,此在精確地模擬訓練情境 期間中,緊急工作者可模擬在低能見度中之煙霧及灰塵的 效果是非常重要的。已出現可程式屏蔽器,作爲一良好之 技術用以定製3 d圖形硬體加速器之視覺輸出。
即時互動式之習知3 d圖形硬體加速器對於可程式屏 蔽僅剛開始提供非常有限之支援。目前市場上大部份複雜 之3d圖形硬體加速器晶片,僅僅支援像素屏蔽器在圖形 管線之最重要點的八指令步驟,且不許可任何有條件之指 令步驟。如此不足以提供終端使用者所要之彈性及品質。 對於將來系統,高度需要能支援較多之一般可程式屏蔽器 ,例如約數百至數千之指令步驟以及有條件之步驟。
在習知低級的3 d圖形硬體加速器中,例如大部份針 對消費者家庭遊戲市場者,系統架構之議題藉由限制大部 份3 d圖形硬體加速器成單個晶片而加以簡化。在一晶片 內,匯流排及頻帶寬度之議題,與在多晶片之間相比,較 不重要,且所用之整個演算法可保持簡單。結果,能以消 費者市場之價格而建造合理強力之系統,雖然僅限於單個 低成本晶片之處理能力。 在中階及高級的3d圖形硬體加速器中,例如針對汽 車及飛機設計、醫學顯像、石油顯像,一般科學顯像、飛 行模擬及訓練、數位內容製造(動畫及影片編輯)及電視廣 播等等之專業市場,顧客需求僅能藉由建造比裝配於單個 -9- 1305900 (5)
晶片上更複雜之3 d圖形硬體加速器來滿足,例如,它們 必須使用大量的晶片一起集合在一系統中之計算能力。此 市場之大部份所有習知系統需要製造大量不同型式之定製 晶片,且通常使用許多不同之定製互連或匯流排,以連接 這些晶片在一起,而建造一功能系統。這些互連及匯流排 的建造費用高:花在晶片封裝件上增加銷之成本,及在印 刷電路板上之接線及連接器之成本,及設計及測試若干不 同定製技藝互連匯流排協定之成本。在正常操作條件下, 僅僅這些互連或匯流排之少數在其尖峰速率上操作;其他 匯流排不被使用。故此,這些互連或匯流排之全部總頻帶 寬度的大部份很少被使用(即使有被使用),且可能代表浪 費的產品工程及/或產品成本。
目前低級的3 d圖形硬體加速器市場非常爲價格所左 右,因爲大部份市場爲家庭消費者3d視訊遊戲應用軟體 。這些3d圖形硬體加速器以作爲$ 500以下之PC加入卡, 或作爲$400以下之遊戲控制台之整合件被出售。爲達成由 此價格點所暗示之低零件成本,此市場之大部份3 d圖形 硬體加速器架構是由一單個圖形加速器ASIC構成,少數 之DRAM晶片附著於此。其他晶片(如果有的話)爲一般用 途處理器或加速晶片,且並不是直接配接至包含框緩衝器 及紋理記憶器之DRAM晶片。這些單個圖形加速器ASIC 基礎之系統之最佳情形3 d繪圖性能如上述是由多少頻帶 寬度可供3 d繪圖使用之限度而限制,計及在此價格範圍 中可連接至ASIC之銷數,及使用不超過連接至ASIC之 -10- Ι305?β?° 銷數之DRAM晶片之頻帶寬度之限度。在這些系統中, 相同連接之DRAM是用於提取2d紋理’繪製像素(或樣品 )’及提取像素’以產生視訊輸出信號’通過相同圖形加 速ASIC上之分開的類比及/或數位視訊輸出介面銷。
目前中階的3d圖形硬體加速器市場仍有些價格敏感 性,而且更有特色及性能敏感性。專業p c或工作站之僅 3d圖形硬體加速器加入卡之價格是在$1800至$6000的範 圍。爲達成更高之性能’這些3 d圖形硬體加速器之架構 通常將用以儲存2d及3d紋理之DRAM晶片組及包含框緩 衝器本身之DRAM晶片組分開。由於可提供多少頻帶寬 度給圖形操作於用以儲存2d及3d紋理之DRAM及單個3d 繪圖ASIC間之限制,普通是在中階中複製3d繪圖ASIC 及附帶之DRAM之整個副系統。如果這些副系統被複製n 次,則有η倍以上之頻帶寬度往來紋理以供繪圖所需。這 裡,顯然可接受較高成本之交換,以獲得較高性能。往來 框緩衝器本身之頻帶寬度亦需要高於單個ASIC所連接之 銷所可支援者。已發展若干技術,以分配框緩衝器存取於 若干ASIC上,使得無一 ASIC需要支援超過往來框緩衝 器之總頻帶寬之一部份。已發展不同及複雜之技術,使多 個A S IC及記憶器副系統均能工作一起,以加速3 d繪圖, 且將不在此詳細說明。要點爲這些架構均是由需要而驅動 ,以分配3d繪圖演算法之頻帶寬度消耗於多個ASIC及 DRAM局部記憶器副系統上。所得到的系統通常需要設計 及製造若干不同之昂貴ASIC。這些系統通常亦產生僅僅 -11- S > 1305900 (7) 單一產品組態;典型地不能採用相同之A S I C (無改變), 並建造更昂貴但更快速之產品,或較慢但較低廉之產品。
目前高級的3d圖形硬體加速器市場較受性能及特色 左右,而較不受價格左右。價格可自$6000(中階之頂級) 至數十萬元之最強力之3d圖形硬體加速器。高級系統之 架構與中階系統有關。使用平行地應用更多的 ASIC及 DRAM之相同技術,但方法更爲極端。由於有類似性,故 無需在此更詳細明白說明現有的高級系統。 雖然仍需要性能之許多提昇措施以改善3 d圖形,但 所需之繪圖框率最大是在7 6Hz,所需之解析度最大是在 1 920 ¥ 1200 ’深度複雜性僅僅緩慢成長超過6,及樣品密 度可能成長停止於1 6。此意指像素充塡率僅僅緩慢成長超 過每秒1百萬像素(取樣充塡率爲每秒丨6百萬樣品)。故可 伸縮之圖形架構能以固定而非伸縮之方式而處理像素充塡 率。
此外’雖然不能以6x視訊輸出信號視訊格式像素率 之像素充塡率寫入像素及以相同6x速率而讀出之框緩衝 儲存器仍不能用於儲存,但是並非不能用於紋理儲存。應 用軟體在繪圖期間需要各種紋理可供即時使用,但在任何 特定框上,僅實際存取一小副組之紋理。所以如果高級的 架構可執行低級的架構所同時發生者,例如安排具有紋理 儲存及框緩衝儲存在相同記憶庫中,則可有效地使用 DRAM。 -12- 1305900 (8) 【發明內容】 在一實施例中,先前技藝之圖形系統具有二、三、或 四、或更多不同之晶片至晶片專用之資料互連,可被摺疊 成單個高速環拓撲。爲達成此摺疊,某些圖形工作必須以 稍微不同於習知系統但功能上相同之方式被分割。
在一實施例中,需要二種基本晶片型式:一 ”繪圖"晶 片:迴路繪圖;及一"介面"晶片:迴路介面。這些晶片各 具有一組銷,此銷可支援相同之高速點至點單向輸入及輸 出的互連介面:迴路鏈。迴路繪圖晶片使用額外銷,以連 接至若干標準記憶器(例如DRAM),此標準記憶器形成一 局頻帶寬度的局部記憶器副系統。迴路介面晶片使用額外 銷,以支援一高速主電腦主介面,至少一視訊輸出介面, 且亦可能額外的非局部互連至其他迴路介面晶片。
框緩衝器之儲存分配於迴路繪圖晶片上;附著至每一 迴路繪圖晶片之局部記憶器副系統具有用以儲存一特定二 維交插像素內之所有樣品的儲存。紋理圖之儲存最好被複 製於每一迴路繪圖晶片之局部記憶器副系統中。在一實施 例中’爲構製一功能系統,至少一迴路介面晶片,且至少 四迴路繪圖晶片經由其迴路鏈介面連接一起,以形成一簡 單環。不同型式之迴路封包可自一晶片環繞此環流過迴路 鏈至另一晶片,直至達成終止條件爲止。 圖形驅動命令自主電腦通過主介面到達迴路介面晶片 ’此迴路介面晶片將消耗該命令本身’或處理及轉換該命 令成爲迴路封包,以使該環向下被發送。某些命令沿該環
-13- 1305900 (9) 被發送至大部份的迴路繪圖晶片。其他命令被發送至該環 內之一特定副組之迴路繪圖晶片。選擇副組之方法爲經由 迴路介面晶片所實施之負載平衡機構,以平順不同的迴路 繪圖晶片間之處理。 當一迴路封包進入一迴路繪圖晶片時,此迴路繪圖晶 片決定其是否爲該迴路包之目的地(可能有其他目的地), 及是否滿足迴路包傳輸終止條件。如果未滿足終止條件, 則迴路封包自此迴路繪圖晶片送出,否則不送出。如果迴 路繪圖晶片爲該迴路封包之目的地,則該迴路繪圖晶片對 迴路封包資料施加適當之處理。此處理可導致像素及其他 資料需被發送至(分配之)框緩衝器。如果如此,對於所產 生之每一像素’迴路繪圖晶片沿該環送出一繪圖像素迴路 封包。當一迴路繪圖晶片接收到欲給它之一繪圖像素迴路 封包時,此迴路繪圖晶片取出繪圖像素迴路封包中之像素 資料’並檢查在其局部記憶器副系統中之適當像素之哪一 個樣品亦在幾何原始圖形之邊界內,藉由圖形管線之語意 而更新樣品値。在不同之實施例中,這些測試可包括:測 試包含目前正被繪製之幾何原始圖形於疆界內,以像素內 之樣品之計算或通過之z値測試已在框緩衝器內之樣品之 z値’測試框緩衝器模板平面,及測試不同像素混合模式 之組合。 全螢幕防混淆之特色最好是藉由分配防混淆濾波功能 於迴路繪圖晶片上而達成,此迴路繪圖晶片包含分配之框 緩衝器。欲開始影像之流動,一迴路介面晶片發送一空白 -14- 1305900 (10)
視訊像素迴路封包至迴路繪圖晶片之該環中。迴路繪圖晶 片依序加入其所擁有之樣品之防混淆貢獻至視訊像素迴路 包內之流動和(running sum)。當視訊像素迴路封包自最後 的迴路繪圖晶片出現,然後進入一迴路介面晶片時,該流 動和現在包含完全過濾之像素成份,及在正規化及可選擇 之gamma改正後,該像素的流自迴路介面晶片之視訊輸 出介面出現,作爲視訊信號格式之視訊輸出信號中之最後 繪製之影像,以傳輸及顯示於一實體影像顯示裝置上。 新迴路拓撲具有若干其他優點。其一爲該高性能圖形 系統現在可由僅僅二種定製之晶片構成。如此可減少設計 及製造定製晶之成本及危險至最低程度。另一優點爲該環 互連可良好地伸縮。在不同價格及性能點上之商業上可用 的產品可由相同的二基本型式之晶片之許多不同數量及組 合建造。
新架構本質上提供一般可程式屏蔽器的高速支援,以 及非常高品質之防混淆。此可程式屏蔽器及防混淆能力二 者隨系統中之迴路繪圖晶片的數目而伸縮。於是,使用更 多迴路繪圖晶片之圖形系統組態可獲得更強力之可程式屏 蔽支持及更大之防混淆能力。此二計算上要求之工作可完 全有效地被分配於大量(相同之)晶片上,確實使此重要功 能之專用矽可支援比由相同晶片技術產生所製之單個晶片 圖形系統架構所可能者更增加一級以上。 摺疊圖形系統、框緩衝儲存、紋理記憶器儲存,及顯 示列表儲存之不同記憶器需求於一分配之記憶器系統中, -15- I305^° 可達成有效使用低廉標準(例如商品DR AM)記億器晶片之 固有頻帶寬度及儲存容量。高速迴路鏈互連意指不獨紋理 及顯示列表之(可能複製之)局部工作拷貝可有效地被發送 及儲存於這些記憶器中,且記憶階級之非複製之紋理及顯 示列表的下一個位準可利用該分配之儲存,且當需要時可 容易供快速有效拷貝於複製之儲存工作記憶器中。
'在一實施例中,迴路繪圖晶片及其隨帶之局部dram 可被建造成簡單之子卡。於是一範圍之高性能圖形系統產 品可容易藉由集合若干不同之簡單母板之一及多個相同子 卡而構成。印刷電路板之此分解可降低設計成本、製造成 本、製造測試成本、以及庫存及零件成本,且亦可簡化系 統修理及更新。 【實施方式】
A. —般討論 一般用途電腦 顯示並討論一般用途電腦之一實施例。一般用途電腦 爲一完整之系統,其包含一或更多的一般用途處理器元件 ,附帶之主記憶器,及一或更多的外部ι/0處理器。這些 外部I/O處理器依序被連接至一或更多的外部1/0裝置。 一般用途電腦能運轉廣大範圍之程式’執行廣大範圍之功 能。尙未被最佳化以執行狹窄範圍之特定功能’特定功能 會傷害其他功能之執行。
-16- 1305900 (12) 一般用途處理器元件
一般用途處理器元件爲一般用途電腦之計算核心。一 般用途處理器元件通常不含任何外部1/0裝置或主記憶器 ,雖然它可包含大量的快取記億器。當作爲一般用途電腦 之一部份時,一般用途處理器元件能執行廣大範圍之程式 ,執行廣大範圍之功能。一般用途處理器元件尙未被最佳 化以執行狹窄範圍之特定功能’特定功能會傷害執行大量 其他功能。在本發明中具有相似意義之另一常用術語爲中 央處理器單元或CPU。
技術之不斷進步不斷改變吾人應如何解釋術語。多年 前,不能裝配整個一般用途處理器元件於單個晶片上。後 來,僅僅不能裝配高性能一般用途處理器元件於單個晶片 上。現在,該限制不再適用。現在可裝配一個以上的一般 用途處理器元件於單個晶片上。不久’技術可使單個一般 用途處理器元件同時運轉多個”線緒"’因此成爲多個一般 用途處理器元件。這些觀念之細節在說明本發明上並不需 要更精細說明。 主記憶器 術語主記億器指一般用途電腦上之一般記憶器儲存。 快取記憶器 術語快取記憶器指一般用途電腦內之特殊高速記憶器 儲存,通常但並非總是每——般用途處理器元件或小副群
-17- 1305900 (13) 之一般用途處理器元件具有其自已之快取記憶器。 外部I/O處理器
外部I/O處理器之一例子爲硬體副系統,被設計用以 與外部I/O裝置通訊。於是,外部I/O處理器作用爲一般 用途電腦之其餘部份與外部I/O裝置間之介面。在最簡單 之情形,外部I/O處理器可執行稍微多於轉送資料而不通 知一般用途電腦之其餘部份及外部I/O裝置。在更複雜之 情形,外部I/O處理器爲一特殊用途硬體加速器,能對一 般用途電腦之其餘部份及外部I/O裝置往來之資料執行複 雜之計算。在文意上,一般用途通用電腦有時亦稱爲外部 I/O控制器或外部I/O裝置控制器。由於目前所有這些裝 置大部份包含強力之計算系統,故在本發明之說明中,將 使用較爲說明性之術語外部I/O處理器來稱呼這些裝置。
外部I/O處理器之例子包含可轉換與一般用途電腦系 統之其餘部份的互動爲適當格式之通訊於若干標準及習慣 之電腦介面之任一上。這些介面包含,但不限於SCSI, ultraSCSI,ΑΤΑ, S-ΑΤΑ, S-ATAII, IDE,RS23 2 , R S 4 2 2 , 1 0 B a s e T ethernet , 100BaseT ethernet , lOOOBaseT ethernet,U S B,U S B 2,藍芽,火線,光纖通 道,Infiband,類比及數位音訊格式,類比視訊信.號視訊 信號格式,及數位視訊信號視訊格式。 本發明特別有關於特殊用途硬體加速器之外部I/O處 理器,其使用類比及數位視訊信號格式,以連接至實體影 -18- 1305900 (14) 像顯示裝置類之外部I/O裝置。 外部I/O裝置 外部I/O裝置有多類不同之實施例,其可經由外部 I/O處理器被連接至一般用途電腦。
一類的外部I/O裝置爲儲存裝置。此類裝置包含’但 不限於硬碟驅動器,軟碟驅動器,CDROM驅動器’ CDRAM驅動器,DVDROM驅動器,DVDRAM驅動器,可 移除的帶儲存,及可移除的碟驅動儲存。 另一類的外部I/O裝置爲網路及網路裝置,此類裝置 包含,但不限於網路路由器,網路橋接器,網路防火牆, 以及網路本身。
另一類的外部I/O裝置爲人類介面裝置。此類裝置包 含,但不限於光’開關’鍵盤,滑鼠,板,搖桿,光筆, 按鈕匣,滑匣,照相機,微音器,電話機,個人數位助理 (PDA),視訊會議裝置,電傳會議裝置,包含手套及月艮裝 之移動追蹤裝置’音響裝備及揚音器,實體影像顯示裝置 ’戰術及觸覺(力量反饋)輸出裝置,移動平台,及味覺輸 出裝置。另一類的外部I/O裝置爲硬拷貝顯示裝置。此類 裝虞包含’但不限於雷射印表機,噴墨印表機,熱轉移印 表機,撞擊印表機,薄膜印表機,標籤記號機,號碼機器 工具,及立體石版輸出裝置。 主電腦 -19- 1305900 (15) 討論主電腦之一例子。自外部1/◦處理器之觀點言之 ,一般用途電腦(外部I/O處理器爲其一部份)之其餘部份 稱爲主電腦。一般用途電腦可具有任何數量之其他外部 I/O處理器與其連接,且這些外部I/O處理器依序被連接 至任何數量之外部I/O裝置。
與本發明有關之主電腦之一實施例包含外部I/O處理 器’可連接至鍵盤及滑鼠之外部I/O裝置、應用軟體、及 一圖形硬體加速器,此圖形硬體加速器附著於陰極射線管 (CRT),此爲該類的實體影像顯示裝置之一例子,其爲該 類的外部I/O裝置之一副類。 應用軟體在主電腦內之一般用途處理器元件上執行, 可選擇採取人類使用者經由鍵盤及/或滑鼠裝置之輸入, 且從而導致圖形硬體加速器可計算最後繪製之影像,然後 發送影像,作爲視訊輸出信號至CRT以供顯示。
主介面
Infib and介面爲主介面之一例子。當任意一類的外部 I/O處理器被連接至主電腦時,術語主介面係指主電腦及 硬體加速器間之正式及/或實體介面。通常此介面是某種 的內部電腦匯流排,所以主介面有時稱爲主匯流排。然而 ,當需要更高速之電及/或光介面以連接不同之計算副系 統在一起時,主介面較不可能爲具有大量線的匯流排,由 插於相同主電腦中之不同計算副系統所共用。而比較可能 爲一點至點介面,將比較少共用信號。 -20- 1305900 (16) 在提及3d圖形硬體加速器方面,術語主介面一辭暗 指特殊主介面,其連接3d圖形硬體加速器至主電腦。 應用軟體 人員、公司、及組織通常購買一般用途電腦,以執行 有用之工作。此工作是部份地由購買或編寫供此工作用之 特定電腦程式所執行。術語應用軟體指此種程式。
在3d圖形硬體加速器方面,應用軟體經由圖形API ( 應用程式介面)而與3d圖形硬體加速器通訊。 訊息
一訊息爲一物件,其自一實體、來源或發送者被發送 至一或更多可能目的地或接收器實體。訊息本身通常有一 些內容,資訊是來源正發送至目的地。訊息之不同實施例 可明白地分出路由或目的地資訊(亦稱爲標頭)及訊息之其 餘內容(亦稱爲酬載)。確實’在某些實施例中,分出訊息 本身之"型式",作爲又另一件分出之資訊。電腦科學中之 不同系統訂定依許多不同方法而分開之各件訊息系統。此 訂定之目的在說明由大部份訊息系統所共用之更抽象更高 層語意。當需要使用訊息系統來說明本發明之各種實施例 時’先訂定訊息系統之特別詳細情形。 單投及多投 考慮由多個不同副系統構成之一電子系統。假定電子 -21- 1305900 (17) 系統中已建立一通訊系統,使得至少一些個別副系統可自 該副系統發送訊息於通訊系統上,其被輸送至一個以上的 副系統。考慮一訊息自一副系統被發送。如訊息之目的地 確實爲另一副系統’則該訊息被稱爲單投訊息。如果目的 地爲一個以上之其他副系統,則該訊息被稱爲多投訊息。 作爲多投訊息,該訊息無需被發送至所有其他副系統,僅 可能一個以上副系統而已。確實,如果在一系統,可能之 目的地不允許發送之副系統確實知道何者或多少副系統實 際地被多投訊息指定爲標的地,則可能僅一或甚至無其他 副系統實際最終成爲多投訊息之目的地,且它仍是視該訊 息爲多投訊息之情形。
U 有標準之架座系統,在商業上由許多通訊、電腦、視 訊、科學及其他產品使用。有標準之"架’I,在約1 9吋分開 之垂直軌條上一組分開之螺栓孔。架軌條上之孔分開,使 得標準寬度但可變高度之產品可由螺栓固定於任一架上, 而不留下垂直空隙。此由”量化”可變裝備高度爲整數之基 本單位而達成。基本單位爲1及4分之3吋高度,此單位稱 爲一 U。於是,可以U爲單位來指定一件特定裝備之高度 ,例如1U件裝備,2U件裝備等。架可安裝之裝備之深度 並不固定於任何數目,但有一深度範圍,可以符合大部份 裝備,通常小於16吋或18吋。冷卻空氣應自一件架可安裝 之裝備之六面的何處進入及熱空氣應自何處離開並無通用 -22- 1305900 (18) 之標準。但在特定之市場或工業部門內,可存在某些標準 。類似地,雖然許多市場假設大部份電纜包括電源電纜, 由地板自背面及/或上面進來,但並非一槪如此。因爲由 調節空氣保護之電力備用機器房間空間每平方呎是可非常 昂貴的,所以某些市場可非常堅持嚴格遵守其”非正式"標 準。
葉片 在電腦裝備方面,術語葉片意指小架可安裝裝置(例 如,在高度上不超過小數目之U),自實體容量觀點言之 ,其包裝相當多之電力於一小匣中。而且,並非非常複雜 之裝置,每一個別匣應相當簡單;複雜之系統應可由放置 大量之葉片於一或更多之標準架中而達成。
電腦空間中之葉片之目前的例子爲一、二、或四、或 更多之PC可相容CPUs在一單個母板中,具有記憶器、 可能少數之低輪廓碟驅動器、一或更多的標準網路連接器 、及或且有限數量之PCI槽,所有均在短至僅2U高度之 架可安裝底盤內。多個此種單元共同地一起被安裝於架中 ,以形成網路伺服器及其他計算副系統,其需要大量之 CPU,無需比使用標準連接可達成者更好之連接。 圖形板 術語圖形板是欲說明可由本發明致能之一類新的3 d 圖形硬體加速產品。圖形板意指短高度(可能在2至4 U範 -23- 1305900 (19) 圍)之個別匣,其可經由工業標準介面如Infiband而連接 至主電腦,並發送筒品質之最後繪製之影像於長線數位視 訊信號波道上,經由橫桿切換器至媒體內之個別辨公室、 會議室’、驗室及戲院,以擴大單個實體建物或多建物園 區內之組織。 電腦圖形術語
由於本發明係有關電腦圖形之領域,尤其是3d圖形 硬體加速器,故應大體討論此方面之若干技術術語。 2d電腦圖形及3d電腦圖形
電腦圖形爲熟知之術語,說明電腦科學之一副學科, 集中於直接及間接使用電子及電腦於產生計算之視覺結果 。由於其熟知的性質,在這裡不給予精確之定義。確實需 要某些定義的是三術語之不同使用,此三術語爲:電腦圖 形、2d電腦圖形及3 d電腦圖形。在本發明之說明中,術 語2d電腦圖形用以指集中於2d效果之副學科:字型、排 版、照片編輯、繪畫系統、2d(或"胞”)動畫等等。而術語 3 d電腦圖形用以指僅集中於3 d效果之副學科:3 d繪圖、 採光、3d模型、3d動畫等等。在硬體支援方面’術語3d 電腦圖形通常指除了 2d技術之外,支援3 d技術之能力。 由於此文件之題目包含圖形之硬體支援包括2d及3d技術 二者,故在此文件中術語3 d電腦圖形用以指所有各型式 之圖形計算’包括2d及3d技術二者。一般言之’在此文 -24- 1305900 (20)
件中,除非另有明白說明,否則遵循3 d係指3 d及2 d技術 之習慣。當術語之前不冠上何維時,在本文件中,除非另 有明白說明,或在該術語之文中留有故意模糊使得術語係 指3 d或2d之意思(例如,此技術可支援何種型式之電腦圖 形?)之情形,否則該術語在習慣上指3 d及2 d二者。明確 言之,術語電腦圖形之使用遵循此習慣。欲指電腦圖形之 該副學科僅包括3 d技術,接著定義術語3 d圖形明確地限 定其範圍僅於電腦圖形領域之3 d部份。注意雖然某些術 語包含字串"3 d圖形",但這些術語並非自動免除包括2d 技術,每一術語之定義需明確地包含一般法則之例外。 一相似之範圍問題出現於2d及3d之繪圖定義。此議 題不僅在3d包含2d,且硬體被統稱爲"繪圖硬體",但支援 電腦繪圖技術之範圍並非僅爲任何維之繪圖技術;所謂” 繪圖硬體''亦可包含支援非繪製電腦圖形之技術。而且, 明確之定義可移去此可能之模糊。
3 d圖形 3 d圖形爲電腦科學之一副學科,集中於使用數値計 算之方法及技術,以呈現及模擬實體世界的觀點,主要目 的在產生此模擬世界之靜止及活動影像。此涵蓋廣大範圍 之方法,自活物之動畫至更佳之方法,以在電腦內建造合 成之山或真實之飛機。對特定之問題區域,通常有一解像 度範圍是可用的,較高品質解像度需要對應較大量之數値 計算。
-25- 1305900 (21) 如此處所定義的術語3 d圖形通常包含2 d電腦圖形之 技術。在此文件中,3d圖形及2d電腦圖形中所定義之技 術之組合稱爲3 d電腦圖形’或在文中簡稱爲電腦圖形(注 意術語"2d圖形"不在此文件中定義)。 2 d繪圖及3 d繪圖
在此文件中’術語2d繪圖將指在平面中由電腦圖形 繪畫之操作-線繪畫、多角形充塡演算法、字型(光柵操作 、一至η位元擴展、輪廓字型例示及光柵化、字型及符號 之包裝及光柵表示等等)、2d塗繪系統、模擬油墨或塗繪 層效果於帆布上、成像技術等。
術語3 d繪圖指2 d繪圖之所有技術,另加上明確之3 d 技術。這些明確之3d技術主要有關模擬在實體世界中光 子如何與實體物件之表面及內部交互作用至不同之接近程 度,作爲在照相機及人類肉眼中產生影像之程序之一部份 。在大部份情形中,在模擬世界方面,明確之3 d繪圖包 括採取模擬世界中物件之代表,包括模擬之照相機,並產 生繪圖影像(幾乎總是表示爲一陣列的像素),其爲近似模 擬之照相機將在模擬之世界中所”看到"之影像。 在此文件中,字"繪製"之所有三時態:繪製、繪製中 及已繪製,當它們出現而無維字首時,除非另有明確說明 ’或在該術語在文中故意留下模糊之情形,否則定義爲具 有與術語3 d繪製相同之意義,使得可指該術語之3 d或2d 意義(例如,"此技術可支持何型繪圖?”)。 -26- 1305900 (22) 由於繪圖程序之結果幾乎總是爲一影像,故動詞”繪 圖”之預設名辭爲”影像"。字”繪製中"爲現在時態動詞, 例如,”電腦正繪製影像π。字”繪製"爲將來或不定時態動 詞,例如”電腦將繪製該影像”,或"委員會如何決定繪製 何影像?”。字”已繪製"爲過去時態動詞,例如,"電腦已 繪製該影像”。
注意,字"rendering”當用作較大術語之一部份時,可 具有額外術語的特定意義。在本文件中,一重要例子爲當 對含有支援繪圖演算法之硬體之術語定義時,明白提及之 該硬體除繪圖外將支援來自電腦圖形之其他演算法,即使 字"rendering(繪製中或繪圖)"可爲說明該硬體之術語之一 部份。 繪製之影像及最後繪製之影像
通常,執行繪圖之主要結果爲一影像,其稱爲繪製之 影像。複雜之繪圖可產生中間繪製之影像,例如,欲執行 含有反射圖之繪圖,在繪製最後影像之前,會執行另一繪 圖,以產生成爲反射圖之一繪製影像,用於下一個階段之 繪圖中。存在許多其他相似的例子,包括陰影圖。爲了區 別這些不同之意義線索,使用術語繪製之影像,以指任何 繪製之影像結果,尤其是包含中間繪製之影像。術語最後 繪製之影像用於意指人類(或在某些情形爲機器)假設之最 後影像。明確言之,繪製之影像在所有大部份情形中視爲 最後繪製之影像,此繪製之影像被轉換成爲視訊輸出信號 -27- 1305900 (23) ,並被發送經過視訊輸出介面至實體影像顯示裝置。 繪製中程序、繪製程序、圖形繪製程序及3 d圖形繪製程 序 由於繪製中爲一種計算程序,所以當需要其他形態之 動詞時,吾人可稱繪製中之計算程序爲繪製中程序或繪製 程序(比常說之”繪製中之計算程序"爲短),
在此文件中,術語繪製中程序、繪製程序、圖形繪製 程序及3 d圖形繪製程序,所稱之繪製中除非另有明白說 明,否則包含2d及3 d技術。雖然純2d技術確實存在,但 在這裡並沒有術語明白指此。具有字首”圖形”或"3d圖形" 之術語僅用以再強調該繪製程序亦指包含3 d技術。 繪製程序
術語”繪製程序”並不假設繪製程序是藉由軟體繪製或 硬體繪製圖(定義於下)而被執行。該術語在無需區別軟/硬 體之處,亦可抽象地用以說明繪製程序。在其他時間,是 否指硬體繪製或軟體繪製可自文中明瞭,無需加上術語硬 體或軟體。由於此文件主要是有關硬體繪製,故略去術語 硬體,所討論之繪製程序可爲抽象或硬體。當自文中無法 清楚地指出意義時,將使用更明確之術語:抽象繪製程序 、軟體繪製程序或硬體繪製程序。術語3 d圖形抽象繪製 程序、3 d圖形軟體繪製程序、及3 d圖形硬體繪製程序定 義具有與無3 d字首之術語相同的意義,它們僅用以再強 -28- 1305900 (24) 調亦指包含3 d技術之特別形態之繪製程序。 繪製中系統
電腦圖形中之繪製中之觀念爲一抽象觀念。欲實際執 行繪製並產生影像,需要圖形繪製中系統。需要實體元件 ,使得圖形軟體繪製中系統在技術上爲一硬體/軟體系統 ,由硬體及軟體構成,硬體·’一般用途電腦;軟體:軟體 繪製器,此軟體繪製器是一種程式,當在一般用途電腦上 運轉時可執行繪製程序。一圖形硬體繪製中系統包含:一 主電腦、其軟體及一圖形硬體加速器(一種外部I/O處理 器,定義於下)。有時在文中,術語圖形硬體繪製中系統 可僅討論特殊用途的圖形副系統,例如圖形硬體加速器。
通常之維度習慣可應用於這些術語。由於無術語冠有 2d字首,故除非另有明白說明,系統均指包含支援2d繪 圖及3 d繪圖。尤其是,術語3 d軟體繪製中系統指包含2d 繪圖及3 d繪圖。 即時 在呈現對人眼提供連續幻象之一序列的影像方面,需 要以每秒24至84次之等級的時率而呈現該序列的連續影像 。在此特別方面,術語即時意指一程序,其能以與其相容 之時率而產生新影像輸出。在此文件中,除非另有明白說 明,術語即時總是指此等級的時率。 -29- 1305900 (25) 軟體繪圖 考慮真實世界之複雜性’產生高品質最後繪製之影像 之清楚繪圖爲非常需要之計算工作,繪圖可被實施作爲純 軟體演算法,例如’可在一般用途電腦內之一或更多的一 般用途處理器兀件上運轉的程式。此可爲軟體繪圖之一例 子。複雜之軟體繪圖將費時數日,以產生單個最後繪製之 影像,例如會比即時慢上百萬倍以上。較不複雜之繪圖將 費時僅僅數分鐘或數小時。在此文件中,術語軟體繪圖總 是指此定義。術語成批繪圖有時用以指不能視爲接近即時 之足夠快發生之繪圖。 硬體繪圖 在使用3d繪圖之許多應用(工業及消費者)上,以即時 率’或至少接近即時之率來產生最後繪製之影像是非常重 要的。由於此商業上之重要性,可合理建造專用之計算硬 體’一種外部I/O處理器,其被特殊化以執行繪圖計算, 比軟體繪圖所可能者更快(假設技術時框相同)。當不藉由 在般用途電腦內之一或更多通用處理元件元件上運轉之 式而執行繪圖’而是藉由特殊設計用於繪圖之硬體執行 時,此稱爲,,硬體繪圖,,。 加速器 在電腦科學上’加速器、或硬體加速器、或特殊用途 硬體加速器爲一實體裝置,其爲一計算副系統,被設計用 -30- 1305900 (26) 以執行特殊計算程序,比藉由程式在一般用途電腦內之一 或更多的一般用途處理器元件上運轉所可執行者更快(此” 更快”係假設技術時框相同)。此實體裝置通常附著於一般 用途電腦,但加速器不一定爲一外部I/O處理器,因爲已 有許多純計算加速器,其輸出僅爲資料被直接送回至通用 電腦,甚至包含一外部I/O裝置。
考慮吾人之繪圖定義’前置詞"硬體"可視爲冗餘的, 但在歷史上,常加上此字"硬體"’以完全清楚正討論一件 分離之實體硬體。且考慮吾人之繪圖定義,前置詞”特殊 用途n可視爲冗餘的,但在歷史上’常加上術語”特殊用途 ”,以完全清楚正討論被設計在狹窄特殊工作範圍上優越 之硬體。 圖形加速器
術語圖形加速器及圖形硬體加速器係指硬體加速器, 其專用計算程序爲來自電腦圖形之一些演算法。此文件中 所述之大部份此種裝置明顯包含3d及2d繪圖演算法,但 此處所定義之該術語無需如此’遵循廣泛使用之習慣,其 中這些術語用以說明有關其他副組圖形演算法之加速器。 接著定義具有將被支援之電腦圖形演算法之更明白的規格 之術語,且在此文件中,此術語被更典型地使用以確保特 定性。 3 d圖形硬體加速器 -31- 1305900 (27) 在此文件中,術語3 d圖形硬體加速器係指一圖形硬 體加速器’其亦爲一外部1/0處理器,已被設計用以執行 來自電腦圖形之若干演算法,明顯包含,但不限於3 d繪 圖(其被明白地定義爲亦包含2d繪圖之技術)。
一般預期3 d圖形硬體加速器被設計用以執行一副組 之3d圖形繪製程序,比3d圖形軟體繪製程序在一般用途 電腦(3 d圖形硬體加速器加裝於此)上執行者更快。最好是 如果3 d圖形繪製程序之其他部份是以相同或比3 d軟體繪 圖程序更慢之速度而被執行。確實,3d圖形硬體加速器 普通不能執行所有副組之3 d圖形繪製程序,而是遺失之 功能將藉由主電腦單純在軟體中被執行。 由於術語3 d圖形硬體加速器僅爲圖形硬體加速器之 術語,其亦被定義爲外部I/O處理器,且亦被定義用以執 行3d圖形硬體繪圖程序,此特定(如果稍微長)之術語在大 部份情形中是用以說明本發明有關之類之圖形產品。
圖形系統 有時,在文中,爲了簡單起見,術語圖形系統是用以 指一般用途電腦之副系統,其爲圖形硬體加速器。與在此 文件中之普通習慣明顯相反,並不明確地定義圖形系統所 支援之維度。此可包含2d或3d技術,以及支援非繪圖電 腦圖形演算法。在某些情形中,本文將指定該維度。 有時,在文中,爲了簡單起見,術語3 d圖形系統是 用以指一般用途電腦之副系統,其爲3 d圖形硬體加速器 -32- 1305900 (28) 。在此情形中,3 d圖形系統被明白地定義爲能 繪圖及非繪圖電腦圖形演算法,如同由術語3 d 加速器所定義。 API(應用程式介面) 術語應用程式介面或API係指一程式語言或 (應用軟體)及下面某件軟體間之系統介面,且電 準方式而提供應用軟體之可能硬體功能。
圖形API及電腦圖形API 術語圖形API及電腦圖形API二者係指相 API係指某形態之圖形功能。這裡,缺少任何維 並非常暗示支援2d及3d圖形技術二者。在此文 語圖形API及電腦圖形API二者均爲抽象的, 實性質及維度僅僅是由圖形API之特定情形而定 亦注意任何特殊之3 d圖形硬體加速器通常 個以上不同之電腦圖形API,例如,經由不同之 露硬體2d及3d功能;3d圖形硬體加速器與API 一對一之關係。
繪圖API 術語電腦圖形繪圖API指某形態之圖形繪 API。在文意上,術語電腦圖形硬體繪圖API是 形態之圖形硬體繪圖系統之API。因爲大部份電 執行所有 圖形硬體 電腦程式 腦可依標 同觀念, 度之字首 件中,術 支援之確 義。 將支援一 API可揭 並不存在 圖系統之 用以指某 腦圖形繪 1305900 (29) 圖API具有單純軟體實施以及使用圖形加速器者,此過度 特定術語將不用於此文件中。且必須記住,即使當使用強 力圖形加速器作爲電腦圖形繪圖API之實施之一部份時, 該API總是具有至少某些元件,其被實施作爲主電腦上之 軟體,例如,一電腦圖形繪圖API總是爲一純軟體系統, 或混合之硬體及軟體系統。
術語2d電腦圖形繪圖API係指僅支援2d繪圖技術之 電腦圖形API。 術語3d電腦圖形繪圖API係指僅支援3d繪圖技術之 電腦圖形API,在此情形中,與本文件之普通習慣相反, 僅繪圖技術可爲純3d,或包含2d及3d技術二者。使用此 定義,因爲許多商業電腦圖形繪圖 API爲純3d性質,而 其他爲混合之2d及3 d性質。亦注意任何特定之3 d圖形硬 體加速器通常將支援一個以上不同之電腦圖形繪圖API, 例如硬體2d及3d功能可經由不同之API被揭露。 2d電腦圖形繪圖API之特定例子包括PostScript、 Java、2d、HTML 及 SVG。 3d電腦圖形繪圖API之特定例子包括OpenGL、微軟 之 D ir e c13 d、Java3 d、Q ui ckDr a w3 d、RenderMan 及 mental ray。 繪圖狀態 繪圖通常爲全狀態程序。此意指當應用軟體使用電腦 圖形繪製API來指定(最終)發生繪圖時,電腦圖形繪圖 <:S :) -34- 1305900 (30) API通常具有明白之狀態資訊,其在本文中將被解釋爲在 狀態資訊下之下一個電腦圖形繪圖AP I呼叫。此狀態本文 資訊稱爲繪圖狀態。可能之繪圖狀態之例子包括目前繪畫 顏色、目前轉換矩陣、z緩衝之致能、目前定義之光源, 目前框之防混淆濾波器等等。 顯不表
許多圖形API支援顯示表之觀念。一顯示表爲一方式 用以指正式API呼叫之前先記錄之集合,圖形API具有 隨帶之參數。在大部份情形中,在該集合之記錄限於特定 副組之API呼叫支援圖形API之期間作成該API呼叫。 在許多情形中,該副組限制於僅幾何規格及繪圖狀態API 呼叫。已製造顯示表(藉由呼叫至圖形API)之後,在較後 之時刻,可作成一 API呼叫,參考先前所製造之顯示表, 以調用(喚起)該顯示表。該調用之語意會改變,但該語意 常爲線性的,例如,調用一顯示表之效果與重作用以定義 顯示表之所有API呼叫取代調用是相同的。確實存在其他 更複雜之顯示表語意,特別是顯示表包含有條件之執行徑 路(例如分支),以及API呼叫之所有正式參數非限制於產 生點處,而是某些參數變爲顯示表本身之調用之正式參數 之顯示表語意。 有關此文件之顯示表之一重要性質爲一旦被製造’大 部份顯示表爲不透明的’例如,其內容不能被製造該顯示 表之應用軟體直接檢查或修改。此意指一旦被製造,顯示 -35- i3〇5?a° 表可自主電腦被發送一次經過主介面至圖形加速器’在此 可被儲存於圖形加速器本身上之某些局部記憶器中。然後 ,將來每當應用軟體調用相同顯示表時,該顯示表之內容 可供局部地有效存取。 圖形驅動器
電腦圖形繪圖API之混合軟體及硬體實施之軟體半部 之工作,在於分裂自應用軟體傳送至API之程序呼叫、繪 圖狀態、內定、數値及資訊結構而成爲圖形硬體加速器可 處理之形態,以協助繪圖。位於軟體之其餘部份及硬體間 之主電腦軟體普通稱爲驅動器。當該硬體爲繪圖硬體加速 器時,該驅動器稱爲圖形驅動器或圖形硬體驅動器。 紋理圖
在此文件中,術語紋理圖係指構成一影像之2d行列 之像素値,於繪圖程序之期間使用這些影像。術語2d紋 理被定義與紋理圖相同之意義。 體素圖 在此文件中,術語體素圖係指構成一確實影像之3 d 行列之體素値,於繪圖程序之期間使用這些確實影像。術 語3d紋理被定義與體素圖相同之意義。 紋理 -36- ·! ·: 1305900 (32) 在此文件中’術語紋理係指紋理圖或體素圖。可自文 中或在無關維度之抽象階層而清楚其維度,或實際可意指 二種維度。 紋理元素 紋素
術語紋理元素及術語紋素係指紋理圖之個別像素或體 素圖之體素。如果術語"像素”意指位在圖形系統之任何位 置之較傳統之像素以及在紋理中之特殊像素,則使用這些 術語以避免可能引起之任何模糊。 紋理儲存 紋理記憶器
術語紋理儲存及紋理記憶器係指在實際記憶器內,實 際儲存紋理圖之一特定設計之副系統。例如”紋理儲存與 框緩衝記憶器合倂",或”紋理儲存位在僅爲其所建立之一 特殊記憶器副系統內”。 環境圖 一環境圖爲一特殊電腦模擬世界周圍之背景(通常在 遠距離)之一紋理圖或一組紋理圖影像。在許多情形中, 環境圖爲天空之雲,遠距離之山之影像。在文意上,術語 環境圖及反射圖並無標準化之意義,且有時可指相同事物 。在此文件中,術語環境圖僅用以說明遠處背景之影像。 -37- 1305900 (33) 在許多情形中,環境圖無需在每一繪圖框中被重新繪製。 反射圖
一反射圖爲一組特定物件,或一單個物件,或甚至一 件特殊物件周圍之一特殊電腦模擬世界之一紋理圖或一組 紋理圖影像。反射圖是用以模擬高發亮或部份發亮物件在 真實世界中具有之性質,它們"反射”(或許隱約地)其周圍 之世界。 在文意上,術語環境圖及反射圖並無標準化之意義, 且有時可指相同事物。在本文件中,就特定物件而論,術 語反射圖將單獨用以說明含有完全背景之影像,只要在特 定物件上的一點被連接,完全背景包括近背景及遠背景二 者。在大部份情形中,環境圖無需在每一繪圖框中被重新 繪製。(想像二色恐龍行過沙漠)。 陰影圖 φ 一陰影圖爲繪製影像之z像素組成份,眼點位在虛擬 光源之中心,此虛擬光源是欲投陰影於最後繪製之影像中 在最後繪製之影像上開始繪製之前,對每一光源執行 中間繪圖,此光源是要投陰影於最後繪製之影像中。對於 每一個此繪製,僅含有所完成之中間繪圖影像之Z像素成 份之影像被儲存於3 d圖形硬體加速器內,作爲紋理圖。 這些紋理圖稱爲陰影圖。 -38- 1305900 (34) 注思爲求精確’陰影圖之單個成份値,z値,在某些 實施中通常需要藉由高數値精確度’例如大於16位元之整 數、固定點、塊浮點或浮點精確度來表示。 在大部份情形中’如果有自特殊光源投射陰影之任何 物件之任何移動’或光源本身移動,特定光源之陰影圖在 每一繪圖框均需被重新繪製。
像素 熟悉之術語像素指個別"影像元素",此像素構成影像 之電腦表示。當討論圖形硬體加速器時,必須記住額外特 殊資料及控制資訊普通與像素一起被儲存並視爲其一部份 ,例如,一像素可包含遠多於只有紅、綠及藍色成份。 像素交插
大部份高性能像素記憶系統通.常由支援每次存取一個 以上像素以獲得其性能。此同時存取通常有一些限制,在 此限制上,可同時存取像素。對於許多實施例,此等限制 需與記憶系統如何交插(平行構製)有關,記憶器組織之技 術細節稱爲記憶器交插。當記憶器由像素構成時’此亦稱 爲像素交插。一簡單實例可爲一記億器分爲1 6平行像素記 憶器,安排成4x4像素交插。此意指y中像素之每第四線 上之X中之每第四像素被儲存於一特定副記億器中’且每 次僅可自此記億器存取一像素。 -39- 1305900 (35) 副像素 術語”副像素”鑑定以下名辭爲大於整數像素量度之位 置或面積之精確指定,"副像素”並非一名辭,例如,你不 能計算"副像素"之値,僅能計算”副像素面積"之値。副像 素之普通使用於位置及面積上爲:”副像素精確位置”。
副像素有時之另一使用爲小於一個像素之意義,如: "三角形具有副像素面積”意爲三角形具有小於一個像素之 面積。一”副像素三角形"意爲三角形在方形量度上小於一 像素,例如,三角形之封合匣在寬度及高度上小於一像素 。注意是否該三角形仍可跨越一個以上像素。 像素深度
用以表示一單個像素之位元數並沒有標準化。當討論 圖形硬體加速器時,由於架構特定額外特殊資料及控制資 訊與像素一起儲存並視爲像素的一部份,故表示單個像素 所需之位元數並非總是明顯的。一像素之表示(以及位元 數)在繪圖程序之不同之內部及外部階段亦通常不同。且 當然,s午多圖形硬體加速器能動態地支援一範圍的不同像 素格式,以及若干位元之總大小。術語像素深度用以意指 一像素之位元之總大小(或有時以資訊之其他良好指定之 單位),通常,但並非總是,在討論用以儲存像素於框緩 衝器及紋理緩衝器中之代表的大小方面。由於用於3 d圖 形之像素常包含z”深度”組成份(或反"深度”組成份),故 應明瞭”z深度”爲與像素深度不同之觀念。前者指一像素
-40- 1305900 (36) 之深度組成份’或一像素之深度組成份之値,後考指一像 素之所有組成份之資訊單位之總大小。 像素格式
術語像素格式意指一像素之特定結構之表示。此結_ 通常以多個像素組成份來定義,各可由一些位元,或由其 自己之副結構指定。一些像素格式爲抽象的,它們可指定 像素”包含紅’綠,及藍組成份,,,而不指定任何其他細節 ’諸如位元大小,或組成份之其他副結構細節。 像素組成份 術語像素組成份指一特定之資料組成份,其構成由特 定像素格式所定義之像素之內部結構之一部份。
不同之3d圖形硬體加速器可選擇支援與其它所支援 不同之像素組成份。在目前幾乎所有之情形中,像素至少 具有通常三値之色組成份,例如紅、綠及藍數値。這些値 各需要多少位元的儲存値,或甚至這些値之數値格式在不 同之系統間亦不相同。 除通常的紅、綠及藍像素組成份値外,普通亦發現所 謂"alpha"組成份値,被儲存作爲每一像素之一部份。此 alpha値可用於若干不同之熟悉繪圖技術上。 對於支援z緩衝器基礎之繪圖演算法之3d圖形硬體 加速器,一非常重要之像素組成份爲z値(或若干其他距 離基礎之任意値)。 -41- Ι305Τ 其他普通像素組成份包含模板平面,如由OpenGL之 規格定義。又其他像素組成份可爲快速清除平面,覆蓋平 面,游標平面,視窗ID平面,及現在已多年出現於框緩 衝器中之其他類似組成份。
迄未接觸之一問題爲有關雙緩衝如何實施。所有像素 是否均具有前及後緩衝器?是否一些像素組成份,諸如z 僅存在於前緩衝器中?個別視窗是否可切換緩衝器而同時 不影響螢幕上之其他視窗?是否能組態3 d硬體加速器,使 得每一像素包含不同數之組成份,及組態何組成份爲單對 雙重緩衝?它們是否支援三重或更高的緩衝。何謂立體影 像信號格式,特殊場順序立體影像信號格式:如何建立框 緩衝組以支援立體,如果可以的話?在立體,是否有一些 像素組成份被四重緩衝,或使用其他技術?所有這些框緩 衝器架構及像素組成份架構取捨爲精於本技藝之人士所熟 悉,且這些需求之施加於新迴路架構應爲精於以此處說明 爲基礎之技藝之人士所明瞭。 像素資料 有時需要參考所有像素之像素組成份之整個集合。雖 然在文中,術語像素可具有此意義,有時會使用術語像素 資料以使所述者更完全清楚。 體素 雖然並不如術語像素廣爲所知,術語體素意指像素之 -42- 1305900 (38) 3d延伸’—"體積元素"。體素爲貢獻於小空間區域(大體 均勻封裝之3d胞)之組成份之集合。正如2d影像普通是由 2d行列之像素以數位表示,3d”影像'’通常是由3d行列之 體素表示。一"體素圖"類似於三維行列之體素。 雖然電腦處理中有時使用四及更高維度來表示,但使 用在任何標準術語上是不夠普遍的,例如,目前少數人使 用諸如”超體素"術語。
體素格式 術語體素格式意指一體素之特定結構表示。此結構通 常以多個體素組成份來定義,各可由一些位元,或由其自 己之副結構來指定。一些體素格式爲抽象的,它們可指定 該體素”包含紅、綠及藍組成份”,而不指定任何其他細節 ,諸如位元大小,或組成份之其他副結構細節。
體素組成份 術語體素組成份意指特定之資料組成份,其構成一體 素之內部結構之一部份,如由特定體素格式所定義。普通 體素組成份可爲紅、綠及藍値,或它們可爲假色表之索引 ,或它們可爲更複雜之多維値,其需要應用定製之屏蔽器 ,以變換爲簡單之色。 基本影像 在傳統之信號處理中,時常已知爲關於處理中之基本 -43- 1305900 最高品質信號。確實,在一些情形中,已知許多數學上之 確實性質。當執行中之操作再取樣及低通濾波在代表波道 (代表一較低頻率波道)之某頻率上之信號時,有關基本信 號之此資訊可用以簡化及歸類該處理。
在技術上,繪製之影像之防混淆僅爲二維信號-影像 上之工作。問題爲,基本信號之相等者,基本影像計算是 非常耗時的。在繪圖方面,基本影像在技術上爲2 d影像 ,當樣品密度升至無限時,此爲由樣品行列所形成之影像 之限制。這是由於大部份繪圖演算法建立之方式,它們僅 可告訴吾人基本影像在特定無限小點處之値,它們並不確 實地告訴吾人基本影像在小2d面積上之平均値,或有關 影像組成份之何頻率可潛伏於基本影像中。此即爲何防混 淆(及全螢幕防混淆)在電腦圖形中爲如此困難的問題。再 者,爲正確地說明各種防混淆嘗試如何解決此問題,基本 影像之觀念需要討論於堅固之信號處理基礎上。
樣品 術語樣品是來自資訊理論’且特別地首先用以說明由 某形態之信號所構成之個別分離之量度(類比或數位)。該 信號無需爲一維,如無線電波,它可以爲二維’如在影像 感測裝置上之光圖案。術語"樣品"之使用於3d圖形上通常 意指分立之數位値’其代表繪製中之基本影像之一點樣品 ’樣品與像素密切關聯’且常具有相似或相同之組成份値 。信號處理之數學說明爲更正確地建造數位影像(例如一
-44- 1305900 (40) 2 d行列像素)’及爲避免由於基本影像中出現欲產生之像 素行列頻率以上之頻率所引起之干擾圖案,需要在單個像 素之不同點上先對基本影像’,取樣"(探測),此爲大部份高 品質電腦圖形防混淆演算法所作者。樣品仍需要另外的信 號處理’然後可使用其資料以產生最後像素,此爲繪圖程 序之輸出(以下若干術語說明此信號處理之其他部份)。 需注意在簡單之圖形繪製管線中,其爲無防混淆(例 如,直至最近’建造大部份的圖形硬體加速器之方式), φ 所謂像素實際爲樣品,在每像素一個之樣品之密度上取樣 。這是由於在數學上,一像素應爲該像素之二維鄰居中之 基本影像値之特殊平均値之代表;一樣品爲在2 d空間中 之一單點處所取之基本影像之特定値(非平均値)。因此, 無防混淆處理’在技術上與此處所提之各種術語定義一致 ,較舊之圖形硬體加速器被計算且被儲存於其框緩衝器樣 品’其非像素。當它們不經修改傳送至影像輸出信號時, 它們由內定變爲似近像素,在定義上此爲一像素流。 · 除非另有明白說明,此處剛提到之樣品之特別定義總 是使用於此文件內。 樣品位置 在繪製2d影像方面,所有樣品爲該影像上之數學點 。作爲點,樣品在所繪製之影像上具有2d位置,此位置 稱爲樣品位置。此位置通常具有明白之量,由樣品所指定 之副像素精確度之像素數指定。指定此樣品位置之功能爲 -45- 1305900 (41) 另一觀念,通常稱爲樣品圖案。 樣品位址
在3d圖形硬體加速器之框緩衝器(或取樣緩衝器)方面 ,所有樣品暗指具有一框緩衝器位址,用於辨別其樣品組 成份儲存於框衝器內之位置。該位址稱爲樣品位址.。位址 可由多種不同之方法來指定,但一普通方法爲以樣品置於 其內之像素之位址爲基礎之樣品位址,因此亦包含獲自樣 品之線性序數之位址資訊。此線性序數是來自與該樣品相 同之像素中所包含之所有樣品之線性順序。 樣品格式
術語樣品格式意指樣品之一特定結構表示。此結構通 常以多個樣品組成份定義,各可由若干位元’或由其自己 之副結構指定。一些樣品格式爲抽象的,它們可指定該樣 品"包含紅、綠及藍組成份",而不指定任何進一步細節, 諸如位元大小,或組成份之其他副結構細節。 樣品組成份 術語樣品組成份意指一特定之資料組成份’其構成由 特定樣品格式所定義之樣品之內部結構之一部份。在此處 所述之高品質3d圖形硬體加速器中’樣品有效地取代框 緩衝器中之像素。因此,樣品組成份應與像素組成份非常 相似。不同之3d圖形硬體加速器可選擇支援與其它所支
-46- 1305900 (42) 援者不同之樣品組成份。在目前幾乎所有之情形中,樣品 至少具有通常三値之色組成份,例如紅、綠及藍數値。這 些値各需要多少位元儲存,或甚至這些値之數値格式在不 同之系統間是可以不同的。
除通常之紅、綠及藍樣品組成份値外,普通亦發現所 謂”alpha"組成份値,被儲存作爲樣品之一部份。alpha値 可用於若干不同熟悉之繪圖技術上。對於支援z緩衝器基 礎之繪圖演算法之3 d圖形硬體加速器,一非常重要之樣 品組成份爲z値(或若干其他距離基礎之任意値)。 其他普通樣品組成份包含模板平面,如由OpenGL規 格定義。又其他樣品組成份可爲快速清除平面、覆蓋平面 、游標平面、視窗ID平面及其他類似組成份,它們已多 年出現於框緩衝器中。
迄未接觸之一問題爲有關雙緩衝如何實施。所有像素 是否均具有前及後緩衝器?是否一些像素組成份,諸如z 僅存在於前緩衝器中?個別視窗是否可切換緩衝器,而同 時不影響螢幕上之其他視窗?是否能組態3 d硬體加速器, 使得每一樣品包含不同數之組成份,及組態何組成份爲單 對雙重緩衝?是否有任何支援三重或更高緩衝?何謂立體影 信號格式’特殊場順序立體影像信號格式:如何建立框緩 衝器’以支援立體’如果可以的話?在立體,是否一些像 素組成份現四重緩衝,或是否使用其他技術?所有這些框 緩衝架構’像素組成份及樣品組成份架構取捨爲精於本技 藝之人士所熟悉’及這些需求之施加於新迴路架構應爲精 C· -47- 1305900 (43) 於以此處說明爲基礎之技藝之人士所明瞭。
RGB
術語RGB指樣品或像素之紅、綠及藍樣品組成份, 視本文而定。此定義不限制這些樣品組成份或像素組成份 之數値表示。在不同之實施例中,它們可爲單位元,整數 ,固定點數,塊浮點數(其中,指數較之簡單順序整數範 圍更粗糙量化)’浮點數’公用指數浮點數(其中,一單個 指數値施加於所有三組成份上),或其他更複雜之數値表 不 ° 術語RGB普通更指色之光譜組成份表示。在此實施 例中,可使用4,5,8,25 ’或甚至128分離之光譜組成份 ,以更精確地表示光之色,及其與實際世界中之材料物件 交互作用。
有時,在文中’術語RGB可用以指像素或樣品之像 素格式或樣品格式。
RGB A 如術語像素組成份及樣品組成份之定義中所述,有時 除了色組成份之外,像素或樣品可具有alpha組成份。有 時以希臘字母a稱呼。術語RGBA指一像素或一樣品之 RGB組成份以及alpha組成份。 雖然在硬體中,傳統具有一單個alpha組成份,即使 呈現三或更多個色組成份,在語意上,單個alpha組成份 -48- 1305900 (44)
是關聯並施加於所有色組成份。但在軟體繪圖方面,非常 普通的是,當演算法需要alpha儲存於框緩衝器中,使得 各別alpha組成份存在,特別與每一色組成份結合。明確 言之,如使用三色組成份紅、綠及藍,則亦有三個分開之 alpha組成份,alpha紅、alpha綠及alpha藍亦存在。在 本發明之至少一實施例中,術語RGBA指此六alpha及色 組成份結構。有時,在文中,術語RGBA可用以指像素或 樣品之像素格式或樣品格式。 有時,使用更普通的術語RGBA,以說明像素格式或 樣品格式,其中至少一實施例除了色組成份之外,實際亦 使用一 alpha組成份,但其他實施例可無明顯之alpha組 成份。 有時,alpha組成份之存在爲色組成份及z組成份以 外之任何額外組成份之位置保持者,因此一些實施例可包 含額外組成份,用於超過alpha組成份所述之傳統者。
RGBZ 術語RGBZ指像素或樣品之RGB組成份以及一 z組 成份。儲存具有像素之z値,以執行z緩衝之觀念爲電腦 繪圖中所熟悉。但不同之實施例可使用不同之公式來計算 z距離有關之値。不同之實施例可使用不同之數値表示, 以表示這些z値,包括但不限於整數、固定點、塊浮點及 浮點。 有時,在文中,術語R G B Z可用以指像素或樣品之像
-49- 1305900 (45) 素格式或樣品格式。
RGBAZ 術語RGBAZ指像素或樣品之rgBA組成份以及z組 成份’如術語RGBZ之定義中所述。 有時’在文中,術語RGB AZ可用以指像素或樣品之 像素格式或樣品格式。
有時’使用更普通的術語RGBAZ,以說明像素格式 或樣品格式,其中至少一實施例除了色及z組成份之外, 實際亦使用一 alpha組成份,但其他實施例可以無明顯之 alpha組成份。 有時,alpha組成份之存在爲色組成份及z組成份及 z組成份以外之任何額外組成份之位置保持者,因此一些 實施例可包含額外組成份,用於超過alpha組成份所述之 傳統者。
取樣緩衝器 如他處所定義’框緩衝器爲像素組成之影像之數位記 憶儲存器。然而’吾人現在提及硬體’其中可以不實際儲 存明顯之像素,而是由來自樣品所構成之影像之數位記憶 儲存器之樣品流製造。記憶儲存器在技術上仍可稱爲框緩 衝器,因爲其保持說明影像輸出信號之一或更多框之資訊 。但由於框緩衝器在電腦圖开^方'面已有' 一個不冋之眉'義’ 例如整個圖形硬體加速器對僅像素之記憶儲存器,故在此
-50- 1305900 (46) 文件中’術語樣品緩衝器有時用以說明影像表示之樣品之 記憶儲存器。 樣品密度
術語樣品密度用以說明像素及樣品間在某方面之一些 關係’例如,當討論框緩衝器或樣品緩衝器時。明確言之 ’術語樣品密度指一像素內所含之樣品數。該數可爲分數 ’在大量像素的本文中,如果討論一像素中之樣品之平均 數。樣品密度甚至可爲空間上之常數。且最後,由於由圖 形繪製管線在影像輸出信號產生前所定義之像素之大小在 面積上無需與在影像輸出信號階段中所定義之像素相同, 故圖形繪製管線之其餘部份及影像輸出信號階段可具有不 同的樣品密度,因爲它們使用不同之像素定義。當需要分 清楚時,此二不同型式之像素稱爲繪圖像素及影像像素。 多個樣品密度爲多樣品密度。
有條件之樣品更新功能 框緩衝器之最基本功能在讀出或寫入像素或樣品之內 容(在此定義之其餘部份,爲簡單起見,使用術語樣品, 但在所有情形,該定義亦應用於像素)。但已定義樣品之 更複雜操作之若干更多層面。這些操作一般具有新樣品値 及一目的地樣品位址。樣品更新功能一般採取這些作爲參 數,自目的地樣品位址提取對應之樣品値,對新樣品値及 自樣品位址提取者執行一些功能,然後寫回執行該功能之 -51- < S ) 1305900 (47) 結果之樣品値於框緩衝器中。
樣品更新功能之簡單實例包含各種Boolean函數’例 如:及、或、互斥或等等。但在3d繪圖中’一非常重要 之功能爲根據新樣品値之z樣品組成份及自樣品位址中提 取者之比較,樣品之有條件的更新。雖然大部份系統可在 廣大之範圍上執行特定比較功能(例如大於、小於、大於 或等於、小於或等於、不等於、等於及其他更雜之功倉g) ,但基本觀念爲較之其他”更接近"眼點之樣品應爲現在儲 存於樣品位址中之樣品。如新樣品値’’贏”,則其値寫入於 框緩衝器中,取代舊値。否則,保持現値原狀,且無需寫 入於框緩衝器中之操作。此所謂” z緩衝器更新功能’’爲有 條件的樣品更新功能之一例子。
3 d繪圖中存在有其他有條件的樣品更新功能,包括 取決於一樣品之模板樣品組成份。亦有算術樣品更新功能 ,包括許多alpha混合功能,其中新樣品色樣品組成份及 樣品位址中所含之樣品之色樣品組成份之加權和寫回於樣 品位址中。其他有條件樣品更新功能爲相當簡單之狀態可 變致能/除能個別樣品組成份及/或欲被讀出或寫入之樣品 組成份之位元場。 3d圖形硬體加速器之實際硬體通常需支援此處所述 之所有更新功能及更多。爲提供一簡單之術語來函蓋此等 功能之所有可能組合,在此文件中,術語有條件樣品更新 功能指當欲處理繪圖於框緩衝器中之一樣品時所用之一般 更新功能。本發明之特定實施例可定義其有條件樣品更新 d ) ·βϋ· -52- 1305, 功能包括此處所述之樣品更新功能,或其實施例所定義之 新特殊樣品更新功能之任何特定組合。 超取樣
術語超取樣指任一 3 d圖形防混淆演算法,此由計算 每像素之一點以上之基本影像之値而操作,例如,使用” 樣品”而非”像素”之任何防混淆演算法。在3 d圖形中,術 語”隨機取樣”有時與術語超取樣可交換使用。在此文件中 並非如此。’'隨機取樣”指一特定類的方法,用以決定基本 影像內之何副像素位置爲欲計算之樣品。此等方法原認爲 是最佳或接近最佳,但近年來,經驗及理論硏究已斷定此 等方法近乎總是爲其他方法之次佳。例如,使用”隨機取 樣”所製之最後結果防混淆影像通常似乎不如使用用以決 定欲基本影像副像素取樣位置之其他方法所產生者。 防混淆 · 術語防混淆指任何有限制之假設或無限制之方法,用 以移去由圖形繪製管線所產生之影像中由於基本影像之高 空間頻率仍存在於影像中所引起之不需要之人造品,例如 除去”鋸齒"。術語防混淆指減少僅在有限制之特殊情形, 例如僅在線,而非三角形繪製中之人造品之方法,以及用 以移去這些人造品之較無限制之方法。 術語防混淆爲無連字號之一字;如有連字號,則術語 "混淆"及術語”混淆之繪圖"可以接受,且通常並不是如此 -53- I305%? 全螢幕防混淆
術語全螢幕防混淆指防混淆方法之一副組,其使用於 影像內所繪製之大部份所有型式之圖形原始中。這些方法 相當通用’並與較專門之防混淆技術所施加者比較,施加 較少限制於圖形繪製管線之工作上。欲合格爲"全螢幕防 混淆” ’ 一方法在其可使用時應有很少的限制,且無太多 之失敗情形。”全螢幕”標籤僅表示該方法應通用,該方法 在較小之螢幕區上,例如僅一特殊視窗,或甚至一視窗之 一副區上能作用。 摺積
術語摺積通常指應用摺積核心(加權組)於2d行列樣品 ’以實施全螢幕防混淆方法。摺積在技術上在一計算步驟 中應用防混淆技術之"再取樣”及”通頻帶”濾波器二者。在 此文件中,除非另有明白說明,此爲摺積之定義。 摺積核心 術語摺積核心指用於計算摺積之該組加權値。在此文 件中’此摺積計算總是爲全螢幕防混淆方法之一部份’除 非另有明白說明。此意爲摺積核心總是來自合倂之再取樣 及通頻帶濾波器。該核心値本身常被動態地計算,如由全 螢幕防混淆方法詳細指定。
•54- 1305900 (50) 防混淆瀘波器 由於此文件中之所有摺積核心指摺積核心濾波器,此 用以執行防混淆用之濾波,術語防混淆濾波器定義指可用 於防混淆之任何摺積濾波器。 匣濾波器
最簡單之全螢幕防混淆再取樣及通頻帶瀘波器之一爲 匣濾波器。該濾波係數在正方匣下具有値1,及在其他情 形爲零。匣濾波器之普通大小爲一像素。此種防混淆濾波 器稱爲1 ¥ 1匣濾波器。所有係數具有一簡單常數値使匣濾 波器比更通用之濾波器在計算上低廉。此亦通常產生比其 他更通用之濾波器所產生者較低品質之結果。 幕濾波器
術語幕濾波器指一簡單之防混淆濾波器,形狀如四面 形之金字塔或幕。 輻射對稱濾波器 術語輻射對稱濾波器指任何濾波器,其在一點處之濾 波係數値僅爲該點距濾波器中心之距離之函數,例如,非 該點距濾波器中心之方向之函數。該濾波器由一參數之一 單個値函數完全決定,此參數爲一點與濾波器中心之距離 。此輻射函數有時亦稱爲濾波器之橫斷面。 -55- 1305900 (51) 可分離之濾波器
術語可分離濾波器指任何濾波器,其在X、y點上之 値爲二單維濾波函數之乘積,其中這些單維濾波函數之一 僅爲X坐標之函數’且另一僅爲y坐標之函數。(當然, 可能有許多不同之X及y坐標表示)。當最後實際影像顯 示裝置具有正方(或近於正方)像素,或像素在方形格子上 時,此種濾波器比幅射對稱濾波器具有理論及實際品質優 點。大部份輻射對稱濾波器亦具有可分開之濾波器版本, 此額外瀘波器可用於本發明之一些實施例。
Gaussian濾波器 術語Gaussian濾波器指一輻射對稱濾波器,此爲防 混淆濾波器,其輻射函數爲Gaussian曲線。 立方濾波器 φ 術語立方體濾波器指一輻射對稱濾波器’此爲防混淆 濾波器,其輻射函數爲一個三次曲線或件取向連續序列之 三次曲線分段。
Mitchell-Netravali 濾波器 術語M i t c h e 11 - N e t r a v a 1 i濾波器指一家族的防混淆據 波器,它們爲輻射對稱濾波器,其爲立方濾波器。此家族 的立方濾波器由二件取向的三次曲線分段界定’其中,三 -56- 1305900 (52) 次曲線分段是由二參數B及C構成。 同步濾波器 術語同步濾波器指輻射對稱濾波器,其爲防混淆濾波 器,其輻射函數爲同步函數。同步濾波器無最大半徑,其 連續伸出至無限遠。 窗同步濾波器 φ 術語窗同步濾波器指輻射對稱濾波器,其爲一防混淆 濾波器,其輻射函數爲同步函數,伸出至指定之半徑(窗 値),濾波器常數在半徑大於此窗値時恆爲零。 圖形管線 術語圖形管線及圖形繪製管線二者指一組順序管線階 段,輸入至圖形繪製系統之資料通過。特定電腦圖形繪製 API通常詳細指定其將實施之一組管線階段。在本文中’ 這些術語可指任一不同型式之圖形繪製程序’但在此文件 中,其總是特別指3 d圖形繪製程序。有時使用明顯之術 語3d圖形繪製管線。 繪圖管線 在3 d圖形硬體加速器中,術語繪圖管及繪圖管線指 實際實施3 d圖形繪製管線之硬體之一部份’且通常不加 明顯之字首"3 d ”。
-57- I3〇5S〇 繪圖管線階段
圖形管線之定義說明其是由一組順序管線階段構成, 這些個別階段稱爲術語繪圖管線階段。在一些電腦圖形繪 製API中,有由何者構成的管線階段及其間之界線在何處 之明顯正式模型。在其他情形中,術語管線階段普通較不 正式地指現在所討論之一些建立之操作。而且,應注意所 有電腦圖形繪製API繪製管線大部份爲抽象管線,例如, 它們精確地說明完全3 d圖形抽象繪製程序之語意,但硬 體或軟體之圖形繪製系統之實際實施可依大致不同之順序 及/或方式而執行圖形繪製系統之操作,只要最終結果符 合抽象之規格即可。 在此文件中,所討論之繪圖管線階段大部份爲硬體管 線階段或副階段,且應記住閱讀此方面之說明。
屏蔽器 H 術語屏蔽器指一特殊之電腦程式,其被使用作爲圖形 管線中之特定預訂定點,以可彈性地控制繪圖程序。屏蔽 器程式無需在通用處理元件上執行,且可接受由其內操作 之圖形管線所施加之限制。特定型式之屏蔽器包括,但不 限於表面屏蔽器、光屏蔽器、位移屏蔽器、體積屏蔽器、 大氣屏蔽器、影像屏蔽器、頂點屏蔽器、補片屏蔽器、幾 何屏蔽器。 C S ) -58- 1305900 (54) 像素屏蔽器 當編輯屏蔽器以即時地執行若干不同之屏 爲一個。其最常的運轉例子爲像素屏蔽器,其 所決定之頻率上執行表面屏蔽器及光屏蔽器之 其通常爲每一像素。在圖形繪製系統方面,當 屏蔽程式之大部份之執行時,術語像素屏蔽器 程式。 可程式屏蔽器 由於屏蔽器可由終端使用者實際設計程式 亦稱爲可程式屏蔽器。可使用可程式屏蔽器之 統以支援可程式屏蔽。 屏蔽率及像素屏蔽率 對於特定之屏蔽器,例如像素屏蔽器,執 之一特定3 d圖形硬體加速器之性能稱爲屏蔽 定實例應包括屏蔽器,例如像素屏蔽器之名稱 ,像素屏蔽率應以每秒屏蔽之像素數爲單位來 像素屏蔽能力 術語像素屏蔽能力指一特定像素屏蔽器之 。在簡單術語上’像素屏蔽能力可由像素屏蔽 之線數(在一線徑路中),或由源程式中之紋理 一線徑路中)粗略量度。通常在一特定3d圖形 蔽器可縮減 在由屏蔽率 合倂語意, 討論可程式 常用以指該 ’所以它們 圖形繪製系 行該屏蔽器 率。任何特 及量度單位 表不。 相對複雜性 器之源程式 I參考數(在 硬體加速器 I3〇5S〇 中,像素屏蔽器之相對屏蔽能力愈高,該像素屏蔽器之像 素屏蔽率愈低。但並非總是如此,相對像素屏蔽能力愈高 ,最後繪製之影像結果愈複雜或真實。 程序紋理
術語程序紋理指紋理圖,當需要紋理之個別紋素時, 此由表面屏蔽器(或其他型式之屏蔽器)動態地製造,而非 被儲存作爲影像,如標準紋理圖。程序紋理具有優點,即 與作爲影像儲存之標準紋理圖比較,其可具有幾乎無限之 大小及幾乎無限之非重複細節。程序紋理具有缺點,即每 次自其取用紋素時,需要密集之計算量,例如,此會使多 量使用之表面屏蔽器大爲減慢。程序紋理亦稱爲合成紋理 程序幾何圖形
術語程序幾何圖形指一可程式屏蔽器’其在程序上製 造幾何圖形,例如’部份山產生器。程序幾何圖形與程序 紋理之觀念相似。 圖形原始 術語圖形原始及幾何圖形原始指物件之型式,其直接 導致繪製樣品或像素。幾何圖形原始通常爲幾何圖形元素 ,代表真實世表面或體積之部份,其反射光,發射光,過 濾光,或彎曲光,例如任何與光交互作用者。普通圖形原
-60- 1305900 (56) 始爲三角形,其他例子包括線及點,以及更高階層之表面 代表,及體積之各種代表,包括體素。其他圖形原始可更 爲複雜,例如字元及文字。在此文件之用途上,不區別術 語圖形原始及幾何圖形原始之意義。
雖修飾詞"原始"可能引起語意暗示圖形硬體加速器可 直接處理物件,而無需來自主電腦之額外協助,但實際上 ,此僅意謂使用圖形API之應用軟體並不明顯分物件爲較 簡單或其他原始者。在物件到達圖形硬體加速器之前,電 腦上運轉之文庫可作一些此分類工作。 大部份圖形原始直接或間接指定給圖形API,作爲頂 點之集合。除了此頂點資料之外,亦可以有特定給所指定 之幾何圖形原始之資料,而非特定給其控制頂點之一之資 料,因爲控制頂點可被多個幾何圖形原始共用。 幾何圖形原始可爲二維或三維。 位置 Φ 在電腦圖形中,術語位置指空間位置,例如,一特定 空間,通常爲正常數學上的二,三’或四維空間中之一數 學點。 頂點 在電腦圖形中,頂點爲一複合物件,其至少具有位置 之性質。雖頂點之最突出的性質當然爲位置,但頂點可具 有任何若千其他屬性。頂點之多個形態爲多頂點。 -61- 1305900 (57) 頂點可具有額外的性質,包含但不限於:法線、色及 紋理坐標之任何組合。爲強調電腦圖形中之頂點並非僅爲 數學點之代表’使用術語頂點資料、頂點資訊及頂點性質 ’用以指頂點內所可包含之性質之整個集合。
需被指定以界定簡單幾何圖形原始,諸如三角形之所 有頂點均在所指定之幾何圖形原始之表面上。然而,更複 雜之幾何圖形原始,諸如Bezier補片及其他較高階表面 需要指定額外的數學點’且這些額外點一般不在該平面上 。電腦圖形中之這些額外點之代表稱爲控制頂點。爲了避 免混淆’在此文件中,術語控制頂點指界定幾何圖形原始 之所有頂點。 三角形 線 點
術語三角形、線及點爲幾何圖形原始之普通特定實例 。這些原始由直接或間接指定3,2,或1頂點而指定給圖 形API。這些圖形原始亦可呈現如二維原始,或甚至三維 版本可由圖形硬體加速器變換爲二維版本。在此文件中, 除非另有特別說明,這些術語總是指物件之三維版本。 注意當事物是在三維對二維空間中時,可能有一些混 淆。當被變換爲螢幕空間,且被繪圖於框緩衝器中時,這 些圖形原始常被認爲是新二維,即使它們是以三維圖形原 始進入圖形硬體加速器中亦然。但除非繪製螢幕空間版本 -62- 1305900 (58) 之這些圖形原始之前,z緩衝(以及許多其他繪圖選擇)不 作用’否則,該圖形原始在技術上仍爲三維,因其仍具有 一 z値,可被界定給其上之所有點。 較高階表面
術語較高階表面指一廣大範圍之方法,用以表示埋置 於三空間中之幾何原始圖形,它們比三角形複雜,例如, 該等表面通常爲曲線而非平面。在此文件中,特定較高階 表面代表之明顯實例並不多;而是’討論廣大範圍之較高 階表面表示方法共有(例如,通常它們並非平面,或容易 剪貼)之普通問題。
較高階表面之特定實例包括:Bezier補片、二次表面 、超二次表面、三次補片、b仿樣表面、多項式補片、非 均勻率b仿樣表面(nurbs)、圓錐表面、規則表面、摺積表 面、隱性表面、再分表面、分數表面、小波形基礎之表面 及所有這些表面之修整及不修整版本。 壓縮之幾何形狀 術語壓縮之幾何形狀指幾何原始圖形之各種譯碼,其 佔用比幾何原始圖形之傳統代表爲小之儲存空間。壓縮可 爲較少損失、損失性。損失性之壓縮在規定上仍可爲較少 損失。其意指雖然壓縮在數字觀點上可爲損失性,例如, 在壓縮之後,原幾何原始圖形不能逐個位元地正確重建, 但其差甚小,人類觀看繪製之幾何原始圖形不能可靠地說 -63- 1305900 (59) 出任何損失。 深度複雜性
術語深度複雜性指在繪製一框之期間中,像素(或樣 品)之有條件更新功能施加於框緩衝器中之像素(或樣品) 之一特定區中之次數’除以該特定區之像素(或樣品)之總 面積。假設僅繪製之原始圖形爲三角形,則所繪製之影像 之深度複雜性爲覆蓋所繪製之影像中之一像素(或樣品)之 平均三角形數。 光柵化管線階段
任何3 d圖形體加速器之主要工作之一爲反應接收來 自主電腦或內部顯示表記憶器之原始圖形,以繪製這些原 始圖形於其框緩衝器中。雖然大部份圖形管線界定許多初 始繪圖管線階段,它們並不執行框緩衝,但實際地產生欲 用作框緩衝器中之像素或樣品之有條件更新功能之輸入之 一之像素或樣品値之管線階段稱爲光柵化管線階段,或有 時僅稱光柵化。 掃描線 許多光柵化(及其他)演算法在與視訊信號格式界定輸 出像素之依序轉移順序之相同順序上繪製像素値’其爲與 大部份CRT掃描其電子束於螢光幕上之順序相同:自左 至右及自上至下。當對來自一列的影像之成組的依序像素 -64- 1305900 (60) 執行操作時,普通稱該操作被執行於一掃描線上(像素), 即使該操作並不直接與影像輸出信號處理有關聯。 充塡率 像素充塡率 取樣充塡率
3 d圖形硬體加速器之性能可由特定加速器可執行一 特定工作之速率來量度。
光柵化爲此一工作。光柵化之性能可由許多方法來量 度,但有特定的二種方法普通用以基本測試3 d圖形硬體 加速器。其一爲量度光柵化階段之充塡率。術語充塡率指 像素或樣品產生,及像素或樣品之有條件的更新功能施加 於框緩衝器中之速率。當無修飾詞加於術語充塡率之前時 ,則受充塡之實體通常假定爲像素。當爲了更明確時,術 語像素充塡率及樣品充塡率指被"充塡”之特定之框緩衝器 實體。速率是以每秒之實體數爲單位而量度,例如,像素 充塡率是以每秒之像素數爲單位而量度,且樣品充塡率是 以每秒之樣品數爲單位而量度。注意在其框緩衝器中使用 樣品取代像素之系統可仍具有光柵化性能,是以每秒充塡 之像素數爲其特徵,只要指出量度像素充塡率之樣品密度 (例如,每像素平均有多少樣品)即可。 注意充塡率通常爲窺視率,例如,充塡率在幾何原始 圖形之光柵化上量度,各函蓋大量之像素。爲此理由,充 塡率有時稱爲漸近充塡率。在函蓋僅少數像素之幾何原始 -65-
l305V 圖形,圖形繪製系統在繪製該幾何原始圖形中之性能並非 取決於充塡率,而是取決於最大幾何原始圖形率,例如, 受需要對每一幾何原始圖形執行之各種經常操作之影響, 而不管其函蓋之像素如何少。在此限度,例如,函蓋少於 一像素之幾何原始圖形,光柵化時間與充塡率無關,且由 最大幾何原始圖形率主宰。
最大幾何原始圖形率 最大三角形率 建立有限之三角形率
如上述,在函蓋少於一像素之幾何原始圖形,光柵化 它們所費之時間幾乎與任何充塡率無關,但幾乎完全是由 最大幾何原始圖形率決定。其爲一幾何原始圖形在另一後 能通過圖形繪製系統之最大速率,即使假設每一幾何原始 圖形之光柵化產生甚少或無像素或樣品値(其需要用以作 爲輸出至框緩衝器中之像素或樣品之有條件更新功能之一 輸出)亦然。 此速率對於不同之幾何原始圖形是截然不同的,因此 不使用複雜之抽象速率,速率普通是以特定之幾何原始圖 形,例如三角形、線、點等等而量度。即使一特定型式之 幾何原始圖形之最大速率指定是非常不簡單的;但圖形繪 製系統之許多其他繪圖狀態値可導致一特定型式之幾何原 始圖形之最大速率的廣大變化。最佳之作法爲當說明特定 型式之幾何原始圖形之最大幾何原始率時,亦應說明影響 -66- 1305900 (62) 繪圖狀態値及其他因素之同樣多的可能速率。 由於三角形常爲最重要之幾何原始圖形,故最大三角 形率在比較或對比的不同之3 d圖形硬體加速器上是特別 重要的。
在繪製幾何原始圖形中會限制性能之主要經常計算通 常爲3 d圖形繪製管線之建立階段,當正執行小框緩衝器 充塡時,例如充塡率(大部份)並非一因素。由於此階段常 決定幾何原始率最大至多大程度,故該速率有時明白地指 出其主要原因,例如,最大三角形率有時亦稱爲建立有限 之三角形率。 框緩衝器及視訊術語
3d圖形硬體加速器之二重要觀念爲框緩衝器及視訊 信號格式。術語視訊信號格式指轉移資訊至實際影像顯示 裝置之正式介面,一第三重要的觀念。此部份對有關此三 方面之若干技術術語提供定義。在其使用於本發明之說明 前,需要這些術語之明確定義。 框緩衝器 圖形硬體加速器及電腦硬體之其他方面間之定義不同 爲圖形硬體加速器涉及組織、處理、及變換數位電腦資訊 爲人類可見之影像。(在此定義中,圖形硬體加速器亦包 含副場之影像處理硬體加速器)。雖然連接於通用電腦之 最早實際影像顯示裝置爲個別光及示波器,但自1 9 8 0年代 -67- 1305900 (63) 早期。大部份電腦基礎之影像顯示器連接至以框緩衝器之 觀念爲基礎之外部I/O處理器(圖形硬體加速器)。
自主電腦之觀點言之,框緩衝器普通看似主記憶器之 一區。此記憶器另組織成2d行列之固定大小的二進位資 料’稱爲像素。雖然像素開始於最小可能之二進位資料大 小,一單個位元’但經過時間,術語像素亦用以定義較大 物件,此亦可具有內部結構。以框緩衝器觀念爲基礎之圖 形加速器與先前之圖形加速器的不同點在於,框緩衝器能 儲存2 d行列之每一位置之明顯(及相等大小)之像素値。故 此’框緩衝器有時稱爲儲存之像素框緩衝器,以進一步區 別它們與無此明白專用儲存之其他圖形架構。由於最早之 框緩衝器僅使用一位元儲存一像素,故框緩衝器亦稱爲位 兀圖顯不器’以強調人類所看見之影像上之每一像素由框 緩衝器中之一個別專用位元支援,例如,每一"位元’•被•’ 映射"於一不同之可見像素上。
自實體影像顯示裝置之視訊的觀點言之,框緩衝器爲 一 2d行列之像素,將被連續地變換爲所同意之視訊信號 格式之視訊信號(原爲類比視訊信號,現在亦越更爲數位 視訊信號)’以由一視訊輸出介面發送至一實體影像顯示 裝置’作爲視訊輸出信號。此爲確實所發生者。2 d行列 之像素之寬度及高度變爲實體影像顯示裝置之螢幕上之點 光柵之寬度及高度,其直至最近非常可能爲一陰極射線管 (CRT)。 在視訊技術方面,術語”框緩衝器"爲一裝置,其可儲
-68- 1305900 (64)
存(至少)一框之視訊資訊。在電腦圖形方面,術語框緩衝 器原先意指相同事物,例如一外部I/O處理器,含有數位 記憶儲存器,用以儲存由像素構成之影像,在此外部I/O 處理器可連續地發送框緩衝器之內容,以視訊信號格式之 視訊輸出信號,通過視訊輸出介面,作爲輸入至實體影像 顯示裝置。外部I/O處理器所連接之主電腦可以廣大不同 之電腦圖形演算法,包括繪圖演算法,讀出及寫入像素。 早期之電腦圖形框緩衝器爲單緩衝,例如,它們保持一記 憶儲存器,用以儲存一單個像素框,且相同像素同時由主 電腦存取,其亦由視訊輸出副系統存取。
但這些電腦圖形框緩衝器開始增加相當多之特色,包 括支援硬體繪圖,且即將自視訊文學中所使用之普通定義 分歧。在目前使用於電腦圖形的領域內,術語框緩衝器具 有二因果用途。一用途爲該術語仍用以指整個實體裝置, 例如指大部份任何圖形硬體加速器,而不管該裝置已變爲 遠不止於一簡單之框儲存器。當圖形硬體加速器之實體形 態爲一單個印刷電路板時,術語框緩衝卡亦用於此相同意 義上。術語框緩衝器之另一現在的電腦圖形使用爲作爲較 大副系統之一特別部份,例如,較大圖形硬體加速系統之 框儲存零件。有時在此,術語樣品緩衝器用以強調記憶儲 存器除了像素亦可儲存樣品。 一特殊框緩衝器之特徵可在其內部像素行列之像素中 之寬度及高度方面,此亦稱爲框緩衝器之解像度,該特徵 亦包含框緩衝器所支援之像素之位元大小。故此,由” ¥ " -69- 1305900 (65)
分開之三數値變爲標準術語,用以說明框緩衝器之解像度 及像素大小(以位元爲單位),例如6 4 0 ¥ 4 8 0 ¥ 8爲一框緩 衝器,儲存640像素寬度乘480像素高度乘8位元而儲存每 一像素之影像。由於此表示具有三數値,且首二數値指寬 度及高度’故位元大小有時稱像素深度,或由於此爲像素 之位元大小’故此亦有時稱爲框緩衝器之"位元深度"。此 不與以後所述之更通用之3 d觀念混亂。框緩衝器亦具有 若干副屬性’此亦可包含於框緩衝器能力之特徵中,最普 通之副屬性爲所產生之最後視訊信號之視訊更新率。雖然 此三數値特徵爲說明早期框緩衝器之整個良好方法,但由 於框緩衝器變得更複雜,其大部份可支援一個以上的像素 行列解像度,視訊更新率,或甚至一個以上的位元大小之 像素。故此’目前框緩衝器之特徵爲其支援之最高解像度 ,或明確言之’列出其可支援之所有重要解像度,像素大 小,及視訊更新率。
框緩衝卡 實施框緩衝器(分開影像中之每一像素之專用儲存位 元)觀念之最早外部I/O處理器的其他作用甚少,例如, 它們並不’'加速"或執行2d繪圖,更不用說3d繪圖。它們 僅爲一記憶儲存器,用以儲存可由主電腦存取及修改之影 像之數位表示,且亦連續地發送出此影像通過視訊輸出介 面而至CRT或其他實體影像顯示裝置,作爲某些同意之 視訊信號格式之視訊輸出信號。於是,這些外部I/O裝置 -70- 1305900 (66) 連接主電腦至實體影像顯示裝置,例如,連接電腦世界中 之數位影像與實體世界中之真正光子影像。 所以’這些實體副系統,常常爲通用電腦之子卡,常 稱爲”框緩衝器”,或框緩衝卡。在此文件中,術語”框緩 衝器"而無說明”卡"並不是與術語框緩衝卡具有相同意義 。而是’術語框緩衝器保留用於他處定義之意義(簡言之 :較大圖形硬體加速副系統之影像儲存零件)。
經過時間,服務此功能之大部份商業產品在副系統內 增加額外之計算程序。現在增加2 d繪圖之越多支援,且 目前許多此種產品亦包含對3d繪圖相常多之支援。但目 前連接通用電腦至一或更多的實體影像顯示裝置之複雜產 品通常仍包含一簡單之框緩衝器零件,且可藉由軟體而如 此使用。所以,爲了歷史及一些功能理由,術語框緩衝卡 通常(鬆懈地)指連接通用電腦至實體影像顯示裝置之任何 裝置,即使執行此連接之裝置爲複雜之3d圖形硬體加速 器亦然。 實體影像顯示裝置 已發展廣大不同之技術,並付諸生產外部裝置, 使電子系統可動態產生及控制可爲人類所感覺之光照片。 此外部1/◦裝置指術語實體影像顯示裝置。通常’但並非 總是如此,這些實體影像顯示裝置能以即時之速率動態地 產生不同之2D影像序列。在本文中,使用若干普通較短 之術語來指稱此類’包括:顯示裝置’影像顯示器’影像 -71- < S ) 1305900 (67) 顯示裝置,及視覺顯示器。實則,由於陰極射線管(CRT) 适至最近普遍用於實體影像顯示裝置,同義字CRT常用 以取代這些其他術語,作爲整類的實體影像顯示裝置之通 稱,在本文中,大部份討論並非特定於實體影像顯示裝置 ’故在大部份情形中’當需要指整個系統之零件時,使用 該類名稱的其中之一。
用以變換電信號爲影像的即時序列之特定技術可依一 種以上之方法使用,以連接光子至人眼。不同之連接方法 導致不同副類之實體影像顯示裝置。三個例子包含,但不 限於,直視裝置之人類視覺系統連接方法,投影裝置(前 或後)’及頭戴顯示器(HMD)。且甚至HMD亦可爲內建之 直視、投影或形成在人眼網膜上之直接影像。
如此,實體影像顯示裝置之種類包含,但不限於直視 CRT,直視LCD面板’直視電漿面板,直視電致發光顯 示器,LED基礎之顯示器,CRT基礎之投影機,LCD基 礎之投影機,lco基礎之投影機,dmd基礎之投影機,雷 射基礎之投影機,以及頭戴顯示器(HMD)。 頭戴顯示器(HMD) 硬拷貝顯示裝置 有其他方法製造及/或控制光子至某種程度,可由人 類觀看,但不能動態地控制-硬拷貝顯示裝置。於是,紙 及薄膜之印表機可視爲非即時顯示裝置,但並非本發明之 焦點。 -72- 1305900 (68) 視訊信號
當代表一序列之2d影像之資訊由移行於某些媒體中 之信號攜帶,且資訊流動之速度使影像序列以即時之速度 流動時,則該信號稱爲視訊信號。此信號常爲電子的’在 此資訊是由電壓之振幅改變所攜帶,且媒體爲一導電性的 材料。信號可爲電磁(無線電)波,在此資訊是由電波之某 些性質所攜帶,且媒體爲自由空氣或自由空間。信號亦可 以是光學的,在此資訊是由光的強度改變所攜帶’且媒體 爲光透明的材料(包括自由空氣及自由空間),但其亦可爲 ”導”光之材料,諸如光纖電纜。(光在技術上僅爲電磁輻 射之較高頻率形態,但由於在實際上,需使用不同物理材 料及裝置來處理光,故通常視爲不同型式之信號。 類比視訊信號 數位視訊信號 φ 壓縮之數位視訊信號 一序列之影像資訊可由視訊信號以許多不同之方式來 表示。直接映射影像之小區域之強度於視訊信號之強度( 某量度)之編碼稱爲類比視訊信號。首先映射像素(如影像 定義之小區域)之強度成爲數位値,然後映射數位値之位 元成爲強度(某量度),稱爲數位視訊信號。在映射數位値 之位元成爲視訊信號之強度(某量度)之前,先壓縮作爲數 位像素之影像序列之代表之數位資訊成爲較小尺寸之數位 < S ) -73- 1305900 (69) 代表,稱爲壓縮之數位視訊信號。 視訊信號格式 一些結構及習慣需重建任何這些形態之視訊信號中所 含之資訊再度成爲影像序列(此爲整個要點)°對於任何這 些形態之視訊信號,如何對影像編碼及解碼而成爲影像序 列之特定結構代表之規格稱爲視訊信號格式。 類比視訊信號之視訊信號格式大部份直接繼承1 9 3 0及 1 9 4 0年代標準化之第一電視視訊信號格式,且包含格式 NTSC,PAL,RS1 70,VGA,SVGA等。數位視訊信號之
最近若干新視訊信號格式被使用,並包含格式DL及DVI 〇 亦有若干新視訊信號格式在商業使用上用於壓縮之數 位視訊信號,包含若干不同版本之HDTV: 1080i,720p ,1080p° 1080, 24p, dlO等 ° 視訊輸出介面 視訊輸出信號 當一或更多視訊信號由第一裝置產生,然後經由視訊 信號之適當媒體發送至一或更多額外裝置時,第一裝置之 一部份稱爲視訊輸出介面,其攜帶每一視訊信號至一實體 邊界’在此處然後其被連接至適當之傳輸媒體(例如線, 同軸電纜’光纖等)。移動通過視訊輸出介面之視訊信號 稱爲視訊輸出信號。 -74- 1305900 (70) 解像度
在本文中’術語解像度用以指許多不同型式之影像之 性質:視訊輸出信號中之影像,用作紋理圖之影像,繪製 於框緩衝器中之影像等。術語解像度本身指影像整個之空 間頻帶寬性質,但通常明白地意指以像素之整數爲單位所 量度之影像之寬度及高度。解像度爲一抽象觀念,其需應 用於一些其他特定之觀念上,以某方式處理影像。 有時在本文中,使用術語解像度,而在文中無任何修 飾詞。在此文件中,將總是使用一適當之修飾詞。 視訊解像度
視訊信號格式之一性質爲解像度,通常以一對的整數 來表示:表示影像之寬度及高度是以影像之整數爲單位來 說明。應注意這些像素可爲或可非爲正方形。所以,可使 用片語視訊解像度來意指此對的數字。 H 視訊信號格式之其他性質包括其框率’及可能使用交 插掃描線,以減小視訊號之頻帶寬。有時’片語影像解 像度不獨指視訊信號格式之像素寬度及高度’亦表示視訊 信號格式是否使用交插’或甚至更稀罕地表示影像解像度 可包含框率之特定說明°
視訊格式框
-75- 1305900 (71) 繪圖框 場 交插 術語框用以說明一影像序列中之一單個影像,當該影 像序列在即時中被發送時。當討論一影像框通過所費之時 間時,術語視訊格式框用於視訊格式框率之倒數,來自繪 圖框率之倒數,稱爲繪圖框。
術語場用以說明一視訊信號格式之一順序部份’其傳 遞有關來自一序列之框中之一特定框之一影像之某方面之 整體,但可能部份資訊。在所謂累進視訊信號格式’例如 不使用交插者,每一視訊信號場亦爲一視訊信號框。用於 交插之視訊信號格式上之交插之定義爲每一框分爲二連續 場,第一場包含被傳送之影像中之所有奇數列之像素’第 二場包含被傳送之影像中之所有偶數列之像素。注意該語 意在此可能有疑問’視交插場如何產生而定。在技術上’ 交插電視標準指定每一場本身爲一完整分離影像’僅具有 框之高度中半數之像素’所以場之像素爲框中所指定之像 素之二倍高。故此’一快速移動物件之一電視框看似來自 不同時間點之二交插之影像。在其他情形中,二場實際僅 爲單個影像之分開傳輸。當傳送與現在發送不同之影像信 號格式中所原始產生之影像信號時,有另外的複雜性存在 ,例如,當需經由N T s c發送每秒2 4框電影片時,需要所 謂"3-2拉下"。 76- 1305900 (72) 視訊信號格式 場順序色 場順序立體 交插之觀念並非僅視訊信號格式表示技術,其導致場 與框不同。在場順序色視訊信號格式,每一框有三順序場 ,每一場包含獨有之一色組成份’例如,第一場均爲欲發 送之影像之像素之紅色組成份,第二場爲綠,且第三場爲 藍。(當然,可使用許多不同順序或色組成份表示)。 在場順序立體視訊信號格式,每一框有二順序場,第 一場攜帶左眼之完整影像;第二場攜帶右眼之完整影像。 此二影像在發送時例如以迅速之方式顯示,在人類觀看顯 示器之實體影像顯示裝置上之視訊影像之感覺上,具有快 門眼鏡或極化或影像角度之觀看空間分離效果。以此方式 ,僅(或大部份)左影像可爲觀看之人類之左眼所見,及僅 (或大部份)右影像可爲觀看之人類之右眼所可看見,產生 立體深度之感覺。或者左及右眼場可發送至二不同之實體 影像顯示裝置,然後使用一些機械,以確保適當之影像視 覺傳送至觀看之人類之適當眼睛。在大部份HMD之情形 ,每一眼睛具有其私有之顯示裝置設置,使得每一眼睛僅 看到其自已之顯示裝置。在技術上,當使用二不同之顯示 裝置,而非迅速顯示於單個實體影像顯示裝置上時,場順 序立體視訊信號格式僅多工並發送二不同影像流於一個視 訊信號上。 亦應注意多種這些場技術可合倂。若干商業Η M D使 -77- 1305900 (73) 用場順序色視訊信號格式,在此每一框具有六個場。 框率 視訊格式框率 繪圖框率 繪圖率 繪圖中率
在視訊信號格式文中,片語”框率"用以對一特定視訊 信號格式表示當發送一序列之影像時,新影像之發送率。 以每秒發送之框數爲單位來量度。爲避免與圖形繪製系統 類似但不同之框率觀念混淆,片語視訊格式框率通常用於 本文中。視訊格式框率通常爲視視訊信號格式而定之常數 。該常數之値爲視訊信號格式之一明顯性質。
在圖形繪製系統方面,不管2d或3 d,使用片語框率 表示繪製中之新影像之速率。框率應以單位時間所繪製之 框數爲單位表示,通常以每秒所繪製之框數爲單位。然而 ,當每秒所繪製之框數在1以下,例如繪製一單個框費時 一秒以上時,則框率常以每繪製框所費之時間爲單位表示 ,例如,每繪製框之秒,分,小時,或甚至日數。一般而 言,此即何以硬體繪圖常以每秒繪製之框數爲單位,而軟 體繪圖則通常以繪製框所費之時間爲單位量度。 爲避免與視訊信號格式相似但不同之”框率”觀念混淆 ,片語繪製中框率通常用於此文件中。繪製中框率通常不 是常數,因爲繪製一特定框所費之時間通常無法決定。然 -78- I305?S° 估計爲一平均或目標値 ,諸如飛行模擬,一恆 標,並已發展出多種方 定框上花費更多之時間 在文中,片語繪圖率或 語。
片語場率及視訊格式場 當發送一序列之框時, 場數爲單位量度。 而,有時可鬆懈地指定繪製中框率 。在模擬應用中,性能在此甚重要 定之繪製中框率爲一非常重要之目 法,以確保圖形繪製系統不在一特 ,其由目標框率分配。應注意有時 繪圖中率用作繪圖中框率之較短片 場率 視訊格式場率 在視訊信號格式之文中,使用 率,以表示一特定視訊信號格式, 發送新場之速率。以每秒所發送之 視訊更新率 再度由於片語框率之可能模糊,在此文件中,術語視 訊更新率通常用以表示該速率爲視訊信號格式之一(常數) 性質,而非圖繪製系統之一非決定性質。 不幸,片語視訊更新率並無統一使用,大部份它用以 指視訊格式場率,但有時其用以指視訊格式框率。 視訊格式像素率 視訊格式像素頻率 半世紀以前,自類比視訊信號格式中喪失之主要觀念 爲像素觀念。故雖然視訊信號格式仔細定義一垂直率(場 •f f ... ·-. -79- Ι305?ι° 率)及一線率(水平回掃頻率),但並無提及像素率。在黑 白CRT,視訊信號爲連續類比信號,無像素或像素邊界。
在許多近代環境中,像素觀念以及新視訊信號格式加 於舊觀念中。在一些情形中’爲了多種理由,像素以非正 方形(或矩形)之方式來定義,其與許多3d繪圖演算法不良 地工作。在大部份更近代之視訊信號格式中’像素定義爲 正方形或接近正方形(例如,在一情形中’ 6 %非正方形)。 不管正方性,一旦像素與視訊信號格式相對定義時’吾人 現在可討論視訊信號格式內之像素率’例如視訊格式像素 率,或亦如所知’相等之頻率術語’視訊格式像素頻率’ 以Hz量度。
注意一視訊框中之可見像素的數目與視訊格式像素頻 率除以視訊格式框率間可有不同。适是因爲大部份視訊信 號格式具有水平及垂直遮沒時間二者’在此期間中’無可 見像素出現。必須支援圖形硬體加速器之像素頻率不同部 份之二不同定義之何者爲一複雜之取捨’涉及輸出像素之 個別掃線如何緩衝之細節’且爲精於本藝之人士所熟知。 視訊格式框大小 視訊信號格式中之一單個框中之像素之總數爲視訊解 像度之寬度乘以視訊解像度之高度之乘積°此數稱爲視訊 格式框大小。在本文中’亦稱爲螢幕大小’但該術語將不 用於此處。 C 5 ) -80- I3〇5^°e? 實體影像顯示裝置本土解像度 實體影像顯示裝置之許多目前較新技術之影像由分立 之像素建立,例如,並非CRT之有效連續磷質表面。在 本文中,建立之像素之視訊解像度稱爲本土解像度。在本 文中,爲清楚起見,吾人使用較長之術語實體影像顯示裝 置本土解像度係指相同東西。
大部份此種裝置通常具有一些電子電路’用以變換具 有與實體影像顯示裝置本土解像度不同之視訊解像度之視 訊信號格式爲具有與實體影像顯示裝置本土解像度相同之 視訊解像度之一不同的視訊信號格式。然而,此變換會降 低顯示影像之品質,故圖形硬體加速器應儘可能設計程式 ,以確保其視訊輸出信號之視訊信號格式之影像解像度與 實體影像顯示裝置本土解像度相同。
3d圖形硬體加速器之二額外非常重要區域爲1C技術 及記憶晶片技術。文件之此部份將發展及定義若干重要之 技術術語,在其用以敘述本發明之前,需先定義這些術語 儲存位元之裝置之技術 數位電腦及先前的類比電腦間之定義差異爲數位電腦 能以資訊之數位位元來表示、儲存及處理資訊。雖然最早 之數位電腦使用真空管以儲存位元,隨著5 0年代磁心記憶 器之發明,大部份通用電腦轉換成磁心記憶器,以用於其 主內部位元儲存需要(所謂主記億器,甚至目前亦常稱爲” (S ) -81- 1305900 (77) 核心記憶器”,即使現在使用其他裝置)。停留於磁性媒體 (磁豉’碟,帶等)之副記憶器,且非常頻繁進出之有限大 小之儲存器(例如暫存器)亦由新發明之電晶體製造。電晶 體記憶器非常快速,但亦非常昂貴;儲存一單個位元需要 多個電晶體另外加上多個其他裝置(二極體,電阻器,電 容器)。
積體電路 在6 0年代早期,發明一種用以建造電子電路之新技術 。積體電路(1C)先可建造數打,及其後更多之電晶體,二 極體,電阻器,及其他電子裝置,及接線一起於半導體材 料之一單個小晶片上。在本文中,術語1C定義爲具有與 以下所定義之術語”晶片”相同之意義。 1C之發明可在一單個裝置內儲存多個位元。其有利 於暫存器,但在主記憶器使用上仍太昂貴。
晶片 目前之技術是由放置複雜之積體電路於一單個矽晶片 上之更爲增加之能力所驅動。雖然大部份大晶片各被放置 於一分離之封裝件中,但"多晶片模組”及晶圓規模之整合 等之進步包裝技術使矽晶片與封裝件之一對一關係模糊。 而且,雖然目前電子電路大部份建造於矽晶片上,但目前 亦使用矽以外之材料,且在將來可發現更多使用。所以, 在本發明中,術語晶片並非意在限制本發明之範圍於僅矽 -82- 1305900 (78) 製之晶片,或需爲單件之材料。術語晶片在文中可指僅實 際基體材料及加於其表面上之電子電路,或更常用以指包 含埋有大部份晶片之封裝件之整個實體部份。 銷
數位及類比資訊,以及電源、時脈及參考電壓等資訊 由自晶片封裝件伸出之許多分開之電線攜帶往來於個別晶 片。在遠早於晶片之封裝技術,這些電連接爲個別金屬銷 ,例如出現於直空管底部上。用於I 960年代至1 990年代之 晶片且仍一些用於目前之大部份封裝技術爲金屬引線框, 此彎曲於晶片封裝件之邊緣上,以形成尖銳狹窄之金屬件 ,這些仍稱爲銷,即使其形狀不再恆爲圓柱。更近之晶片 封裝技術包含所謂”球柵行列"等,在此,外部電連接至晶 片爲一金屬半球及其他形狀。然而,這些金屬件仍恆稱爲 銷,尤其是當提及由晶片製造之電子系統之整個架構設計 時,及當封裝件之真正三維形態之非常特定細節無關緊要 時。在本文中,術語銷用以指個別導管,其連接封裝件內 之電子電路至封裝件外之世界。 一晶片所具有之銷數爲成本/性能之折衷。晶片愈少 ,矽晶片及封裝件二者之成本通常愈低,且晶片之功率消 耗通常亦愈低。但一晶片之銷愈多,進出晶片之資料可達 成之頻帶寬愈高。所以,在普通設計決定,減小流於晶片 間所需之頻帶寬導致晶片可具有較少之銷。另一方面,一 晶片所具有之銷愈多,含有該晶片之任何系統中可達成之 -83- 1305900 (79) 可能性能普通愈高。此取捨之平衡通常在系統階層由系統 架構執行,爲其他取捨之一部份,以降低系統之成本至最 低程度,同時增加系統性能至最大程度’與系統產品目標 之各市場部份之現在及預期未來成本及性能敏感性相關聯
ASIC
術語ASIC爲n應用特定之積體電路"之縮寫。在本發 明之使用中,術語ASIC指設計用於特定特殊用途’諸如 執行電腦圖形演算之晶片’與設計用於廣大不同用途之更 通用之晶片相反。術語ASIC並非意在限制設計具有較” 完全定製”1C設計工具爲低之晶片,諸如閘海,閘行列, 可程式閘行列等。
FIFO
術語FIFO爲”先入先出"之縮寫。在電子硬體之主文 中,其係指一彈性儲存緩衝器,其讓固定大小群之位元成 以不關聯之簇叢進入及離開。當生產者以非預定率產生資 料及消費者以不同之非預定率消費該資料時’ FIFO緩衝 器通常用以配接一特定型式之資料之生產者及同型式之資 料之消費者。許多型式之FIF0緩衝器能在FIF0緩衝器 之變化內部條件下發送警告信號,尤其是’一"高水位記 號”警告信號指示儲存容量正到達某預定限度’例如即將 溢流。
-84- 1305900 (80) 雖原始FIFO被製造成個別晶片,但現大部份FIFO 僅爲另一小電路,其能用於單個1C上之較大電路之設計 內之任何地方。
術語ram爲"隨機存取記憶器"之縮寫。此術語用以區 別記憶器,對此,以與有性能損害之其他型式之記憶器不 同之特定預定順序存取其內容甚少或無性能損害。在大部 份情形,指特定型式之ram。 記憶晶片
1C可建造一單個晶片,其包含一個位元以上之資訊 。此產生新一類裝置,以術語記憶晶片稱之。此術語指若 干通用及特殊用途晶片,設計用以儲存、取還及有時處理 以位元表示之資訊。此術語爲一重要術語,因爲本發明係 關於組織及使用記憶晶片之特殊方法。 最早之記憶晶片具有較其儲存之內部位元爲多之銷在 晶片上,故位元多少可自晶片外部直接存取。但隨著可建 造於一晶片中之位元數最終超過可經濟連接於一晶片上之 銷數,需要某形態之內部多工。此一多工技術已設計用於 以磁心爲基礎之記憶系統上:由先提示一內部位址(僅一 串位元)讀出或寫入資料於記憶器內,然後存取與該址關 聯之位元。此種存取位元之形態意指該記憶晶片爲一種 ram ° -85- 1305900 (81) 近代記憶晶片有將說明之多種副類。在說明本發明中 ,在大部份情形,指一類特定之記憶晶片。 局部記憶副系統
在記憶晶片之大部份應用中,使用一個以上記憶晶片 。記憶晶片之此集合常一起視爲一單個較複雜之記憶系統 。記憶晶片之此集合可均連接至一單個控制晶片,或該行 列之控制可連接至一個以上晶片。不管連接之非記憶晶片 數如何,該集合在本文中稱爲局部記憶副系統。 在簡單之情形,局部記憶副系統可視爲一複合實體’ 如其具有較寬之字大小及/或較大之儲存容量’則這些行 爲非常近似一單個記億晶片。 明確言之,除了資料輸入/輸出銷外,共用大部份所 有控制線之二相同記億晶片非常相似一單個記億晶片’具 有實際記憶晶片之雙倍字大小及亦雙倍儲存容量°
共用包含資料輸入/輸出銷在內之大部份所有控制線 之二相同記憶晶片非常相似一單個記憶晶片,具有實際記 憶晶片之相同字大小’但具有雙倍儲存容量。 最後二段之組合技術可用以製造另一型式之局部記憶 副系統。共用大部份所有控制線,但僅具有一半記憶晶片 共用資料輸入/輸出銷之四相同記憶晶片非常相似一單個 記憶晶片,具有實際記憶晶片之雙倍字大小,且亦具有四 倍儲存容量。 顯然,這些記憶晶片組合技術可延伸,以構製局部記 < S ) -86- 1305900 (82) 憶副系統,具有實際記憶晶片之m倍字大小及m * η倍儲 存容量,使用總數m* η之實際記憶晶片。此爲如何傳統 製造許多局部記憶副系統。該組合技術有技術限制,在記 憶晶片或控制晶片上可由另一晶片之單個銷驅動之銷數有 限制。亦有其他更複雜之方法,以合倂多個相同或不同之 記憶晶片於此處所述之一局部記憶副系統中。
局部記憶副系統之討論與此文件有關,因爲3 d圖形 硬體加速器之架構常包含設計一或更多不同之局部記憶副 系統,且其特別爲此處所述之發明之情形。 字大小
在一單個記憶晶片之特殊方面,術語字大小指可平行 移進或移出記憶晶片之資料之位元數,在大部份情形,此 爲固定於記憶晶片上之輸入或輸出資料銷之數。當若干記 憶晶片視爲一整個,如在局部記憶副系統中時,片語字大 小指可平行移進或移出該群記憶晶片之位元數,且不限於 僅一記憶晶片上之銷數。 sr am 即使儲存位元現在均在一個記憶晶片中,儲存之每一 位元仍需若干內部電晶體來儲存,並可讀出及寫入進出每 一位元。雖然有若干不同之方法,以建造此儲存器之記憶 晶片,但如此自外部進出多個位元之記憶晶片稱爲靜態隨 機存取記憶器或簡稱sram。這些記憶晶片之特徵爲可內 -87- 1305900 (83) 部儲存之位元之總數(例如"2 5 6位元s r a m"),但亦爲在提 示位址後,一次可提供於記憶晶片銷上之位元數:記憶器 之字大小。一單個位元寬度之裝置亦稱爲”256 ¥ lsram”。 此術語會與特性框緩衝器解像度混淆。主要不同爲記憶器 之特徵總是爲一或二”乘”數字,例如23 6k或64k¥ 4 ;框緩 衝器解像度通常之特徵爲三"乘"數字,例如640 ¥ 4 80 ¥ 1 。有時,當像素之大小不重要,且自討論框緩衝器或視訊 解像度之文中可清楚此點時,可使用二”乘”數字:例如 VGA解像度爲640 ¥ 4 80。
DRAM 在1 97 0年代早期,發明一新電路用以儲存數位位元, 儲存每一位元僅需一個電晶體。其代價爲位元在喪失其値 之前僅保持穩定數分之一秒。這些記憶晶片需要在一秒中 讀出及寫入或更新所有位元數次。此類新記憶晶片稱爲動 態隨機存取記憶器,或簡稱DRAM。 引進較爲低廉(儲存每一位元)之DRAM,使框緩衝器 之觀念可商業化。框緩衝器之存在亦影響DRAM之設計 ,故此,儲存像素之框緩衝器及DRAM架構及技術可共 生發展。 vr am 在8 0年代中期,DRAM生產者(包含ΤΙ)出售相當百分 率之其產品給專業之框緩衝器公司,但在自1 6k ¥ 1容量過 1305900 (84) 渡至6 4 k ¥ 1容量D R A Μ之期間中,發生一奇怪情事。通 常先排隊要求獲得新DRAM之原型零件之框緩衝器公司 並不要求任何64k ¥ 1 DRAM零件。在此情形,將無出售 64k ¥1 DRAM零件給建造高級框緩衝器之公司。 DRAM之密度已遠較存取之資料頻帶寬爲快生長。主 要量度爲以每秒之位元數量度之記憶晶片之頻帶寬與以位 元數量度之記憶晶片之總記意容量之比率。
具有第二組資料銷之特殊DRAM可與正常資料銷平 行存取內部記憶器。該觀念爲此第二組記憶資料銷,或第 二”記憶埠”可用以讀出僅需用於視訊輸出信號之資料,幾 乎與DRAM之較正常之讀出及寫入存取完全平行。所以 ,此第二記憶器埠通常稱爲”視訊埠”。此攻擊DRAM晶片 頻帶寬問題之心臟,藉著加進相當多但特殊化之頻帶寬。 此部份稱爲vram,即”視訊隨機存取記憶器"之縮寫。這 些普通內部可儲存與"目前”世代DRAM同樣多之位元。但 vram晶片之實體大小通常爲可儲存與vram同樣多之 DRAM之二倍。此額外晶片面積需用於支援第二記憶埠(" 視訊埠")。此使vram晶片較之相等零件DRAM每儲存位 元爲昂貴。然而,此零件對製造者建造圖形終端機用,或 建造於工作站中之框緩衝器相當經濟,故大部份高級電腦 及顯示器公司使用此。在80年代中期至90年代早期,PC 仍使用低像素深度VGA框緩衝器,具有低視訊格式像素 率,並可使用標準之DRAM建造較低廉之設計。 此時,顯示器技術仍幾乎均以CRT爲基礎。CRT之 -89- y' ^ \ 1305900 (85)
解像度開始與電視標準相同:640像素寬度乘484像素高度 ,每秒更新3 0次,使用交插視訊信號格式。此視訊信號格 式需要每秒約12百萬像素之視訊格式像素率。在1 970年代 後期至1 98 0年代後期之此時代,CRT技術在解像度上仍進 步。次一解像度目標在顯示一百萬像素階層之影像。此時 無堅強之高解像度標準,故許多不同之視訊信號格式被出 售。一 1 024像素寬度乘1 024像素高度,每秒更新30次,使 用交插視訊信號格式爲一良好實例。此視訊信號格式需要 每秒約40百萬像素之視訊格式像素率。但使用此裝置之大 部份人並不喜歡觀看交插之視訊信號格式,所以,大部份 新視訊信號格式需使用非交插視訊信號格式(目前稱爲累 進格式),即使此意爲視訊格式像素率在特定視訊解像度 上需較之使用交插視訊信號格式者加倍或以上。而且,較 舊之電子電路有限制,即視訊格式框率應直接關聯美國電 力所用之60HzAC頻率(在歐洲及世界其他部份爲50Hz)。 使用框緩衝器之人現在希望視訊格式框率至少爲66Hz,且 最後歐洲勞工協議要求更新率爲72Hz,76Hz,且現在一 些情形爲84Hz。何者爲視訊格式像素率之所有此暗示框緩 衝器需要支援?此時,一普通視訊信號格式爲1152像素寬 度乘9 0 0像素高度’每秒更新6 6次。此視訊信號格式需要 每秒約85百萬像素之視訊格式像素率。此時另一普通視訊 信號格式爲1 280像素寬度乘1 024像素高度,每秒更新次 。此視訊信號格式需要每秒約1 3 5百萬像素之視訊格式像 素率。 -90- 1305900 (86)
3DRAM 3 DRAM放置二層sram快取記憶器於vram上,自傳 統之非同步介面變換爲管線式,時脈控制之同步介面,進 入32位元寬度,並移進Z緩衝比較於vr am中。目前之 DRAM,sDRAM與3 DRAM非常相似:其使用同步、管線 式、時脈控制之介面,及一小sram於晶片上。3 DRAM不 同在於具有一(小晶粒面積)視訊輸出璋,及特殊alu操 作於Z緩衝及框緩衝器OP。 3 DRAM在可達成之性能上確實有一重大改變。 B .若干實施例 此文件敘述低成本,非常高性能,即時3 D圖形產品 之一新可伸縮架構之技術。雖然高度技術性,但呈現較高 階層之資訊,所以不提出例如位元場名稱及大小等個別細 節。 引進一新產品觀念,一圖板,作爲現在及將來通用電 腦產品之非低級3 d圖形需求之解決。圖板爲一自含副系 統,其使用工業標準I/O介面連接至一或更多主電腦。圖 板之實體封裝普通在可架裝之底盤中,具有高度在U之 小倍數’例如2U。此文件敘述一新3 d圖形硬體架構,稱 爲迴路架構,其極適用於建造圖板產品。迴路架構對連接 多個圖形1C,以形成高級3d繪圖系統之方法提供一完全 創新之解決。由迴路架構所採取之該方法爲對1C設計, 1305900 (87) ic封裝’ 1C互接,及物品DRAM技術之目前及預計數年 將來趨勢,以及高級3 d圖形應用及使用者之特殊需求所 呈現之技術限制(實際)之一美好解決。 由3 d圖架構及記憶技術二者之一些背景資訊開始, 將敘述迴路架構本身,作爲對建造高性能3 d圖形硬體加 速器產品之主要問題之一系列解決方法。 新架構之發展 當你購買DRAM時,你購買儲存之位元。但你亦購 買頻帶寬。讀出或寫入位元於DRAM中所費之時間有些 不同,視存取形態而定,但有最佳情形上限存在。 當你建造一ASIC,且你連接ASIC之一些銷於單個 DRAM晶片之銷時,你已訂定一上頻帶寬限度於此DRAM 。但如你連接二DRAM於一單個ASIC會怎樣?是否自其 連接之記憶晶片可供應至ASIC之記憶器頻帶寬之上限加 倍?答案爲視情況而定,因爲有三種不同之可用技術’以 連接二 DRAM 至一ASIC。 第一技術爲ASIC使用所有新銷連接第二DRAM晶片 ,例如任一 DRAM無銷連接至ASIC之相同銷。此方法的 確使ASIC可自所連接之DRAM晶片獲得之上頻帶寬加倍 。基本爲ASIC需加倍其用以連接DRAM之銷數。 第二技術爲ASIC僅用僅一組銷連接二DRAM之位址 及控制銷,同時ASIC使用現有銷連接至第一 DRAM之資 料銷,並增加新銷連接至第二DRAM之資料銷。此方法 1305900 (88) 使用較之一技術爲少之銷於ASIC上’且最大頻帶寬仍加 倍。然而,由二DRAM晶片所構成之局部記憶副系統之 字大小爲第一技術之二倍。如ASIC在發送或接收DRAM 晶片之資料時,無需使用此較寬字中之所有位元,則有效 之頻帶寬下降。
第三技術爲ASIC與二DRAM共用所有銷(DRAM"晶 片致能"銷除外)。此技術減少ASIC用以連接DRAM晶片 之銷數,但ASIC可自連接之DRAM晶片獲得之上頻帶寬 完全不增加;此與單個連接DRAM之情形相同。
此三技術形成三種不同點於最大化可用頻帶寬及最少 化需增加於ASIC上之銷數間之交換曲線上。但如吾人連 接4DRAM,8DRAM,16DRAM於一ASIC上又如何?答案 爲當連接二個以上DRAM時,上述三技術之不同組合可 以更複雜之方法同時使用。顯然,在某點上,一 saic將 用盡可經濟增加於一單個晶片上之新銷。在大部份應用中 ,有一限度存在,在此之後,越寬之字寬度具有越少之可 用位元’所以可用之頻帶寬並不與字寬度同樣快增加。在 多少銷可接線一起,而不降低記憶器讀出及寫入速度上亦 有限制。此問題並無一正確之選擇:該選擇爲在較大系統 (ASIC及DRAM爲其一部份)之系統上之—組較大取捨中 之一部份。 而且’在任何特定時間點上,在一 A SIC可經濟具有 之銷數上有限制。此限制由是當時現有的封裝技術,且亦 由可貢獻於銷連接位置之ASIC晶片面積所施加。所以, < S ) -93- 1305900 (89) 在減去用於連接DRAM以外之一些銷後,在特定時間點 ,封裝及DRAM技術限制可供單個ASIC連接DRAM之頻 帶寬之最大量。 雖然總是有一些機巧餘地,演算法(3d繪圖演算法)之 性能及可提供給記憶儲器之可用頻帶寬之間普通有線性關 係。所以,如果你訂定一產品爲一單個ASIC具有一些連 接之DRAM,則在可達成之最大繪圖性能上發展並不容易
〇 本發明之一實施例之創新迴路架構安排紋理儲存器及 框緩衝儲存器於同一記憶器庫中。在此實施例中,每一迴 路繪圖晶片具有若干連接之標準低成本DRAM晶片,它 們用以儲存框緩衝器之一部份及現有紋理之一完整(冗餘 但局部)拷貝。 槪覽
圖1顯示迴路架構之一例。在該迴路架構中,如顯示 於圖1,每一迴路晶片以單向、點至點、局部方式連接經 過一非常高速迴路鏈介面125至相鄰迴路晶片。 基本迴路架構互接 標示"D”之迴路晶片爲迴路繪圖晶片1 10。標示之 匣爲記憶器1 1 5,例如記憶晶片。這些記憶器在一實施例 中爲D R A Μ,但在其他實施例中可爲其他形態之記憶晶片 (明顯包含sram)。在具有箭頭指入及指出之標示"I"之晶 -94- 1305900 (90) 片爲迴路介面晶片105。迴路介面晶片105宜包含一主介面 入/出及一迴路介面入/出。所示之佈局可爲一 3d圖形繪製 架構。迴路架構更詳細說明於下。
圖2更詳細顯示一 16迴路繪圖晶片110及2迴路介面晶 片105組態。每一迴路繪圖晶片11〇在其局部連接之 DRAM115中包含1/16框緩衝器。框緩衝器分爲方形4乘4像 素格子,每一迴路繪圖晶片對4x4格子內之其指定之像素 執行其操作。在圖中,4x4圖案中充塡之像素指示何像素 插件屬於何迴路繪圖晶片。圖2並顯示每一迴路繪圖晶片 在其局部DRAM內具有所有系統紋理之其自已專用之完 整拷貝。二迴路介面晶片顯示支援系統選擇,此以後述之
總論圖1及2之槪覽,框緩衝器分爲非冗餘像素插件於 η迴路繪圖晶片之每一個之局部記憶副系統中,以擴大取 樣充塡率至最大程度,提供較之在單個圖形晶片系統可達 成者高η倍之取樣充塡率。紋理儲存器在η迴路繪圖晶片 之每一個之局部記憶副系統中複製,以擴大紋理攜取頻帶 寬至最大程度:在較之單個圖形晶片系上可達成者高η倍 讀出頻帶寬。 圖形操作之映射於晶片 主圖形驅動器命令自主電腦經迴路介面晶片上之主介 面來至迴路介面晶片圖形驅動器原始。在圖形驅動器原始 處理後,迴路介面晶片變換它們(及其他圖形命令)爲一序 r -95- 1305900 (91)
列之原始圖形。迴路介面晶片指定此序列之原始圖形之副 串至一特別迴路繪圖晶片,然後沿該環發送原始圖形,作 爲迴路包,在此,原始圖形迴路包自一迴路晶片跳至另一 迴路晶片,直至其到達其目的地迴路繪圖晶片爲止。迴路 包在此處理,且不沿該環送至任何更遠。沿該環上發送狀 態改變,作爲多投迴路包,例如,迴路包由環中之(可能) 每一迴路繪圖晶片處理,並由最後迴路繪圖晶片以外之( 可能)所有迴路繪圖晶片轉送。在較佳之實施例,迴路介 面晶片使用一負載平衡方法,指定原始圖形命令至一特定 之迴路繪圖晶片(亦稱"圖形晶片”)。其他實施例使用其他 適當之方法,諸如輪流。 自迴路介面晶片至每一可能之目的地迴路繪圖晶片之 單投圖形命令迴路包之徑路。
圖3顯示自迴路介面晶片至可能之目的地迴路繪圖晶 片之單投圖形命令迴路包之最長及最短徑路。圓弧3 02表 示自迴路介面晶片105至其最近之迴路繪圖晶片no之一虛 擬’'直接徑路'’,單投圖形命令迴路包循此而行。圚弧3〇4 表示自迴路介面晶片105至其最遠之迴路繪圖晶片110'之 虛擬’'直接徑路",單投圖形命令迴路包循此而行。實際徑 路宜包含多個跳躍,自迴路介面晶片開始,並反時針方向 繼續進行通過所需多之迴路繪圖晶片,直至到達目的地迴 路繪圖晶片爲止。爲了清楚,迴路介面晶片1 0 5及其他迴 路繪圖晶片間之徑路未顯示。 注意一般言之,在迴路架構中,隨意選擇資料單向循 .ς -96- 1305900 (92) 環該環流,以總是顯示在反時針方向流。此選擇並非胃另υ 。在其他實施例,流動方向可爲順時針方向。的確,其@ 一些實施例顯示其包含在雙環中之順時針及反時針方向 '流
如發送多投圖形命令迴路包,則其循最長之單投迴 包之徑路,例如,迴路包離開迴路介面晶片,進入並由第 —迴路繪圖晶片1 1 0處理,且亦傳送至次一迴路繪圖晶片 ’直至到達該環中之最後迴路繪圖晶片110'爲止。(單投 及多投迴路包及其控制及路由以下更詳細說明)。 圖形命令包之迴路繪圖晶片處理
當一原始圖形,例如一三角形到達其指定之迴路繪圖 晶片時,該迴路繪圖晶片應用大部份3 d圖形繪製管線於 此。例如,三角形宜經變換,剪貼檢查,如需要選擇剪貼 ’頂點屏蔽,掃描亦變換(光柵化),然後每一產生之像素 接受可程式像素屏蔽,其通常包含紋理及光線。 投影之三角形之螢幕空間邊界聯同Z之平面相等被多 投發送至所有迴路繪圖晶片。由像素屏蔽程序所產生之個 別像素然後構製於繪圖像素迴路包,並發送於具有指定之 目的地迴路繪圖晶片之迴路鏈上。注意特殊情形,在此, 目的地迴路繪圖晶片爲光柵化該原始圖形。在此情形,迴 路包被局部消耗,且不發送於迴路鏈上。 自迴路繪圖晶片至每一可能目的地迴路繪圖晶片之繪圖像
-97- B059(g) 素迴路包之徑路
圖4顯示自一第一迴路繪圖晶片至每一其餘迴路繪圖 晶片之最長及最短徑路,繪圖像素迴路包循此徑路。圓弧 402表示自迴路繪圖晶片11〇至其最近之迴路繪圖晶片110" 之一虛擬”直接徑路”,繪圖像素迴路包循此徑路。圓弧 4 04表示自迴路繪圖晶片11〇至最遠迴路繪圖晶片110'之虛 擬”直接徑路”’繪圖像素迴路包循此徑路。實際徑路最好 包含多個跳躍’自第一迴路繪圖晶片開始,並繼續通過如 所需多之其餘迴路繪圖晶片,直至到達目的地迴路繪圖晶 片爲止。爲了清楚,迴路繪圖晶片1 1 〇及其他迴路繪圖晶 片間之徑路未顯示。應注意繪圖像素迴路包需採取之晶片 跳躍數爲該環之總長度之一半。對其他1 5迴路繪圖晶片可 繪製相似圖;其徑路相同,僅後續之每一迴路繪圖晶片反 時針方向轉動,並各沿該徑路上跳過二迴路介面晶片。
繪圖像素包之迴路繪圖晶片處理 每一迴路繪圖晶片所連接之記憶器包含框緩衝器之像 素之1 /η之所有樣品,在此,η爲該系統中之迴路繪圖晶 片之總數(η普通爲1 6)。此爲框緩衝儲存器之傳統2d插件 。此爲一特定光柵像素如何指定一迴路繪圖晶片目的地。 如適當,交插亦可發生於多個像素階層。 當繪圖像素迴路包到達目的地迴路繪圖晶片時,該像 素內之所有樣品,其亦在現有的原始圖形(在本例中,此 原始圖形爲一三角形該邊界較早被多投)之邊界內,接受
-98- B〇5%〇 可能之內插値rf·算’以決定其在一特定樣品位置處之値, 然後接受有條件樣品更新功能。可或可不在樣品組成份之 基礎上執行樣品組成份之內插法。例如,在一實施例,z 樣品組成份値之內插値可由應用Z之先前多投平面等式計 算。在一實施例,完全不內插色樣品組成份値,例如,它 們被平坦充塡於一像素或一像素之一部份內。有條件之樣 品更新功能由現有晶片上狀態値’及可能繪圖像素命令內 之額外控制位元控制’諸如使Z緩衝器檢查或其他檢查能 或不能執行。 視訊輸出信號之產生 用以產生視訊輸出信號之資料流之產生是由迴路介面 晶片開始。迴路介面晶片發送影像像素迴路包至其所連接 之迴路繪圖晶片’然後取出其框緩衝器之插件中之樣品, 它們貢獻於第一視訊輸出像素,及發送此部份和至次一迴 路繪圖晶片,每一迴路繪圖晶片加進其貢獻,及當所有已 貢獻時,視訊輸出信號離開一(可能不同)之迴路介面晶片 之視訊輸出信號銷。在一實施例,由加進一額外迴路介面 晶片於該環中,以支援多視訊輸出信號。在產生視訊輸出 信號之程序期間中,由施加高品質之防混淆濾波器於遠較 樣品之一像素面積爲大之區域中,以達成全螢幕防混淆。 明確言之,幾乎隨意4x4防混淆濾波器(諸如Mitchell-Netravali濾波器族)可支援全視訊輸出信號視訊格式像素 率 〇 -99- 1305900 (95) 自迴路介面晶片經所有迴路繪圖晶片並回至原迴路介面晶 片之影像像素迴路包之徑路 圖5顯示來自一特定迴路介面晶片之所有視訊像素迴 路包用於防混淆及產生視訊輸出信號至視訊輸出介面。雖 在此圖中,相同迴路介面晶片開始及完成視訊流之產生, 但在至少一實施例,開始及完成迴路介面晶片無需爲相同 實際晶片。 自繪圖至多紋理記憶器拷貝產生紋理 紋理之產生與視訊輸出信號之如何產生被類似地處理 ’但並非當完成時離開該環,而是像素流繼續第二次環繞 該環,以被局部地放置於每一(激發之)迴路繪圖晶片中。 當如此進行時,正常無新圖形命令迴路包流過該環,故將 由圖形命令迴路包及繪圖像素迴路包佔用之頻帶寬空出, 並可供應給紋理裝載。視訊像素迴路包亦流過,並佔優先 由主電腦讀回繪圖結果 讀回繪圖結果與用以產生視訊輸出信號之讀回相似地 進行’除了當完成組合之像素流到達目的地迴路介面晶片 時’結果自其主介面而非自其視訊輸出介面銷(之一)出來 。(而且’當轉移至主介面時,確保饋送(帶有任何停止) 視訊輸出信號至實體影像顯示裝置之即時限制可通常放鬆 -100- 1305900 (96) —)。 將來自主電腦之紋理轉移成迴路繪圖晶片拷貝 來自主電腦之紋理經迴路介面晶片進入該環’然後環 繞通過該環,使得每一迴路繪圖晶片拉一拷貝至局部 DRAM儲存器中。正如同局部紋理產生,當進行紋理下載 時,通常繪圖亦不進行,所以可供紋理轉移用之頻帶寬並 非僅分配給圖形命令之正常頻帶寬,且亦正常分配給繪圖 用之相當頻帶寬。的確,紋理轉移與產生視訊輸出信號之 環交通共用該環頻帶寬。 架構之優點 此段敘述迴路架構之若干優點 二晶片式 雖然迴路架構支援高級至非常高級3d圖形產品,但 在一實施例,迴路架構僅需二不同之定製晶片,經設計及 製造,以產生產品,具有大部份複雜性在繪圖晶片中。此 顯然與當使用普通方法來設計產品給高級至非常高級3d 圖形市場時所需之遠較大量之定製晶片式不同。 所有單向、短、局部通信與其他高端架構不同,可實 施該路架構,而無全局匯流排及長線路。這是因爲所有內 部系統通信爲點至點、單向且在短實際距上,使用迴路鏈 之通信。 可用於屏蔽器之大量平行處理一可程式屏蔽器愈複雜 -101- 1305900 (97) 、強力及(希望)真實’需要愈多之程式步驟及紋理提取’ 以執行可程式屏蔽器。具有單個晶片基礎之3d圖形硬體 加速器,或實則以固定數之晶片爲基礎之任何3 d圖形硬 體加速器通過複雜性之一特定點,可程式屏蔽器愈強力, 整個圖形硬體繪圖系統愈慢。反之,由於迴路架構依伸縮 設計之獨特方式,只要加上更多之迴路繪圖晶片,可程式 屏蔽器能力會同比例增長,而不會降低任何性能。由於一 單迴路繪圖晶片在可程式屏蔽能力上可至少相當於任何同 時代單個晶片基礎之3d圖形硬體加速器之3d圖形繪製能 力,故使用16、32或64,或更多迴路繪圖晶片之迴路架構 基礎之系統之能力確實爲同時代單晶片基礎之3d圖形硬 體加速器強一至二級。 主電腦互接之多個選擇 迴路架構被設計,使得一單個迴路介面晶片可被放置 於一(單個)環中之任何地方,二、三、四或更多的迴路介 面晶片可代而被放置於該同(單個)環中之相同位置。由於 每一迴路介面晶片具有其自已專用之主介面,故容易建立 甚至單個環迴路架構基礎之3d圖形硬體加速器,其可連 接至多個主電腦。此能力提供給迴路架構基礎之3d圖形 硬體加速器之優點可由實例作最佳顯示。考慮具有若干非 常強力之電腦系統之3d圖形硬體加速器之一科學計算端 使用者。匕們具有之特定電腦系統能力愈強,直接連接於 該電之3d圖形資源愈有用。但最強之電腦通常指定執 -102- ^05¾)0 行單個計劃之大批工作,其可每次可運轉多小時至多曰。 並非所有這些大型工作均需要互動式3d圖形;的確,許 多此工作使用互動式3d圖形,以檢查大型計算在其完成 後之結果。如非常高級3 d圖形硬體加速器每次可僅實體 地被連接至一單個電腦,則在任何大型非3 d圖形使用工 作運轉之期間中,3 d圖形硬體加速器可不供給任何使用 。但由迴路架構基礎之3d圖形產品一次只能實體地被連 接至二或更多電腦,即使一次僅一個電腦可使用3d圖形 硬體加速器,則即使一電腦可騰空用於其他工作(或停機 維護等),亦可完全使用該3d圖形硬體加速器。 使用多個迴路介面晶片之另一方式爲連接若干不同之 環而成單個大型3d圖形硬體加速器,並共用一(或更多)主 介面。如此可建立非常大型之3d圖形支援系統,包含可 同時支援一打或更多的高解像度實體影像顯示裝置者。( 良好之配合爲分開但連接之環與分開之高解像度實體影像 顯示裝置一樣多)。此大型系統實際爲高級潛在計劃基礎 之虛擬實境顯示系統之共同需求(Caves'及 Virtual Portals')。 高品質超取樣基礎之演算法之支援 若干高品質特色可由3d圖形硬體加速器支援,當該 系統可支援每像素之大量樣品時。最先且最前支援高品質 防混淆濾波器。由於視訊輸出信號沿該環上組合之方法, 對小額外頻帶寬及內部處理,可在視訊輸出信號視訊格式 -103- I305®° 像素率上應用大面積之防混淆濾波器。此種影像架構自然 失落動態視訊改變大小之特色。如果再取樣光柵像素中心 位置並非一簡單之方形光柵行列’而是沿局部控制之仿樣 曲線上之點,則失落各種影像改正操作。如果使用不同之 仿樣再取樣紅、綠及藍像素’則甚至可在適當之預通頻帶 空間中改正色像差失真。可由高樣品密度支援之其他效果 包含各種形態之模糊(移動模糊,歸檔深度),特殊溶解等 可能具有相同二晶片之多個不同產品 藉由刻意,二基本晶片迴路架構型式,迴路介面晶片 及迴路繪圖晶片之設計可使用不同數量之這些晶片,以建 立完全功能之3 d圖形硬體加速器。例如,不同大小之商 業產品可由"原狀"之二晶片與非"再設計"之所需的任一晶 片組合。僅需要不同之PC板設計,以產生不同之產品。 迅速及低廉商業化產品(具有不同成本及特色)之能力爲目 前迅速改變市場之資產。用以再設計3d圖形硬體加速器 之習知方法,爲了類似的市場彈性,通常需要改變主晶片 本身(在工程及時間上對市場爲一巨大花費)。 即使由一單個1U或2U架座封裝之產品,由外部電纜 連接多個圖板在一起之能力可支援許多定製之構造,而無 需改變基本硬體產品。 支援非常大量之紋理記憶器 -104- 13059湖 藉由連接大量之DRAM至每一迴路繪圖晶片,及/或 指定紋理之不同區域給每一迴路繪圖晶片(對大量紋理而 言可合理執行),可容易支援較大之系統內部紋理圖。 本發明之實施例之以上討論中所用之一些術語在下文 中說明。 圖形驅動命令 如在術語圖形驅動器之定義中所述’應用軟體甚少直 接連接圖形硬體加速器。通常一件額外主電腦硬體’一圖 形驅動器,其實施一或更多電腦圖形繪製API,被放置於 應用軟體及圖形硬體加速器之間。此應用軟體執行依照電 腦圖形繪製API所述之軟體介面標準(例如語言協定)之軟 體副常式呼叫圖形驅動軟體。圖形驅動軟體處理每一此副 常式呼叫,以及與副常式呼叫直接或簡接隨帶之任何資料 如命令,以執行一些繪圖或其他電腦圖形有關之工作。圖 形驅動軟體然後可轉譯暗示之工作爲圖形硬體加速器可瞭 解之形態。此並非意爲圖形驅動軟體需檢查由應用軟體所 發送之每一位元。某些應用軟體呼叫可包含一或更多指示 器,指出數打至數百萬或以上位元組大小之資料區域;圖 形驅動軟體可僅傳送這些指示器至圖形硬體加速器。此對 於能執行資料之直接記憶存取之圖形硬體加速器而言是非 常普通的,資料之直接記憶存取是在主電腦之主記憶器中 〇 術語圖形驅動命令指由圖形驅動軟體所製造之該集所 -105- 1305900 (101) 有訊息,其轉譯電腦圖形繪製API呼叫爲圖形硬體加速器 可明瞭之訊息。 訊息之圖形驅動命令集再分爲二非重疊之訊息副集: 圖形驅動狀態及圖形驅動原始。注意:三術語圖形驅動命 令,圖形驅動狀態,及圖形驅動原始均指訊息或包集。當 指這些集中之一未指名之訊息時,該片語在數學上應爲” 來自圖形驅動命令訊息集之一訊息|’,但在習慣上,使用 較清楚之"一圖形驅動命令訊息"指相同事物。 ) 圖形驅動狀態 術語圖形驅動狀態指該副集之圖形驅動命令訊息,其 組成訊息改變或修改繪圖狀態,但本身並不指定幾何原始 圖形,或在此時直接引起任何額外繪圖。圖形驅動狀態訊 息之例子在一些實施例中爲用以設定現有顏色,或設定現 有變換矩陣之一,或變化現有防混淆濾波器之特徵者。 圖形驅動原始 術語圖形驅動原始指該副集之圖形驅動命令訊息,其 組成訊息指定幾何原始圖形及/或在此時直接引起任何額 外繪圖。圖形驅動原始訊息之例子在一些實施例中爲指定 構成欲繪製之一三角形之所有三頂點,指定構成欲繪製之 一線之二頂點,或指定構成欲繪製之一點之單個頂點者。 迴路 -106- 1305900 (102) 術語迴路指本發明之主題之圖形硬體加速器架構。片 語"在迴路架構中”或類似片語常用以表示此方面。(注意 本發明在其較複雜之佈局中超出一簡單環結構之佈局,但 術語迴路意在亦包含此等佈局)。 迴路晶片 術語迴路晶片指任何型式之定製晶片,設計成迴路架 構之實施之一部份。在一實施例中,有二種迴路晶片:迴 路介面晶片及迴路繪圖晶片。其他實施例可定義其他及/ 或不同型式之定製晶片。另一實施例明白定義僅一型式之 單個晶片,其將界定於二晶片型式實施例之二晶片的許多 功能合倂於一單個晶片中。 迴路鏈 迴路鏈輸入埠 迴路鏈輸出埠 術語迴路鏈指一特殊之單向高速迴路晶片至迴路晶片 資料互接線。在一實施例中,迴路鏈由二組特殊標準1C 墊驅動器支援及封裝多銷介面:迴路鏈輸入埠及迴路鏈輸 出卑。 迴路鏈用以轉移資料包自一迴路晶片至另一迴路晶片 。在一實施例中,轉移於迴路鏈上之資料應由埋設於傳輸 中之誤差改正碼(ECC)保護。 如一型式之迴路晶片能連接至由迴路架構訂定之正式 -107- 1305900 (103) 環結構之一,則該型式之晶片支援至少二種埠:一反時針 方向迴路鏈輸出埠及一順時針方向迴路鏈輸入埠。 一特定之迴路晶片並非總是在一狀態中,在此其可接 收經其迴路鏈輸入埠發送至此之一額外迴路包。所以’迴 路鏈副系統之一部份應包含握手信號’在此具有迴路包( 希望經其迴路鏈輸出埠送至第二迴路晶片之迴路鏈輸入淖 )之第一迴路晶片可先知道第一·迴路晶片疋否在準備在其 迴路鏈輸入埠上接收一新迴路包之狀態。 在一實施例中,握手協定看守迴路包之傳輸橫過迴路 鏈,而不管迴路包型式。在另一實施例中,迴路包型式可 分爲若干不同之副群之迴路包型式,且握手協定對此等副 群分別指示,如果具有一型式爲一特定副群之迴路包型式 之份子之迴路包可允許橫過該迴路鏈。 迴路介面 在本發明之一實施例中,迴路介面晶片爲一迴路晶片 ,具有至少一主介面用以連接至主電腦’及至少一反時針 方向迴路鏈輸出埠及一順時針方向迴路鏈輸入璋。在某些 實施例中,迴路介面晶片亦具有至少一視訊輸出介面。使, 用這些習慣,在一簡單環中’所有資料大部份反時針方環 繞迴路晶片圖圈流動。指定之流動方向僅爲一習慣;不同 之實施例可選擇不同之習慣。並非所有實施例包含順時針 方向及反時針方向迴路鏈輸入埠。 在主電腦上,圖形驅動器產生圖形驅動命令,其經主 -108- 1305900 (104) 介面被發送至迴路介面晶片。於到達時,迴路介面晶片處 理這些圖形驅動命令,在許多情形中產生若干迴路架構內 部訊息,以自迴路介面晶片被送出通過其各種其他介面而 至其他迴路晶片。 在一實施例中,迴路介面晶片亦包含至少一可程式視 訊信號格式定時產生器’其可發送一系列的視訊像素訊息 通過迴路鏈輸出埠’環繞此迴路鏈輸出埠所連接之環。在 相同實施例中,此定時產生器之一第二階段可接收通過迴 路鏈輸入埠之一視訊像素訊息流,其已通過一環。在由總 和之濾波器能量之倒數正規化,及像素資料之可能後處理 (可程式gamma改正,其他影像定時考慮等)之後,此第二 階段然後自迴路介面發送(可能經後處理之)像素資料作爲 視訊輸出信號,通過其視訊輸出介面,以連接至一實體影 像顯示裝置。 在至少一實施例中,並無限制視訊像素訊息流應在同 一迴路介面晶片處產生及終止。 迴路繪圖 在本發明之一實施例,迴路繪圖晶片爲一迴路晶片, 具有局部記憶副系統連接於此,及至少一反時針方向迴路 鏈輸出埠及一順時針方向迴路鏈輸入埠。在一實施例中, 此局部記憶副系統是由DRAM晶片構成,雖然可使用任 何適當之記憶器。 局部記憶副系統可被組態,以儲存若干可能型式之資 -109- 1305900 (105) 料的其中之一以上。一可能之型式爲整個框緩衝器之一副 部份之框緩衝像素及/或框緩衝器樣品儲存器。另一可能 型式爲所有現有之紋理記憶器之一完整複製拷貝之儲存器 。另一可能型式爲現有之紋理記億器之一部份可能複製之 拷貝之儲存器。另一可能型式爲所有現有之顯示器表之完 全或部份可能複製之拷貝。 在一特定實施例中,迴路繪圖晶片具有三計算責任。 第一計算責任爲其接收及內部地處理進入其迴路鏈輸入埠 中之任何圖形命令迴路包,認定此特定迴路繪圖晶片爲圖 形命令迴路包之目的地之一。此處理會引起存取局部記憶 副系統,以及可能引起此迴路繪圖晶片製造並自其迴路鏈 輸出埠送出額外的新迴路包。這些新迴路包可包含繪圖像 素迴路包。 第二計算責任爲接收及內部地處理進入其迴路鏈輸入 埠中之繪圖像素迴路包,認定此特定之迴路繪圖晶片爲繪 圖像素迴路包之目的地之一。此處理會引起存取局部記憶 副系統。 第三計算責任爲接收及內部地處理進入其迴路鏈輸入 埠中之視訊像素迴路包,認定此特定之迴路繪圖晶片爲視 訊像素迴路包之目的地之一。視訊像素迴路包及內部迴路 繪圖晶片狀態之資訊訂定一濾波中心點,現有訂定之防混 淆濾波被施加於此。任何防混淆瀘波器具有與任一特定濾 波中心點相關之作用區。一特定迴路繪圖晶片擁有並在其 局部記憶副系統中含有一副集之樣品,其構成該框緩衝器 -110- 1305哪 。訂定該集之樣品,其在現有濾波中心點之防混淆濾波作 用區內,並由特定迴路繪圖晶片擁有,作爲貢獻集。當一 迴路繪圖晶片需處理一視訊像素迴路包時,此意爲該防混 淆濾波器被施加於該貢獻集上,以產生部份摺積結果。明 確言之,此處理會引起發生以下計算:1)根據特定之濾波 中心點,變換此爲樣品位址,可在此執行局部記憶副系統 之讀出,以獲得特定樣品組成份,2)產生有關現濾波中心 點及由步驟1中所產生之樣品位址所認定之樣品之樣品位 置之摺積係數,3)由在步驟2中所產生之係數,自局部記 憶副系統中被讀出之樣品組成份之摺積,4)部份相加摺積 之結果及在影像像素迴路包中已含有之部份結果,及5)發 送具有由步驟4所計算之値取代部份結果値之影像像素迴 路包至迴路繪圖晶片迴路鏈輸出埠。注意通常如果現有迴 路繪圖晶片爲處理影像像素迴路包之第一個迴路繪圖晶片 ,則在一些情形中,該部份結果可爲全零。 一迴路繪圖晶片亦可自然產生及自其迴路鏈輸出埠送 出FIFO狀態迴路包,根據任意若干因素,可能包含,但 不限於·其各種內部隊列中餘留之自由儲存量,由前圖形 狀態迴路包所設定之局部參數値,及自上次迴路繪圖晶片 送出FIFO狀態迴路包後已經過多少時間。在一特別實施 例中,局部參數値包含局部環(此特定迴路繪圖晶片爲其 一部份)周圍之一些適當量度。注意當非局部迴路鏈連接 包含於該環佈局中時,此量度可爲複數。 -111- 1305900 (107) 包 迴路包
在迴路架構中,迴路包或僅包爲像素之可變長度集合 ,其由第一迴路晶片被發送經過迴路鏈至第二迴路晶片’ 作爲一原子物件(例如,立刻全部發送,通常在隨後包之 任何資料被發送之前被全部發送)。第一迴路晶片具有最 近製造之一迴路包,或最近決定來自某處之迴路包需要被 送出。第一迴路晶片然後發送迴路包經過迴路鏈輸出埠至 第二迴路晶片之迴路鏈輸入埠。第二迴路晶片爲自第一迴 路晶片算起之局部環中之次一反時針方向之迴路晶片。在 本發明之一實施例中,迴路介面晶片可代而發送一迴路包 至其若干非局部輸出迴路鏈之任一至其他迴路介面晶片之 非局部輸入迴路鏈之任一。 包標頭
包酬載 一迴路包內之資料分爲二群。第一群爲包標頭,在一 實施例中’其可包含諸如包長度、目的地及型式等資訊。 第二群爲包酬載,在一實施例中,其可包含諸如欲繪製之 幾何物件’或欲取樣之像素,或欲完成組合之視訊輸出像 素之資訊。 圖形命令 術語圖命令指所有迴路包集,迴路包之型式可由迴路
-112- 13059湖) 介面晶片製造,作爲處理來自主電腦之圖形驅動命令訊息 之結果。 迴路包之圖形命令集分爲二非重疊之迴路包副集:圖 形狀態及原始圖形。 注意:三術語圖形命令、圖形狀態及原始圖形均指迴 路包。當指這些集中之一之未指名之迴路包時,在數學上 該片語應爲”圖形命令路包集中之一迴路包|’,在由普通習 慣,使用較清楚之"圖形命令迴路包”,意義相同。 注意:由主電腦軟體發送至圖形硬體加速器之可能訊 息集,圖形驅動命令,圖形驅動狀態,及圖形驅動原始訊 息,及由迴路介面晶片所製造之可能迴路包集,圖形命令 ,圖形狀態,及原始圖形迴路包間有表面類似。雖然在特 定實施例中,可有相當語意上相似,但其並非需要。的確 ,在許多實施例中,單個主電腦圖形驅動軟體發送一單個 圖形驅動原始訊息,其轉而導致迴路介面晶片不僅產生一 或更多原始圖形迴路包,但亦產生若干圖形狀態迴路包, 可能在原始圖形迴路包產生之前及之後。 爲完整起見,在一實施例中,迴路介面晶片亦產生視 訊像素迴路包,故迴路包正式亦爲迴路包之圖形命令集之 組成份子。 圖形狀態 術語圖形狀態指圖形命令迴路包副集,其組成份子迴 路包改變或修改繪圖狀態,但本身並不指定幾何原始圖形 -113- ,或在此時直接引起任何額外繪圖。圖形狀態迴路包之例 子在某些實施例中爲用以設定現有顏色’或設定現有變換 矩陣的其中之一,或改變現有防混淆濾波器之特徵者。 原始圖形 術語原始圖形指圖形命令迴路包副集,其組成份子迴 路包指定幾何原始圖形’及/或在此時直接引起任何額外 繪圖。原始圖形迴路包之例子,在某些實施例中,爲指定 界定欲繪製之三角形之所有三頂點,或指定界定欲繪製之 一直線之二頂點。 繪圖像素 繪圖像素爲一迴路架構迴路包,其可被發送經過迴路 鏈側至其他迴路晶片。在一實施例中,迴路繪圖晶片爲唯 一型式之迴路晶片’其對繪圖像素迴路包執行任何處理, 其他型式之迴路晶片處理繪圖像素迴路包中之路由及目的 地資訊,以決定如果及如何傳送該包通過該晶片具有之任 一或所有迴路鏈輸出埠。在一實施例中,可啓始地製造繪 圖像素迴路包之唯一迴路晶片爲迴路繪圖晶片。在一實施 例中’繪圖像素迴路包由迴路繪圖晶片製造,僅作爲處理 由同一迴路晶片所接收之原始圖形迴路包之直接結果。 繪圖像素迴路包之迴路包標頭中之目的地資訊指定何 迴路德圖晶片處理此繪圖像素迴路包。在一實施例中,目 的地資訊由整數X及y螢幕空間像素位址指定,且目的地 -114- 1305900 (110) 迴路晶片爲一或更多的迴路繪圖晶片,其包含所指定之像 素內之一些或所有樣品。在另一實施例中,目的地資訊爲 螢幕空間之多個像素區。在又另一實施例中,目的地資訊 爲螢幕空間之副像素區。在又另一實施例中,該目的地迴 路晶片經由更普通之迴路晶片副群標截機構被指定,其並 不直接譯碼爲X及y位址。 繪圖狀態 在一實施例中,迴路繪圖晶片維持內部(晶片上)狀態 資料,此用以執行指定於此之繪圖工作。某些此狀態爲全 局性,例如,每一迴路繪圖晶片僅維持一個狀態拷貝。其 他狀態爲局部性,每一可能之源迴路繪圖晶片具有特定之 一不同狀態拷貝,其可發送迴路包至此特定之迴路繪圖晶 片。二類狀態由繪圖狀態迴路包之接收修改。 當一迴路繪圖晶片決定此爲已接收之特定繪圖像素迴 路包之目的地之一,且知道此應對繪圖像素迴路包之內容 執行一些處理時,在由此特定迴路繪圖晶片所維持之全局 及局部狀態之範圍中執行此處理。在某些實施例中,至少 這些局部資料文之一被認定爲維持狀態資料,如自相同發 送者迴路繪圖晶片所接收之繪圖狀態迴路包,與其後發送 現處理中之繪圖像素迴路包相同。 此局部狀態資料文(發送迴路繪圖晶片特定資訊)可包 含用以決定由此特定迴路繪圖晶片所擁有之一集侯選框緩 衝樣品位址(及所附帶之樣品位置及樣品),對此,應由此 -115- 1305,) 特定迴路繪圖晶片計算一集對應之樣品組成份。這些樣品 組成份然後用作輸入之一至帶有該値之樣品位址上之有條 件樣品更新功能。施加何有條件樣品更新功能亦可爲局部 資料文之一部份。
在一實施例中,決定由特定目的地迴路繪圖晶片所擁 有之該集侯選框緩衝樣品位址所需之特定目的地迴路繪圖 晶片上所儲存之(發送迴路繪圖晶片特定之)局部狀態資料 文包含三螢幕空間副像素精確點位置,它們形成一三角形 區。此區內之樣品位置夠格成爲該集之侯選份子。可有額 外局部狀態資訊,以區別此區之內外,並解決例如剛在三 角形之三邊之任一上之樣品位置之相持情形,以及例如樣 品位置剛在與形成三角形區之三螢幕空間副像素精確點位 置之一相同之樣品位置之相持情形。決定主文資料及法則 之這些樣品集之變化亦可出現於線節段,防混淆線節段、 點、防混淆點、大點以及較三角形複雜之幾何區。
另一實施例在局部狀態資料文中包含較少資訊,且代 而每一繪圖像素迴路包明顯包含資訊,其可決定所有目的 地迴路繪圖晶片之該集侯選框緩衝樣品位址。在一實施例 中’此資訊爲此繪圖像素迴路包隨帶之指定螢幕空間區內 之所有樣品之一串位元。在一特定之迴路繪圖晶片,對來 自該串之位元(其帶有此特定迴路繪圖晶片所含之框緩衝 器樣品位址),位元値"1 ”表示該框緩衝器樣品位址爲侯選 集之一份子,位元値” 0 "表示非該份子。 吾人現在回到特定迴路繪圖晶片上之同局部狀態資料 -116- (S ) 1305¾ 文之部份,其用以計算侯選集之份子之樣品位置之樣品組 成份。由於樣品組成份包含多個組成份,它們包含有關如 何計算每一組成份之値之資訊。一可能之方法可爲使用在 螢幕空間副像素精確X及y位置中之一平面等式,以計算 在一特定樣品位置上之一樣品之一組成份之値。使用此方 法,晶片上局部狀態資料文中所儲存之資訊爲此平面等式 之係數値。在一實施例中,樣品之z深度値依此方法選擇 計算。用以計算一組成份値之另一方法爲僅自繪圖像素迴 路包之包酬載部份之一部份插入一常數。在一實施例中, —樣品之組成份之紅、綠、藍,及可能alpha値依此方法 選擇計算。可想到且可能有其他方法用以計算樣品組成份 値。來自其他先前接收之繪圖像素迴路包之所儲存資料及 其他先前計算之樣品之內插法有可能。顯然,可有條件個 別選擇任何這些技術用於每一樣品組成份,且以任何方式 混合。 視訊像素 視訊像素爲一迴路架構迴路包,其可發送經迴路鏈至 若干其他迴路晶片。在一實施例中,迴路繪圖晶片及迴路 介面晶片爲迴路晶片’它們對視訊像素迴路包之內容執行 任何處理,存在之任何其他型式之迴路晶片處理影像像素 迴路包中之路由及目的地資訊,以決定如果及如何經由該 晶片可具有之任何或所有迴路鏈輸出埠傳送該包。 在一實施例中,能啓始地製造影像像素迴路包之僅有 -117- 迴路晶片爲迴路介面晶片。 當一視訊像素迴路包進入一迴路繪圖晶片時,其可接 受內部處理及修改,然後自迴路繪圖晶片被送回。在—實 施例中,能消耗視訊像素迴路包(例如,非傳送此)之迴路 晶片爲迴路介面晶片。其在其些情形並不永遠發生,一迴 路介面晶片可僅傳遞影像像素迴路包,而非消耗此。或者 ,如一第一迴路介面晶片決定該第一迴路介面晶片爲經由 第一迴路介面晶片之迴路鏈輸入埠之一所接收視訊像素迴 路包之預定最後目的地,則該迴路包接受一些內部計算, 最後經由迴路介面晶片之視訊輸出介面(之一)送出計算結 果,作爲視訊輸出信號。 FIFO狀態 術語FIFO狀態指由迴路繪圖晶片經前述機構產生之 迴路包。在一實施例中,FIFO狀態迴路包最後由迴路介 面晶片消耗,雖然並非總是由FIFO狀態迥路包所遭遇之 首若干迴路介面晶片消耗。 到達迴路介面晶片之FIF0狀態迴路包內所含之迴路 包酬載可用以更新迴路繪圖晶片之相對可提供之迴路介面 晶片之模型,其產生FIFO狀態迴路包’以處理任何迴路 包,迴路介面晶片在將來可考慮發送其至與其他可能目的 地相關之特定迴路繪圖晶片。 迴路繪圖晶片 -118- 1305900 (114) 環 簡單環組態 當3d圖形硬體加速器由迴路晶片建立時,在最簡單 之情形,各迴路晶片連接成一環,每一迴路晶片具有其迴 路鏈輸出埠連接至該環中之次順時針方向迴路晶片之迴路 鏈輸入埠。用以建造此環之迴路晶片型式爲若干迴路繪圖 晶片及一或更多的迴路介面晶片。迴路架構之某些實施施 加某些限制於此晶片之確實數量上,但此限制與此處討論 無關,且本發明並不預定一環中之晶片之任何特定數量。 所以,這些晶片均被連接在一起成爲一圓形迴路。在 此簡單之情形,未形成環連接之僅有晶片介面爲在該環中 之一或更多迴路介面晶片上之三額外介面:迴路介面晶片 主介面,迴路介面晶片影像輸出介面,及任何迴路介面晶 片非局部迴路鏈埠(在這些實施例中,其包含此埠)。 迴路架構已被設計,使得此簡單之結構能作用如全功 能3d圖形硬體加速器。在由一環結構如此構成之一 3d圖 形硬體加速器方面,術語環指晶片之此一環。用以指確實 如此建造之3d圖形硬體加速器之術語爲一簡單之環組態 。它們有時稱爲簡單環。 局部環 由於本發明之某些實施例在迴路介面晶片內及外包含 額外之連接選擇,故可構製較之僅簡單之環組態爲複雜連 接之迴路晶片組,並用作3d圖形硬體加速器。然而’在 -119- 1305900 (115) 這些更複雜之情形’仍有局部環之觀念,在此,繪圖程序 之大部份操作以與其在簡單環組態中非常相似之方式進行 。在本文中,所謂局部環’或甚至有時僅稱環恰指構成局 部環之迴路架構晶片。 環交通 雖然連接電子及/或電腦系統之環之若干實例存在於 電腦科學中’但互接系統之更多例子以更複雜之佈局爲基 礎。所以’應用於迴路系統之術語可細心地被定義。 來自涉及連接系統之電腦科學之一普通觀念爲交通。 在某些定義中’交通爲在連接電子及/或電腦系統中之重 要或特定副系統(在本文中稱爲節點)上可供應多少頻帶寬 之量度。 一有關之觀念爲匯流排交通,如同應用於電子及電腦 系統中,在此’若干副系統可均共用一單條資料徑路。匯 流排交通僅爲在此共用匯流排上所發生之任何有效之通信 〇 在連接成本發明之環系統中,有時吾人可提及環匯流 排’及環匯流排上之交通。但不提及單個共用之匯流排, 在技術上,僅有之匯流排均爲不同迴路晶片間之單向點至 點連接’所以環匯流排交通之觀念定義欠佳。 然而,環交通之一更普通觀念可作有用之定義。在一 特定之簡單環或局部環,在任何特定迴路鏈上之交通在統 計上應約略相同。所以在一單個迴路鏈上之平均交通爲在 -120- 1305900 (116) 該環之其餘部份上所進行之良好近似。所以’環頻帶寬之 統計觀念可使用相同之統計論點而被定義。 在環交通之此觀念內,吾人可問繪圖計算之何部份在 一特定時間點沿該環上產生交通。該交通可以所用之絕對 頻帶寬,或作爲環之總(最大或平均)頻帶寬之百分率量度 。3d圖形硬體繪圖程序內之不同交通來源亦可在所用之 相對頻帶寬上相互比較,或與特定繪圖計算之標稱或預期 使用相對使用之頻帶寬比較。 性能 文件之此部份之特徵爲迴路架構之一些通信及計算方 面之性能輪廓。此特徵在有關迴路架構之其他計算部份之 性能之一組特定假設下執行並與其成比例。這些假設並非 特定之工程或市場目標;這些假設僅爲本發明之一特別實 施例之一組實例計算能力,其可明瞭計算、晶片量、頻帶 寬問題在迴路架構中如何折衷。 假設 吾人假設在一特定實施例中,一單個迴路繪圖晶片具 有每秒64百萬之像素屏蔽率,每秒1百萬樣品之取樣充塡 率,並可每處理及饋送每秒240百萬影像像素迴路包。所 以’對包含1 6迴路繪圖晶片之一簡單環,總像素屏蔽率爲 每秒1千百萬像素屏蔽,總像素充塡率爲每秒1百萬像素( 在像素密度爲1 6 ),及視訊輸出信號視訊格式像素率爲每 -121- 1305900 (117) 秒24 0百萬像素。這些產出並未計及由較不經常之工作’ 諸如紋理裝載或紋理拷貝所耗用之任何時間。 性能輪廓 給予以上假設,表1顯示當所用之迴路繪圖晶片數自1 增加至64時,迴路架構基礎之3d圖形硬體加速器中可能 之相對性能增加。對每一迴路繪圖晶片數量,顯示在二不 同樣品密度上之性能。 標示像素屏蔽能力之行是像素屏蔽程式之相對複雜性 ,具有由1 6迴路繪圖晶片支援之相對像素屏蔽能力複雜性 隨意訂定爲1.0。所需之像素屏蔽能力之實際量可以不同 ,取決於特定應用之細節。在一些應用中,小於1 ·〇之像 素屏蔽能力仍相當有用,其他應用可能要使用諸如程序紋 理或程序幾何等特色,其需要多於1.0之像素屏蔽能力。 由3d圖形軟體繪圖系統之經驗顯示小於4之樣品密度 並不增加繪製之影像多少品質。此外,雖然在樣品密度8 上繪製影像並不產生較之由樣品密度4繪製者明顯爲佳之 品質,但以樣品密度1 6或更高繪製之影像遠較可能產生討 喜之結果。圖形硬體繪圖系統有相似之品質交換。此意爲 3 d圖形硬體加速器最好支援至少丨6或更高樣品密度。像 素屏率限制像框之深度複雜性及視訊解像度及及繪圖框率 之最大乘積値。保持深度複雜性於6,1G之像素屏蔽率( 每秒1千百萬像素)支援在繪圖框率爲76Hz上具有視訊解 像度920x 1 200像素之實體影像顯示裝置,而1/2G之像素 -122- 1305900 (118) 屏蔽率(每秒一半千百萬像素)支援在繪圖框率爲60Hz上 具有視訊解像度1280x1024像素之實體影像顯示裝置,或 繪圖框率爲38Hz上具有視訊解像度1920x1200像素之實體 影像顯示裝置。如深度複雜性少二倍至値3,則支援具有 二倍像素視訊解像度之視訊信號格式’或需要二倍繪圖框 率之應用(至某最大値)。表2槪括一實施例之可支援輪廓 。在具有+之所有繪圖框率,該系統具有較之實體影像顯 示裝置可使用爲大之能力。 表2由最大視訊格式像素率限制,顯示於表1之最後行 中。具有視訊解像度192 Ox 1 200之實體影像顯示裝置通常 僅在60- 84HZ上運轉,所以需要每秒至少200百萬像素視 訊格式像素率。具有視訊解像度1 280x 1 024視訊解像度 76Hz之實體影像顯示裝置僅需每秒100百萬視訊格式像素 率。 迴路架構基礎之3 d圖形硬體加速器可被組態,以支 援一至二或更多之視訊輸出介面。同時服務一個以上輸出 介面之需要對可支援之視訊信號格式引進額外共用資源限 制。如亦需同時執行二不同之繪圖,則其亦對可達成之繪 圖性能施加額外共用資源限制。在某些實施例中,在2視 訊輸出介面上進行自1至2視訊輸出信號需要大部份資源分 配於視訊輸出介面之間。在一實施例中,此爲簡單之對分 可支援之實體影像顯示裝置視訊解像度及/或所支援之繪 圖框率,或在一些情形中,爲像素屏蔽能力。 -123- I3059(ffi 迴路包 文件之此部份說明迴路包、路由、及迴路包隊列’及 潛在之FIFO緩衝器之一些技術細節及限制’供迴路包通 過本發明之一實施例中之迴路鏈橫過該環之用。 迴路包之定義 在迴路架構中,一迴路包定義爲位元之可變長度集合 ,其自一迴路晶片內被發送經過迴路鏈至另一迴路晶片內 ,作爲一原子物件。第一迴路晶片具有一迴路包在其內, 由於第一迴路晶片製造該迴路包之故,或由於第一迴路晶 片接收來自另一迴路晶片之迴路包之故。這些迴路包通常 自第一迴路晶片被發送經過迴路晶片之迴路鏈輸出埠至第 二迴路晶片之迴路鏈輸入埠。第二迴路晶片通常爲實體第 一迴路晶片之反時針方向之直接鄰居迴路晶片。 在本發明之一實施例中,迴路介面晶片可代而發送一 迴路包自若干非局部輸出迴路鏈之任一至其他迴路介面晶 片之非局部輸入迴路介面之一。 在一實施例中,迴路包內之資料分爲二群。第一群爲 包標頭,諸如包長度、目的地資訊及型式。第二群爲包酬 載,諸如欲繪製之幾何物件、或欲抽樣之像素、或影像輸 出像素,以完成組合。 在一實施例中,迴路鏈具有固定位元寬度;在此情形 中,迴路包之位元大小爲此固定大小之整倍數(某些位元 可不被使用)。 -124- 1305900 (120) 在一實施例中,每一迴路包之包標頭資訊包含一明顯 之長度場。此長度資訊可爲冗餘資訊,因爲一特定迴路包 之長度可自迴路包之包標頭型式場或其他場間接決定。然 而,在一些情形中,僅迴路包之包標頭型式場之資訊可能 不夠單獨指定整個迴路包之長度。如果允許某些迴路包型 式可具有可變長度包酬載長度,則發生此情形。具有與包 標頭型式場獨立之明顯包標頭長度場使低階層狀態機器可 適當處理迴路包之輸送。亦可在一特定晶片製成後,引進 新迴路包型式;只要舊晶片需對新迴路包所作之唯一事項 爲傳送其至次一晶片,舊晶片仍在亦包含具有新迴路包型 式之較新晶片之系統中作用。 迴路包型式 橫過該環之所有迴路包被標以多投或單投,多投迴路 包通常被送至該環上之所有晶片;目標位元可代而指示只 有某些指定之晶片可處理此迴路包。雖然有可能非常多不 同之迴路包型式,但大部份迴路包屬於三特定組之迴路包 之一,屬於3 d圖形繪製管線之三主要階段群。爲了簡單 說明,如一迴路包P爲迴路包s之一份子,則吾人僅稱該 P爲一 s迴路包。此三組迴路包及迴路包之一些較重要之 特定有關副組爲‘· 圖形命令迴路包組。其爲攜帶圖形命令迴路包自迴路 介面晶片至迴路繪圖晶片之所有迴路包群。圖形命令群中 之迴路包歸於二主要迴路包副群:圖形狀態及原始圖形迴 -125- 1305900 (121)
路包副組。圖形狀態迴路包通常爲多投,且改變內部繪圖 狀態,但它們本身並不產生像素。原始圖形迴路包通常爲 單投,且通常包含頂點資料,其實際指定三角形、線、點 及欲實際繪成像素之其他幾何原始圖形。當迴路繪圖晶片 接收一圖形命令迴路包時,其佔用迴路繪圖晶片內部之圖 形命令輸入FIFO緩衝器之空間。在(可程式之)時間間隔 上,迴路繪圖晶片發送一 FIFO狀態迴路包沿著該環回至 迴路介面晶片^以保持更新特定迴路繪圖晶片內餘留之緩 衝儲存空間量更新。 繪圖像素迴路包組。此組迴路包包含由迴路繪圖晶片 處理原始圖形迴路包之結果之所有迴路包。繪圖像素迴路 包組之一重要副組爲繪圖狀態迴路包組。當敘述繪圖之全 部細節時,將發現亦有由迴路繪圖晶片所產生之繪圖狀態 迴路包,以對欲在文中繪製之像素建立適當之狀態。
視訊像素迴路包組。它們爲如何自環內收集最後欲產 生之視訊輸出信號之資料。在一實施例中,這些迴路包由 迴路介面晶片(在一實施例中,其包含影像信號格式定時 產生器)以初始零RGB A和及正規化資料產生。這些迴路 包然後通過一環中之所有迴路繪圖晶片(沿該徑路上收集 像素資料組成份,在一實施例中加進此於影像像素迴路包 之RGBA如及正規化資料場中),然後再進入迴路介面晶 片中,使得最後正規化像素資料,可選擇之gamma改正 圖形管線階段,並輸出於視訊輸出介面銷上,或向上通過 主介面而至主電腦,或通過環繞此或一或更多其他環,使 -126- 1305900 (122) 得在其後繪圖中用作紋理圖(或其他圖型式)。 迴路包製造 有三種方式,其中迴路晶片可發現自已具有一迴路包 ,其需被送出於其迴路鏈輸出埠(或在某些實施例中’爲 其他迴路包輸出淳)上。 迴路包可自系統介面外進來。其一例爲資料在迴路介 面晶片之主介面上進來,但現在需作爲迴路包被送出至其 他迴路晶片。 迴路包可爲晶片上處理資訊之結果所產生。其一例爲 作爲迴路繪圖晶片內之光柵化程序之一部份所製造之繪圖 像素迴路包。另一例爲在迴路介面晶片之主介面上進來之 資料,且其已由迴路介面晶片處理成爲修改資料’其現在 需作爲迴路包被送出至其他迴路晶片。 迴路包可通過其迴路鏈輸入埠(或某些實施例中之其 他迴路包輸入埠)進入一迴路晶片。其一例爲一繪圖像素 迴路包,此剛通過;其目的地並非現有的迴路晶片’而是 該環下方更遠之另一迴路晶片。 迴路包目的地型式單投 單投迴路包在定義上具有單個目標目的地。例如,一 繪圖像素迴路包具有特定迴路繪圖晶片之一單投目標在該 環之下方處,其負責框緩衝記憶插件’包含像素之xy位 址。原始圖形迴路包亦定義爲單投迴路包;其固定目的地 -127- 1305900 (123) 爲迴路繪圖晶片,一迴路介面晶片決定發送次一原始圖形 至此,以平衡負載。 在一實施例中’繪圖像素迴路包之目的地晶片可由像 素之xy繪圖位址間接表不。但在另一實施例中’低位準 的迴路包控制資訊可保持冗餘及簡單’如果明顯之單投目 標資訊總是全部出現於全部繪圖像素迴路包之控制場內。 爲了可允許由相同迴路晶片建造許多不同大小之環’ 一迴路晶片用以定址另一迴路晶片之內部機構係做成具有 彈性。在一實施例中,僅在迴路晶片電源接通之後,方呈 顯系統中之迴路晶片(爲系統之一部份)之實體組織及數量 。在一實施例中,此彈性可由設計迴路晶片當初始化時自 一晶片外來源下載動態組態資訊達成。例如,特定型式之 所有迴路晶片可被相同地製造’初始化組態資訊可設定每 一迴路晶片上之一內部1D場於與同系統中之所有其他迴 路晶片相對之一獨有値。具有此獨有之ID可用作許多不 同之可能晶片路由及定址機構。 迴路包目的地規格選擇 以下各段討論若干方式,其中可指定連接至一環之一 組晶片內之單投及多投目地資訊。然而’迴路介面晶片連 接至另外環之能力表示需要較之簡單環更爲複雜之佈局。 然而,爲了清楚起見’先討論簡單之單個環佈局之解決空 間之探討° -128- 13059撒 一簡單環內有許多方法,可辨認其中之晶片目標。迫 些方法包含,但不限於下段中之三個例子。 其一:每一迴路包之迴路包標頭包含一小整數場’稱 爲跳越計數。於經由其迴路鏈輸入埠收到一迴路包之後’ 一迴路晶片自跳越計數減一’如結果爲零’則該迴路包之 目的地爲此迴路晶片;否則’經由迴路晶片之迴路鏈輸出 埠送出該迴路包(隨帶減少之跳越計數)至該環之次一迴路 晶片。此實際爲一來源關係機構,例如,發送一迴路包至 一迴路晶片,其距離8迴路晶片僅設定跳越計數於8 ° 其二:假設在系統初始化時,指定一整數ID給每一 迴路晶片,其與此系統中之所有其他迴路晶片不同。且假 設此獨有之整數1D爲一特定迴路晶片距一指定之主迴路 介面晶片多少迴路晶片之計數。此獨有整數可由發送一迴 路包被初始化’意指經由該環被初始化’在此’初始化迴 路包具有一跳越計數場,其在每次進入一新迴路晶片時增 加。其他更複雜之定址資訊可跟隨於後。欲明瞭此額外資 訊可如何使用,假設第一迴路晶片欲發送一訊息至第二迴 路晶片。該額外定址資訊使第一迴路晶片可根據其他資料 ,諸如框緩衝器x及y像素位址’計算桌一迴路晶片之獨 有整數位址。如果每一迴路晶片具有此一獨有ID,則目 的地決定相當簡單。如果你爲一迴路晶片’且剛進入你的 迴路鏈輸入埠中之一迴路包中之獨有目的地1D與你的獨 有ID之値相符,則此迴路包是給你’否則’並非給你, 旦應自你的迴路鏈輸出埠送出’以進一步尋找其目的地迴 -129- 1305900 (125) 路晶片。 其三:與以上二者相似’但代而該獨有晶片號數在隨 意之基礎上被指定,其在由較之簡單環爲多之複雜徑路連 接之迴路晶片基礎之系統中具有一些優點。 這些例子僅提出單投迴路包。多投迴路包如何處理? 例如,再度讓吾人看看該簡單環情形之許多可能選擇之三 種: 其一:多投迴路包由所有迴路晶片處理。 其二:多投迴路包由所有迴路晶片處理,除了具有多 投迴路包特別不作用之個別迴路晶片。此不作用可由單投 迴路包個別傳達給不能接收多投迴路包之每一迴路晶片, 其說'’你不能多投”。 其三:多投迴路包標頭含有一串固定長度之位元串, 表示所有整數晶片ID之位元設定。(其表示一環中之最大 晶片數)。如一迴路晶片之整數ID位元設定於多投標頭中 ,則此迴路晶片應接收該多投迴路包;否則’不接收。注 意此設計需要多投迴路包之標頭與單投迴路包不同’或作 廢之控制位元總是存在於(更爲常見的)單投迴路包中。 由製造副群(固定最大數)加進一間接層’各具有獨有 之整數ID。每一迴路晶片具有每一副群之狀態位元’其 標示稱爲多投群之一特定副群內之份子身份。每一多投迴 路包具有一固定場用以儲存該整數,其表示所廣播之副群 之獨有整數ID。如果且僅僅如果迴路晶片之份子身份位 元設定於迴路包標頭中之特定副群ID ’則一特定迴路晶 -130- 1305¾ 片爲一特定多投迴路包之目的地。 於副群零之習慣爲低花費之保証, 發送迴路包至所有迴路晶片。同時 非常多。八群僅需要三位元之副群 的確,如果單投迴路包在標頭中需 投位元在設定時可再使用此η位ί 之副群。 如前所述,所有進行之討論假 中之引導迴路包。由額外迴路介面 間之額外非局部互接線連接一起之 資訊用作迴路包目的地資訊。 用以達成此之一實施例爲僅加 單之內環目的地層上。其作用如下 爲與現在移行不同之環,迴路繪圖 一迴路介面晶片時,路由資訊踢進 不同(且可能最後目的地)之環,或 現有環中(尋找不同之迴路介面晶/ 顯示及處理路由資訊。在第一方法 轉送非局部目的地迴路包至該環中 任何事項。一迴路介面晶片可減少 路晶片ID,或若干其他事項之任 包應送至屬於該環介面晶片之多個 。一旦迴路包到達目的地環時,可 定演算法之一。此意爲可發送該多 加進所有迴路晶片恆屬 以確保總是有一方法來 支援之副群之總數無需 資訊在迴路包標頭中。 要η位元目地場,則多 ΐ場來支援多至2η不同 設在單個環之簡單佈局 晶片或由迴路介面晶片 多環需要更複雜之路由 進一簡單之路由層於簡 :只要一迴路包目的地 晶片僅傳送此。於遇到 ,可能使迴路包跳入一 仍向前進一步饋送此於 午)。通常有若干方式可 中,迴路介面晶片執行 之次一迴路晶片以外之 一或更多計數,匹配迴 一,以查看此特定迴路 迴路鏈輸出璋之哪一個 應用前述局部目的地決 投迴路包,使得多投迴 -131- 1305900 (127) 路包之潛在範圍在該目的地環內。多投至多環更爲複雜, 但可由精於本藝之人士依此處所述執行。 迴路包之機構及標頭格式之進一步細節取決於’並可 獲自在建造迴路架構之特定實施之過程時所發生之其他限 制,如同可由精於本藝之人士依此處所述執行。 對迴路包向前遞送演算法之一重要額外限制尙待討論 :終止。單投迴路包總是終止於其特定目的地目標上。但 多投迴路包繼續進行;一旦迴路包已完全環繞該環一次時 ,需要一些機構來終止自動前進。(某些複雜之情況可能 需要迴路包循環該環二次或更多次,然後停止前進)。此 處之觀念爲可由簡單之低階狀態機器防止迴路包無限循環 〇 亦有若干方法可防止無限循環,但有低階誤差防火牆 之額外限制,即使在大部份實施例中,假設至少所有迴路 包標頭資訊由誤差改正碼(ECC)保護。 再度在迴路包之標頭內,可使用一小整數跳越計數場 ,每次迴路包進入一新迴路鏈輸入埠時,減少其値。當跳 越計數場到達零時,迴路包應不再前進,而不管其他標頭 資料如何說。如果除了減少單投目的地位址場外,亦提供 群及路由資訊,則此場可再用於多投迴路包之此用途上。 另一可能性(對簡單環)爲,如果一晶片再看到其所產生之 一迴路包時,應停止此迴路包。伴隨此解決之缺點爲·· a) 迴路包(幾乎總是)需流過其最後晶片,以回至其原始晶片 ’及b )需要(長)序列之ID及原始晶片ID之額外位元場, -132- 1305900 (128) 使此計劃可作用。 迴路包優先
最好有公平簡單之方法,以確保正常處理、遞送及產 生新迴路包,而不引起任何迴路晶片之迴路鏈上之停頓。 在一實施例中。可由一組一致之警察達成避免停頓,當一 迴路晶片決定現有存在於迴路晶片上之若干迴路包表示要 自迴路晶片之迴路鏈輸出埠送出時,管理不同群之迴路包 型式之相對優先。其次提供一組策略。
第一,視訊像素迴路包總是具有最高優先。其理由簡 單;如果此視訊輸出信號停止,則大部份影像顯示裝置失 效。在最後繪圖資料讀回至紋理記憶器或主電腦之特殊情 形,此優先可低於一些其他者。注意如果該資料讀回至主 電腦,使得可送出經過不同之主介面而至一即時或虛擬即 時實體影像顯示裝置(一不同之圖形硬體加速器,一壓縮 及網路卡等),則此可能並非足夠之理由來降低優先。 第二,繪圖像素迴路包具有第二最高優先。這是有利 的,因爲原始圖形迴路包可產生大量之繪圖像素迴路包( 最壞之情形爲,一單個三角形原始最終可充塡整個框緩衝 器,所以可產生高至2百萬繪圖像素迴路包)。如繪圖像素 迴路包在某處不能暫時停止處理任何新原始圖形迴路包’ 則會發生停頓。注意在理論上,圖形狀態(改變)迴路包本 身並不引起產生額外迴路包,所以它們總是不需提供優先 給繪圖像素迴路包(及視訊像素迺路包)。然而’圖形狀態 5 ) 1305900 (129) 迴路包普通由原始圖形迴路包密切跟隨,故事項需相當快 速停止。於是,僅使繪圖像素迴路包總是具有較之圖形命 令迴路包爲高之優先,較爲簡單且通常並非最佳。 在理論上,一特定迴路繪圖晶片可由繪圖像素迴路包 過負載。如沒有檢查,此會導致繪圖像素迴路包失落,其 不能通過繪圖像素迴路包之交通擁擠。迴路繪圖晶片在理 論上可發送一輸入緩衝器狀態至全環,如同它們對圖形命 令迴路包所作者,使得所有其他迴路繪圖晶片具有所有其 他迴路繪圖晶片之輸入緩衝器之一(保守,稍過時之)模型 。此可能最好由加進繪圖像素輸入FIFO緩衝狀態資訊於 定期產生之FIFO狀態更新迴路包中達成。但不清楚是否 需要可消耗該環上之額外頻帶寬之機構。如果迴路鏈握手 協定表示接收迴路晶片準備接收具有若干不同組之迴路包 型式之一之份子之型式之迴路包,則可達成一較少頻帶寬 緊張機構。如此,具有較高優先迴路包型式之迴路包可通 過,同時具有較低優先迴路包型式之迴路包(暫時)不通過 〇 如果採取此分級迴路包類機構,用於除錯及楔入復置 (例如,當狀態機器由於某理由而卡住時)’則使一些特殊 狀態命令迴路包具有優先在所支援之一般迴路包優先類以 上及中間頗爲有用。 迴路包FIF 0狀態回饋 大部份型式之迴路包爲火急及健忘:一旦迴路包離開 -134- 1305900 (130) 產生此之迴路晶片時,迴路晶片可忘記該迴路包。視訊像 素迴路包及繪圖像素迴路包歸於此類。但圖形命令迴路包 需由迴路介面晶片細心平衡裝載於多個迴路繪圖晶片上。 此意爲迴路介面晶片需對每一迴路繪圖晶片內之各種晶片 上輸入FIFO緩衝器如何充塡有此能見度。爲完全避免除 了環中實際相鄰之迴路晶片外之任何接線,FIFO狀態迴 路包應由迴路繪圖晶片在不同時刻被送回至原發之迴路介 面晶片。 FIFO狀態迴路包並非作爲接收圖形命令迴路包之迴 路繪圖晶片之直接反應發送。而是,僅在保守型之迴路介 面晶片(自迴路繪圖晶片之觀點)預期迴路繪圖晶片之輸入 FIFO緩衝器之一將溢流時,它們將由迴路繪圖晶片產生 。典型之工作如下:
首先,迴路介面晶片最後確實知道(在某時間點)自由 輸入FIFO空間之量爲由迴路繪圖晶片所發送之最後FIFO 狀態迴路包所含之量。 自此量,接著減去自FIFO狀態迴路包發送後所接收 之任何圖形命令迴路包所佔用之空間量。然後減去已通過 該環(但未由迴路繪圖晶片接收)’或在可能產生之FIFO 狀態迴路包可到達迴路介面晶片之前’可由迴路介面晶片 發送至該環之圖形命令迴路包之壞情形量所佔用之額外空 間量。 如果此量太接近零(實際臨限應爲可程式的)’但輸入 FIFO自由空間之實際量較之保守之預期相當大時,則迴 -135- 1305900 (131) 路繪圖晶片應產生具有目前更正確之自由空間量之FIFO 狀態迴路包。 (注意應有一些滞後’不應太常發送新FIFO狀態迴路 包,如果它們並不改變情形很多。) 此處之情形爲’迴路介面晶片具有一(延遲之)”壞情 形11模型,即在每一迴路繪圖晶片(其發送圖形命令迴路包 至此)中之自由輸入FIF0緩衝儲存器甚少;餘留之自由儲 存量在FIFO狀態迴路包自個別迴路繪圖晶片(長途)回來 時更新。FIFO狀態迴路包可包含最後圖形命令進入特定 迴路繪圖晶片之FIFO緩衝器中之(迴路繪圖晶片特定之) 序號,作爲相對時間標截(其他方法亦可)。該模型是保守 的,因爲其假定剛在來自迴路繪圖晶片之最後報告後,再 無圖形命令迴路包漏出迴路繪圖輸入緩衝器。(此爲通常 ,但並非總是由函蓋一大面積,所以費用長時間來完成之 一幾何原始光柵化所引起)°故在保守上’迴路繪圖晶片 之輸入緩衝器中之額外"自由"空間爲其在最後FIFO狀態 迴路包中所報告者,減去自導致FIF0狀態報造回者後由 迴路介面晶片發送(至迴路繪圖晶片)之所有圖形命令迴路 包所佔用之總空間。如此’可防止發生迴路繪圖晶片上輸 入FIF0緩衝器溢流(及隨帶干擾繪製之影像)。迴路介面 晶片使用此預測之壞情形° 迴路繪圖晶片圖形命令輸入FIF0緩衝器自由空間決 定次單投圖形命令應送至何迴路繪圖晶片(僅選擇具有留 下充分最小空間,以接收整個命令者)°在多投迴路包’ -136- 1305900 (132) 所有目標迴路繪圖晶片需具有充分之輸入FIFO緩衝空間 ,以接收整個多投圖形命令迴路包’或迴路介面晶片僅等 待且不發送資料。(更複雜之演算法可發送命令至僅具有 供此用之空間之副組之迴路繪圖晶片’保持追縱尙未接收 該命令之迴路繪圖晶片,保存及當排除之迴路繪圖晶片具 有空間來接收該命令時,再發送該命令。此一複雜演算法 之優點爲許多圖形命令常取消其在先者’省除需要發送於 所有迴路介面晶片中(及處理)。最後’較近之迴路繪圖晶 片FIFO狀態迴路包存活,空出足夠之空間可再傳輸圖形 命令迴路包。 此迴路包傳輸"擋住”演算法具有優點,即不直接假設 該環中之晶片數。的確’即使迴路繪圖晶片內之圖形命令 輸入FIFO緩衝器大小在將來晶片改版中可改變,只要 FIFO狀態迴路包可代表較之較早晶片中所提供爲大之可 用空間即可。 迴路包傳輸”擋住"演算法亦不偏愛在該環上任一特定 位置處之迴路繪圖晶片’因爲FIFO狀態迴路包沿該環移 行於其餘徑路上,以回至迴路介面晶片。考慮在該迴路介 面晶片正次(下游)處之迴路繪圖晶片對遠離(例如剛連接 於該環介面晶片之上游)處之迴路繪圖晶片。接近下游之 迴路繪圖晶片具有較之剛在上游之迴路繪圖晶片爲少之圖 形命令迴路包在移行中,但具有較多(及較舊)之FIFO狀 態迴路包現循環於該環上。所以,環位置之相對優點對消 ,且可使用一簡單之負載平衡演算法。在所有均具有充分 -137-
I305S 之空間來接收次一單投原始之迴路繪圖晶片中選擇,一簡 單之輪流演算法保持事項公平。(此種輪流法爲無充分(預 期)輸入緩衝器空間之任何迴路繪圖晶片自接收次一單投 原始之考慮中剔除)。 然而,該迴路包傳輸"擋住”演算法確有些間接依賴該 環中之晶片數。如果迴路繪圖晶片上之圖形命令輸入緩衝 器之總儲存大小接近或小於環繞該環(之長度)移行之所有 輸送緩衝器之總大小,則通常產生人爲之擋住(雖然該系 統仍作用)。 一般問題:如何"接線入”爲系統限制? 已提出迴路架構,爲此,在一實施例,同樣二建築塊 迴路晶片可建造許多不同大小之環,並適當作用:一可高 度伸縮之架構。 當然的確已避免會嚴重限制過去3d圖形硬體加速器 之伸縮之大部份架構限制。無需系統接線跨越於電源及地 以外(即使時脈可自主迴路介面晶片伸出)。連接迴路鏈輸 出埠輸出銷至迴路鏈輸入埠輸入銷之所有接線可爲自該環 之一晶片至次一晶片之點至點連接。 然而,在可於一單個環內串連一起之若干迴路繪圖晶 片上有真正之第二上限。如同可見於目的地機構討論中’ 幾乎任何計劃在可定址性上具有一固有上限。如果使用計 數場,則此限制並無多大實際關係’但如果選擇位元設定 場,則有關係。且在較大之環中有加長延遲之問題’其最 後可淹沒迴路晶片之內部F1F 0緩衝器(且代表一設計限度 -138- 1305900 (134) ’雖然爲軟性者)。在某限度外,額外迴路繪圖晶片之優 點可主要用於一系統中,用於增加樣品密度及/或可程式 屏蔽能力。當然,在任何實體產品例示中,對可裝配於特 定底盤中之最大體積之環有冷卻、電力及空間限度。且最 後’雖然可伸縮性及本身爲一好事,但此對增加彈性之晶 片’總是會增加設計測試之成本。迴路架構之可測試性影 響大部份限定於迴路介面晶片,但額外特色仍隨帶增加成 本° 雖然吾人已提及最大値,但當使用若干迴路繪圖晶片 於臨限以下、時,在支援功能系統上亦有限制(例如,最小 視訊輸出信號視訊格式像素率)。 考慮所有這些問題,雖然設計具有目前及將來彈性之 架構’但在一(較後)之設計點,限制之建立將導致對伸縮 行動建立特定固定之限制。 這些限制應不要太早實施,但例如,在此時間點,一 組伸縮假設瞄準於一環中1 6迴路繪圖晶片之掃描點之架構 設計’並支援一單個環中最多64個,以提供支援擴大系統 之充分餘地。通過某一點,額外繪圖能力由使用多個平行 環較佳支援,各分別連接至主電腦,或如以後所見,連接 至一較大系統之多個環,想像此爲一疊環連接至一或更多 主電腦。 視訊輸出 迴路架構之一優點爲可容易支援遠較前出現於商業產 -139- I3059S? 品中爲複雜及豐富之視訊輸出處理。此部份敘述可達成此 點之視訊輸出架構。 框緩衝記憶器與視訊之關係 爲簡單起見,讓吾人考慮一簡單之環系統,具有一迴 路介面晶片及1 6迴路繪圖晶片,並假設一樣品密度爲1 6 ° 每一迴路繪圖晶片具有儲存器用以儲存每16分之一像素之 所有1 6樣品,由於有1 6迴路繪圖晶片。再度爲了使事情簡 單,讓吾人假設像素之擁有權指定於一 4x4矩陣中。 圖6顯示在由迴路繪圖晶片#6所擁有之顯示器中之所 有像素,在此,迴路繪圖晶片編號〇 -1 5。連接於迴路繪圖 晶片#6之DRAM記憶器包含特定像素之所有樣品,在本 例中爲每像素1 6樣品。其他迴路繪圖晶片擁有4x4格子內 之其像素。例如’迴路繪圖晶片#5擁有直接至由迴路繪圖 晶片#5所擁有之像素左方之像素。 此與輸出信號有關,如果吾人之防混淆濾波器爲一 1x1匣濾波器,則每一迴路繪圖晶片參與每個四輸出掃描 線之唯一 ’且僅S十算(與送至另一晶片不同)該環繪圖晶片 所參與之每個四掃描線之一上之每個四像素之唯一之像素 値。防混淆濾波操作在提取每一所擁有之像素之所有丨6樣 品(每次僅提取每一影像格式框之每一樣品),將所有樣品 加在一起,然後移動該結果四位元(對每一色/alpha組成 份)。(此移動僅爲匣德波器之所有加權之低廉形態之正規 化:均爲1之16加權爲16’及由—進位算術表示之μ除僅 -140- 1305900 爲向右移動四位元’如精於本藝之人士所熟知)。 現在假設該防混淆濾波器爲稍難一些—4x4相鄰像素之 一函數。現在每一迴路繪圖晶片的確參與視訊輸出信號之 所有掃描線,並有東西加於每一掃描線上之每一輸出像素 中。此對迴路繪圖晶片如何需自框緩衝器中取出樣品有何 意義?每一像素之16樣品現在需要可供使用於過濾16不同 之視訊輸出信號像素。如果吾人不願在一影像框中自框緩 衝器中提取樣品1 6次’在迴路繪圖晶片上需要某種樣品組 成份儲存機構(未顯示)。每視訊格式框自框緩衝器中提取 特定1 6樣品之次數可減少至每視訊格式框四次,如果提取 並儲存一像素之所有樣品用於四連續視訊輸出信號像素上 。換言之’現在像素資料(樣品)在視訊輸出信號之每一掃 描線中僅需被提取一次,總共四次。此仍爲大量之過度頻 帶寬,因爲記憶器交通等於繪圖方之四讀出(或寫入)之一 深度複雜性。如果加上晶片上緩衝器之一掃描線之像素含 量(16樣品)’現在可減少總存取至最低程度:每視訊格式 框每像素一次。注意在吾人實例中,此像素掃描線僅包含 最高解像度視訊信號格式在每掃描線中之像素之四分之一 。(假設1 920爲最大描線寬度(以像素計),此爲16樣品之 480倍)。 圖7提供此討論之一些本文。由淡灰方塊所表示之措 積窗依影像信號格式掃描順序進行通過框緩衝器:左至右 ’螢幕之頂至底。來自屬於迴路繪圖晶片#6之一特定像素 之一組樣品在先用於上左角中之前,僅需提取一次;然後 -141- 1305900 (137) 儲存於晶片上,直至最後使用於圖之右下角中(在此視訊 格式框),再使用。不同中心之視訊像素迴路包各需要不 同之摺積核心係數由個別樣品組成份値產生及倍乘。其他 1 5迴路繪圖晶片均具有相似之摺積窗及樣品提取及儲存需 求,雖然在相互不同之時間點上提取及儲存再使用樣品。 所有16視訊像素迴路包(其4x4摺積窗所需要)包含由 迴路繪圖晶片# 6處理一特定像素。 顯然有其他許多選擇,爲何4x4格子,8x2或2x8格子 又如何?如果爲8或3 2迴路繪圖晶片而非1 6又如何?如果輸 出濾波器需要5x5支援而非4x4如何?這些不同之假設各導 致像素存取及像素儲存器大小之不同取捨,此可由精於以 此處之學科爲基礎之技藝之人士所計及。這些改變之任一 視爲在本發明之精神及範圍內。 此討論函蓋框緩衝器存取,但防混淆濾波器又如何? 先讓吾人考慮如何知道一特定像素中之樣品之副像素位置 〇 在此’吾人假設樣品在像素內之位置分佈(副像素樣 品位置)爲由硬體樣品位址產生器所產生之非局部重複形 態。此功能可包含一隨機數函數,以現在像素位置爲根源 ’故像素位置總是產生相同之部份隨機副像素偏位。可使 用該偏位之一方法爲作爲下方規則性格子(矩形、六角形 等)之擾亂。 雖然有許多方法可應用防混淆濾波器於各具有1 6樣品 之這些4x4像素行列中,但爲了簡單起見,吾人集中於— -142-
I305S 特定方法。此並不排除其他實施例用以實施防混淆濾波。 當迴路介面晶片沿迴路繪圖晶片之環上發送視訊像素迴路 包請求時,該請求包含欲產生之輸出像素之中心之一副像 素精確xy位址(或自最後微增之位址,以節省位元)。假 設防混淆濾波器爲輻射對稱濾波器,則一特定樣品之濾波 係數可計算如下: 第一,自特定樣品之xy位址減去輸出像素中心之xy 位址。現在平方及然後相加這些xy之不同量度。結果爲 特定樣品距視訊輸出位置之中心,圓形地對稱的防混淆濾 波器之中心之距離之平方。此平方之距離現在可用作一位 址,以查閱(例如一晶片上sram)表,其映射平方距離於濾 波器係數。 現在已發現濾波係數,接著吾人倍乘此値於紅、綠、 藍及alpha(及可能其他)樣品組成份,並加此結果値於紅 、綠、藍等之視訊像素輸出組成份之運算和。濾波係數被 加於此視訊輸出像素之濾波係數之運算和中。一迴路繪圖 晶片計算其所擁有之一像素中之1 6樣品之各別濾波係數, 將所有它們加於單個運算和(每組成份,加上總濾波能量) ,然後傳送此(尙末完成之)輸出視訊像素至該環之次一迴 路繪圖晶片。 增量之整個總和濾波能量最後用以正規化其他濾波組 成份値和,作爲產生輸出之最後像素値之最後步驟之一部 份。但注意該增量總和濾波能量無需明顯與其他增量和濾 波組成份一起明確傳送。總和濾波能量當最後需要時,例 -143- 1305900 (139) 如’在任何處發生最後組成份正規化,可再計算。然而, 此涉及對貢獻於總和濾波組成份之所有樣品再計算所產生 之所有濾波係數。雖然此無需任何(昂貴之)存取框緩衝器 樣品組成份,但計算量大,並佔用與分散於總合若干晶片 (在吾人之例中爲16)上之總合所有其他迴旋電路同樣多之 電路。故雖然其他實施例可節省發送增量總和瀘波能量及 所有其他濾波組成份和値之成本,且代而在一些晶片上重 複濾波係數產生,但許多其他實施例確實發送每一更新之 視訊像素之濾波能量之部份和,計及銷對晶片上計算之經 濟衡量。 當一迴路介面晶片收到一視訊像素時,在由所有(適 當之)迴路繪圖晶片橫過及加進之後,該像素僅需正規化 及另外少數步驟,然後最後產生視訊輸出信號。爲執行此 ,迴路介面晶片先取出濾波能量和之倒數,然後依次倍乘 此値於每一像素組成份(紅、綠、藍等),以產生最後摺積 値。大部份實施例將加入一些額外處理,然後組成份離開 迴路介面晶片之視訊輸出信號銷,在一些實施例中,此包 含至少一可選擇之變換像素爲非線性gamma空間(一簡單 之表査閱)。 依上述方法執行摺積之一牽涉爲所有(摺積之)像素組 成份之非正規化之部份和値通過迴路鏈銷自一迴路繪圖晶 片至另一迴路繪圖晶片。由於可貢獻於最後和樣品數量大 ,及濾波係數之數値精確度高’故部份和需要遠較個別樣 品組成份爲多之精確位元。位元數爲可在濾波器內之樣品 -144- 1305900 (140) 之最大數之l〇g2,加上所產生之係數之位元數(動態範圍) 。例如’在具有樣品密度爲1 6及每組成份具有1 0位元之 4x4濾波器,可貢獻最大約4*4* 1 6 = 25 6樣品,表示8位元大 小’及加進此1 6位元濾波係數,每視訊輸出像素組成份總 共約24位元自一晶片通過至另一晶片。在在此背景,此仍 較繪圖像素迴路包在深度複雜性6上繪圖所需之銷頻帶寬 之一半少,故應可支援。 基於此背景,吾人可簡單敘述在本發明之其實施例中 應作何修改’以支援額外特徵。在以上敘述中,樣品之所 有組成份具有爲其所計算之一單個濾波係數値。在許多情 形中’此已足夠。但如果吾人欲在副像素層改正顯示視訊 之實體影像系統(數位微鏡顯示器,透鏡,螢幕等)內之色 像差’則吾人需能指定每一r g b組成份之一不同(副像素 精確之)視訊像素中心。而且,此需要濾波能量之三,而 非一總和自一晶片通過至另一晶片。(在此強調三,如同 能改正alpha波道失真,通常非此種投影系統應用所需要 )。當然,使用三個以上光譜色組成份之其他實施例需要 三個以上之濾波部份和。此幾乎使需通過晶片之每一輸出 視訊像素迴路包之位元數加倍,並使計算濾波器係數之內 部電路上之計算需求增加三倍。減少晶粒面積對每一 rgb 視訊輸出像素組成份之各別失真能力之影響之一可能方法 爲利用具有多餘迴路繪圖晶片之系統之多餘計算能力,如 同可在每環具有32或64迴路繪圖晶片之高端系統中所發生 者。迴路繪圖晶片現在可能可花費三倍長時間來計算一特 -145- 1305900 (141) 定之輸出視訊像素迴路包,且仍支援高視訊輸出信號視訊 格式像素率。可能有許多其他相似之取捨。 另一牽涉支援大於4x4之防混淆濾波器。例如,即使 中心不在X及y之像素邊界上之4x4濾波器通需要存取5x5 像素’以適當地執行濾波。此非整數對齊容易發生於視訊 再計量及失真改正模式。 至此已討論每一環之單個視訊出信號之產生。另一複 雜爲由一環如何支援二視訊輸出信號,即使假設視訊格式 像素率之和不超過單個波道最大視訊格式像素率?框緩衝 器如何映射?視訊產生現在是否分開及平行發生於二半環 上,或者是否混合一起?如一般情形,此並非單一選擇: 有許多不同之方法來作此工作,需衡量整個系統架構自變 數,以在選擇中作決定。這些自變數爲架構及系統上之限 制,且爲精於此文件所述之技藝之人士所明瞭。 環路鏈所需之頻帶寬 文件之此部份獲得迴路鏈之實施例中在不同繪圖工作 上所用之一些實例頻帶寬。這些頻帶寬在此僅以例子提出 ,且不應取作本發明之限制。有三種交通可同時發生: 自一迴路介面晶片至一或更多的迴路繪圖晶片之圖形 命令迴路包; 自一迴路繪圖晶片至一或更多的其他迴路繪圖晶片之 繪圖像素迴路包; 自一迴路介面晶片至一迴路繪圖晶片之視訊像素迴路 -146- 1305900 (142) 包,自一迴路繪圖晶片至另一迴路繪圖晶片之視訊像素迴 路包’及自一迴路繪圖晶片至一迴路介面晶片之視訊像素 迴路包。 注意同時發生之所有三種交通並非例外情形,此爲預 期之通常情形’此爲系統之整個設計應考慮者。 圖形命令迴路包所需之頻帶寬 傳送圖形命令迴路包所需之相對頻帶寬較之其他迴路 包型式可非常巨大。指定單個三角形之圖形命令迴路包可 產生高至2百萬繪圖像素迴路包(全螢幕三角形),但此亦 可能僅產生一單個繪圖像素迴路包,或甚至全不產生。更 多典型負載範圍自產生一個像素至產生100個像素不等, 例如,大部份繪圖操作在一個像素非紋理三角形至1 00個 像素區域紋理三角形之範圍。除了少數極端情形外,由圖 形命令迴路包所佔用之相對頻帶寬量遠少於繪圖像素迴路 包,且亦遠少於視訊像素迴路包。 圖形命令迴路包可由主介面(由主電腦連接)至3d圖形 硬體加速器之頻帶寬限制。迴路鏈之頻帶寬通常遠高於任 一主介面頻帶寬。除非一應用軟體明顯發送欲儲存於3d 圖形硬體加速器內之顯示表’由該環在一特定框上所見之 大部份圖形命令迴路包由主電腦明顯發送經過有限之頻帶 寬之主介面至3d圖形硬體加速器之圖形驅動命令訊息製 造。在此情形中,由於主介面之位元率可能遠低於迴路鏈 之位元率,故可能由迴路介面晶片反應經由迴路介面晶片 -147- 1305900 (143) 之主介面所發送之圖形驅動命令訊息所產生之圖形命令迴 路包之位元率亦可能遠低於迴路鏈之位元率。僅在主電腦 已發送欲儲存於3d圖形硬體加速器上之顯示表之情形, 3d圖形硬體加速器方可能發現圖形命令迴路包環交通需 要在迴路鏈上大量之頻帶寬。 在計量上,大部份次代之主介面可能具有最大可維持 之頻帶寬在每秒一至二千百萬位元組範圍:每秒8至1 6千 百萬位元。與繪圖像素迴路包之總迴路包交通及視訊像素 迴路包之總迴路包交通相較,圖形命令迴路包之總交通對 迴路鏈具有較低之頻帶寬要求。 視訊像素迴路包 繪圖像素迴路包所需之頻帶寬 作爲一實施例之系統的一個例子,所需之像素充塡率 爲每一秒一千百像素,樣品密度爲1 6。在由最少4個1 2位 元組成份値(加一些位址資訊及包標頭)所構成之一繪圖像 素迴路包中,此爲最少50位元,且可能大幾位元。(在一 實施例中,可能需發送一個以上屏蔽之組成份値至一迴路 繪圖晶片,供其執行像素充塡之用。在這些實施例中,充 塡之每像素之位元數可增加至明顯大於50)。 如果所有繪圖像素迴路包需橫過每一迴路鏈,則每秒 一千百萬像素需要每環每秒50千百萬位元之頻帶寬。然而 ,在η迴路繪圖晶片之一環中,僅1/n繪圖像素迴路包在 被消耗之前,需橫過所有η迴路繪圖晶片,僅η-1繪圖像 -148- 1305900 (144) 素迴路包在被消耗等之前,需橫過n-1迴路繪圖晶片,及 最後’ 1 /η繪圖像素迴路包不離開產生此之迴路繪圖晶片 。此序列之漸近値爲1 /2,故需要產生m繪圖像素迴路包 之繪圖率在任一特定迴路鏈上見到僅m/2繪圖像素迴路包 之平均交通。 故在支援吾人千百萬充塡率之迴路鏈上之預期交通較 接近每秒25千百萬位元。這些迴路包仍表示迴路鏈上之單 一最大頻帶寬需求。 視訊像素迴路包所需之頻帶寬 視訊像素迴路包需在與視訊輸出信號視訊格式像素率 相同之速率上處理(如水平返馳時間亦用於發送環內之資 料,則稍低)。故所需之視訊像素迴路包率爲每秒1 3 5百萬 像素至每秒240百萬像素。它們爲支援1 280xl 024@76Hz 至1 92 0x 1 2 0 0@76Hz範圍之視訊信號格式所需之視訊格式 像素率。 視訊像素迴路包之大小取決於每一電路所採取之部份 摺積功能之詳細數値,但四個24位元和爲良好之接近値。 此表示每秒13千百萬位元至23千百萬位元。這些迴路包代 表迴路鏈上之第二大頻帶寬需求。 (如使用色像差色改正,則此等數可增加二倍)。 總迴路鏈迴路包頻帶寬 總計最大數,吾人具有16千百萬位元用於圖形命令迴 -149- 1305900 (145) 路包加25千百萬位元用於繪圖像素迴路包加W千百萬位元 用於視訊像素迴路包,總和爲每秒64千百萬位元。 然而,每秒64千百萬位元低於當吾人自具有32位元資 料匯流排運轉於320MHz之八個平行DRAM製造一局部記 憶副系統時所達成之實際頻帶寬(8 * 3 2 * 3 20M = 82G/sec)小 。事實上,該DRAM頻帶寬數高於此處所述者,因爲亦 有位址及控制匯流排。當然,有一輸入及一輸出迴路鏈在 同晶片上,其具有所有控制銷用於此DRAM局部記憶副 系統。 在一單個晶片內及外支援每秒64千百萬位元之任一銷 I/O技術爲用以實施迴路鏈實體層之一可用侯選者。一此 侯選者爲現有的2.5千百萬位元串列鏈,用於CMOS晶片 之各種高速介面上。假設在銷階層上使用多個每秒2.5千 百萬位元鏈,其使用26此種鏈於任何迴路架構晶片之內及 外迴路鏈二者上。 2.5千百萬位元數係來自2001年裝運之晶片。隨製造 之進步,目標於較後年份生產之產品應能採取更高之數。 非僅在時脈率上’且亦在使用每銷二以上電壓位準上。 實體接線 迴路架構之迴路鏈之一些規則性及獨有點至點接線對 商業迴路系統呈現一些複雜之新選擇。文件之此部份探討 傳統之pc板建造方法及更考慮封裝之選擇。 -150- 1305900 (146) 傳統方法 建造迴路架構之框緩衝卡之傳統方法爲建造一大PC 板,此類似於圖8。爲了簡單起見,僅顯示六個迴路繪圖 晶片。但具有8、16或甚至32至64或更多個迴路繪圖晶片 之板是相似的’雖然具有較多迴路繪圖晶片之實施或且加 一些迴路繪圖晶片於該環之頂及底部。
此設計具有優點,即構製於一單個PC板上,且冷卻 空氣流容易自大部份任何方向進來。然而,整個大而複雜 之PV板非常可能需要更改,以適應個別部份中之大部份 任何改變。 非傳統方法
需建造一單個迴路繪圖晶片及記憶副系統之許多幾干 相同之複製品於一單個大PC板上似乎是可惜的。如僅基 本迴路繪圖晶片及連接之DRAM塊可爲簡單之小PC板本 身,則製造、測試、存庫、除錯、定製等等較簡單。此小 pc板僅具有少數短距離信號,它們需發出或連接至該環 中前後相鄰之板。 此小pc板需用於連接之迴路鏈互接銷均運轉於 1.5GHz或更快。在技術上,所需者爲波導,而非電線。 但在一實施例中’焊接於同軸連接線上應能執行此功能。 圖9顯示此另一實體構造:六個相同小而簡單之迴路 繪圖PC子板均由若干同軸電纜相互連接。在該圖中,形 成迴路鏈連接之該群電纜由一單條黑線表示。實際上,此 1305900 (147) 爲約2 8寬帶同軸電纜。在圖9中,迴路繪圖晶片顯示如吊 於P C子板之邊緣外。此並非機械上可行的。此點在顯示 由於使用高速串列鏈,需連接每一迴路繪圖晶片至該環之 連接數(例如每迴路繪圖晶片二連接)是夠小的,使得舊 PC板及連接製造方法可由其技術改進。 但現在吾人具有這些分開之PV板,無需它們被放置 於一單個平面上。圖1 0顯示可能之情形,當這些卡翻轉時 ’每個成反向,使得相鄰板"頂至頂"連接或”底至底”連接 。圖10顯示16迴路繪圖晶片,2迴路介面晶片印刷電路子 板在邊緣上之配置。在此,點至點線自一迴路繪圖晶片直 接連接至次一迴路繪圖晶片。此由輸入及輸出迴路鏈介面 之銷成相互鏡影像而達成。在此,顯示具有一全16迴路繪 圖晶片,加上2迴路介面晶片之設計(連接之子板總數爲偶 數,鏡電線對齊)。空氣流現在可水平橫過該圖,例如自 左至右或自右至左。 底部線僅粗略繪出,但爲最長之連接。此可被固定, 如次圖,圖11所見,此顯示一 16迴路繪圖晶片,2迴路介 面晶片印刷電路子板在邊緣V配置上。 圖12使用相同之圖11之卡及鏡,但現在安排各卡成圓 开夕,以顯不1_ 6迴路繪圖晶片’ 2迴路介面晶片印刷電路子 板在邊緣上成輻射配置。此配置具有與圖11相同之空氣流 優點,但底部之線長度有利地減小,限制最大線長度。自 連接線長度及均勻性之觀點言之,此甚至爲更佳之設計。 此設計具有甚至更短之線長度,但冷氣可能需吹通過該環 -152- 1305900 (148) ,且需要最大冷卻之迴路晶片均置於有限之空間中。 銷在晶片封裝上之位置之實體限制爲一重要設計考慮 。由銷在頂-頂,底-底子板組態之封裝件之二邊上達成最 佳線長度。(此亦使封裝件更易支援大量之信號銷)。圖 13 (a)及13(b)顯示一簡化之封裝件自二面輸入及輸出連接 。迴路鏈輸入埠輸入銷標示爲”i〇〇"等成2d行列;迴路鏈 輸出埠輸出銷標示爲00"等成2d行列。爲了圖解簡單, 各顯示3 5銷。實際數目較大,計及每一信號爲成對平衡, 且需要附近之電力及接地銷。 在倒裝背對背迴路鏈連接之晶片封裝件之二面上之墊位置 注意所有輸出銷呈現於與輸入銷成鏡影之位置。於是 ,當晶片面反轉時,自一晶片至另一晶片之接線成爲在空 間中一組非常直之線。的確,外部接線長度可保持於與自 矽晶片之表面上之輸入/輸出驅動墊至氣密密封之1C封裝 件上之外部(可焊接)銷之內部線相差不太大之距離。 而且,雖然此爲迴路架構之第三性質,但實際世界封 裝限制決定是否此爲生產產品値得採取之優點。一些傳輸 線建立需要明顯之終接電阻器,且此可構製於晶片外’所 以其可在外部,或可建造於封裝中。 多環支援 迄此之實例爲一單個簡單之環。精於本藝之人士可設 計具有8至64或更多迴路繪圖晶片之環之系統架構’而不 -153- 1305900 (149) 脫離本發明之精神。但支援一或更多的副環之環又如何7 此節說明多個簡單環可如何使用主介面連接一起’例如’ 主介面無需連接至主電腦,它們亦可用以連接至其他簡胃 環。文件之接著部份將討論使用非額外局部高速互接’ W 執行更多相同功能。此節及接著部份之間有許多相似。其 不同多在程度上:此節敘述連接簡單之環,使用具有遠_ 迴路鏈爲小之頻帶寬之資料徑路;接著部份敘述連接簡單 之環,使用具有與迴路鏈相同或接近之頻帶寬之資料徑% 。的確,在一實施例中,額外之資料徑路僅爲額外之迴路 鏈。先讓吾人改變吾人之圖形符號爲稍微抽象。 單環槪要圖 圖14以3d透視顯示一環’具有一迴路介面晶片II及7 迴路繪圖晶片D 1 -7。連接於迴路繪圖晶片之DRAM未顯 示。 圖15顯示雙環系統,具有第二環經由第一環中之第二 迴路介面晶片被連接。 雙環槪要圖 6及7迴路繪圖晶片之呈現於這些環中僅爲易於圖解。 迴路繪圖晶片之數目通常爲2之乘方,而不管迴路介面晶 片之數目。 在圖15中,一第二迴路介面晶片805加於第一環上, 以連接第二環上之迴路介面晶片810。由於主介面在定義 -154- 1305900 (150) 上爲一全功能雙向系統間匯流排,故上爲可能的。重點爲 主電腦僅直接連接於第一環。 第二環可爲邏輯第二3d圖形硬體加速器,具有其自 已之視訊輸出介面,及經由二迴路介面晶片之環至環鏈僅 用以避免具有二主電腦介面。此交換爲二環系統需共用一 單鏈上往來於主電腦之頻帶寬。在立體支援之特殊情形中 ,一環計算左眼景觀’及另一環計算右眼景觀,應用軟體 及圖形驅動器可確保自主介面發送之大部份圖形驅動命令 訊息對繪製左眼景觀及繪製右眼景觀二者相同。此意爲有 少量不同之圖形驅動命令訊息給二環之僅一或另一,所以 大量之圖驅動命令訊息僅送給處理它們之二環(此在實效 上爲圖形驅動命令訊息之多投,而非較普通之單投)。於 是’可由二平行局部環執行二平行繪圖,而不佔取較之單 繪圖遠多之主介面頻帶寬。 另一選擇爲第二環是第一環之副處理器。其可以是計 算陰影圖、反射圖等,只要在最後繪製之影像繪製之前, 這些繪圖計算之特殊景觀矩陣能知道一(部份)框即可。 加一額外迴路介面晶片於一環即可連接至另一環內之 另一迴路介面晶片。在電腦科學連接術語上,可建造之該 類結構爲隨意連接圖(亦稱網路),而非僅爲一環或一指向 之非循環圖。且由於迴路介面晶片需要時可連接至主電腦 ’故無需爲該圖之單"根11之相等者。於是,該發明之架構 及封裝較之可構製者施加甚少限制於該類結構上。 -155- 1305900 (151) 分隔爲匣 現討論在簡單環或環之更複雜集合之匣階層之封裝。 雖然複雜之多環結構可封裝於一底盤內,但有更簡單之方 法來支援隨意圖。暫時假設一簡單環,但具有多個迴路介 面晶片依標準封裝成2U架座匣,具有內部電源:一 2U圖 板。 往來圖板2U匣內之迴路介面晶片之外部1/0之所有 信號需帶至該匣背部上之標準連接器。某些此種標準連接 器爲視訊輸出介面。其它連接器爲標準主介面連接器。在 該匣背部中之一或更多的主介面連接器可具有外部電纜插 入於連接器中,電纜之另一端連接至一或更多的主電腦。 但匣背部中之一或更多的主介面連接器亦可具有外部電纜 插入於連接器’而電纜之另一端不連接至另一主電腦,而 是連接至在同架或附近架中之另一不同之圖板匣之背部之 主介面連接器。於是,僅使用一單個標準產品,諸如具有 16迴路繪圖晶片及3迴路介面晶片之2U圖板,可建造環圖 之許多不同佈局,僅使用電纜連接。(及當然一些組態軟 體)。這些組態可爲使用者可定製者,而非工廠定製者。 捷徑 迄此大部份詳細討論集中於繪圖計算可如何分配於連 接成簡單環之若干迴路晶片上,例如,每一迴路晶片僅連 接至在反時針方向順序上之其正前之迴路晶片,及在反時 針方向順序上之其正後之迴路晶片。此部份集中於前面提 -156- 1305900 (152) 出之額外非局部連接徑路可如何實際用以改善繪圖程序之 一些方面之性能。 最佳迴路包流程 簡單之環連接對可構成資料流程序之計算程序,例如 依次通過所有計算節點(晶片)之計算資料流良好平衡。迴 路架構視訊像素迴路包歸於此類’且可佔一簡單環上之所 有環交通之三分之一以上。迴路架構圖形狀態迴路包亦大 部份歸於此類,但通常並不佔環交通之重大量。 迴路架構原始圖形及繪圖像素迴路包並非最佳用於資 料流格式,它們在連接計劃中消耗較少之頻帶寬,在此, 點至點傳輸較爲最佳化。此二種迴路包可佔用一簡單環上 之所有環交通之一半及三分之二間,當環中之迴路繪圖晶 片較多時,佔較高百分率。於是,加非局部連接性於一簡 單環對此類迴路包有最大幫助。 捷徑 各種實施例以若干不同方法加入非局部連接性至一簡 單環。一實施例可加入非局部連接性至所有迴路繪圖晶片 。雖然此方法是最直接,但增加迴路架構晶片之額外銷, 其至少造成負擔,且增加較通常所需爲多之額外連接性。 最”純正"之實施例爲製造一新迴路架構晶片,一 ’•橫 越"晶片,其具有普通迴路鏈輸入埠及迴路鏈輸出埠迴路 鏈’但其亦具有額外迴路鏈介面銷超出通常的兩個。此額 -157- 1305900 (153) 外迴路鏈然後可用以增加所需之非局部連接性。此方法之 主要限制爲其加入另一新定製晶片設計於建造迴路架構之 商業實施所需之工程工作上,以交換一系統中之環交通之 可支援量之一些增加。 一妥協方法爲一實施例,其代而加入所需之額外非局 部連接性於標準迴路介面晶片設計。雖然迴路介面晶片已 支援大量之介面銷,但並非如同迴路繪圖晶片被負載。一 特定系統組態包含遠較迴路繪圖晶片爲少之迴路介面晶片 ,故迴路介面晶片成本之增加遠低於整個成本衝擊。而且 ,在一些實施例中,迴路介面晶片設計上支援主介面之許 多現有的銷可再用作非局部連接性介面之實施中之銷。介 面上之一簡要解釋詳細說明這些非局部介面。所有這些非 局部介面在某階層需可與迴路鏈介面相容,因爲同型式之 迴路包需橫過二介面。但視環境而定,由於非局部介面間 之大部份所需之連接爲至其他非局部介面,故在某些實施 例中’非局部介面無需具有與迴路鏈介面相同之資料寬度 及銷介面。所以爲了避免不必要限制非局部介面與迴路鏈 介面相同’並不稱它們爲迴路鏈介面,即使其爲此一實施 例。代而稱其等爲捷徑’一名稱接近其在迴路系統中之功 增加捷徑之例,包括不同之捷徑連接,及繪製相同連接之 不同方法 圖16(a)-l6(k)顯示連接捷徑之若干不同方式,以及在 -158- 1305900 (154) 某些情形中’顯示繪製相同捷徑連接之二不同 16(a)-16(k)之所有例子顯示包含16迴路繪圖晶 線圓1 6 0 2表示),及1、2或4迴路介面晶片(由空 表示)。迴路介面晶片爲無任何捷徑支援(例如, 標準迴路鏈輸入埠及迴路鏈輸出埠者)或爲一新 其中,每一迴路介面晶片具有一額外捷徑輸入及 在某些實施例中,可允許捷徑與標準迴路鏈介面 而,在一實施例中,它們僅爲連接至迴路介面晶 迴路鏈介面(此情形將逐個提出)。在所有情形, 之黑線指示在迴路鏈或捷徑上之資料流方向。 圖16(a)顯示一實例環,具有二迴路介面晶 捷徑。圖16(b)顯示一環,具有一對捷徑,有效 投迴路包採取”捷徑",繞過8迴路繪圖晶片。在 加入之捷徑僅連接至另外捷徑,故所加入之捷徑 無需與迴路鏈介面相同。在圖16(b)中,捷徑呈 片間之迴路鏈連接爲長之線,但其僅爲實例表示 。圖16(c)顯示與圖16(b)相同之連接性,但各晶 位置,以減小所有連接長度。圖16(c)僅顯示一 其中’連接長度可保持很短。實體晶片及印刷電 許多其他組態,如果需要的話,它們仍可達成此 度之目標。精於此處所述技藝之人士將明瞭這些 〇 在圖16(b)中,二迴路介面晶片僅用以加入 。如果加上捷徑需使用迴路鏈介面建造之限制, 方式。圖 ΐ (由斜蔭 心圓1 6 9 2 各僅具有 實施例, .輸出堤。 不同,然 片之額外 具有箭頭 片,但無 使一些單 圖16(b)所 埠之介面 現遠較晶 之人爲者 片在不同 實施例, 路板可有 縮短線長 其他組態 一對捷徑 則可達成 -159- 1305900 (155) 與圖16(b)相似之連接性。圖16(d)顯示一簡單環’具有一 單個迴路介面晶片且無捷徑。圖16(e)顯示與圖16(c)相等 之連接性,但僅使用一個迴路介面晶片。圖16(f)顯示與 圖16(c)相似之一短的連接長度實施例。 在敘述某些額外連接實施例之後,將討論圖形繪製系 統之功能上之量改善。圖16(g)顯示一環具有四個迴路介 面晶片,其具有無需與迴路鏈介面相同之捷徑。在圖 16(g)中,"捷徑”向前跳四個迴路繪圖晶片。圖16(h)所示 之環除了”捷徑”向後跳四迴路繪圖晶片之外,是非常相似 的。當以後討論這些各種實施例之性能時,可看出向後跳 較之向前跳更改善交通流程。圖16(i)爲另一實體配置,其 支援最大縮短之連接長度(與圖16(c)及16(g)之構想相似) 〇 圖16(j)顯示另一實施例,具有與圖16(h)-16(i)相同數 目之晶片(例如,四個迴路介面晶片及捷徑)。此系統之資 料流可較佳地見於圖16(k)之實施例。現在可看出該連接 爲迴路繪圖晶片之一向前及一向後環,能自一方向跳至其 他每四個迴路繪圖晶片。注意在圖16之左及右方之一半迴 路介面晶片爲相同之迴路介面晶片。 虛線雙端箭頭意在加強。圖1 6亦可繪成八迴路繪圖晶 片之一外反時針方向環及八迴路繪圖晶片之一內順時針方 向環,具有四個迴路介面晶片在3,6,9,及12時鐘位置 上,如顯示於圖17中。此實施例支援甚至較圖6所示之其 他爲高之有效頻帶寬。此環結構,及其較大之普通化稱爲 -160- 1305900 (156) 雙簡單環。 圖17重繪圖16(i)爲雙簡單環。 所有這些實例組態顯示含有1 6迴路繪圖晶片之系統。 這些實例組態可歸納爲含有其他或較多迴路繪圖晶片之實 施例,某些保持相同數量之迴路介面晶片,而其他亦增加 額外之迴路介面晶片,在與所加之迴路繪圖晶片相同部份 ’或不同部份中。這些實施例之通類歸納於圖17。分配η 迴路繪圖晶片作爲η/2迴路繪圖晶片之外反時針方向環, 及n/2迴路繪圖晶片爲內順時針方向環。插入一迴路介面 晶片用以橋接於每m迴路繪圖晶片之內及外環之間,在 此,m爲在1及n/2間之一正整數,且n/2爲m之整倍數。 較不規則之實施例可放鬆對m之此限制。 單對捷徑之性能 考慮圖16(b)或16(e)之連接性。局部環加入有二單向 鏈,此中分環連接。現在於某些情形中,單投迴路包可利 用該捷徑,以避免橫過其來源及目的地環晶片間之該環上 所有迴路晶片之迴路鏈。 假設在統計上平衡之環交通,例如單投,在此,所有 成對之來源/目的地同等地可能發生,下段討論增加此二 捷徑於局部環中之影響。該影響爲一些迴路包(需移行通 過八個或更多的迴路繪圖晶片者)需利用此捷徑,以避免 通過八個迴路繪圖晶片。 吾人的正常假設爲每一迴路繪圖晶片發送相等數目之 -161- 1305900 (157) 迴路包至每一其他迴路繪圖晶片’包括自已。在一般情形 中,普通有η個迴路繪圖晶片’而無捷徑,在一迴路繪圖 晶片每秒發送額外每一繪圖像素迴路包時,在該環中之所 有迴路鏈介面上每秒所需之增加頻帶寬上升繪圖像素迴路 包之位元大小乘0.5* (η-1)/η〜=0.5。使用捷徑時,此增加 分數小於〇 . 3 8。 多對捷徑之性能 下段討論對圖1 6所示之其他組態之性能之影響。考慮 雙簡單環(圖1 7及圖1 6 (i)之歸納)。假設每四個迴路繪圖晶 片有一迴路介面晶片(例如,一列中在每一方向上僅有二 迴路繪圖晶片)。表3顯示在該環之所有迴路鏈介面上每秒 所需之增加頻帶寬爲繪圖像素迴路包之位元大小之倍數’ 在大小爲η之簡單環及大小爲η之雙簡單環之情形。 由此表可作若干觀察。第一 ’分數〇·5*(η·1)/η〜=0.5 ,對於小η,其稍小於0.5 (如所示)。第二,對於小η,雙 簡單環並不增益多少。在η=8’在簡單環上之增益僅爲 1.077。這是有意義的,在小環中’捷徑具有有限之增益 。第三,對於較大値之η,增益提高’但提高率在非常大 之η平坦。這是有意義的,因爲此結構中之捷徑較爲局部 性。爲減少非常大値之η之情形中之增加頻帶寬負載,加 入更全局性之捷徑鏈(例如’無更多之雙簡單環)。 最後對具有64迴路繪圖晶片之環,雙簡單環之增益較 之簡單環結構幾爲3倍。雖然每一迴路繪圖晶片對視訊像 -162- 1305900 (158) 素及圖形命令迴路包之頻帶寬需求較不依賴η,爲放大至 較高之像素充塡率,單投繪圖像素迴路包數與η成比例成 長,對較大之η値提供較大之放鬆。 該表僅顯示2之乘方之η値之結果。此可更佳地圖解 趨勢。普通結構亦對在這些2之乘方間之許多數目相當有 效’且類似地改善因素。例如,在η = 48,簡單環係數爲 0.490,雙簡單環係數爲〇· 1 85。 下段討論可如何使用較高性能組態。迄此之討論敘述 迴路晶片之互接之不同實施例之邊際單投包容量頻帶寬成 本。特定連接實施例之選擇影響其他系統限制。使用特定 連接性組態之一方法在於減少在區別迴路鏈介面之另一實 施例中之最大頻帶寬,例如,減少用以實施迴路鏈介面之 銷,及/或使用更保守之資料時脈頻率。 平均、模擬及動態負載平衡 如果迴路鏈介面並非限制因素,則不同之連接性組態 可提高其他之最大繪圖率。在假設迴路包所橫過之徑路長 度(所跳過之迴路繪圖晶片節點數)在足夠快速之平均値上 下波動下提出不同組態間之相對性能,環幾乎絕不在過負 載或欠負載之狀態中,故使用所有頻帶寬。 第一問題爲,此假設如何有效?對任何重要之像素區 之原始圖形,繪圖像素迴路包之統計相當均勻分佈’且僅 病態之情形(如一像素寬’非常高垂直之三角形)方與標稱 上之假設明顯不同。對具有非常小像素面積之原始圖形’ -163- 1305900 (159) 限制因素並非繪圖像素迴路包之移送,而更可能爲最大幾 何原始率,在此情形,該點有討論餘地。 已提及此,此種系統非常可修補至相當簡單,但精確 數値之模擬。於是,由標稱上假設預測如何接近一特定組 態之可能真正性能之問題在建造實際晶片前相當容易証實 〇 最後,爲獲得”捷徑”之最大優點,在某些組態中,如 果用以決定何單投迴路包採取一特定捷徑之演算法並非簡 單之’'最短距離"演算法,而是具有靜態或動態調諧參數之 演算法,則可獲得較佳性能。 靜態調諧參數之一例爲暫存器中所儲存之一旁通百分 率値,在此,該値定義爲實際許可採取捷徑之合格迴路包 數。特定連接性組態之分析可顯示如例如僅80%合格之迴 路包實際使用捷徑,則達成最佳之整個性能。 動態調諧參數之一例爲一旁通百分率値,與以上靜態 調諧參數之例相似,在此,旁通百分率値變化,並爲環交 通流量之動態統計之一函數。此例亦爲一種動態負載平衡 之一形態。 迴路繪圖晶片內部 文件之此部份敘述迴路繪圖晶片之一些內部架構細節 〇 記錄架構之一重要部份爲敘述所想到之可用抽象模型 。由於迴路架構摺疊傳統3 d繪圖架構之幾乎所有傳統匯 -164- 1305900 (160) 流排及互接線於一單個環中;部份未摺疊之模型可用以引 導瞭解新架構。 圖18(a)描繪迴路繪圖晶片內部方塊圖,好像有三分 離之資料輸送環延伸於晶片之間,各具有其自已之處理部 份’及自已之引道埠至所連接之DRAM記憶器,以求清 晰。 圖18(b)依一實施例之內部連接繪製,具有單個實體 迴路鏈輸入埠及迴路鏈輸出埠攜帶所有迴路包存取迴路繪 圖晶片’及一單個dram記憶器控制器仲裁三處理部份 之需要。 光柵化管線 至1 9 9 0年代之終,應用軟體力求更加控制繪圖程序。 在光柵掃描期間中’它們欲具有照射操作移動至每像素基 礎,並希望可更固定控制每頂點及每像素操作(可程式屏 蔽)。一些所要之擴張控制開始出現於最近產品及擴張之 圖形API中。迄此,雖然可提供給每像素可程式階層中之 應用軟體之控制量非常有限。 在未來之世代中,應用軟體假設較多之彈性及強力之 控制可在3 d圖形繪製管線之可程式部份上提供給它們。 迴路架構被設計爲蛙跳即時3 d繪圖技術,其在近期 中可自任何來源獲得。在至少一實施例中,迴路繪圖晶片 3 d光柵化管線採取: 高樣品密度超取樣總是可在不降低繪圖速度上提供。 -165- 1305900 (161) 較高之繪製影像品質經由遠較競爭之架構爲高之樣品密度 之支援提供。 足夠之紋理存取頻帶寬呈現給若干複雜之紋理層,使 得由可程式每像素屏蔽器在不降低繪圖速度上存取及使用 。競爭之架構普通在像素屏蔽器中存取一或至多二層簡單 紋理後開始慢下來。這些每像素屏蔽器支援遠較實境之效 果,且支援多倍於競爭架構之長度及複雜性之屏蔽器,而 不降低繪圖速度。 這些屏蔽器內之色及幾何資料使用較之競爭架構更精 確及複雜之數値格式處理,而不降低繪圖速度。 該迴路繪圖晶片中之三功能塊各實施此管線之一部份 光柵化塊變換進來之頂點資料,並可應用每頂點應用 軟體可程式操作。幾何原始剪貼檢查,且如果需要,完全 剪貼於檢視埠。在光柵化爲像素後,使用者供應之像素屏 蔽器施加於紋理,並照射像素。 取樣充塡塊依幾何形狀之邊緣對屏蔽之像素取樣,並 對RGB AZ値執行有條件樣品更新功能於框緩衝器中。 當產生視訊輸出信號像素値時,摺積塊施加一應用軟 體所供應之圓對稱防混淆濾波器於來自框緩衝器之飛馳中 之樣品値。其支援非常高品質之全螢幕防混淆。 在至少一實施例中,實施此三塊之電路可均包含於迴 路繪圖晶粒內。 -166- 1305900 (162) 伸縮問題 此部份討論涉及支援各種形態之可伸縮性之取捨。 抽象對真實 此處大部份實例中假設一環中有1 6迴路繪圖晶片,使 討論及實例簡單。在有關迴路架構之性能及尺度之一些假 設,置1 6迴路繪圖晶片於每一局部環中可爲成本及性能間 之合理折衷。每一局部環中之16迴路繪圖晶片之適當性之 此一例’在合理之視訊解像度(1 920x 1 200)及樣品密度(每 像素16樣品),16迴路繪圖晶片支援全60Hz視訊格式框率 ’且具有較之相等技術之單個晶片基礎之3d圖形硬體加 速器可能者更複雜之像素屏蔽支援幅度。 以下各節討論如更多之迴路繪圖晶片加於一局部環中 時’額外之優點及額外之結構內支援需求。爲獲得該問題 之感受,考慮在該範圍遠端之例:64迴路繪圖晶片在一局 部環中。此系統正常具有多4x框緩衝儲存器,多4x像素 屏蔽能力’多4x防混淆輸出迴旋能力,但如像素充塡率 受迴路鏈限制,則像素充塡性能不增加。 由分像素充塡功能爲4迴路繪圖晶片之工作(而非大部 份前實例中所假設之一迴路繪圖晶片)。各負責一像素之 四分之一樣品’則吾人增加可用之樣品密度至每像素64樣 品,而在性能中無其他妥協。像素充塡率不改變,但每像 素之充塡樣品數提高4倍,每像素摺積之樣品數’及可在 特定繪圖率上支援之像素屏蔽能力亦如此。 另一種方式’如果樣品密度保持於每像素1 6樣品,但 -167- 1305900 (163) 防混淆濾波器之直徑自4像素增加至8像素,則可支援大4x 面積摺積核心,且吾人仍亦獲得大4x像素屏蔽能力。在 此多4x摺積能力要增加防混淆濾波器之大小(在同樣品密 度上),增加樣品密度4x,但保持防混淆濾波器直徑不變( 在前段中之例)。不使用多4x樣品寫入頻帶寬。大4x直徑 之防混淆濾波器爲普通防混淆用途之小値,但在支援各種 模糊濾波器上可相當有價値。 爲使64迴路繪圖晶片局部環支援增加之樣品密度,吾 人需分開一像素中之樣品於4不同之迴路繪圖晶片之間。 在此情形下,繪圖像素迴路包現多投於迴路繪圖晶片之適 當四分之一,而非單投於一單個特定之迴路繪圖晶片。如 果無交換則不能達成此點;一些非常小之額外電路及模組 需由迴路繪圖晶片支援,它們在支援少於或等於1 6迴路繪 圖晶片之局部環上並不需要。 稍大之一改變爲系統中需要額外緩衝及工作文件。由 於現在每一迴路繪圖晶片可接收來自64而非16迴路繪圖晶 片(在二情形中包括自已)之一之繪圖像素,故需有64而非 僅1 6原始圖形繪製文件。這些文件並非極大;在一實施例 中,三角繪圖文件由3固定點控制頂點及Z之浮點平面等 式,加上或且用以儲存現有的繪圖語意集之幾個位元構成 。在緩衝方面,環系統需準備工作於長4x之潛伏時間內( 用於來回環通訊)。在實施階層,此意使內部隊列之量加 大’其(最佳)大小取決於環繞局部環來回所費之時間量。 對迴路架構之特定實施支援遠較64迴路繪圖晶片爲大 -168- 1305900 (164) 之環之能力,有幅度回報及生長實施負擔。大部份系統應 用軟體極可能發現過去在16至64迴路繪圖晶片之範圍中, 如果使用額外之迴路繪圖晶片來建造較小之多個連接之局 部環’而非增加一單個環之大小,則該應用軟體可具有較 高之整個系統性能。應注意此法則爲刻意之架構決定不支 援一實施例中之一單個環內之像素充塡頻帶寬之伸縮之結 果。 以上討論針對高至64迴路繪圖晶片環之情形。以下各 段討論其數在1 6及64間。如果不分開每一像素之樣品爲四 路’而是分爲二路或三路。其支援每像素32及48之像素樣 品密度。在此中間大小環系統內之其他細節及交換與前所 討論之64迴路繪圖晶片大小局部環情形相似。 以上,當使用片語"分開像素樣品"爲2,3,或4路時 ’無暗示有關如何分開之固定假設。例如,4路分法可分 開64樣品爲該像素之4相等大小之非重疊象限。另一種方 式’該分法可由樣品序號來分,導致每一迴路繪圖晶片接 收在系統邊界內假隨機位置之樣品。此細節在分割與機構 如何互動上產生微小差異,虛擬隨機微擾指定一像素中之 樣品之副像素位置。 迄此討論1 6迴路繪圖晶片以上之伸縮系統。以下討論 反向:低至8或4晶片之伸縮。支援較少數量之迴路繪圖晶 片之實施詳細牽涉取決於此較小系統如何使用。按比例縮 小進行之系統實施最佳化假設爲DRAM中之樣品記憶器 之配置及分批。只要知道執行於像素之樣品上之最小操作 -169- 1305900 (165) 爲讀出-修改·寫入所有樣品,DRAM記憶系統可具有各種 頁及記憶假設建立於其操作中,以所支援之一像素中之" 已知之"最少樣品數爲基礎。(此假設不能太嚴格,因爲同 一記憶副統亦需用於紋理攜取)。如最佳之"單個長循環" 爲4或8 ’而非1 6樣品,則在環中具有4或8迴路繪圖晶片之 系統可更容易支援。 摺積亦爲播放中之一因素。具有少於16迴路繪圖晶片 ,一局部環不能支援同樣複雜之防混淆濾波器。該折衷可 變爲複雜,因爲需要考慮4濾波器之直徑,但具有樣品密 度低於16,及較4濾波器爲低之直徑,但具有仍高至16或 甚至更大(在較低之整個視訊格式像素率,例如XVGA, NTSC)之樣品密度。 再度有少數”硬"限制,但較有以由較低階層之實施細 節施加之限制爲基礎之一列交換。無絕對自變數來設置一 硬下限於迴路繪圖晶片數上。但集合施加於欲完全支援最 少數量之迴路繪圖晶片局部環組態於一特定實施例中之工 程決定上之限制及交換有用。 自實際之觀點言之’一環中具有少於1 6迴路繪圖晶片 之系統有合法之市場。第一及最先’如此處所述,在一些 情形,具有16或更多迴路繪圖晶片之環可(暫時)分開爲多 個環節段,各驅動一較低解像度之實體影像顯示裝置。而 且,有少數價格敏感之市場部份’絕非較不願意花費一些 額外費用於具有8或4迴路繪圖晶片之迴路架構系統:編輯 及廣播NTSC及PAL應用軟體爲此一市場部份。 -170- 1305900 (166) 3 d圖形架構之伸縮限制 一些技術伸縮非常容易。例如,如果一玩具製造者需 要來自電池(此提供電力給新版之玩具設計)之較高電壓及/ 或電力,所有製造者所應做僅爲擴大電池室,以容納8標 準電池而非四電池。玩具製造者無需定製及分配特別大之 電池於世界上。所以,吾人可說現有的(標準)電池設計(A 電池,AA電池等)可高度伸縮。其他技術並不如此好伸縮 。例如,摩托車製造者不能由連接二250cc引擎於一單個 摩托車上來建造較之單個250引擎爲強力之摩托車。而是 ’摩托車製造者需定製設計5 00cc引擎,雖然一些附件可 與較小引擎通用。在歷史上,3d圖形硬體加速器更像摩 托車引擎,而較少像A電池。此部份討論伸縮通用電腦 及3 d圖形硬體加速器二者上之限制,並指出在3 d圖形硬 體加速器之伸縮上之限制在基本上並非如吾人所想像(例 如,現發明之實施例之說明容許3 d圖形硬體加速器像電 池伸縮,而非像摩托車引擎)。 3 d圖形如何與通用計算不同 爲運轉於通用電腦上而寫之大部份電腦程式本質上爲 串列。亦即,它們在假設程式在任何時間點由通用電腦內 之一單個通用處理元件依次執行下編寫。此意爲如果通用 電腦包含非僅一個,而是多個平行之通用處理元件,此電 腦程式不能運轉更快。取一電腦程式並加以修改,使得其 -171- 1305900 (167) 可在含有多個通用處理元件之通用電腦上運轉更快之行動 稱爲平行化。如果該修改由人類執行,則稱此行動爲”手 動平行化"。如果此修改由電腦程式執行,則稱此行動爲" 自動平行化”。 不管由手動或自動,平行化之品質可由修改之程式在 含有η個平行通用處理元件之一通用電腦上運轉之速度, 與原未修改之電腦程式在含有η個平行通用處理元件之同 一通用電腦內之單個通用處理元件上運轉之速度之η倍之 比率來量度。此比率稱爲速度比率。在完美之情形,該速 度比率在某範圍之η値爲1 .0,且在此情形,平行化之品 質稱爲在該特定範圍內全線性"。在更真實(雖然稀少)情 形,該速度比率在一些η値範圍接近1 .0變化,則該平行 化之品質稱爲在該特定範圍內之’’接近線性"。在更普通之 情形,該速度比率低於且不接近1 . 〇,則該平行化之品質 稱爲”次線性”。(在稀少且特別情形,該速度比率大於1 .〇 ,則該平行化之品質稱爲"超線性”)。在特定η値,如該 程式在含有η個通用處理元件之通用電腦上運轉,較之原 電腦程式在同一通用電腦中一單個處理元上運轉,速度比 率乘η値產生電腦程式可能之”速度升”。 迄此電腦程式之自動平行化已証明在實際上對大部份 電腦程式不能達成。如果需要特定程式在含有多個平行通 用處理元件之通用電腦上運轉遠較爲快,則原程式需由人 類(通常在高費用上)有效改寫,具有使修改之程式達成此 需要之明顯目標。 -172- 1305900 (168) 近代積體電路晶片技術已可置相當高性能之通用處理 元於單個較低成本之積體電路晶片上。如此之晶片普通用 作相當低成本之通用電腦內之單個通用處理元件。在成本 並非一目標之較昂貴之通用電腦’需使用較之較低成本通 用電腦上所用之低成本通用處理兀爲快,甚至更昂貴之通 用處理元件。然而,一旦積體電路晶片技術使整較高性能 之通用處理元件可裝配於一較低成本之晶片中時,証明難 以建造甚至"成本並非目標"之單個通用處理元件,僅較之 較低成本者快一點點。所以,近代較高成本之通用電腦由 並非遠較現低成本通用處理元件爲快之η個通用處理元件 構成。這些高成本通用電腦提供顧客較高之價値,使已成 功平行化之電腦程式可較其在較低廉之電腦上運轉更快, 但亦經由其他非處理器特色達成,諸如增加I/O副系統容 量,提高整個可靠性,支援遠較大量之主記憶器,更爲彈 性之組態,及能同時運轉大量非平行化電腦程式。 但許多顧客並不需要這些額外特徵。他們可不需要大 量之I/O或主記憶容量,且可僅需要每次運轉一個程式, 且大部份這些程式可並非各手動平行化,或値得手動平行 化。 所以,自動平行化之失敗爲何以包含僅一單個通用處 理元件之較低廉通用.電腦爲購買來運轉許多電腦程式之較 宜選擇之理由之一;包含一個以上通用處理元件之本質較 昂貴之通用電腦並不較快運轉許多程式。 在含有一或更多通用處理元件之通用電腦上運轉電腦 -173- 1305900 (169) 程式與在3d圖形硬體加速器內實施工業標準之3d圖形繪 製管線(諸如〇 P e n G L)不同。如果有同樣平行化限制存在 ,則會有一自然問題;例如,一旦較高性能標準之3 D圖 形繪製管線可在一單個較低成本之情體電路晶片上實施, 則是否不能由多個晶片建造一標準3 d圖形繪製管線?它們 遠較低成本單個晶片爲快而運轉標準3 d圖形繪製管線。 的確,製造若干新晶片,用以運轉3d電腦遊戲於家 庭費者裝罝上:"家庭遊戲"市場(家庭PC或專用3d遊戲" 操作台")爲標準3d圖形繪製管線之較低成本較高性能之單 個晶片實施。但其餘的類比是否跟隨?答案爲並非如此。 理由爲實施標準3d圖形繪製管線之特殊情形之自動平行 化之相等者現在已由電腦圖形硬體架構成功達成數十載。 理由爲3d圖形硬體可自動切分(正常輸入至標準3d圖 形繪製管線中之)單列圖形資料流爲多件,其被指定給一 群高度平行之圖形處理副元件之次一可用者。此平行化爲 自動的,且爲3 d圖形繪製管線之使用者所不能看見的, 且平行化之品質極使人印象深刻:速度比率0.9 8 (全線性 速度上升之9 8 %以內)。許多年來,圖形硬體架構已發現此 接近線性速度上升可能及不可能之條件。 雖然大部份最近新3 d圖形晶片之大部份設計用於家 庭遊戲市場,其內部架構仍使人印象深刻。這些家庭遊戲 晶片(例如在$40成本範圍)應用於廣大不同之性能提升技 術上’以達成高內部速度,及減少外部銷之使用至最低程 度。但不幸,這些架構由排除幾乎集合晶片一起至較高品 -174- 1305900 (170) 質或性能階層之所有可能方法達成。當平行使用多個j 3 d 圖形晶片時,用以達成幾乎線性自動平行化之大部份可會g 技術已由設計選擇排除,最佳化該晶片用於其目標單個3 d 圖形晶片基礎之家庭遊戲產品上。這些設計選擇包含在晶 片上之銷最少(以達成低成本),選擇內部演算法,暗示假 設其能控制圖形資料操縱之順序(例如,其他晶片無發言 機會),及有關支援代表圖形資料之資料格式之設計選擇 〇 反之’包含3d圖形硬體加速器之中間至高端職業市 場之顧客較愛$ 1 000價格以下之性能及容量。所以,需使 用基本不同之圖形晶片組架構。這些職業市場需要具有家 庭遊戲晶片之1 〇〇倍儲存容量及性能之3d圖形硬體加速器 【圖式簡單說明】 圖1顯示具有基本迴路架構互連之一實施例。 圖2顯不迴路架構之實施例之細節,包含含有迴路繪 圖晶片及多個迴路介面晶片之組態。 圖3顯示自一迴路介面晶片至可能目的地迴路繪圖晶 片之單投圖形命令之最長及最短徑路。 圖4顯示自一迴路繪圖晶片至可能目的地迴路繪圖晶 片之繪圖像素迴路封包之最長及最短徑路。 圖5顯示自負責視訊輸出信號之防混淆及產生之一特 定迴路介面晶片至視訊輸出介面之所有視訊像素迴路封包 -175- 1305900 (171) 之徑路。 圖6顯示由特定迴路繪圖晶片所擁有之16迴路繪圖晶 片系統中之所有像素。 圖7顯示所有16視訊像素迴路封包,其4x4摺積窗需要 包括處理來自圖6之迴路繪圖晶片之一特定像素。 圖8顯示6迴路繪圖晶片配置之一例子。 圖9顯示6迴路繪圖晶片印刷電路子板配置之一例子。 圖1 〇顯示在邊緣配置上之一印刷電路子板之例子。 圖1 1顯示在邊緣"V"配置上之一印刷電路子板之例子 〇 圖1 2顯示在邊緣配置上之一印刷電路子板輻射之例子 〇 圖13(a)及1 3(b)顯示在倒裝背對背迴路鏈連接之晶片 封裝件之各別的底及頂面上之墊之位置° 圖1 4顯示一單環設計之例子。 圖15顯示雙環設計之例子。 圖16(a)至16(k)顯示不同之捷徑連接’及相同連接之 不同繪製方式。 圖17重繪圖16(i)作爲雙簡單環。 圖18(a)顯示三環邏輯模型。 圖18(b)顯示一環實體模型。 [圖號說明] 105 :迴路介面晶片 -176- 1305900 (172) 1 1 〇 :迴路繪圖晶片 1 1 5 :記憶器 125 :迴路鏈介面 1 602 :蔭罈圓 1 604 :空心圓

Claims (1)

1305900 (1) 拾、申請專利範圍 1. 一種繪製圖形之方法,使用包含一光柵化管線階 段、一取樣塡充管線階段及一摺積階段之繪製計算,該階 段是由一環拓撲中互接的多個節點執行,各別節點含有一 光柵化管線階段及/或一取樣塡充管線階段與一摺積階段 ,該方法包含: 指定超取樣緩衝器之交插至多個互接節點之各別局部 記憶器,產生一分配超取樣框緩衝器,該交插專屬於該節 點中之取樣塡充管線階段及/或摺積階段; 接收一順序的圖形驅動命令; 依據此順序的圖形驅動命令,決定圖形命令; 指定圖形命令至多個互接節點的其中之一,該節點含 有光柵化管線階段,此指定與交插之指定無關; 經由該環拓撲,將指出該圖形命令之原始圖形廻路封 包發送至被指定的互接節點; 依據被指定至各別節點之圖形命令,藉著互接節點的 至少其中之一,執行繪製計算的一光柵化管線階段,以產 生對應的繪圖像素廻路封包,其中互連節點的其中之一具 有儲存於局部記憶器中的紋理資訊,該紋理資訊專屬於此 節點中的光柵化管線階段; 經由該環拓撲,藉著執行光柵化的節點之至少其中之 一 ’將ί曰出繪製計具之取樣填充管線階段的命令之繪圖像 素廻路封包’發送至含有取樣塡充管線階段之多個互接節 點的其中之一,其方式與交插之指定有關; -178- 1305900 (2) . 依據各別接收的取樣塡充命令,藉著接收取樣塡$ $ 令之互接節點的其中之一,執行繪製計算之取樣塡充管,線 階段,結果爲被指定至各別節點之超取樣緩衝器交插中的 資訊之更新: 經由該環拓撲,將指出摺積之視訊像素廻路封包,胃 送至含有摺積階段之多個互接節點的其中之一,其方$與 交插之指定有關;
依據超取樣框緩衝器的交插中之資訊,藉著一個或以 上的互接節點,執行繪製計算之摺積階段;且 其中互接節點的至少其中之一被組態,以執行光柵化 管線階段及取樣塡充管線階段。 2. 如申請專利範圍第1項之方法,其中藉著多個互 接節點中之介面晶片,執行接收一順序的圖形驅動命令。
3. 如申請專利範圍第1項之方法,其中藉著多個互 接節點中之介面晶片*執行依據此順序的圖形驅動命令而 決定圖形命令。 4. 如申請專利範圍第1項之方法,其中藉著多個互 接節點中之介面晶片,執行指定圖形命令。 5. 如申請專利範圍第1項之方法,其中藉著多個互 接節點中的至少一圖形晶片,執行繪製計算之光柵化管線 階段。 6. 如申請專利範圍第1項之方法,其中藉著多個互 接節點中的至少一圖形晶片,執行繪製計算之取樣塡充管 線階段。
-179- 1305900 (3) 7.如申請專利範圍第丨項之方法,其中藉著多個互 接節點中的至少一圖形晶片,執行繪製計算之摺積階段。 8 .如申s靑專利範圍第1項之方法,其中多個互接節 點中的至少一圖形晶片被組態,以執行光柵化管線階段、 取樣塡充管線階段及摺積階段。 9 ·如申5R專利範圍第1項之方法,其中指定圖形命 令使用一負載平衡方法。 10. 如申請專利範圍第1項之方法,其中繪製計算之 光柵化管線階段包括一夾住檢查操作。 11. 如申請專利範圍第1項之方法,其中繪製計算之 光柵化管線階段如需要包括一夾住操作。 1 2 ·如申請專利範圍第1項之方法,其中繪製計算之 光柵化管線階段包括頂點屏蔽。 1 3 .如申請專利範圍第1項之方法,其中繪製計算之 光柵化管線階段包括掃描轉換。 14. 如申請專利範圍第1項之方法,其中繪製計箅處 理之光柵化管線階段包括紋理操作。 15. 如申請專利範圍第1項之方法,其中繪製計算之 光柵化管線階段包括位移映射。 16. 如申請專利範圍第1項之方法,其中繪製計算之 光柵化管線階段執行可程式屏蔽。 1 7 .如申請專利範圍第1 6項之方法’其中繪製計算 之光柵化管線階段包括執行頂點上之可程式屏蔽。 1 8 .如申請專利範圍第1 6項之方法’其中繪製計算 -180- (4) 1305900 之光柵化管線階段包括執行像素上之可程式屏蔽。 19. 如申請專利範圍第1 6項之方法,其中繪製計算 之光柵化管線階段包括執行微多角形頂點上之可程式屏蔽 〇 20. 如申請專利範圍第1項之方法,其中各互接節點 可執行一部份的圖形繪製管線。 2 1.如申請專利範圍第1項之方法,其中繪製計算之 光柵化管線階段處理包括高階表面之紋理。 22. 如申請專利範圍第1項之方法,其中繪製計算處 理之光柵化管線階段包括多投紋理及屏蔽原始圖形的結果 之投影至螢幕空間邊界及Z之平面等式至目標互接節點。 23. 如申請專利範圍第1項之方法,其中摺積階段包 括從互接節點以介面晶片啓始資訊收集及處理。 24·如申請專利範圍第1項之方法,其中紋理資訊包 括一紋理圖。 2 5.如申請專利範圍第1項之方法,其中所有互接節 點具有紋理資訊之拷貝。 26_如申請專利範圍第1項之方法,其中一個以上的 互接節點具有相同紋理資訊。 27. 如申請專利範圍第1項之方法,進一步包括發送 一繪製影像至互接節點,使用作爲一紋理。 28. 如申請專利範圍第1項之方法,進一步包括在摺 積階段之後’發送—繪製影像至互接節點,使用作爲一紋 理。 -181 - 1305900 (5) 29. 如申請專利範圍第1項之方法,其中互接節點以 雙環形被連接。 30. 如申請專利範圍第1項之方法,其中互接節點使 用至少一捷徑連接被連接。 31. 如申請專利範圍第1項之方法,其中繪製計算之 光柵化管線階段包括存取紋理圖,其中此存取包括在紋理 存取送回資訊之前,應用紋理濾波技術至紋理圖資料。 32. 如申請專利範圍第3 1項之方法,其中該紋理濾 波技術包括一個或以上的直接存取、最靠近周圍存取、雙 線性濾波、三線性濾波、雙線性MIP映射(階層式映射)、 三線性MIP映射、各向異性瀘波、總和區域濾波、程序 紋理、碰撞映射、位移映射、百分比較接近陰影濾波及深 陰影濾波。 33. 如申請專利範圍第1項之方法,其中繪製管線之 光柵化管線階段包括表面紋理。 34. 如申請專利範圍第33項之方法,其中表面紋理 包括原始表面之紋理。 3 5.如申請專利範圍第34項之方法,其中原始表面 包括一個或以上的多角形、高階原始表面及隱性表面。 3 6.如申請專利範圍第35項之方法,其中高階原始 表面包括一個或以上的圓錐表面、規則表面、迴旋表面、 Bezier補片、B仿樣補片、NURBS (非均勻率b仿樣表面) 補片、副分割表面及具有邊緣與頂點銳度控制之副分割表 面。 -182- 1305900 (6) 3 7 .如申請專利範圍第3 3項之方法,其中紋理包括 應用位移映射。 3 8.如申請專利範圍第1項之方法,其中取樣塡充管 線階段包括條件取樣更新功能。 39. 如申請專利範圍第1項之方法,其中至少一互接 節點局部地執行節點內的取樣塡充管線階段,沒有與節點 外側額外的通訊。 40. 如申請專利範圍第1項之方法,其中繪製計算包 括產生一個或以上的繪製影像、紋理、紋理圖、最終繪製 影像及陰影圖。 41. 如申請專利範圍第1項之方法,其中摺積階段涉 及使從各節點收集之資訊受到防混淆處理。 42. 如申請專利範圍第4 1項之方法,其中該防混淆 處理在各節點被增量地執行。 43. 如申請專利範圍第1項之方法,其中至少一互接 節點局部份執行某部份的摺積於節點內’沒有與節點外側 額外的通訊。 44. 如申請專利範圍第1項之方法’其中對於任意二 節點之間的直接資訊轉移’多個互接節點使用單一實體連 接。 45. 如申請專利範圍第1項之方法’其中多個互接節 點全部連接於點對點、單向及短實體距離之方式。 4 6.如申請專利範圍第1項之方法’進一步包含與節 點外側通訊,包括連接至用於傳輸圖形驅動命令至節點之 -183- (7) 1305900 一個或以上的主電腦系統。 47.如申BPg專利範圍桌1項之方法,進一步包含與節 點外側通訊’包括連接至用於從節點傳輸繪製影像至至少 —主電腦系統之一個或以上的主電腦系統。 48 _如申請專利範圍第1項之方法,進一步包含與節 點外側通訊’包括連接至用於從節點傳輸繪製影像至實體 影像顯示裝置之一個或以上的實體影像顯示裝置。
4 9.如申請專利範圍第1項之方法,進一步包含多個 互接節點與第二多個互接節點之間的通訊。 5 0 _如申請專利範圍第1項之方法,其中至少—節點 是由單處理晶片及至少一記憶器晶片做成。 5 1 ·如申請專利範圍第1項之方法,其中繪製計算之 光柵化階段被一節點局部地執行,沒有與其它節點通訊。
52. —種三維圖形硬體加速器,包含被連接至一環之 多個節點;各節點包含一廻路介面,用於從該環上之鄰近 節點接收封包,且用於將封包傳送至該環上之另一鄰近節 點;各節點進一步包含一繪製階段及/或一取樣塡充階段 與一視訊輸出階段;各繪製階段、取樣塡充階段及/或視 訊輸出階段經由該廻路介面與該環通訊; 包括一繪製階段、一取樣塡充階段及/或一視訊輸出 階段之節點進一步包含一局部記憶器副系統’可經由一共 享的記憶器存取而被階段存取’該局部記憶器副系統儲存 一專屬於繪製階段之紋理儲存,及/或儲存專屬於取樣塡 充階段及視訊輸出階段之超取樣框緩衝器的交插,全部節 -184- (8) 1305900 點之交插集合地產生一分配超取樣框緩衝器: 各繪製階段接收原始圖形廻路封包,執行在原始圖形 廻路封包中被指出的圖形繪製,包括被原始圖形廻路封包 要求存取局部記憶器副系統中之紋理儲存,及產生對應的 繪圖像素廻路封包; 各取樣塡充階段接收繪圖像素廻路封包,且被該繪圖 像素廻路封包指出,執行儲存於局部記憶器副系統中之樣 品及/或像素之條件取樣更新功能; 各視訊輸出階段接收視訊像素廻路封包,且被該視訊 像素廻路封包指出’取還儲存於局部記憶器副系統中之樣 品及/或像素’且使用被取還的樣品及/或像素以修改該視 訊像素廻路封包;且傳送修改後的視訊像素廻路封包; 節點集合地含有被連接至環之足夠數目的繪製階段、 取樣塡充階段及視訊輸出階段,以實施具有此三階段之三 維圖形繪製管線。 53. 如申請專利範圍第52項之三維圖形硬體加速器 ,其中包括繪製階段、取樣塡充階段及視訊輸出階段的至 少其中之一的任意節點包括繪製階段、取樣塡充階段及視 訊輸出階段的三者全部。 54. 如申請專利範圍第52項之三維圖形硬體加速器 ,其中被連接至該環的至少一節點包含一介面單元,該介 面單元包括一主介面,用於連接至一主電腦,該介面單元 從該主電腦接收圖形驅動命令,且將該圖形驅動命令轉換 成廻路封包,用於在該環上傳輸至其它節點。 -185- 1305900 (9) 5 5 ·如申請專利範圍第5 4項之三維圖形硬體加速器 ’其中被連接至該環的全部節點爲兩種型式的其中之一: 介面型式’其包括一介面單元;及 一繪圖型式,其包括繪製階段、取樣塡充階段及視訊 輸出階段的三者全部。 5 6 ·如申請專利範圍第5 4項之三維圖形硬體加速器 ’其中該介面單兀將圖形驅動命令轉換成圖形命令,指定 該圖形命令至繪製階段’且經由該環將該圖形命令傳送至 被指定的繪製階段。 5 7 ·如申請專利範圍第5 6項之三維圖形硬體加速器 ’其中指定該圖形命令之該介面單元使用一負載平衡方法 〇 5 8 ·如申請專利範圍第54項之三維圖形硬體加速器 ’其中該介面單元進一步接收被修改的視訊像素廻路封包 ,且將繪製後的影像傳送至主電腦。 5 9 ·如申請專利範圍第5 4項之三維圖形硬體加速器 ,其中該介面單元進一步將繪製後的影像傳送至不在該環 上的一個或更多的實體影像顯示裝置。 6〇·如申請專利範圍第52項之三維圖形硬體加速器 ’其中該視訊輸出階段進一步執行摺積。 6 1 _如申請專利範圍第60項之三維圖形硬體加速器 ,其中該視訊輸出階段進一步執行防混淆。 62.如申請專利範圍第52項之三維圖形硬體加速器 ,其中該繪製階段包括一夾住檢查操作。 -186- 1305900 (10) 63. 如 ,其中該繪 64. 如 ,其中該繪 6 5 .如 ,其中該繪 6 6 .如 ,其中該繪 67 _如 ,其中該繪 6 8.如 ,其中該繪 69.如 ,其中該繪 70·如 ,其中該繪 71 _如 ,其中該繪 72.如 ,其中該繪 投影至螢幕 7 3.如 ,其中全部 7 4.如 申請專利範圍第52項之三維圖形硬體加速器 製階段如需要包括一夾住操作。 申請專利範圍第52項之三維圖形硬體加速器 製階段包括頂點屏蔽。 申請專利範圍第5 2項之三維圖形硬體加速器 製階段包括掃描轉換。 申請專利範圍第52項之三維圖形硬體加速器 製階段包括頂點上之可程式屏蔽。 申請專利範圍第52項之三維圖形硬體加速器 製階段包括像素上之可程式屏蔽。 申請專利範圍第52項之三維圖形硬體加速器 製階段包括微多角形頂點上之可程式屏蔽。 申請專利範圍第5 2項之三維圖形硬體加速器 製階段包括包含紋理操作之計算處理。 申請專利範圍第52項之三維圖形硬體加速器 製階段包括位移映射。 申請專利範圍第52項之三維圖形硬體加速器 製階段包括可程式屏蔽。 申請專利範圍第52項之三維圖形硬體加速器 製階段包括多投紋理及屏蔽原始圖形的結果之 空間邊界及Z之平面等式至目標互接節點。 申請專利範圍第52項之三維圖形硬體加速器 紋理儲存具有相同的紋理資訊之拷貝。 申請專利範圍第52項之三維圖形硬體加速器
-187- 1305900 (11) ,其中至少一該節點接收一繪製後的影像,以儲存至局部 記憶器副系統之紋理儲存。 75. 如申請專利範圍第52項之三維圖形硬體加速器 ,其中該節點被連接於一雙環。 76. 如申請專利範圍第52項之三維圖形硬體加速器 ,其中至少兩個該節點使用至少一捷徑連接被連接。 77. 如申請專利範圍第52項之三維圖形硬體加速器 ,其中該繪製階段應用一紋理濾波技術至儲存於該局部記 憶器副系統中之紋理圖。 78. 如申請專利範圍第77項之三維圖形硬體加速器 ,其中該紋理濾波技術包括一個或以上的直接存取、最靠 近周圍存取、雙線性濾波、三線性濾波、雙線性MIP映 射、三線性MIP映射、各向異性濾波、總和區域濾波、 程序紋理、碰撞映射、位移映射、百分比較接近陰影濾波 及深陰影濾波。 79. 如申請專利範圍第52項之三維圖形硬體加速器 ,其中該繪製階段包括表面紋理。 80. 如申請專利範圍第79項之三維圖形硬體加速器 ,其中該表面紋理包括原始表面之紋理。 8 1 ·如申請專利範圍第8 0項之三維圖形硬體加速器 ,其中該原始表面包括一個或以上的多角形、高階原始表 面及隱性表面。 82.如申請專利範圍第8 1項之三維圖形硬體加速器 ,其中該高階原始表面包括一個或以上的圓錐表面、規則 -188- 1305900 (12) 表面、迴旋表面、Bezier補片、B仿樣補片、NURBS補 片、副分割表面及具有邊緣與頂點銳度控制之副分割表面 〇 83 :如申請專利範圍第79項之三維圖形硬體加速器 ,其中該紋理包括應用位移映射。 84.如申請專利範圍第52項之三維圖形硬體加速器 ,其中對於該環上的全部資訊轉移,該節點使用單一實體 連接。 85 ·如申請專利範圍第52項之三維圖形硬體加速器 ’其中對於該環上的全部資訊轉移,該節點使用點對點單 向鏈結。 8 6 .如申請專利範圍第5 2項之三維圖形硬體加速器 ’其中至少一節點是由單處理晶片及至少一記憶器晶片做 成。 -189- 1305900 陸、(一)、本案指定代表圖為:第1圖 (二)、本代表圖之元件代表符號簡單說明: 105 :迴路介面晶片 1 1 〇 :迴路繪圖晶片 1 1 5 :記憶器 125 :迴路鏈介面
柒、本案若有化學式時,請揭示最能顯示發明特徵的化學 式: Μ
TW092106511A 2002-03-22 2003-03-24 Method of rendering graphics and 3d graphics hardware accelerator TWI305900B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US36706402P 2002-03-22 2002-03-22

Publications (2)

Publication Number Publication Date
TW200403595A TW200403595A (en) 2004-03-01
TWI305900B true TWI305900B (en) 2009-02-01

Family

ID=28675316

Family Applications (1)

Application Number Title Priority Date Filing Date
TW092106511A TWI305900B (en) 2002-03-22 2003-03-24 Method of rendering graphics and 3d graphics hardware accelerator

Country Status (9)

Country Link
US (6) US20040012600A1 (zh)
EP (1) EP1495412B1 (zh)
JP (1) JP4193990B2 (zh)
KR (1) KR100959470B1 (zh)
CN (1) CN1656465B (zh)
AU (1) AU2003228353A1 (zh)
CA (1) CA2480081C (zh)
TW (1) TWI305900B (zh)
WO (1) WO2003083680A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9953393B2 (en) 2015-11-13 2018-04-24 Industrial Technology Research Institute Analyzing method and analyzing system for graphics process of graphic application program
TWI692759B (zh) * 2019-05-15 2020-05-01 瑞昱半導體股份有限公司 同時存取第一動態隨機存取記憶體與第二動態隨機存取記憶體的方法及相關的記憶體控制器

Families Citing this family (197)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735253B1 (en) 1997-05-16 2004-05-11 The Trustees Of Columbia University In The City Of New York Methods and architecture for indexing and editing compressed video over the world wide web
US7532740B2 (en) * 1998-09-25 2009-05-12 Digimarc Corporation Method and apparatus for embedding auxiliary information within original data
US7143434B1 (en) 1998-11-06 2006-11-28 Seungyup Paek Video description system and method
US6828975B2 (en) * 2001-03-01 2004-12-07 Microsoft Corporation Method and system for managing graphics objects in a graphics display system
AU2002351310A1 (en) 2001-12-06 2003-06-23 The Trustees Of Columbia University In The City Of New York System and method for extracting text captions from video and generating video summaries
TW550538B (en) * 2002-05-07 2003-09-01 Au Optronics Corp Method of driving display device
US6795404B2 (en) 2002-06-18 2004-09-21 Bellsouth Intellectual Property Corporation Device for aggregating, translating, and disseminating communications within a multiple device environment
US7016888B2 (en) 2002-06-18 2006-03-21 Bellsouth Intellectual Property Corporation Learning device interaction rules
US6889207B2 (en) 2002-06-18 2005-05-03 Bellsouth Intellectual Property Corporation Content control in a device environment
JP2004213350A (ja) * 2002-12-27 2004-07-29 Seiko Epson Corp 力覚提示装置及び画像補正方法
US7483031B2 (en) * 2003-04-17 2009-01-27 Nvidia Corporation Method for synchronizing graphics processing units
US7525526B2 (en) * 2003-10-28 2009-04-28 Samsung Electronics Co., Ltd. System and method for performing image reconstruction and subpixel rendering to effect scaling for multi-mode display
US8823718B2 (en) * 2003-11-14 2014-09-02 Microsoft Corporation Systems and methods for downloading algorithmic elements to a coprocessor and corresponding techniques
US20090027383A1 (en) 2003-11-19 2009-01-29 Lucid Information Technology, Ltd. Computing system parallelizing the operation of multiple graphics processing pipelines (GPPLs) and supporting depth-less based image recomposition
US20080074431A1 (en) * 2003-11-19 2008-03-27 Reuven Bakalash Computing system capable of parallelizing the operation of multiple graphics processing units (GPUS) supported on external graphics cards
US8497865B2 (en) 2006-12-31 2013-07-30 Lucid Information Technology, Ltd. Parallel graphics system employing multiple graphics processing pipelines with multiple graphics processing units (GPUS) and supporting an object division mode of parallel graphics processing using programmable pixel or vertex processing resources provided with the GPUS
US20080094403A1 (en) * 2003-11-19 2008-04-24 Reuven Bakalash Computing system capable of parallelizing the operation graphics processing units (GPUs) supported on a CPU/GPU fusion-architecture chip and one or more external graphics cards, employing a software-implemented multi-mode parallel graphics rendering subsystem
US20070291040A1 (en) * 2005-01-25 2007-12-20 Reuven Bakalash Multi-mode parallel graphics rendering system supporting dynamic profiling of graphics-based applications and automatic control of parallel modes of operation
US7961194B2 (en) 2003-11-19 2011-06-14 Lucid Information Technology, Ltd. Method of controlling in real time the switching of modes of parallel operation of a multi-mode parallel graphics processing subsystem embodied within a host computing system
CA2546427A1 (en) * 2003-11-19 2005-06-02 Reuven Bakalash Method and system for multiple 3-d graphic pipeline over a pc bus
US8085273B2 (en) 2003-11-19 2011-12-27 Lucid Information Technology, Ltd Multi-mode parallel graphics rendering system employing real-time automatic scene profiling and mode control
US7050068B1 (en) * 2003-12-02 2006-05-23 Nvidia Corporation Generation of jittered sub-pixel samples using programmable sub-pixel offsets
US7486337B2 (en) * 2003-12-22 2009-02-03 Intel Corporation Controlling the overlay of multiple video signals
US20050270298A1 (en) * 2004-05-14 2005-12-08 Mercury Computer Systems, Inc. Daughter card approach to employing multiple graphics cards within a system
US8687010B1 (en) 2004-05-14 2014-04-01 Nvidia Corporation Arbitrary size texture palettes for use in graphics systems
US7079156B1 (en) * 2004-05-14 2006-07-18 Nvidia Corporation Method and system for implementing multiple high precision and low precision interpolators for a graphics pipeline
US8411105B1 (en) 2004-05-14 2013-04-02 Nvidia Corporation Method and system for computing pixel parameters
US7091982B2 (en) * 2004-05-14 2006-08-15 Nvidia Corporation Low power programmable processor
US7389006B2 (en) * 2004-05-14 2008-06-17 Nvidia Corporation Auto software configurable register address space for low power programmable processor
US8743142B1 (en) 2004-05-14 2014-06-03 Nvidia Corporation Unified data fetch graphics processing system and method
US8736620B2 (en) * 2004-05-14 2014-05-27 Nvidia Corporation Kill bit graphics processing system and method
US20060007234A1 (en) * 2004-05-14 2006-01-12 Hutchins Edward A Coincident graphics pixel scoreboard tracking system and method
US8711155B2 (en) * 2004-05-14 2014-04-29 Nvidia Corporation Early kill removal graphics processing system and method
US8416242B1 (en) 2004-05-14 2013-04-09 Nvidia Corporation Method and system for interpolating level-of-detail in graphics processors
US8860722B2 (en) * 2004-05-14 2014-10-14 Nvidia Corporation Early Z scoreboard tracking system and method
US8736628B1 (en) 2004-05-14 2014-05-27 Nvidia Corporation Single thread graphics processing system and method
US8432394B1 (en) 2004-05-14 2013-04-30 Nvidia Corporation Method and system for implementing clamped z value interpolation in a raster stage of a graphics pipeline
US7551564B2 (en) * 2004-05-28 2009-06-23 Intel Corporation Flow control method and apparatus for single packet arrival on a bidirectional ring interconnect
US8411093B2 (en) 2004-06-25 2013-04-02 Nvidia Corporation Method and system for stand alone graphics independent of computer system form factor
US8446417B2 (en) 2004-06-25 2013-05-21 Nvidia Corporation Discrete graphics system unit for housing a GPU
US8941668B2 (en) 2004-06-25 2015-01-27 Nvidia Corporation Method and system for a scalable discrete graphics system
WO2006004682A2 (en) 2004-06-25 2006-01-12 Nvidia Corporation Discrete graphics system and method
US7958498B1 (en) 2004-07-02 2011-06-07 Nvidia Corporation Methods and systems for processing a geometry shader program developed in a high-level shading language
US8044951B1 (en) * 2004-07-02 2011-10-25 Nvidia Corporation Integer-based functionality in a graphics shading language
US7746347B1 (en) 2004-07-02 2010-06-29 Nvidia Corporation Methods and systems for processing a geometry shader program developed in a high-level shading language
US7750914B2 (en) 2004-08-26 2010-07-06 Intel Corporation Subdividing geometry images in graphics hardware
JP4260734B2 (ja) * 2004-12-21 2009-04-30 株式会社ソニー・コンピュータエンタテインメント 描画処理装置、ラスタライザ、および描画処理方法
JP2008538620A (ja) * 2005-01-25 2008-10-30 ルーシッド インフォメイション テクノロジー リミテッド モノリシック構成のシリコン・チップ上に多数のグラフィックス・コアを用いるグラフィック処理及び表示システム
US20090096798A1 (en) * 2005-01-25 2009-04-16 Reuven Bakalash Graphics Processing and Display System Employing Multiple Graphics Cores on a Silicon Chip of Monolithic Construction
US7673060B2 (en) * 2005-02-01 2010-03-02 Hewlett-Packard Development Company, L.P. Systems and methods for providing reliable multicast messaging in a multi-node graphics system
US20060181540A1 (en) * 2005-02-12 2006-08-17 Patrick Loo Image editor with plug-in capability for editing images in a mobile communication device
WO2006096612A2 (en) 2005-03-04 2006-09-14 The Trustees Of Columbia University In The City Of New York System and method for motion estimation and mode decision for low-complexity h.264 decoder
JP4327175B2 (ja) * 2005-07-12 2009-09-09 株式会社ソニー・コンピュータエンタテインメント マルチグラフィックプロセッサシステム、グラフィックプロセッサおよび描画処理方法
US7436412B2 (en) * 2005-08-24 2008-10-14 Qualcomm Incorporated Graphics engine with efficient interpolation
US8144149B2 (en) * 2005-10-14 2012-03-27 Via Technologies, Inc. System and method for dynamically load balancing multiple shader stages in a shared pool of processing units
US8130175B1 (en) 2007-04-12 2012-03-06 Daktronics, Inc. Pixel interleaving configurations for use in high definition electronic sign displays
US8172097B2 (en) * 2005-11-10 2012-05-08 Daktronics, Inc. LED display module
US7907133B2 (en) * 2006-04-13 2011-03-15 Daktronics, Inc. Pixel interleaving configurations for use in high definition electronic sign displays
AU2006318379B2 (en) * 2005-11-23 2011-06-23 Pixar Methods and apparatus for determining high quality sampling data from low quality sampling data
US8972359B2 (en) * 2005-12-19 2015-03-03 Rockstar Consortium Us Lp Compact floating point delta encoding for complex data
DE102006010610A1 (de) 2006-03-06 2007-09-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Einprägen von Wasserzeichen in ein Modell einer linienartigen oder flächenartigen Form
JP2007264780A (ja) * 2006-03-27 2007-10-11 Seiko Epson Corp データ通信を利用した装置制御
US8059129B2 (en) * 2006-03-29 2011-11-15 Tektronix, Inc. Fast rasterizer
US8766995B2 (en) 2006-04-26 2014-07-01 Qualcomm Incorporated Graphics system with configurable caches
US8884972B2 (en) 2006-05-25 2014-11-11 Qualcomm Incorporated Graphics processor with arithmetic and elementary function units
US8869147B2 (en) * 2006-05-31 2014-10-21 Qualcomm Incorporated Multi-threaded processor with deferred thread output control
US8281281B1 (en) * 2006-06-07 2012-10-02 Pixar Setting level of detail transition points
US8644643B2 (en) * 2006-06-14 2014-02-04 Qualcomm Incorporated Convolution filtering in a graphics processor
US7872657B1 (en) * 2006-06-16 2011-01-18 Nvidia Corporation Memory addressing scheme using partition strides
US8766996B2 (en) * 2006-06-21 2014-07-01 Qualcomm Incorporated Unified virtual addressed register file
US8284204B2 (en) * 2006-06-30 2012-10-09 Nokia Corporation Apparatus, method and a computer program product for providing a unified graphics pipeline for stereoscopic rendering
US20080036854A1 (en) * 2006-08-08 2008-02-14 Texas Instruments Incorporated Method and system of communicating and rendering stereoscopic and dual-view images
US8493388B2 (en) * 2006-08-09 2013-07-23 Siemens Medical Solutions Usa, Inc. Modular volume rendering using visual programming
US20080189251A1 (en) * 2006-08-25 2008-08-07 Jeremy Branscome Processing elements of a hardware accelerated reconfigurable processor for accelerating database operations and queries
US20080059321A1 (en) * 2006-08-31 2008-03-06 Zucker Brian T Online Sales Method for Information Handling Systems and Related Peripherals
US20080055327A1 (en) * 2006-09-06 2008-03-06 Barinder Singh Rai Highly Efficient Display FIFO
US7973797B2 (en) * 2006-10-19 2011-07-05 Qualcomm Incorporated Programmable blending in a graphics processing unit
US20080101455A1 (en) * 2006-10-25 2008-05-01 Digital Deck, Inc. Apparatus and method for multiple format encoding
US8537168B1 (en) 2006-11-02 2013-09-17 Nvidia Corporation Method and system for deferred coverage mask generation in a raster stage
US8149242B2 (en) * 2006-11-10 2012-04-03 Sony Computer Entertainment Inc. Graphics processing apparatus, graphics library module and graphics processing method
US7889226B2 (en) 2006-11-20 2011-02-15 Codian Ltd Hardware architecture for video conferencing
GB0623100D0 (en) * 2006-11-20 2006-12-27 Codian Ltd Hardware architecture for video conferencing
KR101349171B1 (ko) * 2007-01-17 2014-01-09 삼성전자주식회사 3차원 그래픽 가속기 및 그것의 픽셀 분배 방법
JP5507797B2 (ja) * 2007-03-12 2014-05-28 キヤノン株式会社 頭部装着型撮像表示装置及び画像生成装置
US8379677B2 (en) * 2007-04-30 2013-02-19 Vixs Systems, Inc. System for combining a plurality of video streams and method for use therewith
WO2008147915A2 (en) * 2007-05-22 2008-12-04 Vidsys, Inc. Intelligent video tours
US8350788B1 (en) 2007-07-06 2013-01-08 Daktronics, Inc. Louver panel for an electronic sign
US8441497B1 (en) 2007-08-07 2013-05-14 Nvidia Corporation Interpolation of vertex attributes in a graphics processor
US9183607B1 (en) 2007-08-15 2015-11-10 Nvidia Corporation Scoreboard cache coherence in a graphics pipeline
US8005654B2 (en) * 2007-12-17 2011-08-23 Nokia Corporation Method, apparatus and computer program product for intelligent workload control of distributed storage
US8356162B2 (en) * 2008-03-18 2013-01-15 International Business Machines Corporation Execution unit with data dependent conditional write instructions
WO2009126785A2 (en) 2008-04-10 2009-10-15 The Trustees Of Columbia University In The City Of New York Systems and methods for image archaeology
US20090307408A1 (en) * 2008-06-09 2009-12-10 Rowan Nigel Naylor Peer-to-Peer Embedded System Communication Method and Apparatus
JP5268477B2 (ja) * 2008-07-29 2013-08-21 キヤノン株式会社 情報処理装置およびその制御方法、データ処理システム
WO2009155281A1 (en) 2008-06-17 2009-12-23 The Trustees Of Columbia University In The City Of New York System and method for dynamically and interactively searching media data
US20150177822A1 (en) * 2008-08-20 2015-06-25 Lucidlogix Technologies Ltd. Application-transparent resolution control by way of command stream interception
DE102008058457A1 (de) 2008-11-21 2010-06-02 Hilti Aktiengesellschaft Verfahren und handgeführter Sensor mit adaptiver Detektionsschwelle zur Detektion von in Bauwerkuntergründen eingebetteten Fremdobjekten
KR101066524B1 (ko) * 2008-11-25 2011-09-21 한국전자통신연구원 원통형 객체 렌더링 장치 및 그 렌더링 방법
US8671069B2 (en) 2008-12-22 2014-03-11 The Trustees Of Columbia University, In The City Of New York Rapid image annotation via brain state decoding and visual pattern mining
WO2010075408A1 (en) * 2008-12-22 2010-07-01 The Trustees Of Columbia University In The City Of New York System and method for annotating and searching media
WO2010083540A1 (en) * 2009-01-14 2010-07-22 Novolibri Cc Digital electronic tutoring system
TW201029856A (en) * 2009-01-16 2010-08-16 Echelon Laser Systems Lp Surface marked articles, related methods and systems
JP5419493B2 (ja) * 2009-03-03 2014-02-19 キヤノン株式会社 データ処理装置、データ処理装置の制御方法、およびプログラム
CN102349093B (zh) * 2009-03-13 2014-10-22 日本电气株式会社 图像签名提取设备
US8610731B2 (en) * 2009-04-30 2013-12-17 Microsoft Corporation Dynamic graphics pipeline and in-place rasterization
TWI393067B (zh) * 2009-05-25 2013-04-11 Inst Information Industry 具有電源閘控功能之繪圖處理系統及電源閘控方法,及其電腦程式產品
JP5361567B2 (ja) * 2009-06-25 2013-12-04 キヤノン株式会社 データ処理装置、データ処理方法およびプログラム
US8581916B2 (en) * 2009-06-26 2013-11-12 Intel Corporation Graphics analysis techniques
JP5460156B2 (ja) * 2009-07-14 2014-04-02 キヤノン株式会社 データ処理装置
US9111395B2 (en) * 2009-08-31 2015-08-18 Intel Corporation Automatic placement of shadow map partitions
JP5590849B2 (ja) * 2009-10-08 2014-09-17 キヤノン株式会社 複数の処理モジュールを有する並列処理回路を備えるデータ処理装置、その制御装置、およびその制御方法、プログラム
US20110109633A1 (en) * 2009-11-12 2011-05-12 Sequeira Jr Jose J System and Method For Visualizing Data Corresponding To Physical Objects
JP5367552B2 (ja) * 2009-12-15 2013-12-11 株式会社東芝 画像処理装置および画像処理プログラム
US8957902B2 (en) * 2010-12-24 2015-02-17 Reuven Bakalash Method and apparatus for interprocessor communication employing modular space division
US8189001B2 (en) * 2010-01-04 2012-05-29 Adshir Ltd. Method and apparatus for parallel ray-tracing employing modular space division
US8471865B2 (en) * 2010-04-02 2013-06-25 Intel Corporation System, method and apparatus for an edge-preserving smooth filter for low power architecture
JP5600492B2 (ja) * 2010-06-28 2014-10-01 キヤノン株式会社 データ処理装置、データ処理方法、制御装置、制御方法およびプログラム
US8532100B2 (en) 2010-10-19 2013-09-10 Cisco Technology, Inc. System and method for data exchange in a heterogeneous multiprocessor system
KR101456404B1 (ko) * 2010-12-02 2014-10-31 디지털 프로세스 가부시끼가이샤 표시 처리 방법 및 장치
KR101199619B1 (ko) * 2011-01-21 2012-11-08 세크론 주식회사 웨이퍼 맵 생성 방법
KR101227155B1 (ko) * 2011-06-14 2013-01-29 주식회사 넥서스칩스 저해상도 그래픽 영상을 고해상도 그래픽 영상으로 실시간 변환하는 그래픽 영상 처리 장치 및 방법
US9019280B2 (en) * 2011-07-22 2015-04-28 Qualcomm Incorporated Area-based rasterization techniques for a graphics processing system
JP5155462B2 (ja) * 2011-08-17 2013-03-06 株式会社スクウェア・エニックス・ホールディングス 動画配信サーバ、動画再生装置、制御方法、プログラム、及び記録媒体
CN102521870B (zh) * 2011-11-22 2014-04-16 浙江大学 一种微多边形光线跟踪的着色重用方法
WO2013100783A1 (en) 2011-12-29 2013-07-04 Intel Corporation Method and system for control signalling in a data path module
US9456236B2 (en) * 2013-02-11 2016-09-27 Crestron Electronics Inc. Systems, devices and methods for reducing switching time in a video distribution network
US9516362B2 (en) * 2012-02-10 2016-12-06 Crestron Electronics Inc. Devices, systems and methods for reducing switching time in a video distribution network
WO2013125220A1 (ja) 2012-02-23 2013-08-29 株式会社スクウェア・エニックス・ホールディングス 動画配信サーバ、動画再生装置、制御方法、プログラム、及び記録媒体
US8794724B2 (en) 2012-03-28 2014-08-05 Masonite Corporation Surface marked articles, related methods and systems
CN103650001B (zh) 2012-04-12 2017-04-26 史克威尔·艾尼克斯控股公司 动画分发服务器、动画播放装置、及控制方法
CA2870480A1 (en) 2012-04-13 2013-10-17 Lightcraft Technology Llc Hybrid precision tracking
US9411595B2 (en) 2012-05-31 2016-08-09 Nvidia Corporation Multi-threaded transactional memory coherence
US9229791B1 (en) * 2012-08-24 2016-01-05 Qlogic, Corporation System and method for high speed multiple buffer allocation
US9824009B2 (en) 2012-12-21 2017-11-21 Nvidia Corporation Information coherency maintenance systems and methods
KR101879855B1 (ko) * 2012-12-22 2018-07-19 (주)지오투정보기술 영상의 왜곡보정을 통해 공간모델링을 수행하는 수치지도제작 시스템
US10102142B2 (en) 2012-12-26 2018-10-16 Nvidia Corporation Virtual address based memory reordering
US9582848B2 (en) 2012-12-28 2017-02-28 Apple Inc. Sprite Graphics rendering system
JP5389301B1 (ja) * 2013-03-29 2014-01-15 三菱電機株式会社 シーケンサシステムおよびアドレス設定方法
KR101465422B1 (ko) * 2013-07-18 2014-12-10 성균관대학교산학협력단 가상화 환경에서의 오픈지엘 그래픽 처리 방법
US9569385B2 (en) 2013-09-09 2017-02-14 Nvidia Corporation Memory transaction ordering
US10331583B2 (en) 2013-09-26 2019-06-25 Intel Corporation Executing distributed memory operations using processing elements connected by distributed channels
US10198856B2 (en) * 2013-11-11 2019-02-05 Oxide Interactive, LLC Method and system of anti-aliasing shading decoupled from rasterization
US9665235B2 (en) 2013-12-31 2017-05-30 Vmware, Inc. Pre-configured hyper-converged computing device
US9905046B2 (en) * 2014-04-03 2018-02-27 Intel Corporation Mapping multi-rate shading to monolithic programs
US9355464B2 (en) 2014-05-30 2016-05-31 Apple Inc. Dynamic generation of texture atlases
US9804666B2 (en) 2015-05-26 2017-10-31 Samsung Electronics Co., Ltd. Warp clustering
DE102015219691A1 (de) * 2015-10-12 2017-04-13 Bayerische Motoren Werke Aktiengesellschaft Verfahren zum Rendern von Daten, Computerprogrammerzeugnis, Anzeigeeinheit und Fahrzeug
CN105635805B (zh) * 2015-12-18 2018-12-21 潍坊歌尔电子有限公司 一种虚拟现实场景中优化运动图像的方法和装置
CN114218133A (zh) 2016-06-15 2022-03-22 华为技术有限公司 一种数据传输方法及装置
US20180025704A1 (en) * 2016-07-21 2018-01-25 Tektronix, Inc. Composite user interface
US10380767B2 (en) * 2016-08-01 2019-08-13 Cognex Corporation System and method for automatic selection of 3D alignment algorithms in a vision system
US10558575B2 (en) 2016-12-30 2020-02-11 Intel Corporation Processors, methods, and systems with a configurable spatial accelerator
US10474375B2 (en) 2016-12-30 2019-11-12 Intel Corporation Runtime address disambiguation in acceleration hardware
US10572376B2 (en) 2016-12-30 2020-02-25 Intel Corporation Memory ordering in acceleration hardware
US10416999B2 (en) 2016-12-30 2019-09-17 Intel Corporation Processors, methods, and systems with a configurable spatial accelerator
JP2018156267A (ja) * 2017-03-16 2018-10-04 富士通株式会社 演算処理装置、情報処理装置および演算処理装置の制御方法
US10152822B2 (en) * 2017-04-01 2018-12-11 Intel Corporation Motion biased foveated renderer
US10319064B2 (en) 2017-04-10 2019-06-11 Intel Corporation Graphics anti-aliasing resolve with stencil mask
US10387319B2 (en) 2017-07-01 2019-08-20 Intel Corporation Processors, methods, and systems for a configurable spatial accelerator with memory system performance, power reduction, and atomics support features
US10467183B2 (en) 2017-07-01 2019-11-05 Intel Corporation Processors and methods for pipelined runtime services in a spatial array
US10445451B2 (en) 2017-07-01 2019-10-15 Intel Corporation Processors, methods, and systems for a configurable spatial accelerator with performance, correctness, and power reduction features
US10469397B2 (en) 2017-07-01 2019-11-05 Intel Corporation Processors and methods with configurable network-based dataflow operator circuits
US10515046B2 (en) 2017-07-01 2019-12-24 Intel Corporation Processors, methods, and systems with a configurable spatial accelerator
US10445234B2 (en) 2017-07-01 2019-10-15 Intel Corporation Processors, methods, and systems for a configurable spatial accelerator with transactional and replay features
US10515049B1 (en) 2017-07-01 2019-12-24 Intel Corporation Memory circuits and methods for distributed memory hazard detection and error recovery
US10354415B2 (en) * 2017-09-11 2019-07-16 Autodesk, Inc. Method and apparatus for a seamless texture unit generator
US10496574B2 (en) 2017-09-28 2019-12-03 Intel Corporation Processors, methods, and systems for a memory fence in a configurable spatial accelerator
US11086816B2 (en) 2017-09-28 2021-08-10 Intel Corporation Processors, methods, and systems for debugging a configurable spatial accelerator
US10445098B2 (en) 2017-09-30 2019-10-15 Intel Corporation Processors and methods for privileged configuration in a spatial array
KR102433101B1 (ko) * 2017-11-06 2022-08-18 에스케이하이닉스 주식회사 반도체 장치 및 이를 포함하는 반도체 시스템
US10628952B2 (en) * 2017-12-11 2020-04-21 Google Llc Dual-band stereo depth sensing system
KR102010085B1 (ko) * 2017-12-26 2019-08-12 주식회사 포스코 수퍼픽셀을 이용한 미세조직의 라벨링 이미지 생성방법 및 생성장치
US10445250B2 (en) 2017-12-30 2019-10-15 Intel Corporation Apparatus, methods, and systems with a configurable spatial accelerator
US10565134B2 (en) 2017-12-30 2020-02-18 Intel Corporation Apparatus, methods, and systems for multicast in a configurable spatial accelerator
US10417175B2 (en) 2017-12-30 2019-09-17 Intel Corporation Apparatus, methods, and systems for memory consistency in a configurable spatial accelerator
TWI667527B (zh) * 2018-03-02 2019-08-01 台達電子工業股份有限公司 投影裝置及投影方法
US11307873B2 (en) 2018-04-03 2022-04-19 Intel Corporation Apparatus, methods, and systems for unstructured data flow in a configurable spatial accelerator with predicate propagation and merging
US10564980B2 (en) 2018-04-03 2020-02-18 Intel Corporation Apparatus, methods, and systems for conditional queues in a configurable spatial accelerator
TWI696127B (zh) * 2018-06-29 2020-06-11 奇景光電股份有限公司 無訊框緩衝器的卷積神經網路系統與方法
US10459866B1 (en) * 2018-06-30 2019-10-29 Intel Corporation Apparatuses, methods, and systems for integrated control and data processing in a configurable spatial accelerator
US10891240B2 (en) 2018-06-30 2021-01-12 Intel Corporation Apparatus, methods, and systems for low latency communication in a configurable spatial accelerator
US10853073B2 (en) 2018-06-30 2020-12-01 Intel Corporation Apparatuses, methods, and systems for conditional operations in a configurable spatial accelerator
US11200186B2 (en) 2018-06-30 2021-12-14 Intel Corporation Apparatuses, methods, and systems for operations in a configurable spatial accelerator
CN109190196B (zh) * 2018-08-14 2024-05-31 广东雅达电子股份有限公司 一种web前端绘制电气接线图的方法
US10678724B1 (en) 2018-12-29 2020-06-09 Intel Corporation Apparatuses, methods, and systems for in-network storage in a configurable spatial accelerator
US11029927B2 (en) 2019-03-30 2021-06-08 Intel Corporation Methods and apparatus to detect and annotate backedges in a dataflow graph
US10965536B2 (en) 2019-03-30 2021-03-30 Intel Corporation Methods and apparatus to insert buffers in a dataflow graph
US10915471B2 (en) 2019-03-30 2021-02-09 Intel Corporation Apparatuses, methods, and systems for memory interface circuit allocation in a configurable spatial accelerator
US10817291B2 (en) 2019-03-30 2020-10-27 Intel Corporation Apparatuses, methods, and systems for swizzle operations in a configurable spatial accelerator
US11229135B2 (en) 2019-04-01 2022-01-18 Dell Products L.P. Multiple function chassis mid-channel
US11037050B2 (en) 2019-06-29 2021-06-15 Intel Corporation Apparatuses, methods, and systems for memory interface circuit arbitration in a configurable spatial accelerator
US11436783B2 (en) 2019-10-16 2022-09-06 Oxide Interactive, Inc. Method and system of decoupled object space shading
US11907713B2 (en) 2019-12-28 2024-02-20 Intel Corporation Apparatuses, methods, and systems for fused operations using sign modification in a processing element of a configurable spatial accelerator
US11662986B1 (en) * 2020-03-20 2023-05-30 Meta Platforms, Inc. Reducing data transfer to machine learning accelerator hardware
CN112116683B (zh) * 2020-08-03 2022-07-29 天津大学 一种并行绘制中进行图像合成的方法
US11829697B2 (en) * 2021-08-06 2023-11-28 International Business Machines Corporation Region-based layout routing
CN115472102A (zh) * 2022-10-18 2022-12-13 业成科技(成都)有限公司 图案显示装置及图案显示方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0172038B1 (en) * 1984-08-16 1991-10-23 Sharp Kabushiki Kaisha Information processor
EP0367182A3 (en) * 1988-10-31 1992-07-22 Bts Broadcast Television Systems Gmbh High-speed digital computing system
US5262965A (en) * 1988-10-31 1993-11-16 Bts-Broadcast Television Systems, Inc. System and method for high speed computer graphics image computation using a parallel connected, asynchronous multiprocessor ring coupled to a synchronous special purpose video processing ring
US5241625A (en) * 1990-11-27 1993-08-31 Farallon Computing, Inc. Screen image sharing among heterogeneous computers
FR2680026B1 (fr) * 1991-07-30 1996-12-20 Commissariat Energie Atomique Architecture de systeme en tableau de processeurs a structure parallele.
US5388206A (en) * 1992-11-13 1995-02-07 The University Of North Carolina Architecture and apparatus for image generation
FR2710993B1 (fr) * 1993-10-04 1995-11-24 Commissariat Energie Atomique Procédé et système d'interconnexion pour la gestion de messages dans un réseau de processeurs à structure parallèle.
US5557734A (en) * 1994-06-17 1996-09-17 Applied Intelligent Systems, Inc. Cache burst architecture for parallel processing, such as for image processing
JP2637931B2 (ja) * 1994-12-01 1997-08-06 インターナショナル・ビジネス・マシーンズ・コーポレイション テクスチャ・マッピングを行うコンピュータ・システム
KR100269106B1 (ko) * 1996-03-21 2000-11-01 윤종용 멀티프로세서 그래픽스 시스템
US5821950A (en) * 1996-04-18 1998-10-13 Hewlett-Packard Company Computer graphics system utilizing parallel processing for enhanced performance
US5977997A (en) * 1997-03-06 1999-11-02 Lsi Logic Corporation Single chip computer having integrated MPEG and graphical processors
US5911056A (en) * 1997-05-01 1999-06-08 Hewlett-Packard Co. High speed interconnect bus
US6057855A (en) * 1997-07-02 2000-05-02 Hewlett-Packard Company Method and apparatus for providing polygon pixel sub-sample information using incremental means
US5995121A (en) * 1997-10-16 1999-11-30 Hewlett-Packard Company Multiple graphics pipeline integration with a windowing system through the use of a high speed interconnect to the frame buffer
US6292200B1 (en) * 1998-10-23 2001-09-18 Silicon Graphics, Inc. Apparatus and method for utilizing multiple rendering pipes for a single 3-D display
US6753878B1 (en) * 1999-03-08 2004-06-22 Hewlett-Packard Development Company, L.P. Parallel pipelined merge engines
US6762761B2 (en) * 1999-03-31 2004-07-13 International Business Machines Corporation Method and system for graphics rendering using hardware-event-triggered execution of captured graphics hardware instructions
US6545679B1 (en) * 1999-12-27 2003-04-08 Microsoft Corporation View volume clip-check in object space
US6583787B1 (en) * 2000-02-28 2003-06-24 Mitsubishi Electric Research Laboratories, Inc. Rendering pipeline for surface elements
US6509902B1 (en) * 2000-02-28 2003-01-21 Mitsubishi Electric Research Laboratories, Inc. Texture filtering for surface elements
US6747660B1 (en) * 2000-05-12 2004-06-08 Microsoft Corporation Method and system for accelerating noise
US6801202B2 (en) * 2000-06-29 2004-10-05 Sun Microsystems, Inc. Graphics system configured to parallel-process graphics data using multiple pipelines
US6784894B2 (en) * 2000-08-24 2004-08-31 Sun Microsystems, Inc. Mapping time-sorted to direction-sorted triangle vertices
US7233998B2 (en) * 2001-03-22 2007-06-19 Sony Computer Entertainment Inc. Computer architecture and software cells for broadband networks
US7136081B2 (en) * 2001-05-25 2006-11-14 Nvidia Corporation System and method of line sampling object scene information
US6903741B2 (en) * 2001-12-13 2005-06-07 Crytek Gmbh Method, computer program product and system for rendering soft shadows in a frame representing a 3D-scene
US6683614B2 (en) * 2001-12-21 2004-01-27 Hewlett-Packard Development Company, L.P. System and method for automatically configuring graphics pipelines by tracking a region of interest in a computer graphical display system
US6731288B2 (en) * 2002-03-01 2004-05-04 3Dlabs Inc., Ltd. Graphics engine with isochronous context switching
US7130681B2 (en) 2003-05-09 2006-10-31 Medtronic, Inc. Use of accelerometer signal to augment ventricular arrhythmia detection

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9953393B2 (en) 2015-11-13 2018-04-24 Industrial Technology Research Institute Analyzing method and analyzing system for graphics process of graphic application program
TWI692759B (zh) * 2019-05-15 2020-05-01 瑞昱半導體股份有限公司 同時存取第一動態隨機存取記憶體與第二動態隨機存取記憶體的方法及相關的記憶體控制器

Also Published As

Publication number Publication date
CN1656465B (zh) 2010-05-26
WO2003083680A1 (en) 2003-10-09
US20060092162A1 (en) 2006-05-04
CN1656465A (zh) 2005-08-17
US20140055485A1 (en) 2014-02-27
US7808505B2 (en) 2010-10-05
EP1495412B1 (en) 2012-11-28
US9478001B2 (en) 2016-10-25
US20170103494A1 (en) 2017-04-13
US7379067B2 (en) 2008-05-27
EP1495412A4 (en) 2008-11-19
EP1495412A1 (en) 2005-01-12
US20040012600A1 (en) 2004-01-22
US20080266300A1 (en) 2008-10-30
US8593468B2 (en) 2013-11-26
KR20040106300A (ko) 2004-12-17
CA2480081C (en) 2007-06-19
KR100959470B1 (ko) 2010-05-25
JP4193990B2 (ja) 2008-12-10
TW200403595A (en) 2004-03-01
US20110221742A1 (en) 2011-09-15
JP2005521178A (ja) 2005-07-14
AU2003228353A1 (en) 2003-10-13
CA2480081A1 (en) 2003-10-09
US10019777B2 (en) 2018-07-10

Similar Documents

Publication Publication Date Title
TWI305900B (en) Method of rendering graphics and 3d graphics hardware accelerator
US8976168B2 (en) Mesh generation from depth images
CN109936745B (zh) 用于改善原始视频数据的解压的方法和系统
CN107392836B (zh) 使用图形处理管线实现的立体多投影
CN111698463A (zh) 使用神经网络进行视图合成
US11089320B2 (en) Adaptive pixel sampling order for temporally dense rendering
CN113302658A (zh) 并行纹理采样
US8558837B2 (en) Modular radiance transfer
US11120609B2 (en) Reconstruction for temporally dense ray trace rendering
US8681154B1 (en) Adaptive rendering of indistinct objects
US20240185502A1 (en) Efficient real-time shadow rendering
US11315306B2 (en) Systems and methods for processing volumetric data
WO2019204064A1 (en) Compact visibility state for gpus compatible with hardware instancing
US20220108420A1 (en) Method and system of efficient image rendering for near-eye light field displays
US7295212B2 (en) Method, system, and computer program product for blending textures in a texture paging scheme
Hinkenjann et al. Network aware parallel rendering with PCs
White COMPUTER SCANNING AND SCANNERS

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees