亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

光柵化的方法和系統(tǒng)的制作方法

文檔序號:6609321閱讀:320來源:國知局
專利名稱:光柵化的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及半導(dǎo)體制造的領(lǐng)域。明確地說,本發(fā)明涉及一種用于動態(tài)地配置集成電路內(nèi)的功能組件的操作特征的系統(tǒng)和方法。
背景技術(shù)
電子系統(tǒng)和電路已為現(xiàn)代社會的進(jìn)步作出了顯著貢獻(xiàn),且用于許多應(yīng)用中以實(shí)現(xiàn)有利的結(jié)果。例如數(shù)字計算機(jī)、計算器、音頻裝置、視頻設(shè)備和電話系統(tǒng)的許多電子技術(shù)已促進(jìn)了生產(chǎn)力增加以及分析和傳遞大多數(shù)商業(yè)、科研、教育和娛樂領(lǐng)域的數(shù)據(jù)的成本降低。提供這些有利結(jié)果的電子系統(tǒng)通常包含集成電路。需要利用具有非常高可靠度的特征的集成電路來防止錯誤的結(jié)果。然而,設(shè)計和構(gòu)建具有各種功能性和性能特征的集成電路具有挑戰(zhàn)性。另外,構(gòu)建集成電路的制造過程非常復(fù)雜且資源密集。
制造集成電路是一項(xiàng)昂貴的、資源密集的活動,其中在單一集成電路單元中包含許多計算組件。通常需要計算組件能夠以非常高的可靠度來執(zhí)行多種任務(wù)。各種應(yīng)用通常需要不同的性能水平和功能性。傳統(tǒng)上,用提供設(shè)定的功能性的預(yù)定數(shù)量的適當(dāng)運(yùn)作的組件來制造每一電路小片。然而,以可接受的可靠度提供適當(dāng)且有效的功能性通常較困難。舉例來說,許多傳統(tǒng)的方法需要集成電路中包含有極少或沒有具有缺陷的組件。
按照慣例,在包括許多電路小片的晶片中制造集成電路,其中每一電路小片包括具有許多功能組件的集成電路。來自給定晶片的功能上可接受的電路小片的數(shù)目稱為晶片的良率。需要維持相對較高的良率以便消除浪費(fèi)、節(jié)省成本并加速給定數(shù)目的電路小片的有效制造時間。具有擁有大量組件的高性能電路小片的晶片的良率可能非常低。
存儲器芯片制造者所使用的一種減輕集成電路小片內(nèi)出現(xiàn)有缺陷組件的影響的方法是,產(chǎn)生具有比所需多的組件(例如,存儲器單元)的電路小片。如果存在有缺陷的組件,那么將所述有缺陷的組件斷開連接并利用“剩余”組件中的一者。此方法通常導(dǎo)致浪費(fèi)相當(dāng)多的寶貴的電路小片面積和資源來制造即使在替換有缺陷的組件之后也仍有“剩余”的組件。這些剩余的組件對于功能性和/或操作上的生產(chǎn)力并無幫助。大量電路小片結(jié)果是,有具有極佳操作能力的許多“剩余”的組件未被利用。
解決有缺陷的組件的另一傳統(tǒng)嘗試是,如果與特定功能相關(guān)聯(lián)的一個功能組件有缺陷,那么去除功能能力。舉例來說,如果處理器的浮點(diǎn)加速組件有缺陷,那么使用常規(guī)修復(fù)技術(shù)來去除或禁用浮點(diǎn)加速功能性,且處理器變?yōu)榉歉↑c(diǎn)加速處理器。另外,最終結(jié)果是,具有有限能力且不提供全范圍的功能性(例如,不能夠執(zhí)行浮點(diǎn)運(yùn)算)的可用的集成電路。
發(fā)明內(nèi)容本發(fā)明系統(tǒng)和方法實(shí)現(xiàn)集成電路中功能組件的配置。本發(fā)明系統(tǒng)和方法可基于多種因素來靈活地改變集成電路小片中功能組件的操作特征,所述多種因素包含制造缺陷、兼容性特征、性能要求和系統(tǒng)健康狀況(例如,適當(dāng)操作的組件的數(shù)目)。在一個實(shí)施例中,本發(fā)明配置系統(tǒng)包含功能組件、分配組件、功能組件配置控制器,且視需要包含收集組件。功能組件執(zhí)行處理操作(例如,圖形處理操作、浮點(diǎn)運(yùn)算等)。分配組件將工作流程信息(例如,圖形處理信息、浮點(diǎn)處理信息等)分配到功能組件。功能組件配置控制器配置功能組件的操作特征。收集組件從功能組件“收集”輸出或結(jié)果,并聚集操作的結(jié)果以用于實(shí)現(xiàn)共同目標(biāo)。
在一個示范性實(shí)施方案中,使對功能組件的操作特征的變化與對其它功能組件的變化協(xié)調(diào)。還基于對功能組件的操作特征的變化來調(diào)節(jié)工作流程進(jìn)度安排和分配。舉例來說,功能組件配置控制器改變操作特征設(shè)置并將改變的指示提供給工作流程分配組件。工作流程分配組件基于操作特征設(shè)置來改變工作流程進(jìn)度表。舉例來說,將工作流程轉(zhuǎn)向特定功能組件或使其轉(zhuǎn)移離開特定功能組件。
在一個實(shí)施例中,本發(fā)明系統(tǒng)和方法使具有有缺陷功能組件的集成電路芯片能夠得以廢物利用,并促進(jìn)集成電路制造過程中的晶片良率增加。傳統(tǒng)上,具有有缺陷功能組件的集成電路將另外被丟棄,從而導(dǎo)致生產(chǎn)晶片的成本被分派給較少的可接受的電路小片。在一個實(shí)施例中,本發(fā)明系統(tǒng)和方法以維持芯片的基本功能性的方式禁用電路小片中有缺陷的功能組件。
在本發(fā)明的一個實(shí)施例中,結(jié)合芯片測試來執(zhí)行集成電路廢物利用。測試芯片(例如,根據(jù)內(nèi)置自測試),并識別芯片的有缺陷的功能組件。對有缺陷的功能組件是否是不具有包含在電路小片中的另一類似的功能組件的功能組件進(jìn)行判定。在一個實(shí)施例中,對當(dāng)禁用有缺陷的功能組件時電路小片是否不具有可處理工作流程的另一功能組件進(jìn)行區(qū)分。如果識別出此有缺陷的功能組件,那么由于電路小片不能提供完全的功能性而可將所述電路小片丟棄。如果存在可用于執(zhí)行有缺陷的組件的功能性的其它功能組件,那么基于測試的結(jié)果對芯片執(zhí)行功能組件配置過程(例如,功能組件配置過程400)。
在本發(fā)明的一個實(shí)施例中,功能組件配置過程禁用包含在芯片中的有缺陷的功能組件。接收有缺陷的功能組件識別的指示。對有缺陷的功能組件是否是多個類似功能組件中的一者進(jìn)行判定。在本發(fā)明的一個實(shí)施例中,將識別出的有缺陷的組件(例如,像素遮影器、頂點(diǎn)處理器、浮點(diǎn)組件等)與可提供相同功能性的其它類似組件的列表進(jìn)行比較。在一個示范性實(shí)施方案中,檢查其它類似組件以判定其是否是有缺陷的功能組件的并行組件。如果有缺陷的功能組件是多個類似功能組件中的一者且另一組件可處理原本會被分派給有缺陷的組件的工作流程,那么禁用所述有缺陷的功能組件。在本發(fā)明的一個實(shí)施例中,也可禁用與有缺陷的組件相關(guān)聯(lián)的功能組件(例如,以維持產(chǎn)品差別化)。使工作流程轉(zhuǎn)移離開被禁用的組件。
在一個實(shí)施例中,通過向一組件提供禁用通知來實(shí)現(xiàn)工作流程的轉(zhuǎn)向,所述組件另外將信息傳遞給有缺陷的功能組件。舉例來說,禁用組件向分配器組件提供指示(例如,位圖),且分配器組件不將信息提供給有缺陷的功能組件。事實(shí)上,使工作流程轉(zhuǎn)向其它類似的功能組件。
在本發(fā)明廢物利用方法的一個實(shí)施例中,包含了針對特定性能水平的電路小片特征的定義,且相應(yīng)地對電路小片進(jìn)行標(biāo)記。在一個示范性實(shí)施方案中,測試包含指示每一性能水平內(nèi)什么樣的缺陷是許可的。舉例來說,測試可包含可禁用第一多個并行功能組件的第一性能水平,和可禁用第二多個并行功能組件的第二性能水平。本發(fā)明還可有助于基于性能水平,作為測試程序的一部分而將電路小片自動裝倉(binning)。
在一個實(shí)施例中,集中式資源用于遠(yuǎn)端集成電路的配置中。遠(yuǎn)端功能組件配置結(jié)構(gòu)有助于配置包含在定位在遠(yuǎn)端的集成電路小片中的功能組件。在一個示范性實(shí)施方案中,進(jìn)行電路小片功能組件再配置請求過程,其中系統(tǒng)請求來自遠(yuǎn)端資源的再配置代碼。所述代碼請求包含再配置代碼許可指示符,其指示請求者經(jīng)授權(quán)以接收再配置代碼(例如,請求者已進(jìn)行了必需的支付,具有授權(quán)的系統(tǒng)等)。執(zhí)行再配置代碼產(chǎn)生過程,其中接收對于再配置代碼和許可指示符的請求,分析許可指示符的有效性,并提供再配置代碼。當(dāng)電路小片接收到適當(dāng)?shù)脑倥渲么a時,對所述電路小片執(zhí)行電路小片功能組件再配置過程。
具體實(shí)施方式
現(xiàn)將具體參照本發(fā)明的優(yōu)選實(shí)施例,附圖中說明所述實(shí)施例的實(shí)例。雖然將結(jié)合優(yōu)選實(shí)施例描述本發(fā)明,但將了解,不希望其將本發(fā)明限于這些實(shí)施例。相反,本發(fā)明希望涵蓋可包含在如所附權(quán)利要求書界定的本發(fā)明的精神和范圍內(nèi)的替代形式、修改和等效物。此外,在本發(fā)明的以下具體實(shí)施方式
中,陳述了大量特定細(xì)節(jié)以便提供對本發(fā)明的全面理解。然而,所屬領(lǐng)域的一般技術(shù)人員將了解,可在沒有這些特定細(xì)節(jié)的情況下實(shí)踐本發(fā)明。在其它例子中,未詳細(xì)描述眾所周知的方法、程序、組件和電路,以便不會不必要地混淆本發(fā)明的各方面。
依據(jù)對計算機(jī)存儲器內(nèi)數(shù)據(jù)位的操作的程序、邏輯區(qū)塊、處理和其它符號表示來呈現(xiàn)以下具體實(shí)施方式
的一些部分。這些描述和表示是數(shù)據(jù)處理領(lǐng)域的技術(shù)人員通常用來有效地將其工作的主旨傳達(dá)給所屬領(lǐng)域的其他技術(shù)人員的手段。此處,通常將程序、邏輯區(qū)塊、過程等理解為產(chǎn)生所需結(jié)果的步驟或指令的自相容序列。所述步驟包含對物理量進(jìn)行物理操縱。通常(盡管不一定),這些量采取能夠在計算機(jī)系統(tǒng)中被存儲、傳遞、組合、比較和以另外的方式操縱的電、磁、光或量子信號的形式。已證明有時(主要由于一般用途的原因)將這些信號稱為位、值、元素、符號、字符、項(xiàng)目、數(shù)字等是便利的。
然而,應(yīng)牢記,所有這些和類似術(shù)語與適當(dāng)?shù)奈锢砹肯嚓P(guān)聯(lián),且僅僅是施加于這些量的便利的標(biāo)志。從以下論述內(nèi)容了解,除非另外明確規(guī)定,否則將了解,在本申請案中,利用例如“處理”、“計算”、“判定”、顯示”等術(shù)語的論述內(nèi)容指代計算機(jī)系統(tǒng)或類似的處理裝置(例如,電、光或量子計算裝置)的動作和處理,所述類似的處理裝置操縱并變換表示為物理(例如,電子)量的數(shù)據(jù)。所述術(shù)語表示將計算機(jī)系統(tǒng)的組件(例如,寄存器、存儲器、其它此類信息存儲、傳輸或顯示裝置等)內(nèi)的物理量操縱或變換為類似地表示為其它組件內(nèi)的物理量的其它數(shù)據(jù)的處理裝置的動作和處理。


