两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種cpu檢測方法_3

文檔序號:9326782閱讀:來源:國知局
r> 3)、讀取累加器ACC到讀取結(jié)果CPUDiag_DW_resDatal;
4)、恢復(fù)累加器ACC的值;
5)、比較檢測值OxAAAAAAAA和讀取結(jié)果CPUDiag_DW_resDatal是否相等,若不等,報CPU故障;若相等,則繼續(xù)檢測;
6)、將檢測值0x55555555寫入累加器ACC;
7)、讀取累加器ACC到讀取結(jié)果CPUDiag_DW_resDatal;
8)、恢復(fù)累加器ACC的值;
9)、比較檢測值0x55555555和讀取結(jié)果CPUDiag_DW_resDatal是否相等,若不等,報CPU故障;若相等,則繼續(xù)檢測。
[0027]對被乘數(shù)寄存器XT和結(jié)果寄存器P的檢測,通過一個無符號32位乘法運算,然后檢測相關(guān)寄存器,檢測方法如下:
1)、定義變量如下: mulDataO = 1234; mulDatal = 1000;
2)、進(jìn)行運算
result =mulDataO 氺 mulDatal;
3)、進(jìn)行被乘數(shù)寄存器XT和結(jié)果寄存器P的檢測
檢測被乘數(shù)寄存器XT中值是否等于被乘數(shù)mulDatal,檢測結(jié)果寄存器P中值是否等于乘法結(jié)果result,若不等,報CPU故障;若相等,則繼續(xù)檢測。
[0028]第四步,對CPU指令進(jìn)行運行檢測,檢測指令如下:
I)、檢測算術(shù)指令,檢測如下:
檢測絕對值指令、加法指令、減法指令、取負(fù)指令、自增指令、自減指令。乘法在第2步已檢測,此處不檢測,除法實際由減法指令和循環(huán)指令構(gòu)成,此處不檢測。
[0029]2)、檢測邏輯指令,檢測如下:
檢測取大指令、取小指令、與指令、或指令、非指令、異或指令;
3)、檢測移位指令,檢測如下:
檢測算術(shù)右移指令、邏輯左移指令、邏輯右移指令、循環(huán)左移指令、循環(huán)右移指令;
3)、專用指令檢測,檢測如下:
檢測設(shè)置中斷標(biāo)記指令和讀取中斷標(biāo)記指令。
[0030]第五步,若檢測完成,沒有報CPU故障,則CPU正常。
【主權(quán)項】
1.一種CPU檢測方法,其特征是:在關(guān)閉CPU的中斷使能后,執(zhí)行對CPU指令的運行檢測;在執(zhí)行CPU指令運行檢測時,確定需要在CPU上運行的檢測指令輸入以及與每個檢測指令輸入在運行后對應(yīng)的檢測期望,若在CPU上運行檢測指令輸入的檢測輸出與對應(yīng)的檢測期望不一致時,則報告CPU故障且退出對CPU的檢測,否則,確定CPU檢測正常。2.根據(jù)權(quán)利要求1所述的CPU檢測方法,其特征是:若CPU內(nèi)包含CPU通用地址寄存器時,則關(guān)閉CPU中斷使能后,在執(zhí)行CPU指令的運行檢測前或執(zhí)行CPU指令的運行檢測后,實施對CPU通用地址寄存器的檢測;所述CPU通用地址寄存器的檢測包括如下步驟: 步驟S1、將CPU內(nèi)的一 CPU通用地址寄存器中的初始地址值保存到內(nèi)存中; 步驟S2、在上述CPU通用地址寄存器中寫入所需的地址檢測值,所述地址檢測值長度為CPU通用地址寄存器的最大寄存空間; 步驟S3、讀取上述CPU通用地址寄存器中的值,以得到地址檢測結(jié)果,并將讀取的地址檢測結(jié)果存入內(nèi)存變量中; 步驟S4、將步驟S3中讀取的地址檢測結(jié)果與步驟S2中寫入的地址檢測值進(jìn)行比較,若讀取的地址檢測結(jié)果與寫入的地址檢測值不一致,則報告CPU故障,將初始地址值恢復(fù)到上述的CPU通用地址寄存器中并退出檢測,否則,跳轉(zhuǎn)至步驟S5 ; 步驟S5、將上述步驟S2中的地址檢測值取反,以得到取反地址檢測值;將所述取反地址檢測值寫入上述的CPU通用地址寄存器中; 步驟S6、讀取上述的CPU通用地址寄存器中的值,以得到取反地址檢測結(jié)果,并將讀取的取反地址檢測結(jié)果存入內(nèi)存變量中; 步驟S7、將步驟S5中讀取的取反地址檢測結(jié)果與步驟S5中寫入的取反地址檢測值進(jìn)行比較,若讀取的取反地址檢測結(jié)果與寫入的取反地址檢測值不一致,則報告CPU故障,將初始地址值恢復(fù)到上述的CPU通用地址寄存器中并退出檢測,否則,跳轉(zhuǎn)至步驟S8 ; 步驟S8、對CPU內(nèi)其余的CPU通用地址寄存器重復(fù)上述步驟S2~步驟S8的檢測操作,直至CPU內(nèi)所有的CPU通用地址寄存器均通過檢測。3.根據(jù)權(quán)利要求1所述的CPU檢測方法,其特征是:若CPU內(nèi)包含CPU通用數(shù)據(jù)寄存器時,則關(guān)閉CPU中斷使能后,在執(zhí)行CPU指令的運行檢測前或執(zhí)行CPU指令的運行檢測后,實施對CPU通用數(shù)據(jù)寄存器的檢測;所述CPU通用數(shù)據(jù)寄存器的檢測包括如下步驟: 步驟Tl、將CPU內(nèi)的一 CPU通用數(shù)據(jù)寄存器中的初始數(shù)據(jù)值保存到內(nèi)存中; 步驟T2、在上述CPU通用數(shù)據(jù)寄存器中寫入所需的數(shù)據(jù)檢測值,所述數(shù)據(jù)檢測值長度為CPU通用數(shù)據(jù)寄存器的最大寄存空間; 步驟T3、讀取上述CPU通用數(shù)據(jù)寄存器中的值,以得到數(shù)據(jù)檢測結(jié)果,并將讀取的數(shù)據(jù)檢測結(jié)果存入內(nèi)存變量中; 步驟T4、將步驟T3中讀取的數(shù)據(jù)檢測結(jié)果與步驟T2中寫入的數(shù)據(jù)檢測值進(jìn)行比較,若讀取的數(shù)據(jù)檢測結(jié)果與寫入的數(shù)據(jù)檢測值不一致,則報告CPU故障,將初始數(shù)據(jù)值恢復(fù)到上述的CPU通用數(shù)據(jù)寄存器中并退出檢測,否則,跳轉(zhuǎn)至步驟T5 ; 步驟T5、將上述步驟T2中的數(shù)據(jù)檢測值取反,以得到取反數(shù)據(jù)檢測值;將所述取反數(shù)據(jù)檢測值寫入上述的CPU通用數(shù)據(jù)寄存器中; 步驟T6、讀取上述CPU通用數(shù)據(jù)寄存器中的值,以得到取反數(shù)據(jù)檢測結(jié)果,并將讀取的取反數(shù)據(jù)檢測結(jié)果存入內(nèi)存變量中; 步驟T7、將步驟T5中讀取的取反數(shù)據(jù)檢測結(jié)果與步驟Τ5中寫入的取反數(shù)據(jù)檢測值進(jìn)行比較,若讀取的取反數(shù)據(jù)檢測結(jié)果與寫入的取反數(shù)據(jù)檢測值不一致,則報告CPU故障,將初始數(shù)據(jù)值恢復(fù)到上述的CPU通用數(shù)據(jù)寄存器中并退出檢測,否則,跳轉(zhuǎn)至步驟Τ8 ; 步驟Τ8、對CPU內(nèi)其余的CPU通用數(shù)據(jù)寄存器重復(fù)上述步驟Τ2~步驟Τ8的檢測操作,直至CPU內(nèi)所有的CPU通用數(shù)據(jù)寄存器均通過檢測。4.根據(jù)權(quán)利要求1所述的CPU檢測方法,其特征是:執(zhí)行對CPU指令的運行檢測包括算術(shù)指令、邏輯指令、移位指令、比較指令、跳轉(zhuǎn)指令或芯片專用指令。5.根據(jù)權(quán)利要求2所述的CPU檢測方法,其特征是:使用匯編指令“MOV”實現(xiàn)將地址檢測值以及取反地址檢測值寫入CPU通用地址寄存器內(nèi),且使用匯編指令“MOV”讀取CPU通用地址寄存器內(nèi)的值,以分別得到地址檢測結(jié)果以及取反地址檢測結(jié)果。6.根據(jù)權(quán)利要求3所述的CPU檢測方法,其特征是:使用匯編指令“MOV”實現(xiàn)將數(shù)據(jù)檢測值以及取反數(shù)據(jù)檢測值寫入CPU通用數(shù)據(jù)寄存器內(nèi),且使用匯編指令“MOV”讀取CPU通用數(shù)據(jù)寄存器內(nèi)的值,以分別得到數(shù)據(jù)檢測結(jié)果以及取反數(shù)據(jù)檢測結(jié)果。
【專利摘要】本發(fā)明涉及一種方法,尤其是一種CPU檢測方法,屬于嵌入式系統(tǒng)BIT檢測的技術(shù)領(lǐng)域。按照本發(fā)明提供的技術(shù)方案,所述CPU檢測方法,在關(guān)閉CPU的中斷使能后,執(zhí)行對CPU指令的運行檢測;在執(zhí)行CPU指令運行檢測時,確定需要在CPU上運行的檢測指令輸入以及與每個檢測指令輸入在運行后對應(yīng)的檢測期望,若在CPU上運行檢測指令輸入的檢測輸出與對應(yīng)的檢測期望不一致時,則報告CPU故障且退出對CPU的檢測,否則,確定CPU檢測正常。本發(fā)明對CPU的檢測與CPU的實際工作情況相符合,使得對CPU的檢測更有效與充分,操作方便,適應(yīng)性好,安全可靠。
【IPC分類】G06F11/22
【公開號】CN105045696
【申請?zhí)枴緾N201510553986
【發(fā)明人】邵騰飛, 徐凱健, 黃浩, 周雄, 劉旭, 施彬彬, 張學(xué)軍, 李軍
【申請人】中國航空工業(yè)集團(tuán)公司航空動力控制系統(tǒng)研究所
【公開日】2015年11月11日
【申請日】2015年9月2日
當(dāng)前第3頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
桃源县| 辰溪县| 远安县| 金塔县| 阿巴嘎旗| 方山县| 茂名市| 温宿县| 卢氏县| 楚雄市| 舟曲县| 新沂市| 出国| 侯马市| 林甸县| 岱山县| 即墨市| 金乡县| 石首市| 罗田县| 孟州市| 海阳市| 德保县| 德化县| 敦化市| 赤峰市| 手游| 扶风县| 浦北县| 尼木县| 黄陵县| 芦山县| 永新县| 平乡县| 沙湾县| 阳江市| 蓬莱市| 宁乡县| 德惠市| 华蓥市| 桦甸市|