<listing id="vjp15"></listing><menuitem id="vjp15"></menuitem><var id="vjp15"></var><cite id="vjp15"></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><menuitem id="vjp15"></menuitem></video></cite>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<var id="vjp15"><strike id="vjp15"><listing id="vjp15"></listing></strike></var>
<menuitem id="vjp15"><strike id="vjp15"></strike></menuitem>
<cite id="vjp15"></cite>
<var id="vjp15"><strike id="vjp15"></strike></var>
<var id="vjp15"></var>
<var id="vjp15"></var>
<var id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></var>
<menuitem id="vjp15"></menuitem><cite id="vjp15"><video id="vjp15"></video></cite>
<var id="vjp15"></var><cite id="vjp15"><video id="vjp15"><thead id="vjp15"></thead></video></cite>
<var id="vjp15"></var>
<var id="vjp15"></var>
<menuitem id="vjp15"><span id="vjp15"><thead id="vjp15"></thead></span></menuitem>
<cite id="vjp15"><video id="vjp15"></video></cite>
<menuitem id="vjp15"></menuitem>

高速周邊組件連接接口設備的熱插拔系統及其方法

文檔序號:6558853閱讀:284來源:國知局
專利名稱:高速周邊組件連接接口設備的熱插拔系統及其方法
技術領域
本發明涉及一種實現設備熱插拔的系統及其方法,尤其涉及一種高速周邊組件連接接口設備的熱插拔系統及其方法。
背景技術
高速周邊組件連接接口(Peripheral Component Interface Express,簡稱PCI-E)作為周邊組件連接接口(Peripheral Component Interface,簡稱PCI)總線的革新,其保持了軟件和PCI總線的兼容性,并用高速串行總線代替了并行總線。
熱插拔(Hot Plug)是一種內核向用戶態應用通報關于熱插拔設備一些事件發生的機制,在不關機的狀態下,桌面操作系統能夠利用它對設備進行有效的管理。
回想以往的PCI總線以及PCI-E總線的發展歷程,起初并沒有針對熱插拔的應用,后來由于工業應用的需要,支持熱插拔的機制才得以出現,但是在一些操作系統中,仍不能很好地支持PCI-E設備的熱插拔。
雖然PCI-E總線支持熱插拔功能,但是在不關機的情況下,將適配卡直接放進插槽,將使主機板或適配卡陷入容易毀損的狀況。因此對服務器維護時如果需要添加或者移除PCI-E設備,當前的做法是關機,將PCI-E設備插入或者拔出PCI-E總線,然后重新啟動機器。因為需要重新啟動機器,系統所提供的服務被中斷,降低了系統可用性、可靠性和可擴展性。

發明內容
為了解決上述現有技術中的問題與缺陷,本發明的目的在于提供一種PCI-E設備的熱插拔系統及其方法。
本發明所提供的一種PCI-E設備的熱插拔系統,包含數個PCI-E設備插槽,對應于每一PCI-E總線,以供數個PCI-E設備熱插拔于數個PCI-E總線;數個PCI-E設備插槽電路板,對應于每一PCI-E設備插槽,用以連接數個PCI-E設備至數個PCI-E設備插槽并且提供用以輔助熱插拔設備的模塊;數個注意按鍵,一一對應地設置于數個PCI-E設備插槽電路板上,用以向監視模塊發送PCI-E設備插槽的設備熱插拔請求;控制模塊,用以控制連接在數個PCI-E設備插槽的數個PCI-E設備插槽電路板的狀態以及注意按鍵;供電模塊,用以對數個PCI-E設備插槽提供獨立電源支持并且進行電源狀態檢測;監視模塊,用以監視數個注意按鍵的狀態;以及PCI-E熱插拔核心作業模塊,用以完成對數個PCI-E設備的起始化以及釋放和釋放PCI資源。
本發明所提供的一種PCI-E設備的熱插拔方法,包含以下步驟當有PCI-E設備插入時,根據用戶的設置為PCI-E設備加電并且釋放PCI資源,啟動驅動程序;起始化PCI-E設備的控制模塊與供電模塊;啟動數個PCI-E設備插槽的執行序;啟動監視執行序;以及當移除PCI-E設備時,根據用戶的設置為PCI-E設備釋放PCI資源并且斷電。
本發明通過硬件與軟件結合,實現了PCI-E設備的熱插拔,并在需要添加或者移除PCI-E設備時,無須重新啟動機器,增加了系統的可用性、可靠性和可擴展性。
以下結合附圖和具體實施例對本發明進行詳細描述,但不作為對本發明的限定。


