用于設備間通信的方法和系統,從第一設備輸出一個信號,響應該信號,第二和第三設備啟動至少一個動作,輸出第二和第三設備是否完成了上述動作的一個指示,在第三設備不重新啟動上述動作的情況下,第一設備響應表示第二設備未能完成上述動作及第三設備完成了上述動作的指示,重新輸出上述信號。(*該技術在2015年保護過期,可自由使用*)
【技術實現步驟摘要】
本專利技術總的方面涉及信息處理系統,而具體地涉及。在信息處理系統中,設備間是能夠互相交換信息的。通過輸出一個操作信號,設備能在受到其它總線設備監聽的一條系統總線上啟動一個總線操作。自系統總線上總線操作啟動后的一個預定的或可變的等待時間之后,各監聽總線的設備(即監聽操作信號的設備)通過系統總線輸出一個監聽應答指示給主總線設備(即啟動總線操作的設備)。監聽應答指示是為響應相應的總線操作而產生的。在一個強有序系統中,這些監聽應答指示與它們各自的總線操作以相同的次序出現,從而總線操作與監聽應答指示是互相強有序的。然而,某些以前的強有序系統的一個缺點是在等待所有前面的總線操作的完成時,延遲了后續總線操作的完成。即使通過其他方式能夠完成后續總線操作,也會延遲其完成。某些先有技術曾試圖通過支持地址“重試(Retry)”監聽應答指示來改善這一缺點。響應這一地址“重試”監聽應答指示,能夠完成后續總線操作。通過稍后的重新輸出操作信號,主總線設備重新啟動系統總線上的“重試”總線操作。然而,這種“重試”技術的一個缺點是重新啟動的總線操作(為響應較早的“重試”監聽應答指示而重復進行的)再一次受到每一個監聽總線的設備的監聽并完全按其行動(諸如讀取監聽設備的高速緩存中的狀態位)。另一缺點是當只采用一種“重試”技術時,可能引起死鎖。例如,如果一個監聽設備完成了其響應總線操作的動作,而另一個監聽設備尚未完成其向應總線操作的動作并相應地輸出了一個地址“重試”應答指示,這時便可能產生一個往復死鎖。稍后,主總線設備在系統總線上重新啟動“重試”總線操作。由于每一個監聽總線的設備再一次監聽重新啟動的總線操作并完全按其行動,便有可能使第二個監聽設備能夠響應重新啟動的總線操作完成其動作,而第一個監聽設備則不能響應重新啟動的總線操作而完成其動作,從而輸出一個地址“重試”監聽應答指示。這一序列事件能無限期地重復進行下去,其間第一個與第二個設備交替地輪流輸出一個地址“重試”監聽應答指示。作為另一個例子,如果監聽總線的設備的未來操作依賴于主總線設備稍后重復“重試”總線操作,而由于某種原因主總線設備未能重復“重試”總線操作,便可能產生死鎖。而另一方面,如果要求主總線設備總是重復“重試”總線操作,則主總線設備會由于不能具有不重復“重試”總線操作的選擇而喪失可貴的靈活性。因此,存在著對在等待所有前面的總線操作的完成時,后續總線操作不受到延遲的一種用于設備間通信的方法與系統的需求。同時,還存在著對不要求每一個監聽總線的設備去監聽重復的總線操作并完全按其行動的一種用于設備間通信的方法與系統的需求。再者,存在著對不容易產生死鎖的一種用于設備間通信的方法與系統的需求。另外,還存在著對主總線設備保持具有不重復總線操作的選擇的靈活性的一種用于設備間通信的方法與系統的需求。在一種用于設備間通信的方法與系統的第一方面中,從一個第一設備輸出一個信號。響應該信號,一個第二設備啟動至少一種動作。輸出表示第二設備是否完成了該動作與第二設備的操作是否與第一設備重新輸出該信號無關的一個指示。在一種用于設備間通信的方法與系統的第二方面中,從一個第一設備輸出一個信號。響應該信號,第二與第三設備啟動至少一種動作。輸出第二與第三設備是否完成了該動作的一個指示。第三設備不重新啟動該動作,第一設備響應表示第二設備未能完成該動作及第三設備完成該動作的指示,重新輸出該信號。本專利技術的一個技術優點是在等待所有前面的總線操作的完成的同時,不延遲后面的總線操作的完成。本專利技術的另一個技術優點是并不要求每一個監聽總線的設備去監聽一個重復的總線操作并完全按其行動。本專利技術的又一個技術優點是不易產生死鎖。本專利技術的再一個技術優點是一個主總線設備能保持具有不重復一個總線操作的可選擇的靈活性。參見下述說明與附圖,能更好地理解本專利技術的一個示例性實施例及其優點,附圖中附圖說明圖1為按照一個示例性實施例的信息處理系統的結構框圖;圖2a-b為該信息處理系統通過圖1的系統總線所執行的示例操作的示意圖;以及圖3a-b為圖1的信息處理系統所執行的操作的流程圖。參見附圖中的圖1-3b,能更好地理解本專利技術的一個示例性實施例及其優點,圖中相同的數字用于附圖中相同的與對應的部件。圖1為總體上用10指示的按照一個示例性實施例的信息處理系統的方框圖。信息處理系統10包括多個總線設備12、14、16與18。更具體地,設備12是一個第一處理器設備(此后稱作“處理器A”),而設備14則為一個第二處理器設備(此后稱作“處理器B”)。再者,設備16為一個總線適配器設備(此后稱作“BA”),而設備18則為一個存儲設備。處理器A、處理器B與BA16按照示例性實施例操作,如下面結合圖2a-b與3a-b進一步討論的。設備12、14、16與18通過一條系統總線20互相連接。從而,設備12、14、16與18通過系統總線20互相傳遞信息。在圖1的示例性實施例中,系統總線20包含一條64位地址總線22、一條128位數據總線24、一條8位數據標記(“Dtag”)總線26及一條10位控制/狀態總線28。此外,BA16連接到一條附加總線30上。從而,BA16作為系統總線20與總線30之間的接口進行操作。以這一方式,設備12、14與18通過BA16與系統總線20將信息傳遞給連接在總線30上的一個或多個其它設備(未示出)。使用按照示例性實施例的一種重新運行(ReRun)技術,相對于操作在系統總線20上啟動的次序來說系統10支持非順序的(即弱有序的)共享總線操作的“完成”,通過輸出一個操作信號,一個總線設備便能在受到其它總線設備監聽的系統總線20上啟動一個總線操作。響應該操作信號,各監聽總線的設備(即監聽該操作信號的各設備)啟動一個動作。例如,該動作可以是讀取監聽設備的高速緩存中的狀態位。作為另一例子,該動作可以是BA16通過總線30確定來自連接在總線30上的一個或多個其它設備(未示出)的一種遠程狀態。再者,在總線20上啟動總線操作后某一預定的等待時間之后,各監聽總線的設備通過系統總線20同時向主總線設備(即啟動總線操作的設備)輸出一個監聽應答指示。該監聽應答指示表示監聽總線的設備是否完成了它響應操作信號先前啟動的動作。值得注意的是,一個監聽設備沒有輸出信號(即一個“空”應答指示)本身被認為是一個監聽應答指示。無論系統總線20對于監聽應答指示是流水線的還是完全互鎖的,或者該監聽應答指示從啟動總線操作后,是持續一個固定的還是可變的等待時間的,重新運行技術都是可應用的。在示例性實施例中,響應各自的總線操作產生相應的監聽應答指示,這些監聽應答指示與其各自的總線操作以相同次序產生,從而總線操作與監聽應答指示之間是互相強有序的。然而,對總線操作的應答不一定非指示總線操作的“完成”不可。因此,使用按照示例性實施例的重新運行技術,總線操作相對于在系統總線20上啟動這些操作的次序是可以不按次序“完成”的(即弱有序的)。從而,在較佳實施例的一個顯著方面中,系統10根據總線操作與系統10的狀態,支持一個特定的監聽設備完成動作所需的等待時間的變化,這一動作是該監聽總線的設備響應操作信號而在前面啟動的。按照示例性實施例的重新運行技術,一個或多個總線監聽設備能向主總線設備輸出一個表示主總線設備有必本文檔來自技高網...
【技術保護點】
設備間通信的一種方法,包括下述步驟:從一個第一設備輸出一個信號;響應上述信號,第二與第三設備啟動至少一個動作;輸出一個上述第二與第三設備是否完成了上述動作的指示;以及在上述第三設備不重新啟動上述動作的情況下,上述第一設備響應表示上述第二設備未能完成上述動作及上述第三設備完成了上述動作的上述指示,重新輸出上述信號。
【技術特征摘要】
...
【專利技術屬性】
技術研發人員:MS艾倫,RK阿里密爾里,JM凱澤,WK盧丘克,
申請(專利權)人:國際商業機器公司,摩托羅拉公司,
類型:發明
國別省市:US[美國]
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。