專利名稱:一種看門狗電路輸入脈沖時間間隔監(jiān)控裝置及其監(jiān)控方法
技術(shù)領(lǐng)域:
本發(fā)明涉及軟件測試領(lǐng)域,尤指一種對軟件輸出給看門狗電路的脈沖時間間隔進(jìn)行監(jiān)控的裝置及方法。
背景技術(shù):
為了保證電信設(shè)備軟硬件系統(tǒng)的可靠性,一般的系統(tǒng)都有看門狗電路(Watch Dog),用于監(jiān)測系統(tǒng)中的軟件工作是否正常。通常軟件通過定時送脈沖給看門狗電路,表示軟件工作正常;如果看門狗電路超時沒有收到脈沖信號,則會認(rèn)為軟件異常而復(fù)位系統(tǒng)??撮T狗電路都有一個最大的輸入脈沖時間間隔,一旦兩次輸入脈沖的時間間隔大于這個最大時間間隔,系統(tǒng)就會被復(fù)位。為了保證正常情況下,軟件可能執(zhí)行的任務(wù)不會導(dǎo)致系統(tǒng)復(fù)位,一般設(shè)計的實際輸入脈沖時間間隔要遠(yuǎn)遠(yuǎn)小于“看門狗”電路的最大脈沖輸入時間間隔。但是在軟件處理一些特定任務(wù)時,可能不能保證及時輸出脈沖給看門狗電路。
在我們對一個軟件進(jìn)行測試的時候,會在各種情況下,測試軟件實際輸出給看門狗的脈沖時間間隔,通常的看門狗脈沖輸入時間間隔測試方法是制造系統(tǒng)各種不同的工作條件,用示波器監(jiān)控軟件送給看門狗電路的脈沖信號的最大時間間隔,確保這個最大時間間隔遠(yuǎn)小于看門狗電路的最大輸入脈沖時間間隔。在軟件有更改后,重新進(jìn)行這個最大脈沖時間間隔測試,保證系統(tǒng)不會由于脈沖輸出不及時而被復(fù)位。但實際上很難模擬軟件所有的工作情況,這就會造成測試遺漏。另一方面,如果對修改的軟件沒有進(jìn)行這方面的測試或者測試不全面,都有可能出現(xiàn)系統(tǒng)在正常情況下復(fù)位的問題。
在系統(tǒng)上電時,CPU正常運行前,軟件輸出給看門狗的脈沖時間間隔更難保證,而且難以記錄,出現(xiàn)問題很難定位。
發(fā)明內(nèi)容
鑒于上述缺點,本發(fā)明提供一種看門狗電路的輸入脈沖時間間隔監(jiān)控裝置及方法,用以記錄、存儲軟件輸出給看門狗電路的脈沖時間間隔信息,并可在脈沖時間間隔超過預(yù)置的門限時產(chǎn)生告警。
本發(fā)明的一種看門狗電路輸入脈沖時間間隔監(jiān)控裝置,其中包括模塊一將輸出給看門狗電路的脈沖信號轉(zhuǎn)換為電平信號輸出;模塊二包括一計數(shù)器,該計數(shù)器的清零端與模塊一的輸出端相連接,所述的計數(shù)器中預(yù)設(shè)有一個或多個時間門限,當(dāng)各門限時間到達(dá)時,計數(shù)器通過不同數(shù)據(jù)線分別輸出不同級別的告警信號;并輸出數(shù)據(jù)信號給模塊三;模塊三記錄并存儲輸入的數(shù)據(jù)信息。
所述的模塊一包括級聯(lián)的復(fù)數(shù)個觸發(fā)器、一輸入端反相的與門和一或門,該與門的正向輸入端接次末級觸發(fā)器的輸出端,反相輸入端接最末級觸發(fā)器的輸出端,該與門的輸出端接或門的一個輸入端,或門的另一輸入端接系統(tǒng)的復(fù)位信號,該或門的輸出端輸出電平信號。
所述模塊二還包括有一或門和復(fù)數(shù)個觸發(fā)器,所述或門的一個輸入端接系統(tǒng)的復(fù)位信號,另一輸入端接系統(tǒng)輸出的告警清除信號,該或門的輸出端與該復(fù)數(shù)個觸發(fā)器的清零端相連接;該復(fù)數(shù)個觸發(fā)器的時鐘端分別與輸出不同級別告警信號的數(shù)據(jù)線相連接。
所述的計數(shù)器為帶異步清零端的16位計數(shù)器,所述的觸發(fā)器為帶異步清零端的D觸發(fā)器。
所述的模塊三包括有第一、第二鎖存器、比較器、選擇器和先進(jìn)先出隊列模塊;模塊二輸出的數(shù)據(jù)信號連接到第一鎖存器的數(shù)據(jù)端,鎖存器的輸出為鎖存的中間數(shù)據(jù),中間數(shù)據(jù)和記錄的最大脈沖時間間隔分別連接到比較器的兩個輸入端,比較結(jié)果連接到選擇器的選擇端;選擇器的兩個輸入端分別連接最大脈沖時間間隔和中間數(shù)據(jù),輸出結(jié)果為兩者間的大者,并連接到第二鎖存器的輸入端,將當(dāng)前最大的脈沖時間間隔數(shù)據(jù)記錄下來;所述先進(jìn)先出隊列模塊,其數(shù)據(jù)端連接模塊二中的計數(shù)器輸出的數(shù)據(jù)信號,用來記錄一段時間內(nèi)的看門狗電路輸入脈沖時間間隔信息。
所述第一、第二鎖存器和先進(jìn)先出隊列模塊的時鐘端與模塊一中第一級觸發(fā)器的輸出端相連接。
本發(fā)明提供一種看門狗電路輸入脈沖時間間隔監(jiān)控方法,包括下列步驟步驟一將軟件輸出給看門狗電路的脈沖信號轉(zhuǎn)換為電平信號;步驟二用上述電平信號對計數(shù)器進(jìn)行清零,通過計數(shù)器輸出脈沖時間間隔信息;步驟三對輸出的時間間隔信息進(jìn)行記錄存儲。
上述方法中還包括在計數(shù)器中預(yù)設(shè)時間門限的步驟,當(dāng)預(yù)設(shè)的門限時間到達(dá)時,計數(shù)器輸出告警信號。
當(dāng)告警信號發(fā)生后,通過輸出告警清除信號來清除告警。
利用本發(fā)明的裝置及方法,在輸入脈沖時間間隔超過設(shè)定的不同時間間隔門限時,產(chǎn)生不同級別的告警,并記錄看門狗電路輸入脈沖時間間隔信息,及時發(fā)現(xiàn)問題和修改,避免測試遺漏造成的系統(tǒng)復(fù)位問題,簡化對軟件輸出給看門狗電路的脈沖時間間隔的測試。
圖1為本發(fā)明實施例的監(jiān)控裝置中模塊一和模塊二的結(jié)構(gòu)示意圖;圖2為本發(fā)明實施例的監(jiān)控裝置中模塊三的結(jié)構(gòu)示意圖。
具體實施例方式
下面以設(shè)置兩個時間間隔門限為例,具體說明本發(fā)明的結(jié)構(gòu)及工組原理。
設(shè)看門狗電路的最大輸入脈沖時間間隔為1.2秒,在軟件輸出脈沖時間間隔超過0.5秒時產(chǎn)生一般告警,脈沖時間間隔超過1秒時產(chǎn)生嚴(yán)重告警,即設(shè)置0.5秒和1秒兩個脈沖時間間隔門限(告警門限的數(shù)量和門限值可以根據(jù)實際需要設(shè)置)。
本發(fā)明的裝置結(jié)構(gòu)如圖1、圖2所示,分為三個模塊,模塊一完成脈沖邊沿到電平信號的轉(zhuǎn)換;模塊二通過計數(shù)方式監(jiān)測時間間隔和產(chǎn)生告警;模塊三完成輸入脈沖時間間隔的存儲記錄。
圖1中FEED是軟件輸出給看門狗電路脈沖信號;CK10M 是10MHz的時鐘;RESET 是系統(tǒng)的復(fù)位信號,高電平復(fù)位系統(tǒng);CK1K是1KHz的時鐘信號;CLR 是軟件輸出的用于清除脈沖時間間隔超時告警的信號,高電平清除;CLEAR 是將軟件輸出脈沖轉(zhuǎn)換成電平的信號,高電平用于計數(shù)器清零;ALM0是一般告警輸出信號(脈沖時間間隔超過0.5秒時告警),高電平表示告警;ALM1是嚴(yán)重告警輸出信號(脈沖時間間隔超過1秒時告警),高電平表示告警;LOAD是用于脈沖時間信息鎖存的時鐘信號(在模塊三中用到)。
如圖1所示,模塊一中三個D觸發(fā)器FD采用CK10M時鐘信號級聯(lián)。軟件輸出的FEED脈沖信號連接到第一級觸發(fā)器的數(shù)據(jù)端,CK10M時鐘信號連接到觸發(fā)器的時鐘端;第一級觸發(fā)器的Q端(輸出端)為LOAD信號,用于看門狗輸入脈沖時間間隔信息的鎖存信號(在模塊三中用到);第二級和第三級觸發(fā)器的輸出經(jīng)過一輸入端反相與門AND2B1相與,相與的輸出作為或門OR2的一個輸入;或門的另一個輸入為RESET信號(復(fù)位信號),或的結(jié)果CLEAR信號用于模塊二中計數(shù)器的清零。這個電路將FEED脈沖的上升沿轉(zhuǎn)換為一個CK10M時鐘周期寬度的高電平——CLEAR信號,避免FEED信號長時間為固定的電平導(dǎo)致的電路失效。
模塊二主要由帶異步清零端的16位計數(shù)器CC16CE和兩個帶異步清零端的D觸發(fā)器FDC組成。1KHz的時鐘信號CK1K連接到計數(shù)器的時鐘端,模塊一輸出的CLEAR清零信號連接到計數(shù)器的異步清零端,計數(shù)器的輸出端連接到數(shù)據(jù)總線Q15~Q0;復(fù)位信號RESET和軟件輸出的告警清除信號CLR經(jīng)過或門OR2相或,輸出連接到兩個觸發(fā)器FDC的異步清零端;兩個觸發(fā)器的數(shù)據(jù)端接到VCC(電源端);數(shù)據(jù)信號Q9連接到第一個觸發(fā)器的時鐘端,該觸發(fā)器的輸出就是一般告警信號ALM0;數(shù)據(jù)信號Q10連接到第二個觸發(fā)器的時鐘端,該觸發(fā)器的輸出就是嚴(yán)重告警信號ALM1。ALM0、ALM1告警信號一旦產(chǎn)生,不會因為軟件輸出脈沖恢復(fù)正常而消除,只有通過CLR信號清除告警,這樣能夠保證瞬間的脈沖時間間隔過長也能夠被捕捉到。
本發(fā)明中,模塊一將軟件送出的脈沖信號轉(zhuǎn)換為電平對模塊二中的計數(shù)器進(jìn)行清零,清零后計數(shù)器重新開始計數(shù)。如果超過第一個設(shè)置的時間間隔門限還沒有收到下一次脈沖,就產(chǎn)生最低級別的告警;超過第二個設(shè)置的時間間隔門限仍未收到下一次脈沖,就產(chǎn)生下一個更高級別的告警。以此類推,可以設(shè)置多個脈沖時間間隔門限和告警。
圖2為模塊三的結(jié)構(gòu)示意圖。
圖2中LOAD信號是模塊一產(chǎn)生的用于鎖存看門狗電路輸入脈沖時間間隔信息的時鐘信號;Q[15:0]是模塊二中計數(shù)器輸出的數(shù)據(jù)總線,表示Q15~Q0;S[15:0]是Q經(jīng)過一級鎖存的中間數(shù)據(jù),表示S15~S0;R[15:0]是記錄的軟件輸出的脈沖最大時間間隔,表示R15~R0;
模塊三中將模塊二計數(shù)器的數(shù)據(jù)總線輸出Q[15:0]連接到鎖存器1的數(shù)據(jù)端,鎖存器1的時鐘端接模塊一輸出的LOAD信號,鎖存器的輸出為鎖存的中間數(shù)據(jù)S[15:0];中間數(shù)據(jù)S[15:0]和記錄的最大脈沖時間間隔R[15:0]分別連接到比較器的兩個輸入端,比較結(jié)果連接到選擇器的選擇端;選擇器的兩個輸入端分別連接R[15:0]和S[15:0],輸出結(jié)果為兩者間的大者,并連接到鎖存器2的輸入端,LOAD信號連接到鎖存器2的時鐘端,將當(dāng)前最大的脈沖時間間隔數(shù)據(jù)記錄下來;FIFO是一個先進(jìn)先出隊列,其數(shù)據(jù)端連接模塊二中的計數(shù)器輸出,時鐘端連接LOAD信號,用來記錄一段時間內(nèi)的看門狗電路輸入脈沖時間間隔信息。軟件可以通過外部接口訪問記錄的最大脈沖時間間隔和前一段時間內(nèi)的脈沖間隔信息。通過這些數(shù)據(jù),可以對軟件輸出脈沖時間間隔的變化和異常進(jìn)行詳細(xì)分析,提供上電后各種情況下輸出脈沖時間間隔問題的定位線索。
在軟件輸出給看門狗電路的脈沖時間間隔測試中,利用本發(fā)明的裝置,就能夠方便地進(jìn)行測試,評估軟件各部分對脈沖輸出時間間隔的影響。在系統(tǒng)運行過程中記錄軟件輸出脈沖的時間間隔及告警信息,對于異常復(fù)位問題的定位能起到很大的幫助作用。
在軟件作了修改后,沒有必要專門做軟件輸出脈沖時間這項測試,在軟件運行一段時間后,只觀測一下脈沖輸出時間告警及數(shù)據(jù)就可以了。在定位異常復(fù)位原因時,只需要查看軟件輸出脈沖的時間間隔數(shù)據(jù)和當(dāng)時的軟件工作狀態(tài),就能方便的定位問題。
由于這個告警和數(shù)據(jù)記錄的作用,即使不做脈沖輸出時間的測試,在軟件的驗證運行過程中,一些時間間隔稍大的脈沖輸出操作也能夠自動反映出來,提醒開發(fā)人員哪里需要修改,避免了問題的遺漏。
權(quán)利要求
1.一種看門狗電路輸入脈沖時間間隔監(jiān)控裝置,其特征在于包括模塊一將輸出給看門狗電路的脈沖信號轉(zhuǎn)換為電平信號輸出;模塊二包括一計數(shù)器,該計數(shù)器的清零端與模塊一的輸出端相連接,所述的計數(shù)器中預(yù)設(shè)有一個或多個時間門限,當(dāng)各門限時間到達(dá)時,計數(shù)器通過不同數(shù)據(jù)線分別輸出不同級別的告警信號;并輸出數(shù)據(jù)信號給模塊三;模塊三記錄并存儲輸入的數(shù)據(jù)信息。
2.如權(quán)利要求1所述的監(jiān)控裝置,其特征在于所述的模塊一包括級聯(lián)的復(fù)數(shù)個觸發(fā)器、一輸入端反相的與門和一或門,該與門的正向輸入端接次末級觸發(fā)器的輸出端,反相輸入端接最末級觸發(fā)器的輸出端,該與門的輸出端接或門的一個輸入端,或門的另一輸入端接系統(tǒng)的復(fù)位信號,該或門的輸出端輸出電平信號。
3.如權(quán)利要求1或2所述的監(jiān)控裝置,其特征在于所述模塊二還包括有一或門和復(fù)數(shù)個觸發(fā)器,所述或門的一個輸入端接系統(tǒng)的復(fù)位信號,另一輸入端接系統(tǒng)輸出的告警清除信號,該或門的輸出端與該復(fù)數(shù)個觸發(fā)器的清零端相連接;該復(fù)數(shù)個觸發(fā)器的時鐘端分別與輸出不同級別告警信號的數(shù)據(jù)線相連接。
4.如權(quán)利要求3所述的監(jiān)控裝置,其特征在于所述的計數(shù)器為帶異步清零端的16位計數(shù)器,所述的觸發(fā)器為帶異步清零端的D觸發(fā)器。
5.如權(quán)利要求3所述的監(jiān)控裝置,其特征在于所述的模塊三包括有第一、第二鎖存器、比較器、選擇器和先進(jìn)先出隊列模塊;模塊二輸出的數(shù)據(jù)信號連接到第一鎖存器的數(shù)據(jù)端,鎖存器的輸出為鎖存的中間數(shù)據(jù),中間數(shù)據(jù)和記錄的最大脈沖時間間隔分別連接到比較器的兩個輸入端,比較結(jié)果連接到選擇器的選擇端;選擇器的兩個輸入端分別連接最大脈沖時間間隔和中間數(shù)據(jù),輸出結(jié)果為兩者間的大者,并連接到第二鎖存器的輸入端,將當(dāng)前最大的脈沖時間間隔數(shù)據(jù)記錄下來;所述先進(jìn)先出隊列模塊,其數(shù)據(jù)端連接模塊二中的計數(shù)器輸出的數(shù)據(jù)信號,用來記錄一段時間內(nèi)的看門狗電路輸入脈沖時間間隔信息。
6.如權(quán)利要求5所述的監(jiān)控裝置,其特征在于所述第一、第二鎖存器和先進(jìn)先出隊列模塊的時鐘端與模塊一中第一級觸發(fā)器的輸出端相連接。
7.一種看門狗電路輸入脈沖時間間隔監(jiān)控方法,包括下列步驟步驟一將軟件輸出給看門狗電路的脈沖信號轉(zhuǎn)換為電平信號;步驟二用上述電平信號對計數(shù)器進(jìn)行清零,通過計數(shù)器輸出脈沖時間間隔信息;步驟三對輸出的時間間隔信息進(jìn)行記錄存儲。
8.如權(quán)利要求7所述的監(jiān)控方法,其特征在于還包括有在計數(shù)器中預(yù)設(shè)時間門限的步驟,當(dāng)預(yù)設(shè)的門限時間到達(dá)時,計數(shù)器輸出告警信號。
9.如權(quán)利要求8所述的監(jiān)控方法,其特征在于當(dāng)告警信號發(fā)生后,通過輸出告警清除信號來清除告警。
全文摘要
本發(fā)明涉及一種看門狗電路輸入脈沖時間間隔監(jiān)控裝置,包括模塊一將軟件輸出給看門狗電路的脈沖信號轉(zhuǎn)換為電平信號輸出;模塊二包括一計數(shù)器,該計數(shù)器的清零端與模塊一的輸出端相連接,計數(shù)器輸出數(shù)據(jù)信號給模塊三;模塊三記錄并存儲輸入的數(shù)據(jù)信息。利用本發(fā)明的裝置在系統(tǒng)運行過程中記錄軟件輸出脈沖的時間間隔及產(chǎn)生告警信息,簡化軟件輸出給看門狗電路的脈沖時間間隔的測試,對于異常復(fù)位問題的定位能起到很大的幫助作用。
文檔編號H04B17/00GK1533061SQ03121059
公開日2004年9月29日 申請日期2003年3月21日 優(yōu)先權(quán)日2003年3月21日
發(fā)明者李小龍, 姚益民 申請人:華為技術(shù)有限公司