專利名稱:設(shè)備故障日志的硬件獲取系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電子設(shè)備技術(shù)領(lǐng)域,尤其涉及一種設(shè)備故障日志的硬件獲取 系統(tǒng)和一種設(shè)備故障日志的硬件獲取方法。
背景技術(shù):
隨著電子技術(shù)的不斷發(fā)展和進步,電子設(shè)備的功能日益強大,其結(jié)構(gòu)也 相應(yīng)日益復(fù)雜,這就為電子設(shè)備的可靠性和可維護性提出了更高的要求。其 中,電子設(shè)備中故障定位及故障原因査找依賴于電子設(shè)備自身所記錄的日志
f曰息。
目前一般結(jié)合看門狗技術(shù),基于軟件實現(xiàn)設(shè)備故障日志的記錄,其 工作原理如圖1所示
中央處理器(CPU)在正常工作狀態(tài)下,會調(diào)度設(shè)備軟件系統(tǒng)適時
記錄正常工作日志,并周期性向邏輯器件比如CPLD (Complex Programmable Logical Device,復(fù)雜可編程邏輯器件)發(fā)送看門狗清除信 號,以聲明自己工作正常; 一旦CPU由于軟件或者硬件原因出現(xiàn)故障, 將無法發(fā)送看門狗清除信號;
看門狗進行計數(shù)器計數(shù),如果在超時溢出之前計數(shù)器沒有被清零, 就認(rèn)為設(shè)備工作異常,從而發(fā)送NMI (Non Maskable Interrupt,非屏蔽 中斷)信號觸發(fā)CPU進行故障日志記錄,然后復(fù)位CPU來使設(shè)備重新 回到正常狀態(tài)。
上述現(xiàn)有技術(shù)中設(shè)備故障日志的記錄是基于這樣一種前提CPU還 能夠響應(yīng)NMI信號,以及,設(shè)備軟件系統(tǒng)還能夠基于NMI中斷來執(zhí)行 設(shè)備故障日志記錄;也就是說,只有在設(shè)備故障不嚴(yán)重的時候,才能夠 通過CPU軟件日志系統(tǒng),記錄一些關(guān)鍵信息比如外部設(shè)備狀態(tài)的轉(zhuǎn)換、 地址異常信息等;
顯然,如果設(shè)備崩潰的程度足夠徹底,導(dǎo)致CPU或設(shè)備軟件系統(tǒng)不能夠響應(yīng)包括NMI信號在內(nèi)的所有信號,那么在CPU復(fù)位之前,其軟 件日志系統(tǒng)將不會進行任何記錄;因而,事后常常無法從CPU軟件曰志
系統(tǒng)記錄的日志中獲得有價值的信息,以致工程師需要浪費大量的時間 來復(fù)現(xiàn)和解決問題。
因此,目前迫切需要一種不依賴于軟件工作狀態(tài)的設(shè)備故障日志記 錄方案,即使在設(shè)備軟件系統(tǒng)深度故障情況下仍然能夠保證設(shè)備關(guān)鍵信
息的獲取。
發(fā)明內(nèi)容
本發(fā)明的實施例旨在提供設(shè)備故障日志的硬件獲取方案,以在設(shè)備軟件
系統(tǒng)深度故障的情況下,仍然能夠確保對于設(shè)備中關(guān)鍵信息的記錄;
為實現(xiàn)上述目的,本發(fā)明的實施例提供了一種設(shè)備故障日志的硬件 獲取系統(tǒng),包括 看門狗裝置;
設(shè)有JTAG接口的中央處理器CPU;
邏輯器件,分別與所述看門狗裝置和CPU的JTAG接口連接,用于接收 所述看門狗裝置超時溢出時的觸發(fā),根據(jù)預(yù)設(shè)的邊界掃描邏輯通過所述 JTAG接口對CPU中選定單元執(zhí)行邊界掃描,并根據(jù)獲得的邊界掃描結(jié)果生 成設(shè)備故障日志;以及,在邊界掃描結(jié)束后觸發(fā)CPU復(fù)位。
其中,該邏輯器件可以包括邊界掃描邏輯設(shè)置單元,用于選定需 要進行邊界掃描的單元并設(shè)置邊界掃描邏輯;邊界掃描執(zhí)行單元,與所 述邊界掃描邏輯設(shè)置單元連接,用于接收述看門狗裝置超時溢出時的觸 發(fā),根據(jù)所述邊界掃描邏輯通過所述JTAG接口對CPU中選定單元執(zhí)行 邊界掃描,并根據(jù)獲得的邊界掃描結(jié)果生成設(shè)備故障日志;CPU復(fù)位單 元,與所述邊界掃描執(zhí)行單元連接,用于在邊界掃描結(jié)束后觸發(fā)CPU復(fù) 位。
該邏輯器件還可以包括邊界掃描邏輯收發(fā)單元,用于接收外部備 份設(shè)備下發(fā)的邊界掃描邏輯,觸發(fā)所述邊界掃描執(zhí)行單元執(zhí)行補充邊界掃描,并將補充掃描結(jié)果反饋給所述外部備份設(shè)備。
該邏輯器件包括CPLD、 EPLD (Electrically Programmable Logic Device,電可編程邏輯器件)或者FPGA (Field-Programmable Gate Array,
現(xiàn)場可編程門陣列)。
上述邊界掃描邏輯可以包括對于所述選定單元內(nèi)信息的讀取,和/或, 控制所述選定單元讀取CPU外部所需器件的信息。
上述設(shè)備故障日志的硬件獲取系統(tǒng)還可以包括非易失性數(shù)據(jù)存儲 器,與所述邏輯器件連接,用于保存邏輯器件生成的設(shè)備故障日志。
上述設(shè)備故障日志的硬件獲取系統(tǒng)還可以包括外部備份設(shè)備,所述 外部備份設(shè)備通過總線遠程接入所述邏輯器件,讀取所述設(shè)備故障曰志 或下發(fā)邊界掃描邏輯調(diào)度所述邏輯器件執(zhí)行補充邊界掃描。
基于上述設(shè)備故障日志的硬件獲取系統(tǒng),本發(fā)明的實施例還提供了一種
設(shè)備故障日志的硬件獲取方法,包括以下步驟
預(yù)先在邏輯器件中選定進行邊界掃描的單元并設(shè)置邊界掃描邏輯; 當(dāng)所述邏輯器件接收到看門狗超時溢出信號時,根據(jù)預(yù)設(shè)的邊界掃
描邏輯通過JTAG接口對CPU中選定單元執(zhí)行邊界掃描,并根據(jù)邊界掃
描結(jié)果生成設(shè)備故障日志;
以及,保存所述設(shè)備故障日志,并在邊界掃描結(jié)束后觸發(fā)CPU復(fù)位。 其中,所述邊界掃描邏輯可以包括對于所述選定單元內(nèi)信息的讀取,
和/或,控制所述選定單元讀取CPU外部所需器件的信息。
所述邏輯器件可以將設(shè)備故障日志保存在外部非易失性數(shù)據(jù)存儲器中。
還可以包括外部備份設(shè)備通過總線遠程接入所述邏輯器件,讀取所 述設(shè)備故障日志的步驟;
或者,還可以包括外部備份設(shè)備通過總線遠程接入所述邏輯器件, 通過下發(fā)邊界掃描邏輯調(diào)度所述邏輯器件執(zhí)行補充邊界掃描的步驟。
由上述技術(shù)方案可知,本發(fā)明的實施例中硬件邏輯通過JTAG接口獲得
6CPU的控制權(quán),具有以下有益效果
1、 不受限于設(shè)備軟件系統(tǒng)故障程度,即使在設(shè)備軟件系統(tǒng)深度故障的 情況下,依然能夠保證對于設(shè)備關(guān)鍵信息的獲??;
2、 能夠保證對設(shè)備故障的及時、可靠處理;
3、 結(jié)合遠程接入邏輯器件的外部備份設(shè)備,可以實現(xiàn)對設(shè)備故障的 遠程診斷或者遠程控制。
通過以下參照附圖對優(yōu)選實施例的說明,本發(fā)明的上述以及其它目的、 特征和優(yōu)點將更加明顯。
圖1為現(xiàn)有技術(shù)中基于軟件實現(xiàn)設(shè)備故障日志記錄的工作原理圖; 圖2為JTAG規(guī)范中TAP控制器的狀態(tài)機示意圖; 圖3為能夠支持本發(fā)明設(shè)備故障日志的硬件獲取系統(tǒng)的硬件邏輯圖; 圖4為本發(fā)明提供的設(shè)備故障日志的硬件獲取系統(tǒng)一實施例的框圖; 圖5為本發(fā)明提供的設(shè)備故障日志的硬件獲取方法一實施例的流程圖。
具體實施例方式
下面將詳細描述本發(fā)明的具體實施例。應(yīng)當(dāng)注意,這里描述的實施例只 用于舉例說明,并不用于限制本發(fā)明。
基于規(guī)范描述和方便閱讀的考慮,逐一定義本發(fā)明專利申請文件中出現(xiàn) 的術(shù)語如下
JTAG (Joint Test Action Group,聯(lián)合測試行動組)是一種遵守IEEE 1149.1標(biāo)準(zhǔn)的國際標(biāo)準(zhǔn)測試規(guī)范,在JTAG規(guī)范基礎(chǔ)上進行擴展的規(guī)范稱為 EJTAG (Enhanced JTAG);
JTAG接口是指遵守JTAG規(guī)范定義的接口,比如現(xiàn)有的JTAG接口
或者EJTAG接口 ,甚至于某些基于JTAG規(guī)范定義的私有接口 ;
需要說明的是,上述各術(shù)語僅作為指稱其意指的名稱之一,因此凡意指 與其相同或近似的名稱均應(yīng)視為其等價物。本發(fā)明的主要構(gòu)思在于基于硬件邏輯來記錄設(shè)備故障日志,來解決設(shè)備 在軟件系統(tǒng)深度故障情況下難以實現(xiàn)故障日志記錄的問題。這樣,為幫助讀
者更好的理解本發(fā)明,下面首先通過介紹現(xiàn)有技術(shù)中JTAG技術(shù),以證明本 發(fā)明方案的可行性。
IEEE 1149.1標(biāo)準(zhǔn)具體定義了以下規(guī)范
寄存器被分為兩大類數(shù)據(jù)寄存器(DataRegister, DR)和指令寄存器 (InstructionRegister, IR);
JTAG接口主要包括以下5個信號TDI (測試數(shù)據(jù)輸入信號)、TDO (測試數(shù)據(jù)輸出信號)、TMS (測試模式選擇信號)、TCK (測試時鐘信號) 以及TRST (測試復(fù)位信號);
該JTAG接口通過TAP (測試訪問端口)控制器能夠完成對上述數(shù)據(jù)寄 存器和指令寄存器的訪問;圖2顯示了TAP控制器的狀態(tài)機, 一共有16個 同步狀態(tài);在TCK信號的驅(qū)動下,從當(dāng)前狀態(tài)到下一個狀態(tài)的轉(zhuǎn)換是由TMS 信號決定的假設(shè)TAP控制器的當(dāng)前狀態(tài)為選擇數(shù)據(jù)寄存器掃描 (Select-DR-Scan),那么在TCK的驅(qū)動下,如果TMS二0,則TAP控制器 進入捕獲數(shù)據(jù)寄存器(Capture-DR)狀態(tài);如果TMS-1,則TAP控制器進 入選擇指令寄存器掃描(Select-IR-Scan)狀態(tài);其他狀態(tài)變化請具體參見 IEEE 1149.1標(biāo)準(zhǔn);
其中,邊界掃描寄存器屬于數(shù)據(jù)寄存器中很重要的一種,可以通過邊界 掃描寄存器將CPU和外部輸入輸出管腳隔離開來;也就是說,JTAG接口通 過TAP (測試訪問端口)控制器執(zhí)行邊界掃描(Boundary Scan)就可以獲得 對CPU內(nèi)部的控制權(quán),從而讀取CPU內(nèi)部關(guān)鍵資源信息或者CPU外部內(nèi)存 塊信息;
在理解了上述JTAP技術(shù)的基礎(chǔ)上,下面將詳細介紹本發(fā)明所提供的記 錄設(shè)備故障日志的方案。
首先,對本發(fā)明提供的記錄設(shè)備故障日志的硬件獲取系統(tǒng)加以描述, 請結(jié)合圖3,為能夠支持上述記錄設(shè)備故障日志的硬件獲取系統(tǒng)的硬件邏
8輯圖,其中包括看門狗裝置、設(shè)有JTAG接口的CPU和邏輯器件;以 及,為了支持上述記錄設(shè)備故障日志的硬件獲取系統(tǒng)的擴展功能,還包 括非易失存儲器件以及外部備份設(shè)備;其中,看門狗裝置、邏輯器件與 CPU依次連接,在設(shè)備正常工作時,CPU定時通過邏輯器件發(fā)送看門狗 清除信號;在發(fā)生硬件或者軟件故障時,邏輯器件根據(jù)看門狗裝置的超 時溢出信號執(zhí)行設(shè)備故障日志的記錄;
其中,邏輯器件可以通過CPLD、 EPLD或者FPGA實現(xiàn),也可以采 用其他類型的可編程邏輯器件,具體由生產(chǎn)設(shè)備商根據(jù)實際需要確定。
請結(jié)合圖4,為一具體實施例的框圖;以CPLD實現(xiàn)邏輯器件為例, 該記錄設(shè)備故障日志的硬件獲取系統(tǒng)400包括
設(shè)有JTAG接口 411的CPU410;
看門狗裝置430;
當(dāng)CPU410發(fā)生故障時,看門狗裝置430超時溢出(即看門狗餓死), 觸發(fā)CPLD420;
CPLD420,與所述CPU410的JTAG接口 411連接,通過模擬邊界 掃描的接口信號獲得CPU410的控制權(quán),即根據(jù)預(yù)設(shè)的邊界掃描邏輯, 通過所述JTAG接口 411對CPU410中選定單元執(zhí)行邊界掃描,生成設(shè) 備故障日志并在邊界掃描結(jié)束后觸發(fā)CPU410復(fù)位;
其中,該CPLD420執(zhí)行邊界掃描所根據(jù)的預(yù)設(shè)邊界掃描邏輯,是針 對選定單元預(yù)先設(shè)置的;該選定單元可以包括CPU中的錯誤寄存器 (epc)、程序指針寄存器(pc)、原因寄存器(cause)等任何希望保存 的寄存器;
上述針對選定單元的邊界掃描邏輯根據(jù)通用的JTAG規(guī)范要求設(shè)置 即可,可以簡述為命令字、操作地址和操作數(shù)的結(jié)合,對于不同的CPU 會存在細節(jié)上的差別,具體請參見IEEE 1149.1標(biāo)準(zhǔn),在此不再贅述;
根據(jù)上述邊界掃描邏輯通過該JTAG接口 411對CPU410中選定單元 執(zhí)行邊界掃描,能夠讀取選定單元內(nèi)的信息,和/或,能夠控制選定單元 讀取CPU外部所需器件的信息,比如,控制選定單元讀取系統(tǒng)主存中的 關(guān)鍵內(nèi)容(如頁表、程序棧等等)、外圍總線狀態(tài)、溫度監(jiān)視器等等關(guān)鍵器件信息;
特別是,由于JTAG時鐘是MHz級別,因此保證所讀取的是故障狀 態(tài)下CPU410內(nèi)部或者外部的相應(yīng)數(shù)據(jù);比如對于內(nèi)存來說,JEDEC( Solid State Technology Association,凝固態(tài)科技協(xié)會)標(biāo)準(zhǔn)中DDR2 SDRAM (Double Data Rate 2, Synchronous Dynamic Random Access Memory, 雙 倍數(shù)據(jù)率隨機存儲器)的位線刷新時間為7.9us,也就是當(dāng)設(shè)備發(fā)生故障 時內(nèi)存數(shù)據(jù)至少能保持7.9us,這對于MHz級別的時鐘來講已經(jīng)足夠了 , 因此能夠保證設(shè)備故障時內(nèi)存數(shù)據(jù)的獲??;
可以看出,即使設(shè)備軟件系統(tǒng)發(fā)生了深度故障,由于CPLD420以硬 件邏輯接管CPU410控制權(quán),因此能夠通過預(yù)設(shè)的邊界掃描邏輯模仿 JTAG波形將指定的CPU410內(nèi)外的重要信息保存下來;因此,本發(fā)明提 供的記錄設(shè)備故障日志的硬件獲取系統(tǒng)400能夠有效利用通用接口 JTAG,能夠不受限于設(shè)備軟件故障程度,保證對于設(shè)備關(guān)鍵信息的獲?。?br>
同時,由于利用的是通用接口 JTAG,具有規(guī)范的測試邏輯,因此能 夠大幅簡化外部實現(xiàn)電路。
進一步的,CPLD420在邊界掃描結(jié)束后釋放CPU410的復(fù)位信號, 使CPU正常復(fù)位重啟,能夠保證對于故障設(shè)備的及時、可靠恢復(fù);工程 師根據(jù)CPLD記錄下來的信息分析故障原因即可。
在上述記錄設(shè)備故障日志的硬件獲取系統(tǒng)400中,CPLD420具體可 以包括以下功能塊
邊界掃描邏輯設(shè)置單元421,用于選定需要進行邊界掃描的單元并 設(shè)置邊界掃描邏輯;
邊界掃描執(zhí)行單元422,與所述邊界掃描邏輯設(shè)置單元421和看門 狗裝置430連接,用于根據(jù)所述邊界掃描邏輯,通過所述JTAG接口 411 對CPU410中選定單元執(zhí)行邊界掃描,并根據(jù)獲得的邊界掃描結(jié)果生成 設(shè)備故障日志;
CPU復(fù)位單元423,與所述邊界掃描執(zhí)行單元422連接,用于在邊 界掃描結(jié)束后觸發(fā)CPU410復(fù)位;
較佳的,為了實現(xiàn)對于遠程設(shè)備的支持,該CPLD420還可以包括邊界掃描邏輯收發(fā)單元424,用于接收外部備份設(shè)備下發(fā)的邊界掃描邏 輯,觸發(fā)所述邊界掃描執(zhí)行單元執(zhí)行補充邊界掃描,并將補充掃描結(jié)果 反饋給所述外部備份設(shè)備。
進一步的,在上述記錄設(shè)備故障日志的硬件獲取系統(tǒng)400中, CPLD420生成的設(shè)備故障日志可以保存在內(nèi)部存儲模塊中,比如RAM (Random Access Memory, 隨機存儲器);
但由于RAM在系統(tǒng)掉電時會發(fā)生數(shù)據(jù)丟失,因此較佳的實施方案為 CPLD420將設(shè)備故障日志保存在專門的非易失性數(shù)據(jù)存儲器440中;
該非易失性數(shù)據(jù)存儲器440可以為FLASH (FlashMemory,閃存)、 NVRAM (Non-Volatile Random Access Memory,非易失性隨機存儲器)、 EEPROM (Electrically Erasable Programmable Read-Only Memory, 電可 擦可編程只讀存儲器)等;
該非易失性數(shù)據(jù)存儲器440通過內(nèi)部總線與CPLD420連接;由于局 部總線(Local BUS)和I2C總線(Inter IC-BUS,由Philips公司1990 年開發(fā)的一種簡單的雙向兩線總線,用于IC之間的有限控制)相對容易 實現(xiàn),而且對于CPLD資源占用較少,因此是內(nèi)部總線的較佳選擇;其 中,局部總線的時鐘是MHz級別,12C總線的時鐘是kHz級別,相對而 言,局部總線的效果更佳,但內(nèi)部總線的具體選用視實際的設(shè)計需要加 以調(diào)整即可,在此不再贅述。
更進一步的,在上述記錄設(shè)備故障日志的硬件獲取系統(tǒng)400中,還 可以包括外部備份設(shè)備450,該外部備份設(shè)備450可以通過CAN (Controller Area Network,控制局域網(wǎng))總線、I2C總線、Local BUS等 遠程接入CPLD420;
該外部備份設(shè)備450可以用于設(shè)備故障日志的遠程讀取,即無論設(shè) 備故障日志保存在CPLD420中還是保存在非易失性數(shù)據(jù)存儲器440中, 外部備份設(shè)備450都能夠通過總線遠程接入所述CPLD420,讀取所述設(shè) 備故障日志,實現(xiàn)遠程的故障信息獲取和診斷;
或者,該外部備份設(shè)備450可以用于遠程控制故障設(shè)備執(zhí)行補充邊 界掃描,具體如下
ii工程師可以通過Telnet協(xié)議(遠程登陸協(xié)議)登陸外部備份設(shè)備(備 用板)450,下發(fā)補充的邊界掃描邏輯到故障設(shè)備(故障板)的CPLD420, 模擬JTAG狀態(tài)機信號以獲取故障板上的補充資源信息;
一般來說,CPLD420中預(yù)設(shè)的邊界掃描邏輯往往是為獲取常規(guī)故障 曰志而設(shè)的,而通過外部備份設(shè)備450遠程控制CPU410下發(fā)的補充邊 界掃描邏輯,可以由工程師根據(jù)實際需要靈活設(shè)置,是對于CPLD邊界 掃描邏輯的有效補充,從而給研發(fā)和維護提供了具大便利;
當(dāng)然,外部備份設(shè)備450指令CPLD420執(zhí)行補充邊界掃描的時間點 很難正好處于故障設(shè)備未復(fù)位之前;因此,如果故障設(shè)備復(fù)位后恢復(fù)正 常,那么補充邊界掃描獲得的結(jié)果就不再是故障日志,參考價值不大; 但如果故障設(shè)備復(fù)位后仍未恢復(fù)正常,則工程師結(jié)合CPLD420存儲的設(shè) 備故障日志和補充邊界掃描結(jié)果,將更容易分析和定位設(shè)備故障。。
繼續(xù),對本發(fā)明提供的設(shè)備故障日志的硬件獲取方法加以描述,該 設(shè)備故障日志的硬件獲取方法基于上述提供的設(shè)備故障日志的硬件獲取 系統(tǒng)實現(xiàn),邏輯器件的硬件邏輯通過模擬邊界掃描的接口信號,通過通 用的JTAG接口獲得了 CPU的控制權(quán),因此,即使在設(shè)備軟件系統(tǒng)深度 故障的情況下,仍然能夠保證選定單元的信息獲取;以及,在保證故障 日志記錄的前提下,實現(xiàn)對于設(shè)備的及時、可靠處理;
上述設(shè)備故障日志的硬件獲取方法中邏輯器件為CPLD、 EPLD、 FPGA或其他可編程邏輯器件。
其一實施例如圖5所示,以邏輯器件為CPLD為例,包括
步驟Sl:預(yù)先在CPLD中選定進行邊界掃描的單元并設(shè)置邊界掃描 邏輯,其中,所述邊界掃描邏輯可以包括對于選定單元內(nèi)信息的讀取和/ 或控制選定單元讀取CPU外部所需器件的信息;
當(dāng)所述CPLD接收到看門狗超時溢出信號時,執(zhí)行步驟S2;
步驟S2:根據(jù)預(yù)設(shè)的邊界掃描邏輯,通過所述JTAG接口對CPU中 選定單元執(zhí)行邊界掃描并根據(jù)邊界掃描結(jié)果生成設(shè)備故障日志;
步驟S3:保存所述設(shè)備故障日志;其中,該設(shè)備故障日志既可以保存在CPLD內(nèi)部存儲器中,也可以 保存在外部非易失性數(shù)據(jù)存儲器中;
無論設(shè)備故障日志保存在什么位置,作為較佳的實施例,外部備份 設(shè)備可以通過總線遠程接入所述CPLD進行讀??;
步驟S4:識別邊界掃描是否結(jié)束,是則執(zhí)行步驟S5,否則重新執(zhí)行
步驟S2;
步驟S5:觸發(fā)CPU復(fù)位。
作為對邏輯器件(如CPLD)中預(yù)設(shè)邊界掃描邏輯的補充,外部備份 設(shè)備還可以通過總線遠程接入所述CPLD,通過下發(fā)補充邊界掃描邏輯調(diào) 度所述CPLD執(zhí)行補充邊界掃描;能夠在獲取CPLD預(yù)設(shè)的邊界掃描結(jié) 果的同時,根據(jù)實際情況或者更加具有針對性的數(shù)據(jù);
當(dāng)然,外部備份設(shè)備指令CPLD執(zhí)行補充邊界掃描的時間點很難正 好處于故障設(shè)備未復(fù)位之前;因此,如果故障設(shè)備復(fù)位后恢復(fù)正常,那 么補充邊界掃描獲得的結(jié)果就不再是故障日志,參考價值不大;但如果 故障設(shè)備復(fù)位后仍未恢復(fù)正常,則工程師結(jié)合CPLD存儲的設(shè)備故障日 志和補充邊界掃描結(jié)果,將更容易分析和定位設(shè)備故障。
雖然已參照幾個典型實施例描述了本發(fā)明,但應(yīng)當(dāng)理解,所用的術(shù)語是 說明和示例性、而非限制性的術(shù)語。由于本發(fā)明能夠以多種形式具體實施而 不脫離發(fā)明的精神或?qū)嵸|(zhì),所以應(yīng)當(dāng)理解,上述實施例不限于任何前述的細 節(jié),而應(yīng)在隨附權(quán)利要求所限定的精神和范圍內(nèi)廣泛地解釋,因此落入權(quán)利 要求或其等效范圍內(nèi)的全部變化和改型都應(yīng)為隨附權(quán)利要求所涵蓋。
權(quán)利要求
1.一種設(shè)備故障日志的硬件獲取系統(tǒng),其特征在于,包括看門狗裝置;設(shè)有JTAG接口的中央處理器CPU;邏輯器件,分別與所述看門狗裝置和CPU的JTAG接口連接,用于接收所述看門狗裝置超時溢出時的觸發(fā),根據(jù)預(yù)設(shè)的邊界掃描邏輯通過所述JTAG接口對CPU中選定單元執(zhí)行邊界掃描,并根據(jù)獲得的邊界掃描結(jié)果生成設(shè)備故障日志;以及,在邊界掃描結(jié)束后觸發(fā)CPU復(fù)位。
2. 根據(jù)權(quán)利要求l所述的設(shè)備故障日志的硬件獲取系統(tǒng),其特征在 于,所述邏輯器件包括邊界掃描邏輯設(shè)置單元,用于選定需要進行邊界掃描的單元并設(shè)置 邊界掃描邏輯;邊界掃描執(zhí)行單元,與所述邊界掃描邏輯設(shè)置單元連接,用于接收 所述看門狗裝置超時溢出時的觸發(fā),根據(jù)所述邊界掃描邏輯通過所述 JTAG接口對CPU中選定單元執(zhí)行邊界掃描,并根據(jù)獲得的邊界掃描結(jié) 果生成設(shè)備故障日志;CPU復(fù)位單元,與所述邊界掃描執(zhí)行單元連接,用于在邊界掃描結(jié) 束后觸發(fā)CPU復(fù)位。
3. 根據(jù)權(quán)利要求2所述的設(shè)備故障日志的硬件獲取系統(tǒng),其特征在 于,所述邏輯器件還包括邊界掃描邏輯收發(fā)單元,用于接收外部備份設(shè)備下發(fā)的邊界掃描邏 輯,觸發(fā)所述邊界掃描執(zhí)行單元執(zhí)行補充邊界掃描,并將補充掃描結(jié)果 反饋給所述外部備份設(shè)備。
4. 根據(jù)權(quán)利要求l-3任一所述的設(shè)備故障日志的硬件獲取系統(tǒng),其特 征在于,所述邏輯器件包括復(fù)雜可編程邏輯器件CPLD、電可編程邏輯器 件EPLD或者現(xiàn)場可編程門陣列FPGA。
5. 根據(jù)權(quán)利要求l-3任一所述的設(shè)備故障日志的硬件獲取系統(tǒng),其特 征在于,所述邊界掃描邏輯包括對于所述選定單元內(nèi)信息的讀取,和/或,控制所述選定單元讀取CPU外部所需器件的信息。
6. 根據(jù)權(quán)利要求1-3任一所述的設(shè)備故障日志的硬件獲取系統(tǒng),其特 征在于,所述設(shè)備故障日志的硬件獲取系統(tǒng)還包括非易失性數(shù)據(jù)存儲器, 與所述邏輯器件連接,用于保存邏輯器件生成的設(shè)備故障日志。
7. 根據(jù)權(quán)利要求l-3任一所述的設(shè)備故障日志的硬件獲取系統(tǒng),其特 征在于,所述設(shè)備故障日志的硬件獲取系統(tǒng)還包括外部備份設(shè)備,所述 外部備份設(shè)備通過總線遠程接入所述邏輯器件,讀取所述設(shè)備故障日志 或下發(fā)邊界掃描邏輯調(diào)度所述邏輯器件執(zhí)行補充邊界掃描。
8. —種基于權(quán)利要求1-7任一所述系統(tǒng)的設(shè)備故障日志的硬件獲取方 法,其特征在于,包括以下步驟預(yù)先在邏輯器件中選定進行邊界掃描的單元并設(shè)置邊界掃描邏輯; 當(dāng)所述邏輯器件接收到看門狗超時溢出信號時,根據(jù)預(yù)設(shè)的邊界掃描邏輯通過JTAG接口對CPU中選定單元執(zhí)行邊界掃描,并根據(jù)邊界掃描結(jié)果生成設(shè)備故障日志;以及,保存所述設(shè)備故障日志,并在邊界掃描結(jié)束后觸發(fā)CPU復(fù)位。
9. 根據(jù)權(quán)利要求8所述的設(shè)備故障日志的硬件獲取方法,其特征在 于,所述邊界掃描邏輯包括對于所述選定單元內(nèi)信息的讀取,和/或,控 制所述選定單元讀取CPU外部所需器件的信息。
10. 根據(jù)權(quán)利要求8所述的設(shè)備故障日志的硬件獲取方法,其特征在 于,所述邏輯器件將設(shè)備故障日志保存在外部非易失性數(shù)據(jù)存儲器中。
11. 根據(jù)權(quán)利要求8-10任一所述的設(shè)備故障日志的硬件獲取方法,其 特征在于,還包括外部備份設(shè)備通過總線遠程接入所述邏輯器件,讀取 所述設(shè)備故障日志的步驟。
12. 根據(jù)權(quán)利要求8-10任一所述的設(shè)備故障日志的硬件獲取方法,其 特征在于,還包括外部備份設(shè)備通過總線遠程接入所述邏輯器件,通過 下發(fā)邊界掃描邏輯調(diào)度所述邏輯器件執(zhí)行補充邊界掃描的步驟。
全文摘要
本發(fā)明公開了一種設(shè)備故障日志的硬件獲取系統(tǒng)和方法。邏輯器件分別與看門狗裝置和CPU的JTAG接口連接,用于接收看門狗裝置超時溢出時的觸發(fā),根據(jù)預(yù)設(shè)的邊界掃描邏輯通過JTAG接口對CPU中選定單元執(zhí)行邊界掃描,并根據(jù)獲得的邊界掃描結(jié)果生成設(shè)備故障日志;以及,在邊界掃描結(jié)束后觸發(fā)CPU復(fù)位。本發(fā)明不受限于設(shè)備軟件故障程度,即使在設(shè)備軟件系統(tǒng)深度故障的情況下,依然能夠保證對于設(shè)備關(guān)鍵信息的獲取。
文檔編號G06F11/00GK101556551SQ20091013135
公開日2009年10月14日 申請日期2009年4月15日 優(yōu)先權(quán)日2009年4月15日
發(fā)明者元 張 申請人:杭州華三通信技術(shù)有限公司