中文字幕无码日韩视频无码三区

用于編織排序的設備和方法

文檔序號:6417402閱讀:292來源:國知局
專利名稱:用于編織排序的設備和方法
技術領域
本發明一般而言涉及數據處理系統,尤其是,涉及在多處理器節點數據處理系統結構中事務處理的排序。
現代數據處理系統編入許多處理節點。每個節點本身包括一個或多個中央處理單元(“CPU”),系統存貯器,其本身可包括高速緩存存貯器,外圍設備,以及連接系統總線至外圍總線的外圍主橋(“PHB”)。
此外,具有多處理器的現代數據處理系統可以實現一種共享存貯器環境。在這樣的環境中,在一個節點中的一個處理器或多個處理器可以存取其它節點中的存貯器。實現多節點上共享存貯器的典型環境是非均勻存貯器存取(NUMA)環境和只高速緩存存貯器存取(COMA)環境。另外,在這些系統中希望通過每個節點中的設備實現既到本地存貯器也到遠距離存貯器的直接存貯器存取(DMA)。
在這樣一種NUMA或COMA系統中的節點通過一種稱為“編織器”的設備連接,這種設備傳遞在其間的事務。越過編織器的節點對節點的事務可以包括對I/O設備的加載/存貯(L/S)操作和DMA對等關系的事務,除非編織器包括一種事務排序的機構,否則這些事務可能引起相干性損失。相干性抑制可以由每個節點中CPU的結構強加上的,也可以由每個節點中總線的結構強加上的。此外,事務排序必須被強加上以避免死鎖及保證在I/O中斷后系統相干域中的數據。因此,在技術上需要一種設備與方法,用于在一種共享存貯器環境中連接多重節點的編織器上實現事務排序規則。
本發明解決了上面提到的需要。因此,在此以第一形式提供包括編織器橋的一種數據處理系統。該編織器橋用于在數據處理系統中的節點之間傳遞事務,編織器控制節點間事務的順序,其中,編織橋確定前面事務和后繼事務的排序。該排序是后繼事務可以繞過前面的事務,必須繞過前面的事務,和不允許繞過前面的事務之中的一種,其中所述的事務序列包括對輸入/輸出(I/O)設備的加載/存貯(L/S),和直接存貯器存取(DMA)對等關系事務。
在此也以第二形式提供一種數據處理系統中節點之間傳遞事務的方法。此方法包括步驟通過確定前面事務和后繼事務的排序來控制節點間事務順序,該排序是后繼事務可以繞過前面的事務,必須繞過前面的事務,和不允許繞過前面的事務之中的一種,其中所述的事務序列包括對輸入/輸出(I/O)設備的加載存貯(L/S),和直接存貯器存取(DMA)對等關系事務。
此外,在此以第三形式提供一種可操作的計算機程序產品,用于在程序存貯媒介上存貯,此程序產品可用于在數據處理系統中節點之間的事務傳遞。該程序產品包括通過確定前面事務與后繼事務的排序來控制節點之間事務的順序的編程,該排序是后繼事務可以繞過前面事務,必須繞過前面事務,和必須不繞過前面事務之中的一種,其中所述的事務序列包括對輸入/輸出(I/O)設備的加載/存貯(L/S),和直接存貯器存取(DMA)對等關系的事務。
以上已經相當廣泛扼要地敘述了本發明的特征和技術優點,以便更好地理解后續的發明詳述。以下將描述本發明另外的特征和優點,這些構成本發明的權利要求的主題。
為了更全面地理解本發明,及其優點,在此參考結合附圖所做的下列描述,其中

