專利名稱:用于阻隔操作的條件式廣播的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明大體上涉及計算機領(lǐng)域,且明確地說,涉及一種用于有條件地廣播存儲器阻 隔總線操作的方法和設(shè)備。
背景技術(shù):
計算機和其它電子系統(tǒng)和裝置在許多應(yīng)用中執(zhí)行計算任務(wù)。這些系統(tǒng)和裝置通常通 過整合多種獨立的、特定功能電路或模塊(例如處理器、數(shù)學(xué)協(xié)處理器、視頻與圖形引 擎、DMA控制器、GPS接收器、專用壓縮或加密電路等)而越來越多地整合超出直接 計算的功能性。此些裝置與存儲器之間以及所述裝置自身之間的高帶寬數(shù)據(jù)轉(zhuǎn)移對于實 現(xiàn)所需等級的性能來說是關(guān)鍵的。數(shù)據(jù)通信總線是眾所周知的結(jié)構(gòu),其在處理系統(tǒng)中的 裝置或模塊之間提供共享通信鏈路。
共享總線上的裝置的常見邏輯二分包括"主"裝置和"從屬"裝置。主裝置起始總 線事務(wù),且通常為接入所述總線且在一些系統(tǒng)中為總線帶寬的共享而在其自身之間進行 仲裁。從屬裝置響應(yīng)由主裝置起始的數(shù)據(jù)轉(zhuǎn)移總線事務(wù),從而響應(yīng)于寫入總線事務(wù)而從 主裝置接受數(shù)據(jù),并響應(yīng)于讀取總線事務(wù)而向主裝置提供數(shù)據(jù)。大多數(shù)從屬裝置以對應(yīng) 的總線事務(wù)在共享總線上發(fā)生的次序來執(zhí)行數(shù)據(jù)轉(zhuǎn)移操作。
在許多情況下,可通過允許數(shù)據(jù)轉(zhuǎn)移操作(例如,存儲器存取)無序執(zhí)行來優(yōu)化系 統(tǒng)性能。舉例來說,可對存儲器操作序列重新排序以允許對存儲器中同一頁的所有操作 在打開新頁之前被執(zhí)行。允許對存儲器操作重新排序的處理系統(tǒng)通常被稱為"弱有序" 處理系統(tǒng)。
相反,要求存儲器操作看似以與其對應(yīng)的總線事務(wù)相同的次序執(zhí)行的處理系統(tǒng)被稱 為"強有序"處理系統(tǒng)。應(yīng)注意,強有序系統(tǒng)中的從屬裝置實際上可不按照總線事務(wù)次 序來執(zhí)行存儲器操作,只要存儲器狀態(tài)在任何時間對處理器來說看似存儲器操作已經(jīng)按 序執(zhí)行。此特性被稱為"全域可觀測性"??偸且越邮盏拇涡驁?zhí)行數(shù)據(jù)轉(zhuǎn)移操作的簡單 從屬裝置本質(zhì)上是全域可觀測的??蔁o序執(zhí)行數(shù)據(jù)轉(zhuǎn)移操作的其它從屬裝置"窺探"數(shù) 據(jù)轉(zhuǎn)移操作地址,并以總線事務(wù)次序向相同地址執(zhí)行數(shù)據(jù)轉(zhuǎn)移操作。這些類型的從屬裝置也是全域可觀測的。不考慮總線事務(wù)次序而執(zhí)行數(shù)據(jù)轉(zhuǎn)移操作的從屬裝置不是全域可 觀測的。
在一些情況下,即使在弱有序處理系統(tǒng)中,也必須強制實施數(shù)據(jù)轉(zhuǎn)移操作次序以確 保正確的操作。舉例來說,應(yīng)用可能要求處理器在所述處理器從存儲器位置進行讀取之 前將數(shù)據(jù)寫入到存儲器。重新排序這些操作將導(dǎo)致在讀取操作中返回不正確的數(shù)據(jù)。
在弱有序處理系統(tǒng)中,已使用各種常規(guī)技術(shù)來執(zhí)行經(jīng)排序的數(shù)據(jù)轉(zhuǎn)移操作。 一種技 術(shù)僅僅是延遲特定數(shù)據(jù)轉(zhuǎn)移總線事務(wù),直到在其之前的所有數(shù)據(jù)轉(zhuǎn)移操作均被執(zhí)行為 止。在先前實例中,處理器可延遲發(fā)出讀取請求,直到其接收到保證寫入操作數(shù)據(jù)已被 寫入到存儲器位置的指示為止。強制實施數(shù)據(jù)轉(zhuǎn)移操作排序的暫停程序執(zhí)行對性能明顯 具冇負(fù)而影響。
用于在弱有序處理系統(tǒng)中執(zhí)行經(jīng)排序的數(shù)據(jù)轉(zhuǎn)移操作的另 一 種技術(shù)是將執(zhí)行同步 總線事務(wù)界定為總線協(xié)議的--部分,也稱為"存儲器阻隔"。存儲器阻隔是總線事務(wù), 其確保在存儲器阻隔發(fā)出之前由主裝置發(fā)出的所有數(shù)據(jù)轉(zhuǎn)移總線事務(wù)均在所述存儲器 阻隔之后由主裝置發(fā)出的任何數(shù)據(jù)轉(zhuǎn)移總線事務(wù)之前被執(zhí)行或看似已經(jīng)被執(zhí)行。任何存 儲器阻隔均為不涉及主裝置與從屬裝置之間的任何數(shù)據(jù)轉(zhuǎn)移的總線事務(wù)。存儲器阻隔操 作可由主裝置明確地起始?;蛘撸蛄硗?,存儲器阻隔操作可由總線控制器響應(yīng)于由主 裝置起始的強有序數(shù)據(jù)轉(zhuǎn)移操作而產(chǎn)生。在先前實例中,存儲器阻隔事務(wù)可由處理器在 發(fā)出讀取總線事務(wù)之前發(fā)出。存儲器阻隔將確保寫入操作(以及任何其它先前發(fā)出的數(shù) 據(jù)轉(zhuǎn)移操作)在讀取操作被執(zhí)行之前執(zhí)行。2005年10月19日申請的第11/253,307號共 同待決美國專利申請案"在弱有序處理系統(tǒng)中強制實施強有序請求(Enforcing Strongly-Ordered Requests In A Weakly-Ordered Processing System)"中描述存儲器阻隔, 所述專利申請案轉(zhuǎn)讓給本申請案的受讓人,且以全文引用的方式并入本文中。
存儲器阻隔在具有多個從屬裝置的處理系統(tǒng)中可能是低效的。在此些系統(tǒng)中,為了 強制實施排序約束,必須將存儲器阻隔事務(wù)傳播到可由發(fā)出強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)或 存儲器阻隔操作的主裝置接入的每個從屬裝置。在強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)或存儲器阻 隔操作之后的總線事務(wù)被發(fā)出之前,必須從所述從屬裝置中的每一者接收存儲器阻隔的 肯定應(yīng)答。因此,存儲器阻隔所強加的延遲由將響應(yīng)的最緩慢的從屬裝置確定。這可能 不利地影響性能,特別是在較緩慢的從屬裝置不考慮存儲器阻隔而以總線事務(wù)次序執(zhí)行 數(shù)據(jù)轉(zhuǎn)移操作的情況下。
2005年10月20日申請的第11/254,939號共同待決美國專利申請案"在弱有序處理 系統(tǒng)中強制實施強有序請求時使存儲器阻隔減到最小(Minimizing Memory BarrierWhen Enforcing Strongly-Ordered Requests in a Weakly-Ordered Processing System)"揭示
一種動態(tài)地使存儲器阻隔減到最小的系統(tǒng)和方法,所述專利申請案轉(zhuǎn)讓給本申請案的受 讓人,且以全文引用的方式并入本文中。與每一從屬裝置相關(guān)聯(lián)的狀態(tài)寄存器在每主裝 置基石出上指示從屬裝置當(dāng)前是否具有來自所述從屬裝置可從其接收數(shù)據(jù)轉(zhuǎn)移總線事務(wù) 的每一主裝置的待決(未執(zhí)行)數(shù)據(jù)轉(zhuǎn)移操作。如果特定從屬裝置指示其不具有來自特 定主裝置的任何待決數(shù)據(jù)轉(zhuǎn)移操作,那么不需要將來自所述主裝置的存儲器阻隔傳播到 所述從屬裝置。以此方式,僅在有必要強制實施總線事務(wù)排序的情況下傳播存儲器阻隔。 即,存儲器阻隔僅導(dǎo)向具有來自需要強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)或存儲器阻隔操作的主裝 置的待決(先前發(fā)出的)數(shù)據(jù)轉(zhuǎn)移操作的從屬裝置。
大多數(shù)常規(guī)系統(tǒng)均包含至少一些固有地提供全域可觀測性的從屬裝置。關(guān)于此些從 屬裝置,無需為了確定是否使存儲器阻隔事務(wù)導(dǎo)向從屬裝置而動態(tài)地監(jiān)視所述從屬裝置 是否具有來自特定主裝置的待決數(shù)據(jù)轉(zhuǎn)移操作。
發(fā)明內(nèi)容
根據(jù)本文所揭示的一個或一個以上實施例,確保全域可觀測性的從屬裝置許多"選 擇退出"存儲器阻隔協(xié)議。在各種實施例中,選擇退出決策可通過每一從屬裝置斷言一 信號而動態(tài)地做出,可通過輪詢從屬裝置中的狀態(tài)寄存器以查實其全域可觀測性而在開 機自我測試(POST)期間在系統(tǒng)范圍內(nèi)設(shè)置,可由軟件設(shè)置,或者所述選擇退出決策 可由系統(tǒng)設(shè)計者硬連線,使得只有能夠執(zhí)行無序數(shù)據(jù)轉(zhuǎn)移操作的從屬裝置才參與所述存 儲器阻隔協(xié)議。此選擇退出決策通過僅視需要將存儲器阻隔操作傳播到從屬裝置來改進 系統(tǒng)性能并降低功率消耗,從而消除了與來自全域可觀測的從屬裝置的存儲器阻隔肯定 應(yīng)答相關(guān)聯(lián)的延遲。
--個實施例涉及一種弱有序處理系統(tǒng)。所述系統(tǒng)包含多個從屬裝置以及兩個或兩個 以上主裝置,每一主裝置經(jīng)配置以使數(shù)據(jù)轉(zhuǎn)移總線事務(wù)導(dǎo)向一個或一個以上從屬裝置。 所述系統(tǒng)進一步包含總線互連件,所述總線互連件經(jīng)配置以在主裝置與從屬裝置之間實 施數(shù)據(jù)轉(zhuǎn)移總線事務(wù),且進一步經(jīng)配置以響應(yīng)于來自主裝置的強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù) 請求而使執(zhí)行同步總線事務(wù)導(dǎo)向并非全域可觀測的一個或一個以上從屬裝置。
另一實施例涉及一種總線互連件,所述總線互連件操作以使數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從弱 有序處理系統(tǒng)的一個或一個以上主裝置導(dǎo)向兩個或兩個以上從屬裝置。所述總線互連件 包含總線寄存器,其操作以使數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求排成隊列;以及控制器,其操作以控制數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器的發(fā)出,并進一步操作以響應(yīng)于來自主裝置的強 有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求而向并非全域可觀測的一個或一個以上從屬裝置發(fā)出執(zhí)行 同步總線事務(wù)。
又一實施例涉及一種在弱有序處理系統(tǒng)中執(zhí)行強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的方法,所 述弱有序處理系統(tǒng)包含一個或一個以上主裝置以及兩個或兩個以上從屬裝置。維持所述 從屬裝置中的哪些具全域可觀測性的指示。響應(yīng)于來自主裝置的強有序數(shù)據(jù)轉(zhuǎn)移總線事 務(wù)請求而向并非全域可觀測的一個或一個以上從屬裝置發(fā)出執(zhí)行同步總線事務(wù)。
圖1是弱有序處理系統(tǒng)的功能框圖2是弱有序處理系統(tǒng)中的總線互連件的功能框圖3是用于弱有序處理系統(tǒng)的總線互連件中的控制器的一個實施例的功能框圖;以
及
圖4是用于弱有序處理系統(tǒng)的總線互連件中的控制器的另一實施例的功能框圖。
具體實施例方式
下文結(jié)合所附圖式而陳述的具體實施方式
意在作為本發(fā)明的各種實施例的描述,且 無意表示本發(fā)明可在其中實踐的僅有實施例。明確地說,出于闡釋的目的,相對于包括 向兩個或兩個以上存儲器控制器發(fā)出存儲器存取請求的一個或一個以上處理器以及一 總線互連件的處理系統(tǒng)而描述實施例。然而,本發(fā)明適用于在共享總線系統(tǒng)中向從屬裝 置發(fā)出數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的任何主裝置,且不限于處理器和存儲器控制器。
圖1是弱有序處理系統(tǒng)的功能框圖??稍谟嬎銠C或其它計算系統(tǒng)(包含便攜式電子
裝置、嵌入式系統(tǒng)、分布式系統(tǒng)等)中安置處理系統(tǒng)ioo。可將處理系統(tǒng)100實施為集 成電路、離散組件或其任一組合。圖1中僅描繪處理系統(tǒng)ioo的為闡釋本發(fā)明的實施例
所需的那些部分。所屬領(lǐng)域的技術(shù)人員將認(rèn)識到如何針對每一特定應(yīng)用最好地實施處理
系統(tǒng)100。
如圖1中所描繪,處理系統(tǒng)IOO包含經(jīng)由共享總線106與存儲器裝置104a到104c
通信的處理器102a到102c。任何特定應(yīng)用所需的處理器和存儲器裝置的實際數(shù)目可視
所需的計算能力和總設(shè)計約束而有所不同。總線互連件108可用于使用點到點切換連接
來管理處理器102a到102c與存儲器裝置104a到104c之間的總線事務(wù)。在總線互連件
108的至少一個實施例中,可提供多個直接鏈路以允許兩個或兩個以上總線事務(wù)同時發(fā)
9生。
處理器102a到102c中的一者或一者以上可經(jīng)配置以在操作系統(tǒng)或其它軟件的控制 下執(zhí)行指令。所述指令可駐存在存儲器裝置104a到104c的一者或一者以上中。數(shù)據(jù)也 可存儲在存儲器裝置104a到104c中,并由處理器102a到102c檢索以執(zhí)行某些指令。 從執(zhí)行這些指令產(chǎn)生的新數(shù)據(jù)可回寫到存儲器裝置104a到104c中。每一存儲器裝置 104a到104c可包含存儲器控制器(未圖示)和存儲媒體(未圖示),如此項技術(shù)中已知。
每一處理器102a到102c可在總線106上具備用于與總線互連件108通信的專用信 道106a到106c。類似地,總線互連件108可使用總線上的專用信道106d到106f與每 一存儲器裝置104a到104c通信。作為實例,第一處理器102a可通過經(jīng)由其在總線106 上的專用信道106a發(fā)送數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求來存取目標(biāo)存儲器裝置104b??偩€互連 件108根據(jù)數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的地址確定目標(biāo)存儲器裝置104b,并經(jīng)由總線106上 的適當(dāng)信道106e向目標(biāo)存儲器裝置104b發(fā)出數(shù)據(jù)轉(zhuǎn)移總線事務(wù)。數(shù)據(jù)轉(zhuǎn)移總線事務(wù)可 以是寫入事務(wù)、讀取事務(wù)或任何其它與數(shù)據(jù)轉(zhuǎn)移有關(guān)的總線事務(wù)。發(fā)端處理器102a到 102c可通過將適當(dāng)?shù)牡刂放c有效負(fù)載放置在總線106上并斷言寫入啟用信號來向冃標(biāo)存 儲器裝置104a到104c發(fā)出寫入事務(wù)。發(fā)端處理器102a到102c可通過將適當(dāng)?shù)牡刂贩?置在總線106上并斷言讀取啟用信號來向目標(biāo)存儲器裝置104a到104c發(fā)出讀取事務(wù)。 響應(yīng)于讀取請求,目標(biāo)存儲器裝置104a到104c將把有效負(fù)載發(fā)回到發(fā)端處理器102a 到102c。發(fā)端處理器102a到102c還可發(fā)出非數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的總線事務(wù),例如存儲 器阻隔事務(wù)。
在處理系統(tǒng)100的至少一個實施例中,處理器102a到102c可將屬性與每一存儲器 存取請求一起傳輸。所述屬性可以是描述數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的性質(zhì)的任何參數(shù)。所述屬 性可經(jīng)由地址信道與地址一起傳輸?;蛘撸墒褂门詭帕罨蚰骋黄渌椒▉韨鬏斔?屬性。所述屬性可用以指示數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求是否為強有序的。"強有序"請求指 代不能無序執(zhí)行的數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求。
總線互連件108可監(jiān)視來自處理器102a到102c的每一數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的屬
性。如果屬性指示強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求,那么總線互連件108可對去往接受來
自主裝置的總線事務(wù)且能夠無序執(zhí)行數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的每一從屬裝置(強有序數(shù)據(jù)轉(zhuǎn)
移總線事務(wù)所導(dǎo)向的從屬裝置除外)的事務(wù)強制實施排序約束。作為實例,從第一處理
器102a到目標(biāo)存儲器裝置104a的數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求可包含屬性??偩€互連件108
可根據(jù)所述屬性來確定事務(wù)是否為強有序的。如果總線互連件108確定所述事務(wù)是強有
序的,那么除目標(biāo)存儲器裝置104a之外,總線互連件108向第一處理器102a能夠存取的且可不按照總線事務(wù)次序執(zhí)行數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的每個存儲器裝置104b和104c發(fā)送 存儲器阻隔。總線互連件108還在無存儲器阻隔的情況下向目標(biāo)存儲器104a發(fā)送強有 序數(shù)據(jù)轉(zhuǎn)移總線事務(wù),因為目標(biāo)存儲器裝置104a由于與數(shù)據(jù)轉(zhuǎn)移總線事務(wù)相關(guān)聯(lián)的屬 性的緣故而將隱含地將所述存儲器阻隔處理為強有序請求?;蛘?,處理器102a可在發(fā) 出強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)之前發(fā)出存儲器阻隔總線事務(wù)。
圖2是說明弱有序處理系統(tǒng)中的總線互.連件108的實例的功能框圖。實際實施總線 互連件的方式將視設(shè)計考慮因素而定。所屬領(lǐng)域的技術(shù)人員將認(rèn)識到各種設(shè)計的可互換 性,以及如何針對每一特定應(yīng)用而最好地實施本文中所描述的功能性。
參看圖2,總線寄存器202可用以接收并存儲來自總線106的信息。總線寄存器202 可以是任何類型的存儲裝置,例如先入先出(First-In-First-Out, FIFO)存儲器或其它合 適存儲裝置。由總線寄存器202接收并存儲的信息可以是任何總線相關(guān)信息,但更具體 地說可包含每一數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的地址和屬性,且在寫入操作的情況下,可包含 有效負(fù)載。總線寄存器202還可存儲非數(shù)據(jù)轉(zhuǎn)移總線事務(wù)(例如由主裝置發(fā)出的存儲器 阻隔操作)情況下的屬性。還向解碼器204提供每一數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的地址。解 碼器204可用以為總線寄存器202中的每一數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求確定目標(biāo)存儲器裝 置。此確定用以控制總線開關(guān)206。總線開關(guān)206用以將每一數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從總線 寄存器202多路分用到總線106的適當(dāng)信道以到達其目標(biāo)存儲器裝置。控制器208可用 以控制數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器202釋放的時序。
圖3是用于弱有序處理系統(tǒng)的總線互連件108中的控制器208的一個實施例的功能 框圖??刂破?08基于其從解碼器204接收到的信息而對存儲器操作強制實施排序約束。 所述信息可包含每一總線事務(wù)的屬性,其可存儲在第一輸入寄存器302中。所述信息還 可包含識別發(fā)端處理器能夠存取的除目標(biāo)存儲器裝置之外的每一存儲器裝置的數(shù)據(jù)。可 由每一處理器存取的特定存儲器裝置在設(shè)計階段期間被預(yù)先配置,且因此可被編程或硬 連線到解碼器204中。在任何情況下,第二輸入寄存器304可用以存儲此信息。第一輸 入寄存器302和第二輸入寄存器304可為分離的寄存器(如圖3中所示),或替代地為 單個寄存器。在控制器208的一些實施例中,來自解碼器204的信息可存儲在與其它總 線互連功能共享的寄存器中。每一寄存器可以是FIFO或任何其它合適存儲媒體。
控制器208通過控制數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器202釋放的時序而對數(shù)據(jù)轉(zhuǎn)移 操作強制實施排序約束。首先將結(jié)合指示強有序存儲器數(shù)據(jù)轉(zhuǎn)移總線事務(wù)準(zhǔn)備好從總線 寄存器202釋放的屬性而描述所述過程。在此情況下,從第一輸入寄存器302向存儲器
阻隔產(chǎn)生器306提供所述屬性作為啟用信號。同時,向存儲器阻隔產(chǎn)生器306的輸入端提供存儲在第二輸入寄存器304中的數(shù)據(jù)。如上文所指示,存儲在第二輸入寄存器304 中的數(shù)據(jù)包含識別發(fā)端處理器能夠存取的除目標(biāo)存儲器裝置之外的每一存儲器裝置的 數(shù)據(jù)。當(dāng)存儲器阻隔產(chǎn)生器306由所述屬性啟用時,此信息用以為所述數(shù)據(jù)所識別的每 一存儲器裝置產(chǎn)生存儲器阻隔??赏ㄟ^發(fā)出導(dǎo)向所識別的存儲器裝置的存儲器阻隔事務(wù) 來向適當(dāng)?shù)拇鎯ζ餮b置提供每一存儲器阻隔,以及識別起始強有序請求的發(fā)端處理器的 屬性。或者,可使用旁帶信令或通過其它合適方法向適當(dāng)?shù)拇鎯ζ餮b置提供存儲器阻隔。 存儲器阻隔產(chǎn)生器306還可響應(yīng)于來自主裝置的存儲器阻隔總線事務(wù)請求而產(chǎn)生存儲器 阻隔總線事務(wù),其也以與上文所描述的方式類似的方式存儲在總線寄存器202中。
根據(jù)一個或一個以上實施例,存儲器阻隔產(chǎn)生器306可用以抑制不必要的存儲器阻 隔。舉例來說,如果存儲器裝置固有地是全域可觀測的,那么可由發(fā)端處理器存取的存 儲器裝置的存儲器阻隔是多余的且可被抑制??梢栽S多方式來識別全域可觀測的從屬裝 置。
在控制器208的一個實施例中,邏輯全域可觀測性寄存器307針對系統(tǒng)中的每個從 屬裝置包含一個位。全域可觀測性寄存器位的狀態(tài)指示相關(guān)聯(lián)的從屬裝置是否為全域可 觀測的,且因此可免于存儲器阻隔事務(wù)。全域可觀測性寄存器307是存儲器阻隔產(chǎn)生器 306的輸入。全域可觀測性寄存器307可包括由系統(tǒng)軟件在開機自我測試(Power On Self Test, POST)期間在輪詢從屬裝置以相對于總線事務(wù)的全域可觀測性而查實所述從屬裝 置的行為和能力(例如通過對相應(yīng)從屬裝置內(nèi)的配置狀態(tài)寄存器(CSR)進行讀取)之 后設(shè)置的物理寄存器。
在一個實施例(其在ASIC或芯片上系統(tǒng)(System On Chip, SOC)環(huán)境中可能特別 有利)中,邏輯全域可觀測性寄存器307的一個或一個以上位可由設(shè)計者硬連線到指示 對應(yīng)從屬裝置的已知全域可觀測性的預(yù)定狀態(tài)。這可降低POST軟件的復(fù)雜性且減少 POST軟件的執(zhí)行時間。
在另一實施例中,邏輯全域可觀測性寄存器307的一個或一個以上位可包括來自從
屬裝置的動態(tài)二進制信號。這允許所述從屬裝置指示全域可觀測性的周期。舉例來說,
從屬裝置可在緩沖器中使數(shù)據(jù)轉(zhuǎn)移操作排成隊列,且不按照總線事務(wù)次序來執(zhí)行所述操
作。當(dāng)待決數(shù)據(jù)轉(zhuǎn)移操作駐存在所述緩沖器中時,從屬裝置會指示缺少全域可觀測性,
因此如果處理器發(fā)出強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)或存儲器阻隔操作,那么要求存儲器阻隔
總線事務(wù)導(dǎo)向所述從屬裝置。然而,如果緩沖器為空,那么從屬裝置可保證至少下一個
發(fā)生的數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的全域可觀測性(即,從屬裝置保證先前向其發(fā)出的所有數(shù)據(jù)
轉(zhuǎn)移操作均已被執(zhí)行)。在此情況下,從屬裝置可經(jīng)由二進制信號來指示其不需接收存
12儲器阻隔事務(wù),且只要其緩沖器為空就可維持此指示。
在任何給定實施方案中,邏輯全域可觀測性寄存器307可按照特定應(yīng)用中所要求或 需要而包括由系統(tǒng)軟件、經(jīng)硬連線的位或來自從屬裝置的動態(tài)信號設(shè)置的一個或一個以 上物理寄存器的任何混合。
參看圖1到圖3,現(xiàn)將提供實例以說明全域可觀測性寄存器位可用以抑制存儲器阻 隔的方式。在此實例中,處理系統(tǒng)可經(jīng)配置以使得第一處理器102a可存取第一、第二 和第三存儲器裝置104a、 104b、 104c。當(dāng)強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)由第一處理器102a 向第一存儲器裝置104a發(fā)出時(或者替代地當(dāng)?shù)谝惶幚砥?02a所發(fā)出的存儲器阻隔操 作位于總線寄存器202的輸出端處時),來自第一輸入寄存器302的對應(yīng)屬性啟用存儲 器阻隔產(chǎn)生器306。從第二輸入寄存器304向存儲器阻隔產(chǎn)生器306提供的數(shù)據(jù)識別第 一處理器104a可存取的除目標(biāo)存儲器裝置之外的存儲器裝置。在此情況下,所述數(shù)據(jù) 識別第二存儲器裝置104b和第三存儲器裝置104c。存儲器阻隔產(chǎn)生器306檢査邏輯全 域可觀測性寄存器307中對應(yīng)于第二存儲器裝置104b和第三存儲器裝置104c的位307b、 307c,以確定存儲器裝置104b、 104c中的任一者是否為全域可觀測的。在此實例中, 位307b指示全域可觀測性,且位307c不指示全域可觀測性。因此,存儲器阻隔總線事 務(wù)被發(fā)出到第三存儲器裝置104c,且去往第二存儲器裝置104b的存儲器阻隔被抑制。
返回到圖3,控制器208中的邏輯308可用以針對存儲器阻隔肯定應(yīng)答而監(jiān)視來自 存儲器裝置的反饋。"存儲器阻隔肯定應(yīng)答"使來自存儲器裝置的信號,其指示來自需 要強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)或發(fā)出存儲器阻隔操作的處理器的每個數(shù)據(jù)轉(zhuǎn)移操作(其先 于存儲器阻隔)均已被執(zhí)行。邏輯308使用來自第二輸入寄存器304的數(shù)據(jù)和邏輯全域 可觀測性寄存器307的位來確定應(yīng)針對存儲器阻隔肯定應(yīng)答監(jiān)視哪些存儲器裝置。當(dāng)邏 輯308確定已接收到所有必要的存儲器阻隔肯定應(yīng)答時,邏輯308產(chǎn)生用以使對應(yīng)的數(shù) 據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器202釋放的觸發(fā)(或如果存儲器阻隔操作直接由主裝置發(fā) 出,那么產(chǎn)生下一個待決數(shù)據(jù)轉(zhuǎn)移總線事務(wù))。更具體地說,向選擇多路復(fù)用器310的 輸入端提供來自第一輸入寄存器302的屬性。多路復(fù)用器310用以在所述屬性指示數(shù)據(jù) 轉(zhuǎn)移總線事務(wù)為強有序的時,將邏輯308所產(chǎn)生的觸發(fā)耦合到總線寄存器202。從多路 復(fù)用器310輸出的釋放信號也耦合到解碼器,以使總線開關(guān)206 (見圖2)的時序同步。
一旦數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器釋放,所述數(shù)據(jù)轉(zhuǎn)移總線事務(wù)就經(jīng)過總線開關(guān) 206 (見圖2)而路由到目標(biāo)存儲器裝置。控制器208中的第二多路復(fù)用器312可用以在 指示強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)或主裝置發(fā)出的存儲器阻隔操作的屬性被應(yīng)用于選擇輸 入時,延遲從第一寄存器302和第二寄存器304釋放數(shù)據(jù),直到從目標(biāo)存儲器裝置接收到數(shù)據(jù)轉(zhuǎn)移肯定應(yīng)答為止。如上文所論述,總線事務(wù)中所包含的屬性對目標(biāo)存儲器裝置 強制實施排序約束。即,目標(biāo)存儲器裝置在執(zhí)行強有序數(shù)據(jù)轉(zhuǎn)移操作之前,執(zhí)行由發(fā)端 處理器發(fā)出的所有未解決的數(shù)據(jù)轉(zhuǎn)移操作。數(shù)據(jù)轉(zhuǎn)移肯定應(yīng)答由目標(biāo)存儲器裝置在執(zhí)行 強有序數(shù)據(jù)轉(zhuǎn)移操作后產(chǎn)生。將數(shù)據(jù)轉(zhuǎn)移肯定應(yīng)答反饋到控制器208中的多路復(fù)用器 312,在多路復(fù)用器312處,所述數(shù)據(jù)轉(zhuǎn)移肯定應(yīng)答用以產(chǎn)生觸發(fā)以從第一寄存器302 和第二寄存器304釋放對應(yīng)于總線寄存器202中的下一個數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的新數(shù)據(jù)。 如果所述新數(shù)據(jù)包含指示總線寄存器202中的對應(yīng)數(shù)據(jù)轉(zhuǎn)移總線事務(wù)為強有序的屬性, 或包括主裝置發(fā)出的存儲器阻隔操作,那么重復(fù)相同的過程。否則,數(shù)據(jù)轉(zhuǎn)移總線事務(wù) 可立即從總線寄存器202釋放。
控制器208經(jīng)配置以在第一輸入寄存器302中的對應(yīng)屬性指示請求并非強有序的或 并非主裝置發(fā)出的存儲器阻隔操作時,立即使數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器202釋放。 在所述情況下,所述屬性停用存儲器阻隔產(chǎn)生器306。此外,所述屬性迫使多路復(fù)用器 310進入將內(nèi)部產(chǎn)生的觸發(fā)耦合到總線寄存器202以釋放數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的狀態(tài)。數(shù) 據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器202釋放,且經(jīng)過總線開關(guān)206 (見圖2)而耦合到目標(biāo) 存儲器裝置。對應(yīng)于下一個數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的數(shù)據(jù)接著通過從控制器208中的第二多 路復(fù)用器312輸出的內(nèi)部產(chǎn)生的觸發(fā),而從第一寄存器302和第二寄存器304釋放。
圖4是說明用于弱有序處理系統(tǒng)的總線互連件中的控制器的另一實施例的功能框 圖。在此實施例中,強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)通過控制器208從總線寄存器202釋放, 同時存儲器阻隔被提供到適當(dāng)?shù)拇鎯ζ餮b置。更具體地說,第一輸入寄存器302用以向 存儲器阻隔產(chǎn)生器306提供數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的屬性。如果所述屬性指示對應(yīng)的數(shù)據(jù)轉(zhuǎn) 移總線事務(wù)是強有序的,那么存儲器阻隔產(chǎn)生器306被啟用。當(dāng)存儲器阻隔產(chǎn)生器306 被啟用時,來自第二輸入寄存器304的數(shù)據(jù)用以識別可由發(fā)端處理器存取的除目標(biāo)存儲 器裝置之外的每一存儲器裝置。對于所識別的每一存儲器裝置,存儲器阻隔產(chǎn)生器306 檢查邏輯全域可觀測性寄存器307的對應(yīng)位。接著針對除目標(biāo)存儲器裝置之外(在那時) 不指示其是全域可觀測的的每一存儲器裝置而產(chǎn)生存儲器阻隔。
在存儲器阻隔產(chǎn)生器306被啟用的情況下,控制器208中的邏輯314可用以防止隨 后的數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器202釋放,直到強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)由目標(biāo)存 儲器裝置執(zhí)行為止。延遲316可用以允許內(nèi)部產(chǎn)生的觸發(fā)在所述觸發(fā)被屬性選通切斷之 前,使強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從總線寄存器202釋放。以此方式,可向目標(biāo)存儲器裝 置提供數(shù)據(jù)轉(zhuǎn)移總線事務(wù),同時向其余的可由發(fā)端處理器存取的非全域可觀測的存儲器 裝置提供存儲器阻隔。
14邏輯318可用以針對來自目標(biāo)存儲器裝置的數(shù)據(jù)轉(zhuǎn)移肯定應(yīng)答和存儲器阻隔肯定應(yīng) 答而監(jiān)視來自存儲器裝置的反饋。邏輯318使用來自第二輸入寄存器304的數(shù)據(jù)和邏輯 全域可觀測性寄存器307的位來確定針對存儲器阻隔肯定應(yīng)答將需要監(jiān)視哪些存儲器裝 置。當(dāng)邏輯318確定已接收到各種數(shù)據(jù)轉(zhuǎn)移和/或存儲器阻隔肯定應(yīng)答時,邏輯318產(chǎn)生 觸發(fā)以從第一輸入寄存器302和第二輸入寄存器304釋放對應(yīng)于總線寄存器202中的下 一個數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的新數(shù)據(jù)。所述觸發(fā)通過多路復(fù)用器320而耦合,來自第一輸入 寄存器202的屬性迫使多路復(fù)用器320進入適當(dāng)?shù)臓顟B(tài)。如果所述新數(shù)據(jù)包含指示總線 寄存器202中的對應(yīng)的數(shù)據(jù)轉(zhuǎn)移總線事務(wù)是強有序的,那么重復(fù)相同的過程。否則,數(shù) 據(jù)轉(zhuǎn)移總線事務(wù)可經(jīng)由邏輯314通過內(nèi)部產(chǎn)生的觸發(fā)直接從總線寄存器202釋放。內(nèi)部 產(chǎn)生的觸發(fā)還可通過多路復(fù)用器320而耦合,以使數(shù)據(jù)從第一輸入寄存器302和第二輸 入寄存器304釋放,以用于總線寄存器202中的下一個數(shù)據(jù)轉(zhuǎn)移總線事務(wù)。
盡管本文己相對于共享總線系統(tǒng)的總線互連件108內(nèi)的控制器208而描述了本發(fā) 明,但所屬領(lǐng)域的技術(shù)人員將容易認(rèn)識到本發(fā)明并不限于此實施方案。明確地說,用于 每一從屬裝置的全域可觀測指示符可傳播到每一主裝置或可由每一主裝置存取,每一主 裝置可確定是否需要存儲器阻隔總線事務(wù),且如果需要的話,那么可確定應(yīng)導(dǎo)向哪些從 屬裝置。
盡管本文中已相對于本發(fā)明的特定特征、方面和實施例而描述了本發(fā)明,但將明白, 在本發(fā)明的寬泛范圍內(nèi),大量變化、修改和其它實施例是可能的,且因此,所有變化、 修改和實施例均將被視為在本發(fā)明的范圍內(nèi)。因此本實施例在所有方面均被解釋為說明 性而j P限制性的,且在所附權(quán)利要求書的意義和等效范圍內(nèi)的所有改變均意在包含于本 實施例中。
權(quán)利要求
1. 一種弱有序處理系統(tǒng),其包括多個從屬裝置;至少一個主裝置,其經(jīng)配置以將數(shù)據(jù)轉(zhuǎn)移總線事務(wù)導(dǎo)向一個或一個以上從屬裝置;以及總線互連件,其經(jīng)配置以在主裝置與從屬裝置之間實施數(shù)據(jù)轉(zhuǎn)移總線事務(wù),且進一步經(jīng)配置以響應(yīng)于來自主裝置的執(zhí)行同步總線事務(wù)請求而將執(zhí)行同步總線事務(wù)導(dǎo)向并非全域可觀測的一個或一個以上從屬裝置。
2. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述總線互連件包含邏輯全域可觀測性寄存器, 所述邏輯全域可觀測性寄存器包括多個位,每一位對應(yīng)于一從屬裝置,并指示所述 從屬裝置是否維持全域可觀測性。
3. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中所述全域可觀測性寄存器包括由系統(tǒng)軟件在系統(tǒng) 初始化期間所設(shè)置的一個或一個以上物理寄存器。
4. 根據(jù)權(quán)利要求3所述的系統(tǒng),其中所述系統(tǒng)軟件輪詢從屬裝置中的配置寄存器以查 實所述從屬裝置的全域可觀測性。
5. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中所述邏輯全域可觀測性寄存器的一個或一個以上 位是經(jīng)硬連線的。
6. 根據(jù)權(quán)利要求2所述的系統(tǒng),其中所述邏輯全域可觀測性寄存器的一個或一個以上 位包括來自從屬裝置的動態(tài)二進制信號。
7. 根據(jù)權(quán)利要求6所述的系統(tǒng),其中從屬裝置在執(zhí)行數(shù)據(jù)轉(zhuǎn)移操作之前緩沖所述數(shù)據(jù) 轉(zhuǎn)移操作,且其中所述從屬裝置在其緩沖器為空時經(jīng)由去往所述邏輯全域可觀測性 寄存器的動態(tài)二進制信號來指示所述從屬裝置為全域可觀測的。
8. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中來自所述主裝置的數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求包含指 示所述數(shù)據(jù)轉(zhuǎn)移總線事務(wù)是否為強有序的屬性。
9. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中接收所述執(zhí)行同步總線事務(wù)的每一從屬裝置執(zhí)行 所有先前從至少所述發(fā)出所述強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的主裝置接收到的數(shù)據(jù)轉(zhuǎn) 移操作。
10. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)所導(dǎo)向的所述從屬裝置對于主裝置來說,看似在執(zhí)行所述強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)之前,已執(zhí)行所有 先前從至少所述發(fā)出所述強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的主裝置接收到的數(shù)據(jù)轉(zhuǎn)移操 作。
11. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述總線互連件將所述執(zhí)行同步總線事務(wù)僅導(dǎo)向 發(fā)出所述強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的所述主裝置可將數(shù)據(jù)轉(zhuǎn)移總線事務(wù)導(dǎo)向 的非全域可觀測的從屬裝置。
12. 根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述總線互連件進一步經(jīng)配置以響應(yīng)于強有序數(shù) 據(jù)轉(zhuǎn)移總線事務(wù)請求而將執(zhí)行同步總線事務(wù)導(dǎo)向并非全域可觀測的一個或一個以 上從屬裝置。
13. —種總線互連件,其操作以將數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從弱有序處理系統(tǒng)中的一個或一個以上主裝置導(dǎo)向兩個或兩個以上從屬裝置,所述總線互連件包括總線寄存器,其操作以使數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求排成隊列;以及控制器,其操作以控制數(shù)據(jù)轉(zhuǎn)移總線事務(wù)從所述總線寄存器的發(fā)出,且進一步操作以響應(yīng)于來自主裝置的執(zhí)行同步總線事務(wù)請求而將執(zhí)行同步總線事務(wù)導(dǎo)向并非全域可觀測的一個或一個以上從屬裝置。
14. 根據(jù)權(quán)利要求13所述的總線互連件,其中所述控制器包含邏輯全域可觀測性寄存 器,所述邏輯全域可觀測性寄存器指示哪些從屬裝置是全域可觀測的。
15. 根據(jù)權(quán)利要求14所述的總線互連件,其中所述邏輯全域可觀測性寄存器包括由系 統(tǒng)軟件設(shè)置的物理寄存器。
16. 根據(jù)權(quán)利要求15所述的總線互連件,其中所述系統(tǒng)軟件在設(shè)置所述全域可觀測性寄存器之前,輪詢從屬裝置中的狀態(tài)寄存器以查實所述從屬裝置的全域可觀測性。
17. 根據(jù)權(quán)利要求14所述的總線互連件,其中所述邏輯全域可觀測性寄存器的一個或一個以上位由系統(tǒng)設(shè)計者硬連線。
18. 根據(jù)權(quán)利要求14所述的總線互連件,其中所述邏輯全域可觀測性寄存器的一個或 一個以上位包括來自從屬裝置的動態(tài)二進制信號。
19. 根據(jù)權(quán)利要求18所述的總線互連件,其中從屬裝置操作以在執(zhí)行數(shù)據(jù)轉(zhuǎn)移操作之 前緩沖所述數(shù)據(jù)轉(zhuǎn)移操作,所述從屬裝置在所述緩沖器為空時經(jīng)由動態(tài)二進制信號 指示全域可觀測性。
20. 根據(jù)權(quán)利要求12所述的總線互連件,其進一步包括解碼器,所述解碼器邏輯上連 接到所述控制器,且操作以查實待決數(shù)據(jù)轉(zhuǎn)移總線事務(wù)導(dǎo)向哪一從屬裝置,且進一 步操作以檢測強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)。
21. 根據(jù)權(quán)利要求14所述的總線互連件,其進一步包括從所述總線寄存器接收數(shù)據(jù)轉(zhuǎn) 移總線事務(wù)的總線開關(guān),所述總線開關(guān)操作以在所述解碼器的控制下將所述數(shù)據(jù)轉(zhuǎn) 移總線事務(wù)導(dǎo)向從屬裝置。
22. 根據(jù)權(quán)利要求13所述的總線互連件,其中所述控制器進一步操作以響應(yīng)于強有序 數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求而向并非全域可觀測的一個或一個以上從屬裝置發(fā)出執(zhí)行 同步總線事務(wù)。
23. —種在弱有序處理系統(tǒng)中執(zhí)行強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)的方法,所述弱有序處理系 統(tǒng)包含一個或一個以上主裝置以及兩個或兩個以上從屬裝置,所述方法包括維持所述從屬裝置中的哪些從屬裝置是全域可觀測的的指示;以及 響應(yīng)于來自主裝置的執(zhí)行同步總線事務(wù)請求而向并非全域可觀測的一個或一個 以上從屬裝置發(fā)出執(zhí)行同步總線事務(wù)。
24.根據(jù)權(quán)利要求23所述的方法,其進一步包括通過對從主裝置接收到的每一數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的屬性進行解碼來檢測強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)。
25. 根據(jù)權(quán)利要求23所述的方法,其中僅向發(fā)出強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的所述 主裝置可將數(shù)據(jù)轉(zhuǎn)移總線事務(wù)導(dǎo)向的非全域可觀測的從屬裝置發(fā)出所述執(zhí)行同步 總線事務(wù)。
26. 根據(jù)權(quán)利要求23所述的方法,其中維持所述從屬裝置中的哪些從屬裝置是全域可 觀測性的的指示包括維持邏輯全域可觀測性狀態(tài)寄存器,所述邏輯全域可觀測性狀 態(tài)寄存器的一個位對應(yīng)于每一從屬裝置。
27. 根據(jù)權(quán)利要求26所述的方法,其進一步包括在初始化期間輪詢從屬裝置中的狀態(tài)寄存器以查實每一從屬裝置的全域可觀測 性;以及設(shè)置物理全域可觀測性狀態(tài)寄存器。
28. 根據(jù)權(quán)利要求26所述的方法,其中維持所述從屬裝置中的哪些從屬裝置是全域可 觀測的的指示包括從--個或一個以上從屬裝置接收指示所述從屬裝置的全域可觀 測性的動態(tài)二進制信號。
29. 根據(jù)權(quán)利要求23所述的方法,其進一步包括,對于接收執(zhí)行同步總線事務(wù)的每一 從屬裝置,執(zhí)行來自至少所述發(fā)出所述強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的主裝置的所 有待決數(shù)據(jù)轉(zhuǎn)移操作。
30. 根據(jù)權(quán)利要求23所述的方法,其進一步包括,對于接收所述強有序數(shù)據(jù)轉(zhuǎn)移總線 事務(wù)的所述從屬裝置,在執(zhí)行所述強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)之前,執(zhí)行來自至少所 述發(fā)出所述強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求的主裝置的所有待決數(shù)據(jù)轉(zhuǎn)移操作。
31. 根據(jù)權(quán)利要求23所述的方法,其進一步包括接收強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)請求。
全文摘要
一種弱有序處理系統(tǒng)實施執(zhí)行同步總線事務(wù)或“存儲器阻隔”總線事務(wù),以強制實施強有序數(shù)據(jù)轉(zhuǎn)移總線事務(wù)。確保全域可觀測性的從屬裝置可“選擇退出”存儲器阻隔協(xié)議。在各種實施例中,選擇退出決策可通過每一從屬裝置斷言一信號而動態(tài)地做出,可通過輪詢所述從屬裝置并在全域可觀測性寄存器中設(shè)置對應(yīng)的位來在開機自我測試(POST)期間在系統(tǒng)范圍內(nèi)設(shè)置,或者所述選擇退出決策可由系統(tǒng)設(shè)計者硬連線,使得只有能夠執(zhí)行無序數(shù)據(jù)轉(zhuǎn)移操作的從屬裝置才參與所述存儲器阻隔協(xié)議。
文檔編號G06F13/16GK101506783SQ200780031817
公開日2009年8月12日 申請日期2007年8月31日 優(yōu)先權(quán)日2006年8月31日
發(fā)明者吉姆·沙利文, 巴里·沃爾福德 申請人:高通股份有限公司