欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

橫跨多個(gè)存儲(chǔ)器區(qū)的強(qiáng)有序、裝置及互斥事務(wù)的自動(dòng)排序的制作方法

文檔序號(hào):6497581閱讀:142來源:國知局
橫跨多個(gè)存儲(chǔ)器區(qū)的強(qiáng)有序、裝置及互斥事務(wù)的自動(dòng)排序的制作方法
【專利摘要】描述用于控制弱有序存儲(chǔ)系統(tǒng)中的有序存取的有效技術(shù)。將存儲(chǔ)器請(qǐng)求流分裂成兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流,且針對(duì)每一存儲(chǔ)器請(qǐng)求遞增存儲(chǔ)器存取計(jì)數(shù)器。在所述兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流中的一者中識(shí)別需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求。在確定來自不同存儲(chǔ)器請(qǐng)求流的先前存儲(chǔ)器請(qǐng)求為未決之后,便停止需要有序存儲(chǔ)器存取的所述存儲(chǔ)器請(qǐng)求。針對(duì)經(jīng)保證完成的每一存儲(chǔ)器請(qǐng)求遞減所述存儲(chǔ)器存取計(jì)數(shù)器。不同于所述存儲(chǔ)器存取計(jì)數(shù)器的初始化狀態(tài)的所述存儲(chǔ)器存取計(jì)數(shù)器中的計(jì)數(shù)值指示存在未決存儲(chǔ)器請(qǐng)求。在確定不存在其它未決存儲(chǔ)器請(qǐng)求之后便處理需要有序存儲(chǔ)器存取的所述存儲(chǔ)器請(qǐng)求。
【專利說明】橫跨多個(gè)存儲(chǔ)器區(qū)的強(qiáng)有序、裝置及互斥事務(wù)的自動(dòng)排序
【技術(shù)領(lǐng)域】
[0001]本發(fā)明大體上涉及處理系統(tǒng),且更特定來說,涉及用于維持強(qiáng)有序操作、裝置存儲(chǔ)器操作及互斥存取請(qǐng)求的次序以用于控制弱有序存儲(chǔ)系統(tǒng)中的原子操作的技術(shù)。
【背景技術(shù)】
[0002]例如手機(jī)、膝上型計(jì)算機(jī)、平板個(gè)人計(jì)算機(jī)(PC)、個(gè)人數(shù)據(jù)助理(PDA)等許多便攜式產(chǎn)品并有具有一或多個(gè)處理器的處理系統(tǒng),所述處理器執(zhí)行支持通信及多媒體應(yīng)用的程序。此些產(chǎn)品的處理系統(tǒng)還可包含用于存儲(chǔ)指令及數(shù)據(jù)的復(fù)雜存儲(chǔ)器系統(tǒng)、控制器及經(jīng)配置以經(jīng)由一或多個(gè)總線與處理器及存儲(chǔ)器介接的外圍裝置。
[0003]在此些處理系統(tǒng)中,處理器經(jīng)常通過允許不按次序執(zhí)行存儲(chǔ)器操作而帶來性能方面的好處。舉例來說,可重新排序存儲(chǔ)器操作的序列以允許在打開新的頁之前執(zhí)行到存儲(chǔ)器中的相同頁的所述操作。被允許重新排序存儲(chǔ)器操作的處理系統(tǒng)通常被稱作“弱有序”處理系統(tǒng)。
[0004]在某些情況下,存儲(chǔ)器操作的重新排序可不可預(yù)測地影響程序行為。舉例來說,總線主控器按先進(jìn)先出(FIFO)將數(shù)據(jù)寫入到外圍裝置(例如,以太網(wǎng)控制器),且在上一數(shù)據(jù)寫入后跟著到同一外圍裝置的控制寄存器的寫入,其指示可發(fā)射數(shù)據(jù)。如果重新排序到控制寄存器的寫入及到數(shù)據(jù)寄存器的寫入,那么將發(fā)射不完整包。
[0005]在另一實(shí)例中,應(yīng)用程序可需要第一處理器在第一存儲(chǔ)器地址處開始寫入數(shù)據(jù)塊,及將數(shù)據(jù)就緒旗標(biāo)寫入到第二存儲(chǔ)器地址,其指示存儲(chǔ)所述數(shù)據(jù)塊。第二處理器將監(jiān)視數(shù)據(jù)就緒旗標(biāo),且當(dāng)旗標(biāo)指示已存儲(chǔ)數(shù)據(jù)時(shí),讀取數(shù)據(jù)塊。在弱有序處理系統(tǒng)中,并不保證將出現(xiàn)此操作次序,所述操作次序可為不可接受的。而且,在弱有序處理系統(tǒng)中,除了處理器之外的外圍裝置還可用作總線主控器,所述總線主控器用于將數(shù)據(jù)發(fā)送到存儲(chǔ)器及從存儲(chǔ)器接收數(shù)據(jù),這可進(jìn)一步使維持程序存儲(chǔ)操作的次序復(fù)雜化。
[0006]已使用各種技術(shù)來執(zhí)行弱有序處理系統(tǒng)中的有序存儲(chǔ)器操作。一個(gè)技術(shù)將使用被稱作屏障命令的總線命令,在需要有序存儲(chǔ)器操作時(shí)發(fā)出所述總線命令。屏障命令可用以確保在執(zhí)行由處理器在屏障命令之后發(fā)出的任何存儲(chǔ)器存取請(qǐng)求之前,完成由處理器在屏障命令之前發(fā)出的所有存儲(chǔ)器存取請(qǐng)求。再次,在先前實(shí)例中,屏障命令可由第一處理器在寫入數(shù)據(jù)就緒旗標(biāo)之前發(fā)出。此屏障命令將確保在寫入確保第二處理器讀取新存儲(chǔ)的數(shù)據(jù)的數(shù)據(jù)就緒旗標(biāo)之前將數(shù)據(jù)塊寫入到存儲(chǔ)器。
[0007]—些處理器、外圍裝置及總線實(shí)施方案可不辨識(shí)屏障命令。將限制利用屏障命令的弱有序處理系統(tǒng)以免使用此些處理器、外圍裝置及總線。為了方便起見,弱有序處理系統(tǒng)可不有效地執(zhí)行。另外,在不支持屏障的系統(tǒng)中執(zhí)行屏障命令通常效率不高且過分耗費(fèi)時(shí)間。在以上實(shí)例中,僅需要排序到數(shù)據(jù)的寫入及旗標(biāo),但除了數(shù)據(jù)及旗標(biāo)之外,屏障命令還排序所有存儲(chǔ)器操作。

