12,總線互連12經(jīng)配置以在以下兩者之間仲裁及投送總線事務(wù):耦接到通信總線(被稱作“總線互連12”)的多個(gè)主裝置H(O-M)中的任一者,與耦接到總線互連12的從屬裝置16(O-N)。作為實(shí)例,總線互連12可通過以下各者來提供:現(xiàn)場(chǎng)可編程門陣列(FPGA)、專用集成電路(ASIC)、控制器、可執(zhí)行軟件指令的微控制器或微處理器,或其任何組合??偩€互連12包含計(jì)時(shí)電路,例如門、鎖存器和寄存器(作為實(shí)例),所述計(jì)時(shí)電路可經(jīng)配置以設(shè)定所要主裝置14(0-M)與所要從屬裝置16(0-N)之間的通信路徑。從屬裝置16(0-N)可為主裝置14(0-M)的共享資源。提供總線互連時(shí)鐘信號(hào)18以對(duì)提供于總線互連12中的計(jì)時(shí)電路計(jì)時(shí)。
[0033]總線互連12可經(jīng)配置以允許連接到總線互連12的主裝置H(O-M)中的一者或一者以上與耦接到總線互連12的從屬裝置16(0-N)中的任一者通信。作為實(shí)例,在需要時(shí),總線互連12可提供于半導(dǎo)體裸片20中且可提供于系統(tǒng)芯片(SOC)集成電路設(shè)計(jì)中。主裝置14(0-M)和從屬裝置16(0-N)分別經(jīng)由提供于總線互連12中(在此實(shí)例中)的主端口 22(0-M)和從屬端口 24(0-N)連接到總線互連12。一個(gè)或一個(gè)以上仲裁器26(0-P)提供于總線互連12中,所述一個(gè)或一個(gè)以上仲裁器26(0-P)經(jīng)配置以仲裁來自主裝置H(O-M)的對(duì)從屬裝置16(0-N)的多個(gè)總線事務(wù)請(qǐng)求。
[0034]主裝置H(O-M)和從屬裝置16(0-N)可為所要的任何類型的電子裝置或子系統(tǒng)。例如,主裝置14(0-M)可為任何類型的電子裝置,包含(不限于)中央處理單元(CPU)、數(shù)字信號(hào)處理器(DSP)、顯示器處理器,以及直接存儲(chǔ)器存取(DMA)控制器。從屬裝置16(0-N)的實(shí)例為存儲(chǔ)器控制器16(N)。存儲(chǔ)器控制器16(N)連接到總線互連12,以允許主裝置H(O-M)中的任一者向耦接到存儲(chǔ)器控制器16(N)的存儲(chǔ)器28提供讀取和寫入存儲(chǔ)器存取請(qǐng)求且接收讀取和寫入響應(yīng)。
[0035]圖1中的總線互連12經(jīng)配置以基于關(guān)于主裝置H(O-M)的健康信息而仲裁主裝置H(O-M)中的每一者的總線事務(wù)。主裝置H(O-M)的健康信息由一些標(biāo)記組成,所述標(biāo)記表示由總線互連12提供到主裝置H(O-M)的服務(wù)質(zhì)量。舉例來說,主裝置H(O-M)可各自具有特定服務(wù)質(zhì)量要求。服務(wù)質(zhì)量要求的一個(gè)實(shí)例可為帶寬要求。服務(wù)質(zhì)量的另一實(shí)例可為等待時(shí)間要求。在此實(shí)施例中,主裝置H(O-M)的健康信息由總線互連12使用以調(diào)整來自主裝置H(O-M)的總線事務(wù)的優(yōu)先級(jí)以試圖滿足主裝置H(O-M)的服務(wù)質(zhì)量要求,包含(但不限于)系統(tǒng)穩(wěn)健性、通過減少的等待時(shí)間達(dá)成的改進(jìn)性能,和/或當(dāng)超出服務(wù)質(zhì)量要求時(shí)降低功率消耗。另外,可獨(dú)立于總線互連12的實(shí)際總線技術(shù)和總線互連時(shí)鐘信號(hào)18的頻率以及其縮放而提供在此實(shí)施例中提供于總線互連12中的經(jīng)配置以仲裁總線事務(wù)的方法和組件。
[0036]繼續(xù)參看圖1,主裝置H(O-M)可各自包含特定主裝置軟件驅(qū)動(dòng)程序30(0_M)和主裝置硬件32(0-M),以提供需要耦接到總線互連12的從屬裝置16(0-N)的服務(wù)的特定功能。主裝置14(0-M)通過經(jīng)由總線互連12傳送到從屬裝置16(0-N)的總線事務(wù)而請(qǐng)求這些服務(wù)。這些總線事務(wù)需要特定等級(jí)的性能(其取決于總線互連12的核心所固有的因素),例如總線互連時(shí)鐘信號(hào)18的頻率和總線互連12的通過量和等待時(shí)間(作為實(shí)例)。在這方面,主裝置H(O-M)可經(jīng)配置以跟蹤其健康狀態(tài)(通過硬件或軟件機(jī)制)。舉例來說,健康狀態(tài)可基于總線互連12是否滿足以下各者:主裝置H(O-M)的總線事務(wù)的截止時(shí)間、針對(duì)主裝置H(O-M)分配的帶寬,和/或主裝置H(O-M)的等待時(shí)間要求。
[0037]在這方面,圖1中的主裝置軟件驅(qū)動(dòng)程序30 (O-M)和主裝置硬件32 (O-M)可經(jīng)配置以跟蹤其自身的健康狀態(tài),從而又跟蹤主裝置H(O-M)的健康狀態(tài)。主裝置H(O-M)的所跟蹤健康狀態(tài)可由主裝置H(O-M)提供給總線互連12作為待用于仲裁多個(gè)主裝置H(O-M)當(dāng)中的總線事務(wù)的健康信息,以改進(jìn)總線互連12和總線互連系統(tǒng)10的性能。這些改進(jìn)包含(但不限于)通過在帶寬方面提供足夠容量而改進(jìn)穩(wěn)健性,通過減少的等待時(shí)間而改進(jìn)性能,和/或降低功率消耗。健康信息也可用以支持總線互連12中的命令的重新排序和/或支持命令的基于優(yōu)先級(jí)的排隊(duì)(例如,在存儲(chǔ)器控制器16(N)中)。
[0038]主裝置丨4 (O-M)可直接或通過中介者(例如,圖1中的簿記元件(BKE) 36 (O-M))將其自身的健康信息34(0-M)提供給仲裁器26(0-P)。舉例來說,參看圖1,主裝置H(O-M)可經(jīng)配置以將含有其健康狀態(tài)的健康信息34(0-M)提供給BKE 36(0-M)。簿記元件36(0-M)可確定總線互連12是否滿足主裝置H(O-M)的性能要求。簿記元件36(0-M)通過虛擬總線接口 40(0-M)將彳目息38 (0-M)提供給仲裁器26 (0-P),彳目息38 (0-M)基于健康彳目息34 (0-M)而指不是否滿足主裝置H(O-M)的性能要求??稍诳偩€互連12的核心內(nèi)部或外部提供簿記元件36(0-M)。仲裁器26(0-P)使用此信息來基于是否滿足主裝置14(0-M)的要求而確定用于在總線互連12內(nèi)仲裁主裝置H(O-M)的總線事務(wù)的優(yōu)先級(jí)。舉例來說,仲裁器26(0-P)各自含有優(yōu)先級(jí)確定模塊42(0-P)以確定主裝置H(O-M)中的每一者的總線事務(wù)的優(yōu)先級(jí)??舍槍?duì)主裝置H(O-M)中的每一者提供健康信息34(0-M),例如,主裝置14(0-M)的主標(biāo)識(shí)(MID),或以主裝置14(0-M)的群組來提供健康信息34(0-M)。可按每一主端口 22(0-M)聚集主裝置14(0-M)的要求。
[0039]如下文將更詳細(xì)論述,對(duì)于無法或未經(jīng)配置以跟蹤其自身的健康狀態(tài)的主裝置14(O-M),簿記元件36(0-M)可基于通過軟件配置的合同而導(dǎo)出主裝置H(O-M)的健康信息34(O-M)。例如,可編程閾值可提供于簿記元件36(0-M)中以確定總線互連12是否滿足主裝置H(O-M)的性能要求。由總線互連12針對(duì)主裝置H(O-M)提供的帶寬可用以導(dǎo)出主裝置14(O-M)的健康狀態(tài)。簿記元件36(0-M)通過虛擬總線接口 40(0-M)將此信息38(0-M)提供給仲裁器26(0-P),此信息38(0-M)是關(guān)于基于所導(dǎo)出的健康信息34(0-M)來說是否滿足主裝置H(O-M)的性能要求。仲裁器26(0-P)使用此信息來基于是否滿足主裝置H(O-M)的要求而確定用于在總線互連12內(nèi)仲裁主裝置H(O-M)的總線事務(wù)的優(yōu)先級(jí)。
[0040]可以各種方式來編碼健康信息34(0_M)。舉例來說,可用表示健康信息34(0_M)的健康狀態(tài)閾值或范圍來編碼健康信息34(0-M)。舉例來說,不滿足性能要求的介于總線事務(wù)的百分之零(0%)與百分之三十三(33%)之間的健康狀態(tài)可指示“良好”健康狀態(tài)。不滿足性能要求的介于總線事務(wù)的百分之三十三(33% )與百分之六十七(67% )之間的健康狀態(tài)可指示“發(fā)燒”健康狀態(tài)。不滿足性能要求的介于總線事務(wù)的百分之六十六(66%)與百分之九十九(99%)之間的健康狀態(tài)可指示“有病”健康狀態(tài)。不滿足性能要求的百分之百(100%)的健康狀態(tài)可指示“失敗”健康狀態(tài)。在此實(shí)例中,可以2-位來編碼此健康信息34(O-M)。可針對(duì)每一主裝置H(O-M)指定此健康信息34(0-M)。也可針對(duì)主裝置H(O-M)對(duì)閾值進(jìn)行編程。
[0041 ] 如下文將更詳細(xì)論述,簿記元件36(0_M)可經(jīng)配置以使用獨(dú)立于總線互連時(shí)鐘信號(hào)18的參考時(shí)鐘來提供頻率獨(dú)立于總線互連時(shí)鐘信號(hào)18的實(shí)施方案??商峁﹩为?dú)的恒定頻率時(shí)鐘信號(hào)以對(duì)簿記元件36(0-M)計(jì)時(shí)。以此方式,如果針對(duì)總線互連12縮放總線互連時(shí)鐘信號(hào)18,那么簿記元件36(0-M)不必經(jīng)重新編程或經(jīng)重新配置以基于新時(shí)鐘頻率而確定是否滿足主裝置H(O-M)的性能要求。
[0042]在此實(shí)施例中,每一主端口22(0-M)具有相關(guān)聯(lián)的靜態(tài)轉(zhuǎn)譯表,所述靜態(tài)轉(zhuǎn)譯表描述如何將健康信息轉(zhuǎn)換成優(yōu)先級(jí)信息??舍槍?duì)給定的總線互連系統(tǒng)10架構(gòu)預(yù)定義此表,且通過主裝置軟件驅(qū)動(dòng)程序30(0-M)來配置此表。此表描述如何對(duì)主裝置H(O-M)分類以及如何將健康信息映射到待由仲裁器26(0-P)在總線互連12中仲裁的優(yōu)先級(jí)等級(jí)。在這方面,圖2為示范性主裝置類別表50的框圖,所述示范性主裝置類別表50含有可用以在圖1中的總線互連12中指配主裝置H(O-M)之間的相對(duì)優(yōu)先級(jí)的主裝置類別。作為實(shí)例,主裝置類別表50含有針對(duì)主裝置H(O-M)的不同類別56的最大優(yōu)先級(jí)52和典型帶寬要求54。舉例來說,與低等待時(shí)間、軟實(shí)時(shí)和最佳努力型主裝置H(O-M)相比較,被指配為硬實(shí)時(shí)裝置的主裝置14(O-M)對(duì)于由總線互連12仲裁的總線事務(wù)可具有較高的最大優(yōu)先級(jí)52。硬實(shí)時(shí)主裝置14(0-M)的實(shí)例可包含GPS、MDP、VFE以及調(diào)制解調(diào)器。需要低等待時(shí)間的主裝置14(0-M)的實(shí)例為CPU。軟實(shí)時(shí)主裝置H(O-M)的實(shí)例可包含視頻裝置、旋轉(zhuǎn)器裝置以及VPE。最佳努力主裝置14(0-M)的實(shí)例可包含圖形裝置和外圍設(shè)備。
[0043]將關(guān)于主裝置H(O-M)的健康信息34(0_M)映射到總線互連12中的虛擬優(yōu)先級(jí)空間。在這方面,圖3為到虛擬優(yōu)先級(jí)空間的示范性健康信息映射的框圖,所述虛擬優(yōu)先級(jí)空間可提供于圖1中的總線互連系統(tǒng)10中??梢姡苫诮】敌畔?4(0)將配置為裝置56(0)(即,硬實(shí)時(shí))的主裝置H(O-M)的總線事務(wù)映射到含有可能的最大優(yōu)先級(jí)52(例如,O到3)的虛擬優(yōu)先級(jí)表60??苫诮】敌畔?4(1)將配置為裝置56(1)(即,低等待時(shí)間)的主裝置14(O-M)的總線事務(wù)映射到含有可能的最大優(yōu)先級(jí)52(例如,O到3)的虛擬優(yōu)先級(jí)表60??苫诮】敌畔?4(2)將配置為裝置56(2)(即,軟實(shí)時(shí))的主裝置H(O-M)的總線事務(wù)映射到含有可能的最大優(yōu)先級(jí)52(例如,O到3)的虛擬優(yōu)先級(jí)表