圖13A是根據(jù)本發(fā)明一個實(shí)施例的集成電路100的方框圖。集成電路100包括分配組件110、功能組件配置控制器120、收集組件140以及功能組件131、132、133和134。
分配組件110耦合到功能組件131、132、133和134,功能組件131、132、133和134耦合到收集組件140。功能組件配置控制器120耦合到分配組件110、功能組件131、132、133和134,以及收集組件140。在本發(fā)明的一個實(shí)施例中,集成電路100的組件包含在單一電路小片中。集成電路100的組件協(xié)同操作以執(zhí)行信息處理(例如,數(shù)據(jù)操縱)。在一個示范性實(shí)施方案中,集成電路100的組件執(zhí)行與共同目標(biāo)有關(guān)的信息處理(例如,與產(chǎn)生圖像相關(guān)聯(lián)的圖形管線處理)。
分配組件110將信息選擇性地分配到功能組件131-134(例如,啟用的功能組件)。應(yīng)了解,分配組件110可分配多種信息。舉例來說,分配組件110可分配工作流程信息。工作流程信息可以是用于與共同目標(biāo)相關(guān)聯(lián)進(jìn)行處理的信息或數(shù)據(jù)。舉例來說,工作流程信息可以是圖形相關(guān)信息(例如,單一信息流,其中信息流的各個部分包含針對圖像的依次配置的像素的像素信息)。在一個示范性實(shí)施方案中,分配組件110接收單一工作流程信息或數(shù)據(jù)(例如,圖形數(shù)據(jù))流,并將工作流程信息分配到功能組件131-134。舉例來說,單一信息流可包含與第一像素、第二像素和第三像素有關(guān)的信息。分配組件110接收單一像素信息流(例如,包序列)并將與第一像素有關(guān)的信息(例如,作為個別包)分配到功能組件131,將與第二像素有關(guān)的信息分配到功能組件132,并將與第三像素有關(guān)的信息分配到功能組件133。在另一示范性實(shí)施方案中,分配組件110接收與浮點(diǎn)計算有關(guān)的單一信息流,并將與第一浮點(diǎn)計算相關(guān)聯(lián)的信息分配到功能組件131,將與第二浮點(diǎn)計算相關(guān)聯(lián)的信息分配到功能組件132,并將與第三浮點(diǎn)計算相關(guān)聯(lián)的信息分配到功能組件133。在一個實(shí)施例中,分配組件110也可接收多個信息流并將信息分配到功能組件131-134。應(yīng)了解,分配組件110可實(shí)施在多種實(shí)施例中,包含其中分配組件110除了分配工作流程信息外還提供功能或執(zhí)行任務(wù)的實(shí)施例。
功能組件131-134可包含多種實(shí)施方案,其中功能組件131-134執(zhí)行不同的功能操作或任務(wù)。在一個實(shí)施例中,功能組件131-134提供類似功能性(例如,執(zhí)行并行操作)。舉例來說,在一個實(shí)施例中,功能組件131-134可執(zhí)行與圖形處理有關(guān)的任務(wù)(例如,遮影、紋理化、遮擋剔除等)。在另一實(shí)施例中,功能組件131-134可執(zhí)行與浮點(diǎn)有關(guān)的處理。
收集組件140從功能組件131-134“收集”輸出或結(jié)果。在一個實(shí)施例中,收集組件140聯(lián)系或聚集操作的結(jié)果以用于實(shí)現(xiàn)共同目標(biāo)。舉例來說,收集組件140可聚集結(jié)果以供傳遞到圖形緩沖器。在另一實(shí)施例中,收集組件140是圖形緩沖器。在又一實(shí)施例中,收集組件140可聚集浮點(diǎn)計算的結(jié)果。
集成電路100的組件還協(xié)同操作以靈活地配置功能組件操作特征(例如,啟用/禁用功能組件、改變時鐘速度、改變操作電壓等)。功能組件配置控制器120控制對功能組件131-134中的一者或一者以上的操作特征(例如,禁用/啟用等)的調(diào)節(jié),且可將關(guān)于所述調(diào)節(jié)的信息提供給分配組件110和收集組件140。舉例來說,功能組件配置控制器120可禁用或啟用功能組件(例如,禁用或啟用功能組件132)。功能組件配置控制器120可告知分配組件110功能組件132操作特征的變化(例如,功能組件中的哪一功能組件被啟用、禁用等)。
分配組件110可使用關(guān)于功能組件132的操作特征的信息來分配工作流程信息。在一個實(shí)施例中,分配組件110可將功能組件的配置分解為將信息(例如,包含用于處理的數(shù)據(jù)的工作流程)分配到功能組件。如果處理器功能組件中的一者被禁用(例如,因?yàn)槠溆腥毕?,那么分配組件110將信息分配到其它剩余的處理器功能組件以處理所述“工作流程”。舉例來說,如果功能組件132被功能組件配置控制器120禁用,那么告知分配組件110功能組件132被禁用,且分配組件110可將工作流程路由到其它功能組件(例如,131、133和/或134)。如果功能組件132被功能組件配置控制器120啟用,那么告知分配組件110功能組件132被啟用,且分配組件110可將工作流程路由到功能組件132。分配組件110也可基于功能組件的性能配置(例如,時鐘速度)將信息分配到剩余的啟用的功能組件。在一個示范性實(shí)施方案中,具有較大性能需求的任務(wù)(例如,關(guān)鍵任務(wù))被路由到具有較強(qiáng)性能特征或能力(例如,較快)的功能組件。舉例來說,三維(3D)圖形信息可路由到高性能(例如,高速)圖形管線,且二維(2D)圖形信息可路由到較低性能(例如,較慢速度)圖形管線。在一個實(shí)施例中,根據(jù)記分板算法(scoreboardingalgorithm)來分配信息。
在本發(fā)明的一個實(shí)施例中,功能組件配置控制器120引導(dǎo)對功能組件131-134的操作特征的改變。操作特征可影響功能組件131-134的性能。舉例來說,功能組件配置控制器120可改變功能組件131-134的操作特征狀態(tài)(例如,啟用或禁用功能組件)。在一個示范性實(shí)施方案中,功能組件配置控制器120可改變功能組件操作的速度(例如,通過改變時鐘頻率)和/或功能組件所消耗的功率(例如,通過改變供應(yīng)到功能組件的電壓)。舉例來說,功能組件配置控制器120可引導(dǎo)時鐘源137改變供應(yīng)到功能組件131-134的時鐘信號的頻率,和/或引導(dǎo)電源138改變供應(yīng)到功能組件131-134的功率信號的電壓。
應(yīng)了解,本發(fā)明容易地適用于與多種功能組件一起利用。功能組件131-134可以是提供多種不同功能(例如,浮點(diǎn)、像素遮影、向量遮影、存儲、緩沖等)的功能單元。在一個示范性實(shí)施方案中,功能組件可在大體上相同時間(例如,并行同時)執(zhí)行類似操作。在本發(fā)明的一個實(shí)施例中,功能組件是主動功能組件。
在一個實(shí)施例中,功能組件是包含在處理單元中的處理器組件(例如,浮點(diǎn)組件、像素遮影器組件、頂點(diǎn)處理器組件等)。應(yīng)了解,本發(fā)明可容易地實(shí)施在多種處理單元中,所述處理單元包含中央處理單元(CPU)、圖形處理單元(GPU)和/或內(nèi)嵌的處理單元。在一個示范性實(shí)施方案中,處理單元包含記分板算法以便將任務(wù)配給到處理器功能組件(例如,浮點(diǎn)組件)。當(dāng)處理器功能組件處理結(jié)果時,記分板跟蹤處理器功能組件需要哪一個操作數(shù)并調(diào)度所述操作數(shù)。可對來自個別處理器功能組件的結(jié)果進(jìn)行組合以提供總體結(jié)果。記分板可將功能組件配置分解為任務(wù)的調(diào)度。舉例來說,如果處理器功能組件中的一者被禁用(例如,因?yàn)槠溆腥毕?,那么記分板重新調(diào)度其它剩余的處理器功能組件來處理所述處理工作流程。
本發(fā)明可實(shí)施在管線型(例如,向量型、線程型等)處理環(huán)境中。圖13B是根據(jù)本發(fā)明一個實(shí)施例的管線集成電路150的方框圖。管線集成電路150是功能組件為管線的集成電路100的實(shí)施方案。集成電路150包括分配組件151、功能組件配置控制器152、收集組件154以及管線171、172、173和174。管線171、172、173和174執(zhí)行管線操作(例如,提取、解碼和執(zhí)行指令)。功能組件配置控制器152控制管線171到174的操作特征,并且還將關(guān)于管線171到174的操作特征的信息(例如,關(guān)于功能組件中的哪一功能組件被禁用和/或啟用的信息)提供給分配組件151和收集組件154??梢圆煌牧6葓?zhí)行對操作特征的控制。舉例來說,管線可在每一管線內(nèi)包含多個個別功能組件(未圖示),所述多個個別功能組件也可以個別功能組件為基礎(chǔ)進(jìn)行配置(例如,啟用、禁用等)。
管線集成電路150的組件類似于集成電路100的組件進(jìn)行操作。舉例來說,以類似方式轉(zhuǎn)向或路由工作流程信息。功能組件配置控制器152將關(guān)于功能組件171-174的操作特征的信息(例如,被禁用、被啟用、速度、電壓等)提供給分配組件151。分配組件151部分基于操作特征信息而將信息分配到管線171-174(例如,將工作流程信息分配到啟用的功能組件而不是禁用的功能組件)。收集組件140“收集”(例如,聯(lián)系或聚集)管線171-174的輸出(例如,聯(lián)系或聚集結(jié)果以存儲在圖形緩沖器中)。在一個實(shí)施例中,功能組件配置控制器152可引導(dǎo)時鐘源175改變供應(yīng)到功能組件171-174的時鐘信號的頻率,和/或引導(dǎo)電源177改變供應(yīng)到功能組件171-174的功率信號的電壓。
本發(fā)明集成電路可以多種集成水平(例如,多種電路小片層級和結(jié)構(gòu))實(shí)施。圖13C是多處理器集成電路190的方框圖,其為本發(fā)明電路小片層級的另一實(shí)施例。多處理器集成電路190的組件類似于集成電路100,只是功能組件為處理器。多處理器集成電路190包括分配組件191、功能組件配置控制器192、收集組件194以及處理器195、197、198和199。在一個實(shí)施例中,處理器195、197、198和199包含在單一電路小片中并耦合到共同高速緩沖存儲器。功能組件配置控制器192可引導(dǎo)對處理器195-199中的一者或一者以上的操作特征調(diào)節(jié)(例如,禁用/啟用),且將指示處理器195-199的操作特征(例如,指示處理器是否被禁用/啟用)的操作特征信息提供給分配組件191和收集組件194。在一個示范性實(shí)施方案中,即使功能組件配置控制器192禁用處理器(例如,195、197、198或199),集成電路190仍提供完整的功能性。
多處理器集成電路190的組件類似于集成電路100的組件進(jìn)行操作。舉例來說,以類似方式轉(zhuǎn)向或路由工作流程信息。功能組件配置控制器192將關(guān)于功能組件的操作特征的信息(例如,被禁用、被啟用、速度、電壓等)提供給分配組件191。分配組件191將信息(例如,工作流程數(shù)據(jù))分配到處理器195-199。所述分配部分基于操作特征信息(例如,將工作流程信息分配到啟用的功能組件而不是禁用的功能組件)。在一個示范性實(shí)施方案中,收集組件194是“收集”或存儲處理器195-199的輸出的存儲器(例如,共同高速緩沖存儲器)。在一個實(shí)施例中,功能組件配置控制器192可引導(dǎo)時鐘源181改變供應(yīng)到功能組件195-199的時鐘信號的頻率,和/或引導(dǎo)電源182改變供應(yīng)到功能組件195-199的功率信號的電壓。
在本發(fā)明一個實(shí)施例中將性能與功能性進(jìn)行區(qū)分。在一些情況下,盡管可以不同的性能水平實(shí)現(xiàn)特定類型的功能或任務(wù),但從所述功能或任務(wù)仍能夠被執(zhí)行的意義上來說,本發(fā)明并不限制改變操作特征時的功能性。在一個實(shí)施例中,功能組件配置控制器不禁用所有能夠并行地執(zhí)行任務(wù)的功能組件。舉例來說,如果電路小片具有一處理器中的兩個并行浮點(diǎn)功能組件且功能組件配置改變浮點(diǎn)功能組件中的一者的啟用特征或狀態(tài)(例如,禁用),那么將工作流程“重新路由”到剩余的啟用的浮點(diǎn)功能組件。浮點(diǎn)活動的性能水平可變化(例如,減緩),因?yàn)楣ぷ髁鞒陶梢粋€浮點(diǎn)功能組件而不是兩個浮點(diǎn)功能組件處理。然而,電路小片仍具有提供相同功能性或任務(wù)(例如,執(zhí)行浮點(diǎn)功能)的能力。
在本發(fā)明的一個實(shí)施例中,集成電路(例如,集成電路100、集成電路150、集成電路190等)被標(biāo)記了對應(yīng)于性能能力的性能指示符(例如,被啟用和/或禁用的功能組件的數(shù)目)。所述標(biāo)記可以是電子可讀標(biāo)記和/或墨水標(biāo)記(例如,在電路小片上)。所述標(biāo)記可以是集成電路的質(zhì)量評價的指示符。所述標(biāo)記也可對應(yīng)于與集成電路相關(guān)聯(lián)的性能度量(例如,處理速度、帶寬等)。
應(yīng)了解,功能組件配置控制器120、152和/或192可根據(jù)多種目標(biāo)來引導(dǎo)功能組件變化。舉例來說,功能組件配置控制器可基于良率問題、兼容性問題、性能問題、系統(tǒng)“健康狀況”問題等來改變功能組件的操作特征。還應(yīng)了解,功能組件配置控制器120、152和/或192可包含多種實(shí)施方案以實(shí)現(xiàn)目標(biāo)(包含軟件可編程寄存器或掩碼、硬編碼掩碼等)。
在一個實(shí)施例中,功能組件配置控制器(例如,120、152和/或192)引導(dǎo)功能組件的操作特征的改變以解決良率問題。本發(fā)明具有促進(jìn)集成電路制造過程中晶片良率增加的益處。本發(fā)明系統(tǒng)和方法使具有一些有缺陷功能組件的集成電路能夠得以廢物利用。傳統(tǒng)上,具有有缺陷功能組件的電路小片被丟棄,從而導(dǎo)致生產(chǎn)晶片的成本被分派給較少的可接受的電路小片。盡管禁用有缺陷的組件可能影響性能,但本發(fā)明允許使用某一具有有缺陷功能單元的電路小片來執(zhí)行相同類型的功能且藉此維持功能性。增加晶片上有用的電路小片的數(shù)目允許晶片的生產(chǎn)成本被分派給較大數(shù)目的可接受的電路小片。盡管運(yùn)作不良的電路小片可能以較低價格出售,但通過允許將固定的晶片生產(chǎn)成本分派給較大數(shù)目的電路小片,可減少每電路小片的成本。
盡管電路小片的某些部分可能以不同性能水平操作,但本發(fā)明促進(jìn)了對電路小片的“廢物利用”。在一個示范性實(shí)施方案中,從電路小片執(zhí)行相同類型的任務(wù)的意義上來說,原本會被丟棄的電路小片能夠提供相同的功能性。舉例來說,具有能夠執(zhí)行浮點(diǎn)運(yùn)算的并行浮點(diǎn)功能組件的處理器仍能夠執(zhí)行浮點(diǎn)運(yùn)算,因?yàn)樵谝粋€實(shí)施例中,本發(fā)明不禁用所有并行浮點(diǎn)組件,且將工作流程從被禁用的并行浮點(diǎn)組件“重新路由”到剩余的浮點(diǎn)組件。具有較多被禁用的組件的電路小片可以不同水平(例如,較慢)執(zhí)行任務(wù),因?yàn)橐恍┎⑿薪M件被禁用。然而,電路小片仍具有提供相同功能性(例如,執(zhí)行相同任務(wù))的能力。
在一個實(shí)施例中,功能組件配置控制器(例如,120、152和/或192)在制造測試期間引導(dǎo)對功能組件的操作特征改變(例如,啟用、禁用等)。舉例來說,如果測試指示功能組件有缺陷,那么功能組件配置控制器(例如,120、152或192)禁用所述功能組件(例如,分別為132、173或198),且如果測試指示功能組件沒有缺陷,那么功能組件配置控制器(例如,120、152或192)啟用所述功能組件(例如,分別為131、174、197)。
在本發(fā)明的一個實(shí)施例中,功能組件配置控制器(例如,120、152和/或192)引導(dǎo)功能組件的操作特征的改變以解決“自我健康狀況(self health)”問題。在一個示范性實(shí)施方案中,功能組件控制器“現(xiàn)場”或在從制造商初始裝運(yùn)之后解決自我健康狀況問題。在一個示范性實(shí)施方案中,集成電路能夠在現(xiàn)場“自我健康狀況”測試中運(yùn)作。舉例來說,如果“自我健康狀況”測試結(jié)果是有缺陷的功能組件的指示,那么功能組件配置控制器(例如,120、152和/或192)禁用所述有缺陷的功能組件,并向分配組件(例如,110、150或191)提供功能組件被禁用的指示。在本發(fā)明的一個實(shí)施例中,自我健康狀況測試與國際電氣和電子工程(IEEE)標(biāo)準(zhǔn)1149.1(也稱為連結(jié)任務(wù)行動小組(Joint TaskAction Group,JTAG)測試)兼容。在替代實(shí)施例中,自我健康狀況測試是用于檢查系統(tǒng)的操作完整性的專有測試。在又一實(shí)施例中,如果現(xiàn)場的“自我健康狀況”測試指示功能組件沒有缺陷,那么啟用所述功能組件。
在又一實(shí)施例中,如果與有缺陷功能組件執(zhí)行類似類型的任務(wù)或功能的未啟用的無缺陷功能組件可用,那么當(dāng)有缺陷組件被禁用時啟用所述未啟用的無缺陷功能組件。舉例來說,圖13A的集成電路100可初始載有啟用的功能組件131和132,以及盡管無缺陷但(例如,由于市場分割原因等)還是被禁用的功能組件133和134。如果現(xiàn)場自我健康狀況測試稍后指示功能組件132變得有缺陷,那么功能組件控制器120可禁用功能組件132并啟用功能組件133,且原本已流動到功能組件132(如果其未被禁用)的工作流程被(例如,通過分配組件110)分配到功能組件133。因此,禁用功能組件132實(shí)際上去除了與功能組件132中的缺陷相關(guān)聯(lián)的問題,而啟用先前被禁用的功能組件133允許以相同性能水平對工作流程執(zhí)行相同類型的功能性或任務(wù),且藉此系統(tǒng)有效地“自行修復(fù)(self healing)”。
在本發(fā)明的一個實(shí)施例中,功能組件配置控制器(例如,120、152和/或192)引導(dǎo)功能組件的操作特征的改變以解決兼容性問題。在一個實(shí)施例中,包含在圖形加速器中的功能組件控制器能夠分辨與圖形加速器的特性兼容的芯片集,并相應(yīng)地改變圖形加速器的操作特征。舉例來說,如果功能組件配置控制器正在控制圖形管線的操作特征,那么當(dāng)芯片集支持且與較高數(shù)目的圖形管線的利用兼容時,功能組件配置控制器可啟用較高數(shù)目的圖形管線。舉例來說,圖形加速器和芯片集由同一制造商制造,且包含在圖形加速器中的功能組件控制器可接收將包含在同一系統(tǒng)中的芯片集識別為圖形加速器的信號。在本發(fā)明的一個實(shí)施例中,驅(qū)動器建立兼容性,且功能組件控制器相應(yīng)地引導(dǎo)對功能組件的操作特征的改變。
在本發(fā)明的一個實(shí)施例中,功能組件配置控制器(例如,120、152和/或192)引導(dǎo)功能組件的操作特征的改變以解決性能問題。在一個實(shí)施例中,性能掩碼40基于性能問題提供對功能組件的操作特征的指示。舉例來說,運(yùn)行特定應(yīng)用,且啟用所需的支持的功能組件操作特征。如果所述應(yīng)用是圖形應(yīng)用,那么可啟用額外圖形管線,且/或可增加現(xiàn)有圖形應(yīng)用管線的時鐘速度。在本發(fā)明的一個實(shí)施例中,可將系統(tǒng)的類型分解為性能操作變化,例如,在移動裝置中,可調(diào)節(jié)性能以節(jié)省功率。
應(yīng)了解,存在多種用于根據(jù)不同目標(biāo)實(shí)施功能組件改變的功能組件配置控制器實(shí)施例。圖13D是根據(jù)本發(fā)明一個實(shí)施例由功能組件控制器用來控制不同目標(biāo)的掩碼陣列10的方框圖。掩碼陣列中每一掩碼可對應(yīng)于特定操作目標(biāo)。在一個示范性實(shí)施方案中,掩碼陣列10包括良率掩碼20、兼容性掩碼30、性能掩碼40和自行修復(fù)掩碼50。在一個示范性實(shí)施方案中,每一列11到18與八個功能組件中的一者相關(guān)聯(lián)。每一單元(例如,單元99)包含操作特征設(shè)定值。舉例來說,邏輯1的操作特征設(shè)定值可對應(yīng)于啟用功能組件、組件的高時鐘速度、組件的高電壓電平等。相反,邏輯0的操作特征設(shè)定值可對應(yīng)于禁用功能組件、組件的低時鐘速度、組件的低電壓電平等。應(yīng)了解,本發(fā)明容易地適用于具有不同粒度增量的操作特征設(shè)定值(例如,非常高速、高速、中等速度、低速、非常低速)。在一個示范性實(shí)施方案中,掩碼陣列10實(shí)施在寄存器陣列中。
可向不同目標(biāo)或掩碼分派優(yōu)先權(quán)。舉例來說,良率掩碼20可比性能掩碼40分派到更高優(yōu)先權(quán)。在此實(shí)例中,單元98中的操作特征設(shè)定值控制單元97中的操作特征設(shè)定值。如果單元98中的設(shè)定值指示與列12相關(guān)聯(lián)的功能組件被禁用,那么不管單元97中的設(shè)定值如何均禁用所述功能組件。掩碼陣列10中的值也可用于多種算法中,所述算法在判定由功能組件配置控制器實(shí)施的操作特征設(shè)定時估計多種考慮因素。
良率掩碼20提供對由于良率問題(例如,缺陷)的緣故而被禁用的功能組件的指示。舉例來說,良率掩碼20包含當(dāng)功能組件具有制造缺陷時促使禁用所述功能組件的操作特征設(shè)定值。在一個示范性實(shí)施方案中,如果存在另一可處理工作流程的操作的功能組件,那么允許禁用一功能組件。
兼容性掩碼30基于兼容性問題提供對功能組件的操作特征的指示。舉例來說,特定處理器和芯片集可彼此交換身份識別,且基于身份識別的交換,可啟用兼容的所支持的功能組件操作特征。在本發(fā)明的一個實(shí)施例中,驅(qū)動器建立兼容性,且在兼容性掩碼30中輸入相應(yīng)的操作特征設(shè)定值。
性能掩碼40基于性能問題提供對功能組件的操作特征的指示。舉例來說,運(yùn)行特定應(yīng)用,且將一值輸入到性能掩碼40中,從而啟用相應(yīng)的所需的被支持的功能組件操作特征。如果所述應(yīng)用是圖形應(yīng)用,那么可啟用額外圖形管線,且/或可增加現(xiàn)有圖形應(yīng)用管線的時鐘速度。在本發(fā)明的一個實(shí)施例中,可將系統(tǒng)的類型分解為性能操作變化,例如,在移動裝置中,輸入性能掩碼40中的值可引導(dǎo)性能調(diào)節(jié)以節(jié)省功率。舉例來說,引導(dǎo)對功能組件的操作特征的改變,包含禁用/啟用功能組件、調(diào)節(jié)速度、電壓等。
自行修復(fù)掩碼50基于現(xiàn)場測試問題提供對功能組件的操作特征的指示。舉例來說,利用測試操作的結(jié)果來判定功能組件的操作特征的變化。在一個示范性實(shí)施方案中,現(xiàn)場測試指示啟用的第一功能組件有缺陷。改變自行修復(fù)掩碼單元中與第一功能組件相關(guān)聯(lián)的操作特征設(shè)定值以指示第一功能組件被禁用,且改變自行修復(fù)掩碼單元中與被禁用的第二功能組件相關(guān)聯(lián)的操作特征設(shè)定值以指示第二功能組件被啟用。通過改變第一和第二功能組件的各自的操作特征設(shè)定值,禁用有缺陷的第一組件并防止其產(chǎn)生更多問題,且啟用被禁用的第二功能組件允許第二功能組件執(zhí)行原本會被路由到第一功能組件的工作流程,且因此系統(tǒng)實(shí)際上自行修復(fù),因?yàn)槿阅軌蛟跓o缺陷的情況下執(zhí)行相同的工作流程。
圖14是計算機(jī)系統(tǒng)200的方框圖,其為可在上面實(shí)施本發(fā)明實(shí)施例的計算機(jī)系統(tǒng)的一個實(shí)施例。計算機(jī)系統(tǒng)200包含中央處理器單元201、主存儲器202(例如,隨機(jī)存取存儲器)、具有北橋209和南橋205的芯片集203、可移除數(shù)據(jù)存儲裝置204、輸入裝置207、信號通信端口208,和耦合到顯示器220的圖形子系統(tǒng)210。計算機(jī)系統(tǒng)200包含若干用于通信地耦合計算機(jī)系統(tǒng)200的組件的總線。通信總線291(例如,前側(cè)總線)將芯片集203的北橋209耦合到中央處理器單元201。通信總線292(例如,主存儲器總線)將芯片集203的北橋209耦合到主存儲器202。通信總線292(例如,高級圖形端口接口)將芯片集203的北橋耦合到圖形子系統(tǒng)210。通信總線294-297(例如,PCI總線)將芯片集203的南橋205分別耦合到可移除數(shù)據(jù)存儲裝置204、輸入裝置207、信號通信端口208。圖形子系統(tǒng)210包含圖形處理器211和圖形緩沖器215。
計算機(jī)系統(tǒng)200的組件協(xié)同操作以提供多方面的功能性和性能。包含在計算機(jī)系統(tǒng)200中的功能組件的操作特征可動態(tài)地變化。在一個示范性實(shí)施方案中,盡管包含在計算機(jī)系統(tǒng)200中的功能組件中的一些可能有缺陷,但計算機(jī)系統(tǒng)200的組件協(xié)同操作以提供預(yù)定類型的功能性。通信總線291、292、293、294、295和297傳遞信息。中央處理器201處理信息。主存儲器202為中央處理器201存儲信息和指令。可移除數(shù)據(jù)存儲裝置204也存儲信息和指令(例如,充當(dāng)較大的信息貯存器)。輸入裝置206提供用于輸入信息和/或用于在顯示器220上指向或突出顯示信息的機(jī)制。信號通信端口208提供到達(dá)外部裝置的通信接口(例如,與網(wǎng)絡(luò)的接口)。顯示裝置220根據(jù)存儲在幀緩沖器215中的數(shù)據(jù)來顯示信息。圖形處理器211處理來自中央處理器201的圖形命令,并將所得數(shù)據(jù)提供給圖形緩沖器215以供由顯示監(jiān)視器220存儲和檢索。
包含在計算機(jī)系統(tǒng)200中的功能組件的操作配置可靈活地適用于滿足多種目標(biāo)。舉例來說,包含在計算機(jī)系統(tǒng)200中的功能組件的操作配置是可配置的,以即使在功能組件中的一些被禁用時仍維持執(zhí)行一種類型的功能。在一個示范性實(shí)施方案中,盡管功能組件中的一些(例如,浮點(diǎn)組件、像素遮影器組件、存儲器單元組件等)被禁用,但中央處理器201和圖形處理器211仍能夠執(zhí)行相同類型的處理功能且主存儲器202存儲信息。在一個實(shí)施例中,處理器包含多個用于執(zhí)行處理操作的功能組件??筛淖児δ芙M件的操作特征。在一個實(shí)施例中,處理器包含多個用于執(zhí)行處理操作的功能組件,其中包含在所述多個功能組件中的有缺陷的功能組件被禁用。處理器還包含用于將工作流程分配到啟用的處理組件并防止將工作流程分配到禁用的有缺陷的組件的工作流程控制組件。在一個示范性實(shí)施方案中,盡管可以減小的性能水平(例如,較慢)提供功能性,但計算機(jī)系統(tǒng)200可繼續(xù)提供完全的功能性。
應(yīng)了解,本發(fā)明可實(shí)施在多種實(shí)施例中。在一個示范性實(shí)施方案中,本發(fā)明可利用在用于提供包含視頻游戲的多種圖形應(yīng)用的處理系統(tǒng)中。舉例來說,本發(fā)明可用于禁用游戲控制臺、個人計算機(jī)、個人數(shù)字助理、手機(jī)或任何數(shù)目的用于實(shí)施視頻游戲的平臺中的有缺陷的組件。還應(yīng)了解,對于視頻游戲應(yīng)用實(shí)施方案的引用是示范性的,且本發(fā)明不限于這些實(shí)施方案。
圖15是根據(jù)本發(fā)明一個實(shí)施例的圖形管線300的方框圖。圖形管線300(例如,像素處理管線)包括管線輸入310、頂點(diǎn)處理器311到314、光柵器320、像素遮影器321到324、預(yù)光柵操作(ROP)組件330、光柵操作組件331到334、管線輸出340,以及功能組件配置控制器350。功能組件配置控制器350耦合到管線輸入310、頂點(diǎn)處理器311到314、光柵器320、像素遮影器321到324、預(yù)光柵操作(ROP)組件330、光柵操作組件331到334,以及管線輸出340。管線輸入310耦合到頂點(diǎn)處理器311到314,頂點(diǎn)處理器311到314耦合到光柵器320。光柵器320耦合到像素遮影器321到324,像素遮影器321到324耦合到預(yù)光柵操作組件330。預(yù)光柵操作(ROP)組件330耦合到光柵操作組件331到334,光柵操作組件331到334耦合到管線輸出340。在一個實(shí)施例中,圖形管線300類似于管線集成電路150。舉例來說,管線151可包含頂點(diǎn)處理器311、像素遮影器321和ROP 331;管線152可包含頂點(diǎn)處理器312、像素遮影器322和ROP 332;管線153可包含頂點(diǎn)處理器313、像素遮影器323和ROP 333;且管線154可包含頂點(diǎn)處理器314、像素遮影器324和ROP 334,其中管線輸入310、光柵器320、預(yù)ROP 330和管線輸出340對于管線151-154來說是共同的。
即使管線中的功能組件的操作特征中的一些改變(例如,被禁用/啟用),圖形管線300的組件也協(xié)同操作以執(zhí)行圖形管線操作。功能組件配置控制器350可改變頂點(diǎn)處理器311到314、像素遮影器321到324和/或光柵操作組件331到334的操作特征。功能組件配置控制器350可對操作特征作出多種改變,包含啟用/禁用功能組件、改變功能組件的時鐘速度和/或增加對于功能組件的電壓供應(yīng)。功能組件配置控制器350可出于多種原因而作出所述改變,所述原因包含良率問題(例如,功能組件有缺陷和/或與有缺陷的組件相關(guān)聯(lián))、兼容性問題、性能問題和/或系統(tǒng)“健康狀態(tài)”問題。功能組件配置控制器350還提供關(guān)于對管線輸入310、光柵器320、預(yù)光柵操作(ROP)組件330和管線輸出340的操作特征改變的信息。管線輸入組件310接收圖形管線信息并將相應(yīng)的分包圖形管線信息分配給保持啟用的頂點(diǎn)處理器311到314。頂點(diǎn)處理器311到314對各自接收到的圖形管線信息執(zhí)行向量遮影,并將所得信息轉(zhuǎn)發(fā)給光柵器320。光柵器320判定應(yīng)對哪些像素進(jìn)行遮影,并將分包的向量遮影圖形管線信息分配給像素遮影器321到324。像素遮影器321到323對分包的向量遮影圖形管線信息執(zhí)行像素遮影計算,并將結(jié)果轉(zhuǎn)發(fā)給預(yù)光柵操作(ROP)組件330。
在一個實(shí)施例中,像素遮影器321到324也可執(zhí)行紋理操作。紋理操作可由紋理遮影器組件(例如,對應(yīng)于像素遮影器)執(zhí)行。預(yù)光柵操作(ROP)組件330搜集向量遮影信息并將分包的像素遮影信息分配給光柵操作組件331到334。光柵操作組件331到334對分包的像素遮影信息執(zhí)行額外光柵化處理(例如,執(zhí)行顏色結(jié)合和Z緩沖器處理),并將結(jié)果轉(zhuǎn)發(fā)給管線輸出340。管線輸出340將圖形管線信息聚集為單一輸出流。或者,功能組件配置控制器350可實(shí)施為定位在管線中的功能組件的各自階層之間的縱橫開關(guān)(cross bar)或多路復(fù)用器結(jié)構(gòu)。
本發(fā)明也可應(yīng)用于幀緩沖器接口的分裂為多個分區(qū)的若干部分。在一個示范性實(shí)施方案中,幀緩沖器接口包含多個類似的模塊,其作為與存儲器(例如,組成幀緩沖器的DRAM的一部分)通信的功能組件而操作。如果所述模塊中的一者有缺陷,那么其可被禁用,且將有缺陷的模塊的工作負(fù)荷再分派到另一模塊(例如,基于存儲器地址的與所述模塊相關(guān)聯(lián)的部分)。舉例來說,幀緩沖器接口模塊到存儲器地址的映射被重新映射,使得整個存儲器對于芯片仍是可用的。
圖16是根據(jù)本發(fā)明一個實(shí)施例的功能組件配置過程400的流程圖。功能組件配置過程400有助于集成電路中功能組件的靈活配置。舉例來說,功能組件配置過程400引導(dǎo)對集成電路中功能組件的操作特征的改變(例如,啟用、禁用、改變速度、改變電壓等)。應(yīng)了解,功能組件配置過程400可用于根據(jù)多種目標(biāo)(例如,增加良率、提供靈活的性能、促進(jìn)自行修復(fù)等)來再配置功能組件的操作特征。在一個實(shí)施例中,功能組件配置過程400還有助于有效的信息處理工作流程管理。
在步驟410中,接收功能組件配置(例如,操作特征)改變觸發(fā)事件的指示。在本發(fā)明的一個實(shí)施例中,功能組件控制器(例如,120等)接收對改變觸發(fā)事件的指示。所述指示可包含對將作出的配置變化(例如,禁用、啟用、增加/減小速度和/或電壓等)的指示。在一個實(shí)施例中,從集成電路的內(nèi)部組件(例如,內(nèi)部測試系統(tǒng)、驅(qū)動器、應(yīng)用程序等)接收功能組件配置改變觸發(fā)事件。也可從集成電路外部的組件(例如,外部測試系統(tǒng)、因特網(wǎng)、集中式配置系統(tǒng)等)接收對功能組件配置改變觸發(fā)事件的指示。
應(yīng)了解,所述指示和配置改變觸發(fā)事件可與多種操作目標(biāo)(例如,應(yīng)用、按使用計費(fèi)、市場分割等)相關(guān)聯(lián)。改變觸發(fā)事件可與良率問題相關(guān)聯(lián)。舉例來說,事件可與檢測有缺陷的功能組件的測試操作相關(guān)聯(lián),且(例如,通過功能組件控制器)接收識別所述有缺陷的功能組件的指示。在本發(fā)明的一個實(shí)施例中,從測試系統(tǒng)接收關(guān)于有缺陷的功能組件的指示。舉例來說,國際電氣和電子工程(IEEE)標(biāo)準(zhǔn)1149.1(也稱為連結(jié)任務(wù)行動小組(JTAG)測試)兼容的測試系統(tǒng)和/或?qū)S胁僮髡w性測試(例如,專有掃描測試機(jī)構(gòu))。改變觸發(fā)事件可與兼容性問題相關(guān)聯(lián)。舉例來說,接收指示組件具有預(yù)定兼容性的信號。改變觸發(fā)事件可與性能問題相關(guān)聯(lián)。舉例來說,接收一信號,其指示正加載新的和/或不同的應(yīng)用,準(zhǔn)予按使用計費(fèi)授權(quán),和/或集成電路包含在需要功率節(jié)省的移動裝置中。改變觸發(fā)事件也可與自測試和修復(fù)問題相關(guān)聯(lián)。
在步驟420中,作出所指示的功能組件配置改變(例如,操作特征改變)是否有效的判定。舉例來說,作出對功能組件的經(jīng)授權(quán)操作特征的判定。在一個實(shí)施例中,步驟410中接收到的指示是編碼位流。對所述位流進(jìn)行解碼,且檢查所得值,確定是否經(jīng)有效授權(quán)以觸發(fā)功能組件配置改變。在本發(fā)明的一個實(shí)施例中,分析經(jīng)編碼的指示符。所述分析包含對指示符進(jìn)行解碼,和將其與功能組件的不同的可能操作特征設(shè)定值的預(yù)定列表進(jìn)行比較。舉例來說,將經(jīng)解碼指示符的值與經(jīng)授權(quán)觸發(fā)指示或值的預(yù)定列表中的值進(jìn)行比較,其中列表中的值與特定的操作特征設(shè)定值相關(guān)聯(lián)。
在本發(fā)明的一個實(shí)施例中,還檢查功能組件配置改變動作以確定有效性。舉例來說,當(dāng)執(zhí)行與良率和自行修復(fù)問題相關(guān)聯(lián)的功能組件禁用時,在一個實(shí)施例中,作出是否存在可對原本將到達(dá)有缺陷功能組件的工作流程信息執(zhí)行類似功能的第二功能組件(例如,并行的)的判定。舉例來說,作出有缺陷功能組件是否是多個類似功能組件中的一者的判定。在本發(fā)明的一個實(shí)施例中,將有缺陷組件的類型與提供類似功能的多個組件的列表進(jìn)行比較。舉例來說,識別出有缺陷組件(例如,像素遮影器、頂點(diǎn)處理器、浮點(diǎn)組件等),且將識別出的功能組件與可提供相同功能性的其它類似組件的列表進(jìn)行比較。在一個示范性實(shí)施方案中,檢查其它類似組件以判定其是否是有缺陷功能組件的并行組件。如果存在可執(zhí)行工作流程的第二功能組件,那么可禁用第一功能組件(例如,如果所述第一功能組件有缺陷)。
在步驟430中,引導(dǎo)功能組件配置改變。在本發(fā)明的一個實(shí)施例中,由功能組件控制器(例如,120、152、192等)引導(dǎo)功能組件配置改變(例如,操作特征改變)。在本發(fā)明的一個實(shí)施例中,通過對控制功能組件的配置(例如,操作特征)的值(例如,在寄存器中)進(jìn)行編程來實(shí)現(xiàn)功能組件配置改變(例如,禁用、啟用等)?;诩拇嫫髦械闹担瑢⒏淖兘M件的配置(例如,禁用、啟用等)的信號發(fā)送到功能組件。在一個示范性實(shí)施方案中,在掩碼(例如,掩碼10)中配置所述值。應(yīng)了解,存在多種改變功能組件的配置(例如,改變操作特征)的本發(fā)明方法。舉例來說,可通過將通信線路結(jié)合到有缺陷的功能組件來實(shí)現(xiàn)有缺陷的功能組件的禁用。也可以確保有缺陷的功能組件不產(chǎn)生假通信量的方式禁用有缺陷的功能組件。也可告知接收組件有缺陷的組件,并對所述接收組件進(jìn)行編程以忽略來自有缺陷的功能組件的信息。也可通過軟編碼方法來改變功能組件配置。
在一個實(shí)施例中,可監(jiān)視功能組件的進(jìn)行中的操作并將其分解為步驟430的配置操作。舉例來說,檢查或測試系統(tǒng)“健康狀態(tài)”,且利用結(jié)果來判定對操作特征的改變。舉例來說,如果第一功能組件未通過自診斷測試,那么可禁用所述功能組件。如果第二功能組件可用,那么可將其激活以“代替”第一功能組件。舉例來說,如果第二功能組件運(yùn)作極佳但先前由于某一其它原因而被禁用,那么可將其啟用以代替未通過測試的功能組件。在一個示范性實(shí)施方案中,監(jiān)視應(yīng)用程序激活,且相應(yīng)地改變功能組件的操作特征。舉例來說,如果激活高性能圖形應(yīng)用程序,那么可增加功能組件的操作特征(例如,較快的時鐘設(shè)定),且/或可啟用或禁用額外的功能組件(例如,額外的圖形管線)。
也可監(jiān)視系統(tǒng)中組件的改變(例如,添加新的組件),且改變操作特征以適應(yīng)組件改變。舉例來說,如果特定類型的圖形處理器耦合到特定類型的芯片集,那么可傳遞身份識別指示,且可相應(yīng)地改變功能組件的操作特征。身份識別允許預(yù)先判定兼容性并支持增強(qiáng)的特征。在一個實(shí)施例中,對身份識別進(jìn)行編碼。所述編碼防止對操作特征設(shè)定值進(jìn)行惡意竄改。舉例來說,編碼防止不適當(dāng)?shù)販p小功能組件的操作特征和/或在不保證兼容性的情況下增加操作特征的企圖,所述企圖可能會另外潛在地引起難以識別的復(fù)雜的錯誤。
在本發(fā)明的一個實(shí)施例中,在功能組件之間協(xié)調(diào)操作特征改變。舉例來說,也可改變與已改變的功能組件(例如,在同一管線、線程等中)緊密相關(guān)聯(lián)的適當(dāng)操作的功能組件。在一個示范性實(shí)施方案中,在功能組件之間協(xié)調(diào)操作改變以維持產(chǎn)品差別化。舉例來說,如果將較低性能芯片規(guī)定為少一個像素遮影組件且少一個頂點(diǎn)遮影組件,那么可禁用像素遮影組件和頂點(diǎn)遮影組件兩者以維持產(chǎn)品差別化。
在步驟440中,根據(jù)對功能組件的改變而使工作流程轉(zhuǎn)向。舉例來說,工作流程可轉(zhuǎn)向到其它類似的功能組件。在一個實(shí)施例中,通過向一組件提供配置改變(例如,啟用、禁用等)的通知來實(shí)現(xiàn)工作流程的轉(zhuǎn)向,所述組件另外將信息傳遞給經(jīng)改變的功能組件。舉例來說,功能組件控制器(例如,120等)向分配組件(例如,110等)提供功能組件配置改變(例如,操作特征的變化)的指示,且分配組件相應(yīng)地路由工作流程信息。舉例來說,如果啟用第一功能組件,那么路由或調(diào)度工作流程并將其轉(zhuǎn)發(fā)到第一功能組件。如果第一功能組件被禁用,那么將工作流程路由或調(diào)度到另一啟用的功能組件。
在一個示范性實(shí)施方案中,使工作流程轉(zhuǎn)向或路由到較快或較慢的功能組件。舉例來說,分析工作流程內(nèi)容,并將工作流程的與較高性能活動相關(guān)聯(lián)的部分路由到較快的功能組件(例如,以較高時鐘速率操作的功能組件),且將工作流程的與較低性能活動相關(guān)聯(lián)的部分路由到較慢的功能組件。圖形圖像區(qū)域中正快速變化的像素(例如,朝向顯示器中心的像素)可路由到較快的功能組件(例如,高時鐘控制的遮影器),且圖形圖像區(qū)域中正緩慢變化的像素(例如,朝向顯示器邊緣的像素)可路由到較慢的功能組件(例如,低時鐘控制的遮影器)。
可以減少對其它組件的影響的方式協(xié)調(diào)功能組件操作特征變化(例如,禁用等)。在一個實(shí)施例中,可對適當(dāng)操作的功能組件進(jìn)行編程或再配置以便容忍被禁用的組件的輸出上可能的無用信息(例如,非法信號組合)。舉例來說,可引導(dǎo)適當(dāng)操作的功能組件以忽略來自被禁用的組件的信息。也可告知接收組件(例如,收集組件140)功能組件的操作特征變化,且對所述接收組件進(jìn)行編程以相應(yīng)地作出反應(yīng)。舉例來說,如果功能組件的速度降低,那么可將接收組件編程為當(dāng)?shù)却齺碜怨δ芙M件的信息時不閑置而是稍后核對功能組件是否被禁用以忽略來自功能組件的信息。如果功能組件被禁用,那么可對接收組件進(jìn)行編程以忽略來自功能組件的信號。
圖17是根據(jù)本發(fā)明一個實(shí)施例的減小性能的電路廢物利用方法500的流程圖。減小性能的電路廢物利用方法500有助于對原本會被丟棄的電路小片的補(bǔ)救。在一個實(shí)施例中,減小性能的電路廢物利用方法500測試電路小片并以確保維持電路小片的功能性的方式禁用有缺陷的功能組件。
在步驟510中,準(zhǔn)備芯片以進(jìn)行測試。將芯片放置在測試系統(tǒng)中,并使測試系統(tǒng)初始化。在本發(fā)明的一個實(shí)施例中,將掃描測試的初始狀態(tài)輸入掃描測試單元中。舉例來說,可根據(jù)國際電氣和電子工程(IEEE)標(biāo)準(zhǔn)1149.1(也稱為連結(jié)任務(wù)行動小組(JTAG)測試)準(zhǔn)備芯片以進(jìn)行測試。在本發(fā)明的一個實(shí)施例中,利用與芯片的測試能力兼容的定制類型的測試(例如,專有和/或非JTAG兼容的測試)。
在步驟520中,測試芯片。在本發(fā)明的一個實(shí)施例中,所述測試包括識別芯片的有缺陷的功能組件。在本發(fā)明的一個示范性實(shí)施方案中,執(zhí)行內(nèi)置自測試(BIST)。舉例來說,將掃描測試包含在BIST中,其中施加測試向量以激勵電路的某些方面(例如,功能邏輯組件),并俘獲來自電路的所得輸出。掃描測試鏈經(jīng)設(shè)計以經(jīng)由掃描測試鏈將掃描測試信息(例如,測試向量)掃描或移動到電路中的功能組件,促使功能組件對掃描測試信息執(zhí)行操作,俘獲所得信息并接著經(jīng)由掃描測試鏈的掃描測試單元而移出所得信息。接著分析所得信息中是否有錯誤(例如,與預(yù)定的正確結(jié)果進(jìn)行比較)。可由自動化測試圖案產(chǎn)生(ATPG)工具提供測試向量圖案。
在本發(fā)明的一個實(shí)施例中,識別有缺陷的特定功能組件。在一個示范性實(shí)施方案中,掃描測試的輸出結(jié)果提供關(guān)于哪些功能組件有缺陷的指示。舉例來說,分析測試圖案結(jié)果,并識別出有缺陷的功能組件。本發(fā)明可判定有缺陷的功能組件是否是不具有包含在電路小片中的另一類似的功能組件的功能組件。在一個實(shí)施例中,對有缺陷的功能組件是否關(guān)鍵和/或當(dāng)禁用有缺陷的功能組件時電路小片是否不具有可處理工作流程的另一功能組件進(jìn)行區(qū)分。如果識別出此功能組件,那么在本發(fā)明的一個實(shí)施例中,由于電路小片不能提供完全的功能性而將所述電路小片丟棄。
在本發(fā)明的一個實(shí)施例中,利用禁用組件幫助識別有缺陷的組件。在一個示范性實(shí)施方案中,多個類似的功能組件(例如,像素遮影器321到324)執(zhí)行測試向量操作。如果存在錯誤結(jié)果,那么執(zhí)行進(jìn)一步測試。由禁用組件禁用多個功能組件中的第一者(例如,像素遮影器321),且由剩余的功能組件來執(zhí)行測試向量操作?;蛘?,在測試過程中,可利用軟件激勵來激勵對功能組件的禁用。舉例來說,禁用像素遮影器321,且像素遮影器322到324執(zhí)行測試向量操作,并分析結(jié)果。如果不存在錯誤結(jié)果,那么將第一功能組件識別為有缺陷的組件。如果繼續(xù)存在錯誤結(jié)果,那么由禁用組件禁用多個功能組件中的第二者(例如,像素遮影器321),且由剩余的功能組件來執(zhí)行測試向量操作。如果不存在錯誤結(jié)果,那么將第二功能組件識別為有缺陷的組件。排除過程繼續(xù),直到識別出有缺陷的組件為止。
在步驟530中,基于測試的結(jié)果對芯片執(zhí)行功能組件配置過程(例如,功能組件配置過程400)。在本發(fā)明的一個實(shí)施例中,如果功能組件有缺陷,那么功能組件配置過程禁用芯片的多個同質(zhì)功能組件(例如,執(zhí)行組件)中的一者或一者以上。舉例來說,向有缺陷的功能組件發(fā)布禁用信號。
在一個實(shí)施例中,減小性能的電路廢物利用方法500包含可編程地再配置芯片以允許其它功能組件執(zhí)行被禁用的功能組件的功能。舉例來說,將識別被禁用的功能組件的掩碼編程到分配組件中,且可在剩余的功能組件之間分配工作流程??蓪⑵渚幊虨樵跍y試時間執(zhí)行的軟件可加載寄存器或硬編碼的掩碼型程序。存在多種可利用的技術(shù),包含可編程非易失性存儲器、熔斷器、線結(jié)合條帶等。
在減小性能的電路廢物利用方法500的一個實(shí)施例中,測試器中的程序包含針對特定性能水平的電路小片特征的定義。在一個示范性實(shí)施方案中,測試器包含對每一性能水平中哪些缺陷是可容許的指示。舉例來說,測試器可包含可禁用第一多個并行功能組件的第一性能水平,和可禁用第二多個并行功能組件的第二性能水平。性能水平也可對應(yīng)于啟用的功能組件的數(shù)目。本發(fā)明還可有助于基于性能水平,作為測試程序的一部分而將電路小片自動裝倉。
圖18是測試環(huán)境600的方框圖,其為根據(jù)本發(fā)明一個實(shí)施例的測試環(huán)境。測試環(huán)境600包含電路小片610和測試系統(tǒng)650。電路小片610包括測試接口633、分配器631以及功能組件611到614,其中每一功能組件和分配器631分別包含掃描測試單元621到625。電路小片廢物利用測試系統(tǒng)650包括測試模塊680和有缺陷組件解析模塊670,所述有缺陷組件解析模塊670包含功能性維持模塊671、相應(yīng)的組件檢測模塊672、禁用模塊673以及電路小片拒絕模塊674。
電路小片廢物利用測試系統(tǒng)650測試電路小片610。測試模塊680向測試接口633提供測試向量,測試接口633將測試向量向前傳遞到掃描測試單元621到625。將掃描測試單元621到625中的信息饋入到功能組件611到614以及分配器631中,功能組件611到614以及分配器631對掃描測試信息執(zhí)行操作。結(jié)果也由掃描測試單元621到625俘獲并傳遞到測試接口633,測試接口633將其傳遞到測試系統(tǒng)650以進(jìn)行分析。測試模塊680分析結(jié)果并向缺陷解析模塊670提供關(guān)于有缺陷的功能組件的指示。缺陷解析模塊670判定電路小片是否可通過禁用功能組件而廢物利用。
功能性維持模塊671判定識別出的功能組件是否包含在允許被禁用的群組中。在一個實(shí)施例中,功能性維持模塊671判定是否存在可處理識別出(例如,有缺陷)的功能組件的工作流程的其它功能組件。舉例來說,可將工作流程轉(zhuǎn)移或重新路由到另一功能組件。在一個示范性實(shí)施方案中,功能性維持模塊671對照著允許被禁用的組件的預(yù)定列表來檢查識別出的功能組件(例如,其它組件可處理所述工作流程)。
相應(yīng)的組件檢測模塊672判定是否存在應(yīng)被禁用的相關(guān)功能組件。所述相關(guān)功能組件可以是適當(dāng)運(yùn)作的組件。在本發(fā)明的一個實(shí)施例中,識別出與有缺陷的功能組件緊密相關(guān)聯(lián)的功能組件(例如,在同一管線、線程等中)。舉例來說,如果所述功能組件在有缺陷的組件下游,那么可禁用(例如,斷電)適當(dāng)運(yùn)作的組件以防止切換活動和相應(yīng)的功率消耗。在一個示范性實(shí)施方案中,可禁用功能組件以維持產(chǎn)品差別化。如果識別出應(yīng)被禁用的其它功能組件,那么將這些組件的身份反饋到功能性維持模塊671中以判定禁用它們是否會影響功能性。
禁用模塊673引導(dǎo)功能組件禁用(例如,功能組件611、612、613或614的禁用)。在本發(fā)明的一個實(shí)施例中,禁用模塊673經(jīng)由測試接口633直接向功能組件發(fā)送禁用信號。在替代實(shí)施例中,禁用模塊673向電路小片610中的禁用組件(未圖示)發(fā)送信號。如果功能性維持模塊671提供可允許禁用組件(例如,其將不會消除功能性)的指示,那么禁用模塊673禁用功能組件。在一個示范性實(shí)施方案中,即使禁用功能組件會減小性能,但只要其不會減小功能性,功能性維持模塊671仍允許禁用模塊673禁用功能組件。
電路小片標(biāo)記模塊674對電路小片進(jìn)行標(biāo)記。在本發(fā)明的一個實(shí)施例中,電路小片標(biāo)記模塊674基于性能標(biāo)準(zhǔn)對電路小片進(jìn)行標(biāo)記。電路小片標(biāo)記模塊674還提供電路小片是否被拒絕的標(biāo)記或指示??赡芫芙^電路小片是因?yàn)?,功能性維持模塊671提供不應(yīng)禁用有缺陷的功能組件和/或電路小片的性能降低到預(yù)定水平以下的指示。在一個示范性實(shí)施方案中,基于被禁用的功能組件對電路小片進(jìn)行標(biāo)記。舉例來說,如果預(yù)定數(shù)目和/或類型的功能組件被禁用,那么相應(yīng)地對電路小片進(jìn)行標(biāo)記。
在本發(fā)明的一個實(shí)施例中,電路小片標(biāo)記模塊674還對電路小片所處的晶片進(jìn)行標(biāo)記。在本發(fā)明的一個實(shí)施例中,電路小片標(biāo)記模塊674基于良率標(biāo)準(zhǔn)對晶片進(jìn)行標(biāo)記。
可針對不同的性能水平對良率標(biāo)準(zhǔn)進(jìn)行分段。舉例來說,良率標(biāo)記可指示晶片中某一數(shù)目或百分比的電路小片不具有被禁用的功能組件,某一數(shù)目或百分比的電路小片具有固定數(shù)目的被禁用的功能組件,以及某一數(shù)目的電路小片被拒絕或無法廢物利用。
圖19是電路小片分類過程700的流程圖,其為根據(jù)本發(fā)明一個實(shí)施例的電路小片分類過程的一個實(shí)施例。電路小片分類過程700涉及以差別化性能水平用類似配置對電路小片進(jìn)行制造和分類。在一個示范性實(shí)施方案中,基于不同的性能水平對在同一制造過程中制造的電路小片進(jìn)行分類。舉例來說,電路小片具有相同數(shù)目的功能組件(例如,晶體管),但一些功能組件以不防止執(zhí)行功能但可能影響性能的方式被禁用。電路小片分類過程700有助于以相同功能性和不同的性能水平對電路小片進(jìn)行分類和分配。
在步驟710中,制造多個具有類似配置的電路小片。在本發(fā)明的一個實(shí)施例中,在單一晶片上制造多個電路小片。在本發(fā)明的一個實(shí)施例中,類似配置使多個電路小片中的每一者能夠執(zhí)行預(yù)定類型的功能性。在一個示范性實(shí)施方案中,利用相同的光刻工藝步驟來制造多個電路小片。在一個實(shí)施例中,可通過閱讀關(guān)于電路小片的數(shù)據(jù)單表信息來確定類似配置。舉例來說,數(shù)據(jù)單表信息可包含電路小片尺寸(例如,晶體管的數(shù)目)、功能性指示符和/或性能指示符,和/或關(guān)于電路小片所關(guān)聯(lián)的生產(chǎn)線的信息(例如,通過判定電路小片的出售價格)。如果電路小片具有大體上相同的制造成本,那么也可指示類似配置。
在步驟720中,在不消除電路小片執(zhí)行與組件相關(guān)聯(lián)的功能的能力的情況下,防止所述組件參與多個電路小片中的一者內(nèi)的生產(chǎn)性貢獻(xiàn)。在本發(fā)明的一個實(shí)施例中,去除組件生產(chǎn)力可能影響性能但不會消除所述類型的功能性。在一個示范性實(shí)施方案中,通過禁用組件來防止組件參與生產(chǎn)性貢獻(xiàn)??蓪⒈唤玫慕M件的工作流程重新導(dǎo)向其它組件。在一個實(shí)施例中,可通過分析數(shù)據(jù)單表信息來檢測防止組件參與生產(chǎn)性貢獻(xiàn)。舉例來說,電路小片是否具有適用于以不同的性能水平提供相同類型的功能性的生產(chǎn)線的產(chǎn)品單表。或者,關(guān)于是否防止組件參與生產(chǎn)性貢獻(xiàn)的另一指示是,是否直到執(zhí)行測試之后才作出哪一數(shù)據(jù)單表信息適用于電路小片的判定(例如,數(shù)據(jù)單表信息的選擇對應(yīng)于基于測試的結(jié)果對電路小片組件作出的改變)。在步驟730中,基于針對功能性的差別化性能水平對多個電路小片中的每一者進(jìn)行分類。在一個示范性實(shí)施方案中,將電路小片包含在相關(guān)于提供功能性所處的性能水平而以不同價格分配或出售的產(chǎn)品中。在本發(fā)明的一個實(shí)施例中,以不同的性能水平(例如,不同速度、帶寬等)分配具有相同設(shè)計的電路小片。
圖20是根據(jù)本發(fā)明一個實(shí)施例的處理單元800的方框圖。在本發(fā)明的一個實(shí)施例中,處理單元800包含在基于計算機(jī)的系統(tǒng)(例如,計算機(jī)系統(tǒng)200)中。在一個示范性實(shí)施方案中,處理單元800類似于中央處理單元201和/或圖形處理單元211。處理單元800包括配給組件810、性能管理狀態(tài)組件820和操作組件831到834。在一個實(shí)施例中,配給組件810類似于分配組件110,性能管理狀態(tài)組件820類似于功能組件控制器120,且操作組件831-834類似于功能組件131-134。操作組件831到834中的每一者執(zhí)行與各種任務(wù)相關(guān)聯(lián)的處理操作(例如,浮點(diǎn)計算、圖形數(shù)據(jù)操縱等)。在一個實(shí)施例中,操作組件831-834執(zhí)行類似的任務(wù)或功能。性能管理組件820選擇性地管理操作組件831到834中的每一者的操作特征的變化(例如,啟用、禁用等)。配給組件810耦合到操作組件831到834以及性能管理組件820。配給組件810將信息配給到啟用的功能組件831到834中的每一者。舉例來說,如果操作組件被啟用,那么配給組件810將處理工作流程信息配給(例如,分配)到操作組件831到834。在一個實(shí)施例中,性能管理狀態(tài)組件820和操作組件831到834類似于功能組件控制器120和功能組件831-834。
性能管理組件820接收指示對操作組件的改變的信息。舉例來說,測試結(jié)果指示操作組件有缺陷。性能管理組件820識別所述信息所應(yīng)用的操作組件831到834的子集。舉例來說,操作組件的子集有缺陷,且所述子集不被啟用而使用。在一個示范性實(shí)施方案中,啟用無缺陷的子集。舉例來說,如果測試結(jié)果指示操作組件831和834有缺陷,那么操作組件820啟用操作組件832和833但不啟用操作組件831和834。如果啟用操作組件831和834,那么性能管理組件820對其進(jìn)行禁用。性能管理組件820還向配給組件810提供操作特征狀態(tài)指示。舉例來說,操作特征狀態(tài)指示指示功能組件中的哪一者被啟用以及哪一者被禁用。啟用的操作組件中的每一者能夠執(zhí)行原本將由未被啟用的操作組件執(zhí)行的類似功能。
圖21是根據(jù)本發(fā)明一個實(shí)施例的晶片良率優(yōu)化方法900的流程圖。晶片良率優(yōu)化方法900增加來自晶片的可用電路小片的良率。在一個示范性實(shí)施方案中,晶片良率優(yōu)化方法900有助于廢物利用具有原本將從晶片中丟棄以增加晶片的總體良率的有缺陷組件的電路小片。
在步驟910中,制造晶片。晶片包含多個電路小片,且所述多個電路小片中的每一者具有能夠使用多個功能子組件并行執(zhí)行多個子任務(wù)的功能組件。舉例來說,每一電路小片可包含通過功能子組件(例如,遮影器、光柵器等)執(zhí)行多種圖形子任務(wù)(例如,遮影、紋理化、混疊、光柵化等)的管線。在本發(fā)明的一個實(shí)施例中,使用光刻工藝制造晶片。
在步驟920中,針對每一電路小片,識別出可操作的多個功能子組件中的每一者和不可操作的多個功能子組件中的每一者。在一個實(shí)施例中,作為常規(guī)電路測試過程的一部分而識別可操作的和不可操作的功能子組件。舉例來說,將預(yù)定輸入饋入到功能子組件中,并檢查所得輸出。檢查輸出信息中是否有錯誤(例如,將輸出與預(yù)定的正確結(jié)果進(jìn)行比較)。如果輸出信息包含錯誤(例如,如果輸出不與預(yù)定的正確結(jié)果匹配),那么將功能子組件識別為不可操作的。
在步驟930中,禁用識別為不可操作的所述多個功能子組件中的每一者的操作。在一個實(shí)施例中,可啟用識別為可操作的所述多個功能子組件中的每一者。在一個實(shí)施例中,通過硬“編碼”機(jī)制禁用不可操作的功能子組件和啟用可操作的功能子組件。舉例來說,利用鑄造激光修整位(foundry laser trim bit)來配置或禁用功能子組件。在另一實(shí)施例中,利用軟件可編程信息來配置(例如,禁用或啟用)功能子組件。
在步驟940中,基于可操作狀態(tài)(例如,在步驟930中組件被識別為可操作的或不可操作的)將多個電路小片中的每一者分類到一性能等級中。舉例來說,可將電路小片分類到其中全部或較大百分比的功能子組件可操作并被啟用的高性能等級中。可將電路小片分類到其中較少的功能子組件保持被啟用的中等性能范圍等級中。可將這些性能范圍指定為可廢物利用的。也可能存在其中電路小片不滿足一最小值且被丟棄(或經(jīng)受某一其它校正動作以盡可能解決所述問題)的性能等級。
在步驟950中,廢物利用被分類在指定為可廢物利用的性能等級中的電路小片。舉例來說,使用具有某些被禁用的功能子組件的電路小片來執(zhí)行處理任務(wù),但執(zhí)行所述任務(wù)的速度減小。
圖22是根據(jù)本發(fā)明一個實(shí)施例的功能組件遠(yuǎn)端配置結(jié)構(gòu)1100的方框圖。功能組件遠(yuǎn)端配置結(jié)構(gòu)1100有助于配置包含在集成電路小片中的功能組件。舉例來說,從外部或遠(yuǎn)端系統(tǒng)對配置進(jìn)行控制。功能組件遠(yuǎn)端配置結(jié)構(gòu)1100提供可以安全且受控方式改變功能組件的操作特征以實(shí)現(xiàn)許多所需實(shí)施方案的結(jié)構(gòu)。
遠(yuǎn)端配置環(huán)境1100包含集成電路小片1110和遠(yuǎn)端配置控制模塊1150。集成電路小片1110包括配置模塊1133、分配組件1131和功能組件1111到1114,其中每一功能組件和分配組件1131分別包含操作特征寄存器1121到1125。遠(yuǎn)端配置控制器模塊1150包括編碼模塊1180和配置解析模塊1170。
遠(yuǎn)端配置控制器模塊1150控制集成電路小片1110中功能組件的配置。在一個實(shí)施例中,遠(yuǎn)端配置控制器模塊1150在芯片外(例如,在驅(qū)動器中)。配置解析模塊1170判定集成電路小片1110的功能組件的操作特征設(shè)定值。在一個示范性實(shí)施方案中,配置解析模塊1170參與自動化功能性協(xié)商過程(例如,容量按需(capacity on demand)),在所述協(xié)商過程中關(guān)于升級的操作特征達(dá)成協(xié)議,并作為功能性協(xié)商過程的一部分而動態(tài)地改變功能性指示符。在一個示范性實(shí)施方案中,設(shè)定操作特征以維持產(chǎn)品差別化。配置解析模塊1 170將操作特征指示符值轉(zhuǎn)發(fā)到編碼模塊1180。編碼模塊1180對操作特征指示符值進(jìn)行編碼(例如,用密鑰、散列值等)并將經(jīng)編碼的操作特征指示符值轉(zhuǎn)發(fā)到配置模塊1133。
配置模塊1133引導(dǎo)功能組件配置。舉例來說,配置模塊1133基于從編碼模塊1 180接收的經(jīng)編碼的操作特征設(shè)定值來引導(dǎo)對功能組件操作特征設(shè)定值的改變(例如,針對功能組件1111、1112、1113或1114)。配置模塊1133可對功能組件操作特征指示符值進(jìn)行解碼。配置模塊1133將解碼值轉(zhuǎn)發(fā)到功能性跟蹤模塊1137以與相應(yīng)的操作特征設(shè)定值進(jìn)行比較。
功能性跟蹤模塊1137引導(dǎo)對于功能組件操作特征的維護(hù)。在一個示范性實(shí)施方案中,功能性跟蹤模塊1137提供經(jīng)解碼的功能性指示符值與特定的操作特征設(shè)定值之間的相關(guān)性。舉例來說,功能性跟蹤模塊1137對照著操作特征設(shè)定值的預(yù)定相關(guān)性列表來檢查功能性指示符。功能性跟蹤模塊1137還可判定是否存在可處理識別出的功能組件的工作流程的其它功能組件。
圖23是根據(jù)本發(fā)明一個實(shí)施例的遠(yuǎn)端再配置方法1200的流程圖。遠(yuǎn)端再配置方法1200提供一種用于維持對再配置操作的遠(yuǎn)端控制的機(jī)制。在一個示范性實(shí)施方案中,遠(yuǎn)端再配置方法1200用于按使用計費(fèi)過程中,其中利用某些配置特征需要額外支付。舉例來說,如果用戶希望激活額外的功能組件(例如,額外的圖形管線、浮點(diǎn)組件等),那么用戶必須進(jìn)行額外支付。
在步驟1210中,進(jìn)行電路小片功能組件再配置請求過程,其中系統(tǒng)請求來自遠(yuǎn)端資源的再配置代碼。在一個實(shí)施例中,再配置請求過程包含請求并接收電路小片功能組件再配置代碼。在一個示范性實(shí)施方案中,功能組件控制器(例如,120等)利用電路小片再配置代碼來再配置功能組件。應(yīng)了解,可經(jīng)由多種通信系統(tǒng)來傳遞電路小片功能組件再配置代碼的請求和接收。舉例來說,可經(jīng)由因特網(wǎng)來傳遞所述請求和電路小片功能組件再配置代碼。在一個實(shí)施例中,所述請求包含再配置代碼許可指示符,其指示請求者經(jīng)授權(quán)以接收再配置代碼(例如,請求者已進(jìn)行必需的支付、具有授權(quán)的系統(tǒng)等)。
在一個實(shí)施例中,電路小片功能組件再配置請求過程包含再配置代碼許可指示符請求過程以獲得再配置代碼許可指示符。在一個示范性實(shí)施方案中,再配置代碼許可指示符請求過程包括轉(zhuǎn)發(fā)對許可指示符的支付和請求,以及接收對于對許可指示符的請求和支付的響應(yīng)。舉例來說,消費(fèi)者或用戶經(jīng)由因特網(wǎng)向遠(yuǎn)端中央資源進(jìn)行電子支付,并接收返回的許可指示符(例如,位流代碼)。
在步驟1220中,執(zhí)行再配置代碼產(chǎn)生過程。在一個示范性實(shí)施方案中,遠(yuǎn)端資源處理對于再配置代碼的請求。在一個實(shí)施例中,再配置代碼產(chǎn)生過程包括接收對于再配置代碼和許可指示符的請求,分析許可指示符的有效性,和當(dāng)許可指示符有效時提供再配置代碼。舉例來說,遠(yuǎn)端資源接收增加系統(tǒng)中激活的圖形管線的數(shù)目的請求。遠(yuǎn)端資源分析請求者是否已進(jìn)行必需的支付。如果已進(jìn)行必需的支付,那么遠(yuǎn)端資源轉(zhuǎn)發(fā)再配置代碼以便增加系統(tǒng)中激活的圖形管線的數(shù)目。
在一個實(shí)施例中,再配置代碼產(chǎn)生過程包含進(jìn)行再配置代碼許可指示符響應(yīng)過程以響應(yīng)獲取再配置代碼許可指示符的請求過程。在一個示范性實(shí)施方案中,再配置代碼許可指示符響應(yīng)過程包含接收對于許可指示符的支付,和響應(yīng)于接收到支付而轉(zhuǎn)發(fā)許可指示符。
在步驟1230中,當(dāng)系統(tǒng)接收到再配置代碼(例如,從遠(yuǎn)端資源接收)時,執(zhí)行電路小片功能組件再配置過程。電路小片功能組件再配置過程包含根據(jù)再配置代碼再配置電路小片功能組件(例如,功能組件131、132、133、134等)。在一個實(shí)施例中,電路小片功能組件再配置過程類似于功能組件配置過程400。
因此,本發(fā)明實(shí)現(xiàn)了集成電路小片的靈活的操作配置并增強(qiáng)了產(chǎn)品差別化。電路小片可用于具有多個性能水平的生產(chǎn)線中。本發(fā)明還有助于制造能夠經(jīng)動態(tài)地配置以執(zhí)行高性能任務(wù)或低性能任務(wù)從而允許功率節(jié)省和經(jīng)濟(jì)差別化的單一電路小片。本發(fā)明還有助于節(jié)省制造資源和廢物利用具有有缺陷組件的電路小片。
作為簡要概述,本文已揭示以下內(nèi)容。
概念1.一種減小性能的電路廢物利用方法,其包括準(zhǔn)備芯片以進(jìn)行測試;測試所述芯片;以及基于所述測試的結(jié)果對所述芯片執(zhí)行功能組件配置過程。
概念2.根據(jù)概念1所述的減小性能的電路廢物利用方法,其中所述測試包括識別有缺陷的功能組件;判定所述集成電路中是否包含有無缺陷的功能組件,其中所述無缺陷的功能組件與所述有缺陷的功能組件執(zhí)行類似功能;
如果所述無缺陷的組件包含在所述集成電路中,那么指定所述有缺陷的功能組件不被使用;以及如果執(zhí)行所述類似功能的所述無缺陷的組件不包含在所述集成電路中,那么將所述集成電路標(biāo)記為有缺陷的。
概念3.根據(jù)概念1所述的減小性能的電路廢物利用方法,其中禁用或啟用所述芯片的多個同質(zhì)執(zhí)行組件中的一者。
概念4.根據(jù)概念1所述的減小性能的電路廢物利用方法,其進(jìn)一步包括再配置所述芯片以允許其它功能組件執(zhí)行所述被禁用的功能組件的功能。
概念5.根據(jù)概念1所述的減小性能的電路廢物利用方法,其中所述功能組件配置過程包括接收關(guān)于有缺陷的功能組件的指示;判定所述有缺陷的功能組件是否是多個類似功能組件中的一者;如果所述有缺陷的功能組件是所述多個類似功能組件中的一者,那么禁用所述有缺陷的功能組件;啟用一個或一個以上無缺陷的功能組件;以及向一組件提供所述禁用和所述啟用的通知,所述組件另外將信息傳遞給所述有缺陷的功能組件。
概念6.根據(jù)概念1所述的減小性能的電路廢物利用方法,其中從測試系統(tǒng)接收所述關(guān)于有缺陷的功能組件的指示。
概念7.一種電路小片分類過程,其包括制造多個具有類似配置的電路小片;在不消除所述多個電路小片中的一者執(zhí)行與一組件相關(guān)聯(lián)的功能的能力的情況下,防止所述組件參與所述多個電路小片中的所述一者內(nèi)的生產(chǎn)性貢獻(xiàn);以及基于針對所述功能性的差別化性能水平對所述多個電路小片進(jìn)行分類。
概念8.根據(jù)概念7所述的電路小片分類過程,其中在單一晶片上制造所述多個電路小片。
概念9.根據(jù)概念7所述的電路小片分類過程,其中通過閱讀關(guān)于所述多個電路小片的數(shù)據(jù)單表信息來判定類似配置。
概念10.根據(jù)概念7所述的電路小片分類過程,其中如果電路小片具有大體上相同的制造成本,那么判定類似配置。
概念11.根據(jù)概念7所述的電路小片分類過程,其中通過禁用所述組件來防止所述組件參與生產(chǎn)性貢獻(xiàn)。
概念12.根據(jù)概念7所述的電路小片分類過程,其中直到執(zhí)行測試之后才作出哪一數(shù)據(jù)單表信息適用于所述多個電路小片中包含的電路小片的判定。
概念13.根據(jù)概念7所述的電路小片分類過程,其中將所述多個電路小片中包含的第一電路小片和第二電路小片包含在相關(guān)于提供功能性所處的性能水平而以不同價格出售的不同產(chǎn)品中。
概念14.根據(jù)概念7所述的電路小片分類過程,其中以相同的設(shè)計制造所述多個電路小片中的每一者,并以不同的性能水平分配所述多個電路小片中的每一者。
概念15.一種增加來自晶片的可用電路小片的良率的方法,其包括制造晶片,其中所述晶片包含多個電路小片,且其中所述多個電路小片中的每一者具有能夠使用多個功能子組件并行執(zhí)行多個子任務(wù)的功能組件;識別出可操作的和不可操作的所述多個功能子組件中的每一者;禁用識別為不可操作的所述多個功能子組件中的每一者的操作;啟用識別為可操作的所述多個功能子組件中的每一者的選擇性操作;基于所述功能子組件的可操作狀態(tài)將所述多個電路小片中的所述每一者分類到一性能等級中;以及如果所述多個所述電路小片中的具有不可操作的功能子組件的一者被分類到指定為可廢物利用的性能等級中,那么廢物利用所述多個所述電路小片中的所述一者。
概念16.根據(jù)概念15所述的方法,其中所述子任務(wù)包含圖形子任務(wù)。
概念17.根據(jù)概念15所述的方法,其中作為測試過程的一部分來識別所述不可操作的功能子組件。
概念18.根據(jù)概念15所述的方法,其中所述廢物利用所述多個所述電路小片中的一者包含用對應(yīng)于所述多個所述電路小片中的所述一者的性能能力的性能指示符來標(biāo)記所述電路小片。
概念19.根據(jù)概念15所述的方法,其中所述多個所述電路小片中的所述一者包含圖形處理管線功能組件。
概念20.根據(jù)概念15所述的方法,其進(jìn)一步包括丟棄所述多個所述電路小片中的不提供完全功能性的一者。
下文揭示一種具有經(jīng)配置以使用嵌套交錯書寫圖案來遍歷屏幕區(qū)域的光柵組件的GPU。
技術(shù)領(lǐng)域本發(fā)明大體上涉及硬件加速的圖形計算機(jī)系統(tǒng)。
背景技術(shù)
計算機(jī)性能的新近進(jìn)步已使圖形系統(tǒng)能夠使用個人計算機(jī)、家庭視頻游戲計算機(jī)、手提式裝置等提供更逼真的圖形圖像。在這些圖形系統(tǒng)中,執(zhí)行許多程序以將圖形圖元“渲染”或繪畫到系統(tǒng)屏幕上?!皥D形圖元”是例如頂點(diǎn)、多邊形等圖形圖片的基本組成部分。所渲染的圖像由這些圖形圖元的組合形成。可利用許多程序來執(zhí)行3-D圖形渲染。
已開發(fā)出專門的圖形處理單元(例如,GPU等)來優(yōu)化執(zhí)行圖形渲染程序所需的計算。GPU經(jīng)配置以用于高速操作,且通常并入有一個或一個以上渲染管線。每一管線包含許多經(jīng)優(yōu)化以用于圖形指令/數(shù)據(jù)的高速執(zhí)行的基于硬件的功能單元,其中所述指令/數(shù)據(jù)被饋入到管線的前端且所計算的結(jié)果出現(xiàn)在管線的后端處。GPU的基于硬件的功能單元、高速緩沖存儲器、固件等經(jīng)優(yōu)化以對低階層圖形圖元(例如,包括“點(diǎn)”、“線”、“三角形”等)進(jìn)行操作并產(chǎn)生實(shí)時渲染的3-D圖像。
實(shí)時渲染的3-D圖像是使用光柵顯示技術(shù)產(chǎn)生的。光柵顯示技術(shù)廣泛用于計算機(jī)圖形系統(tǒng)中,且通常是指圖形圖元影響構(gòu)成圖像的多個像素的柵格所借助的機(jī)制。對于每一圖元,典型的光柵化系統(tǒng)通常逐個像素地步進(jìn),并依據(jù)圖元的貢獻(xiàn)確定是否將給定像素“渲染”或?qū)懭氲綆彌_器或像素地圖中。這進(jìn)而確定如何將表示每一像素的數(shù)據(jù)寫入到顯示緩沖器。
已開發(fā)出各種遍歷算法來以覆蓋圖元內(nèi)的所有像素的方式逐個像素進(jìn)行移動。舉例來說,一些解決方案涉及以單向方式產(chǎn)生像素。這些傳統(tǒng)的單向解決方案涉及在恒定方向上逐行產(chǎn)生像素。這需要序列在圖元的相對側(cè)的位置處完成時,越過圖元移動到圖元的第一側(cè)的啟始位置。每次執(zhí)行此移動時,存儲沒有定位在預(yù)先立即被處理的像素或紋理值附近的像素或紋理值。因此,這些相隔較遠(yuǎn)的像素或紋理值有較大可能性屬于不同的存儲器存取區(qū)塊,從而使此類存取效率低下。
因此,需要一種可確保所需的圖形渲染數(shù)據(jù)(例如,紋理值、標(biāo)準(zhǔn)圖等)可維持在存儲器中以供由GPU進(jìn)行有效存取的光柵化過程。
發(fā)明內(nèi)容本發(fā)明實(shí)施例提供一種用于確保所需的圖形渲染數(shù)據(jù)(例如,紋理值、標(biāo)準(zhǔn)圖等)可維持在低等待時間存儲器中以供由GPU進(jìn)行有效存取的方法和系統(tǒng)。本發(fā)明實(shí)施例通過增加高速緩沖存儲器存取的效率并通過限制由于存取較高等待時間存儲器而產(chǎn)生的性能損失,來提供快速且有效的實(shí)時3-D圖形渲染。
在一個實(shí)施例中,本發(fā)明實(shí)施為經(jīng)配置以遍歷一區(qū)域的像素的GPU結(jié)構(gòu)。GPU包含用于產(chǎn)生多邊形描述的設(shè)置單元和耦合到所述設(shè)置單元用于對多邊形描述進(jìn)行光柵化的光柵器單元。光柵器單元經(jīng)配置以使用第一交錯書寫圖案沿著主軸遍歷圖像的多個像素,且在使用第一交錯書寫圖案進(jìn)行遍歷期間,使用第二交錯書寫圖案遍歷圖像的多個像素,其中第二交錯書寫圖案嵌套在第一交錯書寫圖案內(nèi)。
在一個實(shí)施例中,第一交錯書寫圖案和第二交錯書寫圖案由GPU的光柵單元內(nèi)的粗略光柵器組件實(shí)施。在一個實(shí)施例中,GPU將圖像的多個像素分組為若干瓦片,且使用第一交錯書寫圖案和第二交錯書寫圖案遍歷所述瓦片。
在一個實(shí)施例中,每瓦片的像素數(shù)目是可編程的,且根據(jù)圖形渲染操作的要求,可指定為4×4、8×8、16×16、32×32、64×64、128×128等,包含矩形以及正方形陣列。類似地,可根據(jù)GPU的高速緩沖存儲器的尺寸編程每瓦片的像素數(shù)目,且第一交錯書寫圖案和/或第二交錯書寫圖案的主軸是可編程的。
具體實(shí)施方式
現(xiàn)將具體參照本發(fā)明的優(yōu)選實(shí)施例,附圖中說明所述實(shí)施例的實(shí)例。雖然將結(jié)合優(yōu)選實(shí)施例描述本發(fā)明,但將了解,不希望其將本發(fā)明限于這些實(shí)施例。相反,本發(fā)明希望涵蓋可包含在如所附權(quán)利要求書界定的本發(fā)明的精神和范圍內(nèi)的替代形式、修改和等效物。此外,在本發(fā)明實(shí)施例的以下具體實(shí)施方式
中,陳述了大量特定細(xì)節(jié)以便提供對本發(fā)明的全面理解。然而,所屬領(lǐng)域的一般技術(shù)人員將了解,可在沒有這些特定細(xì)節(jié)的情況下實(shí)踐本發(fā)明。在其它例子中,未詳細(xì)描述眾所周知的方法、程序、組件和電路,以便不會不必要地混淆本發(fā)明實(shí)施例的各方面。
符號和術(shù)語依據(jù)對計算機(jī)存儲器內(nèi)數(shù)據(jù)位的操作的程序、步驟、邏輯區(qū)塊、處理和其它符號表示來呈現(xiàn)以下具體實(shí)施方式
的一些部分。這些描述和表示是數(shù)據(jù)處理領(lǐng)域的技術(shù)人員用來最有效地將其工作的主旨傳達(dá)給所屬領(lǐng)域的其他技術(shù)人員的手段。此處,通常將程序、計算機(jī)執(zhí)行的步驟、邏輯區(qū)塊、過程等理解為產(chǎn)生所需結(jié)果的步驟或指令的自相容序列。所述步驟是那些需要對物理量進(jìn)行物理操縱的步驟。通常(盡管不一定),這些量采取能夠在計算機(jī)系統(tǒng)中被存儲、傳遞、組合、比較和以另外的方式操縱的電或磁信號的形式。已證明有時(主要由于一般用途的原因)將這些信號稱為位、值、元素、符號、字符、項(xiàng)目、數(shù)字等是便利的。
然而,應(yīng)牢記,所有這些和類似術(shù)語應(yīng)與適當(dāng)?shù)奈锢砹肯嚓P(guān)聯(lián),且僅僅是施加于這些量的便利的標(biāo)志。從以下論述內(nèi)容了解,除非另外明確規(guī)定,否則將了解,在本發(fā)明中,利用例如“處理”或“存取”或“執(zhí)行”或“存儲”或“渲染”等術(shù)語的論述內(nèi)容指代計算機(jī)系統(tǒng)(例如,圖1的計算機(jī)系統(tǒng)100)或類似的電子計算裝置的動作和處理,所述類似的電子計算裝置將表示為計算機(jī)系統(tǒng)的寄存器和存儲器內(nèi)的物理(電子)量的數(shù)據(jù)操縱并變換為類似地表示為計算機(jī)系統(tǒng)存儲器或寄存器或其它此類信息存儲、傳輸或顯示裝置內(nèi)的物理量的其它數(shù)據(jù)。
計算機(jī)系統(tǒng)平臺圖1展示根據(jù)本發(fā)明一個實(shí)施例的計算機(jī)系統(tǒng)100。計算機(jī)系統(tǒng)100描繪根據(jù)本發(fā)明實(shí)施例的基本計算機(jī)系統(tǒng)的組件,其提供執(zhí)行平臺以獲得某種基于硬件的和基于軟件的功能性。大體上來說,計算機(jī)系統(tǒng)100包括至少一個CPU 101、系統(tǒng)存儲器115,和至少一個圖形處理器單元(GPU)110。CPU 101可經(jīng)由橋接器組件/存儲器控制器(未圖示)耦合到系統(tǒng)存儲器115,或可經(jīng)由CPU 101內(nèi)部的存儲器控制器(未圖示)直接耦合到系統(tǒng)存儲器115。GPU 110耦合到顯示器112。一個或一個以上額外GPU可視需要耦合到系統(tǒng)100以進(jìn)一步增加其計算能力。GPU 110耦合到CPU 101和系統(tǒng)存儲器115。系統(tǒng)100可實(shí)施為(例如)臺式計算機(jī)系統(tǒng)或服務(wù)器計算機(jī)系統(tǒng),其具有耦合到專門圖形渲染GPU 110的功能強(qiáng)大的通用CPU 101。在此實(shí)施例中,可包含添加外圍總線、專門圖形存儲器、IO裝置等的組件。類似地,系統(tǒng)100可實(shí)施為手提式裝置(例如,手機(jī)等)或置頂視頻游戲控制臺裝置,例如可從美國華盛頓州雷蒙德市Microsoft公司購得的Xbox,或可從日本東京的Sony Computer Entertainment公司購得的PlayStation3。
應(yīng)了解,GPU 110可實(shí)施為離散組件、經(jīng)設(shè)計以經(jīng)由連接器(例如,AGP插槽、PCI-Express插槽等)耦合到計算機(jī)系統(tǒng)100的離散圖形卡、離散集成電路小片(例如,直接安裝在母板上),或作為包含在計算機(jī)系統(tǒng)芯片集組件(未圖示)的集成電路小片內(nèi)的集成GPU。另外,可為GPU 110包含本地圖形存儲器114以實(shí)現(xiàn)高帶寬圖形數(shù)據(jù)存儲。
實(shí)施例圖2展示描繪根據(jù)本發(fā)明一個實(shí)施例以交錯書寫圖案光柵化的像素柵格的圖200。如圖2所描繪,交錯書寫圖案由虛線221指示。
在一個實(shí)施例中,如圖2的圖表200中所描繪,以線221所指示的次序遍歷像素柵格的每一像素。線221展示遍歷的交錯書寫圖案,其中術(shù)語“交錯書寫”表示通過在每一通過沿著正交軸不斷前進(jìn)時沿著一個軸來回掃描(非常類似于農(nóng)民犁地或收割莊稼)而訪問2D區(qū)域上的所有像素的遍歷圖案。術(shù)語交錯書寫通常意味著如在(例如)田地里一樣“如同牛犁地”。
因此,如圖2所描繪,此交錯書寫光柵化表示沿著主軸來回折疊的蜿蜒圖案。在圖2實(shí)例中,主軸是水平的。舉例來說,水平交錯書寫序列可產(chǎn)生圖元三角形內(nèi)的處于從左向右的一行上的所有像素,并接著產(chǎn)生從右向左的下一行,等等。此折疊路徑確保從所產(chǎn)生的像素到先前新近產(chǎn)生的像素的平均距離相對較小。
仍參看圖2,用于訪問當(dāng)使大圖元(例如,三角形等)光柵化時所覆蓋的屏幕區(qū)域的交錯書寫圖案的優(yōu)點(diǎn)是,維持相關(guān)數(shù)據(jù)的高速緩沖存儲,以及減少幀緩沖器和紋理存取所需的存儲器請求。舉例來說,當(dāng)新近像素群組和/或其相應(yīng)的紋理值保持在有限尺寸的存儲器中時,產(chǎn)生在新近產(chǎn)生的像素附近的像素較為重要。
一個此類存儲器是高速緩沖存儲器。高速緩沖存儲器經(jīng)優(yōu)化以實(shí)現(xiàn)高速、低等待時間存取。然而,GPU可用的高速緩沖存儲器的量通常比所需的總幀緩沖器存儲器少得多。因此,交錯書寫序列更經(jīng)常發(fā)現(xiàn)像素或紋理值已載入高速緩沖存儲器中,且因此避免對較慢幀緩沖器存儲器(例如,本地圖形存儲器112)或慢得多的系統(tǒng)存儲器(例如,存儲器115)進(jìn)行代價較高的高等待時間存取。
應(yīng)注意,在一個實(shí)施例中,代替于實(shí)施像素柵格的交錯書寫圖案遍歷,可在瓦片柵格上實(shí)施交錯書寫圖案遍歷。在此實(shí)施例中,每一瓦片包括像素區(qū)塊。瓦片的尺寸(例如,每瓦片的像素數(shù)目)通常根據(jù)GPU的渲染能力和/或高速緩沖存儲器或幀緩沖器存儲器的尺寸來進(jìn)行調(diào)整。在一個實(shí)施例中,瓦片的尺寸是可編程的,且可動態(tài)地選擇為(例如)4×4、8×8、16×16、32×32、64×64、128×128等,每瓦片包含像素或子像素的任何矩形(以及正方形)陣列。
圖24展示描繪根據(jù)本發(fā)明一個實(shí)施例在瓦片柵格上的第一交錯書寫圖案和嵌套于第一交錯書寫圖案內(nèi)部的第二交錯書寫圖案的圖300。
如上所述,水平交錯書寫圖案(例如,水平主軸)表示沿著水平軸來回折疊的蜿蜒圖案。在本實(shí)施例中,第二交錯書寫圖案內(nèi)嵌于此第一水平交錯書寫圖案內(nèi)。如圖24所描繪,第二交錯書寫圖案是垂直交錯書寫圖案。此由沿著垂直軸來回折疊的線321指示。垂直交錯書寫圖案在沿著成拱形的水平交錯書寫圖案的水平軸行進(jìn)時沿著垂直軸來回折疊。一旦垂直交錯書寫圖案已行進(jìn)到上行瓦片(例如,其中所述行為8個瓦片高)的右手側(cè),其就越過其自身水平地折回,并朝向下行瓦片的左手側(cè)往回行進(jìn)。當(dāng)垂直交錯書寫圖案從下行瓦片的右手側(cè)行進(jìn)到左手側(cè)時,可看見其自始至終沿著下行上下折疊。
以此方式,本發(fā)明實(shí)施例可將第二垂直交錯書寫圖案內(nèi)嵌到第一水平交錯書寫圖案中。將第二交錯書寫圖案內(nèi)嵌到第一交錯書寫圖案中用于進(jìn)一步局部化數(shù)據(jù)存取并限制高速緩沖存儲器漏失。舉例來說,多個內(nèi)嵌的交錯書寫圖案可經(jīng)配置以與GPU的高速緩沖存儲器的尺寸和配置(例如,高速緩沖存儲器線尺寸等)精密地對準(zhǔn)。此特征幫助維持相對于高速緩沖存儲器存取的位置。多個內(nèi)嵌的交錯書寫圖案還可經(jīng)配置以維持相對于幀緩沖器存儲器112的存儲庫存取的位置,其中多個DRAM庫(未圖示)構(gòu)成幀緩沖器存儲器112。此外,多個交錯書寫圖案可經(jīng)配置以與用于存取存儲器的預(yù)取過程對準(zhǔn),其中預(yù)取過程依賴于可預(yù)測的存儲器存取模式,使得其可進(jìn)行預(yù)見以從存儲器將數(shù)據(jù)取至GPU的高速緩沖存儲器中。
圖25展示根據(jù)本發(fā)明一個實(shí)施例的更復(fù)雜的多個嵌套交錯書寫圖案遍歷過程。如圖25所描繪,展示子瓦片411和子瓦片412。子瓦片411-412是較大瓦片(例如,圖24所示的瓦片350)的子瓦片。線451展示第三水平交錯書寫圖案和第四垂直交錯書寫圖案可相對于水平軸421和垂直軸422而進(jìn)一步嵌套在上文圖24所描述的第一水平交錯書寫圖案和第二垂直交錯書寫圖案內(nèi)的方式。以此方式,本發(fā)明實(shí)施例可將多個交錯書寫圖案內(nèi)嵌到第一交錯書寫圖案中,這用于局部化數(shù)據(jù)存取并將高速緩沖存儲器漏失限制到更加精細(xì)的程度。
應(yīng)注意,如上所述,除了像素瓦片外,本發(fā)明實(shí)施例還可對個別像素進(jìn)行操作,且可根據(jù)特定應(yīng)用的需要來定制瓦片的尺寸(例如,可由圖形驅(qū)動器編程等)。另外,應(yīng)注意,可根據(jù)特定應(yīng)用的需要來定制交錯書寫圖案的配置(例如,可由圖形驅(qū)動器編程等)。舉例來說,第一和第二交錯書寫圖案可以是垂直與水平的、水平與垂直的,等等。
圖26展示根據(jù)本發(fā)明一個實(shí)施例的GPU 110的內(nèi)部組件的圖500。如圖26所示,GPU 110包含設(shè)置引擎501和光柵器單元502。在本實(shí)施例中,本發(fā)明的功能性實(shí)施在光柵器單元502的硬件和軟件內(nèi)。通常,光柵器單元502的作用是將從設(shè)置引擎501接收的基于頂點(diǎn)的描述轉(zhuǎn)換為基于邊描述的描述。光柵器單元502隨后將這些邊描述轉(zhuǎn)換為包括實(shí)際像素描述(例如,像素區(qū)域、像素子樣本等)的填充區(qū)域。隨后將像素描述向前傳遞到GPU 110內(nèi)的其它單元以進(jìn)行進(jìn)一步處理和渲染。
在一個實(shí)施例中,光柵器單元502包含精細(xì)光柵組件503和粗略光柵組件504。粗略光柵組件504實(shí)施如上所述的基于瓦片的交錯書寫圖案光柵化,此時其快速地搜索瓦片柵格以識別所關(guān)注的瓦片(例如,被圖元覆蓋的瓦片)。一旦識別出所關(guān)注的瓦片,精細(xì)光柵組件503就個別地識別被圖元覆蓋的像素。因此,在此實(shí)施例中,粗略光柵組件504通過使用瓦片來快速地搜索像素柵格,且精細(xì)光柵組件503使用由粗略光柵組件504產(chǎn)生的信息,并通過個別地識別被圖元覆蓋的像素來實(shí)施精細(xì)粒度光柵化。在兩種情況下,粗略光柵組件504和精細(xì)光柵組件503在其光柵化期間均可利用一個或一個以上交錯書寫圖案(例如,嵌套的或非嵌套的)。
仍參看圖26,GPU 110進(jìn)一步包含高速緩沖存儲器521,其作用是針對最頻繁使用的圖形渲染數(shù)據(jù)實(shí)施高速低等待時間存儲。此數(shù)據(jù)通常包括紋理信息、頂點(diǎn)信息、顏色等。展示高速緩沖存儲器521耦合到本地圖形存儲器112。高速緩沖存儲器521利用一個或一個以上高速緩沖存儲維持機(jī)制來維持與本地圖形存儲器112的一致性。箭頭540展示GPU 110與系統(tǒng)存儲器(例如,圖1所示的存儲器115)之間的通信路徑。與系統(tǒng)存儲器115的通信通常甚至比與本地圖形存儲器112的通信慢得多。因此,本發(fā)明實(shí)施例的存儲器存取局部化屬性通過使所發(fā)生的高速緩沖存儲器漏失的數(shù)目最小化而大大減少了由于存取本地圖形存儲器112和系統(tǒng)存儲器115而招致的損失。
作為簡要概述,本文已揭示以下內(nèi)容。
概念1.一種GPU(圖形處理器單元),其包括設(shè)置單元,其用于產(chǎn)生多邊形描述;光柵器單元,其耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化,其中所述光柵器單元經(jīng)配置以使用第一交錯書寫圖案沿著主軸遍歷圖像的多個像素,且在使用第一交錯書寫圖案進(jìn)行遍歷期間,使用第二交錯書寫圖案遍歷圖像的多個像素,其中第二交錯書寫圖案嵌套在第一交錯書寫圖案內(nèi)。
概念2.根據(jù)概念1所述的GPU,其中第一交錯書寫圖案和第二交錯書寫圖案由光柵單元內(nèi)的粗略光柵器組件實(shí)施。
概念3.根據(jù)概念1所述的GPU,其中將圖像的多個像素分組為若干瓦片,且使用第一交錯書寫圖案和第二交錯書寫圖案遍歷所述瓦片。
概念4.根據(jù)概念3所述的GPU,其中每瓦片的像素數(shù)目是可編程的,且可指定為像素或子像素樣本的正方形或矩形陣列。
概念5.根據(jù)概念3所述的GPU,其中每瓦片的像素數(shù)目可根據(jù)GPU的高速緩沖存儲器的尺寸編程。
概念6.根據(jù)概念1所述的GPU,其中第一交錯書寫圖案的主軸是可編程的。
概念7.根據(jù)概念6所述的GPU,其中第一交錯書寫圖案的主軸是水平軸,且其中第二交錯書寫圖案沿著垂直軸。
概念8.根據(jù)概念6所述的GPU,其中第一交錯書寫圖案的主軸是垂直軸,且其中第二交錯書寫圖案沿著水平軸。
概念9.根據(jù)概念6所述的GPU,其中第二交錯書寫圖案的配置是可編程的。
概念10.根據(jù)概念1所述的GPU,其中第一交錯書寫圖案和第二交錯書寫圖案經(jīng)配置以維持相對于高速緩沖存儲器存取的位置。
概念11.根據(jù)概念1所述的GPU,其中第一交錯書寫圖案和第二交錯書寫圖案經(jīng)配置以與用于存取存儲器的預(yù)取過程對準(zhǔn)。
概念12.根據(jù)概念1所述的GPU,其中第一交錯書寫圖案和第二交錯書寫圖案經(jīng)配置以維持相對于耦合到GPU的幀緩沖器存儲器的存儲庫存取的位置。
概念13.一種GPU(圖形處理器單元),其包括設(shè)置單元,其用于產(chǎn)生多邊形描述;光柵器單元,其耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化;粗略光柵組件,其在所述光柵單元內(nèi),其中所述粗略光柵器組件經(jīng)配置以使用第一交錯書寫圖案沿著主軸遍歷圖像的多個像素,且在使用第一交錯書寫圖案進(jìn)行遍歷期間,使用第二交錯書寫圖案遍歷圖像的多個像素,其中第二交錯書寫圖案嵌套在第一交錯書寫圖案內(nèi),且其中將圖像的多個像素分組為若干瓦片,且使用第一交錯書寫圖案和第二交錯書寫圖案遍歷所述瓦片。
概念14.根據(jù)概念13所述的GPU,其中每瓦片的像素數(shù)目可根據(jù)GPU的高速緩沖存儲器的尺寸編程。
概念15.根據(jù)概念13所述的GPU,其中第一交錯書寫圖案的主軸是可編程的。
概念16.根據(jù)概念15所述的GPU,其中第一交錯書寫圖案的主軸是水平軸,且其中第二交錯書寫圖案沿著垂直軸。
概念17.根據(jù)概念16所述的GPU,其中第二交錯書寫圖案的配置是可編程的。
概念18.根據(jù)概念13所述的GPU,其中第一交錯書寫圖案和第二交錯書寫圖案經(jīng)配置以維持相對于高速緩沖存儲器存取的位置。
概念19.一種計算機(jī)系統(tǒng),其包括系統(tǒng)存儲器;中央處理器單元,其耦合到所述系統(tǒng)存儲器;以及圖形處理器單元,其通信地耦合到所述中央處理器單元;
設(shè)置單元,其在所述圖形處理器單元內(nèi),用于產(chǎn)生多邊形描述;光柵器單元,其在所述圖形處理器單元內(nèi)且耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化;以及粗略光柵組件,其在所述光柵單元內(nèi),其中所述粗略光柵器組件經(jīng)配置以使用第一交錯書寫圖案沿著主軸遍歷圖像的多個像素,且在使用第一交錯書寫圖案進(jìn)行遍歷期間,使用第二交錯書寫圖案遍歷圖像的多個像素,其中第二交錯書寫圖案嵌套在第一交錯書寫圖案內(nèi),且其中將圖像的多個像素分組為若干瓦片,且使用第一交錯書寫圖案和第二交錯書寫圖案遍歷所述瓦片。
概念20.根據(jù)概念19所述的GPU,其中每瓦片的像素數(shù)目可根據(jù)GPU的高速緩沖存儲器的尺寸編程,且其中第一交錯書寫圖案的配置和第二交錯書寫圖案的配置是可編程的。
下文揭示一種在圖形管線的光柵級中對非矩形瓦片群組進(jìn)行光柵化的方法。
技術(shù)領(lǐng)域本文大體上涉及硬件加速的圖形計算機(jī)系統(tǒng)。本文至少揭示一種在圖形管線的光柵級中對非矩形瓦片群組進(jìn)行光柵化的方法。
背景技術(shù)
計算機(jī)性能的新近進(jìn)步已使圖形系統(tǒng)能夠使用個人計算機(jī)、家庭視頻游戲計算機(jī)、手提式裝置等提供更逼真的圖形圖像。在這些圖形系統(tǒng)中,執(zhí)行許多程序以將圖形圖元“渲染”或繪畫到系統(tǒng)屏幕上。“圖形圖元”是例如頂點(diǎn)、多邊形等圖形圖片的基本組成部分。所渲染的圖像由這些圖形圖元的組合形成。可利用許多程序來執(zhí)行3-D圖形渲染。
已開發(fā)出專門的圖形處理單元(例如,GPU等)來優(yōu)化執(zhí)行圖形渲染程序所需的計算。GPU經(jīng)配置以用于高速操作,且通常并入有一個或一個以上渲染管線。每一管線包含許多經(jīng)優(yōu)化以用于圖形指令/數(shù)據(jù)的高速執(zhí)行的基于硬件的功能單元,其中所述指令/數(shù)據(jù)被饋入到管線的前端且所計算的結(jié)果出現(xiàn)在管線的后端處。GPU的基于硬件的功能單元、高速緩沖存儲器、固件等經(jīng)優(yōu)化以對低階層圖形圖元(例如,包括“點(diǎn)”、“線”、“三角形”等)進(jìn)行操作并產(chǎn)生實(shí)時渲染的3-D圖像。
實(shí)時渲染的3-D圖像是使用光柵顯示技術(shù)產(chǎn)生的。光柵顯示技術(shù)廣泛用于計算機(jī)圖形系統(tǒng)中,且通常是指圖形圖元影響構(gòu)成圖像的多個像素的柵格所借助的機(jī)制。對于每一圖元,典型的光柵化系統(tǒng)通常逐個像素地步進(jìn),并依據(jù)圖元的貢獻(xiàn)確定是否將給定像素“渲染”或?qū)懭氲綆彌_器或像素地圖中。這進(jìn)而確定如何將表示每一像素的數(shù)據(jù)寫入到顯示緩沖器。
已開發(fā)出各種遍歷算法(traversal algorithm)和各種光柵化方法用于以覆蓋包括給定3-D場景的圖元內(nèi)的所有像素的方式,從基于圖形圖元的描述計算為基于像素的描述(例如,每圖元逐個像素進(jìn)行光柵化)。舉例來說,一些解決方案涉及以單向方式產(chǎn)生像素。這些傳統(tǒng)的單向解決方案涉及在恒定方向上逐行產(chǎn)生像素。這需要序列在圖元的相對側(cè)的位置處完成時,越過圖元移動到圖元的第一側(cè)的啟始位置。
其它傳統(tǒng)的方法涉及利用每像素估計(per pixel evaluation)技術(shù)來精密地估計構(gòu)成顯示內(nèi)容的像素中的每一者,并確定哪些像素被哪些圖元覆蓋。每像素估計涉及在顯示內(nèi)容的像素上進(jìn)行掃描以確定哪些像素被圖形圖元的邊緣觸及/覆蓋。
一旦圖元被光柵化為其組成像素,那么這些像素就在光柵化級之后的管線級中經(jīng)受處理,其中渲染操作在所述管線級中執(zhí)行。通常,這些渲染操作根據(jù)包括場景的圖元的覆蓋程度向顯示內(nèi)容的像素中的每一者指派一顏色。還根據(jù)指派到圖元的紋理貼圖信息、光照信息等來確定每一像素的顏色。
然而,存在的問題在于現(xiàn)有技術(shù)3-D渲染結(jié)構(gòu)縮放以處理現(xiàn)今應(yīng)用的日益復(fù)雜的3-D場景的能力。計算機(jī)屏幕現(xiàn)通常具有1920×1200像素或更大的屏幕分辨率。增加3-D渲染性能的傳統(tǒng)方法(例如,增加時鐘速度)具有例如增加功率消耗和增加GPU集成電路小片產(chǎn)生的熱量的消極副作用。增加性能的其它方法(例如,并入大量并行執(zhí)行單元以并行地執(zhí)行GPU操作)具有例如增加集成電路小片尺寸、減小GPU制造過程的良率、增加功率需求等消極副作用。
因此,需要這樣一種光柵化過程,其可根據(jù)圖形應(yīng)用需求的要求進(jìn)行縮放,并提供增加的性能而不會招致例如功率消耗增加和/或制造良率減小的損失。
發(fā)明內(nèi)容本文的實(shí)施例提供一種用于光柵化過程的方法和系統(tǒng),所述光柵化過程可根據(jù)圖形應(yīng)用需求的要求進(jìn)行縮放,并在使例如功率消耗增加和/或制造良率減小的損失最小化的同時提供增加的性能。
在一個實(shí)施例中,本發(fā)明實(shí)施為一種在圖形管線的光柵級中對非矩形瓦片群組進(jìn)行光柵化的方法。所述方法包含接收圖形圖元以便在圖形處理器單元(例如,GPU)的光柵級中進(jìn)行光柵化。通過產(chǎn)生包括與圖形圖元有關(guān)的一組像素的非矩形印跡而在第一階層處使所述圖形圖元光柵化。接著,通過存取所述組像素并從所述組像素中確定被覆蓋像素而在第二階層處使所述圖形圖元光柵化。光柵級隨后輸出所述被覆蓋像素以便在GPU的后續(xù)級中進(jìn)行渲染操作。
在一個實(shí)施例中,所述在所述第一階層處的光柵化和所述在所述第二階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的??蓪?shí)施兩部分光柵級,使得第一階層光柵化實(shí)施在粗略光柵單元中,且第二階層處的光柵化實(shí)施在精細(xì)光柵單元中。
在一個實(shí)施例中,可根據(jù)圖形圖元的形狀來調(diào)節(jié)由光柵級切割出的非矩形印跡的尺寸。舉例來說,可調(diào)節(jié)非矩形印跡的尺寸(例如,x數(shù)目的瓦片寬乘y數(shù)目的瓦片長)以優(yōu)化構(gòu)成所述印跡的被覆蓋像素的數(shù)目,例如當(dāng)針對伸長的三角形規(guī)定非矩形印跡的尺寸(例如,通過模板陰影操作等)來優(yōu)化被覆蓋像素的數(shù)目時的情況。
具體實(shí)施方式
現(xiàn)將具體參照本文的優(yōu)選實(shí)施例,附圖中說明所述實(shí)施例的實(shí)例。雖然將結(jié)合優(yōu)選實(shí)施例描述本發(fā)明,但將了解,不希望其將本發(fā)明限于這些實(shí)施例。相反,本發(fā)明希望涵蓋可包含在如所附權(quán)利要求書界定的本發(fā)明的精神和范圍內(nèi)的替代形式、修改和等效物。此外,在本發(fā)明實(shí)施例的以下具體實(shí)施方式
中,陳述了大量特定細(xì)節(jié)以便提供對本發(fā)明的全面理解。然而,所屬領(lǐng)域的一般技術(shù)人員將了解,可在沒有這些特定細(xì)節(jié)的情況下實(shí)踐本發(fā)明。在其它例子中,未詳細(xì)描述眾所周知的方法、程序、組件和電路,以便不會不必要地混淆本發(fā)明實(shí)施例的各方面。
符號和術(shù)語依據(jù)對計算機(jī)存儲器內(nèi)數(shù)據(jù)位的操作的程序、步驟、邏輯區(qū)塊、處理和其它符號表示來呈現(xiàn)以下具體實(shí)施方式
的一些部分。這些描述和表示是數(shù)據(jù)處理領(lǐng)域的技術(shù)人員用來最有效地將其工作的主旨傳達(dá)給所屬領(lǐng)域的其他技術(shù)人員的手段。此處,通常將程序、計算機(jī)執(zhí)行的步驟、邏輯區(qū)塊、過程等理解為產(chǎn)生所需結(jié)果的步驟或指令的自相容序列。所述步驟是那些需要對物理量進(jìn)行物理操縱的步驟。通常(盡管不一定),這些量采取能夠在計算機(jī)系統(tǒng)中被存儲、傳遞、組合、比較和以另外的方式操縱的電或磁信號的形式。已證明有時(主要由于一般用途的原因)將這些信號稱為位、值、元素、符號、字符、項(xiàng)目、數(shù)字等是便利的。
然而,應(yīng)牢記,所有這些和類似術(shù)語應(yīng)與適當(dāng)?shù)奈锢砹肯嚓P(guān)聯(lián),且僅僅是施加于這些量的便利的標(biāo)志。從以下論述內(nèi)容了解,除非另外明確規(guī)定,否則將了解,在本發(fā)明中,利用例如“處理”或“存取”或“執(zhí)行”或“存儲”或“渲染”等術(shù)語的論述內(nèi)容指代計算機(jī)系統(tǒng)(例如,圖1的計算機(jī)系統(tǒng)100)或類似的電子計算裝置的動作和處理,所述類似的電子計算裝置將表示為計算機(jī)系統(tǒng)的寄存器和存儲器內(nèi)的物理(電子)量的數(shù)據(jù)操縱并變換為類似地表示為計算機(jī)系統(tǒng)存儲器或寄存器或其它此類信息存儲、傳輸或顯示裝置內(nèi)的物理量的其它數(shù)據(jù)。
計算機(jī)系統(tǒng)平臺圖1展示根據(jù)本發(fā)明一個實(shí)施例的計算機(jī)系統(tǒng)100。計算機(jī)系統(tǒng)100描繪根據(jù)本發(fā)明實(shí)施例的基本計算機(jī)系統(tǒng)的組件,其提供執(zhí)行平臺以獲得某種基于硬件的和基于軟件的功能性。大體上來說,計算機(jī)系統(tǒng)100包括至少一個CPU 101、系統(tǒng)存儲器115,和至少一個圖形處理器單元(GPU)110。CPU 101可經(jīng)由橋接器組件/存儲器控制器(未圖示)耦合到系統(tǒng)存儲器115,或可經(jīng)由CPU 101內(nèi)部的存儲器控制器(未圖示)直接耦合到系統(tǒng)存儲器115。GPU 110耦合到顯示器112。一個或一個以上額外GPU可視需要耦合到系統(tǒng)100以進(jìn)一步增加其計算能力。GPU 110耦合到CPU 101和系統(tǒng)存儲器115。系統(tǒng)100可實(shí)施為(例如)臺式計算機(jī)系統(tǒng)或服務(wù)器計算機(jī)系統(tǒng),其具有耦合到專門圖形渲染GPU 110的功能強(qiáng)大的通用CPU 101。在此實(shí)施例中,可包含添加外圍總線、專門圖形存儲器、IO裝置等的組件。類似地,系統(tǒng)100可實(shí)施為手提式裝置(例如,手機(jī)等)或置頂視頻游戲控制臺裝置,例如可從美國華盛頓州雷蒙德市Microsoft公司購得的Xbox,或可從日本東京的Sony Computer Entertainment公司購得的PlayStation3。
應(yīng)了解,GPU 110可實(shí)施為離散組件、經(jīng)設(shè)計以經(jīng)由連接器(例如,AGP插槽、PCI-Express插槽等)耦合到計算機(jī)系統(tǒng)100的離散圖形卡、離散集成電路小片(例如,直接安裝在母板上),或作為包含在計算機(jī)系統(tǒng)芯片集組件(未圖示)的集成電路小片內(nèi)的集成GPU。另外,可為GPU 110包含本地圖形存儲器114以實(shí)現(xiàn)高帶寬圖形數(shù)據(jù)存儲。
實(shí)施例本發(fā)明實(shí)施例實(shí)施一種在圖形管線的光柵級中使非矩形瓦片群組光柵化的方法和系統(tǒng)。通常,非矩形瓦片群組處于除(例如)正方形(例如,4×4、8×8、16×16瓦片等)或矩形(例如,4×8、8×16瓦片等)以外的配置中。所述方法包含接收圖形圖元(例如,三角形多邊形)以便在圖形處理器(例如,圖1的GPU 110)的光柵級中進(jìn)行光柵化。本發(fā)明實(shí)施例可實(shí)施多階層光柵化過程。
在一個實(shí)施例中,通過產(chǎn)生包括與圖形圖元有關(guān)的一組像素(例如,覆蓋圖元的瓦片群組)的非矩形印跡而在第一階層處使所述圖形圖元光柵化。接著通過存取所述組像素(例如,覆蓋圖元的瓦片群組)并從所述組中確定被覆蓋的像素而在第二階層處使所述圖形圖元光柵化。舉例來說,盡管瓦片群組可覆蓋圖元,但并非構(gòu)成每一瓦片的所有像素均可覆蓋圖形圖元或駐留在圖形圖元內(nèi)。此兩個階層光柵化的結(jié)果是覆蓋圖形圖元或駐留在圖形圖元內(nèi)的像素。光柵級隨后輸出被覆蓋像素以便在圖形處理器的后續(xù)級中進(jìn)行渲染操作。
圖2展示描繪根據(jù)本發(fā)明一個實(shí)施例以交錯書寫圖案光柵化的像素柵格的圖。
在一個實(shí)施例中,如圖2所描繪,GPU 110的光柵級利用交錯書寫圖案來遍歷圖形圖元。如圖2所描繪,交錯書寫圖案由虛線221指示。在此實(shí)施例中,以線221所指示的次序遍歷像素柵格的每一像素或像素區(qū)塊。線221展示遍歷的交錯書寫圖案,其中術(shù)語“交錯書寫”表示通過在每一通過沿著正交軸不斷前進(jìn)時沿著一個軸來回掃描(非常類似于農(nóng)民犁地或收割莊稼)而訪問2D區(qū)域上的所有像素的遍歷圖案。術(shù)語交錯書寫通常意味著如在(例如)田地里一樣“如同牛犁地”。
因此,如圖2所描繪,此交錯書寫光柵化表示沿著主軸來回折疊的蜿蜒圖案。在圖2實(shí)例中,主軸是水平的。舉例來說,水平交錯書寫序列可產(chǎn)生圖元三角形內(nèi)的處于從左向右的一行上的所有像素,并接著產(chǎn)生從右向左的下一行,等等。此折疊路徑確保從所產(chǎn)生的像素到先前新近產(chǎn)生的像素的平均距離相對較小。
仍參看圖2,用于訪問當(dāng)使大圖元(例如,三角形等)光柵化時所覆蓋的屏幕區(qū)域的交錯書寫圖案的優(yōu)點(diǎn)是,維持相關(guān)數(shù)據(jù)的高速緩沖存儲,以及減少幀緩沖器和紋理存取所需的存儲器請求。舉例來說,當(dāng)新近像素群組和/或其相應(yīng)的紋理值保持在有限尺寸的存儲器(例如,高速緩沖存儲器等)中時,產(chǎn)生在新近產(chǎn)生的像素附近的像素較為重要。
關(guān)于光柵化的交錯書寫圖案的額外細(xì)節(jié)可參閱Franklin C.Crow等人的2005年12月15日申請的第11/304,904號美國專利申請案“A GPU HAVING RASTER COMPONENTSCONFIGURED FOR USING NESTED BOUSTROPHEDONIC PATTERNS TO TRAVERSESCREEN AREAS”,所述專利申請案全文并入本文中。
應(yīng)注意,盡管在交錯書寫光柵化的情境下描述本發(fā)明實(shí)施例,但可使用其它類型的光柵化圖案。舉例來說,本文描述的用于使非矩形瓦片群組光柵化的算法和GPU級可容易地應(yīng)用于傳統(tǒng)的從左向右、逐行光柵化圖案。
圖3展示根據(jù)本發(fā)明一個實(shí)施例三角形多邊形301(例如,三角形301)靠著GPU 110的光柵單元的光柵化圖案321的圖。
如上所述,線321展示遍歷的交錯書寫圖案,其中光柵單元通過在每一通過沿著正交軸不斷前進(jìn)時沿著一個軸進(jìn)行掃描來訪問三角形301的2D區(qū)域上的所有像素。在圖3實(shí)施例中,在第一階層處或在粗略光柵化階層處執(zhí)行此初始光柵化圖案。GPU 110的粗略光柵單元遍歷三角形301,并切割出覆蓋三角形301的瓦片群組。在三角形301與瓦片群組的尺寸相比較大且粗略光柵單元正使完全處于三角形301內(nèi)部的像素光柵化的那些情況下,這些瓦片群組可對稱(例如,正方形、矩形等)。在三角形301與瓦片群組的尺寸相比較小且粗略光柵單元正使在三角形301的伸長點(diǎn)(例如,點(diǎn)302)附近的像素光柵化的那些情況下,這些瓦片群組也可為非矩形。通常,非矩形瓦片群組處于除(例如)正方形(例如,4×4、8×8、16×16瓦片等)或矩形(例如,4×8、8×16瓦片等)以外的配置中。如本文所使用,應(yīng)注意,術(shù)語“非矩形群組”表示使得在光柵級中光柵化的瓦片群組不限于矩形或正方形陣列的屬性。非矩形瓦片群組可處于任意配置中。舉例來說,在一個實(shí)施例中,非矩形瓦片群組可包含甚至彼此不相鄰的瓦片。
圖4展示根據(jù)本發(fā)明一個實(shí)施例三角形301靠著當(dāng)瓦片由第一階層光柵化過程檢查時的瓦片柵格的圖。圖4中,所說明的正方形中的每一者表示包括像素的瓦片(例如,8×8、16×16等)。圖4展示第一階層光柵化產(chǎn)生各包括四個瓦片的粗略光柵化瓦片群組(例如,示范性瓦片群組401)的情況。
如上所述,在一個實(shí)施例中,第一階層光柵化產(chǎn)生包括與圖形圖元有關(guān)的一組像素(例如,覆蓋圖元的瓦片群組)的瓦片群組或印跡(例如,印跡401)。通常,第一階層光柵化希望快速確定屏幕區(qū)域的哪些像素與給定的圖形圖元有關(guān)。因此,每次檢查相對較大的像素群組(例如,瓦片)以便快速找到那些與圖元有關(guān)的像素??蓪⑺鲞^程比作偵查,借此粗略光柵單元快速掃描屏幕區(qū)域并找到覆蓋三角形301的瓦片群組。因此,可比傳統(tǒng)的現(xiàn)有技術(shù)過程快得多地發(fā)現(xiàn)與三角形301有關(guān)的像素,傳統(tǒng)的現(xiàn)有技術(shù)過程利用單一階層的光柵化且以較細(xì)粒的方式每次檢查的像素數(shù)目少很多。
在圖4實(shí)施例中,第一階層光柵化利用四瓦片印跡(例如,印跡401),其中每一瓦片群組或印跡包含四個瓦片。因此,第一階層光柵化將切割出四瓦片印跡,其中每一印跡具有至少一個被三角形301覆蓋的像素。因此,第一階層光柵化由于每次檢查較大的像素群組而被稱為粗略光柵化。
圖5展示描繪根據(jù)本發(fā)明一個實(shí)施例由粗略光柵單元切割出的多個瓦片群組的圖。展示示范性瓦片群組501和502。
圖5實(shí)施例展示粗略光柵級產(chǎn)生非矩形瓦片群組以便優(yōu)化三角形301的覆蓋程度的方式。如上所述,非矩形印跡可用于較有效地確定屏幕區(qū)域的哪些瓦片與給定圖形圖元有關(guān)。接著通過存取所產(chǎn)生的瓦片群組并從這些瓦片群組中確定被覆蓋的像素而在第二階層處使所述圖形圖元光柵化。舉例來說,盡管瓦片群組可覆蓋圖元,但并非構(gòu)成每一瓦片的所有像素均可覆蓋圖形圖元或駐留在圖形圖元內(nèi)。
圖5展示示范性非矩形瓦片群組501和502。瓦片群組或印跡501-502是非矩形的,因?yàn)槠浣M成瓦片不是以盒形或矩形樣式配置的。在印跡501-502的情況下,如圖所示以“L”形圖案切割出其組成瓦片。此非矩形圖案優(yōu)化了印跡501-502內(nèi)被覆蓋像素的數(shù)目。
圖5還展示瓦片511-518。視其覆蓋程度而定,根據(jù)本發(fā)明一個實(shí)施例的光柵級可將瓦片515-518切割為單一矩形瓦片群組(例如,沿著三角形301的上邊),并將瓦片511-514切割為類似的矩形瓦片群組(例如,沿著三角形301的下邊)。以此方式,四個瓦片的群組可組裝成聚集體,不管其對稱性如何。聚集體可為L形、直線形、正方形等。調(diào)節(jié)瓦片的聚集體的尺寸以便優(yōu)化聚集體內(nèi)被覆蓋像素的數(shù)目。
應(yīng)注意,可在第一階層粗略光柵化過程中實(shí)施不同數(shù)目的瓦片。舉例來說,與每印跡四個瓦片不同,可利用六個、八個或更多瓦片。在此類較大印跡的情況下,可將瓦片組合成多種不同形狀和組合成多種不同圖案以便最佳地覆蓋給定的圖形圖元。
以此方式,可根據(jù)圖形圖元(例如,三角形301)的形狀來調(diào)節(jié)由光柵級切割出的非矩形印跡(例如,印跡501)的尺寸。舉例來說,可調(diào)節(jié)非矩形印跡的尺寸(例如,x數(shù)目的瓦片寬乘y數(shù)目的瓦片長)以優(yōu)化構(gòu)成所述印跡的被覆蓋像素的數(shù)目。在所渲染的圖元格外長且狹窄的那些情況下,此屬性尤其有用。此類長且狹窄的三角形通常出現(xiàn)在例如模板陰影算法(stencil shadow algorithm)的應(yīng)用中。舉例來說,在三角形301是非常長且狹窄的三角形的情況下,可優(yōu)化構(gòu)成每一瓦片的像素的數(shù)目和構(gòu)成印跡的瓦片的數(shù)目以便切割出具有高比例的被覆蓋像素的印跡。這在使三角形的點(diǎn)(例如,點(diǎn)302)附近的像素光柵化時尤其有用。
圖6說明根據(jù)本發(fā)明一個實(shí)施例使用第二階層光柵化過程光柵化的印跡501。如上所述,粗略光柵化之后,接著通過存取印跡501的所述組像素(例如,構(gòu)成瓦片群組501的像素)并從所述組中確定被覆蓋像素而在第二階層處使三角形501光柵化。舉例來說,盡管印跡501覆蓋三角形301,但并非構(gòu)成每一瓦片的所有像素均可覆蓋圖形圖元或駐留在圖形圖元內(nèi)。
第二階層光柵化或精細(xì)光柵化現(xiàn)切割出印跡501的個別被覆蓋像素。精細(xì)光柵化過程檢查構(gòu)成印跡501的像素并確定那些像素中的哪些像素被三角形301覆蓋。這在圖6中展示為構(gòu)成印跡501的每一瓦片的16個像素(例如,4×4)的柵格??恐切?01的邊估計每一瓦片的16個像素中的每一者。視所需的精確程度而定,估計過程中可使用每一像素的多個取樣點(diǎn)。估計的結(jié)果是印跡501的被多邊形301覆蓋的像素的指定。接著從精細(xì)光柵化單元輸出被覆蓋像素以便在GPU 110的后續(xù)級內(nèi)進(jìn)行進(jìn)一步處理。
圖7展示根據(jù)本發(fā)明一個實(shí)施例GPU 110的內(nèi)部組件的圖。如圖7所示,GPU 110包含設(shè)置引擎701和光柵器單元702。在本實(shí)施例中,本發(fā)明的功能性實(shí)施在光柵器單元702的硬件和軟件內(nèi)。設(shè)置單元701的作用是將基于頂點(diǎn)的描述轉(zhuǎn)換為基于邊描述的描述。光柵器單元702隨后將這些邊描述轉(zhuǎn)換為包括實(shí)際像素描述(例如,像素區(qū)域、像素子樣本等)的填充區(qū)域。隨后將像素描述向前傳遞到GPU 110內(nèi)的其它單元以進(jìn)行進(jìn)一步處理和渲染。
在本實(shí)施例中,光柵器單元702包含粗略光柵組件703和精細(xì)光柵組件704。粗略光柵組件703實(shí)施如上所述的非矩形瓦片群組光柵化過程,此時其快速地搜索瓦片柵格以識別所關(guān)注的瓦片(例如,被圖元覆蓋的瓦片)。一旦識別出所關(guān)注的瓦片群組,精細(xì)光柵組件704就個別地識別被圖元覆蓋的像素。因此,在此實(shí)施例中,粗略光柵組件703通過使用瓦片來快速地搜索像素柵格,且精細(xì)光柵組件704使用由粗略光柵組件703產(chǎn)生的信息,并通過個別地識別被圖元覆蓋的像素來實(shí)施精細(xì)粒度光柵化。在兩種情況下,粗略光柵組件703和精細(xì)光柵組件704在其光柵化期間均可利用一個或一個以上交錯書寫圖案。
仍參看圖7,GPU 110進(jìn)一步包含高速緩沖存儲器721,其作用是針對最頻繁使用的圖形渲染數(shù)據(jù)實(shí)施高速低等待時間存儲。此數(shù)據(jù)通常包括紋理信息、頂點(diǎn)信息、顏色等。展示高速緩沖存儲器721耦合到本地圖形存儲器114。高速緩沖存儲器721利用一個或一個以上高速緩沖存儲維持機(jī)制來維持與本地圖形存儲器114的一致性。箭頭740展示GPU110與系統(tǒng)存儲器(例如,圖1所示的存儲器115)之間的通信路徑。
在一個實(shí)施例中,包括光柵單元702的硬件經(jīng)優(yōu)化而以每時鐘為基礎(chǔ)進(jìn)行操作。舉例來說,為了提供高處理量并藉此維持高渲染幀速率,粗略光柵組件703和精細(xì)光柵組件704包括經(jīng)設(shè)計而以每時鐘周期為基礎(chǔ)實(shí)施第一階層光柵化和第二階層光柵化的硬件。可實(shí)施光柵器單元702使得在粗略光柵組件703中實(shí)施第一階層光柵化,粗略光柵組件703在單一時鐘周期內(nèi)“切割出”覆蓋給定圖元的瓦片群組(例如,包含非矩形瓦片群組)。隨后,在精細(xì)光柵組件704中實(shí)施第二階層處的光柵化,精細(xì)光柵組件704在單一時鐘周期內(nèi)切割出瓦片群組的被覆蓋像素。因此,舉例來說,可每時鐘處理64個像素的硬件將使用64像素印跡(例如,四個各16個像素的瓦片),而可每時鐘處理128個像素的硬件將使用128像素印跡(例如,八個各16個像素的瓦片、四個各32個像素的瓦片等)。如上所述,這些瓦片可排列成各種不同聚集體(例如,長而瘦削的印跡、正方形印跡、矩形印跡、斜紋印跡、“L”形印跡等)。
作為簡要概述,本文已揭示以下內(nèi)容。
概念1.一種用于在圖形管線的光柵級中對非矩形瓦片群組進(jìn)行光柵化的方法,其包括接收圖形圖元以便在圖形處理器的光柵級中進(jìn)行光柵化;通過產(chǎn)生包括與圖形圖元有關(guān)的一組像素的非矩形印跡而在第一階層處使所述圖形圖元光柵化;以及通過存取所述組像素并從所述組像素中確定被覆蓋像素而在第二階層處使所述圖形圖元光柵化;以及輸出所述被覆蓋像素以便在圖形處理器的后續(xù)級中進(jìn)行渲染操作。
概念2.根據(jù)概念1所述的方法,其中所述在所述第一階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
概念3.根據(jù)概念1所述的方法,其中所述在所述第二階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
概念4.根據(jù)概念1所述的方法,其中在所述第一階層處的光柵化在粗略光柵單元中實(shí)施,且在所述第二階層處的光柵化在精細(xì)光柵單元中實(shí)施。
概念5.根據(jù)概念1所述的方法,其中所述粗略光柵單元經(jīng)配置以使用交錯書寫圖案遍歷圖像的多個像素。
概念6.根據(jù)概念1所述的方法,其中可根據(jù)圖形圖元的形狀來調(diào)節(jié)非矩形印跡的尺寸。
概念7.根據(jù)概念6所述的方法,其中可調(diào)節(jié)非矩形印跡的尺寸以優(yōu)化構(gòu)成所述非矩形印跡的所述組像素中的被覆蓋像素的數(shù)目。
概念8.根據(jù)概念7所述的方法,其中針對伸長的三角形圖形圖元規(guī)定非矩形印跡的尺寸,以優(yōu)化構(gòu)成所述非矩形印跡的被覆蓋像素的數(shù)目。
概念9.一種GPU(圖形處理器單元),其包括設(shè)置單元,其用于產(chǎn)生多邊形描述;光柵器單元,其耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化;粗略光柵單元,其在所述光柵器單元內(nèi),用于通過產(chǎn)生包括與圖形圖元有關(guān)的一組像素的非矩形印跡而在第一階層處使所述圖形圖元光柵化;以及精細(xì)光柵單元,其在所述光柵器單元內(nèi),用于通過存取所述組像素并從所述組像素中確定被覆蓋像素而在第二階層處使所述圖形圖元光柵化。
概念10.根據(jù)概念9所述的GPU,其中所述在所述第一階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
概念11.根據(jù)概念9所述的GPU,其中所述在所述第二階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
概念12.根據(jù)概念9所述的GPU,其中在所述第一階層處的光柵化在粗略光柵單元中實(shí)施,且在所述第二階層處的光柵化在精細(xì)光柵單元中實(shí)施。
概念13.根據(jù)概念9所述的GPU,其中所述粗略光柵單元經(jīng)配置以使用交錯書寫圖案遍歷圖像的多個像素。
概念14.根據(jù)概念9所述的GPU,其中所述非矩形印跡的尺寸可根據(jù)所述圖形圖元的形狀進(jìn)行調(diào)節(jié)。
概念15.根據(jù)概念14所述的GPU,其中可調(diào)節(jié)所述非矩形印跡的尺寸以優(yōu)化構(gòu)成所述非矩形印跡的所述組像素中的被覆蓋像素的數(shù)目。
概念16.根據(jù)概念15所述的GPU,其中針對伸長的三角形圖形圖元規(guī)定所述非矩形印跡的尺寸,以優(yōu)化構(gòu)成所述非矩形印跡的被覆蓋像素的數(shù)目。
概念17.一種計算機(jī)系統(tǒng),其包括系統(tǒng)存儲器;中央處理器單元,其耦合到所述系統(tǒng)存儲器;以及圖形處理器單元,其通信地耦合到所述中央處理器單元;設(shè)置單元,其在所述圖形處理器單元內(nèi),用于產(chǎn)生多邊形描述;光柵器單元,其在所述圖形處理器單元內(nèi)且耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化;以及粗略光柵組件,其在所述光柵單元內(nèi),其中所述粗略光柵器組件經(jīng)配置以從所述設(shè)置單元接收用于光柵化的圖形圖元,通過產(chǎn)生包括與所述圖形圖元有關(guān)的一組像素的非矩形印跡而在第一階層處使所述圖形圖元光柵化,通過存取所述組像素并從所述組像素中確定被覆蓋像素而在第二階層處使所述圖形圖元光柵化,并輸出所述被覆蓋像素以便在所述圖形處理器單元的后續(xù)級中進(jìn)行渲染操作。
概念18.根據(jù)概念17所述的計算機(jī)系統(tǒng),其中所述在所述第一階層處的光柵化和所述在所述第二階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
概念19.根據(jù)概念17所述的計算機(jī)系統(tǒng),其中可調(diào)節(jié)所述非矩形印跡的尺寸以優(yōu)化構(gòu)成所述非矩形印跡的所述組像素中的被覆蓋像素的數(shù)目。
概念20.根據(jù)概念17所述的計算機(jī)系統(tǒng),其中針對伸長的三角形圖形圖元規(guī)定所述非矩形印跡的尺寸,以優(yōu)化構(gòu)成所述非矩形印跡的被覆蓋像素的數(shù)目。
概括來說,本文揭示一種進(jìn)行并行精細(xì)光柵化的方法。所述方法包含接收圖形圖元以便在圖形處理器的光柵級中進(jìn)行光柵化??稍诘谝浑A層處使所述圖形圖元光柵化以產(chǎn)生多個像素瓦片。隨后在第二階層處通過將所述瓦片配給到并行的第二階層光柵化單元陣列而使所述瓦片光柵化,以產(chǎn)生被覆蓋像素。接著可輸出所述被覆蓋像素以便在所述圖形處理器的后續(xù)級中進(jìn)行渲染操作。本文還概括地揭示用于通過靈活地改變集成電路小片中功能組件的操作特征來促進(jìn)電路小片良率增加的系統(tǒng)和方法。本發(fā)明系統(tǒng)和方法可使具有有缺陷功能組件的集成電路芯片能夠得以廢物利用。以維持芯片的基本功能性的方式禁用電路小片中有缺陷的功能組件。測試芯片,且可基于測試的結(jié)果對芯片執(zhí)行功能組件配置過程。如果接收到關(guān)于有缺陷的功能組件的指示,那么禁用所述功能組件??墒构ぷ髁鞒虖谋唤玫墓δ芙M件轉(zhuǎn)向啟用的功能組件。本文還概括地揭示一種經(jīng)配置以遍歷一區(qū)域的像素的GPU。所述GPU包含用于產(chǎn)生多邊形描述的設(shè)置單元和耦合到所述設(shè)置單元用于對多邊形描述進(jìn)行光柵化的光柵器單元。光柵器單元可經(jīng)配置以使用第一交錯書寫圖案沿著主軸遍歷圖像的多個像素,且在使用第一交錯書寫圖案進(jìn)行遍歷期間,使用第二交錯書寫圖案遍歷圖像的多個像素,其中第二交錯書寫圖案可嵌套在第一交錯書寫圖案內(nèi)。本文還概括地揭示一種對非矩形瓦片群組進(jìn)行光柵化的方法。所述方法包含接收圖形圖元以便在圖形處理器的光柵級中進(jìn)行光柵化。可通過產(chǎn)生包括與圖形圖元有關(guān)的一組像素的非矩形印跡而在第一階層處使所述圖形圖元光柵化。接著,可通過存取所述組像素并從所述組像素中確定被覆蓋像素而在第二階層處使所述圖形圖元光柵化。光柵級隨后可輸出所述被覆蓋像素以便在圖形處理器的后續(xù)級中進(jìn)行渲染操作。
結(jié)論已出于說明和描述的目的呈現(xiàn)了對本發(fā)明特定實(shí)施例的以上描述。不希望其為詳盡的或?qū)⒈景l(fā)明限于所揭示的精確形式,且鑒于以上教示,可能作出許多修改和變化。選擇并描述所述實(shí)施例是為了最佳地闡釋本發(fā)明的原理及其實(shí)踐應(yīng)用,藉此使所屬領(lǐng)域的其他技術(shù)人員能夠最佳地利用本發(fā)明和具有適于所預(yù)期的特定用途的各種修改的各種實(shí)施例。希望本發(fā)明的范圍由所附權(quán)利要求書及其等效物界定。
權(quán)利要求
1.一種GPU(圖形處理器單元),其包括設(shè)置單元,其用于產(chǎn)生多邊形描述;光柵器單元,其耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化;粗略光柵單元,其在所述光柵器單元內(nèi),用于通過產(chǎn)生包括與圖形圖元有關(guān)的一組像素的非矩形印跡而在第一階層處使所述圖形圖元光柵化;以及精細(xì)光柵單元,其在所述光柵器單元內(nèi),用于通過存取所述組像素并從所述組像素中確定被覆蓋像素而在第二階層處使所述圖形圖元光柵化。
2.根據(jù)權(quán)利要求1所述的GPU,其中所述在所述第一階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
3.根據(jù)權(quán)利要求1所述的GPU,其中所述在所述第二階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
4.根據(jù)權(quán)利要求1所述的GPU,其中在所述第一階層處的光柵化在粗略光柵單元中實(shí)施,且在所述第二階層處的光柵化在精細(xì)光柵單元中實(shí)施。
5.根據(jù)權(quán)利要求1所述的GPU,其中所述粗略光柵單元經(jīng)配置以使用交錯書寫圖案遍歷圖像的多個像素。
6.根據(jù)權(quán)利要求1所述的GPU,其中可根據(jù)所述圖形圖元的形狀來調(diào)節(jié)所述非矩形印跡的尺寸。
7.根據(jù)權(quán)利要求6所述的GPU,其中可調(diào)節(jié)所述非矩形印跡的尺寸以優(yōu)化構(gòu)成所述非矩形印跡的所述組像素中的被覆蓋像素的數(shù)目。
8.根據(jù)權(quán)利要求7所述的GPU,其中針對伸長的三角形圖形圖元規(guī)定所述非矩形印跡的尺寸,以優(yōu)化構(gòu)成所述非矩形印跡的被覆蓋像素的數(shù)目。
9.一種計算機(jī)系統(tǒng),其包括系統(tǒng)存儲器;中央處理器單元,其耦合到所述系統(tǒng)存儲器;以及圖形處理器單元,其通信地耦合到所述中央處理器單元;設(shè)置單元,其在所述圖形處理器單元內(nèi),用于產(chǎn)生多邊形描述;光柵器單元,其在所述圖形處理器單元內(nèi)且耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化;以及粗略光柵組件,其在所述光柵單元內(nèi),其中所述粗略光柵器組件經(jīng)配置以從所述設(shè)置單元接收用于光柵化的圖形圖元,通過產(chǎn)生包括與所述圖形圖元有關(guān)的一組像素的非矩形印跡而在第一階層處使所述圖形圖元光柵化,通過存取所述組像素并從所述組像素中確定被覆蓋像素而在第二階層處使所述圖形圖元光柵化,并輸出所述被覆蓋像素以便在所述圖形處理器單元的后續(xù)級中進(jìn)行渲染操作。
10.根據(jù)權(quán)利要求9所述的計算機(jī)系統(tǒng),其中所述在所述第一階層處的光柵化和所述在所述第二階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
11.根據(jù)權(quán)利要求9所述的計算機(jī)系統(tǒng),其中可調(diào)節(jié)所述非矩形印跡的尺寸以優(yōu)化構(gòu)成所述非矩形印跡的所述組像素中的被覆蓋像素的數(shù)目。
12.根據(jù)權(quán)利要求9所述的計算機(jī)系統(tǒng),其中針對伸長的三角形圖形圖元規(guī)定所述非矩形印跡的尺寸,以優(yōu)化構(gòu)成所述非矩形印跡的被覆蓋像素的數(shù)目。
13.一種GPU(圖形處理器單元),其包括設(shè)置單元,其用于產(chǎn)生多邊形描述;光柵器單元,其耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化;粗略光柵單元,其在所述光柵器單元內(nèi),用于通過產(chǎn)生與圖形圖元有關(guān)的多個像素瓦片而在第一階層處使所述圖形圖元光柵化;以及并行精細(xì)光柵單元陣列,其在所述光柵器單元內(nèi),用于在第二階層處使所述瓦片光柵化,其中將所述瓦片配給到所述并行的第二階層光柵化單元以產(chǎn)生被覆蓋像素,且其中輸出所述被覆蓋像素以便在所述GPU的后續(xù)級中進(jìn)行渲染操作。
14.根據(jù)權(quán)利要求13所述的GPU,其中所述在所述第一階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
15.根據(jù)權(quán)利要求13所述的GPU,其中所述在所述第二階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
16.根據(jù)權(quán)利要求13所述的GPU,其中所述并行的第二階層光柵化單元陣列能夠進(jìn)行選擇性功能組件停用。
17.根據(jù)權(quán)利要求13所述的GPU,其中將所述多個瓦片配給到所述并行的第二階層光柵化單元陣列以在所述第二階層光柵化單元之間平衡工作負(fù)荷。
18.根據(jù)權(quán)利要求13所述的GPU,其中所述并行的第二階層光柵化單元中的至少一者被停用。
19.根據(jù)權(quán)利要求13所述的GPU,其中所述并行的第二階層光柵化單元中的至少一者是提供冗余第二階層光柵化能力的冗余光柵化單元。
20.一種計算機(jī)系統(tǒng),其包括系統(tǒng)存儲器;中央處理器單元,其耦合到所述系統(tǒng)存儲器;以及圖形處理器單元,其通信地耦合到所述中央處理器單元;設(shè)置單元,其在所述圖形處理器單元內(nèi),用于產(chǎn)生多邊形描述;光柵器單元,其在所述圖形處理器單元內(nèi)且耦合到所述設(shè)置單元,用于對所述多邊形描述進(jìn)行光柵化;以及粗略光柵單元,其在所述光柵器單元內(nèi),用于通過產(chǎn)生與圖形圖元有關(guān)的多個像素瓦片而在第一階層處使所述圖形圖元光柵化;以及并行精細(xì)光柵單元陣列,其在所述光柵器單元內(nèi),用于在第二階層處使所述瓦片光柵化,其中將所述瓦片配給到所述并行的第二階層光柵化單元以產(chǎn)生被覆蓋像素,且其中輸出所述被覆蓋像素以便在所述GPU的后續(xù)級中進(jìn)行渲染操作。
21.根據(jù)權(quán)利要求20所述的系統(tǒng),其中所述在所述第一階層處的光柵化和所述在所述第二階層處的光柵化是以每時鐘周期為基礎(chǔ)實(shí)施的。
22.根據(jù)權(quán)利要求20所述的系統(tǒng),其中所述并行的第二階層光柵化單元陣列能夠進(jìn)行選擇性功能組件激活/停用。
全文摘要
本發(fā)明揭示一種在圖形處理器的光柵級中進(jìn)行并行精細(xì)光柵化的方法。所述方法包含接收圖形圖元以便在圖形處理器的光柵級中進(jìn)行光柵化。所述圖形圖元可在第一階層處經(jīng)光柵化以產(chǎn)生多個像素瓦片。隨后在第二階層處通過將所述瓦片配給到并行的第二階層光柵化單元陣列而使所述瓦片光柵化,以產(chǎn)生被覆蓋像素。接著可輸出所述被覆蓋像素以便在所述圖形處理器的后續(xù)級中進(jìn)行渲染操作。
文檔編號G06T15/00GK101093578SQ200710106789
公開日2007年12月26日 申請日期2007年6月22日 優(yōu)先權(quán)日2006年6月23日
發(fā)明者沃爾特·R·斯坦納, 富蘭克林·C·克羅, 克雷格·M·威滕布林克, 羅杰·L·艾倫, 道格拉斯·A·沃里斯 申請人:輝達(dá)公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1