【發(fā)明內(nèi)容】
[0008]在其若干方面當(dāng)中,本發(fā)明認(rèn)識(shí)到提供用于控制弱有序存儲(chǔ)系統(tǒng)中的有序存取的更有效方法及設(shè)備可改進(jìn)性能且減少處理系統(tǒng)中的電力要求。為此,本發(fā)明的實(shí)施例提出了一種用于排序需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求的方法。將存儲(chǔ)器請(qǐng)求流分裂成兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流。在兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流中的一者中識(shí)別需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求。在確定來自不同存儲(chǔ)器請(qǐng)求流的先前存儲(chǔ)器請(qǐng)求為未決之后,便停止需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求。
[0009]另一實(shí)施例提出了一種用于排序需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求的設(shè)備。流分裂電路經(jīng)配置以監(jiān)視第一存儲(chǔ)器請(qǐng)求流,且經(jīng)配置以將第一存儲(chǔ)器請(qǐng)求流分裂成第二存儲(chǔ)器請(qǐng)求流及第三存儲(chǔ)器請(qǐng)求流。跟蹤電路經(jīng)配置以檢測來自第二存儲(chǔ)器請(qǐng)求流的需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求,所述第二存儲(chǔ)器請(qǐng)求流為不同于具有未決存儲(chǔ)器請(qǐng)求的第三存儲(chǔ)器請(qǐng)求流的存儲(chǔ)器請(qǐng)求流。停止電路經(jīng)配置以響應(yīng)于未決存儲(chǔ)器請(qǐng)求而停止需要有序存儲(chǔ)器存取的第二存儲(chǔ)器請(qǐng)求流,直到保證按次序完成未決存儲(chǔ)器請(qǐng)求為止。
[0010]另一實(shí)施例提出了 一種用于排序存儲(chǔ)器存取的設(shè)備。開關(guān)及控制電路經(jīng)配置以將存儲(chǔ)器請(qǐng)求流分裂成根據(jù)與兩個(gè)或兩個(gè)以上對(duì)應(yīng)總線端口相關(guān)聯(lián)的屬性而被引導(dǎo)到對(duì)應(yīng)總線端口的兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流。跟蹤電路經(jīng)配置以檢測第一存儲(chǔ)器請(qǐng)求流中的需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求,及檢測第二存儲(chǔ)器請(qǐng)求流中的一或多個(gè)未決存儲(chǔ)器請(qǐng)求。停止電路經(jīng)配置以停止有序存儲(chǔ)器存取請(qǐng)求直到跟蹤電路指示不再存在未決存儲(chǔ)器請(qǐng)求為止。
[0011]另一實(shí)施例提出了一種借助于用于操作系統(tǒng)的計(jì)算機(jī)可讀程序數(shù)據(jù)及代碼來編碼的計(jì)算機(jī)可讀非暫時(shí)性媒體。將存儲(chǔ)器請(qǐng)求流分裂成兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流。在兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流中的一者中識(shí)別需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求。在確定來自不同存儲(chǔ)器請(qǐng)求流的先前存儲(chǔ)器請(qǐng)求為未決之后,便停止需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求。
[0012]另一實(shí)施例提出了一種用于排序需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求的設(shè)備。裝置用于監(jiān)視第一存儲(chǔ)器請(qǐng)求流,及用于將第一存儲(chǔ)器請(qǐng)求流分裂成第二存儲(chǔ)器請(qǐng)求流及第三存儲(chǔ)器請(qǐng)求流。裝置用于檢測來自第二存儲(chǔ)器請(qǐng)求流的需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求,所述第二存儲(chǔ)器請(qǐng)求流為不同于具有未決存儲(chǔ)器請(qǐng)求的第三存儲(chǔ)器請(qǐng)求流的存儲(chǔ)器請(qǐng)求流。裝置用于響應(yīng)于未決存儲(chǔ)器請(qǐng)求而停止需要有序存儲(chǔ)器存取的第二存儲(chǔ)器請(qǐng)求流,直到保證按次序完成未決存儲(chǔ)器請(qǐng)求為止。
[0013]另一實(shí)施例提出了 一種用于排序存儲(chǔ)器存取的設(shè)備。裝置用于將存儲(chǔ)器請(qǐng)求流分裂成根據(jù)與兩個(gè)或兩個(gè)以上對(duì)應(yīng)總線端口相關(guān)聯(lián)的屬性而被引導(dǎo)到對(duì)應(yīng)總線端口的兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流。裝置用于檢測第一存儲(chǔ)器請(qǐng)求流中的需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求,及用于檢測第二存儲(chǔ)器請(qǐng)求流中的一或多個(gè)未決存儲(chǔ)器請(qǐng)求。裝置用于停止有序存儲(chǔ)器存取請(qǐng)求直到跟蹤電路指示不再存在未決存儲(chǔ)器請(qǐng)求為止。
[0014]應(yīng)理解,所屬領(lǐng)域的技術(shù)人員從以下詳細(xì)描述將容易明白本發(fā)明的其它實(shí)施例,其中借助于說明來展示和描述本發(fā)明的各種實(shí)施例。將認(rèn)識(shí)到本發(fā)明能夠具有其它及不同實(shí)施例,且其若干細(xì)節(jié)能夠在各種其它方面進(jìn)行修改,而皆不脫離本發(fā)明的精神及范圍。因此,附圖和【具體實(shí)施方式】應(yīng)被視為本質(zhì)上是說明性的而不是限制性的?!緦@綀D】