圖1為本發明的PCI-E設備的熱插拔系統的系統方塊圖;圖2為本發明的一實施例的PCI-E設備插槽電路板的結構示意圖;圖3為本發明的PCI-E設備的熱插拔方法的方法流程圖;圖4為本發明中啟動數個PCI-E設備插槽的執行序的方法流程圖;圖5為本發明中依據PCI-E插槽的狀態進行加電或者斷電的方法流程圖;以及圖6為本發明中啟動監視執行序的方法流程圖。
其中,附圖標記1 SM總線2 PCI-E總線
3 服務器10 插槽20 電路板21 注意按鍵22 手動適配卡固定拴鎖23 提示模塊24 手動適配卡固定拴鎖傳感器30 控制模塊40 供電模塊50 監視模塊60 核心作業模塊步驟100 當有PCI-E設備插入時,根據用戶的設置為PCI-E設備加電并且釋放PCI資源,啟動驅動程序步驟200 起始化PCI-E設備的控制模塊與供電模塊步驟300 啟動數個PCI-E設備插槽的執行序步驟400 啟動監視執行序步驟500 當移除PCI-E設備時,根據用戶的設置為PCI-E設備釋放PCI資源并且斷電步驟310 是否有注意按鍵按下步驟320 清除注意按鍵狀態步驟330 是否有適配卡插入PCI-E插槽步驟331 記錄錯誤訊息步驟340 檢查手動適配卡固定拴鎖是否鎖定步驟341 記錄錯誤訊息步驟350 發出提示訊息步驟360 是否有注意按鍵按下步驟361 清除注意按鍵狀態步驟362 清除提示訊息步驟370 根據PCI-E插槽的狀態進行加電或者斷電步驟3701 自控制模塊中讀取PCI-E插槽的狀態步驟3702 PCI-E插槽是否加電步驟3703 呼叫PCI-E熱插拔核心作業模塊步驟3704 呼叫是否成功步驟3705 釋放PCI-E插槽上的PCI-E設備所需要的資源步驟3706 熄滅電源提示LED步驟3707 記錄錯誤訊息步驟3708 呼叫PCI-E熱插拔核心作業模塊釋放PCI-E插槽上的PCI-E設備所需要的資源步驟3709 呼叫是否成功步驟3710 點亮電源提示LED步驟3711 清除控制模塊與供電模塊中信息步驟3712 記錄錯誤訊息步驟410 查詢PCI-E設備插槽相對應的注意按鍵的狀態步驟420 等待一段時間步驟430 確認注意按鍵的狀態,記錄為注意按鍵的先前狀態步驟440 查詢注意按鍵的當前狀態步驟450 清除PCI-E設備插槽相對應的注意按鍵狀態步驟460 設置PCI-E設備插槽相對應的注意按鍵的狀態為按下具體實施方式
有關本發明的特征與實施例,茲配合附圖作最佳實施例詳細說明如下。
請參考圖1,圖中表示了本發明的PCI-E設備的熱插拔系統的系統方塊圖,此系統包含數個PCI-E設備插槽10,以供數個PCI-E設備熱插拔于數個PCI-E總線2;數個PCI-E設備插槽電路板20,對應于每一PCI-E設備插槽10,用以連接數個PCI-E設備至數個PCI-E設備插槽10并且提供用以輔助熱插拔設備的模塊,現請參考圖2,圖中表示了本發明的一實施例的PCI-E設備插槽電路板的結構示意圖,每一PCI-E設備插槽電路板20包含注意按鍵21,一一對應設置于各PCI-E設備插槽電路板20上,用以向監視模塊50發送PCI-E設備插槽的設備熱插拔請求;手動適配卡固定拴鎖22(Manually-operatedRetention Latch,簡稱MRL)用以確保數個PCI-E設備連接至各PCI-E設備插槽電路板20上;提示模塊23,用以表明當前每一PCI-E設備的熱插拔狀態以及當前每一PCI-E設備的電源狀態;手動適配卡固定拴鎖傳感器24,用以檢測手動適配卡固定拴鎖22的狀態以確認數個手動適配卡固定拴鎖22是否正確閉合;控制模塊30,用以控制數個PCI-E設備插槽電路板20的狀態以及相對應的數個注意按鍵;供電模塊40,用以對數個PCI-E設備插槽10提供獨立電源支持并且進行電源狀態檢測;系統管理總線(System Management Bus,簡稱SM Bus)1,與PCI-E總線2一同位于服務器3端,用以接收控制模塊30與供電模塊40的信息;監視模塊50,用以監視數個輔助熱插拔設備的模塊的狀態;以及PCI-E熱插拔核心作業模塊60,用以完成數個PCI-E設備的起始化以及釋放和釋放PCI資源。
現在請參考圖3,此圖為本發明的PCI-E設備的熱插拔方法的方法流程圖,如圖所示,本發明的PCI-E設備的熱插拔方法包含以下步驟當有PCI-E設備插入時,根據用戶的設置為PCI-E設備加電并且釋放PCI資源,啟動驅動程序(步驟100);起始化PCI-E設備的控制模塊與供電模塊(步驟200);啟動數個PCI-E設備插槽的執行序(步驟300),步驟300將在下文中做進一步解釋;同時,啟動監視執行序(步驟400),步驟400將在下文中做進一步解釋;當移除PCI-E設備時,根據用戶的設置為PCI-E設備釋放PCI資源并且斷電(步驟500)。
在本發明的一實施例中,上述方法主要實現的功能為當用戶插入PCI-E設備時,為設備加電、釋放PCI資源,加載驅動程序。當移除PCI-E設備時,為設備釋放PCI資源,斷電等。此外還要負責對各提示信息的控制,將PCI-E設備當前狀態以面板指示燈的形式正確地告訴用戶。
現在請參考圖4,此圖為本發明中啟動數個PCI-E設備插槽的執行序的方法流程圖,如圖所示,本發明的啟動數個PCI-E設備插槽的執行序的方法包含以下步驟查詢是否有注意按鍵按下(步驟310);若無注意按鍵按下則重新開始;若有注意按鍵按下,則清除注意按鍵的狀態(步驟320);監測是否有適配卡插入PCI-E插槽(步驟330);若無適配卡插入PCI-E插槽,則記錄錯誤訊息(步驟331)并且重新開始;若有適配卡插入PCI-E插槽,則檢查手動適配卡固定拴鎖是否鎖定(步驟340);若手動適配卡固定拴鎖未鎖定,則記錄錯誤訊息(步驟341)并且重新開始;若手動適配卡固定拴鎖已鎖定,則發出提示訊息(步驟350);再次查詢是否有注意按鍵按下(步驟360);若有注意按鍵按下,則清除注意按鍵的狀態(步驟361)并且清除提示訊息(步驟362)然后重新開始;若注意按鍵未按下,則根據PCI-E插槽的狀態進行加電或者斷電(步驟370),步驟370將在下文中做進一步解釋。
在本發明的一實施例中,上述執行序采用輪詢機制對特定PCI-E插槽的狀態進行監視,當插槽上所對應的PCI-E設備插槽電路板面板上的注意按鍵被按下后,此執行序將檢查此插槽上PCI-E設備插槽電路板中是否有適配卡,及手動適配卡固定拴鎖是否閉合,若手動適配卡固定拴鎖處于閉合狀態,并且有適配卡,則此插槽所對應的PCI-E設備插槽電路板上的注意按鍵的LED(發光二極管)開始閃爍,5秒鐘之后,如果用戶沒有再次按下注意按鍵,此執行序將根據此插槽當前狀態進行加電或斷電,否則,操作取消,此插槽狀態不變。在對此插槽進行加電后,此執行序會向PCI-E熱插拔核心作業模塊發送一個信息,使其為此PCI-E設備釋放資源并起始化,在斷電前,會事先通知PCI-E熱插拔核心作業模塊,待其將此PCI-E設備所需要的資源釋放后,方可斷電。
現在請參考圖5,此圖為本發明中依據PCI-E插槽的狀態進行加電或者斷電的方法流程圖,如圖所示,依據PCI-E插槽的狀態進行加電或者斷電的方法包含以下步驟自控制模塊中讀取PCI-E插槽的狀態(步驟3701);判斷PCI-E插槽是否加電(步驟3702);若PCI-E插槽加電,則呼叫PCI-E熱插拔核心作業模塊(步驟3703);判斷呼叫是否成功(步驟3704);若呼叫成功,則釋放PCI-E插槽上的PCI-E設備所需要的資源(步驟3705);并且熄滅電源提示LED(步驟3706);若呼叫未成功,則記錄錯誤訊息(步驟3707);若PCI-E插槽未加電,則呼叫PCI-E熱插拔核心作業模塊釋放PCI-E插槽上的PCI-E設備所需要的資源(步驟3708);判斷呼叫是否成功(步驟3709);若呼叫成功則點亮電源提示LED(步驟3710);若呼叫未成功,則清除控制模塊與供電模塊中信息(步驟3711);并且記錄錯誤訊息(步驟3712)。
上述執行序位于啟動數個PCI-E設備插槽的執行序中,對根據PCI-E插槽的狀態進行加電或者斷電的執行序。當確定要對某個插槽進行操作后,首先從控制模塊中讀取插槽的當前狀態,若此插槽當前沒有加電,則進行加電操作,若此插槽已經加電,則進行斷電操作。在本發明的一實施例中,加電操作過程為給此插槽加電,并點亮相應的PCI-E設備插槽電路板上的電源LED,向PCI-E熱插拔核心作業模塊發送訊息,使其為PCI-E設備釋放資源和進行起始化,若釋放資源失敗,將此插槽斷電并熄滅電源LED。斷電操作過程為通知PCI-E熱插拔核心作業模塊將此插槽上的PCI-E設備所需要的資源釋放,若成功,則將PCI-E設備插槽斷電并熄滅電源LED,否則不斷電,并且不改變此插槽狀態。
現在請參考圖6,此圖為本發明中啟動監視執行序的方法流程圖,如圖所示,本發明的啟動監視執行序的方法包含以下步驟查詢PCI-E設備插槽相對應的注意按鍵的狀態(步驟410);若此注意按鍵的狀態為抬起,則清除PCI-E設備插槽相對應的注意按鍵狀態(步驟450)并且返回步驟410。若此注意按鍵的狀態為按下,則等待一段時間(步驟420);然后確認注意按鍵的狀態,記錄為注意按鍵的先前狀態(步驟430);若此注意按鍵的先前狀態為抬起,則查詢注意按鍵的當前狀態(步驟440);若此注意按鍵的當前狀態為按下,則設置PCI-E設備插槽相對應的注意按鍵的狀態為按下(步驟460),若此注意按鍵的先前狀態為按下,則清除PCI-E設備插槽相對應的注意按鍵的狀態(步驟450)并且返回步驟410;若此注意按鍵的先前狀態為按下,而注意按鍵的當前狀態也為抬起,則清除PCI-E設備插槽相對應的注意按鍵狀態(步驟450)并且返回步驟410。
上述監視執行序主要負責監視注意按鍵的狀態,由于硬件上的設計使得儲存注意按鍵狀態的緩存器在注意按鍵被按下時表現為按下,而在其抬起后表現為沒有被按下,換言之,注意按鍵的一個按下動作表現為一個脈沖,這給程序對注意按鍵是否按下的識別造成了困難,因此要不停對注意按鍵的狀態進行輪詢,才可以正確地查詢注意按鍵的狀態。監視執行序總是儲存上一次輪詢的狀態,并將其和當前輪詢所得到的結果進行比較,若上一次輪詢的狀態是抬起,而本次為按下,則認為用戶確實按下了注意按鍵,其它情況不與理睬,從而有效地避免了長時間按下注意按鍵而被多次輪詢為按下注意按鍵的情況發生。
當然,本發明還可有其它多種實施例,在不背離本發明精神及其實質的情況下,熟悉本領域的技術人員當可根據本發明作出各種相應的改變和變形,但這些相應的改變和變形都應屬于本發明所附的權利要求的保護范圍。
權利要求
1.一種高速周邊組件連接接口設備的熱插拔系統,其特征在于,該系統包含數個高速周邊組件連接接口設備插槽,對應于每一高速周邊組件連接接口總線,以供數個高速周邊組件連接接口設備熱插拔于數個高速周邊組件連接接口總線;數個高速周邊組件連接接口設備插槽電路板,對應于每一高速周邊組件連接接口設備插槽,用以連接數個高速周邊組件連接接口設備至所述各高速周邊組件連接接口設備插槽并且提供用以輔助熱插拔設備的模塊;數個注意按鍵,一一對應設置于所述各高速周邊組件連接接口設備插槽電路板上,用以向一監視模塊發送一高速周邊組件連接接口設備插槽的設備熱插拔請求;一控制模塊,用以控制連接在數個高速周邊組件連接接口設備插槽的數個高速周邊組件連接接口設備插槽電路板的狀態以及該注意按鍵;一供電模塊,用以對數個高速周邊組件連接接口設備插槽提供獨立電源支持并且進行電源狀態檢測;一監視模塊,用以監視所述各注意按鍵的狀態;以及一高速周邊組件連接接口熱插拔核心作業模塊,用以完成對數個高速周邊組件連接接口設備的起始化以及釋放和釋放周邊組件連接接口資源。
2.根據權利要求1所述的高速周邊組件連接接口設備的熱插拔系統,其特征在于,所述各高速周邊組件連接接口設備插槽電路板進一步包含數個手動適配卡固定拴鎖,用以確保數個高速周邊組件連接接口設備連接至所述各高速周邊組件連接接口設備插槽電路板上;以及數個提示模塊,用以表明當前每一PCI-E設備的熱插拔狀態以及當前每一高速周邊組件連接接口設備的電源狀態。
3.根據權利要求2所述的高速周邊組件連接接口設備的熱插拔系統,其特征在于,所述各高速周邊組件連接接口設備插槽電路板進一步包含數個手動適配卡固定拴鎖傳感器,用以檢測所述各手動適配卡固定拴鎖的狀態以確認所述各手動適配卡固定拴鎖是否正確閉合。
4.一種高速周邊組件連接接口設備的熱插拔方法,其特征在于,該方法包含以下步驟當有一高速周邊組件連接接口設備插入時,根據用戶的設置為該高速周邊組件連接接口設備加電并且釋放一周邊組件連接接口資源,啟動一驅動程序;起始化該高速周邊組件連接接口設備的一控制模塊與一供電模塊;啟動數個高速周邊組件連接接口設備插槽的執行序;啟動一監視執行序;以及當移除該高速周邊組件連接接口設備時,根據用戶的設置為該高速周邊組件連接接口設備釋放該周邊組件連接接口資源并且斷電。
5.根據權利要求4所述的高速周邊組件連接接口設備的熱插拔方法,其特征在于,啟動數個高速周邊組件連接接口設備插槽的執行序的步驟進一步包含如下步驟按下一注意按鍵;清除該注意按鍵的狀態;檢查該高速周邊組件連接接口插槽中是否有一適配卡插入;若無適配卡插入,則記錄一錯誤訊息;若有適配卡插入,則檢查一手動適配卡固定拴鎖是否鎖定;若該手動適配卡固定拴鎖未鎖定,則記錄一錯誤訊息;若該手動適配卡固定拴鎖已鎖定,則向用戶發出一提示訊息;若該提示訊息發出后,再次按下該注意按鍵,則清除該注意按鍵的狀態并且清除該提示訊息;以及若該提示訊息發出后,未再次按下該注意按鍵,則根據該高速周邊組件連接接口插槽的狀態進行加電或者斷電。
6.根據權利要求5所述的高速周邊組件連接接口設備的熱插拔方法,其特征在于,向用戶發出該提示訊息的方式為通過一發光二極管閃爍并持續閃爍一定時間。
7.根據權利要求5所述的高速周邊組件連接接口設備的熱插拔方法,其特征在于,根據該高速周邊組件連接接口插槽的狀態進行加電或者斷電的步驟進一步包含如下步驟自該控制模塊中讀取該高速周邊組件連接接口插槽的狀態;若該高速周邊組件連接接口插槽已經加電,則呼叫一高速周邊組件連接接口熱插拔核心作業模塊;若呼叫未成功,則記錄一錯誤訊息;若呼叫成功,則該高速周邊組件連接接口熱插拔核心作業模塊釋放該高速周邊組件連接接口插槽上的該高速周邊組件連接接口設備所需要的資源;若釋放該高速周邊組件連接接口設備所需要的資源成功,則該高速周邊組件連接接口插槽斷電并且熄滅一電源LED;若釋放該高速周邊組件連接接口設備所需要的資源未成功,則該高速周邊組件連接接口插槽的狀態不改變;若該高速周邊組件連接接口插槽未加電,則呼叫該高速周邊組件連接接口熱插拔核心作業模塊,以對該高速周邊組件連接接口插槽上的該高速周邊組件連接接口設備釋放一周邊組件連接接口資源并且進行起始化;若呼叫未成功,則清除該控制模塊與該供電模塊中的信息并且記錄一錯誤訊息;以及若呼叫成功,則該高速周邊組件連接接口插槽加電并且點亮該電源LED。
8.根據權利要求5所述的高速周邊組件連接接口設備的熱插拔方法,其特征在于,啟動一監視執行序的步驟進一步包含如下步驟查詢該高速周邊組件連接接口設備插槽相對應的該注意按鍵的狀態;若該注意按鍵的狀態為按下,則等待一段時間后,確認該注意按鍵的狀態,并記錄為該注意按鍵的先前狀態;若該注意按鍵的先前狀態為按下,則清除該高速周邊組件連接接口設備插槽相對應的該注意按鍵的狀態,并查詢下一高速周邊組件連接接口設備插槽相對應的該注意按鍵的狀態;若該注意按鍵的先前狀態為抬起,則查詢該注意按鍵的當前狀態;若該注意按鍵的當前狀態為抬起,則查詢下一高速周邊組件連接接口設備插槽相對應的該注意按鍵的狀態;以及若該注意按鍵的當前狀態為按下,則設置該高速周邊組件連接接口設備插槽相對應的該注意按鍵的狀態為按下。
全文摘要
一種高速周邊組件連接接口PCI-E設備的熱插拔系統及其方法,通過硬件與軟件結合,實現PCI-E設備的熱插拔,并在需要添加或者移除PCI-E設備時,無須重新啟動機器,增加了系統的可用性、可靠性和可擴展性。當有PCI-E設備插入時,將根據用戶的設置為此PCI-E設備加電并且釋放PCI資源,啟動驅動程序;接著起始化PCI-E設備的控制模塊與供電模塊;而后啟動多個PCI-E設備插槽的執行序;同時啟動監視執行序;而當移除此PCI-E設備時,則根據用戶的設置為此PCI-E設備釋放PCI資源并且斷電。
文檔編號G06F13/40GK101082894SQ20061008348
公開日2007年12月5日 申請日期2006年5月30日 優先權日2006年5月30日
發明者王紀東, 李晨, 陳玄同, 劉文涵 申請人:英業達股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
韩国伦理电影