專利名稱:硬件看門狗的功能測試方法及其系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及測試領(lǐng)域,尤其涉及對(duì)硬件看門狗芯片的測試方法及其系統(tǒng)。
背景技術(shù):
在CPU或MCU的應(yīng)用系統(tǒng)設(shè)計(jì)中,為提高系統(tǒng)運(yùn)行的可靠性,經(jīng)常會(huì)在其外部設(shè)計(jì)中加上硬件看門狗單元,防止系統(tǒng)“死機(jī)”。目前,外部硬件看門狗芯片技術(shù)比較成熟,此類專用芯片比較多,如MAXIM公司的MAX706等。電子設(shè)計(jì)與制造企業(yè)在研發(fā)設(shè)計(jì)中,將硬件看門狗芯片設(shè)計(jì)在單板的CPU小系統(tǒng)上,用以確保CPU系統(tǒng)的穩(wěn)定性。在CPU系統(tǒng)調(diào)試時(shí)候以及單板進(jìn)行生產(chǎn)時(shí),通常要對(duì)硬件看門狗的功能進(jìn)行測試,以確保其功能是正常的。
專利申請(qǐng)?zhí)枮?1279116.4的中國專利申請(qǐng)?zhí)岢隽恕耙环N看門狗的控制邏輯電路”,該電路設(shè)置在CPU與硬件看門狗之間。其核心思想是,利用晶體振蕩器與EPLD進(jìn)行分頻,產(chǎn)生周期性“喂狗”信號(hào),當(dāng)該電路起作用的時(shí)候,硬件狗不會(huì)使CPU系統(tǒng)復(fù)位,當(dāng)該電路不起作用的時(shí)候,硬件看門狗會(huì)使CPU復(fù)位,單板就會(huì)重新啟動(dòng)。運(yùn)用此電路,可以在單板CPU系統(tǒng)調(diào)試時(shí)起到屏蔽看門狗作用,也可以測試出硬件狗的功能是否正常。但是,該專利申請(qǐng)存在的不足是調(diào)試與測試硬件看門狗功能時(shí)候,需要附加硬件電路,如晶體振蕩器與EPLD,測試成本較高;其次,該專利申請(qǐng)的技術(shù)方案只適用于單板CPU系統(tǒng)的調(diào)試,對(duì)生產(chǎn)過程中對(duì)硬件狗芯片進(jìn)行批量功能性測試來說則顯得過于復(fù)雜。
發(fā)明內(nèi)容
本發(fā)明的目的就是提出一種技術(shù)簡單,成本較低的用于對(duì)硬件看門狗芯片進(jìn)行批量功能性測試的硬件看門狗的功能測試方法及其系統(tǒng)。
一種硬件看門狗的功能測試方法,包括下列步驟第一步測試系統(tǒng)上電啟動(dòng);第二步MCU初始化,包括設(shè)置MCU運(yùn)行的各寄存器;第三步讀取外部RAM的指定的N個(gè)地址單元的內(nèi)容;第四步將讀取的數(shù)據(jù)與預(yù)定的數(shù)據(jù)比較,判斷是否一致;第五步如果不一致則將預(yù)定的數(shù)據(jù)寫入指定的N個(gè)地址單元中;第六步MCU停止“喂狗”操作,延遲時(shí)間T,所述時(shí)間T須大于看門狗芯片的極限喂狗時(shí)間;第七步寫寄存器,記錄硬件狗功能失效,指示或上報(bào)測試結(jié)果后結(jié)束;第八步如果一致,則寫寄存器,記錄硬件狗功能正常,指示或上報(bào)測試結(jié)果后結(jié)束。
一種實(shí)現(xiàn)上述測試方法的硬件看門狗的功能測試系統(tǒng),包括一個(gè)內(nèi)部可燒寫程序的微控制器101,一個(gè)易失性外部RAM102,一個(gè)硬件狗芯片插座或卡座103以及一個(gè)指示單元104;所述微控制器101分別與易失性外部RAM102、硬件狗芯片插座或卡座103以及指示單元104相連接;所述微控制器101用于對(duì)易失性外部RAM102進(jìn)行讀寫操作,完成權(quán)利要求1所述的判斷執(zhí)行操作,并控制指示單元104進(jìn)行測試結(jié)果的顯示。
本發(fā)明所提出的方法和系統(tǒng),與現(xiàn)有技術(shù)相比,技術(shù)簡單可靠,測試成本低,適用于對(duì)硬件看門狗批量芯片進(jìn)行功能測試和批量芯片的來料檢驗(yàn)。
圖1是本發(fā)明所提出的測試方法的流程圖。
圖2是實(shí)現(xiàn)本發(fā)明所述測試方法的測試系統(tǒng)的結(jié)構(gòu)框圖。
具體實(shí)施例方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。
圖1是本發(fā)明所提出的測試方法的流程圖。如圖1所示,本發(fā)明提出的硬件看門狗的功能測試方法,包括下列步驟第一步、測試系統(tǒng)上電啟動(dòng)。第二步、MCU初始化,包括設(shè)置MCU運(yùn)行的各寄存器。第三步、讀取外部RAM的指定的N個(gè)地址單元的內(nèi)容。第四步、將讀取的數(shù)據(jù)與預(yù)定的數(shù)據(jù)比較,判斷是否一致;第五步、如果不一致則將預(yù)定的數(shù)據(jù)寫入指定的N個(gè)地址單元中。第六步、MCU停止“喂狗”操作,延遲時(shí)間T,所述時(shí)間T須大于看門狗芯片的極限喂狗時(shí)間。第七步、寫寄存器,記錄硬件狗功能失效,指示或上報(bào)測試結(jié)果后結(jié)束。第八步、如果一致,則寫寄存器,記錄硬件狗功能正常,指示或上報(bào)測試結(jié)果后結(jié)束。
本發(fā)明所提出的測試方法的基本原理闡述如下當(dāng)測試系統(tǒng)上電啟動(dòng)時(shí),MCU去讀取指定的外部RAM的N個(gè)單元內(nèi)的數(shù)據(jù),此時(shí)外部RAM中的數(shù)據(jù)是混亂無規(guī)律的(單板上電冷啟動(dòng)時(shí),RAM內(nèi)出現(xiàn)這些特定數(shù)據(jù)的概率極小),因此,在第四步的判斷中,其結(jié)果一定是不一致的,此時(shí)執(zhí)行第五步,MCU將預(yù)定的數(shù)據(jù)如0x55,0xaa,0x5a,x0a5等寫入指定的N個(gè)地址單元中,接下來執(zhí)行第六步,MCU停止“喂狗”操作,延遲時(shí)間T,所述時(shí)間T須要超過看門狗芯片的極限“喂狗”時(shí)間,如MAX706是1.6秒鐘;不同的看門狗,極限“喂狗”時(shí)間可能不一樣,在實(shí)際中進(jìn)行調(diào)整即可。這時(shí),若看門狗的功能正常,就會(huì)使MCU復(fù)位,單板重新啟動(dòng);這次啟動(dòng)是熱啟動(dòng),由于系統(tǒng)沒有掉電,外部RAM內(nèi)數(shù)據(jù)依然存在,程序又重新開始執(zhí)行,MCU再次讀指定外部單元的數(shù)據(jù),此時(shí)讀出就是第五步中寫入的0x55,0xaa,0x5a,x0a5等數(shù)據(jù),當(dāng)重新執(zhí)行第四步的判斷時(shí),此時(shí)的比較結(jié)果應(yīng)當(dāng)是一致的,進(jìn)而執(zhí)行第八步,MCU控制指示單元104顯示看門狗功能正常。如若看門狗芯片的功能失效,則超過延遲時(shí)間T之后,MCU也不會(huì)被復(fù)位,程序不會(huì)從頭開始執(zhí)行,也不可能再次運(yùn)行讀指定外部RAM單元這一步驟,根據(jù)本發(fā)明提出的方法,進(jìn)一步執(zhí)行第七步,寫寄存器,記錄硬件狗功能失效,MCU控制指示單元104顯示看門狗功能失效。整個(gè)測試過程結(jié)束。
圖2是實(shí)現(xiàn)本發(fā)明所述測試方法的測試系統(tǒng)的結(jié)構(gòu)框圖。如圖2所示,實(shí)現(xiàn)本發(fā)明所述測試方法的硬件看門狗的功能測試系統(tǒng),包括一個(gè)內(nèi)部可燒寫程序的微控制器101,一個(gè)易失性外部RAM102,一個(gè)硬件狗芯片插座或卡座103以及一個(gè)指示單元104;所述微控制器101分別與易失性外部RAM102、硬件狗芯片插座或卡座103以及指示單元104相連接;所述微控制器101用于對(duì)易失性外部RAM102進(jìn)行讀寫操作,完成權(quán)利要求1所述的判斷執(zhí)行操作,并控制指示單元104進(jìn)行測試結(jié)果的顯示。
其中微控制器101是MCU小系統(tǒng)單元,看門狗測試方法對(duì)應(yīng)的代碼燒寫在MCU所帶的內(nèi)部FLASH中,MCU是根據(jù)實(shí)際設(shè)計(jì)情況來選擇的。易失性外部RAM102單元可以根據(jù)實(shí)際應(yīng)用需要選擇串行或并行的易失性RAM芯片或者是具有該性質(zhì)的芯片,系統(tǒng)斷電后內(nèi)部保存的數(shù)據(jù)將丟失,MCU對(duì)其可以進(jìn)行可讀和寫操作。指示單元104可以是由MCU管腳控制的發(fā)光二極管組成的指示單元,在本發(fā)明的一個(gè)實(shí)施例中,使用兩個(gè)發(fā)光二極管,一個(gè)綠色,用于指示MCU運(yùn)行;一個(gè)是紅綠雙色發(fā)光管,用于指示看門狗功能測試狀況,若測試通過,則綠色指示燈亮,否則紅色燈亮。硬件狗芯片插座或卡座103是用于放置和連接硬件看門狗芯片的單元。若在芯片裝焊到單板之前,需要對(duì)批量芯片進(jìn)行測試,則需要根據(jù)芯片封裝形式設(shè)計(jì)相應(yīng)插座,用于放置待測試的看門狗芯片,若看門狗芯片是DIP封裝形式的,則使用插座固定芯片;若是其余的封裝形式,則一般可以使用卡座來固定。所述微控制器101執(zhí)行本發(fā)明所提出的方法,對(duì)硬件狗芯片插座或卡座103中的硬件看門狗芯片進(jìn)行功能性測試。整個(gè)測試系統(tǒng)的硬件組成結(jié)構(gòu)與單板原系統(tǒng)設(shè)計(jì)保持一致,不需要改動(dòng)任何原來的設(shè)計(jì)。
在本發(fā)明的實(shí)施例中,既可以獨(dú)立組成測試裝置,對(duì)已經(jīng)裝焊到單板上的硬件看門狗進(jìn)行功能測試,用單板上的指示燈來指示測試結(jié)果;也可以與PC機(jī)結(jié)合,采用PC機(jī)的RS232口與MCU進(jìn)行通訊,PC機(jī)下發(fā)測試命令并接收MCU回報(bào)的測試結(jié)果,并將測試結(jié)果直接顯示在PC機(jī)界面上,簡單、快捷、實(shí)用。
權(quán)利要求
1.一種硬件看門狗的功能測試方法,其特征在于包括下列步驟第一步測試系統(tǒng)上電啟動(dòng);第二步MCU初始化,包括設(shè)置MCU運(yùn)行的各寄存器;第三步讀取外部RAM的指定的N個(gè)地址單元的內(nèi)容;第四步將讀取的數(shù)據(jù)與預(yù)定的數(shù)據(jù)比較,判斷是否一致;第五步如果不一致則將預(yù)定的數(shù)據(jù)寫入指定的N個(gè)地址單元中;第六步MCU停止“喂狗”操作,延遲時(shí)間T,所述時(shí)間T須大于看門狗芯片的極限喂狗時(shí)間;第七步寫寄存器,記錄硬件狗功能失效,指示或上報(bào)測試結(jié)果后結(jié)束;第八步如果一致,則寫寄存器,記錄硬件狗功能正常,指示或上報(bào)測試結(jié)果后結(jié)束。
2.一種實(shí)現(xiàn)權(quán)利要求1所述的測試方法的硬件看門狗的功能測試系統(tǒng),其特征在于包括一個(gè)內(nèi)部可燒寫程序的微控制器(101),一個(gè)易失性外部RAM(102),一個(gè)硬件狗芯片插座或卡座(103)以及一個(gè)指示單元(104);所述微控制器(101)分別與易失性外部RAM(102)、硬件狗芯片插座或卡座(103)以及指示單元(104)相連接;所述微控制器(101)用于對(duì)易失性外部RAM(102)進(jìn)行讀寫操作,完成權(quán)利要求1所述的判斷執(zhí)行操作,并控制指示單元(104)進(jìn)行測試結(jié)果的顯示。
3.根據(jù)權(quán)利要求2所述的硬件看門狗的功能測試系統(tǒng),其特征在于所述指示單元(104)是由微控制器(101)的管腳控制的發(fā)光二極管。
4.根據(jù)權(quán)利要求2所述的硬件看門狗的功能測試系統(tǒng),其特征在于所述易失性外部RAM(102)是串行的。
全文摘要
本發(fā)明公開了一種硬件看門狗的功能測試方法及其系統(tǒng),測試方法包括第一步、測試系統(tǒng)上電啟動(dòng)。第二步、MCU初始化。第三步、讀取外部RAM的指定的N個(gè)地址單元的內(nèi)容。第四步、比較讀取的數(shù)據(jù)與預(yù)定的數(shù)據(jù)比較是否一致。第五步、如果不一致則將預(yù)定的數(shù)據(jù)寫入指定的N個(gè)地址單元中。第六步、MCU停止“喂狗”操作,延遲時(shí)間T,所述時(shí)間T須大于看門狗芯片的極限喂狗時(shí)間。第七步、寫寄存器,記錄硬件狗功能失效,指示或上報(bào)測試結(jié)果后結(jié)束。第八步、如果一致,則寫寄存器,記錄硬件狗功能正常,指示或上報(bào)測試結(jié)果后結(jié)束。本發(fā)明所提出的方法和系統(tǒng),與現(xiàn)有技術(shù)相比,技術(shù)簡單可靠,測試成本低,適用于對(duì)硬件看門狗批量芯片進(jìn)行功能測試和批量芯片的來料檢驗(yàn)。
文檔編號(hào)G06F11/30GK1543097SQ20031010314
公開日2004年11月3日 申請(qǐng)日期2003年11月5日 優(yōu)先權(quán)日2003年11月5日
發(fā)明者朱紅軍, 丁國興, 李剛健, 姚發(fā)定, 吳德榮 申請(qǐng)人:中興通訊股份有限公司