【附圖說明】
[0015]在附圖中,本發(fā)明的各種方面通過實(shí)例來說明,且不受限制,其中:
[0016]圖1說明可有利地使用本發(fā)明的實(shí)施例的無線通信系統(tǒng);
[0017]圖2A說明經(jīng)配置以在弱有序存儲(chǔ)系統(tǒng)中操作的示范性處理系統(tǒng),其中可有利地使用本發(fā)明的實(shí)施例;
[0018]圖2B說明經(jīng)配置以協(xié)調(diào)弱有序存儲(chǔ)系統(tǒng)中的強(qiáng)有序及/或載入/存儲(chǔ)互斥操作的第二示范性處理系統(tǒng),其中可有利地使用本發(fā)明的實(shí)施例;
[0019]圖3說明經(jīng)配置以在弱有序存儲(chǔ)系統(tǒng)中操作的示范性擴(kuò)展處理系統(tǒng),其中可有利地使用本發(fā)明的實(shí)施例;及
[0020]圖4說明用于控制弱有序存儲(chǔ)系統(tǒng)中的有序存取的示范性過程,其中可有利地使用本發(fā)明的實(shí)施例。
【具體實(shí)施方式】
[0021]下文結(jié)合附圖而陳述的詳細(xì)描述意在作為對(duì)本發(fā)明的各種示范性實(shí)施例的描述,而無意表示可實(shí)踐本發(fā)明的僅有實(shí)施例。詳細(xì)描述包含出于提供對(duì)本發(fā)明的全面理解的目的的特定細(xì)節(jié)。然而,所屬領(lǐng)域的技術(shù)人員將顯而易見可在無此些特定細(xì)節(jié)的情況下實(shí)踐本發(fā)明。在一些情況下,按框圖形式展示熟知結(jié)構(gòu)及組件以便避免使本發(fā)明的概念模糊。
[0022]圖1說明其中可有利地使用本發(fā)明的實(shí)施例的示范性無線通信系統(tǒng)100。出于說明的目的,圖1展示三個(gè)遠(yuǎn)程單元120、130和150以及兩個(gè)基站140。將認(rèn)識(shí)到,常見的無線通信系統(tǒng)可具有多得多的遠(yuǎn)程單元和基站。包含分別由組件125A、125C、125B及12?表示的硬件組件、軟件組件或兩者的遠(yuǎn)程單元120、130、150及基站140適于體現(xiàn)本發(fā)明,如下文所進(jìn)一步論述。圖1展示從基站140到遠(yuǎn)程單元120、130及150的前向鏈路信號(hào)180及從遠(yuǎn)程單元120、130及150到基站140的反向鏈路信號(hào)190。
[0023]在圖1中,將遠(yuǎn)程單元120展示為移動(dòng)電話,將遠(yuǎn)程單元130展示為便攜式計(jì)算機(jī),且將遠(yuǎn)程單元150展示為無線本地回路系統(tǒng)中的固定位置遠(yuǎn)程單元。舉例來說,遠(yuǎn)程單元可替代地為手機(jī)、尋呼機(jī)、對(duì)講機(jī)、手持式個(gè)人通信系統(tǒng)(PCS)單元、例如個(gè)人數(shù)據(jù)助理等便攜式數(shù)據(jù)單元,或例如儀表讀取設(shè)備等固定位置數(shù)據(jù)單元。盡管圖1說明根據(jù)本發(fā)明的教示的遠(yuǎn)程單元,但本發(fā)明不限于這些示范性說明的單元。本發(fā)明的實(shí)施例可合適的應(yīng)用于與弱有序存儲(chǔ)子系統(tǒng)一起操作的任何處理系統(tǒng)中。
[0024]用以確保按程序次序執(zhí)行存儲(chǔ)器操作的一種技術(shù)將使用存儲(chǔ)器屏障指令,其確保由預(yù)屏障指令引起的所有存儲(chǔ)器存取經(jīng)確認(rèn)在觀察由后屏障指令引起的存儲(chǔ)器存取的所述代理之前按次序完成。舉例來說,可利用總線架構(gòu),其保證用于地址在指定存儲(chǔ)器區(qū)或存儲(chǔ)器塊大小內(nèi)的所述請(qǐng)求的弱有序存儲(chǔ)器系統(tǒng)中的強(qiáng)有序(so)及裝置(DV)存儲(chǔ)器操作的嚴(yán)格程序排序。以如下文更詳細(xì)描述及參考為S0/DV存儲(chǔ)器請(qǐng)求的類似方式來處理強(qiáng)有序(SO)請(qǐng)求及裝置(DV)存儲(chǔ)器請(qǐng)求。然而,在此系統(tǒng)中,并不保證對(duì)不同存儲(chǔ)器區(qū)的S0/DV存儲(chǔ)器請(qǐng)求相對(duì)于彼此為有序的。結(jié)果,需要軟件通過在對(duì)不同存儲(chǔ)器區(qū)的S0/DV請(qǐng)求(需要嚴(yán)格程序排序來保證其正確操作)之間插入屏障指令來加強(qiáng)S0/DV請(qǐng)求的排序約束。然而,確定將屏障指令放置于何處并不容易,從而導(dǎo)致開發(fā)出這樣的代碼:在需要之處沒有屏障指令,且在不需要其來保證正確操作之處具有屏障指令。[0025]處理器可使用如下文關(guān)于圖2A所描述的技術(shù)來實(shí)現(xiàn)改進(jìn)的性能及保證S0/DV存儲(chǔ)器請(qǐng)求的正確操作。圖2A展示經(jīng)配置以在弱有序存儲(chǔ)系統(tǒng)中操作的示范性處理系統(tǒng)200,所述處理系統(tǒng)可合適地體現(xiàn)于圖1的組件125A、125C、125B及12?中。處理系統(tǒng)200包含主存儲(chǔ)器202及經(jīng)由總線橋204耦合到主存儲(chǔ)器202及外部裝置242及244的系統(tǒng)核心203。系統(tǒng)核心203包括處理器206、I級(jí)指令高速緩沖存儲(chǔ)器(Lll-cache) 208、I級(jí)數(shù)據(jù)高速緩沖存儲(chǔ)器(LlD-CaChe)210及總線及存儲(chǔ)器管理單元(BMMU) 212。BMMU212包含主控器端口 O (MPO) 216、主控器端口 I (MPl) 217、2級(jí)統(tǒng)一高速緩沖存儲(chǔ)器(L2高速緩沖存儲(chǔ)器)220及路徑及計(jì)數(shù)電路222。路徑及計(jì)數(shù)電路222包含開關(guān)224、用于處理器請(qǐng)求的計(jì)數(shù)器電路(countP)226、控制電路228、緩沖器(bfr) 230及用于外部裝置請(qǐng)求的計(jì)數(shù)器電路(countE) 232作為用于控制弱有序存儲(chǔ)系統(tǒng)中的有序存取的可配置元件。主存儲(chǔ)器202包括雙數(shù)據(jù)速率O (DDRO)存儲(chǔ)器裝置234及DDRl存儲(chǔ)器裝置236。外部裝置包含外部裝置X242(例如,DDRx存儲(chǔ)器)及充當(dāng)總線主控器且具有內(nèi)部處理器及本地存儲(chǔ)器的外部裝置Y244。總線橋204提供從MP0216經(jīng)由路徑250到DDRO存儲(chǔ)器裝置234的直接路徑及從MP1217經(jīng)由路徑252到DDRl存儲(chǔ)器裝置236的直接路徑。總線橋204還提供如下文更詳細(xì)描述的示范性路徑257到259。
[0026]處理器206及外部裝置Y244可各自實(shí)施為總線主控裝置,例如通用處理器或多處理器、數(shù)字信號(hào)處理器(DSP)、特殊應(yīng)用處理器(ASP)等等。例如外部裝置Y244等外部外圍裝置可為存儲(chǔ)器裝置、存儲(chǔ)器控制器、用于互連到另一總線互連裝置的橋裝置、外圍裝置,例如硬盤控制器、通用串行總線(USB)控制器、交互式顯示裝置、將控制器耦合到發(fā)射器及接收器的無線電裝置等等。外部裝置Y244還可利用直接存儲(chǔ)器存取(DMA)技術(shù)來讀取或?qū)懭霐?shù)據(jù)到主存儲(chǔ)器202。
[0027]例如,處理器206及外部裝置Y244可經(jīng)配置以在存儲(chǔ)于非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)媒體上的程序的控制下執(zhí)行指令。舉例來說,計(jì)算機(jī)可讀存儲(chǔ)媒體可在本地與處理器206或外部裝置Y244直接相關(guān)聯(lián)(例如,可經(jīng)由指令高速緩沖存儲(chǔ)器208及220、與外部裝置Y244相關(guān)聯(lián)的本地存儲(chǔ)器中的一者可用),或可由外部裝置Y244經(jīng)由總線橋204來存取。處理器206可在執(zhí)行程序時(shí)存取來自主存儲(chǔ)器202的數(shù)據(jù)。外部裝置Y244還可存取駐存在存儲(chǔ)器裝置中的數(shù)據(jù),所述存儲(chǔ)器裝置在本地與每一外部裝置直接相關(guān)聯(lián),或可從例如DDRO存儲(chǔ)器裝置234等另一處理器存儲(chǔ)器裝置經(jīng)由總線橋204來存取。
[0028]總線橋204管理總線流通量且提供系統(tǒng)核心203、外部裝置Y244、主存儲(chǔ)器202及例如外部裝置X242等其它外圍裝置之間的連接路徑。舉例來說,總線橋204可經(jīng)配置以具有分別在MP0216與MP1217之間及在DDRO存儲(chǔ)器裝置234與DDRl存儲(chǔ)器裝置236之間的專用信道。雖然圖2A展示了兩個(gè)存儲(chǔ)器裝置(DDR0234及DDR1236),但單個(gè)存儲(chǔ)器裝置可供兩個(gè)主控器端口 MP0216及MP1217使用,以利用兩個(gè)主控器端口之間的交錯(cuò)式存取。還注意到即使不使用交錯(cuò)式存取,仍可使用一或多個(gè)主控器端口(MP)。舉例來說,如果主存儲(chǔ)器202經(jīng)實(shí)施為單個(gè)帶端口存儲(chǔ)器裝置,那么仍可將請(qǐng)求從MP0216及MP1217發(fā)出到單個(gè)帶端口存儲(chǔ)器裝置。因?yàn)閬碜訫P0216及MP1217的存儲(chǔ)器存取請(qǐng)求在存取外部裝置X242時(shí)及在存取單個(gè)帶端口主存儲(chǔ)器裝置時(shí)重新聚合,所以存儲(chǔ)器請(qǐng)求可在不使用本發(fā)明的技術(shù)的情況下不按程序次序。
[0029]當(dāng)橋204確認(rèn)存儲(chǔ)器請(qǐng)求時(shí),確認(rèn)向請(qǐng)求裝置擔(dān)保對(duì)目標(biāo)外部裝置的請(qǐng)求將按所需要的次序完成。因此當(dāng)經(jīng)由MP0216遞送SO/DV存儲(chǔ)器請(qǐng)求時(shí),停止對(duì)MPl的任何新SO/DV請(qǐng)求直到對(duì)MPO的請(qǐng)求接收到此確認(rèn)為止。應(yīng)注意對(duì)讀取請(qǐng)求及寫入請(qǐng)求的確認(rèn)是不同的,但系統(tǒng)會(huì)等待適當(dāng)?shù)捻憫?yīng)。來自橋204的確認(rèn)可不向處理器206指示已完成請(qǐng)求,但其足以指示例如外部從裝置將在其觀察到來自MPl的存儲(chǔ)器存取之前觀察到來自MPO的存儲(chǔ)器存取。在一些系統(tǒng)中,確認(rèn)實(shí)際上可為完成指示。在本實(shí)施方案中,確認(rèn)表示存儲(chǔ)器請(qǐng)求到達(dá)系統(tǒng)中的保證程序排序的點(diǎn)的保證。舉例來說,BMMU212分裂存儲(chǔ)器請(qǐng)求流,及接著將請(qǐng)求流(路徑257及258)重新聚合到外部裝置,例如外部裝置X242中的DDR-X存儲(chǔ)器或例如單個(gè)帶端口主存儲(chǔ)器裝置。當(dāng)在路徑257及258中的一者上提出請(qǐng)求時(shí),通過停止對(duì)路徑257及258中的另一者的請(qǐng)求,進(jìn)入開關(guān)224的S0/DV存儲(chǔ)器請(qǐng)求的次序與到達(dá)外部裝置X242中的DDR-X存儲(chǔ)器的次序相同,且還將與到達(dá)示范性單個(gè)帶端口存儲(chǔ)器裝置的次序相同。甚至在請(qǐng)求離開BMMU212之后,在實(shí)際上在目標(biāo)存儲(chǔ)器處接收請(qǐng)求之前可過去一些時(shí)間,但BMMU212已完成了其角色以保持次序。
[0030]在處理系統(tǒng)200中,總線及存儲(chǔ)器管理單元(BMMU) 212確保S0/DV存儲(chǔ)器存取操作的正確排序。特定來說,示范性裝置可利用寫入數(shù)據(jù)、地址及讀取數(shù)據(jù)總線及相關(guān)聯(lián)的控制信號(hào)。在許多系統(tǒng)中,可使用組合的寫入及讀取數(shù)據(jù)總線。一般來說,取決于特定系統(tǒng)的要求,單獨(dú)的地址、讀取數(shù)據(jù)及寫入數(shù)據(jù)總線遵照特定總線架構(gòu)或標(biāo)準(zhǔn)。存儲(chǔ)器存取請(qǐng)求可包含響應(yīng)于存儲(chǔ)指令的執(zhí)行而產(chǎn)生的寫入或存儲(chǔ)請(qǐng)求、響應(yīng)于載入指令的執(zhí)行而產(chǎn)生的讀取或載入請(qǐng)求,或可包含存儲(chǔ)器屏障命令的總線相關(guān)請(qǐng)求。而且,通過定義,S0/DV請(qǐng)求是不可高速緩存的。并不是外部主控器所使用的所有總線接口都支持或辨識(shí)存儲(chǔ)器屏障命令(即使其是由外部主控器發(fā)出)。而且,并不是所有裝置都支持存儲(chǔ)器屏障命令。
[0031 ] 在第一實(shí)例中,處理器206產(chǎn)生對(duì)主存儲(chǔ)器202的存儲(chǔ)器請(qǐng)求流,所述存儲(chǔ)器請(qǐng)求在bfr230中經(jīng)緩沖且由開關(guān)224分裂到MP0216或MP1217。通過例如基于對(duì)指定存儲(chǔ)器區(qū)內(nèi)的位置的存儲(chǔ)器請(qǐng)求將存儲(chǔ)器請(qǐng)求流分裂成多個(gè)流,可自動(dòng)排序流之間的存儲(chǔ)器請(qǐng)求而不使用軟件技術(shù),例如在處理器所執(zhí)行的代碼中插入存儲(chǔ)器屏障命令。舉例來說,存儲(chǔ)器請(qǐng)求流可基于容量及基于奇數(shù)及偶數(shù)存儲(chǔ)器區(qū)地址而分裂,且可自動(dòng)排序奇數(shù)及偶數(shù)存儲(chǔ)器區(qū)之間的存儲(chǔ)器請(qǐng)求。通過系統(tǒng)定義,DDRO存儲(chǔ)器裝置234存儲(chǔ)數(shù)據(jù)的偶數(shù)存儲(chǔ)器區(qū),其中數(shù)據(jù)的存儲(chǔ)器區(qū)具有IKB容量,且存儲(chǔ)器請(qǐng)求地址的位10可用以確定存儲(chǔ)器請(qǐng)求是針對(duì)偶數(shù)存儲(chǔ)器區(qū)中的數(shù)據(jù)還是奇數(shù)存儲(chǔ)器區(qū)中的數(shù)據(jù)。DDRl存儲(chǔ)器裝置236存儲(chǔ)數(shù)據(jù)的奇數(shù)尋址存儲(chǔ)器區(qū),其各自也具有IKB容量??刂齐娐?28監(jiān)視存儲(chǔ)器請(qǐng)求流及存儲(chǔ)器請(qǐng)求地址的位10 (在此示范性情形中,針對(duì)IKB存儲(chǔ)器區(qū))以控制開關(guān)224。在存儲(chǔ)器請(qǐng)求地址的位10處于第一狀態(tài)的情況下,將對(duì)偶數(shù)存儲(chǔ)器區(qū)的存儲(chǔ)器請(qǐng)求傳遞到MP0216。在存儲(chǔ)器請(qǐng)求地址的位10處于第二狀態(tài)的情況下,將對(duì)奇數(shù)存儲(chǔ)器區(qū)的存儲(chǔ)器請(qǐng)求傳遞到MP1217。
[0032]在另一實(shí)施例中,DDRO存儲(chǔ)器裝置234存儲(chǔ)數(shù)據(jù)的偶數(shù)存儲(chǔ)器區(qū),其中數(shù)據(jù)的存儲(chǔ)器區(qū)是通過使請(qǐng)求的地址散列來定義的,且散列的結(jié)果可用以確定存儲(chǔ)器請(qǐng)求是針對(duì)偶數(shù)存儲(chǔ)器區(qū)中的數(shù)據(jù)還是奇數(shù)存儲(chǔ)器區(qū)中的數(shù)據(jù)。DDRl存儲(chǔ)器裝置236存儲(chǔ)奇數(shù)散列存儲(chǔ)器區(qū)。控制電路228監(jiān)視存儲(chǔ)器請(qǐng)求流,且計(jì)算存儲(chǔ)器請(qǐng)求地址的散列以控制開關(guān)224。在存儲(chǔ)器請(qǐng)求地址的散列的結(jié)果處于第一狀態(tài)的情況下,將對(duì)偶數(shù)存儲(chǔ)器區(qū)的存儲(chǔ)器請(qǐng)求傳遞到MP0216。在存儲(chǔ)器請(qǐng)求地址的散列的結(jié)果處于第二狀態(tài)的情況下,將對(duì)奇數(shù)存儲(chǔ)器區(qū)的存儲(chǔ)器請(qǐng)求傳遞到MP1217。[0033]通過監(jiān)視存儲(chǔ)器請(qǐng)求流,可識(shí)別及停止在奇數(shù)與偶數(shù)存儲(chǔ)器區(qū)之間改變的請(qǐng)求,直到接收到保證按次序完成未決請(qǐng)求的指示為止。跟蹤方法使用計(jì)數(shù)器(例如,計(jì)數(shù)器COUntP226),其在接收到每一存儲(chǔ)器請(qǐng)求之后即遞增,且在接收到指示將按次序完成請(qǐng)求的對(duì)請(qǐng)求的響應(yīng)時(shí)遞減。當(dāng)先前存儲(chǔ)器裝置存在未決存儲(chǔ)器請(qǐng)求時(shí)在DDRO存儲(chǔ)器裝置234與DDRl存儲(chǔ)器裝置236之間改變的新S0/DV存儲(chǔ)器請(qǐng)求被停止直到保證完成未決存儲(chǔ)器請(qǐng)求為止。停止的存儲(chǔ)器請(qǐng)求保持未決直到經(jīng)啟用以進(jìn)行處理為止。在奇數(shù)與偶數(shù)存儲(chǔ)器區(qū)之間改變且停止的S0/DV存儲(chǔ)器請(qǐng)求不會(huì)使計(jì)數(shù)器遞增。在完成未決請(qǐng)求且計(jì)數(shù)器適當(dāng)?shù)剡f減到初始計(jì)數(shù)值(例如,零)之后,處理停止的請(qǐng)求,且接著針對(duì)正處理的停止的請(qǐng)求遞增計(jì)數(shù)器。因?yàn)橥ㄟ^上文所描述的確認(rèn)而保證存儲(chǔ)器請(qǐng)求的奇數(shù)地址流內(nèi)或存儲(chǔ)器請(qǐng)求的偶數(shù)地址流內(nèi)的請(qǐng)求按次序完成,所以出于停止對(duì)相反流的請(qǐng)求的目的而僅監(jiān)視在流之間改變的請(qǐng)求。確定請(qǐng)求表示流之間的改變可通過保存指示先前請(qǐng)求或請(qǐng)求序列的存儲(chǔ)器請(qǐng)求地址邊界不同于當(dāng)前存儲(chǔ)器請(qǐng)求的地址邊界的狀態(tài)而實(shí)現(xiàn)。舉例來說,對(duì)奇數(shù)地址IK存儲(chǔ)器區(qū)的一或多個(gè)請(qǐng)求的流可由單個(gè)經(jīng)斷言未決流位表示,所述單個(gè)經(jīng)斷言未決流位在與當(dāng)前請(qǐng)求的位10中的零值相比較時(shí)指示:如果計(jì)數(shù)器中存在未決計(jì)數(shù),那么可需要停止當(dāng)前請(qǐng)求。一旦確認(rèn)未決請(qǐng)求,且計(jì)數(shù)器返回到其初始狀態(tài),便處理停止的請(qǐng)求,且未決流位經(jīng)撤銷斷言以指示對(duì)偶數(shù)地址IK存儲(chǔ)器區(qū)的請(qǐng)求在進(jìn)行中或未決。即使S0/DV請(qǐng)求在相同的請(qǐng)求流中,仍監(jiān)視S0/DV請(qǐng)求以便遞增計(jì)數(shù)器,例如計(jì)數(shù)器countP226。
[0034]例如外部裝置Y244等外部主控器裝置經(jīng)配置以用于控制S0/DV請(qǐng)求及監(jiān)視在對(duì)DDRO存儲(chǔ)器裝置234的偶數(shù)地址請(qǐng)求與對(duì)DDRl存儲(chǔ)器裝置236的奇數(shù)地址請(qǐng)求之間改變的請(qǐng)求的類似方式操作。監(jiān)視由外部裝置Y244發(fā)出的存儲(chǔ)器請(qǐng)求流,且由控制電路228控制開關(guān)224,將偶數(shù)地址請(qǐng)求傳遞到DDRO存儲(chǔ)器裝置234,保存狀態(tài)以指示偶數(shù)地址請(qǐng)求是未決的,且遞增計(jì)數(shù)器countE232。在先前存取的存儲(chǔ)器(例如,DDRO存儲(chǔ)器裝置234)到不同存儲(chǔ)器(例如,DDRl存儲(chǔ)器裝置236)之間改變的來自外部裝置Y244的請(qǐng)求停止直到保證完成對(duì)先前存儲(chǔ)器的未決請(qǐng)求為止,如由遞減到其初始值(例如,零)的countE值所指示。接著斷言保存的狀態(tài)以指示處理對(duì)DDRl存儲(chǔ)器裝置236的停止的請(qǐng)求。示范性路徑259是針對(duì)在L2高速緩沖存儲(chǔ)器220中高速緩存或經(jīng)引導(dǎo)穿過BMMU212的請(qǐng)求,其目標(biāo)在于外部裝置或主存儲(chǔ)器202。
[0035]圖2B說明經(jīng)配置以協(xié)調(diào)弱有序存儲(chǔ)系統(tǒng)中的強(qiáng)有序及/或載入/存儲(chǔ)互斥操作的示范性第二處理系統(tǒng)260,其中可有利地使用本發(fā)明的實(shí)施例。第二處理系統(tǒng)260類似于圖2A的處理系統(tǒng)200,除了用于處理器請(qǐng)求的計(jì)數(shù)器電路(例如,countP226)從一個(gè)計(jì)數(shù)器擴(kuò)大到兩個(gè)計(jì)數(shù)器。需要有序存儲(chǔ)器存取的一種類型的存儲(chǔ)器請(qǐng)求為提供原子存儲(chǔ)器存取的存儲(chǔ)器存取互斥指令的序列。需要有序存儲(chǔ)器存取的第二類型的存儲(chǔ)器請(qǐng)求為上文所描述的強(qiáng)有序或裝置(S0/DV)請(qǐng)求。載入互斥指令或存儲(chǔ)互斥指令計(jì)數(shù)器(countPX)262及S0/DV計(jì)數(shù)器(countPs) 264用以維持到目標(biāo)裝置的請(qǐng)求流中的存儲(chǔ)器請(qǐng)求的原始次序,即使是在將請(qǐng)求流分裂到在目標(biāo)裝置處聚合的多個(gè)路徑時(shí)。countPx262及countPs264計(jì)數(shù)器由控制電路266控制,如下文更詳細(xì)所描述。下文的表I說明存儲(chǔ)器請(qǐng)求流,其中將強(qiáng)有序或載入/存儲(chǔ)互斥屬性應(yīng)用于第二處理系統(tǒng)260以說明本發(fā)明的各種實(shí)施例。
[0036]表I[0037]
【權(quán)利要求】
1.一種用于排序需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求的方法,所述方法包括: 將存儲(chǔ)器請(qǐng)求流分裂成兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流; 在所述兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流中的一者中識(shí)別需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求;及 在確定來自不同存儲(chǔ)器請(qǐng)求流的先前存儲(chǔ)器請(qǐng)求為未決之后,便停止需要有序存儲(chǔ)器存取的所述存儲(chǔ)器請(qǐng)求。
2.根據(jù)權(quán)利要求1所述的方法,其中根據(jù)地址邊界值分裂所述存儲(chǔ)器請(qǐng)求流。
3.根據(jù)權(quán)利要求2所述的方法,其中所述地址邊界值為確定存儲(chǔ)器區(qū)是奇數(shù)地址存儲(chǔ)器區(qū)還是偶數(shù)地址存儲(chǔ)器區(qū)的地址位。
4.根據(jù)權(quán)利要求2所述的方法,其中從識(shí)別N個(gè)存儲(chǔ)器區(qū)中的一者的存儲(chǔ)器請(qǐng)求地址中的多個(gè)位確定所述地址邊界值。
5.根據(jù)權(quán)利要求1所述的方法,其中根據(jù)在所述兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流中的每一存儲(chǔ)器請(qǐng)求流上傳送數(shù)據(jù)的可用性來分裂所述存儲(chǔ)器請(qǐng)求流。
6.根據(jù)權(quán)利要求1所述的方法,其中所述存儲(chǔ)器請(qǐng)求流中的一存儲(chǔ)器請(qǐng)求根據(jù)所述地址邊界值而被引導(dǎo)到N個(gè)存儲(chǔ)器區(qū)中的一者。
7.根據(jù)權(quán)利要求1所述的方法,其中需要有序存儲(chǔ)器存取的所述存儲(chǔ)器請(qǐng)求為強(qiáng)有序存儲(chǔ)器請(qǐng)求或裝置存儲(chǔ)器請(qǐng)求SO/DV。
8.根據(jù)權(quán)利要求1所述的方法,其中需要有序存儲(chǔ)器存取的所述存儲(chǔ)器請(qǐng)求為提供原子存儲(chǔ)器存取的存儲(chǔ)器存取互斥指令的序列。
9.根據(jù)權(quán)利要求1所述的方法,其中在接收到保證按次序完成所述未決先前存儲(chǔ)器請(qǐng)求的指示之后處理所述停止的存儲(chǔ)器請(qǐng)求。
10.根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包括: 遞增用于每一存儲(chǔ)器請(qǐng)求的存儲(chǔ)器存取計(jì)數(shù)器;及 遞減用于經(jīng)指示以保證按所要次序完成的每一存儲(chǔ)器請(qǐng)求的所述存儲(chǔ)器存取計(jì)數(shù)器,其中不同于所述存儲(chǔ)器存取計(jì)數(shù)器的初始化狀態(tài)的所述存儲(chǔ)器存取計(jì)數(shù)器中的計(jì)數(shù)值指示尚未保證按所要次序完成一或多個(gè)未決請(qǐng)求。
11.一種用于排序需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求的設(shè)備,所述設(shè)備包括: 流分裂電路,其經(jīng)配置以監(jiān)視第一存儲(chǔ)器請(qǐng)求流,且經(jīng)配置以將所述第一存儲(chǔ)器請(qǐng)求流分裂成第二存儲(chǔ)器請(qǐng)求流及第三存儲(chǔ)器請(qǐng)求流; 跟蹤電路,其經(jīng)配置以檢測來自所述第二存儲(chǔ)器請(qǐng)求流的需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求,所述第二存儲(chǔ)器請(qǐng)求流為不同于具有未決存儲(chǔ)器請(qǐng)求的所述第三存儲(chǔ)器請(qǐng)求流的存儲(chǔ)器請(qǐng)求流 '及 停止電路,其經(jīng)配置以響應(yīng)于所述未決存儲(chǔ)器請(qǐng)求而停止需要有序存儲(chǔ)器存取的所述第二存儲(chǔ)器請(qǐng)求流,直到保證按次序完成所述未決存儲(chǔ)器請(qǐng)求為止。
12.根據(jù)權(quán)利要求11所述的設(shè)備,其中根據(jù)基于存儲(chǔ)器區(qū)的數(shù)目及存儲(chǔ)器區(qū)大小的地址屬性來確定所述分裂。
13.根據(jù)權(quán)利要求11所述的設(shè)備,其中根據(jù)在所述兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流中的每一存儲(chǔ)器請(qǐng)求流上傳送數(shù)據(jù)的可用性來確定所述分裂。
14.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述跟蹤電路包括:計(jì)數(shù)器,其經(jīng)配置以在從所述第二存儲(chǔ)器請(qǐng)求流或從為與先前存儲(chǔ)器請(qǐng)求相同的存儲(chǔ)器請(qǐng)求流的所述第三存儲(chǔ)器請(qǐng)求流接收到存儲(chǔ)器請(qǐng)求之后便遞增,且指示所述接收的存儲(chǔ)器請(qǐng)求為未決的,其中所述計(jì)數(shù)器經(jīng)配置以在接收到保證按次序完成所述未決存儲(chǔ)器請(qǐng)求的確認(rèn)之后便遞減。
15.根據(jù)權(quán)利要求11所述的設(shè)備,其進(jìn)一步包括: 第一存儲(chǔ)器區(qū)及第二存儲(chǔ)器區(qū),其中所述第二存儲(chǔ)器請(qǐng)求流與所述第一存儲(chǔ)器區(qū)相關(guān)聯(lián),且所述第三存儲(chǔ)器請(qǐng)求流與所述第二存儲(chǔ)器區(qū)相關(guān)聯(lián) '及 處理器,其經(jīng)配置以產(chǎn)生所述第一存儲(chǔ)器請(qǐng)求流,其中每一存儲(chǔ)器請(qǐng)求包含相關(guān)聯(lián)的地址屬性,所述地址屬性將所述第一存儲(chǔ)器區(qū)識(shí)別為奇數(shù)地址存儲(chǔ)器區(qū)及將所述第二存儲(chǔ)器區(qū)識(shí)別為偶數(shù)地址存儲(chǔ)器區(qū)。
16.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述地址屬性為識(shí)別所述兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流的一或多個(gè)地址位。
17.根據(jù)權(quán)利要求11所述的設(shè)備,其進(jìn)一步包括: N個(gè)存儲(chǔ)器區(qū),其中監(jiān)視所述第一存儲(chǔ)器請(qǐng)求流,且將其分裂成N個(gè)存儲(chǔ)器請(qǐng)求流,其中每一存儲(chǔ)器請(qǐng)求流與所述N個(gè)存儲(chǔ)器區(qū)中的不同存儲(chǔ)器區(qū)相關(guān)聯(lián);及 處理器,其經(jīng)配置以產(chǎn)生所述第一存儲(chǔ)器請(qǐng)求流,其中每一存儲(chǔ)器請(qǐng)求包含識(shí)別所述N個(gè)存儲(chǔ)器區(qū)中的一者的相關(guān)聯(lián)的地址屬性。
18.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述跟蹤電路包括: 第二計(jì)數(shù)器,其經(jīng)配置以在從第二強(qiáng)有序或裝置SO/DV存儲(chǔ)器請(qǐng)求流或從為與先前裝置存儲(chǔ)器請(qǐng)求相同的裝置存儲(chǔ)器請(qǐng)求流的第三裝置存儲(chǔ)器請(qǐng)求流接收到SO/DV存儲(chǔ)器請(qǐng)求之后便遞增,且指示所述接收的SO/DV存儲(chǔ)器請(qǐng)求為未決的,其中所述第二計(jì)數(shù)器經(jīng)配置以在接收到保證按次序完成所述未決裝置存儲(chǔ)器請(qǐng)求的確認(rèn)之后便遞減。
19.根據(jù)權(quán)利要求11所述的設(shè)備,其中需要有序存儲(chǔ)器存取的所述存儲(chǔ)器請(qǐng)求為提供原子存儲(chǔ)器存取的存儲(chǔ)器存取互斥指令。
20.根據(jù)權(quán)利要求11所述的設(shè)備,其中所述未決存儲(chǔ)器請(qǐng)求響應(yīng)于存儲(chǔ)器存取互斥指令,其中在接收到保證按次序完成所述未決存儲(chǔ)器請(qǐng)求的指示之后啟用所述停止的第二存儲(chǔ)器請(qǐng)求流的處理。
21.一種用于排序存儲(chǔ)器存取的設(shè)備,所述設(shè)備包括: 開關(guān)及控制電路,其經(jīng)配置以將存儲(chǔ)器請(qǐng)求流分裂成根據(jù)與兩個(gè)或兩個(gè)以上對(duì)應(yīng)總線端口相關(guān)聯(lián)的屬性而被引導(dǎo)到所述對(duì)應(yīng)總線端口的兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流; 跟蹤電路,其經(jīng)配置以檢測第一存儲(chǔ)器請(qǐng)求流中的需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求,及檢測第二存儲(chǔ)器請(qǐng)求流中的一或多個(gè)未決存儲(chǔ)器請(qǐng)求;及 停止電路,其經(jīng)配置以停止所述有序存儲(chǔ)器存取請(qǐng)求直到所述跟蹤電路指示不再存在未決存儲(chǔ)器請(qǐng)求為止。
22.根據(jù)權(quán)利要求21所述的設(shè)備,其中所述屬性是基于存儲(chǔ)器區(qū)的數(shù)目及存儲(chǔ)器區(qū)大小。
23.根據(jù)權(quán)利要求21所述的設(shè)備,其中所述屬性是基于在所述兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流中的每一存儲(chǔ)器請(qǐng)求流上傳送數(shù)據(jù)的可用性。
24.根據(jù)權(quán)利要求21所述的設(shè)備,其中所述屬性是基于存儲(chǔ)器交錯(cuò)地址。
25.根據(jù)權(quán)利要求21所述的設(shè)備,其中所述屬性是基于存儲(chǔ)器請(qǐng)求的目的地地址的散列。
26.根據(jù)權(quán)利要求21所述的設(shè)備,其中所述開關(guān)及控制電路監(jiān)視所述存儲(chǔ)器請(qǐng)求的目的地地址字段內(nèi)的位字段以確定所述屬性。
27.根據(jù)權(quán)利要求21所述的設(shè)備,其中所述有序存儲(chǔ)器存取請(qǐng)求具有經(jīng)斷言強(qiáng)有序?qū)傩浴?br> 28.根據(jù)權(quán)利要求21所述的設(shè)備,其中所述跟蹤電路包括: 存儲(chǔ)器存取計(jì)數(shù)器,其經(jīng)配置以針對(duì)每一接收的存儲(chǔ)器請(qǐng)求遞增及針對(duì)保證完成的每一接收的存儲(chǔ)器請(qǐng)求遞減,其中不同于所述存儲(chǔ)器存取計(jì)數(shù)器的初始化狀態(tài)的所述存儲(chǔ)器存取計(jì)數(shù)器中的計(jì)數(shù)值指示存在尚未保證完成的一或多個(gè)未決存儲(chǔ)器請(qǐng)求。
29.根據(jù)權(quán)利要求21所述的設(shè)備,其進(jìn)一步包括: 跟蹤電路,其經(jīng)配置以檢測第一存儲(chǔ)器請(qǐng)求流中的具有經(jīng)斷言裝置屬性的存儲(chǔ)器請(qǐng)求,及檢測第二存儲(chǔ)器請(qǐng)求流中的一或多個(gè)未決存儲(chǔ)器請(qǐng)求;及 停止電路,其經(jīng)配置以停止裝置存儲(chǔ)器請(qǐng)求直到所述跟蹤電路指示不再存在未決存儲(chǔ)器請(qǐng)求為止。
30.根據(jù)權(quán)利要求21所述的設(shè)備,其中所述屬性為確定存儲(chǔ)器區(qū)是奇數(shù)地址存儲(chǔ)器區(qū)還是偶數(shù)地址存儲(chǔ)器區(qū)的地址位。
31.根據(jù)權(quán)利要求21所述的設(shè)備,其中在接收到保證按次序完成所述未決存儲(chǔ)器請(qǐng)求的確認(rèn)之后處理所述停止的有序存儲(chǔ)器存取請(qǐng)求。
32.—種借助于計(jì)算機(jī)可讀程序數(shù)據(jù)及代碼來編碼的計(jì)算機(jī)可讀非暫時(shí)性媒體,所述程序數(shù)據(jù)及代碼在執(zhí)行時(shí)可操作以: 將存儲(chǔ)器請(qǐng)求流分裂成兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流; 在所述兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流中的一者中識(shí)別需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求;及 在確定來自不同存儲(chǔ)器請(qǐng)求流的先前存儲(chǔ)器請(qǐng)求為未決之后,便停止需要有序存儲(chǔ)器存取的所述存儲(chǔ)器請(qǐng)求。
33.一種用于排序需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求的設(shè)備,所述設(shè)備包括: 用于監(jiān)視第一存儲(chǔ)器請(qǐng)求流及用于將所述第一存儲(chǔ)器請(qǐng)求流分裂成第二存儲(chǔ)器請(qǐng)求流及第三存儲(chǔ)器請(qǐng)求流的裝置; 用于檢測來自所述第二存儲(chǔ)器請(qǐng)求流的需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求的裝置,所述第二存儲(chǔ)器請(qǐng)求流為不同于具有未決存儲(chǔ)器請(qǐng)求的所述第三存儲(chǔ)器請(qǐng)求流的存儲(chǔ)器請(qǐng)求流;及 用于響應(yīng)于所述未決存儲(chǔ)器請(qǐng)求而停止需要有序存儲(chǔ)器存取的所述第二存儲(chǔ)器請(qǐng)求流直到保證按次序完成所述未決存儲(chǔ)器請(qǐng)求為止的裝置。
34.一種用于排序存儲(chǔ)器存取的設(shè)備,所述設(shè)備包括: 用于將存儲(chǔ)器請(qǐng)求流分裂成根據(jù)與兩個(gè)或兩個(gè)以上對(duì)應(yīng)總線端口相關(guān)聯(lián)的屬性而被引導(dǎo)到所述對(duì)應(yīng)總線端口的兩個(gè)或兩個(gè)以上存儲(chǔ)器請(qǐng)求流的裝置; 用于檢測第一存儲(chǔ)器請(qǐng)求流中的需要有序存儲(chǔ)器存取的存儲(chǔ)器請(qǐng)求及用于檢測第二存儲(chǔ)器請(qǐng)求流中的一或多個(gè)未決存儲(chǔ)器請(qǐng)求的裝置;及用于停止所述有序存儲(chǔ)器存取請(qǐng)求直到跟蹤電路指示不再存在未決存儲(chǔ)器請(qǐng)求為止的 裝置。
【文檔編號(hào)】G06F13/16GK103975314SQ201280060318
【公開日】2014年8月6日 申請(qǐng)日期:2012年12月10日 優(yōu)先權(quán)日:2011年12月9日
【發(fā)明者】賈森·勞倫斯·帕納維赫, 詹姆斯·諾里斯·迪芬德爾費(fèi)爾, 托馬斯·安德魯·薩托里烏斯, 托馬斯·菲利普·施派爾 申請(qǐng)人:高通股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
桂阳县| 陆良县| 永清县| 商丘市| 丹棱县| 大英县| 株洲市| 金湖县| 贵德县| 闽清县| 白沙| 怀远县| 遂宁市| 太康县| 宁强县| 深水埗区| 腾冲县| 富平县| 怀集县| 灵宝市| 昌图县| 同德县| 正镶白旗| 黑山县| 筠连县| 枝江市| 商河县| 东明县| 筠连县| 汤阴县| 乐昌市| 中阳县| 治县。| 中方县| 长沙县| 黔南| 临夏市| 太仆寺旗| 岑巩县| 绥化市| 长沙市|