本發(fā)明涉及電源監(jiān)控技術(shù)領(lǐng)域,尤其涉及一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法及裝置。
背景技術(shù):
云服務(wù)、大數(shù)據(jù)的使用越來越廣泛,并且得到高速的發(fā)展,需要存儲的數(shù)據(jù)規(guī)模越來越大、越來越重要。相應(yīng)地,存儲設(shè)備的穩(wěn)定性、數(shù)據(jù)量的規(guī)模也越來越大。電源是整個系統(tǒng)動力的源泉,電源的穩(wěn)定性決定了整個系統(tǒng)的穩(wěn)定性,要想系統(tǒng)穩(wěn)定必須確保電源的穩(wěn)定性。因此,亟需一種能夠?qū)崟r有效反饋出系統(tǒng)中多個電源模塊運行狀態(tài)的技術(shù)。
技術(shù)實現(xiàn)要素:
針對以上技術(shù)問題,本發(fā)明的目的是提供一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法及裝置,加強了電源狀態(tài)的監(jiān)管,有效保證了系統(tǒng)運行的穩(wěn)定性。
下面對本發(fā)明中出現(xiàn)的名詞進行解釋說明:
復(fù)雜可編程邏輯器件:英文全稱Complex Programmable Logic Device,簡稱CPLD,是從一次編程器件(PAL)和可重復(fù)編程器件(GAL)發(fā)展出來的器件,相對而言規(guī)模大,結(jié)構(gòu)復(fù)雜,屬于大規(guī)模集成電路范圍,是一種用戶根據(jù)各自需要而自行構(gòu)造邏輯功能的數(shù)字集成電路。
集成電路總線:英文全稱Inter-Integrated Circuit,簡稱IIC總線,是一種多向控制總線,也就是說多個芯片可以連接到同一總線結(jié)構(gòu)下,同時每個芯片都可以作為實時數(shù)據(jù)傳輸?shù)目刂圃?,簡化了信號傳輸總線接口。
寄存器:用于存放二進代碼的電路,主要分并行寄存器和移位寄存器兩種。
全局時鐘:英文全稱Global Clock,在一個同步時序電路中,所有的觸發(fā)器都由一個共同的外部時鐘線控制,這條時鐘線通常稱為全局時鐘。每個全局時鐘都有一個時鐘控制模塊(Clock Control Block)。
Power Good信號:簡稱P.G.或P.OK信號,該信號是直流輸出電壓檢測信號和交流輸入電壓檢測信號的邏輯,與TTL信號兼容。當(dāng)電源接通之后,如果交流輸入電壓在額定工作范圍之內(nèi),且各路直流輸出電壓也已達到它們的最低檢測電平(+5V輸出為4.75V以上),那么經(jīng)過100ms~500ms的延時,P.G.電路發(fā)出“電源正?!钡男盘枺≒.OK為高電平)。當(dāng)電源輸入交流電壓降至安全工作范圍以下或+5電壓低于4.75V時,電源送出“電源故障信號”(Power Fall,低電平)。
上位機:是指可以直接發(fā)出操控命令的計算機,一般是PC/host computer/master computer/upper computer,屏幕上顯示各種信號變化。
比特位:即Bit位,是計算機最小的存儲單位,以0或1來表示比特位的值,愈多的比特位數(shù)可以表現(xiàn)愈復(fù)雜的圖像信息。
為達到上述目的,本發(fā)明通過以下技術(shù)方案實現(xiàn):
本發(fā)明提供一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法,包括:
將多個電源狀態(tài)信號寫入到相應(yīng)CPLD的寄存器中;
上位機讀取CPLD的寄存器的值;
根據(jù)CPLD的寄存器的值,判斷電源狀態(tài);
定位出故障電源。
優(yōu)選地,在將多個電源狀態(tài)信號寫入到相應(yīng)CPLD的寄存器中之前,還包括:對多個電源狀態(tài)信號進行同步、消抖處理,并用于系統(tǒng)的上電、下電全局時鐘控制。
優(yōu)選地,在定位出故障電源之前,還包括:關(guān)閉外圍部件的電路。
優(yōu)選地,所述將多個電源狀態(tài)信號寫入到相應(yīng)CPLD的寄存器中,包括:
在CPLD相應(yīng)的寄存器中編寫IIC Slave程序;
將多個電源狀態(tài)信號的Bit位和CPLD的全局時鐘控制一起寫入到IIC的寄存器中。
優(yōu)選地,上述根據(jù)CPLD的寄存器的值,判斷電源狀態(tài),包括:CPLD的寄存器的值若為低電平,則判定對應(yīng)電源為故障電源;若為高電平,則電源為正常電源。
優(yōu)選地,上述電源狀態(tài)信號為電源的Power Good信號。
本發(fā)明還提供了一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控裝置,包括:
監(jiān)控模塊,用于將多個電源狀態(tài)信號寫入到CPLD相應(yīng)的寄存器中;
數(shù)據(jù)讀取模塊,用于上位機讀取CPLD的寄存器的值;
判斷模塊,用于根據(jù)CPLD的寄存器的值,判斷電源狀態(tài),CPLD的寄存器的值若為低電平,則判定對應(yīng)電源為故障電源;若為高電平,則電源為正常電源;
故障處理模塊,用于關(guān)閉外圍部件的電路,定位出故障電源。
優(yōu)選地,還包括:濾波模塊,用于對多個電源狀態(tài)信號進行同步、消抖處理,并用于系統(tǒng)的上電、下電全局時鐘控制。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果如下:
1.本發(fā)明是基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法,因為整個系統(tǒng)中CPLD的電源是一直存在的,保證了CPLD的寄存器的值是不會丟失的;
2.本發(fā)明通過對多個電源的Power Good信號進行同步、消抖處理,防止產(chǎn)生異步信號和雜質(zhì)的抖動信號,防止出現(xiàn)亞穩(wěn)態(tài)造成CPLD狀態(tài)的不穩(wěn)定,并將Power Good信號用于系統(tǒng)的上電、下電全局時鐘控制,保證了整個系統(tǒng)的正常上電;又在CPLD相應(yīng)的寄存器中編寫IIC Slave程序,將多個電源狀態(tài)信號的Bit位和CPLD的全局時鐘控制一起寫入到IIC的寄存器中,方便了上位機讀取CPLD的寄存器的值;
3.本發(fā)明通過多個電源狀態(tài)信號與CPLD的寄存器的對應(yīng)存儲關(guān)系,在判斷出故障電源之后,方便定位出故障電源,以便相關(guān)人員及時進行維護;
4.本發(fā)明通過CPLD對系統(tǒng)中多個電源狀態(tài)的監(jiān)控,可及時發(fā)現(xiàn)對應(yīng)電源的故障問題,能夠及時做出數(shù)據(jù)備份處理,防止數(shù)據(jù)的丟失,加強了系統(tǒng)多個電源狀態(tài)的監(jiān)管,有效保證系統(tǒng)運行的穩(wěn)定性。
附圖說明
圖1為本發(fā)明一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法的流程示意圖之一。
圖2為本發(fā)明一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法的流程示意圖之二。
圖3為本發(fā)明一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控裝置的結(jié)構(gòu)示意圖之一。
圖4為本發(fā)明一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控裝置的結(jié)構(gòu)示意圖之二。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
下面結(jié)合附圖和具體實施方式對本發(fā)明一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法及裝置作進一步地說明:
實施例1
如圖1所示,一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法,包括以下步驟:
步驟S101,將多個電源的Power Good信號寫入到CPLD相應(yīng)的寄存器中;
步驟S102,上位機通過IIC總線,讀取CPLD的寄存器的值;
步驟S103,根據(jù)CPLD的寄存器的值,判斷電源狀態(tài),CPLD的寄存器的值若為低電平,則判定對應(yīng)電源為故障電源,進行步驟S104;若為高電平,則電源為正常電源,返回步驟S101繼續(xù)監(jiān)控;
步驟S104,根據(jù)顯示低電平的CPLD的寄存器,找到對應(yīng)電源的Power Good信號,即可定位出故障電源,發(fā)出維修通知;
步驟S105,工作人員對故障電源進行維修。
上述步驟S101中將多個電源的Power Good信號寫入到CPLD相應(yīng)的寄存器中,包括:在CPLD相應(yīng)的寄存器中編寫IIC Slave程序;將多個電源狀態(tài)信號的Bit位和CPLD的全局時鐘控制一起寫入到IIC的寄存器中。
作為一種可實施方式,將系統(tǒng)中的多個電源模塊,如3.3V,5V,12V的電源芯片的Power Good信號寫入到CPLD中,在CPLD相應(yīng)的寄存器中根據(jù)IIC協(xié)議編寫IIC Slave程序,方便上位機讀取該寄存器的值,將多個電源狀態(tài)信號的Bit位和CPLD的全局時鐘控制一起寫入到IIC的寄存器中;上位機通過IIC總線,讀取CPLD的寄存器的值;根據(jù)CPLD的寄存器的值,判斷電源狀態(tài),CPLD的寄存器的值若為低電平,則判定對應(yīng)電源為故障電源,根據(jù)顯示低電平的CPLD的寄存器,找到對應(yīng)電源的Power Good信號,即可定位出故障電源,發(fā)出維修通知,工作人員對故障電源進行維修;若為高電平,則電源為正常電源。
實施例2
如圖2所示,一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控方法,包括以下步驟:
步驟S201,利用CPLD的Global Clock命令對多個電源狀態(tài)信號進行同步、消抖處理,并用于系統(tǒng)的上電、下電全局時鐘控制;
步驟S202,將多個電源的Power Good信號寫入到CPLD相應(yīng)的寄存器中;
步驟S203,上位機通過IIC總線,讀取CPLD的寄存器的值;
步驟S204,根據(jù)CPLD的寄存器的值,判斷電源狀態(tài),CPLD的寄存器的值若為低電平,則判定對應(yīng)電源為故障電源,進行步驟S205;若為高電平,則電源為正常電源,返回步驟S201繼續(xù)監(jiān)控;
步驟S205,關(guān)閉外圍部件的電路;
步驟S206,根據(jù)顯示低電平的CPLD的寄存器,找到對應(yīng)電源的Power Good信號,即可定位出故障電源,發(fā)出維修通知;
步驟S207,工作人員對故障電源進行維修。
上述步驟S202中將多個電源的Power Good信號寫入到CPLD相應(yīng)的寄存器中,包括:在CPLD相應(yīng)的寄存器中編寫IIC Slave程序;將多個電源狀態(tài)信號的Bit位和CPLD的全局時鐘控制一起寫入到IIC的寄存器中。
作為一種可實施方式,將系統(tǒng)中的多個電源模塊,如3.3V,5V,12V的電源芯片的Power Good信號經(jīng)過連接到CPLD中,利用CPLD的Global Clock命令對多個電源的Power Good信號進行同步、消抖處理,并用于系統(tǒng)的上電、下電全局時鐘控制,既防止產(chǎn)生異步信號和雜質(zhì)的抖動信號,防止出現(xiàn)亞穩(wěn)態(tài)造成CPLD狀態(tài)的不穩(wěn)定,又保證了整個系統(tǒng)的正常上電;在CPLD相應(yīng)的寄存器中根據(jù)IIC協(xié)議編寫IIC Slave程序,方便上位機讀取該寄存器的值,將多個電源狀態(tài)信號的Bit位和CPLD的全局時鐘控制一起寫入到IIC的寄存器中;上位機通過IIC總線,讀取CPLD的寄存器的值;根據(jù)CPLD的寄存器的值,判斷電源狀態(tài),CPLD的寄存器的值若為低電平,則判定對應(yīng)電源為故障電源,關(guān)閉外圍部件的電路,根據(jù)顯示低電平的CPLD的寄存器,找到對應(yīng)電源的Power Good信號,即可定位出故障電源,發(fā)出維修通知,工作人員對故障電源進行維修;若為高電平,則電源為正常電源。
實施例3
如圖3所示,一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控裝置,包括:
監(jiān)控模塊301,用于將多個電源狀態(tài)信號寫入到CPLD相應(yīng)的寄存器中;
數(shù)據(jù)讀取模塊302,用于上位機讀取CPLD的寄存器的值;
判斷模塊303,用于根據(jù)CPLD的寄存器的值,判斷電源狀態(tài),CPLD的寄存器的值若為低電平,則判定對應(yīng)電源為故障電源;若為高電平,則電源為正常電源;
故障處理模塊304,用于關(guān)閉外圍部件的電路,定位出故障電源。
其中監(jiān)控模塊301依次順序與數(shù)據(jù)讀取模塊302、判斷模塊303和故障處理模塊304相連。
實施例4
如圖4所示,一種基于CPLD的系統(tǒng)電源狀態(tài)監(jiān)控裝置,包括:
濾波模塊305,用于對多個電源狀態(tài)信號進行同步、消抖處理,并用于系統(tǒng)的上電、下電全局時鐘控制;
監(jiān)控模塊301,用于將多個電源狀態(tài)信號寫入到CPLD相應(yīng)的寄存器中;
數(shù)據(jù)讀取模塊302,用于上位機讀取CPLD的寄存器的值;
判斷模塊303,用于根據(jù)CPLD的寄存器的值,判斷電源狀態(tài),CPLD的寄存器的值若為低電平,則判定對應(yīng)電源為故障電源;若為高電平,則電源為正常電源;
故障處理模塊304,用于關(guān)閉外圍部件的電路,定位出故障電源。
其中監(jiān)控模塊301依次順序與濾波模塊305、數(shù)據(jù)讀取模塊302、判斷模塊303和故障處理模塊304相連。
以上所述僅為本發(fā)明示意性的具體實施方式,并非用以限定本發(fā)明的范圍,任何本領(lǐng)域的技術(shù)人員在不脫離本發(fā)明構(gòu)思和原則的前提下所做出的等同變化與修改,均應(yīng)屬于本發(fā)明保護的范圍。