圖1用作說明依據本發明的一個實施方案的一種共享存貯器數據處理系統;圖2A以方框圖的形式,用作說明依據本發明的一個實施方案的一種編織器橋;圖2B以方框圖的形式,用作說明依據本發明的一種替代的實施方案的一種編織器橋;圖3以流程圖的形式,用作說明依據本發明的一種實施方案的一種事務排序方法;和圖4以表格形式,說明由圖3中的方法實現的排序規則。
本發明提供一種機構,用于在一個共享資源數據處理系統環境中通過連接多重節點的一個編織器對L/S到I/O,DMA對等關系事務,L/S到系統存貯器和DMA到系統存貯器排序。越過編織器的L/S和DMA事務由對事務排序的一個狀態機構控制。此狀態機構確定依據預先規定的規則組一個后繼的事務是否可以繞過一個前面的事務。在總線橋中的事務排序已經公開在共同指定的美國專利No.5,694,556 to Neal,etal中,引入于此作為參考,本發明提供一種在NUMA或COMA環境中事務排序的機構。
在以下的描述中,為了對本發明的透徹理解,闡明了許多專門的細節。然而,對本領域的技術人員來說是顯然的,即沒有這樣一些專門的細節本發明也可被實現,另外,大家熟知的電路用方框圖形式示出,以便不讓本發明在不必要的細節中弄得含糊不清,對于大多數部分來說,與定時考慮有關的細節以及對于本發明的充分理解是不必要的并且在有關技術領域的專業人員的技能范圍內的細節均被略去。
現參看附圖,其中所描述的部件并不必要按比例示出,并且相同或類似的部件在幾個圖中用相同的參考數字標記。
現參看圖1,用作說明依據本發明的原理的一種多重節點數據處理系統100,每個節點102包括許多,N個,連接到系統總線106的CPU 104,系統存貯器部分,存貯器108也包括在每個節點中,并被連到系統總線106上。
外圍設備位于外圍總線110上,并通過外圍主橋(PHB)112接合到系統總線。另外,外圍設備,譬如設備114,可以位于一個或多個子總線116上,而這些子總線通過外圍對外圍(在圖1上標記為PtP)橋連到外圍總線110,這樣一種實施方案可被采用是為了滿足關于外圍總線110的扇出技術指標。例如,在本發明的實施方案中,外圍總線110可以是一種外圍部件互聯(PCI)總線,其中這種類型的每個總線支持在總線上十個負載。然而,熟悉常規技術的技術人員將理解,本發明可被提供在共享存貯器數據處理系統的其它實施方案中而并不限于外圍總線110是PCI總線的系統。
節點102通過編織器120連接,編織器120包括編織器橋122和多重節點編織器互聯126。在第一節點102內的設備,如CPU104或外圍設備114之一可以參與另一個節點102中的另一個設備或存貯器的事務,這些事務由編織器橋122傳遞,編織器橋122和多重節點編織器互聯126,例如,在本發明的一個實施方案中可以是一個可比相干接口(SCI),或,替換為一個電子切換編織器。在本發明的一個實施方案中,編織橋122可以傳遞到I/O的加載/存貯事務。另外,事務可包括DMA對等關系事務,雖然在圖1中的系統100已被說明為具有四個節點102,熟悉常規技術的技術人員將理解,依據本發明的原理,一個多重節點數據處理系統100可以包括任何預先規定的節點數102,這樣一種實施方案將在本發明的精神與范圍內。
現參看圖2,用作更詳細地說明編織器橋122。橋122通過多重節點編織器互聯126連到每個節點,在節點和橋之間傳送數據和控制信號,控制信號通知互聯事務已被執行,在事務中要傳遞的數據可被安置在緩沖器202中,例如,對于一個用DMA操作方式對系統存貯器的延時讀請求來說,在第一節點102中的請求設備114可以試圖對物理上位于第二節點102中的存貯器108為目標進行讀請求,此讀請求被緩存在編織器橋122中。然后編織器橋122將此請求傳交給第二節點102中的存貯器108,從第二,目的地,節點102中的存貯器108接收到的數據可以存貯在緩沖器202中并被轉交給請求的PHB112,然后當請求設備114再次試圖其請求時提供給請求設備114。
在系統總線106上PHB 112執行指定給另一個節點102的事務請求由請求節點102中的編織器橋112接受。然后這些事務在緩沖器202中緩存,由控制和路由邏輯204接收,狀態機構206執行控制各個節點間的事務的操作,在圖2B中所示的編織器橋122的一種替代實施方案中,CPU205依據存貯在存貯器207中指令程序作為排序規則狀態機構起作用。在節點102上來自或去系統的事務在節點接口208上出或入編織器橋,同樣地,來自或去其它節點102的事務在編織器連接接口210上出或入編織器橋。
在節點102之間的事務在圖1中的編織器120上被連續地傳遞。為了保持數據連貫性和遵守可由CPU104和外圍總線110加上的適當的排序限制,狀態機構206或,替換為在存貯器207中的指令控制下的CPU205,必須執行事務排序規則,由此后繼事務的執行受前面事務的制約,換句話說,狀態機構206或,替換為CPU205由一套排序規則確定何時可以允許后續事務在前面事務前執行,如果已有臨時性失速的話,必須允許在前面事務以前執行,或者必須按次序執行,也就是說不允許在前面事務以前執行,狀態機構206或CPU205依據在圖3中以流程圖形式示出的方法300確定排序。
現參看圖3,以流程圖形式示出的一種對圖1的編織器122中的事務排序的方法300,支持對I/O設備的L/S操作,對等關系DMA事務,和對系統存貯器的L/S以及對系統存貯器的DMA。此外,CPU 104可以執行對總線事務強制排序的指令,例如,Power PC結構(“Power PC”是IBM公司的一個商標)執行Sync和eieio(強制按次序執行I/O)指令。執行Sync指令保證在Sync指令以前的所有Load和store指令在程序執行經過Sync指令以前的總線上被完成,eieio指令的執行使所有在執行eieio指令以前的Load和store指令,在任何執行eieio指令以后可被發出的寫操作以前,為在總線上執行作記號。方法300在步驟302中開始,并在步驟304中確定是否允許對I/O事務L/S。如果在步驟304中允許對I/O作L/S,那末在步驟306中,確定是否前面的事務是DMA操作或者對系統存貯器的L/S或者eieio或Sync事務。如果不是,方法300在步驟308中確定,是否前面的事務是L/S對I/O或者來自I/O的加載。如果不是,方法300在步驟310中繼續確定是否允許DMA對等關系事務。
然而,如果在步驟308中,前面的事務是L/S對I/O或來自I/O的加載,在步驟312中確定是否后繼的事務是對系統存貯器的L/S或來自系統存貯器的加載完成。如果是的,那末在步驟314中后續的事務被允許繞過前面的事務,方法300在步驟399結束。可是,若在步驟312中后繼的事務不是對系統存貯器的L/S,或者來自系統存貯器的加載完成,那末在步驟316中,確定是否后繼事務是eieio或Sync事務。如果在步驟316中,后繼事務是eieio或Sync,那末在步驟318中方法300確定后繼事務不允許繞過前面的對I/O的L/S或來自I/O的加載完成。然而,如果在步驟316中,后繼事務不是eieio或sync事務,那末方法300在步驟320中確定是否后繼事務是對系統存貯器的DMA讀。如果是的,那末在步驟314中確定后繼事務可以繞過前面的事務,否則在步驟321中確定,是否后繼事務是對系統存貯器的DMA寫,如果是的,在步驟324中,此事務必須被允許繞過,否則,在步驟322中確定是否后繼事務是來自系統存貯器的DMA讀完成并且前面的事務不是加載完成。如果是的,在步驟324中確定必須允許繞過。如果,在步驟322中后繼事務不是DMA讀完成或前面的事務不是加載完成,那末,在步驟326中確定是否對等關系傳送被允許。如不是,在步驟328中辨識后繼事務或者是加載或者是存貯到I/O,否則,在步驟326中,如果對等關系的事務被允許,確定是否后繼事務是加載或存貯到I/O。如果是的,或者,如果在步驟326中,已確定不允許對等關系的事務,和因此后繼事務必須或者是加載或者是存貯到I/O,在步驟332中確定是否前面的L/S到I/O或來自I/O的加載完成以及后繼的L/S到I/O是到相同的目的地地址。如果是的,在步驟318中確定不允許繞過。可是,如果目的地地址與步驟332中的不相同,在步驟314中確定可以允許繞過。
如果在步驟326中對等關系被允許,并且在步驟330中,后繼的事務不是L/S到I/O,那末,在步驟334中確定是否后繼事務是對I/O的DMA寫或對系統存貯器的DMA寫。如果是的,確定在步驟324中必須允許繞過。可是,如果在步驟334中后繼事務不是對I/O的DMA寫或對系統存貯器的DMA寫,確定在步驟336中是否后繼事務是對I/O的讀請求。如果是的,對I/O的后繼讀請求可以繞過前面的對I/O的L/S或來自I/O的加載完成,步驟314。可是如果后繼事務不是對I/O的讀,方法300確定在步驟338中是否后繼事務是來自I/O的DMA讀完成和前面的事務,在步驟308中是來自I/O的加載完成,如果不是,在步驟340中確定,是否后繼事務是對I/O的DMA讀,然而若在步驟338中,后繼事務是來自I/O的DMA讀完成,在步驟308中前面事務是來自I/O的加載完成,那末在步驟314中可以允許繞過,如果,在步驟340中確定后繼事務是對I/O的DMA讀和在步驟342中,事務是到相同的目的地,那末前面的來自I/O的加載完成被后繼的來自I/O的讀完成繞過必須被允許,步驟324。否則,在步驟314中此事務被允許繞過。
回到步驟306,如果確定,前面的事務是對系統存貯器的DMA操作或L/S,或者eieio或者sync,那末在步驟344中確定,是否后繼事務是對系統存貯器的DMA操作或加載或存貯。如果后繼事務是對系統存貯器的DMA操作或L/S,那末方法300,在步驟346中,按對系統存貯器L/S和DMA事務排序的方法對事務排序,后述的方法描述在共同未決,共同指定的美國專利申請中,標題是“Apparatus and Method for FafricOrdering of Load/Store and Direct Memory Access Transactions,”引入于此作為參考。可是如果在步驟344中,后繼事務不是對系統存貯器的DMA操作或L/S操作,那末,在步驟346中確定,是否來自步驟306的前面事務是對系統存貯器的L/S或來自系統存貯器的加載完成。如果是的,在步驟348中確定是否對等關系的事務被允許。如果不是,那末方法300確定,在步驟350中是否后繼事務或者是對I/O的加載或存貯,或者是來自I/O的加載完成,如果是的,在步驟314中確定前面的事務被后繼的L/S或加載完成繞過可以被允許。如果不是,方法300回到步驟399。
否則,如果在步驟348中對等關系的事務被允許,在步驟352中確定,是否后繼事務是對I/O的DMA寫或對系統存貯器的DMA寫,如果是的,在步驟234中后繼的對I/O或系統存貯器的DMA寫必須被允許繞過來自步驟346的前面的對系統存貯器的L/S或來自系統存貯器的加載完成。
然而,如果在步驟352中后繼的事務不是對I/O或系統存貯器的DMA寫,那末在步驟354中確定,是否后繼事務是對I/O的L/S或來自I/O的加載完成。如果是的,那末在步驟346,314中后繼事務可被允許繞過前面的對系統存貯器的L/S或來自系統存貯器的加載完成。然而,如在步驟354中,后繼的事務不是對I/O的L/S或來自I/O的加載完成,那末,在步驟356中確定是否后繼的事務是對I/O的DMA讀或來自I/O的DMA讀完成,如果是的,后繼的DMA讀在步驟356中可被允許繞過,在步驟314中,前面的在步驟346中被確定的對系統存貯器的L/S或來自系統存貯器的加載完成。否則,方法300走到步驟399。
回到步驟346,如果確定前面的事務不是對系統存貯器的L/S或來自系統存貯器的加載完成,在步驟358中確定是否前面的事務是eieio或sync。如果是的,在步驟360中確定是否后繼事務是對I/O的加載或存貯。如果是的,后繼的對I/O的加載或存貯,在步驟318中不允許繞過前面的eieio或sync。否則,方法300在步驟362中辨識,后繼事務是來自I/O的加載完成,并且在步驟314中前面的eieio或sync,來自步驟358,可允許被后繼的來自步驟362的來自I/O的讀完成繞過。
回到步驟358。如果前面的事務不是eieio或sync,那末在步驟364中,方法300辨識前面的事務是DMA系統存貯器操作,并且在步驟366中確定是否后繼的事務是來自I/O的讀完成和前面的事務不是對系統存貯器的DMA寫,或者是否后繼的事務是對I/O的L/S。如果是的,那末在步驟314中后繼事務可被允許繞過前面的DMA系統存貯器操作。否則,在步驟368中確定是否DMA對等關系的事務被允許。如果不是,在步驟370中,方法300辨識,后繼事務是來自I/O的加載完成和前面事務是對系統存貯器的DMA寫,后繼的來自I/O的加載完成不允許繞過前面的對系統存貯器的DMA寫,后繼的來自I/O的加載完成不允許繞過前面的DMA寫。這是因為前面的對系統存貯器的DMA寫在完成后繼事務,即來自I/O的加載完成以前必須是完全地連貫的。
然而,如果在步驟368中DMA對等關系事務被允許,那末在步驟372中確定,是否前面的事務是對系統存貯器的DMA讀或來自系統存貯器的DMA讀完成并且后繼事務或者是對I/O的DMA讀或來自I/O的DMA讀完成或者前面事務是對系統存貯器的DMA寫以及后繼事務或者是對I/O的DMA讀或寫或來自I/O的DMA讀完成。如果前面的和后繼的事務滿足這些條件組之一,那末在步驟314中,后繼事務可被允許繞過前面的事務。如果在步驟372中,前面的和后繼的事務被確定不滿足這些條件組之一,那末在步驟374中方法300確定,是否后繼事務是對系統存貯器的DMA寫或者來自I/O的加載完成,前面的事務是對系統存貯器的DMA寫。
如果后繼的和前面的事務滿足此條件,那末,在步驟318中,后繼事務,或者是對系統存貯器的DMA寫或來自I/O的加載完成不允許繞過前面的對系統存貯器的DMA寫。否則,在步驟376中,方法300確定是否后繼事務或者是對系統存貯器的DMA寫或者對I/O的DMA寫并且在前面事務中的DMA或者是對系統存貯器的DMA讀請求或者是來自系統存貯器的DMA讀完成。如果是的,在步驟324中確定后繼的事務或者是對系統存貯器的DMA寫或者是對I/O的DMA寫必須允許繞過前面的DMA讀請求或讀完成,否則,方法300走到步驟399。
再次回到步驟306,如果前面的事務既不是DMA操作也不是對系統存貯器的L/S或者eieio或sync,那末在步驟308中確定,是否前面事務是對I/O的L/S或者來自I/O的加載完成。來自步驟308的“是”通路在以上已描述過了。如果在步驟308中確定是否前面事務不是對I/O的L/S或者來自I/O的加載完成,那末方法300回到步驟310,并確定是否DMA對等關系事務被允許,如果不是,那末方法300對事務排序采用L/S和DMA對系統存貯器的排序協議,描述在共同擁有,共同未決的美國專利申請中,標題是“Appratns and Method for Fafric Orderingfor Load/Store and Direct Memory Accecc Transactions”,引入于此作為參考。
然而,如果在步驟310中,DMA對等關系事務被允許,在步驟378中方法300辨識前面的事務是DMA對等關系的操作,其中,所有其它的可能性已在前面考慮過了。在步驟379中確定是否前面的事務是對I/O的DMA讀或寫。如果是的,在步驟381中確定,是否后繼事務是來自系統存貯器的DMA讀完成。如果是的,在步驟324中,后繼事務必須被允許繞過,否則方法走到步驟399,如果在步驟379中,無通路可取,則本方法進行到步驟380。然后在步驟380中確定,是否后繼事務是對I/O或系統存貯器的L/S,或者來自I/O或系統存貯器的加載完成或eieio或sync事務,如果是的,在步驟382中進一步確定,是否后繼事務是對系統存貯器的加載,如果不是,在步驟314中前面的事務被后繼的事務繞過被允許,后繼的事務可以是對I/O的加載或存貯,或對系統存貯器存貯,或者來自I/O或系統存貯器的加載完成,或者eieio或sync,來自步驟380,然而,如果后繼事務是對系統存貯器的加載,那末進一步在步驟385中確定,是否前面和后繼的事務是到不同的節點或目標I/O設備,如果是的,在步驟314中,對系統存貯器的后繼加載,在步驟382中,可被允許繞過前面的事務,否則,如果在步驟385中,后繼的對系統存貯器的加載是到與前面的事務相同的節點,那末在步驟318中,對系統存貯器的后繼的加載不允許繞過前面的事務,因為前面的事務必須在后繼事務以前完成。
回到步驟380,如果后繼事務不是對I/O或系統存貯器的L/S,或來自I/O或系統存貯器的加載完成,或者eieio或sync,那末在步驟384中確定是否前面的事務是對I/O的DMA讀或來自I/O的DMA讀完成。如果是的,在步驟386中確定是否后繼事務是對系統存貯器的DMA寫,或者對I/O的DMA寫。如果是的,那末在步驟324中確定后繼事務必須被允許繞過前面的對I/O的DMA讀,或者來自I/O的DMA讀完成。如果在步驟386中,確定后繼事務不是對系統存貯器的DMA寫,或來自系統存貯器的DMA讀完成,或對I/O的DMA寫,在步驟387中確定是否前面的事務是來自I/O的DMA讀完成。如果不是,方法300進行到步驟399。否則,在步驟383確定是否后繼事務是來自系統存貯器的DMA讀完成。如果是的,前面的事務可以被繞過,步驟314。否則方法300在步驟399中結束。
如果在步驟384中前面的事務不是對I/O的DMA讀或者來自I/O的DMA讀完成,在步驟388中確定是否后繼事務是來自I/O的DMA讀完成。如果是的,在步驟389中,方法300確定是否前面的事務是對I/O的DMA寫或對I/O的DMA讀,如果是的,在步驟324中確定后繼的來自I/O的DMA讀完成,步驟389,必須被允許繞過前面的步驟389中的DMA事務。然而如果在步驟389中前面事務不是對I/O的DMA寫或對I/O的DMA讀,方法300辨認,在步驟390中,前面的事務是來自I/O的DMA讀完成,并且在步驟314中確定,后繼的來自I/O的DMA讀完成,步驟388,可以被允許繞過前面的來自I/O的DMA讀完成。
然而,如果在步驟388中確定,后繼的事務不是來自I/O的DMA讀完成,在步驟391中確定,是否前面的事務是對I/O的DMA寫,如果不是,在步驟392中,方法300辨認前面的事務必須是對I/O的DMA讀或來自I/O的DMA讀完成,通過步驟386到達步驟392,后繼事務必須是對I/O的DMA讀或對系統存貯器的DMA讀。然后,在步驟314中,后繼的對I/O的DMA讀或對系統存貯器的DMA讀可被允許繞過前面的對I/O的DMA讀或來自I/O的DMA讀完成。
可是若在步驟391中前面的事務是對I/O的DMA寫,那末在步驟393中確定是否后繼事務是對I/O的DMA讀或寫,如果不是,那末辨認后繼事務是對系統存貯器的讀或寫,步驟394,和在步驟314中后繼的對系統存貯器的DMA讀或寫可以被允許繞過前面的對I/O的DMA寫。
可是如在步驟393中確定后繼事務是對I/O的讀或寫,在步驟395中進一步確定是否后繼事務是對I/O的DMA寫。如果是的,后繼的對I/O的DMA寫不允許繞過前面的對I/O的DMA寫,步驟318。然而,如果在步驟395中后繼事務不是對I/O的DMA寫。那末,在步驟396中辨認后繼事務必須是對I/O的DMA讀。那末,在步驟385中確定是否后繼的對I/O的DMA讀和前面的對I/O的DMA寫,來自步驟391,是到不同的節點或目標I/O設備。如果是的,那末在步驟314中,后繼的DMA讀可被允許繞過前面的DMA寫。然而,如果在步驟385中,后繼的DMA讀是與前面的DMA寫到相同的節點或目標I/O設備,那末后繼的DMA讀必須不繞過前面的DMA寫,步驟318,那末方法300在步驟399中結束。
可將方法300實施的排序協議扼要敘述在圖4的表中。在圖4中的表規定了事務對的組,這些組按表中相應的入口指明的順序排序,其中“A”指明前面的/后繼的事務,其中后繼事務可被允許繞過前面的事務,“Y”指明后繼事務必須被允許繞過前面的事務,和“N”指明后繼事務一定不允許繞過前面的前務。
本發明提供一種機構,用于在多節點,NUMA/COMA數據處理環境中編織器橋。在包括在編織器橋中的狀態機構的控制下,通過橋交換的節點之間的事務可依據由狀態機構執行的方法排序。橋對由橋傳遞的事務排序,使得連接性要求被保持,死鎖被避免。
權利要求
1.一種數據處理系統包括一個編織器橋,用于在所述的數據處理系統中的節點之間傳遞事務,所述的編織器橋用于控制所述的節點之間事務的順序,其中所述的編織器橋確定前面事務與后繼事務的排序,所述的排序就是所述的后繼事務可被允許繞過,必須允許繞過,和必須不允許繞過所述的前面事務之中的一種,其中所述的事務序列包括對輸入/輸出(I/O)設備的加載/存貯(L/S),和直接存貯器存取(DMA)對等關系的事務。
2.根據權利要求1的數據處理系統,其中所述的排序是當所述的第一和第二事務分別處于第一,第二和第三預先規定的事務對組時,所述的后繼事務可被允許繞過,所述的后繼事務必須被允許繞過,和所述的后繼事務必須不允許繞過。
3.根據權利要求1的數據處理系統,其中所述的編織橋依據預定的協議確定所述的事務排序。
4.根據權利要求2的數據處理系統,其中所述的第一、第二和第三組是依據預定的協議確定的。
5.根據權利要求1的數據處理系統,其中所述的編織器橋進一步包括控制電路,用于控制所述節點之間事務的順序,所述的控制電路確定所述的前面事務和所述的后繼事務的排序。
6.根據權利要求5的數據處理系統,其中所述的控制電路包括一個狀態機構,所述的狀態機構依據一種預定的協議確定所述的前面事務和所述的后繼事務的排序。
7.根據權利要求5的數據處理系統進一步包括至少一個緩沖器,用于存貯事務信息,所述的緩沖器對來自所述的控制電路的信號作出響應傳送事務信息。
8.根據權利要求1的數據處理系統,其中所述的事務序列進一步包括對系統存貯器的直接存貯器存取(DMA)和對系統存貯器的加載/存貯。
9.根據權利要求8的數據處理系統,其中所述的事務序列還包括eieio和sync事務。
10.根據權利要求1的數據處理系統還包括中央處理單元(CPU),連接到所述編織器橋,每個CPU用于產生所述的事務序列的一個或多個事務。
11.一種在數據處理系統中的節點之間傳遞事務的方法包括以下步驟通過確定前面事務和后繼事務的排序控制所述節點之間事務的順序,所述的排序是所述的后繼事務可被允許繞過所述的前面事務,必須被允許繞過所述的前面事務,和必須不允許繞過前面事務中的一種,其中所述的事務序列包括對輸入/輸出(I/O)設備的加載/存貯(L/S),和直接存貯器存取(DMA)對等關系的事務。
12.根據權利要求11的方法,其中所述的排序是當所述的第一和第二事務分別處于第一、第二和第三預定的事務對組時,所述的后繼事務可被允許繞過,所述的后繼事務必須被允許繞過,和所述的后繼事務必須不允許繞過前面的事務。
13.根據權利要求11的方法,其中所述的事務排序是依據預定的協議確定的。
14.根據權利要求12的方法,其中所述的第一,第二和第三組是依據預定的協議確定的。
15.根據權利要求11的方法,其中控制所述的事務順序的步驟包括提供控制電路,用于控制所述的節點之間的事務順序,所述的控制電路確定所述的前面事務和所述的后繼事務的排序。
16.根據權利要求15的方法,其中所述的控制電路包括一個狀態機構,所述的狀態機構依據預定的協議確定所述的前面事務和所述的后繼事務的排序。
17.根據權利要求15的方法,其中控制所述的事務順序的步驟進一步包括提供至少一個緩沖器,用于存貯事務信息,和對來自所述的控制電路的信號作出響應,通過所述的緩沖器傳遞事務信息。
18.根據權利要求11的方法,其中所述的事務序列進一步包括對系統存貯器的直接存貯器存取(DMA)和對系統存貯器的加載/存貯。
19.根據權利要求18的方法,其中所述的事務序列還包括eieio和sync指令。
20.根據權利要求11的方法,其中所述的事務序列包括進一步或多個中央處理單元(CPU)產生的事務。
21.一種計算機程序產品,用于在程序存貯媒介上存貯,程序產品用于在數據處理系統中的節點之間傳遞事務,程序產品包括通過確定前面事務和后繼事務的排序,編程控制所述的節點之間事務的順序,所述的排序是所述的后繼事務可被允許繞過前面事務,必須被允許繞過和必須不允許繞過前面事務中的一種,其中所述的事務序列包括對輸入/輸出(I/O)設備的加載/存貯(L/S),和直接存貯器(DMA)對等關系事務。
22.根據權利要求21的程序產品,其中所述的排序是當所述的第一和第二事務分別是第一、第二和第三預定的事務對組之一時,所述的后繼事務可被允許繞過,所述的后繼事務必須被允許繞過,和所述的后繼事務必須不允許被繞過,所述的前面事務。
23.根據權利要求21的程序產品,其中所述的事務排序依據預定協議確定。
24.根據權利要求22的程序產品,其中所述的第一,第二和第三組是依據預定協議確定的。
25.根據權利要求21的程序產品,其中所述的用于控制所述的事務順序的編程包括對控制所述的節點之間的事務順序的控制電路編程,所述的控制電路對所述的編程作出響應確定所述的前面事務和所述的后繼事務的排序。
26.根據權利要求25的程序產品,其中所述的控制電路包括狀態機構,所述的狀態機構對所述的編程作出響應,依據預定的協議確定所述的前面事務和所述的后繼事務的排序。
27.根據權利要求25的程序產品,其中對所述的控制事務順序的編程進一步包括對控制至少一個用于存貯事務信息的緩沖器的編程;和對來自所述的控制電路的信號作出響應通過所述的緩沖器傳遞事務信息編程。
28.根據權利要求21的程序產品,其中所述的事務序列進一步包括對系統存貯器的直接存貯器存取(DMA)和對系統存貯器的加載/存貯。
29.根據權利要求28的程序產品,其中所述的事務序列還包括eieio和sync指令。
30.根據權利要求21的程序產品,其中所述的事務序列包括由一個或多個中央處理單元(CPU)產生的事務。
全文摘要
實現一種在數據處理系統中越過編織器傳遞事務序列的設備和方法。編織器橋依據預定的協議將前面事務與后繼事務排序。利用協議確定是否后繼事務可被允許繞過前面事務,必須被允許繞過前面事務,或必須不允許繞過前面事務。事務包括加載/存貯(L/S)系統存貯器和對輸入/輸出(I/O)設備的L/S,以及對系統存貯器的直接存貯器存取(DMA)和DMA對等關系事務。
文檔編號G06F13/40GK1259702SQ9912476
公開日2000年7月12日 申請日期1999年12月9日 優先權日1998年12月28日
發明者D·M·尼爾, S·M·瑟伯 申請人:國際商業機器公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1