本發明涉及一種服務器故障檢測系統及方法。
背景技術:
:傳統的服務器故障檢測通常借助于平臺管理控制器(BaseboardManagementController,簡稱BMC)獲取服務器系統內的各個異常事件,并通過LED驅動器顯示將異常事件顯示出來。然而,由于BMC的運算能力有限,當BMC需處理的資源過多而無法工作時,該服務器系統的異常事件將無法被呈現,從而,會產生故障檢測中斷,導致技術人員無法進行故障檢測的問題。技術實現要素:鑒于以上內容,有必要提供一種能實時監控系統異常事件,并能即時將異常事件呈現的服務器故障檢測系統及方法。一種服務器故障檢測系統,該服務器故障檢測系統包括:一現場可編程陣列,用于檢測系統中相應位置的故障事件,并輸出該故障事件的邏輯電平信號;及一用戶介面,包括一顯示器及一處理單元,所述處理單元用于接收所述故障事件的邏輯電平信號,并判斷該故障事件的邏輯電平信號的邊緣狀態是否存在變化,若存在變化,則處理單元輸出故障信息至顯示器。一種服務器故障檢測方法,應用于一服務器故障檢測系統中,該方法包括步驟:檢測服務器系統中的故障事件;將該故障事件以邏輯電平的形式輸出;判斷該故障事件的邏輯電平信號的邊緣狀態是否存在變化,若存在變化,則輸出故障信息。相較于現有技術,本發明的服務器故障檢測系統及方法通過現場可編程陣列能實時偵測服務器系統的故障事件,并通過用戶介面的處理單元將該故障事件處理后呈現于顯示器,從而,為使用者提供實時、直觀、可靠的故障事件提示,以提高檢測效率。附圖說明圖1是本發明服務器故障檢測系統較佳實施例的的示意圖。圖2是本發明服務器故障檢測系統的用戶介面的較佳實施例的方框圖。圖3是本發明服務器故障檢測方法中故障事件由現場可編程陣列到用戶介面的較佳實施例的流程圖。圖4是本發明服務器故障檢測方法中用戶介面處理故障事件的較佳實施例的流程圖。主要元件符號說明服務器故障檢測系統10現場可編程陣列11用戶介面12異常事件檢測單元110寄存器轉換級電路112鎖存模組201處理器模組202串口傳輸器113、114第一檢測單元1101第二檢測單元1102第三檢測單元1103第四檢測單元1104設定單元1105顯示器120處理單元122選擇單元1221判斷單元1222檢測單元1223控制單元1224輸出單元1225如下具體實施方式將結合上述附圖進一步說明本發明。具體實施方式下面結合附圖及較佳實施方式對本發明作進一步詳細描述:參考圖1,是服務器故障檢測系統10較佳實施例的示意圖。在本實施例中,所述的服務器故障檢測系統10包括,但不僅限于,一現場可編程陣列11及一用戶介面12。所述現場可編程陣列11包括一異常事件檢測單元110及一寄存器轉換級(RegisterTransferLevel,簡稱RTL)電路112。所述RTL電路112包括一鎖存模組201及一處理器模組202。所述異常事件檢測單元110通過一串口傳輸器113與鎖存模組201相連,所述處理器模組202通過一串口傳輸器114與用戶介面12相連。在本實施例中,所述串口傳輸器113及114采用RS232串行總線進行串口之間的數據傳輸。在本實施例中,所述異常事件檢測單元110包括,但不僅限于,第一檢測單元1101、第二檢測單元1102、第三檢測單元1103、第四檢測單元1104及一設定單元1105。所述第一檢測單元1101用于檢測服務器中處理器、存儲器及芯片組的是否存在故障。所述第二檢測單元1102用于檢測服務器中備用保險絲芯片是否存在故障。所述第三檢測單元1103用于檢測服務器中各個供電電源是否存在故障。所述第四檢測單元1104用于檢測服務器中各個穩壓器是否存在故障。每一檢測單元檢測系統中相應位置的故障事件,并將該故障事件以邏輯電平的形式輸出。所述設定單元1105用以接收所述第一至第四檢測單元的檢測到的故障信號的邏輯電平,并將該些故障信號的邏輯電平設定統一的故障狀態值,例如:邏輯“0”。所述鎖存模組201用于接收所述異常事件檢測單元110偵測到的故障狀態值,以將該故障事件的故障狀態值暫存以維持某種電平狀態,避免該故障狀態值受后續信號的影響而改變電平狀態。所述處理器模組202為基于32位的精簡指令集計算機(ReducedInstruction-SetComputer,簡稱RISC)架構的軟微處理器,在本實施例中,該處理器模組202為LatticeMico32芯片。所述處理器模組202通過基本輸入輸出(GeneralPurposeInput/Output,GPIO)接口與鎖存模組201相連,并用以接收所述鎖存模組201輸出的暫存后的故障狀態值的邏輯電平信號。所述該處理器模組202將該故障狀態值的邏輯電平信號通過串口傳輸器114傳遞至用戶介面12。請參照圖2,所述用戶介面12包括一顯示器120及一處理單元122,所述處理單元122包括一選擇單元1221、一判斷單元1222、一檢測單元1223、一控制單元1224及一輸出單元1225。所述選擇單元1221用以選擇一待檢測的串口,以接收所述故障事件的邏輯電平信號。所述判斷單元1222判斷串口是否選擇成功。所述選擇單元1221還用以選擇該串口的波特率,以設定該串口通信時的速率,并傳遞給所述判斷單元1222判斷串口波特率是否匹配成功。所述判斷單元1222還用以檢測每一串口是否存在串口連線,若不存在,則所述控制單元1224控制輸出單元1225輸出一串口初始化失敗的信息,并提示用戶是否繼續操作,若用戶選擇繼續,則所述控制單元1224清空串口的緩存數據,并掃描串口的數據。所述檢測單元1223還用于檢測數據傳輸的起始位置和結束位置,并根據起始位置和結束位置來獲取傳輸的數據,并檢測數據邊緣狀態。所述判斷單元1222還用于判斷該數據邊緣狀態是否存在上升沿,若存在上升沿,則輸出單元1225輸出一故障提示信息至所述顯示器120。所述判斷單元1222還用于判斷所有的數據邊緣狀態是否檢測完畢,若沒有檢測完畢,則繼續檢測數據邊緣狀態;若檢測完畢,則結束進程。參考圖3所示,是應用于上述服務器故障檢測系統10的故障檢測方法中故障事件由現場可編程陣列到用戶介面的較佳實施例的流程圖,步驟包括如下:步驟S301,所述異常事件檢測單元110通過每一檢測單元檢測系統中相應位置的故障事件,并將該故障事件以邏輯電平的形式輸出。步驟S302,所述設定單元1105接收所述每一檢測單元的檢測到的故障信號的邏輯電平,并將該些故障信號的邏輯電平設定統一的故障狀態值,例如:邏輯“0”。步驟S303,所述鎖存模組201接收所述異常事件檢測單元110偵測到的故障狀態值,以將該故障事件的故障狀態值暫存以維持某種電平狀態。步驟S304,所述處理器模組202通過GPIO接口接收所述鎖存模組201輸出的暫存后的故障狀態值的邏輯電平信號,并將該故障狀態值的邏輯電平信號通過串口傳輸器114傳遞至用戶介面12的串口。參考圖4所示,為用戶介面12接收到所述現場可編程陣列11輸出的故障狀態值的邏輯電平信號,并進行處理的的較佳實施例的流程圖,該處理步驟包括如下:步驟S401,所述選擇單元1221選擇用戶介面12的一待檢測的串口,以接收所述故障事件的邏輯電平信號,在本實施例中,串口的選擇包括通過檢測單元1223檢查串口驅動程序。步驟S402,所述判斷單元1222判斷所述串口選擇是否選擇成功,若未成功選擇串口,則返回步驟S401;若成功選擇串口,則執行步驟S403。步驟S403,所述選擇單元1221選擇該串口的波特率,以設定該串口通信時的速率,并傳遞給所述判斷單元1222。步驟S404,所述判斷單元1222判斷串口波特率是否匹配成功,若匹配成功則執行步驟S405,若未匹配成功,則返回步驟S403。步驟S405,判斷單元1222檢測每一串口是否存在串口連線,若不存在,則執行步驟S406;若存在,則執行步驟S408。步驟S406,所述控制單元1224控制輸出單元1225輸出一對話框以顯示串口初始化失敗的信息。步驟S407,輸出單元1225輸出的對話框提示用戶是否繼續操作,若用戶選擇繼續,則執行步驟S408;若用戶選擇不繼續,則關閉該對話框以結束進程。步驟S408,控制單元1224清空串口的緩存數據,并掃描該串口的數據。步驟S409,所述檢測單元1223檢測數據傳輸的起始位置和結束位置,以確定獲取數據的字符區間范圍。在本實施例中,先檢測起始位置,當起始位置確定好后,再檢測結束位置。步驟S410,所述檢測單元1223根據起始位置和結束位置來獲取傳輸的數據,并檢測該數據的邊緣狀態,在本實施例中,該數據的邊緣狀態是指該數據的邊緣處的邏輯電平狀態。步驟S411,所述判斷單元1222判斷該數據邊緣狀態是否存在上升沿,若存在上升沿,則執行步驟S412;若不存在上升沿,則返回步驟S410。步驟S412,輸出單元1225輸出一故障提示信息至所述顯示器120,以提示用戶故障事件發生的位置及類型。步驟S413,所述判斷單元1222判斷所有的數據的邊緣狀態是否檢測完畢,若沒有檢測完畢,則返回步驟S410;若已經檢測完畢,則結束進程。綜上,通過上述服務器故障檢測系統及方法,能夠實時、準確、不間斷地完成服務器故障檢測工作。以上實施例僅用以說明本發明的技術方案而非限制,盡管參照以上較佳實施例對本發明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發明的技術方案進行修改或者等同替換都不應脫離本發明技術方案的精神和范圍。當前第1頁1 2 3