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