新四季網

用於平行圖形處理器的全域散布器及方法

2023-06-22 17:20:46


專利名稱::用於平行圖形處理器的全域散布器及方法
技術領域:
:本發明涉及一種計算機處理器及計算機網絡的架構,更明確地說,涉及一種用於產生及動態排程多重流動數據處理任務的系統與方法,用以於一平行處理器中來執行。
背景技術:
:微處理器設計人員與廠商不斷地專注在改良微處理器效能,以便執行愈加複雜的軟體,進而提高功效。雖然改良製造過程可由縮小矽幾何大小而有助於提高微處理器的速度,不過,處理器的設計方式,尤其是指令執行核心,仍然關係到處理器效能。有許多微處理器皆使用指令管線排列技術(instructionpipelining)來提高指令總處理量。一指令管線可利用一種組合線(assemblyline)方式經由複數個不同的指令執行相來同時處理數項指令。以非限制範例為例,可以將複數個個別的功能單元,例如解碼單元,進一步管線排列成數個硬體級,每一級均會在一分離的指令中實施該指令解碼過程中的某道步驟。因此,利用多個不同的管線級便可深化處理器硬體管線。用於改良指令執行速度的另一種方法稱為「亂序(out-of-order)」執行法。亂序執行法執行指令的順序不同於編譯器發送該等指令的順序,以便縮短含有該等指令的程序的整體執行等待時間。亂序指令執行法的其中一種方式使用被稱為「緩存器記分板(registerscoreboarding)」的技術,其中,指令會被依序發送,但是卻以亂序的方式來執行。亂序排程的另一種形式為運用被稱為「動態排程」的技術。對提供動態排程的處理器來說,甚至會對發送指令給執行硬體的順序進行重新排程,使其異於原來的程序順序。雖然該等指令執行結果可能亂序,不過該等指令實則已退出程序順序。尚且,亂序技術中的指令管線排列處理,例如動態排程,可於相同的微處理器中被分開使用或一起使用。動態排程平行指令執行可能包含特殊的關聯表,用以登記指令與功能單元的狀態以及某項特殊指令結果作為所規定指令的輸入操作數的可用性。排程硬體會使用該些表來發送、執行、以及完成個別的指令。動態排程平行指令執行的範疇為指令層平行度(instructionlevelparallelism,ILP),該項技術已經延伸至多重執行緒(超執行緒處理或是同步多重執行緒處理(simultaneousmultithreading,SMT))。此項技術提供硬體輔助的多重執行緒派發及執行,從而於一平行功能單元中可在每個時脈中處理多重指令。動態排程硬體可從該等多重現役執行緒中提供同步指令發送。排程硬體可利用記分板來登記執行緒與指令狀態,以便追蹤指令發送與執行的相依性並且定義指令發送與執行的時間。此外,執行緒可能會因為冗長的等待時間快取錯失或是其它的I/O原因而被暫止。不過,以一非限制性範例為例,該記分板可能由指令狀態、功能單元狀態、以及緩存器結果狀態所組成。此三份表格皆會在指令執行過程中由於每個時鐘循環中更新它們的欄位來進行互動。為傳送某道指令的級與變化狀態,應該滿足特定的條件並且於每一級中實行特定的動作。緩存器更名在已經預設架構緩存器名稱空間(architectureregisternamespace)時用來克服名稱相依性問題的另一項技術,其允許複數個指令被並行執行。根據緩存器更名技術,每當某一緩存器分配到某數值時,便可分派一新的緩存器。當解碼某道指令時,硬體便會檢查目的地欄位,並且重新命名該架構緩存器名稱空間。以一非限制範例為例,假使緩存器R3分配到某數值的話,便可分派一新的緩存器複製體R3』,而在後面指令中對緩存器R3所進行的所有讀取作業則均會被導向複製體R3』(以複製名稱取代架構名稱)。繼續此非限制性範例,當緩存器R3新分配到某數值的話,便可分派另一緩存器複製體R3」,而後面的參考值則均會被導向新的複製體R3」。此過程會針對所有輸入指令來進行。此過程不僅會消除名稱相依性,還可讓該處理器看似具有更多的緩存器並且可提高指令層平行度,進而可操作更多的平行單元。重排序緩衝器(reorderbuffer)亦可能會使用緩存器更名技術,以便擴充架構緩存器空間並且產生和不同命令相關聯的同一緩存器的多重拷貝。如此便能夠讓亂序執行具有有序的結果。當解碼某道指令時,可能會分配和該適當功能單元相關聯的重排序緩衝器登錄項。該被解碼指令的目的地緩存器可能與該被分派的重排序緩衝器登錄項有關,其會導致更改該緩存器的名稱。該處理器硬體可產生一卷標以唯一識別此結果。該卷標可儲存於該重排序緩衝器登錄項之中。當後續的指令參考到該更名目的地緩存器時,其便可接收該重排序緩衝器登錄項中所儲存的數值或卷標,端視是否收到該數據而定。重排序緩衝器可被組態成一內容尋址式內存(contentaddressablememory,CAM),其中可利用該卷標進行數據搜尋。應用中,後續指令的目的地緩存器編號可被套用至一重排序緩衝器,並且亦可確認含有此緩存器編號的登錄項。確認之後,便可傳回已算出的數值。假使該數值尚未算出,便可傳回上述的卷標來取代。假使有多個登錄項含有此緩存器編號的話,那麼便可確認最新的登錄項。假使沒有登錄項含有該必要的緩存器編號的話,那麼便可使用架構緩存器文件。當結果產生時,則可將該結果與卷標散布給所有的功能單元。另一種處理方式包含實時排程及多重處理器系統。此組態包含複數個鬆散耦合的MIMD(多指令多數據)微處理器,每個處理器均具有自己的內存與I/O信道。於該些系統上可同時執行數項任務及子任務(執行緒)。不過,該等任務可能包含特定排序類型的同步化,以保持預期的處理形態。另外,各種處理形態可能需要不同的同步化。和指令層平行度處理器不同的於執行緒中,實時排程處理器會針對任務進行處理器分配(資源分派)。利用指令層平行度組態,於專屬的功能單元中其中一部份可能重複,其意謂著,為分散所進行的指令分配非常簡單,其相依於可用槽(slot)的數量及指令類型。不過,對MIMD(多指令多數據)型的多重處理器系統來說,所有處理器通常雷同的,而且具有比較複雜的任務分配策略。至少其中一種非限制方式將該MIMD(多指令多數據)結構視為一處理器群,其意謂著,將處理器看成一結合資源,並且相依於內存與計算資源的可用性來將處理分配給處理器。此環境中,至少有兩種方法可用來分散任務與執行緒。第一種為靜態分配法,當每種任務或執行緒被預先分配給某個特殊處理器或某群處理器時便會進行此法。第二種組態為動態分配法,和上述者雷同,本法需要相依於可用資源及任務優先權來將任務分配給該處理器群中的任何處理器。於此組態中,該多重處理器群可能具有特殊的派發線索,其中多項任務及多項執行緒正在等待分配及執行,並且供完成I/O事件使用。另外,於此組態中,執行緒系任務的一部份,而某些任務可分割成數個執行緒,以便利用特定的數據同步及順序來平行執行。因此,該等執行緒通常可與該處理的其餘部份分開執行。另外,應用軟體可能為一組執行緒,該等執行緒會在相同的地址空間但使用不同的處理器來同時合作及執行。因此,於不同處理器上同時執行的執行緒可產生動態的效能增益。於一多重處理器組態中,可依照負載共享技術來實現執行緒排程。負載共享可能需要將負載均勻地分散於該微處理器群中的各個微處理器之上。如此方可確保沒有任何微處理器閒置的。多重處理器執行緒排程可能會使用上述某些靜態排程技術,例如當將某個執行緒分配給某個特定處理器時。不過,於將數個特定的執行緒分配給某個特定處理器時,其它的處理器可能會閒置,而該被分配的處理器則相當忙碌,從而導致該已分配的執行緒必須閒置等待其所分配到的處理器有空為止。因此,靜態排程經常會造成處理器效率不顯著。處理器的動態排程可以對象導向的圖形管線來實行。對象為一種結構性數據項,代表沿著一邏輯管線往下移動的事物,例如三角形的頂點、貼片(patch)、像素、或是視訊數據。於邏輯層處,數值數據與控制數據均可為該對象的一部份,不過實際的實行方式則可分開處理兩者。於一圖形模型中,有數種對象可於該數據流中進行處理。第一種為狀態對象,其含有硬體控制信息及描影碼(shadercode)。第二,可處理頂點對象,其含有和該數值控制數據相關的數組頂點。第三,於該數據流模型中可處理基本對象(primitiveobject),其含有和基本對象有關的數組數值數據與控制數據。更明確地說,一基礎對象可能含有貼片對象、三角形對象、直線對象、及/或點對象。第四,碎形對象可為該數據流模型的一部份,其含有和像素有關的數組數值數據與控制數據。最後,於數據流模型中亦可處理其它類型的對象,例如視訊數據。每種對象均可具有可於其上實行的一組可能作業以及一(邏輯電路上)固定的數據布置。對象可能具有不同的大小與狀態,其亦可能被稱為複數層或複數級,用以代表該等對象於管線處理中所抵達的位置。以一非限制範例為例,可將某對象的各層例示在一三角形對象上,此對象剛開始具有三個頂點,指向頂點幾何與屬性數據的實際位置。當解出該等參考值時(檢查快取以及於必要時從API緩衝器中檢索數據),便可更新該對象層,使經由其它級來傳送該對象。經更新的層通常可反映該對象結構中特定數據的可用性,以便進行立即處理。大部份情況中,一經更新的層會包含前面的層。熟習本技術的人士便會了解,一對象通常會有兩種大小(布置)。第一為邏輯布置,其包含所有的數據結構。從對象產生時刻起至結束為止,該邏輯布置可能會保持不變。第二種對象布置為實體布置,其顯示的為可供立即處理使用的數據結構,其可運作用以匹配最上層中的邏輯布置。邏輯布置與實體布置兩者均可以訊框及緩衝器一邏輯訊框及實體緩衝器來表示。邏輯訊框可被映像至實體緩衝器,以便讓數據結構可供立即處理使用。每個對象一開始均含有數個邏輯訊框,而其中一個訊框可被映像至一實體緩衝器。用於後級中的所有其它訊框則可不被映像,以便節省晶片上的內存資源。尚且,訊框與緩衝器兩者均可具有可變的大小,彼此間可彈性映像。一對象可能會參考系統中其它對象內所保有的數據。管線怠惰評估技術(Pipelinelazyevaluationscheme)會追蹤該些相依性,並且使用該些相依性來計算隨選對象(objectondemand)內所儲存的數值。相同類型的對象可於平行獨立的線索中來處理。或者,可產生一種複合對象,其含有數個頂點對象、碎形對象、或是基礎對象,以便於SIMD(單指令多數據)模式中進行處理。對圖形處理應用而言,上述的特點具有歷史內含固定函數及可程序硬體型管線解決方式。不過,該些線性解決方式經常會因該圖形管線的靜態組態而導致效率不顯著。當如上述般某個特殊級的頻寬於訊框產生的執行時間期間沒有改變時,便會造成該處理器效率不顯著且出現閒置時間,從而降低整體的效率。於涉及多個平行處理器的應用中,效率不顯著情形會越加惡化。因此,目前為止,必須要解決由複數個平行多重執行緒處理器所組成的MIMD(多指令多數據)結構中動態產生及多重邏輯圖形管線執行管理的問題。
發明內容本發明的目的在於,提供一種平行圖形處理器,其可於一邏輯管線中處理複數個圖形數據封包,其包含頂端本體、三角形本體、以及像素本體。本發明讓該平行圖形處理器實行和頂端、三角形、以及像素有關的動態排程多重流動數據處理任務。即,平行圖形處理器可同時平行處理該些本體。本發明揭示一種具有一散布器的平行圖形處理器,該散布器會被耦合至複數個執行組件。該散布器會保留該等複數個執行組件中每一者的狀態信息,並且建立該等複數個執行單元中每一接收欲被處理的圖形實體的優先權。可依照所保留的狀態信息以及預被處理的圖形實體來排列該等優先權。該散布器會將一要求傳送給一選定執行組件,用以於其本體描述符表中分派該欲被處理的圖形本體並且將圖形本體數據拷貝至該選定執行組件。該散布器會於其邏輯表中對該圖形本體的分配結果進行索引編排,接著便會從該選定執行組件中接收指示符號,表示該圖形本體已經過處理。而後便可於一顯示器上表現圖形影像。以下結合附圖和具體實施例對本發明進行詳細描述,但不作為對本發明的限定。圖1為本發明的對象導向架構的抽象硬體模型示意圖;圖2為圖1的對象導向架構模型中的三層動態排程示意圖;圖3為利用和圖1的單元相關的額外作業單元來顯示圖1的對象導向架構模型的示意圖;圖4為圖3的隊列與快取控制器示意圖;圖5為由圖1的對象導向架構來執行的頂點處理序列中該對象導向架構互動的執行示意圖;圖6、圖7為圖1模型的三角形處理序列的對象導向架構互動示意圖;圖8、圖9為圖1模型的像素處理序列的對象導向架構互動示意圖;圖10為一非限制性範例示意圖,圖中描繪的為於該全域散布器及圖1的執行單元之間分派一三角形本體。其中,主要標記10對象導向架構模型object-orientedarchitecturemodel12全域散布器(全域排程及globalspreader(globalschedulerand任務及含表的分散器)taskdistributor)13數據傳輸通信系統datatransportcommunicationsystem15執行單元(執行方塊隊列Executionblock及快取控制器)17執行單元Executionblock19執行單元Executionblock21固定功能硬體與快取Fixedfunctionhardwareandcacheunit單元內存23共同I/O服務與大量I/Ocommonservicesandbulkcacheblock快取存儲器32流管線執行緒控制器numericstreampipethreadcontroller34數據控制器datamovecontroller41基礎對象表primitivetable43頂點描述符表vertexdescriptortable46輸入頂點緩衝器與inputvertexbufferandindexbuffer索引緩衝器48執行單元executionblock49執行單元executionblock50像素封包器pixelpacker51隊列快取控制器Queuecachecontroller52數據管理移動機制Datamanagementmovemachine54區域快取存儲器localcache56執行緒控制器threadcontroller57流動數值管線及streamnumericpipeandassociated緩存器單元registerunit61微片旁通式隊列tilebypassqueue63重排序緩衝器reorderbuffer64輸出微片產生器outputtilegenerator71通信單元communicationunit73輸入inputportion75輸出outputportion77控制器communicationcontroller78本體描述符表entitydescriptortable(具有控制器PB)79CTRL總線CTRLBus82級剖析器stageparser83級指針表atagepointertable85I/O及移動描述符緩存I/Oandmovedescriptorregistertable器表87數據管理微程序內存datamanagementmicroprogrammemory88快取存儲器cachememory91數值處理描述符緩存numericalprocessdescriptorregistertable器表94地址更名邏輯表單元addressrenamelogictable101非限制性範例流程圖nonlimitingexampleflowchart步驟S104檢查輸入三角形封包步驟S106檢查頂點描述符表步驟S108產生區域參考值步驟S109產生全域參考值步驟S111定義候選執行單元以供分派步驟S115定義最小資源數量步驟S118產生本體分派要求步驟S120檢查第一候選執行單元的狀態步驟S122檢查第二候選執行單元的狀態步驟S124檢查第三候選執行單元的狀態步驟S126傳送本體分派要求給執行單元具體實施方式不同於靜態排程的如上所述,於執行緒執行期間可運用動態排程,致使可由該應用軟體來動態變更某處理中的執行緒數量。動態排程還可促成閒置處理器分配以執行特定的執行緒。此方式可改善可用處理器的運用情形,所以便可改善系統的效率。圖1為本發明的對象導向架構模型10的抽象硬體示意圖。圖1的對象導向架構模型10包含一具有一群執行單元的通用處理部份,其可提供區域排程、數據交換、以及本體或是對象處理。圖1的對象導向架構模型10可為以動態排程指令執行概念為主的平行圖形處理來致動動態排程,其可使用於超純數(superscalar)機之中。此概念可延伸至數個執行緒及數個微執行緒,其為欲於圖形數據對象上執行的碎形碼。如本文所述,該動態排程方式會映像至邏輯圖形管線,其中每個部份均會處理一特定類型的圖形數據對象並且執行含有數個微執行緒的執行緒。更明確地說,該圖形管線的粗粒級可匹配某一層對象種類(例如頂點、幾何形狀、以及像素)上的執行緒,其中細粒級則相當於微執行緒。對象導向架構模型10包含一全域排程器(globalscheduler)及任務分散器(taskdistributor),下文中稱為全域散布器(globalspreader)12。全域散布器12具有複數個附屬的頂點與索引流緩衝器、一頂點對象表、以及一基礎對象表,下文將更詳細說明(圖3)。全域散布器12會通過一數據傳輸通信系統13被耦合至對象導向架構模型10的各個組件,如熟習本技術的人士所知悉者。該數據傳輸通信系統13會耦合該架構的所有組件,如圖1所例示。執行單元15、17、19會提供區域排程、數據交換、以及本體處理,由全域散布器12來分配。下文將更詳細地討論執行單元15、17、19的邏輯構造及作業。固定功能硬體與快取單元內存21包含用於實行圖形處理的固定功能級(例如網格化、紋理處理、以及輸出像素處理部份)的專屬圖形資源。此外,第1圖的對象導向架構模型10中內含一共同I/O服務與大量快取存儲器23,其可被配置成包括一命令流處理器、內存與總線存取、複數個大量快取、以及一顯示單元,以上均為非限制性範例。如下文更詳細討論,全域散布器12可運用數據傳輸通信系統13與一或多個執行單元15、17、19進行溝通;不過,該等執行單元15、17、19亦可根據全域散布器12分配給該等執行單元執行的各項任務與處理通過數據傳輸通信系統13來彼此溝通。全域散布器12可與對象導向架構模型10中所有的執行單元進行互動,並且利用時鐘解析度來追蹤該等執行單元15、17、19中可用的資源。全域散布器12的任務分散組態可完全地程序化並且可依據每個執行單元的設定文件的逐個訊框監視結果來進行調適。圖2為圖1的對象導向架構模型10中的三層動態排程示意圖。於全域排程層處,全域散布器12可配合各表格運作並且還涉及新本體產生與邏輯訊框分配,以及涉及分散至各個執行單元15、17、19及物理內存分派(於全域排程層中)。因此,如上討論,全域散布器12會與圖1的所有執行單元15、17、19進行互動,其涉及到區域排程層,如圖2所示。於區域排程層處,一區域任務排程器包含一區域記分板(localscoreboard)。該區域記分板包括一具有一級剖析器(stageparser)的隊列與快取控制器,該級剖析器可經由該等處理管線(見圖5至圖9)逐級地推動各本體,於各處理的整個執行期間針對已更新的狀態本體進行物理內存分派。於該指令執行排程層處,該等執行單元含有一數值流管線執行緒控制器32,其會控制級剖析器82所定義的執行緒的數值處理。該指令執行層還包含一數據移動控制器34,其可致動執行多重執行單元中的多重執行緒,並且實行多重信道I/O控制。即,數據移動控制器34會將數據傳送給其它執行單元與全域散布器12及/或從其它執行單元與全域散布器12中接收數據。包含全域排程層、區域排程層、以及指令執行排程層在內的所有層均包含硬體控制器來提供具有時鐘解析度的動態排程。再者,該等全域與區域排程控制器可於計算資源分派中共同合作。圖3為利用和全域散布器12、執行單元15、固定功能硬體與快取單元內存21、以及共同I/O服務與大量快取存儲器23相關的額外作業單元來顯示圖1的對象導向架構模型10的示意圖。如圖3所示,全域散布器12包含一基礎對象表41(一含有基礎元素的對照值的表)、一頂點描述符表43(所有執行單元中的頂點分派)、以及一輸入頂點緩衝器與索引緩衝器46。如上討論般,全域散布器12系主要的上層排程單元,其可利用該等執行單元的狀態信息及接收自該等固定功能硬體與快取單元內存21的數據將工作量分散給所有的執行單元15、17、19。如圖4所示,全域散布器12可與該等執行單元的區域隊列-隊列快取控制器51進行互動以產生新本體,進而送入一邏輯管線中。全域散布器12會控制所有執行單元間的數據分散作業,並且運用「生產者一消費者」數據參考的區域性原理。以一非限制性範例為例,全域散布器12會試圖利用複數個相關的三角形本體來分派複數個頂點本體,並且從一特殊的三角形將複數個像素封包分配給一具有三角形本體數據的執行單元。假使此特殊的執行單元不具有足夠資源供分派的話,便可將頂點或三角形數據拷貝至另一執行單元,三角形或像素本體可能已經於該處被傳送。於至少一非限制性範例中,全域散布器12可接收至少四種輸入要求,用以於該等執行單元中安排處理。首先,全域散布器12可接收一頂點封包,由輸入頂點緩衝器與索引緩衝器46產生。其次,全域散布器12可接收一三角形封包,由三角形組合硬體產生。全域散布器12還可接收由像素封包器50產生的一像素封包(於至少一非限制性範例中可高達16個像素),像素封包器50可為固定功能硬體與快取單元內存21的一邏輯組件。以一非限制性範例為例,全域散布器12可接收BEZIER貼片(於至少一非限制性範例中為16個頂點),由輸入頂點緩衝器與索引緩衝器46產生。對全域散布器12可接收的每種數據來說,全域散布器12可維持及監督該對象導向架構模型10中每個執行單元的各種控制信息。於此非限制性範例中,如圖3所示,該對象導向架構模型10包含執行單元15、17、19、48以及49。不過,熟習本技術的人士將知悉,可依照預期的應用而含有更多或較少的執行單元。不過,如上述,全域散布器12會保留至少和任何特定時刻中可用執行單元數量有關的信息。此外,全域散布器12還會保留必須為某種特殊類型的新本體釋放的最小資源量有關的信息,其可由一外部驅動器來設定。全域散布器12還會在接收某項特殊資源方面建立每個執行單元的優先權。於至少一非限制性範例中,可針對特定類型的數據及/或本體以專屬的執行單元來配置對象導向架構模型10。因此,於此實例中,全域散布器12可知悉該些專屬性,以便將特殊數據分配給該些專屬本體以進行處理。全域散布器12還保有和欲被處理及欲被拷貝至該執行單元中的數據大小有關的數據,以及保有和該數據或本體有關的優先權信息。全域散布器12可能還保有數據布置偏好。以一非限制性範例為例,雖然頂點對象並無任何數據布置偏好,不過,三角形則可能以它們的頂點來建構為宜,而像素則以該等三角形來建構為宜,所以便構成數據布置偏好。因此,於此情況中,全域散布器12保有此信息以進行更有效的處理。全域散布器12包含一基礎對象表41。每個三角形均會取得其基礎ID,當分派該三角形本體時,其便會被儲存於該基礎對象表41之中。於此非限制性範例中,該基礎對象表41有兩欄基礎ID(PrID)與執行單元#,執行單元#對應的為分派該三角形本體處的執行單元編號。傳送自固定功能硬體與快取單元內存21的像素封包載有一三角形ID,其可用來於該基礎對象表41中進行查找,以便決定原始的三角形本體的邏輯位置。全域散布器12還包含一頂點描述符表43,該表為一供所有執行單元15、17、19、48及49使用的全域頂點登記表(圖3)。頂點描述符表43含有和每個八(或是由一執行單元的SIMD係數所定義的任意數)頂點群的位置有關的記錄或信息,其可能內含於正欲進行處理的頂點封包之中。於至少一非限制性範例中,該頂點描述符表43可能含有約256筆記錄,其包含欄位名稱、欄位長度、欄位來源,以非限制性範例為例,其來源可能為全域散布器12、頂點描述符表43控制、或是某個特殊執行單元中的隊列快取控制器51。頂點描述符表43亦保有該等特殊記錄的目的地信息以及和該特殊數據域位有關的描述信息。當收到一頂點封包時,該頂點描述符表43可配合輸入頂點緩衝器與索引緩衝器46來運作。全域散布器12會產生一頂點本體,並且於該輸入頂點緩衝器與索引緩衝器46及所分派的執行單元內存之間開始進行傳輸,更詳細的說明如下。以一非限制性範例為例,假使進入的封包並不適合執行單元群(其包含圖3的執行單元15、17、19、48及49),那麼全域散布器12便可能不會承認有收到此數據,直到全域散布器12能夠正確地分派具有足夠資源(例如內存空間)的特殊執行單元為止。於此實例中,對一特定的頂點封包來說,全域散布器12可被配置成用以實施各種動作。首先,全域散布器12可利用其資源需求/分派信息來尋找一合宜的執行單元(例如執行單元17),如上述。或者,全域散布器12可將一要求傳送給一特殊的執行單元(例如執行單元49),用以分派一本體給所收到的頂點封包。假使所收到的頂點封包並未經過索引編排,那麼全域散布器12便可於輸入頂點緩衝器與索引緩衝器46中為它產生一個索引。此外,全域散布器12還可於頂點描述符表43中由一特殊執行單元來分派一登錄項,並且於該登錄項中填入該本體的索引與編號。最後,全域散布器12可指示執行單元數據管理移動機制52將數據移到該執行單元中的預期位置處進行處理。假使全域散布器12接收到一不適於某個特殊執行單元群的三角形封包而非一頂點封包的話,那麼該全域散布器12便可利用該資源需求/分派信息來尋找一合宜的執行單元,如同上面針對頂點封包所述。或者,全域散布器12可於利用該三角形的頂點的索引時,檢索該等本體編號並且抽出該等垂直元素編號。全域散布器12可將一要求傳送給一執行單元(例如執行單元19),用以分派一本體給該三角形封包。而後,全域散布器12便可將該等頂點的本體編號與該等元素編號(1至8)傳送給該特殊的執行單元,例如此非限制性範例中的執行單元19。對被全域散布器12所收到的一特定像素封包來說,全域散布器12可利用該資源需求/分派信息來尋找一合宜的執行單元,如同上面針對三角形封包及頂點封包所述。或者,全域散布器12可將一要求傳送給一特殊的執行單元,用以分派一本體給該像素封包。於此實例中,全域散布器12可將該些像素所屬的三角形的本體編號及它們的元素編號傳送給該執行單元以作進一步的處理。雖然到目前為止,本文的重點均放在全域散布器12及其功能上面;不過,現在會將重點放在該群執行單元以及它們與該全域散布器12的通信方式及彼此平行運作方式上面。每個執行單元皆含有一隊列快取控制器(QCC)51。隊列快取控制器51可於資料流處理中提供分級,並且將數據鏈路至數值與邏輯處理器,例如以供進行浮點及整數計算。隊列快取控制器51可幫助管理一邏輯圖形管線,其中於每一級的處理中均會產生或轉換數據本體。如本文所述,隊列快取控制器51包括一本體描述符、一級剖析器、以及一地址更名邏輯表單元。(下文將說明且圖解額外的QCC組件。)對執行單元15來說,雖然圖中所示的隊列快取控制器的組件符號為51,不過圖3中所示的其餘執行單元亦相同。隊列快取控制器51具有專屬的硬體針對各數據處理級來管理邏輯FIFO,並且用以將各級連結在一起,更詳細的討論如下。隊列快取控制器51為執行單元15的區域組件,圖3中所示的其它QCC則為其個別執行單元的區域組件。依此方式,每個QCC均具有和其它執行單元的隊列有關的全域參考值,以便於由全域散布器12進行配置時來支持全域排序。隊列快取控制器51中的邏輯電路可促使數據管理移動機制52經由其各級在該執行單元間移動數據及/或將數據移動至其它的組件,如圖3中所示的其它執行單元17、19、48或49。隊列快取控制器51包含一區域快取存儲器54。於至少一非限制性範例中,區域快取存儲器54中的數據並不會被傳送至任何的實體FIFO。取而代之的所有的FIFO具有和各對象相關的內存參考值的邏輯組件。以一非限制性範例為例,和頂點封包有關的頂點數據可保留在該區域快取存儲器之中直到該頂點數據被處理為止;或是可刪除或被拷貝至相關的三角形本體以供進一步處理,不過,該頂點數據則不會保留在區域快取存儲器54之中。隊列快取控制器51還包含一執行緒控制器56,其可支持多重執行緒處理並且能夠執行四或更多個現役執行緒,所以可於執行單元層中在SIMD流類型執行上提供MIMD。雖然下文將額外詳細說明,不過,隊列快取控制器51可與一流動數值管線及相關的緩存器單元57進行通信,該流動數值管線及相關的緩存器單元57可同時執行浮點及整數指令,其可於該SIMD流中處理多個數據項。如圖3所示,於此非限制性範例中,固定功能硬體與快取單元內存21包括具有良好定義功能的大部份專屬固定功能單元。於至少一非限制性範例中,固定功能硬體與快取單元內存21包含一像素封包器50;一微片旁通式隊列61;以及一重排序緩衝器63,其具有一輸出微片產生器64(像素解封包器)。像素封包器50可被配置成用以於該執行單元中減低稀疏微片處理中的粒度損失。微片旁通式隊列61可被配置成用以保有所有的微片像素屏蔽(tilepixelmarks),同時可於該執行單元群中處理其它微片上的像素。另外,輸出微片產生器64可被配置成用以使用該微片像素屏蔽來對於該執行單元群中被收到的像素信息進行解封包。重排序緩衝器63會還原被傳送至該執行單元群的該等像素封包的原來順序,因為其亦可以亂序方式來處理。圖4為圖3的執行單元15(或是圖3的任何其它執行單元)的隊列快取控制器51的示意圖,圖中還顯示額外的組件。於此非限制性範例中,隊列快取控制器51包含一通信單元71,該通信單元71具有一輸入73部份及一輸出75部份,其中可從其它執行單元中接收數據及其它信息及/或將數據及其它信息輸出至一不同的執行單元及/或全域散布器12。通信單元71包含一通信控制器77,其可通過CTRL總線79與數據管理移動機制52來交換數據。數據亦可由CTRL總線79傳送至本體描述符表78,該本體描述符表78會被配置成用以含有和已分配封包的資料關係、分派情形、就緒情形、以及目前處理級有關的信息。本體描述符表78包含複數個實體描述器(descriptors),用以儲存和每個本體相關的數據及各種常數。於至少一非限制性範例中,本體描述符表78可能含有由至少兩種類型組成的高達256筆記錄,其包含一實體緩衝器登錄項及一本體登錄項。一虛擬圖形管線所使用的所有邏輯電路FIFO均可利用該本體描述符表78及具有一級指針表83的級剖析器82來設計。於至少一非限制性範例中,本體描述符表78可依據一CAM(內容尋址式內存)並且使用二至三個欄位來進行關聯性查找。以一非限制性範例為例,該等欄位可能包含一由八位字節成的本體編號欄位以及一由四位字節成的邏輯訊框編號欄位。依此方式,本體描述符表78可視為一完整的關聯性快取存儲器,其具有額外的控制狀態機用以於每個時鐘循環處依照該等執行單元中的狀態來更新部份欄位。級剖析器82包含一級剖析器表,於一圖形處理非限制性範例的邏輯管線中,該表含有每個處理級的指針,如第5圖至第9圖所示且下文將作討論。級指針實際上會指向每一級中下一次欲處理的本體。於至少一非限制性範例中,和每一級相關的處理有兩種數值處理,以及I/O或數據移動處理。級剖析器82的級剖析器表中內含的該等指針可用來選擇具有一執行緒微程序的複數個用戶描述符。當級剖析器82的級剖析器表產生一指向某個特殊本體的動態指針時,本體描述符表78中內含的用戶描述符表信息便會被加載執行緒控制器56之中以供進行數值級處理,如上述,其可能包含浮點指令與整數指令。級指針表中的每一級均具有一指向描述符表中某項記錄的靜態指針,其定義著該執行緒微碼開始地址及複數個執行緒參數。或者,於I/O處理的情況中,級剖析器82的級指針表83可產生一指針給I/O和數據移動程序描述符表供數據管理移動機制52來運用。雖然圖4中未顯示,不過,級剖析器82實際上包含一控制器,其可於每個時鐘循環處檢查本體描述符表78中該等本體的狀態,使可逐級處理該等本體。當隊列快取控制器51運作以將數據傳送給另一執行單元(例如執行單元19)時,該級剖析器表便可產生一和變動數據移動處理相關的指針值,該值會被傳送至I/O及移動描述符緩存器表85。變動數據傳輸要求會從I/O及移動描述符緩存器表85被傳送至數據管理微程序內存87,該數據管理微程序內存87會發出一指令給數據管理移動機制52用以存取快取存儲器88中的該特殊數據並且將該數據傳送至指定的內存位置。於級剖析器82的級剖析器表涉入某個本體的數值處理過程的情況中,該級剖析器82的級剖析器表便會產生一指針值用於執行數值處理,該指針值則會被傳送至該數值處理描述符緩存器表91。該數值處理描述符緩存器表91會與執行緒控制器56進行通信,用以實行和該數值處理相關的浮點或整數指令。地址更名邏輯表單元94含有地址更名信息,該信息可用於提供該等實體緩衝器至該等快取存儲器線88的彈性映像,其說明同上。該邏輯更名表具有一或多個控制器,用以操作及更新該表。該地址更名邏輯表單元94可對區域快取存儲器提供虛擬類型存取。更明確地說,該地址更名邏輯表單元94會將一實體緩衝器編號轉換成一快取地址。熟習本技術的人士將會明白,該邏輯表可被配置成以和虛擬內存系統中的轉換後備緩衝器(translationlook-asidebuffer,TLB)雷同的方式來運作。數據管理移動機制52負責加載所有的數據且移進該執行單元之中並且負責與全域散布器12進行互動,而對固定功能硬體與快取單元內存21中的所有其它執行單元亦同,如圖1所示。於至少一非限制性範例中,假使數據未被儲存於該執行單元的快取存儲器88之中及/或未被加載該等緩存器(例如本體描述符表78)之中的話便將不會處理一執行緒。就此而言,數據管理移動機制52會與本體描述符表78互動以獲取該表中的本體的狀態,以便提供外部要求的數據給執行單元15,例如供全域參考之用。以一非限制性範例為例,假使於第一執行單元中處理一三角形的其中一個頂點的話,對三角形處理用途而言,該特殊的執行單元可能會試圖將此頂點信息拷貝至正在處理該三角形的其餘頂點或是該三角形的其餘頂點所在的一或多個其它執行單元。依此方式,數據管理移動機制52便可讓該特殊執行單元與全域資源進行所有的互動,如圖1所示。圖5為於一頂點處理序列中圖1的對象導向架構模型10的執行示意流程圖。對該等頂點對象來說,會參考一可能相同的「本體」。邏輯電路FIFO並不必實體均等,因為本體一旦產生之後,便不會改變它們在該內存中的位置。取而代之的,級剖析器82會使用指針來確認某個本體,以便將該本體從其中一種狀態推入另一種狀態。如圖5的非限制性範例所示,全域散布器12會通過圖3的輸入頂點緩衝器與索引緩衝器46將一頂點處理序列的幾何流傳送給數據管理移動機制52。該全域散布器12的頂點描述符表43會傳送一本體分派要求,並且於該頂點描述符表43中登記該本體。繼續停留在級0中,該執行單元的隊列快取控制器51會於快取存儲器88中分派該本體,並且於本體描述符表78中建立一本體描述符表項。雖然已經分派此本體,不過如級0中所示,亦可於快取存儲器88之中為該本體建立複數條快取線。於此作業期間,該執行單元的執行緒控制器與數值管可能正在執行其它的執行緒,如級0中所示。級1中,於級剖析器82找到欲儲存在快取存儲器88之中的頂點本體時,便可進行頂點幾何批次數據加載。於此作業中,級剖析器82會指示數據管理移動機制52為快取存儲器88取得該頂點幾何數據。級2中,如圖5所示,可依照級剖析器82來存取被加載快取存儲器88之中的幾何數據,以便讓執行緒控制器56及數值管可於此非限制性範例中依照轉換描影程序來實施運算。級2中所生成的數據可於進行級3中的作業以前再次被儲存於快取存儲器88之中。級3中,由級剖析器82指示數據管理移動機制52將頂點屬性批次數據置入快取存儲器88之中便可加載該數據,如級3所示。此時,級3中,該執行單元的執行緒控制器56及數值管可能正在執行其它的執行緒。級4中,該隊列與快取控制器的級剖析器82可指示傳輸該等已轉換的幾何與未經處理的屬性,使其可實施屬性轉換與照明描影運算。所生成的數據可再次被儲存於快取存儲器88之中,如級4至級5所示。級5中,於從級剖析器82中收到該頂點本體的指針時,執行緒控制器56及數值管便可對快取存儲器88中已經過轉換的數據進行額外的後描影運算。於離開該後端描影器時,如圖6的級5中所示,所生成的頂點數據會再次被置放於快取存儲器88之中,接著便會由數據管理移動機制52將其傳送給任一其它的執行單元或全域散布器12可指揮的已分配內存位置。級5的結果為級剖析器82會發出一刪除本體命令給該本體描述符表,以便刪除此次作業的頂點本體ID。即,可從頂點隊列中刪除該本體參考值,不過,該頂點數據仍然留在快取存儲器88之中,以便供三角形本體用於進行其它的處理作業,其說明如下。視欲被執行的微指令及欲被移動的數據大小而定,上述的六級中的每一級均可能發生在數個循環中。圖6與圖7為圖1對象導向架構模型10的三角形處理序列的對象導向架構互動示意圖。級0中,全域散布器12可通過數據傳輸通信系統13總線來與數據管理移動機制52進行通信,同時還會分派該三角形本體要求並且於該頂點描述符表43中登記該項要求。該項三角形本體產生處理會在執行單元隊列快取控制器51中繼續執行,其方式為在本體描述符表78中分派該本體並且於快取存儲器88中為該等三角形頂點索引及幾何數據分派一內存空間。此時,級0中,執行緒控制器56及數值管可能正在執行其它的執行緒。級1中,級剖析器82可能會指向級0中所分派的三角形本體,並且會指示數據管理移動機制52接收該三角形幾何數據,該數據可被拷貝至快取存儲器88並且於本體描述符表78中進行參考,如級1所示。然而,此時,執行緒控制器56及數值管可能仍然正在執行其它的執行緒。級2中,級剖析器82可將快取存儲器88中已加載的三角形幾何數據傳送至具有執行緒控制器56的數值管之中,用以於此非限制性範例中進行隱面消除(backfaceculling)。所生成的數據可被儲存於快取存儲器88之中,如級2所示,而經過更名的三角形本體ID則會保留在本體描述符表78之中。級3中,具有執行緒控制器56的數值管可對該等頂點數據本體進行處理,如上述,其可能系起因於該級剖析器82參考該本體描述符表78的結果,使該數據管理移動機制52將該地址信息傳送給可能正在處理該等頂點本體的另一個執行單元。級4中(圖7),目前被儲存在快取存儲器88之中的該等三角形頂點屬性會透過執行緒控制器56在數值管中被執行以便實施三角形修剪試驗/分割作業。同樣地,所生成的資料可被儲存於快取存儲器88之中,而已被隊列的登錄項則仍然保留在本體描述符表78之中。繼續此非限制性範例,級5作業包含級剖析器82將該本體描述符表78與執行緒控制器56及數值管中的某項小型三角形作業以及某個單像素三角形設定作業產生關聯。快取存儲器88會儲存和單像素三角形及少於一個像素的三角形有關的數據。如級6所示,和該等三角形有關的生成數據會於本體描述符表78中被參考,因而可由級剖析器82將一角落傳送至數據管理移動機制52。即,可由數據傳輸通信系統13總線將該生成的三角形幾何數據轉送至該全域散布器12或是轉送至另一執行單元以供進一步處理。如上述,視欲被執行的微指令的數量及欲移動的數據大小而定,每一級可能會耗用數個時鐘循環。圖8與圖9為像素處理序列中該對象導向架構模型10的互動示意圖。如圖8所示,圖1的對象導向架構模型10的全域資源可於級0中在全域散布器12的輸入頂點緩衝器與索引緩衝器46中建立一輸入像素本體。此本體產生作業亦會發生於隊列快取控制器51之中,以便於本體描述符表78中產生一像素本體ID以及於快取存儲器88中分派像素內存,如級0所示。此時,執行緒控制器56及數值管可能正在執行其它的執行緒。不過,級1中,級剖析器82會透過其級剖析器表於該本體描述符表中檢索該像素本體ID,以便將快取存儲器88中的該像素數據傳送至執行緒控制器56及該數值管,用以於此非限制性範例中進行像素內插設定運算。所生成的數據會被送回快取存儲器88之中,作為像素內插參數。另外,級剖析器82會於級1中提示該和此經更改數據有關的像素本體ID。級2中,級剖析器82會於本體描述符表78中檢索該像素本體ID,以便將快取存儲器88中的該等像素內插參數傳送至數值管中的執行緒控制器56,用以進行Z內插運算。所生成的經更改數據會被送回快取存儲器88之中,而級剖析器82則會將該像素本體ID隊列排列於本體描述符表78之中。不過,於一非限制性的替代具體實施例中,假使利用固定功能硬體與快取單元內存21來進行Z內插的話,那麼便可省略級2。於此非限制性範例中,像素封包器50接著便可直接從該Z內插單元(圖中未顯示)中接收數據。繼續參考此非限制性範例,可利用該數據傳輸系統來傳送該像素本體ID,用以依照該級剖析器與該數據管理移動機制的指示來接收像素XYZ及經屏蔽數據。此時,執行緒控制器56可能正在執行其它的執行緒。級4中(圖9),級剖析器82可獲取該像素本體ID,以便對快取存儲器88中的數據實施紋理內插運算,其可能包括X、Y、Z的再包裝內插參數及屏蔽數據信息。經此作業之後,級4便可將像素封包數據儲存於快取存儲器88之中。在將經處理信息轉送至其它執行單元以於級5中進行處理時可由數據傳輸通信系統13來接收紋理地址數據。視紋理的數量及像素描影器的複雜度而定,可以任意順序來複製級4、5、6。然而,如級6所示,可於紋理過濾及/或像素描影運算中的顏色內插中來變更快取存儲器88中的像素封包數據,其方式如上述。於最後一級中,如第9圖所示,級剖析器82會將該像素本體ID導向數據管理移動機制52,以便從該執行單元中轉送最後的像素數據以供進一步處理及/或顯示。如上所述,該全域散布器12可分派一頂點、三角形和/或像素本體到一個或多個執行單元中進行處理,然而當上述的該全域散布器12分派一頂點、三角形和/或像素本體到一個或多個執行單元時,至少有另一種實施例為該全域散布器12根據先前決定之偏好來做分派。圖10為一非限制性範例示意圖101,圖中描繪的為於該全域散布器12及圖1的執行單元之間分派一三角形本體。圖10中,於步驟S104處會在全域散布器12中收到一描繪(draw)命令,其會促使該全域散布器12去檢查該三角形輸入封包。假使該三角形輸入封包含有索引的話,便可於全域散布器12中執行步驟S106,以便針對所收到的三角形封包來存取頂點描述符表43。假使全域散布器12判斷出該等和該三角形封包相關的頂點位於其中一執行單元中的話,全域散布器12便可產生一區域參考值(步驟S108);不過,假使全域散布器12判斷出該等和該三角形封包相關的頂點位於多個執行單元中的話,全域散布器12便可產生一全域參考值(步驟S109),以便能夠平行安排該等多個執行單元中的數據處理。接著,視該等頂點究竟系位於其中一個或是複數個執行單元中而定,全域散布器12會從步驟S108或步驟S109前進至步驟S115,該步驟可運作用以定義執行該三角形封包所需要的最小資源數量。除了源自步驟S104的該等索引以外,步驟S115中還會考慮到數據,使其可為該三角形封包分派正確的資源數量。另外,步驟S115中還會考慮到數據和用於執行該三角形封包的邏輯訊框結構有關的數據。如步驟S115所示,於確定供執行用的最小資源數量後,該全域散布器12便會於步驟S118處產生一本體分派要求。此本體分派要求包含步驟S115處所產生的欲被拷貝的數據量,以及同樣源自步驟S115的內存覆蓋範圍。本體分派要求步驟S115還可接收一份經定義的候選執行單元清單,用於接收該本體分派要求,以及欲被執行的本體類型的優先權索引。如步驟S120所示,全域散布器12會檢查第一候選執行單元的狀態,其可依照步驟S111中定義的候選執行單元清單及/或和欲被執行之本體類型有關的優先權。假使該第一候選執行單元為該經分派本體的可用資源相配者的話,全域散布器12便會傳送一本體分派要求給該第一執行單元,如步驟S126所示,而後便會等待於完成之後接收該執行單元的結果。於該本體被分派之後,全域散布器12便會返回步驟S104,用以接收一下一個三角形描繪命令。不過,假使該第一候選執行單元並非步驟S118中所分派的本體的可用資源相配者的話,那麼全域散布器12便會尋求第二候選執行單元,如步驟S122所示。假使此第二候選執行單元為可用資源相配者的話,便會執行步驟S126,如上述。不過,假使該第二候選執行單元並非相配者的話,那麼全域散布器12便會尋求第三候選執行單元,如步驟S124所示。視此單元是否為相配者而定,全域散布器12可能會尋求一或多個額外的候選執行單元,直到發現適當的候選相配者以便分派欲進行處理的本體為止。熟習本技術的人士將會了解,圖10中所述的過程不僅適用於三角形封包,亦適用於頂點封包及像素封包。不過,於每種實例中,全域散布器12均會如上述般地選擇一候選執行單元。當然,本發明還可有其它多種實施例,在不背離本發明精神及其實質的情況下,熟悉本領域的技術人員當可根據本發明作出各種相應的改變和變形,但這些相應的改變和變形都應屬於本發明所附的權利要求的保護範圍。權利要求1.一種具有一散布器的平行圖形處理器,所述散布器會被耦合至複數個指令執行組件,其特徵在於,所述散布器包括用於保有每個所述複數個指令執行組件中每一狀態信息的邏輯電路;用於依照所保有的狀態信息及欲被處理的圖形本體類型來建立所述複數個指令執行組件中每一優先權的邏輯電路,以便接收欲被處理的圖形本體;用於將一要求傳送給所述複數個指令執行組件中其中一選定指令執行組件的邏輯電路,以便於所述選定指令執行組件的本體描述符表中分派所述欲被處理的圖形本體;用於將與欲被處理的圖形本體相關連的數據拷貝至所述選定指令執行組件的邏輯電路;用以於一邏輯表中對將欲被處理至邏輯表中的所述選定指令執行組件的圓形本體進行索引編排的邏輯電路;以及用於從已經處理過所述欲被處理的圖形本體的所述選定指令執行組件中接收指示符號的邏輯電路,其中接著便會於一顯示器上表現圖形影像並且釋放和所述圖形本體相關聯的資源。2.根據權利要求1所述的具有一散布器的平行圖形處理器,其特徵在於,所述所保有的狀態信息包含和為接受所述散布器的分配的所述指令執行組件的可用性相關聯的數據。3.根據權利要求1所述的具有一散布器的平行圖形處理器,其特徵在於,進一步包括用於決定為處理所述欲被處理的圖形本體而要存取的資源數量的邏輯電路。4.根據權利要求1所述的具有一散布器的平行圖形處理器,其特徵在於,所述欲被處理的圖形本體為一頂點封包,所述散布器進一步包括用於在所述散布器的頂點描述符表中分派一本體的邏輯電路;以及用於利用和所述欲被處理的圖形本體相關聯的一索引及一編號將所述經分派的本體填入所述頂點描述符表之中的邏輯電路,所述編號由所述選定指令執行組件來分派。5.根據權利要求4所述的具有一散布器的平行圖形處理器,其特徵在於,所述頂點描述符表含有和所述頂點封包中內含的某群頂點的邏輯位置相關聯的記錄,所述邏輯位置對應於用來處理所述頂點封包中所述群頂點的一或多個指令執行組件中的每一個。6.根據權利要求4所述的具有一散布器的平行圖形處理器,其特徵在於,所述頂點描述符表保有和一頂點封包的目的地信息相對應的數據。7.根據權利要求1所述的具有一散布器的平行圖形處理器,其特徵在於,所述欲被處理的圖形本體為一三角形封包,所述散布器進一步包括用於使用和所述三角形封包相關聯的複數個頂點的索引的邏輯電路;用於檢索所述複數個頂點的本體編號的邏輯;用於抽出和所述複數個頂點相關聯的垂直元素編號的邏輯電路;以及用於將所述複數個頂點的所述複數本體編號及所述複數元素編號傳送給所述選定指令執行組件的邏輯電路。8.根據權利要求7所述的具有一散布器的平行圖形處理器,其特徵在於,所述散布器會將地址信息傳送給所述被分配用來處理所述圖形本體的選定指令執行組件,所述地址信息對應於被分配用來處理和所述一或多個三角形封包相關聯的頂點數據的一或多個其它指令執行組件。9.根據權利要求1所述的具有一散布器的平行圖形處理器,其特徵在於,所述欲被處理的圖形本體為一像素封包,所述散布器進一步包括用於將與所述像素封包相關聯的一或多個三角形的本體編號及元素編號傳送給所述選定指令執行組件的邏輯電路。10.根據權利要求1所述的具有一散布器的平行圖形處理器,其特徵在於,所述散布器會依照所述預設的優先權將所述要求傳送給作為第一候選執行組件的選定指令執行組件,且其中假使所述第一候選執行組件不接受所述要求的話,所述散布器便會將所述要求傳送給作為接續候選執行組件的選定指令執行組件。11.根據權利要求1所述的具有一散布器的平行圖形處理器,其特徵在於,所述散布器會依照所述預設的優先權將所述要求傳送給作為下一個候選執行組件的一或多個指令執行組件,直到所述一或多個指令執行組件中至少其中之一接受所述要求為止。12.一種用於具有一散布器的平行圖形處理器的方法,所述散布器會被耦合至複數個指令執行組件用以處理複數個圖形本體,其特徵在於,包括如下步驟收集所述複數個指令執行組件中每一狀態信息;依照所保有的狀態信息及欲被處理的圖形本體類型來建立所述複數個執行單元中每一優先權,以便接收欲被處理的圖形本體;將一要求傳送給所述複數個指令執行單元中之一選定指令執行組件,以便於所述選定指令執行組件的本體描述符表中分派所述欲被處理的圖形本體;將與欲被處理的圖形本體相關連的數據拷貝至所述選定指令執行組件;於一邏輯表中對將欲被處理的圖形本體分配至所述選定指令執行組件進行索引編排;以及從已經處理過所述欲被處理的圖形本體的所述選定指令執行組件中接收指示符號,其中接著便會於一顯示器上表現圖形影像。13.根據權利要求12所述的用於具有一散布器的平行圖形處理器的方法,其特徵在於,所述所收集的狀態信息包含和為接受所述散布器的分配的所述指令執行組件的可用性相關聯的數據。14.根據權利要求12所述的用於具有一散布器的平行圖形處理器的方法,其特徵在於,進一步包括下面步驟決定為處理所述欲被處理的圖形本體而要存取的資源數量。15.根據權利要求12所述的用於具有一散布器的平行圖形處理器的方法,其特徵在於,所述欲被處理的圖形本體為一頂點封包,所述方法進一步包括下面步驟在所述散布器的頂點描述符表中分派一本體;以及利用與所述欲被處理的圖形本體相關聯的一索引及一編號將所述經分派的本體填入所述頂點描述符表之中,所述編號由所述選定指令執行組件來分派。16.根據權利要求15所述的用於具有一散布器的平行圖形處理器的方法,其特徵在於,所述頂點描述符表含有和所述頂點封包中內含的某群頂點的邏輯位置相關聯的記錄,所述邏輯位置對應於用來處理所述頂點封包中所述群頂點的一或多個指令執行組件中的每一個。17.根據權利要求12所述的用於具有一散布器的平行圖形處理器的方法,其特徵在於,所述欲被處理的圖形本體為一三角形封包,所述方法進一步包括下面步驟使用與所述三角形封包相關聯的複數個頂點的索引;檢索所述複數個頂點的本體編號;抽出與所述複數個頂點相關聯的垂直元素編號;以及將所述複數個頂點的所述本體編號及所述元素編號傳送給所述選定指令執行組件。18.根據權利要求17所述的用於具有一散布器的平行圖形處理器的方法,其特徵在於,所述散布器會將地址信息傳送給所述被分配用來處理所述圖形本體的選定指令執行組件,所述地址信息對應於被分配用來處理和所述一或多個三角形封包相關聯的頂點數據的一或多個其它指令執行組件。19.根據權利要求12所述的用於具有一散布器的平行圖形處理器的方法,其特徵在於,所述欲被處理的圖形本體為一像素封包,所述方法進一步包括下面步驟將與所述像素封包相關聯的一或多個三角形的本體編號及元素編號傳送給所述選定指令執行組件。20.根據權利要求12所述的用於具有一散布器的平行圖形處理器的方法,其特徵在於,進一步包括下面步驟依照所建立的優先權將所述要求傳送給作為下一個候選執行組件的一或多個選定指令執行組件,直到所述一或多個選定指令執行組件中至少其中之一接受所述要求為止。全文摘要本發明揭示一種具有一散布器的平行圖形處理器,該散布器會被耦合至複數個執行組件。該散布器會保留該等複數個執行組件中每一個的狀態信息,並且建立該等複數個執行單元中每一個接收欲被處理的圖形實體的優先權。可依照所保留的狀態信息以及預被處理的圖形實體來排列該等優先權。該散布器會將一要求傳送給一選定執行組件,用以於其本體描述符表中分派該欲被處理的圖形本體並且將圖形本體數據拷貝至該選定執行組件。該散布器會於其邏輯表中對該圖形本體的分配結果進行索引編排,接著便會從該選定執行組件中接收指示符號,表示該圖形本體已經過處理。而後便可於一顯示器上表現圖形影像。文檔編號G06F9/38GK1912924SQ20061005824公開日2007年2月14日申請日期2006年2月28日優先權日2005年8月8日發明者貼木耳·培特基夫,伯瑞斯·波羅克潘克,德瑞克·葛萊登申請人:威盛電子股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