專利名稱:跟蹤數(shù)據(jù)優(yōu)先級(jí)選擇的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)處理系統(tǒng)領(lǐng)域。更具體地,本發(fā)明涉及具有產(chǎn)生跟蹤數(shù)據(jù)輸出能力的數(shù)據(jù)處理系統(tǒng)。
背景技術(shù):
在數(shù)據(jù)處理系統(tǒng)領(lǐng)域中,提供用于產(chǎn)生跟蹤輸出數(shù)據(jù)的機(jī)制是公知的。該跟蹤數(shù)據(jù)在硬件和/或軟件的開發(fā)期間可以被用于診斷和調(diào)試目的。在這種數(shù)據(jù)處理系統(tǒng)中出現(xiàn)的問題是跟蹤數(shù)據(jù)的量太大以至于當(dāng)被捕獲時(shí)或輸出前在設(shè)備上沒有充足的資源以緩存所述跟蹤數(shù)據(jù)和/或沒有充足的帶寬以將所述跟蹤數(shù)據(jù)發(fā)送到所述設(shè)備外。處理該問題的一種方式是丟棄不可能緩存或傳送出所述設(shè)備的跟蹤數(shù)據(jù)。然而,這遭受如下缺點(diǎn)的困擾 重要的診斷信息可能出現(xiàn)在該被丟棄的跟蹤數(shù)據(jù)中。另一種可能性是停止該設(shè)備直到跟蹤數(shù)據(jù)緩沖器中的空間變?yōu)槭强色@得的或者將所述跟蹤數(shù)據(jù)傳送出該設(shè)備的能力變?yōu)槭强色@得的。該方法的缺點(diǎn)在于停止該設(shè)備或相反改變其定時(shí)會(huì)以掩蓋或改變正被檢查的故障或引入附加的故障的方式影響該設(shè)備的操作。
發(fā)明內(nèi)容
從一方面看,本發(fā)明提供了用于處理數(shù)據(jù)的裝置,包括數(shù)據(jù)源,所述數(shù)據(jù)源被配置為產(chǎn)生數(shù)據(jù);以及跟蹤輸出設(shè)備,所述跟蹤輸出設(shè)備被耦合到所述數(shù)據(jù)源并被配置為從所述數(shù)據(jù)源接收所述數(shù)據(jù),并從所述裝置輸出跟蹤數(shù)據(jù);其中所述數(shù)據(jù)源動(dòng)態(tài)地選擇將與所述數(shù)據(jù)相關(guān)聯(lián)的多個(gè)優(yōu)先級(jí)中的一個(gè);所述跟蹤輸出設(shè)備響應(yīng)具有第一優(yōu)先級(jí)的所接收的數(shù)據(jù)以執(zhí)行如下操作之一
(i)如果所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù),則從所述數(shù)據(jù)源接受所述數(shù)據(jù);以及
(ii)如果所述跟蹤輸出設(shè)備沒有準(zhǔn)備好處理所述數(shù)據(jù),則延遲從所述數(shù)據(jù)源接受所述數(shù)據(jù)直到所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù);以及所述跟蹤輸出設(shè)備響應(yīng)具有第二優(yōu)先級(jí)的所接收的數(shù)據(jù)以處理來自所述數(shù)據(jù)源的所述數(shù)據(jù)以及,如果所述跟蹤輸出設(shè)備不能處理所述數(shù)據(jù),則丟棄所述數(shù)據(jù)。使用該技術(shù),所述數(shù)據(jù)源能夠選擇與被發(fā)送到所述跟蹤輸出設(shè)備的所述跟蹤數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí),并且所述跟蹤輸出設(shè)備可以響應(yīng)該優(yōu)先級(jí)以便管理所述跟蹤輸出設(shè)備處理所接收的跟蹤數(shù)據(jù)的能力。更特別地,如果所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述跟蹤數(shù)據(jù)則所述跟蹤輸出設(shè)備可以接受具有第一優(yōu)先級(jí)的跟蹤數(shù)據(jù),并且如果所述跟蹤輸出設(shè)備沒有準(zhǔn)備好處理所述跟蹤數(shù)據(jù),則可以延遲(stall)所述接受直到所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù)。處理所述跟蹤數(shù)據(jù)可能意味著簡(jiǎn)單地將所述跟蹤數(shù)據(jù)存儲(chǔ)在所述跟蹤輸出設(shè)備中。這樣,由于該跟蹤數(shù)據(jù)的接受將被延遲直到所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù),故第一優(yōu)先級(jí)的跟蹤數(shù)據(jù)將不會(huì)被丟失。從所述數(shù)據(jù)源接受具有第二優(yōu)先級(jí)的由所述跟蹤輸出設(shè)備接收的跟蹤數(shù)據(jù),但是,如果所述跟蹤輸出設(shè)備不能夠處理該跟蹤數(shù)據(jù),則其被丟棄。這樣,所述數(shù)據(jù)以不對(duì)進(jìn)一步處理產(chǎn)生妨礙的方式被接受,并且如果所述跟蹤輸出設(shè)備不能處理該數(shù)據(jù)則所述跟蹤輸出設(shè)備丟棄所述數(shù)據(jù)。使用這些不同的優(yōu)先級(jí),重要的跟蹤數(shù)據(jù)可以與所述第一優(yōu)先級(jí)相關(guān)聯(lián),以便將從本質(zhì)上保證由所述跟蹤輸出設(shè)備接受而較不重要的數(shù)據(jù)可以與第二優(yōu)先級(jí)相關(guān)聯(lián),使用其將被從數(shù)據(jù)源接受,以便避免對(duì)處理產(chǎn)生妨礙并且如果所述跟蹤輸出設(shè)備在該時(shí)間點(diǎn)不具有處理該跟蹤數(shù)據(jù)的能力則仍然將被丟棄。該跟蹤輸出設(shè)備可以包括數(shù)據(jù)緩沖存儲(chǔ)器,該數(shù)據(jù)緩沖存儲(chǔ)器被配置為在從所述裝置輸出所述跟蹤數(shù)據(jù)之前存儲(chǔ)該跟蹤數(shù)據(jù)。該數(shù)據(jù)緩沖存儲(chǔ)器中的存儲(chǔ)空間的可用性或不可用性可以被用于控制跟蹤輸出設(shè)備對(duì)接收的具有不同優(yōu)先級(jí)的跟蹤數(shù)據(jù)的響應(yīng)。當(dāng)所述數(shù)據(jù)緩沖存儲(chǔ)器具有足以存儲(chǔ)該跟蹤數(shù)據(jù)的空容量時(shí)將接受具有第一優(yōu)先級(jí)的所接收的跟蹤數(shù)據(jù),并且當(dāng)所述數(shù)據(jù)緩沖存儲(chǔ)器在該時(shí)刻不具有存儲(chǔ)所述跟蹤數(shù)據(jù)的足夠容量時(shí)將觸發(fā)該數(shù)據(jù)的接受的延遲。關(guān)于具有第二優(yōu)先級(jí)的跟蹤數(shù)據(jù),當(dāng)所述數(shù)據(jù)緩沖存儲(chǔ)器不具有存儲(chǔ)該跟蹤數(shù)據(jù)的足夠空容量時(shí),所述跟蹤輸出設(shè)備將不能處理該跟蹤數(shù)據(jù)并因此該跟蹤數(shù)據(jù)將被丟棄。使用所述數(shù)據(jù)緩沖器中可用空間與由N+F(P)給出的值的比較也可以確定處理數(shù)據(jù)的能力,其中N是要被存儲(chǔ)在所述緩沖器中的數(shù)據(jù)的字節(jié)大小并且F(P)是優(yōu)先級(jí)函數(shù)。本技術(shù)的一種類型的實(shí)施例使用是總線主設(shè)備的數(shù)據(jù)源、是總線從設(shè)備的跟蹤輸出設(shè)備,以及將所述數(shù)據(jù)源耦合到所述跟蹤輸出設(shè)備的總線互連。這種類型的布置是靈活的并允許設(shè)計(jì)者將跟蹤輸出設(shè)備放置在系統(tǒng)內(nèi)的實(shí)質(zhì)上任何位置并提供從借助于所述總線互連而被連接的各種不同總線主設(shè)備到該跟蹤輸出設(shè)備的訪問。當(dāng)所述跟蹤輸出設(shè)備是被映射到多個(gè)存儲(chǔ)器地址的存儲(chǔ)器映射從設(shè)備時(shí)可以簡(jiǎn)化與所述跟蹤輸出設(shè)備的通信。可以布置多個(gè)存儲(chǔ)器地址以便到不同存儲(chǔ)器地址的寫入被用于將不同優(yōu)先級(jí)與由所述跟蹤輸出設(shè)備接收的跟蹤數(shù)據(jù)相關(guān)聯(lián)。因此,映射到跟蹤輸出設(shè)備的一個(gè)存儲(chǔ)器地址可以被用于接收第一優(yōu)先級(jí)的數(shù)據(jù)并且映射到所述跟蹤輸出設(shè)備的不同存儲(chǔ)器地址可以被用于接收第二優(yōu)先級(jí)的數(shù)據(jù)。這樣,數(shù)據(jù)源可以選擇(例如,在軟件控制下)將數(shù)據(jù)寫入到被映射到所述跟蹤輸出設(shè)備內(nèi)的存儲(chǔ)區(qū)域中的哪個(gè)存儲(chǔ)位置,并因此動(dòng)態(tài)地選擇將與該數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)。在另一類實(shí)施例中,所述數(shù)據(jù)源可以是主處理器并且所述跟蹤輸出設(shè)備可以是被耦合到該主處理器的協(xié)處理器。在此類實(shí)施例中,響應(yīng)于所述主處理器的指令流中的協(xié)處理器指令,數(shù)據(jù)可以從所述主處理器被發(fā)送到用作跟蹤輸出設(shè)備的協(xié)處理器。所述協(xié)處理器指令可以指定將與要被傳送到用作跟蹤輸出設(shè)備的所述協(xié)處理器的數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)。如下是可能的系統(tǒng)的用戶可以配置該系統(tǒng)以便在系統(tǒng)中出現(xiàn)具有所述第一優(yōu)先級(jí)的跟蹤數(shù)據(jù)的多次寫入,該多次寫入延遲所述傳送直到該跟蹤數(shù)據(jù)被接受。在這種情形中,可能出現(xiàn)延遲的建立以便實(shí)質(zhì)上妨礙該處理的整體向前進(jìn)程以及不能獲得有用的診斷或調(diào)試信息。為了提供用于處理這種情況的機(jī)制,所述跟蹤輸出設(shè)備可以響應(yīng)于覆寫信號(hào)而改變與由跟蹤輸出設(shè)備接收的數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)。因此,所述覆寫信號(hào)可以被用于以能夠避免以不期望的方式進(jìn)行該數(shù)據(jù)延遲處理的方式而有效地減少與由跟蹤輸出設(shè)備所接收的數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)從另一方面看,本發(fā)明提供了用于處理數(shù)據(jù)的裝置,包括用于產(chǎn)生數(shù)據(jù)的數(shù)據(jù)源部件;以及跟蹤輸出部件,所述跟蹤輸出部件被耦合到所述數(shù)據(jù)源部件,用于從所述數(shù)據(jù)源部件接收所述數(shù)據(jù)并從所述裝置輸出跟蹤數(shù)據(jù);其中所述數(shù)據(jù)源部件動(dòng)態(tài)地選擇將與所述數(shù)據(jù)相關(guān)聯(lián)的多個(gè)優(yōu)先級(jí)中的一個(gè);所述跟蹤輸出部件響應(yīng)于所接收的具有第一優(yōu)先級(jí)的數(shù)據(jù)執(zhí)行如下操作之一 (i)如果所述跟蹤輸出部件準(zhǔn)備好處理所述數(shù)據(jù),則從所述數(shù)據(jù)源部件接受所述數(shù)據(jù);以及(ii)如果所述跟蹤輸出部件沒有準(zhǔn)備好處理所述數(shù)據(jù),則延遲從所述數(shù)據(jù)源部件接受所述數(shù)據(jù)直到所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù);以及所述跟蹤輸出部件響應(yīng)所接收的具有第二優(yōu)先級(jí)的數(shù)據(jù)以接受來自所述數(shù)據(jù)源部件的所述數(shù)據(jù)以及,如果所述跟蹤輸出部件不能處理所述數(shù)據(jù),則丟棄所述數(shù)據(jù)。從另一方面看,本發(fā)明提供了處理數(shù)據(jù)的方法,包括如下步驟使用數(shù)據(jù)源產(chǎn)生數(shù)據(jù);使用被耦合到所述數(shù)據(jù)源的跟蹤輸出設(shè)備從所述數(shù)據(jù)源接收所述數(shù)據(jù);以及從所述裝置輸出跟蹤數(shù)據(jù);其中所述數(shù)據(jù)源動(dòng)態(tài)地選擇將與所述數(shù)據(jù)相關(guān)聯(lián)的多個(gè)優(yōu)先級(jí)中的一個(gè);所述跟蹤輸出設(shè)備響應(yīng)于所接收的具有第一優(yōu)先級(jí)的數(shù)據(jù)執(zhí)行如下操作之一
(i)如果所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù),則從所述數(shù)據(jù)源接受所述數(shù)據(jù);以及
(ii)如果所述跟蹤輸出設(shè)備沒有準(zhǔn)備好處理所述數(shù)據(jù),則延遲從所述數(shù)據(jù)源接受所述數(shù)據(jù)直到所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù);以及所述跟蹤輸出設(shè)備響應(yīng)于所接收的具有第二優(yōu)先級(jí)的數(shù)據(jù)以接受來自所述數(shù)據(jù)源的所述數(shù)據(jù)以及,如果所述跟蹤輸出設(shè)備不能處理所述數(shù)據(jù),則丟棄所述數(shù)據(jù)。通過如下將結(jié)合附圖而被閱讀的示例性實(shí)施例的詳細(xì)描述,本發(fā)明的上述以及其他目的、特征和優(yōu)點(diǎn)將是顯而易見的。
圖1示例性地示出了具有跟蹤能力并被耦合到診斷設(shè)備的片上系統(tǒng)集成電路;圖2是示意性地示出了在數(shù)據(jù)源內(nèi)執(zhí)行的將優(yōu)先級(jí)與被發(fā)送到跟蹤輸出設(shè)備的數(shù)據(jù)相關(guān)聯(lián)的處理的流程圖;圖3是示意性地示出了在跟蹤輸出設(shè)備內(nèi)執(zhí)行的接收具有不同優(yōu)先級(jí)的數(shù)據(jù)的處理的流程圖;圖4是示出了被映射到跟蹤輸出設(shè)備的不同范圍的存儲(chǔ)地址如何與不同優(yōu)先級(jí)和不同的其他屬性相關(guān)聯(lián)的表格;圖5示意性地示出了其中處理器被耦合到用作跟蹤輸出設(shè)備的協(xié)處理器的另一實(shí)施例。
具體實(shí)施例方式圖1示出了將跟蹤數(shù)據(jù)輸出到診斷設(shè)備4的片上系統(tǒng)集成電路2。所述集成電路2包括執(zhí)行程序指令的處理器核心6、跟蹤輸出設(shè)備8、另外的總線主設(shè)備10以及另兩個(gè)總線從設(shè)備12、14。所述處理器6、跟蹤輸出設(shè)備8、主設(shè)備10以及從設(shè)備12、14全部經(jīng)總線互連16 (這可以在標(biāo)準(zhǔn)共享總線和點(diǎn)對(duì)點(diǎn)互連之間變化)而被連接。所述處理器6是總線主設(shè)備并且所述跟蹤輸出設(shè)備是總線從設(shè)備。所述跟蹤輸出設(shè)備8是在系統(tǒng)的存儲(chǔ)地址空間內(nèi)映射的存儲(chǔ)器并具有與所述跟蹤輸出設(shè)備8相關(guān)聯(lián)的存儲(chǔ)器地址的范圍。諸如處理器6或總線主設(shè)備10 (例如DMA單元)的總線主設(shè)備可以向目標(biāo)存儲(chǔ)器地址執(zhí)行寫操作。如果該目標(biāo)存儲(chǔ)器地址在被映射到所述跟蹤輸出設(shè)備8的存儲(chǔ)器地址的范圍內(nèi),則該寫交易將橫穿所述總線互連16而到跟蹤輸出設(shè)備8。所述總線互連16(諸如根據(jù)由ARM有限公司設(shè)計(jì)的AMBA互連的協(xié)議)的傳輸協(xié)議被用于控制穿過所述總線的傳送。這些傳輸協(xié)議允許接收從設(shè)備(在此情況下為跟蹤輸出設(shè)備8)接受所述傳送或指示在其中所述數(shù)據(jù)應(yīng)被保留在所述總線上直到所述從設(shè)備準(zhǔn)備好接受該數(shù)據(jù)的延遲條件。當(dāng)延遲發(fā)生時(shí),一些或所有的總線互連16可能對(duì)其他設(shè)備的使用變?yōu)椴豢捎?,并因此可能損害集成電路2繼續(xù)處理的整體能力。所述跟蹤輸出設(shè)備8包括數(shù)據(jù)緩沖存儲(chǔ)器18,寫入到跟蹤輸出設(shè)備8的數(shù)據(jù)可以被存儲(chǔ)在該數(shù)據(jù)緩沖存儲(chǔ)器18中直到其被輸出到診斷設(shè)備4(直接地或以改進(jìn)的形式,諸如壓縮的形式)。用于輸出到診斷設(shè)備4的可用帶寬可能是窄的,并因此當(dāng)監(jiān)測(cè)集成電路2 的操作周期時(shí)大量的數(shù)據(jù)可能需要被緩沖在該數(shù)據(jù)緩沖存儲(chǔ)器18中。圖2是示意性的示出了在數(shù)據(jù)源中執(zhí)行的將數(shù)據(jù)發(fā)送到跟蹤輸出設(shè)備8的處理的流程圖。在步驟20,處理等待直到有要被發(fā)送的跟蹤數(shù)據(jù)。在步驟22,確定所述跟蹤數(shù)據(jù)是否與第一優(yōu)先級(jí)相關(guān)聯(lián)。如果所述跟蹤數(shù)據(jù)與所述第一優(yōu)先級(jí)相關(guān)聯(lián),則處理前進(jìn)到步驟M,在其中跟蹤數(shù)據(jù)被寫入到映射到所述跟蹤輸出設(shè)備8的目標(biāo)存儲(chǔ)器地址并與第一優(yōu)先級(jí)相關(guān)聯(lián)。如果在步驟22確定所述跟蹤數(shù)據(jù)不與所述第一優(yōu)先級(jí)相關(guān)聯(lián),則處理前進(jìn)到步驟沈。在步驟沈,所述跟蹤數(shù)據(jù)被寫入到映射到所述跟蹤輸出設(shè)備8的目標(biāo)存儲(chǔ)器地址并與第二優(yōu)先級(jí)相關(guān)聯(lián)。根據(jù)以上內(nèi)容,可以看出在軟件控制下操作的數(shù)據(jù)源(諸如處理器6)可以動(dòng)態(tài)地選擇將與要被發(fā)送的跟蹤數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)??梢越o予重要的跟蹤數(shù)據(jù)第一優(yōu)先級(jí)以增加該數(shù)據(jù)將從集成電路2被輸出到診斷設(shè)備4的可能性。較不重要但如果可能輸出也會(huì)有用的跟蹤數(shù)據(jù)可以與第二優(yōu)先級(jí)相關(guān)聯(lián),并因此將以不延遲處理的方式被所述跟蹤輸出設(shè)備8接受,并且如果沒有處理(例如緩存)該跟蹤數(shù)據(jù)的能力則仍然簡(jiǎn)單地被丟棄。圖3是示意性地示出了當(dāng)接收跟蹤數(shù)據(jù)時(shí)由所述跟蹤輸出設(shè)備8執(zhí)行的處理的流程圖。在步驟觀,所述跟蹤輸出設(shè)備8等待要在總線互連16上被聲明有效(assert)的數(shù)據(jù)。當(dāng)數(shù)據(jù)被聲明有效時(shí),步驟30確定與該數(shù)據(jù)相關(guān)聯(lián)的目標(biāo)存儲(chǔ)器地址是否被映射到跟蹤輸出設(shè)備8。如果所述目標(biāo)存儲(chǔ)器地址沒有被映射到所述跟蹤輸出設(shè)備,則該數(shù)據(jù)被指定到諸如從設(shè)備12或從設(shè)備14的另一從設(shè)備,并且跟蹤輸出設(shè)備8內(nèi)的處理前進(jìn)到步驟 32,在該步驟32,總線上的數(shù)據(jù)被忽略。如果在步驟30確定與總線上的數(shù)據(jù)相關(guān)聯(lián)的目標(biāo)存儲(chǔ)器地址被映射到所述跟蹤輸出設(shè)備8,則步驟34用于確定特定的目標(biāo)存儲(chǔ)器地址是否與第二優(yōu)先級(jí)相關(guān)聯(lián)。如果所述目標(biāo)存儲(chǔ)器地址與第二優(yōu)先級(jí)相關(guān)聯(lián),則處理前進(jìn)到步驟36。如果所述目標(biāo)存儲(chǔ)器地址不與所述第二優(yōu)先級(jí)相關(guān)聯(lián),則在本示例實(shí)施例中,其將與第一優(yōu)先級(jí)相關(guān)聯(lián),并且處理前
7進(jìn)到步驟38。在步驟36,所述跟蹤輸出設(shè)備從所述總線接受跟蹤數(shù)據(jù)并向所述數(shù)據(jù)源發(fā)送回確認(rèn)。步驟40確定在所述數(shù)據(jù)緩沖存儲(chǔ)器中是否有可用空間以存儲(chǔ)該跟蹤數(shù)據(jù)。如果沒有可用空間以存儲(chǔ)所述跟蹤數(shù)據(jù),則步驟42丟棄該跟蹤數(shù)據(jù)并且處理繼續(xù)進(jìn)行。在步驟36 立即從總線接受所述跟蹤數(shù)據(jù)的效果在于總線被釋放用于進(jìn)一步處理。而且,集成電路2 內(nèi)的其他處理操作的定時(shí)將不會(huì)受到所述跟蹤輸出設(shè)備8是否處理或沒有處理第二優(yōu)先級(jí)的跟蹤數(shù)據(jù)的影響。這是重要的,因?yàn)槠渫V沽伺c該第二優(yōu)先級(jí)的跟蹤數(shù)據(jù)相關(guān)聯(lián)的操作,當(dāng)試圖執(zhí)行診斷操作時(shí)以可以掩蓋或改變故障或產(chǎn)生新的故障的方式改變集成電路2 的行為。如果在步驟40的確定是在數(shù)據(jù)緩沖存儲(chǔ)器18中存儲(chǔ)所述跟蹤數(shù)據(jù)的空間是可獲得的,則步驟44將用于隨后從所述裝置輸出的跟蹤數(shù)據(jù)存儲(chǔ)在所述數(shù)據(jù)緩沖存儲(chǔ)器18中。如果在步驟34確定與總線互連16上接收的數(shù)據(jù)相關(guān)聯(lián)的目標(biāo)存儲(chǔ)器地址不是與第二優(yōu)先級(jí)相關(guān)聯(lián),則處理前進(jìn)到步驟38,該步驟38處理第一優(yōu)先級(jí)的跟蹤數(shù)據(jù)。步驟38 確定在數(shù)據(jù)緩沖存儲(chǔ)器18中是否有可用的空間以存儲(chǔ)所述跟蹤數(shù)據(jù)。如果當(dāng)前沒有可用的空間,則處理前進(jìn)到步驟46,在該步驟46,延遲所述總線互連16并且所述跟蹤數(shù)據(jù)被保持在總線互連16上直到數(shù)據(jù)緩沖存儲(chǔ)器18中用于存儲(chǔ)該跟蹤數(shù)據(jù)的空間是可獲得的(例如,所述數(shù)據(jù)緩沖存儲(chǔ)器18對(duì)診斷設(shè)備4至少部分的被用盡)。這樣,重要的跟蹤數(shù)據(jù)可以與第一優(yōu)先級(jí)相關(guān)聯(lián),并且可以確保這些重要的跟蹤數(shù)據(jù)總是被寫入到數(shù)據(jù)緩沖存儲(chǔ)器18 中,并由此即使在數(shù)據(jù)緩沖存儲(chǔ)器18中空間暫時(shí)是不可獲得的,這些重要的跟蹤數(shù)據(jù)也可以被捕獲用于分析。如果在步驟38確定緩存空間是可獲得的,則處理前進(jìn)到步驟48,在該步驟48,從總線互連16接受跟蹤數(shù)據(jù)并將確認(rèn)信號(hào)返回給發(fā)起的總線主設(shè)備。隨后處理前進(jìn)到步驟 44,在該步驟44,所述跟蹤數(shù)據(jù)被存儲(chǔ)在所述數(shù)據(jù)緩沖存儲(chǔ)器18中??梢岳斫獾氖茄舆t總線互連16或其至少一部分中的步驟46的動(dòng)作對(duì)于集成電路2的整體操作是插入的(intrusive)??赡墚a(chǎn)生過多數(shù)量的這種延遲操作以及這些可能足以妨礙集成電路2的適當(dāng)?shù)牟僮?。由于此原因,如圖1中所示出的,覆寫信號(hào)被提供到跟蹤輸出設(shè)備8中。當(dāng)被聲明有效時(shí)該覆寫信號(hào)的動(dòng)作將會(huì)改變與由跟蹤輸出設(shè)備8接收的數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)。因此,如果該覆寫信號(hào)被聲明有效,則如下是可能的,不論其相關(guān)聯(lián)的目標(biāo)存儲(chǔ)器地址,由所述跟蹤輸出設(shè)備8接收的所有數(shù)據(jù)將與第二優(yōu)先級(jí)相關(guān)聯(lián),以便其將被接受而不會(huì)引起任何延遲,并且如果此時(shí)沒有充足的處理(例如,存儲(chǔ))該數(shù)據(jù)的能力,則其將被丟棄。如下也是可能的通過比較數(shù)據(jù)緩沖器的空容量是否大于或等于N+F(P)來確定所述數(shù)據(jù)是否應(yīng)被接受用于處理(例如存儲(chǔ)在數(shù)據(jù)緩沖器中)的決定,其中N是以字節(jié)計(jì)的要被存儲(chǔ)的數(shù)據(jù)的大小以及F(P)是數(shù)據(jù)的優(yōu)先級(jí)的單調(diào)遞增函數(shù)(當(dāng)P是最高優(yōu)先級(jí)時(shí)F(P)可以等于零)。圖4是示出了可以被映射到跟蹤輸出設(shè)備8的存儲(chǔ)器地址的范圍的表格。所述跟蹤輸出設(shè)備8具有與其相關(guān)聯(lián)的基地址。圖4示出了與該基地址的偏移量,其一起定義了與該跟蹤輸出設(shè)備8相關(guān)聯(lián)的存儲(chǔ)器地址的范圍。如圖所示,這些偏移量的第一集合提供了與第一優(yōu)先級(jí)相關(guān)聯(lián)的存儲(chǔ)器地址。該第一優(yōu)先級(jí)可以被認(rèn)為保證寫入到這些存儲(chǔ)器地址的跟蹤數(shù)據(jù)將從所述跟蹤輸出設(shè)備8被輸出,即所述跟蹤輸出設(shè)備8將接受該數(shù)據(jù)或延遲總線直到其接受該數(shù)據(jù)以便該數(shù)據(jù)將最終從所述跟蹤輸出設(shè)備被輸出到所述診斷設(shè)備4。第二偏移量的范圍定義了與跟蹤輸出設(shè)備8相關(guān)聯(lián)的存儲(chǔ)器地址的范圍,其提供了第二優(yōu)先級(jí),以便寫入到這些存儲(chǔ)器地址的跟蹤數(shù)據(jù)被認(rèn)為具有第二優(yōu)先級(jí)。該第二優(yōu)先級(jí)可以被認(rèn)為向所述集成電路2的操作提供恒定定時(shí),因?yàn)榫哂性摰诙?yōu)先級(jí)的寫入到跟蹤輸出設(shè)備8的跟蹤數(shù)據(jù)基本上將總是以其不改變所述集成電路2的操作的整體定時(shí)的方式立即地被所述跟蹤輸出設(shè)備8接受??梢钥闯鲈谂c所述第一優(yōu)先級(jí)和第二優(yōu)先級(jí)相關(guān)聯(lián)的這些存儲(chǔ)器地址的范圍內(nèi),存在地址的進(jìn)一步細(xì)分,其被提供以將其他特性與寫入到那些地址的跟蹤數(shù)據(jù)相鏈接。 在本示例中,取決于在被映射到所述跟蹤輸出設(shè)備8的存儲(chǔ)器地址的范圍內(nèi)要寫入數(shù)據(jù)的特定存儲(chǔ)器地址,所接收的數(shù)據(jù)可以可選地被標(biāo)記并可選地被打上時(shí)間戳。圖5是示意性地示出了使用本技術(shù)的另一實(shí)施例的圖。在本實(shí)施例中,片上系統(tǒng)集成電路50被提供有耦合到協(xié)處理器M的處理器52。所述協(xié)處理器M用作跟蹤輸出設(shè)備并包括數(shù)據(jù)緩沖存儲(chǔ)器56。所述協(xié)處理器M向診斷設(shè)備58發(fā)送跟蹤數(shù)據(jù)。在處理器52的指令流中協(xié)處理器指令(諸如ARM、MCR指令)當(dāng)執(zhí)行時(shí)用于向協(xié)處理器M發(fā)送跟蹤數(shù)據(jù)。該協(xié)處理器指令的編碼指示要被傳送到所述協(xié)處理器M的數(shù)據(jù)是否具有第一優(yōu)先級(jí)或第二優(yōu)先級(jí)。如果要被傳送的數(shù)據(jù)具有第一優(yōu)先級(jí)而所述協(xié)處理器 M在該時(shí)間點(diǎn)不能接受該數(shù)據(jù),例如所述數(shù)據(jù)緩沖存儲(chǔ)器56是滿的,則所述協(xié)處理器M向所述處理器M發(fā)布延遲信號(hào),指示要被傳送的數(shù)據(jù)應(yīng)該被繼續(xù)向協(xié)處理器M聲明有效,直到所述協(xié)處理器M能夠接受該數(shù)據(jù)。指示要被傳送的數(shù)據(jù)具有第二優(yōu)先級(jí)的MCR指令的編碼控制協(xié)處理器M立即接受該數(shù)據(jù)并且如果在該時(shí)刻數(shù)據(jù)緩沖存儲(chǔ)器56中沒有充足的存儲(chǔ)空間,則簡(jiǎn)單地丟棄該數(shù)據(jù)。協(xié)處理器指令的指令編碼可以是ARM MCR指令,其中協(xié)處理器目標(biāo)寄存器為“0” 指示第一優(yōu)先級(jí),并且協(xié)處理器目標(biāo)寄存器為“1”指示第二優(yōu)先級(jí)。從處理器52被傳送的跟蹤數(shù)據(jù)可以被存儲(chǔ)在處理器52的源寄存器中,諸如處理器52的通用寄存池中的通用寄存器。在上文中已討論了第一優(yōu)先級(jí)和第二優(yōu)先級(jí)??梢岳斫?,本技術(shù)不限于只具有兩個(gè)優(yōu)先級(jí)的實(shí)施例。作為示例,提供三個(gè)優(yōu)先級(jí)是可能的。第一優(yōu)先級(jí)可以類似于之前討論的第一優(yōu)先級(jí),其中所述數(shù)據(jù)可以被立即接受或者所述接受被延遲直到跟蹤輸出設(shè)備準(zhǔn)備好處理該數(shù)據(jù)。第二優(yōu)先級(jí)可以是數(shù)據(jù)總是被接受,但如果數(shù)據(jù)緩沖存儲(chǔ)器中沒有足夠空間以存儲(chǔ)該數(shù)據(jù),則所述數(shù)據(jù)被丟棄。第三優(yōu)先級(jí)可以是所述數(shù)據(jù)總是被接受,但被丟棄, 除非數(shù)據(jù)緩沖存儲(chǔ)器中存在多于閾值量的空的容量。因此,當(dāng)數(shù)據(jù)緩沖存儲(chǔ)器相對(duì)空時(shí)該第三優(yōu)先級(jí)的跟蹤數(shù)據(jù)將只被存儲(chǔ)在數(shù)據(jù)緩沖存儲(chǔ)器中,由此為第二優(yōu)先級(jí)或第一優(yōu)先級(jí)的較高優(yōu)先級(jí)數(shù)據(jù)保留數(shù)據(jù)緩沖存儲(chǔ)器中的空的空間。在當(dāng)數(shù)據(jù)源是DMA引擎時(shí)的情況下,所述跟蹤輸出設(shè)備能夠與DMA引擎相交互以節(jié)流要發(fā)送到跟蹤輸出設(shè)備的數(shù)據(jù)。盡管通過延遲總線而延遲DMA傳送是可能的,但如下是很可能的由于與跟蹤輸出設(shè)備可以將數(shù)據(jù)發(fā)送出跟蹤緩存器相比,DMA可以更快得多地將數(shù)據(jù)傳送到跟蹤輸出設(shè)備,長(zhǎng)的DMA傳送(例如1000字節(jié))會(huì)引起總線花費(fèi)其大多數(shù)時(shí)間被延遲。如果跟蹤輸出設(shè)備當(dāng)滿時(shí)丟棄DMA數(shù)據(jù),則所述跟蹤輸出設(shè)備可能會(huì)丟棄DMA發(fā)送給它的大多數(shù)數(shù)據(jù)。當(dāng)DMA引擎正被用于發(fā)送大量的低優(yōu)先級(jí)數(shù)據(jù)時(shí)這種效果是特別不期望的,因?yàn)殚L(zhǎng)時(shí)間延遲總線以發(fā)送低優(yōu)先級(jí)數(shù)據(jù)會(huì)嚴(yán)重影響程序性能和/或發(fā)送較高優(yōu)先級(jí)數(shù)據(jù)的能力,并且丟棄大量數(shù)據(jù)有可能使剩余的數(shù)據(jù)無用。為了解決該問題,提供了限制將數(shù)據(jù)發(fā)送至跟蹤輸出設(shè)備的速率的機(jī)制1)在DMA的數(shù)據(jù)源中可以出現(xiàn)速度限制機(jī)制。例如,如果DMA正從低速外設(shè)向緩沖存儲(chǔ)器拷貝數(shù)據(jù)則應(yīng)該沒有問題。2)可以向所述DMA引擎添加速度限制機(jī)制。例如,DMA引擎可以具有計(jì)數(shù)器(該計(jì)數(shù)器計(jì)數(shù)每個(gè)信道上的傳送之間的周期)并且僅當(dāng)所述計(jì)數(shù)器達(dá)到某個(gè)閾值時(shí)發(fā)送數(shù)據(jù)或使用“漏桶”機(jī)制(即,當(dāng)數(shù)據(jù)到達(dá)時(shí),其被存儲(chǔ)在“桶”/緩存器中。如果所述“桶”是滿的,則丟棄新到達(dá)的數(shù)據(jù)。以恒定速率從所述“桶”清空數(shù)據(jù))3)速度限制機(jī)制構(gòu)造在上述技術(shù)上并具有從跟蹤輸出設(shè)備返回到所述DMA的反饋機(jī)制。已知的DMA引擎提供了握手線,該握手線允許外設(shè)指示它們是否準(zhǔn)備好接受交易 (讀取或?qū)懭?。所述跟蹤輸出設(shè)備可以使用這些握手線從DMA引擎請(qǐng)求更多數(shù)據(jù),如下對(duì)于每個(gè)信道使P是信道的優(yōu)先級(jí)。使N是存儲(chǔ)所述跟蹤數(shù)據(jù)需要的字節(jié)數(shù)。如果N+g(P)字節(jié)在跟蹤輸出設(shè)備的緩存器中是可獲得的,并且在該信道上沒有未完成的(outstanding)請(qǐng)求所述跟蹤輸出設(shè)備使用握手線請(qǐng)求該信道上的數(shù)據(jù)。所述跟蹤輸出設(shè)備在該信道上設(shè)置標(biāo)記,指示存在未完成的請(qǐng)求。所述DMA引擎通過在該信道上發(fā)送數(shù)據(jù)而響應(yīng)。當(dāng)數(shù)據(jù)到達(dá)一些信道上時(shí),關(guān)于是否接受或丟棄該數(shù)據(jù)并清理用于該信道的未完成請(qǐng)求標(biāo)記的判決被進(jìn)行。如果延遲該數(shù)據(jù),則不清理該標(biāo)記直到該數(shù)據(jù)最終被接受(如果在緩存器中存在足夠的空間則清理所述標(biāo)記允許所述跟蹤輸出設(shè)備觸發(fā)另一請(qǐng)求)。潛伏期意味著所述跟蹤輸出設(shè)備可以現(xiàn)在具有用于容納數(shù)據(jù)的空間,但在數(shù)據(jù)從 DMA到達(dá)時(shí),可能沒有足夠的空間。在該階段,所述跟蹤輸出設(shè)備會(huì)延遲或丟棄該數(shù)據(jù)。為了降低該事件的可能性,用于使用握手線請(qǐng)求數(shù)據(jù)的閾值應(yīng)該高于用于接受數(shù)據(jù)的閾值。 滿足G(P) >F(P)意味著如果使用握手線請(qǐng)求數(shù)據(jù),則當(dāng)所述數(shù)據(jù)被接收時(shí)其將立即被接受的概率(更)高?!瓽(P)'與'F(P)'之間的差別明顯地將取決于從DMA請(qǐng)求數(shù)據(jù)和所請(qǐng)求的數(shù)據(jù)的到達(dá)之間的潛伏期,并也取決于可以同時(shí)從其他源接收的數(shù)據(jù)量。所述潛伏期也意味著跟蹤輸出設(shè)備可以向DMA引擎進(jìn)行多個(gè)請(qǐng)求。所述“未完成請(qǐng)求標(biāo)記”避免了該情況的發(fā)生。處理該潛伏期問題的另一方式在于從信道請(qǐng)求數(shù)據(jù)具有兩個(gè)副作用1)在緩存器中為所請(qǐng)求的數(shù)據(jù)保留空間。2)如果設(shè)置所述“未完成請(qǐng)求標(biāo)記”,則無條件地接受數(shù)據(jù)(因?yàn)槲覀円呀?jīng)為其保留了空間)。這的變化在于優(yōu)先級(jí)取決于“未完成請(qǐng)求標(biāo)記”未完成交易提高了信道的優(yōu)先級(jí)。所述跟蹤輸出設(shè)備從所述數(shù)據(jù)源請(qǐng)求數(shù)據(jù)的技術(shù)也可以單獨(dú)地被使用,或者此處所述的其他技術(shù)而被使用。 盡管此處已參考附圖詳細(xì)地描述了本發(fā)明的示例性實(shí)施例,可以理解的是本發(fā)明并不限于這些精確的實(shí)施例,并且本領(lǐng)域技術(shù)人員可以在其中進(jìn)行各種改變和修改,而不脫離如由隨附的權(quán)利要求所限定的本發(fā)明的范圍和精神。
權(quán)利要求
1.一種用于處理數(shù)據(jù)的裝置,包括數(shù)據(jù)源,所述數(shù)據(jù)源被配置為產(chǎn)生數(shù)據(jù);以及跟蹤輸出設(shè)備,所述跟蹤輸出設(shè)備被耦合到所述數(shù)據(jù)源并被配置為從所述數(shù)據(jù)源接收所述數(shù)據(jù),并被配置為從所述裝置輸出跟蹤數(shù)據(jù);其中所述數(shù)據(jù)源動(dòng)態(tài)地選擇將與所述數(shù)據(jù)相關(guān)聯(lián)的多個(gè)優(yōu)先級(jí)中的一個(gè);所述跟蹤輸出設(shè)備響應(yīng)于所接收的具有第一優(yōu)先級(jí)的數(shù)據(jù)執(zhí)行如下操作之一 (i)如果所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù),則從所述數(shù)據(jù)源接受所述數(shù)據(jù);以及(ii)如果所述跟蹤輸出設(shè)備沒有準(zhǔn)備好處理所述數(shù)據(jù),則延遲從所述數(shù)據(jù)源接受所述數(shù)據(jù)直到所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù);以及所述跟蹤輸出設(shè)備響應(yīng)于所接收的具有第二優(yōu)先級(jí)的數(shù)據(jù)以接受來自所述數(shù)據(jù)源的所述數(shù)據(jù)以及,如果所述跟蹤輸出設(shè)備不能處理所述數(shù)據(jù),則丟棄所述數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中當(dāng)所述數(shù)據(jù)從所述數(shù)據(jù)源被發(fā)送到所述跟蹤輸出設(shè)備時(shí),不論所述跟蹤輸出設(shè)備是否準(zhǔn)備好處理所述數(shù)據(jù),與所述第一優(yōu)先級(jí)相關(guān)聯(lián)的數(shù)據(jù)從所述裝置被輸出。
3.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中不論所述跟蹤輸出設(shè)備是否能處理所述數(shù)據(jù),都從所述數(shù)據(jù)源接受與所述第二優(yōu)先級(jí)相關(guān)聯(lián)的數(shù)據(jù),以便所述裝置的處理操作的定時(shí)不依賴于所述跟蹤輸出設(shè)備是否能處理所述數(shù)據(jù)而被改變。
4.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中所述跟蹤輸出設(shè)備包括數(shù)據(jù)緩沖存儲(chǔ)器,所述數(shù)據(jù)緩沖存儲(chǔ)器被配置為在從所述裝置輸出所述數(shù)據(jù)之前存儲(chǔ)所述數(shù)據(jù)。
5.根據(jù)權(quán)利要求4所述的裝置,其特征在于,其中(i)當(dāng)所述數(shù)據(jù)緩沖存儲(chǔ)器具有足以存儲(chǔ)所述數(shù)據(jù)的空容量時(shí),所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù);以及(ii)當(dāng)所述數(shù)據(jù)緩沖存儲(chǔ)器不具有足以存儲(chǔ)所述數(shù)據(jù)的空容量時(shí),所述跟蹤輸出設(shè)備沒有準(zhǔn)備好處理所述數(shù)據(jù)。
6.根據(jù)權(quán)利要求4所述的裝置,其特征在于,其中(i)當(dāng)所述數(shù)據(jù)緩沖存儲(chǔ)器具有大于或等于N+F(P)的空容量時(shí),所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù);以及當(dāng)所述數(shù)據(jù)緩沖存儲(chǔ)器具有小于N+F(P)的空容量時(shí),所述跟蹤輸出設(shè)備沒有準(zhǔn)備好處理所述數(shù)據(jù),其中 N是存儲(chǔ)所述數(shù)據(jù)所需的字節(jié)數(shù)以及F(P)是P的函數(shù),其中P是所述數(shù)據(jù)的優(yōu)先級(jí)。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,其中F(P)是單調(diào)遞增函數(shù)。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,其中當(dāng)所述數(shù)據(jù)的所述優(yōu)先級(jí)具有最高優(yōu)先級(jí)時(shí)F(P) =0。
9.根據(jù)權(quán)利要求4所述的裝置,其特征在于,其中當(dāng)所述數(shù)據(jù)緩沖存儲(chǔ)器不具有足以存儲(chǔ)所述數(shù)據(jù)的空容量時(shí),所述跟蹤輸出設(shè)備不能處理所述數(shù)據(jù)。
10.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中所述數(shù)據(jù)源是總線主設(shè)備,所述跟蹤輸出設(shè)備是總線從設(shè)備,并且所述數(shù)據(jù)源和所述跟蹤輸出設(shè)備通過總線互連而被耦合。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,其中所述跟蹤輸出設(shè)備是被映射到多個(gè)存儲(chǔ)地址的存儲(chǔ)映射從設(shè)備。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,其中所述數(shù)據(jù)源將所述數(shù)據(jù)寫入到被映射到所述跟蹤輸出設(shè)備的不同存儲(chǔ)地址以將不同的優(yōu)先級(jí)與所述數(shù)據(jù)相關(guān)聯(lián)。
13.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中所述數(shù)據(jù)源是主處理器,并且所述跟蹤輸出設(shè)備是被耦合到所述主處理器的協(xié)處理器。
14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,其中響應(yīng)于所述主處理器的指令流內(nèi)的協(xié)處理器指令,所述數(shù)據(jù)被從所述主處理器發(fā)送到所述協(xié)處理器。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,其中所述協(xié)處理器指令指定將與所述數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)。
16.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中所述數(shù)據(jù)源執(zhí)行控制與所述數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)的計(jì)算機(jī)程序指令。
17.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中所述跟蹤輸出設(shè)備響應(yīng)于覆寫信號(hào)以改變與由所述跟蹤輸出設(shè)備接收的數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級(jí)。
18.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中所述跟蹤輸出設(shè)備被配置為根據(jù)所述數(shù)據(jù)源的優(yōu)先級(jí)請(qǐng)求來自所述數(shù)據(jù)源的數(shù)據(jù)。
19.根據(jù)權(quán)利要求18所述的裝置,其特征在于,其中所述數(shù)據(jù)源的所述優(yōu)先級(jí)與所述數(shù)據(jù)的所述優(yōu)先級(jí)相同。
20.一種用于處理數(shù)據(jù)的裝置,包括數(shù)據(jù)源部件,所述數(shù)據(jù)源部件用于產(chǎn)生數(shù)據(jù);以及跟蹤輸出部件,所述跟蹤輸出部件被耦合到所述數(shù)據(jù)源部件,用于從所述數(shù)據(jù)源部件接收所述數(shù)據(jù),并且用于從所述裝置輸出跟蹤數(shù)據(jù);其中所述數(shù)據(jù)源部件動(dòng)態(tài)地選擇將與所述數(shù)據(jù)相關(guān)聯(lián)的多個(gè)優(yōu)先級(jí)中的一個(gè); 所述跟蹤輸出部件響應(yīng)于所接收的具有第一優(yōu)先級(jí)的數(shù)據(jù)執(zhí)行如下操作之一 (i)如果所述跟蹤輸出部件準(zhǔn)備好處理所述數(shù)據(jù),則從所述數(shù)據(jù)源部件接受所述數(shù)據(jù);以及(ii) 如果所述跟蹤輸出部件沒有準(zhǔn)備好處理所述數(shù)據(jù),則延遲從所述數(shù)據(jù)源部件接受所述數(shù)據(jù)直到所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù);以及所述跟蹤輸出部件響應(yīng)于所接收的具有第二優(yōu)先級(jí)的數(shù)據(jù)以接受來自所述數(shù)據(jù)源部件的所述數(shù)據(jù)以及,如果所述跟蹤輸出部件不能處理所述數(shù)據(jù),則丟棄所述數(shù)據(jù)。
21.一種處理數(shù)據(jù)的方法,包括如下步驟 使用數(shù)據(jù)源產(chǎn)生數(shù)據(jù);使用被耦合到所述數(shù)據(jù)源的跟蹤輸出設(shè)備從所述數(shù)據(jù)源接收所述數(shù)據(jù);以及從所述裝置輸出跟蹤數(shù)據(jù);其中所述數(shù)據(jù)源動(dòng)態(tài)地選擇將與所述數(shù)據(jù)相關(guān)聯(lián)的多個(gè)優(yōu)先級(jí)中的一個(gè); 所述跟蹤輸出設(shè)備響應(yīng)于所接收的具有第一優(yōu)先級(jí)的數(shù)據(jù)執(zhí)行如下操作之一 (i)如果所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù),則從所述數(shù)據(jù)源接受所述數(shù)據(jù);以及(ii)如果所述跟蹤輸出設(shè)備沒有準(zhǔn)備好處理所述數(shù)據(jù),則延遲從所述數(shù)據(jù)源接受所述數(shù)據(jù)直到所述跟蹤輸出設(shè)備準(zhǔn)備好處理所述數(shù)據(jù);以及所述跟蹤輸出設(shè)備響應(yīng)于所接收的具有第二優(yōu)先級(jí)的數(shù)據(jù)以接受來自所述數(shù)據(jù)源的所述數(shù)據(jù)以及,如果所述跟蹤輸出設(shè)備不能處理所述數(shù)據(jù),則丟棄所述數(shù)據(jù)。
全文摘要
以執(zhí)行程序指令的處理器的形式向集成電路2提供數(shù)據(jù)源6,該數(shù)據(jù)源6經(jīng)總線互連16被連接到跟蹤輸出設(shè)備8。該跟蹤輸出設(shè)備8是存儲(chǔ)器映射的。被映射到跟蹤輸出設(shè)備8的不同存儲(chǔ)器地址與不同優(yōu)先級(jí)相關(guān)聯(lián)。寫到至少一個(gè)存儲(chǔ)器地址的跟蹤數(shù)據(jù)具有第一優(yōu)先級(jí),其中所述跟蹤數(shù)據(jù)被接受或所述傳送被延遲直到所述數(shù)據(jù)可以由所述跟蹤輸出設(shè)備8處理。與不同的存儲(chǔ)器地址相關(guān)聯(lián)的另一優(yōu)先級(jí)是這樣的所述數(shù)據(jù)總是被接受但如果跟蹤輸出設(shè)備8在該時(shí)刻不具有處理(例如存儲(chǔ))該數(shù)據(jù)的能力則被丟棄。
文檔編號(hào)G06F11/34GK102193856SQ20111004334
公開日2011年9月21日 申請(qǐng)日期2011年2月17日 優(yōu)先權(quán)日2010年2月17日
發(fā)明者A·D·賴德, J·M·霍爾利, K·E·克尼邦, M·J·威廉斯 申請(qǐng)人:Arm有限公司