專利名稱:分析圖形控制器性能的系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖形控制器領(lǐng)域,特別涉及分析圖形控制器性能的系統(tǒng)。
實(shí)時(shí)觀察圖形控制器內(nèi)的事件/操作,給圖形硬件的效能以及控制它的軟件提供有用的反饋。諸如隊(duì)列中圖形指令的平均數(shù)目、一指定圖形操作的延遲、紋理超高速緩沖存儲器失中的頻率、和專用圖形資源停止的頻率等信息可以由硬件和軟件設(shè)計(jì)師使用來改進(jìn)系統(tǒng)性能。例如,對紋理超高速緩沖存儲器的80%的命中率可能指示該超高速緩沖存儲器的大小需要增加,而在圖形資源和圖形表面例如Z緩沖器之間的數(shù)據(jù)傳輸?shù)妮^高的延遲可能指示需要修改它們之間的通道。
在許多場合,了解性能瓶頸需要較復(fù)雜的操作。例如,精確定位錯(cuò)誤的操作可能需要在不同圖形資源對之間的檢測的“握手”信號或者在不同資源對之間的并發(fā)的事務(wù)處理。在這些并發(fā)事務(wù)處理之間的沖突可以指示設(shè)備或指令的相互作用,這在單獨(dú)監(jiān)視各事件時(shí)并不明顯。延遲實(shí)驗(yàn)必須跟蹤在請求信號到達(dá)和所請求的動作完成之間的時(shí)間差。在多個(gè)資源共享一個(gè)事務(wù)處理隊(duì)列的場合,可能很難分解為不同資源的信號,而可能需要對可用信號的復(fù)雜分析來獲得希望的信息。
當(dāng)前可用的監(jiān)視圖形硬件中的事件的方法受可以觀察到的信號的類型和可以進(jìn)行該種觀察的容易程度的限制。邏輯分析器是通用設(shè)備,其可以設(shè)定在檢測到特定指令時(shí)監(jiān)視選擇的外部信號的狀態(tài)。這里,外部信號指在總線或其它易于訪問的信號線上傳輸?shù)男盘枴V噶畹脑斍?,諸如對圖形控制器內(nèi)的特定資源的影響,對這些分析器來說一般是不可訪問的,而更復(fù)雜的操作,諸如檢測包括非外部信號的并發(fā)事件,更將邏輯分析器排除。這些設(shè)備還相對昂貴,操作復(fù)雜,僅限于設(shè)計(jì)和測試硬件的工程師使用。
也可以使用各種可編程邏輯設(shè)備(PLD)來監(jiān)視系統(tǒng)硬件的操作。這些通常是為特定硬件設(shè)備設(shè)計(jì)的,使用復(fù)雜。另外,像邏輯分析器,PLD只能訪問外部信號。
因此,需要一種透明的系統(tǒng),它能以足夠詳細(xì)的水平監(jiān)視圖形硬件,對設(shè)備性能提供有意義的反饋,而不需復(fù)雜的接口和分析過程。
本發(fā)明是用于監(jiān)視圖形控制器以說明性能瓶頸等的一種裝置??删幊淘撓到y(tǒng),使之實(shí)時(shí)觀察與圖形控制器的操作相關(guān)的信號。
按照本發(fā)明的裝置包括一個(gè)接收事件監(jiān)視指令的命令接口和連接到該命令接口上的一個(gè)觀察模塊。觀察模塊監(jiān)視由圖形控制器產(chǎn)生的信號,并根據(jù)接收到的事件監(jiān)視指令處理這些信號。
在本發(fā)明的一個(gè)實(shí)施例中,事件監(jiān)視指令通過在圖形硬件中的1 一個(gè)命令流控制器連接到命令接口。觀察模塊可以包括一個(gè)檢測在計(jì)算機(jī)系統(tǒng)中的指定信號并發(fā)的并發(fā)邏輯單元(CLU)。分析邏輯可以包括一個(gè)加數(shù)發(fā)生器,其可以編程來從指定信號中提取例如通量、帶寬和隊(duì)列深度數(shù)據(jù)。
可以參考下面的附圖理解本發(fā)明,附圖中用相同的號碼指示相同的元件。提供這些附圖來說明本發(fā)明選擇的實(shí)施例,而并不打算限制本發(fā)明的范圍。
圖1是可以實(shí)現(xiàn)本發(fā)明的計(jì)算機(jī)系統(tǒng)的方框圖。
圖2是適合于用本發(fā)明分析的圖形控制器的一個(gè)實(shí)施例的方框圖。
圖3A是按照本發(fā)明的一個(gè)觀察系統(tǒng)的方框圖。
圖3B是圖3A的觀察系統(tǒng)的一個(gè)實(shí)施例的方框圖。
圖4是圖3B的事件發(fā)生器的一個(gè)實(shí)施例的方框圖。
圖5A、5B是圖3B的并發(fā)邏輯單元的一個(gè)實(shí)施例的方框圖。
圖6是圖3A的加數(shù)發(fā)生器的一個(gè)實(shí)施例的電路圖。
圖7是圖3A、3B的命令接口的一個(gè)實(shí)施例的方框圖。
圖8A-8D是表示為本發(fā)明的使用而選擇的事件監(jiān)視指令的方框圖。
下面的討論敘述大量專門的細(xì)節(jié)以提供對本發(fā)明的徹底了解。然而,具有本技術(shù)領(lǐng)域一般技能的人在掌握本公開后理解,可以不用這些專門的細(xì)節(jié)來實(shí)現(xiàn)本發(fā)明。為強(qiáng)調(diào)本發(fā)明的特征,沒有詳細(xì)說明各種公知的方法、過程、部件和電路。
本發(fā)明是一種通過在圖形控制器操作期間產(chǎn)生的信號來監(jiān)視該圖形控制器的性能的觀察系統(tǒng)。這些信號例如包括控制圖形控制器資源之間的數(shù)據(jù)流的管道互鎖信號。觀察系統(tǒng)包括一個(gè)觀察模塊和一個(gè)按照一個(gè)指令集結(jié)構(gòu)(ISA)控制觀察模塊的命令接口。命令接口響應(yīng)ISA的事件監(jiān)視指令產(chǎn)生對觀察模塊部件的控制信號,并把由指令產(chǎn)生的信號回連到系統(tǒng)。
觀察模塊監(jiān)視圖形控制器的資源之間的信號,并產(chǎn)生表征被監(jiān)視信號的信號(事件輸入信號)。處理選擇的事件輸入信號來識別用戶定義的事件(事件信號),并分析這些事件以提供關(guān)于系統(tǒng)運(yùn)行更高層次的信息??梢皂憫?yīng)外部信號諸如導(dǎo)向圖形控制器或從其來的總線事務(wù)處理(通用信號),也可以響應(yīng)對特定圖形控制器結(jié)構(gòu)專門的信號(結(jié)構(gòu)專用信號)產(chǎn)生事件輸入信號。
觀察系統(tǒng)可以直接通過存儲器映射的輸入/輸出(I/O)、或者當(dāng)可用時(shí)通過在圖形控制器的接口邏輯內(nèi)的一個(gè)命令流控制器(CSC)來接收事件監(jiān)視指令。通過命令流控制器的路由選擇允許這些指令插入圖形命令流內(nèi)的目標(biāo)位置。這些指令在圖形命令流內(nèi)的精確放置允許觀察系統(tǒng)在響應(yīng)圖形命令序列時(shí)監(jiān)視圖形資源。它也便利了由指定數(shù)目的給定類型事件的出現(xiàn)激發(fā)的采樣,例如基于事件的采樣。經(jīng)由存儲器映射的(I/O)的指令路由選擇允許在更廣的條件范圍下監(jiān)視事件,這便利基于時(shí)間的采樣。
參考一般化的圖形控制器及其并發(fā)信號來說明觀察系統(tǒng)。這樣做是為了說明觀察系統(tǒng)的特征,而并不打算限制本發(fā)明的范圍。例如,在沒有命令流控制器或類似部件的圖形控制器中,觀察系統(tǒng)可以通過存儲器映射的I/O與系統(tǒng)通信。類似地,計(jì)算機(jī)系統(tǒng)100(圖1)是多種可以實(shí)現(xiàn)適合用本發(fā)明分析的圖形控制器的系統(tǒng)配置中的一種,僅為說明的目的描述。
首先參考圖1,圖中表示出一個(gè)計(jì)算機(jī)系統(tǒng)100,它包括一個(gè)適合用本發(fā)明分析的圖形子系統(tǒng)。計(jì)算機(jī)系統(tǒng)100包括處理器110、存儲器120、芯片組邏輯130和圖形控制器140。芯片組邏輯130分別通過總線112、122和142連接處理器110、存儲器120和圖形控制器140之間的數(shù)據(jù)。
圖形控制器140包括接口(IF)邏輯144,用于連接各種資源和總線142之間的數(shù)據(jù)。公開的接口邏輯144的實(shí)施例包括一個(gè)命令流控制器(CSC)150,用于為命令選擇到各圖形資源的路由。這些包括2維圖形管道(2D管道)152、3維圖形管道(3D管道)154和圖形存儲器156。圖中還表示出一個(gè)可選的視頻引擎158。
3D管道154通常包括為處理多邊形、紋理映射、顏色混合和上底紋等的邏輯。2D管道通常包括為在圖形存儲器158的不同部分之間傳輸數(shù)據(jù)塊的邏輯。接口邏輯144通常還包括為調(diào)節(jié)在圖形控制器140和存儲器120之間的直接存儲器存取(DMA)傳輸?shù)目刂破?未示出)。
圖1還表示出根據(jù)本發(fā)明為監(jiān)視圖形控制器140的性能的觀察系統(tǒng)160。在公開的實(shí)施例中,可以通過總線142經(jīng)由存儲器映射的I/O或通過IF邏輯144的CSC150訪問觀察系統(tǒng)160。
現(xiàn)在參考圖2,圖中示出圖形控制器140的資源(圖形資源)的更詳細(xì)的方框圖。在該公開的實(shí)施例中,3D管道154包括一個(gè)幾何建立引擎210、屏蔽(mask)單元220、彩色管道230、紋理管道240、彩色計(jì)算器250和存儲器接口260。幾何建立引擎210處理用以產(chǎn)生3D圖象的多邊形。屏蔽單元220包括為選擇由建立引擎210提供的多邊形數(shù)據(jù)的一部分用于顯示的邏輯。彩色管道230包括彩色內(nèi)插邏輯,它確定在每一多邊形內(nèi)的象素和為這些象素確定合適的顏色和上底紋。紋理管道240包括為在多邊形上映射紋理數(shù)據(jù)的內(nèi)插邏輯。還提供紋理超高速緩沖存儲器244以存儲紋理數(shù)據(jù)。彩色計(jì)算器250處理分別來自彩色和紋理管道230、240的顏色數(shù)據(jù)(象素)和紋理數(shù)據(jù)(紋理元素),并通過存儲器接口260連接處理過的數(shù)據(jù)到各個(gè)圖形表面。
不同的圖形資源通過交換管道互鎖信號協(xié)調(diào)它們的操作。這些包括控制在不同圖形資源之間的數(shù)據(jù)流的“握手”信號。例如,當(dāng)幾何建立引擎210完成多邊形數(shù)據(jù)的處理時(shí),它可以給屏蔽單元220斷言一個(gè)信號。指示處理數(shù)據(jù)就緒。屏蔽單元220依次斷言一個(gè)信號,指示它是否有能力接收該數(shù)據(jù)。當(dāng)屏蔽單元220缺乏能力,則建立引擎210被停止,而由屏蔽單元220斷言以指示它缺乏能力的信號提供這種條件的指示。反之,如果屏蔽單元220指示它有能力而建立引擎210忙于處理數(shù)據(jù),則屏蔽單元220將閑置,而從建立引擎210來的忙信號提供該種條件的指示。類似地,顏色管道230和紋理管道240與彩色計(jì)算器250交換信號,指示正被處理的數(shù)據(jù)是否存在及其類型,和確定彩色計(jì)算器250處理該數(shù)據(jù)的能力。
像上面敘述的管道互鎖信號通常由與每一圖形資源相關(guān)的接口邏輯產(chǎn)生。這些信號可以通過專用線或?qū)S每偩€連接到觀察系統(tǒng)160,用以提供各種資源狀態(tài)的指示。也可以監(jiān)視用于在這些圖形資源內(nèi)的部件之間通信的信號。在圖2中用橢圓指示觀察系統(tǒng)160可以由之訪問這些信號的點(diǎn)。
現(xiàn)在參考表1A,表中總結(jié)了管道互鎖信號或者可從它們導(dǎo)出的信號的樣本,可以單獨(dú)或者組合使用這些信號來指定用于監(jiān)視和分析的事件。這些信號根據(jù)接收它們的設(shè)備組織。
表1A
對圖形控制器140的存儲器區(qū)域的信號(負(fù)載信號)。負(fù)載信號例如包括為檢索或存儲需要的數(shù)據(jù)而在紋理管道240和紋理超高速緩沖存儲器244的各部件之間交換的信號。
現(xiàn)在參考表1B,表中總結(jié)了可以使用本發(fā)明監(jiān)視和分析的負(fù)載信號的例子。在第一列中的前5個(gè)信號是輸入信號,而后5個(gè)信號是相應(yīng)的完成信號。這些信號或者他們的等價(jià)信號在許多圖形控制器系統(tǒng)中存在,下面詳細(xì)討論。
表1B
事件輸入信號,特別是響應(yīng)負(fù)載指令產(chǎn)生的,可以通過選擇的限定信號精選。這些限定信號表示關(guān)于支撐的事務(wù)處理或者條件的附加信息,諸如在某個(gè)請求中的數(shù)據(jù)類型或數(shù)量。另外,某些資源條件也許未由顯式狀態(tài)信號表示,而是這些狀態(tài)可以從與該資源關(guān)聯(lián)的其它信號導(dǎo)出。限定信息從支撐資源信號中抽取,并通過觀察模塊使用相應(yīng)的事件輸入信號處理。在觀察模塊320公開的實(shí)施例中,事件輸入信號和限定信號由CLU340組合,其在下面討論。
可以編程觀察系統(tǒng)160選擇響應(yīng)任何這種信號而產(chǎn)生的事件輸入信號并處理它們以分析在圖形控制器140中的特定事件。這些事件可以由觀察系統(tǒng)160進(jìn)一步分析,以提供例如關(guān)于圖形控制器中資源的延遲、帶寬、和隊(duì)列深度的數(shù)據(jù)。
現(xiàn)在參考圖3A,圖中示出觀察系統(tǒng)160的一個(gè)實(shí)施例的方框圖。觀察系統(tǒng)160包括命令接口310,它在系統(tǒng)100和觀察模塊320之間傳輸數(shù)據(jù)和指令。在本公開的實(shí)施例中,命令接口310通過存儲器映射的寄存器(未示出)或者通過CSC150從總線142接收事件監(jiān)視指令。命令接口310包括解碼這些指令并為觀察模塊320產(chǎn)生合適的控制信號的電路。事件監(jiān)視指令的格式在下面討論。
觀察模塊320包括事件發(fā)生模塊302、選擇模塊304、信號處理模塊306、和信號分析模塊308。事件發(fā)生模塊302產(chǎn)生表示在圖形控制器140中檢測到的信號的事件輸入信號??梢跃幊踢x擇模塊304使之通過選擇的事件輸入信號到信號處理模塊306。可以編程處理模塊306以決定事件輸入信號和組合它們來定義事件信號??梢跃幊谭治瞿K308分析事件信號以確定所選擇的事件信號的頻率、通量、帶寬、以及隊(duì)列深度信息。
現(xiàn)在參考圖3B,圖中表示出圖3A的觀察模塊320的各種部件的實(shí)施例。在公開的實(shí)施例中,事件發(fā)生模塊302包括一個(gè)或者多個(gè)事件發(fā)生器318(1)-318(N)(統(tǒng)稱事件發(fā)生器318)。選擇模塊304包括一個(gè)或者多個(gè)可編程輸入選擇器320(1)-320(M)(統(tǒng)稱輸入選擇器320)。處理模塊306包括一個(gè)信號調(diào)節(jié)(SC)模塊330和一個(gè)并發(fā)邏輯單元(CLU)340,分析模塊308包括一個(gè)或者多個(gè)加數(shù)發(fā)生器350和分別為低階和高階的累加器370、380。豎直框314表示登臺(staging)鎖存器。
連接發(fā)生器318以監(jiān)視在圖2中指示的各個(gè)位置處的信號和產(chǎn)生表征被監(jiān)視信號的事件輸入信號。在本公開的實(shí)施例中,例如,事件發(fā)生器318(1)、318(2)、318(C)可以分別監(jiān)視由橢圓A、B、C指示位置處的信號??梢允褂弥T如類型(缺少、停止、超高速緩沖存儲器讀,等等)和只要可能的話其數(shù)量以及正被傳輸?shù)臄?shù)據(jù)類型來表征被監(jiān)視的信號。
現(xiàn)在參考圖4,圖中表示事件發(fā)生器318的一個(gè)實(shí)施例的方框圖。在所公開的實(shí)施例中,事件發(fā)生器318包括解碼器410、請求隊(duì)列管理器420和大小編碼器430。解碼器410變換在圖形控制器140的一個(gè)相關(guān)位置檢測到的信號為相應(yīng)事件輸入信號。只要可能,大小編碼器確定正被傳輸?shù)臄?shù)據(jù)塊的大小。請求隊(duì)列管理器420跟蹤各個(gè)未解決的事務(wù)處理的狀態(tài),并合適的話產(chǎn)生新穎的狀態(tài)信號。
在公開的事件發(fā)生器318的實(shí)施例中,只要合適的話,解碼器410處理信號以確定圖形控制器內(nèi)被傳輸?shù)臄?shù)據(jù)塊的大小。觀察模塊320的另一可選方案為可以包括一個(gè)單獨(dú)的重映射模塊,以產(chǎn)生這一類型的數(shù)據(jù)大小信息。
選擇模塊304確定哪一個(gè)事件輸入信號通過,分別到處理和分析模塊306和308進(jìn)行事件分析。所公開的選擇器模塊302的實(shí)施例(圖3B)包括一個(gè)或者多個(gè)輸入選擇器320。每一輸入選擇器320包括多個(gè)輸入,而連接每個(gè)輸入用以從相應(yīng)的事件發(fā)生器318接收選擇的事件輸入信號。控制輸入326按照在命令接口310上的事件監(jiān)視指令傳輸選擇的輸入上的信號到處理模塊304。輸入選擇器320可以配對來通過選擇的事件輸入信號隊(duì),而選擇的信號可以由調(diào)節(jié)模塊330修改。這種配對/調(diào)節(jié)便利了帶寬、隊(duì)列深度、和延遲的實(shí)驗(yàn)。
可以編程信號調(diào)節(jié)模塊330對選擇的事件輸入信號執(zhí)行邏輯操作或變換選擇的信號為為觀察系統(tǒng)320在以后階段使用適合的格式。在本發(fā)明的一個(gè)實(shí)施例中,信號調(diào)節(jié)器330支持對事件輸入信號的空操作(NOP)、變換操作、一次操作和逆一次操作??梢岳缡褂靡淮螁畏€(wěn)態(tài)觸發(fā)器實(shí)現(xiàn)這些操作。
CLU接收(調(diào)節(jié)的,限定的)事件輸入信號并在斷言(調(diào)節(jié)的,限定的)事件輸入信號的選擇的組合時(shí)產(chǎn)生事件信號。事件輸入信號的選擇的組合表示在圖形控制器140中感興趣的事務(wù)處理或事件。因?yàn)榭梢酝ㄟ^精選、調(diào)節(jié)和組合各種事件輸入信號來產(chǎn)生事件信號,因此它們可以表示比單獨(dú)用任何被監(jiān)視的信號表示的那些事件更復(fù)雜和更完全被限定的事件。
在CLU340的一個(gè)實(shí)施例中,事件信號作為事件輸入信號的布爾函數(shù)指定,這些事件輸入信號的組合表示感興趣的事件。事件輸入信號的布爾組合通過事件監(jiān)視指令指定。在CLU340的一個(gè)實(shí)施例中,當(dāng)表示該感興趣的事件的布爾函數(shù)為真時(shí)斷言一個(gè)事件信號。另外,每一事件輸入信號可以與和支撐的事務(wù)處理/條件關(guān)聯(lián)的一個(gè)或者多個(gè)限定器結(jié)合來進(jìn)一步限定被監(jiān)視的事件??梢越M合限定的事件輸入信號來更精確地表示一個(gè)感興趣的事件,例如事務(wù)處理碰撞。
例如,某個(gè)感興趣的事件可以是一個(gè)在象素處理期間的紋理超高速緩沖存儲器失中。這一事件的跟蹤和分析可以指示需要改變紋理管道240,諸如增加紋理超高速緩沖存儲器244的大小。這一事件可以通過并發(fā)斷言紋理超高速緩沖存儲器失中管道互鎖信號(TC miss=SigA)和彩色寫請求負(fù)載信號(Color Write Req.=SigB)來指定。并發(fā)事件監(jiān)視指令給CLU340指定這一事件為SigA AND SigB,而一個(gè)事件選擇指令編程一對選擇器320連接表示SigA和SigB的事件輸入信號到處理模塊306。通過信號調(diào)節(jié)器330連接事件輸入信號到CLU340,它在并發(fā)斷言SigA和SigB時(shí)斷言相應(yīng)的事件信號。如果例如只對多于32字節(jié)的彩色寫請求感興趣,則可以把SigB與數(shù)據(jù)大小限定器相與,而由CLU340把限定的SigB與SigA相與。
現(xiàn)在參考圖5A,圖中表示出CLU340的一個(gè)實(shí)施例的方框圖。在公開的實(shí)施例中,CLU340包括信號限定器510,組運(yùn)算器520(A)-520(D)(統(tǒng)稱組運(yùn)算器520),區(qū)間標(biāo)記器540,直方圖器550,和信號路由器560。信號限定器510包括結(jié)合一個(gè)事件輸入信號(EIS)與一個(gè)限定器信號(QS)以產(chǎn)生一個(gè)限定的EIS(QEIS)的電路。信號限定器510最簡單的形式可以是一個(gè)QS和EIS加在其輸入端的與門??梢园裃EIS提供給信號路由器560來連接到分析模塊308,或可以把它提供給組運(yùn)算器520,與另一個(gè)EIS或QEIS結(jié)合。
可以編程組運(yùn)算器520來產(chǎn)生表示施加到它們輸入端的信號的布爾組合的信號。在公開的實(shí)施例中,所示CLU340具有4個(gè)兩輸入組運(yùn)算器,盡管還可以包括另外的組運(yùn)算器以提供更大的功能。連接組運(yùn)算器520(B)、520(C)、520(D)以產(chǎn)生直到4個(gè)信號的布爾組合。另外,連接區(qū)間標(biāo)記器540來從組運(yùn)算器520(A)和520(B)接收輸入信號和指示在兩個(gè)輸入信號斷言之間的時(shí)間區(qū)間。在該實(shí)施例中,區(qū)間標(biāo)記器540是一個(gè)一位狀態(tài)機(jī),它在其一個(gè)輸入信號斷言時(shí)斷言一個(gè)輸出信號,而在其另一輸入信號斷言時(shí)解除對該輸出信號的斷言。
直方圖器550包括一個(gè)計(jì)數(shù)器和一個(gè)比較器,以分類在其輸入端的信號到確定區(qū)間。在公開的實(shí)施例中,可以由組運(yùn)算器520(D)或區(qū)間標(biāo)記器540之一的輸出驅(qū)動直方圖器550。相應(yīng)地,可以用它跟蹤由組運(yùn)算器520(B)、520(C)、520(D)指定的事件的持續(xù)時(shí)間或在由組運(yùn)算器520(A)和520(B)指定的事件之間的時(shí)間區(qū)間。
現(xiàn)在參考圖5B,圖中表示出組運(yùn)算器520的一個(gè)實(shí)施例的方框圖。組運(yùn)算器520包括多路轉(zhuǎn)換器522、524,異或邏輯門526(A)-526(C)(統(tǒng)稱為異或門526),以及與門528(A),或門528(B),和異或門528(C)(統(tǒng)稱邏輯門528)。多路轉(zhuǎn)換器522、524,異或門526和邏輯門528可通過由命令接口310產(chǎn)生的功能控制信號編程。例如,當(dāng)(調(diào)節(jié)的,限定的)事件輸入信號(Q)EISC和(Q)EISD使邏輯等式為真時(shí),斷言表示EISC OP EISD的信號。所公開的組運(yùn)算器520的實(shí)施例可以單獨(dú)產(chǎn)生表示(Q)EISC和(Q)EISD的事件信號以及這些EISS的布爾組合,其中運(yùn)算(OP)是與、非與、或、非或、異或、異非或。
DS表示持續(xù)時(shí)間信號。這些是電平激發(fā)信號,只要指定條件為真,則它們停留在一個(gè)指定的狀態(tài)。與此相反,EIS信號通常是脈沖信號,它們在相關(guān)的事件發(fā)生時(shí)臨時(shí)改變狀態(tài)。
來自處理模塊306的事件信號可以進(jìn)一步由觀察模塊320的分析模塊308處理。在公開的實(shí)施例中,分析模塊308包括加數(shù)發(fā)生器360和累加器370,可以將其編程來跟蹤選擇的事件信號的出現(xiàn)或執(zhí)行基于選擇的事件信號的實(shí)驗(yàn)。所示器370分別連接到在管道化結(jié)構(gòu)中更高階的累加器380上。這允許以比單級累加器所能實(shí)現(xiàn)的更高的速率跟蹤事件數(shù)據(jù),但對本發(fā)明不需要。
加數(shù)發(fā)生器360和累加器370、380允許觀察模塊320同時(shí)積累多重事件信號的數(shù)據(jù)。例如,關(guān)于在選擇的資源中的寄存器上的隊(duì)列深度的信息和選擇的由這些資源實(shí)現(xiàn)的操作的延遲的信息可以從在選擇的到達(dá)和完成事件之間的差確定。在表1B中的事件輸入信號(以及在表1A中的某些)可以用來指示是到達(dá)事件(A)還是完成事件(C)。到達(dá)事件例如包括指示接收在與圖形控制器200中的各種資源關(guān)聯(lián)的隊(duì)列中的讀和寫請求的信號。相應(yīng)的完成事件包括指示完成讀和寫請求的信號,例如,接收請求的數(shù)據(jù)或成功傳輸?shù)侥繕?biāo)資源的數(shù)據(jù)。
與圖形控制器140中的資源相關(guān)的隊(duì)列通常服務(wù)于多個(gè)資源。相應(yīng)地,通過監(jiān)視在選擇的時(shí)間區(qū)間上感興趣的隊(duì)列中到達(dá)和完成的事件而抽取延遲和隊(duì)列深度數(shù)據(jù)。例如,請求的平均延遲(S)由給出。s=Σi(A-C)C]]>這里,A和C分別是在觀察的時(shí)間區(qū)間T內(nèi)發(fā)生的到達(dá)和完成的數(shù)目。在每時(shí)鐘周期(I)的基礎(chǔ)上積累A和C之間的差以產(chǎn)生在T期間的忙時(shí)間B。C是在T期間完成數(shù)目的一個(gè)活動計(jì)數(shù)。
觀察系統(tǒng)160通過跟蹤到達(dá)和完成事件、確定就每一時(shí)鐘周期存儲的值之間的差(忙時(shí)間)、在一個(gè)第一累加器370內(nèi)加該差、和在一個(gè)第二累加器370內(nèi)加完成數(shù)目,從而產(chǎn)生延遲數(shù)據(jù)。也可以使用忙時(shí)間通過跟蹤在第二累加器內(nèi)到達(dá)事件信號的數(shù)目來為一個(gè)資源確定平均隊(duì)列深度。通過跟蹤在第一累加器370內(nèi)的到達(dá)數(shù)據(jù)事務(wù)處理的大小和在第二累加器370內(nèi)的到達(dá)數(shù)目可以產(chǎn)生帶寬數(shù)據(jù)。
現(xiàn)在參考圖6,圖中表示加數(shù)發(fā)生器360的一個(gè)實(shí)施例,其可以編程以實(shí)現(xiàn)上述延遲、隊(duì)列深度和帶寬實(shí)驗(yàn)。還表示在加數(shù)發(fā)生器360、CLU340和累加器370之間的連接。
加數(shù)發(fā)生器360包括一個(gè)上/下行計(jì)數(shù)器,用以跟蹤系統(tǒng)中未解決的請求的數(shù)目。這些請求用施加在輸入端UP、DN上的到達(dá)和完成事件信號表示??梢跃幊蘉UXS620、630、640、650來連接各個(gè)事件信號到累加器370,包括驅(qū)動計(jì)數(shù)器610的UP、DN輸入的信號。在公開的實(shí)施例中,事件信號表示為通過一對輸入選擇器318(1)、318(2)提供的到達(dá)和完成事件信號。使用這些信號來表示延遲和隊(duì)列深度實(shí)驗(yàn),同時(shí)要理解,其它事件信號,例如使用CLU340定義的事件輸入信號組合可以類似分析或用加數(shù)發(fā)生器360和累加器370累加。
MUXS620和640通過輸入AE分別連接選擇的事件信號以啟用累加器370(1)和370(2)。MUXS630和650連接選擇要跟蹤的信號分別到累加器370(1)、370(2)的數(shù)據(jù)輸入(IN)。MUXS620、630、640、650的控制輸入連接到一個(gè)控制信號,它根據(jù)要運(yùn)行的實(shí)驗(yàn)類型選擇不同的輸入信號。MUX660選擇輸入到MUX640的一個(gè)事件信號。
在公開的實(shí)施例中,不同的事件信號分析由一個(gè)施加在MUXS620、630、640和650上的選擇信號(ADD_SEL)觸發(fā)。例如,如果選擇MUXS620、630、640、650的A輸入,則事件A和C分別在累加器370(1)和370(2)中被跟蹤。如果選擇MUXS620、630、640、650的B輸入,則在累加器370(1)中跟蹤由A事件傳輸?shù)臄?shù)據(jù)大小,在累加器370(2)中跟蹤A事件的數(shù)目。可以使用這一數(shù)據(jù)提供為A事件的帶寬數(shù)據(jù)。
一個(gè)由事件A啟動的和由事件C完成的操作的延遲可以通過選擇MUXS620、630、640、650的C輸入和MUX660的A輸入確定。在這一場合,累加器370(1)跟蹤未解決的請求或忙時(shí)間(A和C事件的數(shù)目之間的差),而累加器370(2)跟蹤C(jī)事件。通過為一個(gè)時(shí)間區(qū)間的忙時(shí)間對在該時(shí)間區(qū)期間完成的數(shù)目的比率提供該延遲。反之,如果選擇MUX660的B輸入,則累加器370(2)跟蹤A事件,其可以與忙時(shí)間(累加器370(1))結(jié)合以指示隊(duì)列深度。
這樣,加數(shù)發(fā)生器370為操作由輸入選擇器318和,必要的話,CLU340定義的事件信號提供可編程的結(jié)構(gòu)。觀察模塊320的另一可選實(shí)施例可以使用不同的邏輯組合來分析來自CLU340的事件輸出信號。例如,可以結(jié)合累加器370、380使用計(jì)數(shù)器和減法邏輯來進(jìn)一步分析事件輸出信號。
現(xiàn)在參考圖7,圖中表示命令接口310的一個(gè)實(shí)施例,其用于接收事件監(jiān)視指令和給觀察模塊320的部件產(chǎn)生合適的控制信號。一個(gè)第一接口連接來自CSC150的指令和相關(guān)數(shù)據(jù)到觀察模塊320,一個(gè)第二接口連接在觀察模塊320和總線142之間的指令和相關(guān)數(shù)據(jù)。雖然公開的命令接口310的實(shí)施例允許通過CSC150和總線142與觀察模塊320通信,但是另外可選的實(shí)施例可以只支持這些事件監(jiān)視指令源的一種。
通過第一接口連接的信號包括源標(biāo)識信號(SID)、事件監(jiān)視指令(EMI)、和一個(gè)閃光信號。SID分別根據(jù)EMI是通過第一接口(通過CSC150)還是通過第二接口(通過總線142)提供被斷言或解除斷言。EMI包括指示要由觀察模塊322執(zhí)行的操作的類型和包括的觀察模塊320的部件。閃光信號指示SID和EMI何時(shí)有效。
來自CSC150的指令連接到多路轉(zhuǎn)換器(MUX)720的一個(gè)輸入,連接其另一輸入以接收來自第二接口的指令。連接MUX720的控制輸入以接收SID。MUX720連接來自由SID指示的輸入的數(shù)據(jù)(EMI)到指令解碼器740。指令解碼器740包括給觀察模塊320的部件產(chǎn)生控制信號的邏輯,其由EMI指示。這些信號可以例如復(fù)位計(jì)數(shù)器350(RESET),連接選擇器322的一個(gè)輸入324到信號調(diào)節(jié)器330(EVENTSELECT),或?yàn)镃LU340識別要連接到計(jì)數(shù)器350的一個(gè)或者多個(gè)信號組合(SET_CO_OCCURENCE)。每當(dāng)在第一或第二接口檢測到一個(gè)新命令時(shí)就觸發(fā)指令解碼器740。
在命令接口310的一個(gè)實(shí)施例中,CSC150以16位分段給第一接口提供32位事件監(jiān)視指令。在這一場合,使用一個(gè)去多路轉(zhuǎn)換器和寄存器(未示出)在引導(dǎo)它到MUX720之前鏈接16位分段為32位指令。
第二接口為存儲器映射的I/O連接觀察模塊320到總線142。在公開的實(shí)施例中,第二接口從總線142接收數(shù)據(jù),并連接來自觀察模塊320的數(shù)據(jù)到總線142。MUX770根據(jù)施加在控制電極上的一個(gè)信號(P_ADD)的狀態(tài)引導(dǎo)來自總線142的數(shù)據(jù)到地址寄存器764或指令寄存器768。來自總線142的數(shù)據(jù)可以包括地址數(shù)據(jù)和EMIS。例如,系統(tǒng)100的處理器可以使用存儲器映射的I/O通過總線142來給觀察接口310提供事件監(jiān)視指令。
把來自總線142的地址數(shù)據(jù)引導(dǎo)到地址寄存器764,在這里它被解碼以確定總線142上的數(shù)據(jù)是否是打算給觀察模塊320的。尋址觀察模塊320的數(shù)據(jù)通常是事件監(jiān)視指令,它通過MUX720提供給指令解碼器740。
由觀察模塊320產(chǎn)生的數(shù)據(jù),諸如帶寬、延遲、或事件頻率信息,通過MUX780提供給總線142。在公開的實(shí)施例中,這一數(shù)據(jù)可以緩沖存儲到寄存器784中并由一個(gè)施加到MUX780的控制輸入的信號對總線142鎖存。一般說,通過存儲器映射的I/O提供的地址和指令和通過CSC150提供的指令分別緩沖存儲到寄存器774、778和724。
表2總結(jié)了適合編程觀察系統(tǒng)160的事件監(jiān)視指令的基本集。該表指示在每一指令中指定的參數(shù)和該指令的用途。下面結(jié)合圖8A-8D討論這些指令。
表2
現(xiàn)在參考圖8A,圖中表示適用于表2的指令1-7的EMI800的方框圖。這些指令控制觀察系統(tǒng)300的累加器370、380,并為此目的包括操作碼(opcode)字段804和一個(gè)累加器字段806。操作碼字段804指示正被執(zhí)行指令1-7中的哪一個(gè),而累加器字段806指示目的累加器。例如,Reset指令復(fù)位指示的累加器到開始值,其通常為零。Sample&reset讀取指示的累加器的內(nèi)容并使其復(fù)位。Sample采樣指示的累加器的內(nèi)容而不復(fù)位。
現(xiàn)在參考圖8B,圖中表示Set_Event_Instruction(SEI)820的方框圖。SEI820指示要跟蹤哪一個(gè)事件輸入信號。操作碼字段812標(biāo)識指令的類型,亦即SEI。選擇器地址字段814指示使用哪一個(gè)選擇器320,而信號選擇字段818指示選擇器的哪一個(gè)輸入要連接到處理邏輯306。在本發(fā)明的一個(gè)實(shí)施例中,信號選擇字段818包括一個(gè)組選擇子字段和一個(gè)信號選擇子字段以分別指示信號組中的一般信號組和特殊信號。命令接口310的指令解碼器740變換信號選擇字段818中的數(shù)據(jù)為用于選擇器320的一個(gè)合適的控制信號。條件字段816指示要由信號調(diào)節(jié)器330對選擇的事件輸入信號執(zhí)行的任何邏輯或其它類型的操作。
現(xiàn)在參考圖8C,圖中表示Set_Co_occurrence指令(SCI)820的方框圖,其適合設(shè)定CLU340來檢測選擇的信號組合。SCI820包括一個(gè)操作碼字段822,一個(gè)寄存器地址字段824,和一個(gè)寄存器值字段828。操作碼字段822給解碼器740指示指令類型(SCI)。寄存器地址字段824標(biāo)識與CLU340的一個(gè)資源,例如組運(yùn)算器520、信號限定器510相關(guān)的寄存器,用以編程該資源。寄存器值字段828包括一個(gè)值,它編碼例如一個(gè)要由所標(biāo)識的資源實(shí)現(xiàn)的選擇的布爾運(yùn)算。把該值寫入被標(biāo)識的寄存器以編程該相關(guān)資源。
現(xiàn)在參考圖8D,圖中表示Set_X-Experiment指令(SXI)830的方框圖,這里X指使用同樣的數(shù)據(jù)格式例如表2的指令11-13指定的各種實(shí)驗(yàn)。在公開的實(shí)施例中,X可以指示延遲實(shí)驗(yàn)、隊(duì)列深度實(shí)驗(yàn)、或帶寬實(shí)驗(yàn)。在每種場合,SXI830包括一個(gè)操作碼字段832,一個(gè)選擇器對字段834,調(diào)節(jié)字段836、837,和一個(gè)事件選擇字段838。操作碼字段832標(biāo)識對解碼器740的指令類型(SXI)。選擇器字段834指示一組接收目標(biāo)事件輸入信號的輸入選擇器322,而事件選擇字段838指示指定接收目標(biāo)事件輸入信號的輸入選擇器322的特定輸入。這些事件輸入信號對可以從一個(gè)編碼的信號對表中選擇。
在延遲實(shí)驗(yàn)中,例如,該對的一個(gè)選擇器320被編程以選擇表示一個(gè)到達(dá)事件的事件輸入信號,而該對的另一個(gè)選擇器320將被編程選擇表示一個(gè)完成事件的事件輸入信號。在帶寬實(shí)驗(yàn)中,該對的一個(gè)選擇器320將選擇一個(gè)事件輸入信號,而另一個(gè)選擇器320將選擇提供關(guān)于由相關(guān)事件傳輸?shù)臄?shù)據(jù)塊大小的信息的數(shù)據(jù)信號。在公開的觀察系統(tǒng)160的實(shí)施例中,這一數(shù)據(jù)塊信息是由事件發(fā)生器318的大小編碼器提供的。調(diào)節(jié)字段836、837指示要施加到選擇的事件輸入和數(shù)據(jù)決信號的任何調(diào)節(jié),例如一元邏輯運(yùn)算。
這樣提供了一個(gè)為監(jiān)視和分析圖形控制器性能的觀察系統(tǒng)。該系統(tǒng)包括一個(gè)命令接口和一個(gè)觀察模塊,連接該模塊用以接收圖形控制器的各種資源的信號。命令接口控制觀察模塊中的邏輯來根據(jù)事件監(jiān)視指令選擇和處理信號。
權(quán)利要求書按照條約第19條的修改1.一種監(jiān)視圖形控制器的操作的系統(tǒng),該系統(tǒng)包括一個(gè)連接用以接收事件監(jiān)視指令的命令接口;一個(gè)連接到命令接口和圖形控制器的觀察模塊,用以檢測在該圖形控制器中由事件監(jiān)視指令指示的事件。
2.如權(quán)利要求1所述系統(tǒng),其中,觀察模塊包括一個(gè)連接到圖形控制器的信號發(fā)生模塊,它在該圖形控制器中檢測到相應(yīng)信號時(shí)產(chǎn)生一個(gè)事件輸入信號;一個(gè)信號處理模塊;一個(gè)連接到命令接口、信號發(fā)生模塊、和處理模塊的信號選擇模塊,它在由事件監(jiān)視指令指示時(shí)連接事件輸入信號到處理模塊。
3.如權(quán)利要求2所述系統(tǒng),其中,處理模塊包括一個(gè)可由事件監(jiān)視指令編程對事件輸入信號執(zhí)行一元操作的信號條件;一個(gè)并發(fā)邏輯單元(CLU),其可由事件監(jiān)視指令編程來檢測一個(gè)或者多個(gè)事件輸入指令選擇的組合和在檢測到該選擇的組合時(shí)產(chǎn)生一個(gè)事件信號。
4.如權(quán)利要求3所述系統(tǒng),另外包括一個(gè)連接到命令接口和CLU的分析模塊,用以按照事件監(jiān)視指令跟蹤選擇的事件信號。
5.如權(quán)利要求3所述系統(tǒng),其中,可以編程CLU以檢測在一個(gè)指定的布爾關(guān)系內(nèi)發(fā)生的事件輸入信號。
6.如權(quán)利要求1所述系統(tǒng),其中,圖形控制器包括一個(gè)命令流控制器,用于為由該圖形控制器接收到的指令選擇路由,其中,命令接口連接到該命令流控制器,用以接收通過圖形控制器的事件監(jiān)視指令。
7.如權(quán)利要求1所述系統(tǒng),其中,連接命令接口用以接收由處理器寫的通過一個(gè)I/O地址的命令。
8.如權(quán)利要求1所述系統(tǒng),其中,命令接口包括一個(gè)解碼事件監(jiān)視指令的指令解碼器。
9.如權(quán)利要求1所述系統(tǒng),其中,通過一個(gè)數(shù)據(jù)接口連接觀察模塊到圖形控制器。
10.如權(quán)利要求9所述系統(tǒng),其中,數(shù)據(jù)接口包括一個(gè)地址解碼器,用于引導(dǎo)事件數(shù)據(jù)到組合邏輯中的一個(gè)指定的目的地。
11.一種監(jiān)視圖形控制器的性能的系統(tǒng),該系統(tǒng)包括一個(gè)用于處理事件監(jiān)視指令的指令解碼器;一個(gè)連接到圖形控制器的數(shù)據(jù)接口,用于接收來自圖形控制器指示由在該圖形控制器中一個(gè)或者多個(gè)資源執(zhí)行的操作的信號;連接到指令解碼器和數(shù)據(jù)接口上的觀察模塊,用于根據(jù)事件監(jiān)視指令處理接收到的信號。
12.如權(quán)利要求11所述系統(tǒng),其中,觀察模塊包括一個(gè)連接到數(shù)據(jù)接口的事件發(fā)生器,用于在從圖形控制器接收到選擇的信號時(shí)產(chǎn)生事件輸入信號;一個(gè)處理模塊,用于響應(yīng)接收在指定組合中的一個(gè)或者多個(gè)事件輸入信號而產(chǎn)生事件信號;一個(gè)連接到事件發(fā)生器和處理模塊的輸入選擇模塊,用于響應(yīng)來自指令解碼器的信號連接一個(gè)或者多個(gè)輸入信號到處理模塊。
13.如權(quán)利要求11所述系統(tǒng),另外包括一個(gè)分析模塊,其連接用于響應(yīng)事件監(jiān)視指令跟蹤來自處理模塊的一個(gè)或者多個(gè)事件信號。
14.如權(quán)利要求13所述系統(tǒng),其中,分析模塊包括一個(gè)或者多個(gè)累加器;一個(gè)連接到該一個(gè)或者多個(gè)累加器和指令解碼器上的加數(shù)發(fā)生器,用于響應(yīng)由解碼器處理的事件監(jiān)視指令引導(dǎo)事件信號到該一個(gè)或者多個(gè)累加器。
15.如權(quán)利要求11所述系統(tǒng),其中,來自圖形控制器的信號是管道互鎖信號。
16.如權(quán)利要求11所述系統(tǒng),其中,來自圖形控制器的信號是負(fù)載信號。
17.一種分析圖形控制器的性能的系統(tǒng),該系統(tǒng)包括一個(gè)圖形控制器,它包括通過內(nèi)部信號通信的資源;一個(gè)連接用于接收事件監(jiān)視指令和響應(yīng)所接收的指令產(chǎn)生控制信號的命令接口;一個(gè)連接到圖形控制器和命令接口上的觀察模塊,用于按照由命令接口提供的控制信號處理來自圖形控制器的選擇的內(nèi)部信號以標(biāo)識事件。
18.如權(quán)利要求17所述系統(tǒng),其中,圖形控制器包括一個(gè)命令流控制器,用于引導(dǎo)命令到各種資源,以及連接命令接口以接收通過該命令流控制器的事件監(jiān)視指令。
19.如權(quán)利要求17所述系統(tǒng),其中,觀察模塊包括一個(gè)分析模塊,其可通過命令接口編程來跟蹤圖形控制器中選擇的事件,以提供關(guān)于該圖形控制器的性能信息。
20.如權(quán)利要求19所述系統(tǒng),其中,性能信息包括事件頻率、隊(duì)列深度、操作延遲、和帶寬信息。
權(quán)利要求
1.一種監(jiān)視圖形控制器的操作的系統(tǒng),該系統(tǒng)包括一個(gè)連接用以接收事件監(jiān)視指令的命令接口;一個(gè)連接到命令接口和圖形控制器的觀察模塊,用以檢測在該圖形控制器中由事件監(jiān)視指令指示的事件。
2.如權(quán)利要求1所述系統(tǒng),其中,觀察模塊包括一個(gè)連接到圖形控制器的信號發(fā)生模塊,它在該圖形控制器中檢測到相應(yīng)信號時(shí)產(chǎn)生一個(gè)事件輸入信號;一個(gè)信號處理模塊;一個(gè)連接到命令接口、信號發(fā)生模塊、和處理模塊的信號選擇模塊,它在由事件監(jiān)視指令指示時(shí)連接事件輸入信號到處理模塊。
3.如權(quán)利要求2所述系統(tǒng),其中,處理模塊包括一個(gè)可由事件監(jiān)視指令編程對事件輸入信號執(zhí)行一元操作的信號條件;一個(gè)并發(fā)邏輯單元(CLU),其可由事件監(jiān)視指令編程來檢測一個(gè)或者多個(gè)事件輸入指令選擇的組合和在檢測到該選擇的組合時(shí)產(chǎn)生一個(gè)事件信號。
4.如權(quán)利要求3所述系統(tǒng),另外包括一個(gè)連接到命令接口和CLU的分析模塊,用以按照事件監(jiān)視指令跟蹤選擇的事件信號。
5.如權(quán)利要求3所述系統(tǒng),其中,可以編程CLU以檢測在一個(gè)指定的布爾關(guān)系內(nèi)發(fā)生的事件輸入信號。
6.如權(quán)利要求1所述系統(tǒng),其中,圖形控制器包括一個(gè)命令流控制器,用于為由該圖形控制器接收到的指令選擇路由,其中,命令接口連接到該命令流控制器,用以接收通過圖形控制器的事件監(jiān)視指令。
7.如權(quán)利要求1所述系統(tǒng),其中,連接命令接口用以接收由處理器寫的通過一個(gè)I/O地址的命令。
6.如權(quán)利要求1所述系統(tǒng),其中,命令接口包括一個(gè)指令解碼器,用以解碼事件監(jiān)視指令。
7.如權(quán)利要求1所述系統(tǒng),其中,通過數(shù)據(jù)接口連接觀察模塊到圖形控制器。
8.如權(quán)利要求7所述系統(tǒng),其中,數(shù)據(jù)接口包括一個(gè)地址解碼器,用于引導(dǎo)事件數(shù)據(jù)到組合邏輯中的一個(gè)指定的目的地。
9.一種監(jiān)視圖形控制器的性能的系統(tǒng),該系統(tǒng)包括一個(gè)用于處理事件監(jiān)視指令的指令解碼器;一個(gè)連接到圖形控制器的數(shù)據(jù)接口,用于接收來自圖形控制器指示由在該圖形控制器中一個(gè)或者多個(gè)資源執(zhí)行的操作的信號;連接到指令解碼器和數(shù)據(jù)接口上的觀察模塊,用于根據(jù)事件監(jiān)視指令處理接收到的信號。
10.如權(quán)利要求9所述系統(tǒng),其中,觀察模塊包括一個(gè)連接到數(shù)據(jù)接口的事件發(fā)生器,用于在從圖形控制器接收到選擇的信號時(shí)產(chǎn)生事件輸入信號;一個(gè)處理模塊,用于響應(yīng)在指定組合中接收到一個(gè)或者多個(gè)事件輸入信號而產(chǎn)生事件信號;一個(gè)連接到事件發(fā)生器和處理模塊的輸入選擇模塊,用于響應(yīng)來自指令解碼器的信號連接一個(gè)或者多個(gè)輸入信號到處理模塊。
11.如權(quán)利要求10所述系統(tǒng),另外包括一個(gè)分析模塊,其連接用于響應(yīng)事件監(jiān)視指令跟蹤來自處理模塊的一個(gè)或者多個(gè)事件信號。
12.如權(quán)利要求11所述系統(tǒng),其中,分析模塊包括一個(gè)或者多個(gè)累加器;連接到該一個(gè)或者多個(gè)累加器和指令解碼器上的加數(shù)發(fā)生器,用于響應(yīng)由解碼器處理的事件監(jiān)視指令引導(dǎo)事件信號到一個(gè)或者多個(gè)累加器。
13.如權(quán)利要求9所述系統(tǒng),其中,來自圖形控制器的信號是管道互鎖信號。
14.如權(quán)利要求9所述系統(tǒng),其中,來自圖形控制器的信號是負(fù)載信號。
15.一種分析圖形控制器性能的系統(tǒng),該系統(tǒng)包括一個(gè)圖形控制器,它包括通過內(nèi)部信號通信的資源;一個(gè)連接用于接收事件監(jiān)視指令和響應(yīng)所接收的指令產(chǎn)生控制信號的命令接口;一個(gè)連接到圖形控制器和命令接口上的觀察模塊,用于按照由命令接口提供的控制信號處理來自圖形控制器的選擇的內(nèi)部信號以標(biāo)識事件。
16.如權(quán)利要求15所述系統(tǒng),其中,圖形控制器包括一個(gè)命令流控制器,用于引導(dǎo)命令到各種資源,以及連接命令接口以接收通過該命令流控制器的事件監(jiān)視指令。
17.如權(quán)利要求15所述系統(tǒng),其中,觀察模塊包括一個(gè)分析模塊,其可通過命令接口編程來跟蹤圖形控制器中選擇的事件,以提供關(guān)于該圖形控制器的性能信息。
18.如權(quán)利要求17所述系統(tǒng),其中,性能信息包括事件頻率、隊(duì)列深度、操作延遲、和帶寬信息。
全文摘要
提供了一種實(shí)時(shí)觀察與圖形控制器(140)的操作相關(guān)的信號的可編程裝置。該裝置包括接收事件監(jiān)視指令的命令接口和連接到該圖形控制器的資源(144,150,152,154,158)的觀察模塊(160)。觀察模塊監(jiān)視由在該圖形控制器系統(tǒng)內(nèi)的一個(gè)或者多個(gè)資源產(chǎn)生的信號,并根據(jù)接收到的事件監(jiān)視指令處理這些信號。
文檔編號G06F11/34GK1290363SQ9881268
公開日2001年4月4日 申請日期1998年12月15日 優(yōu)先權(quán)日1997年12月24日
發(fā)明者E·T·奧姆特茲格特 申請人:英特爾公司