新四季網

一種嵌入式系統監控及復位控制方法

2023-06-16 02:08:01

一種嵌入式系統監控及復位控制方法
【專利摘要】本發明涉及一種系統監控及復位控制方法,應用於各種嵌入式作業系統及設備,用以提高系統及設備運行的安全性、可靠性和穩定性。本發明方法利用系統軟體和CPLD邏輯代碼相結合的方式來產生餵狗信號,同時結合復位機制,可以使系統初始狀態更加確定,系統復位更加徹底。
【專利說明】一種嵌入式系統監控及復位控制方法
【技術領域】
[0001]本發明涉及一種系統監控及復位控制方法,應用於各種嵌入式作業系統及設備,用以提高系統及設備運行的安全性、可靠性和穩定性。
【背景技術】
[0002]WDT(watch dog timer)是最常見的系統異常監控方法,其中硬體電路一般採用MAX706等看門狗控制晶片,餵狗信號WDI —般有如下兩種產生方法。
[0003]第一種是直接利用系統軟體來產生周期性的餵狗信號。該方法的優點是實現簡單,餵狗信號是否正常直接反映了作業系統軟體是否正常工作。但是,它的缺點非常致命。因為MAX706等看門狗控制晶片的餵狗信號一般需要在1.6秒之內從高到低,或者從低到高產生跳變,一旦作業系統中的任務調度比較繁忙的話,經常會保證不了在1.6秒之內使餵狗信號產生跳變,從而會導致由於WDT定時器溢出而使系統復位的誤監控情況發生。
[0004]第二種是直接利用CPLD邏輯代碼來產生餵狗信號。該方法的優點是可以保證餵狗信號的精準,不會發生由於作業系統任務調度不及時而造成的餵狗信號產生不精準的問題,同時,用CPLD來產生餵狗信號也可以減輕作業系統的負擔。這一種方法的缺點是不能直接監控作業系統的運行狀況,它只能直接監控系統中CPLD邏輯代碼的運行狀況,因為作業系統和CPLD邏輯是各自獨立的,其中一種運行出問題,不代表另外一種也一定會出問題。

【發明內容】

[0005]本發明的目的是為了克服上述【背景技術】的不足之處,提供一種系統監控及復位控制方法,利用系統軟體和CPLD邏輯代碼相結合的方式來產生餵狗信號,同時結合復位機制,不但可以避免上述兩種方式中問題,同時還可以使系統初始狀態更加確定,系統復位更加徹底。
[0006]本發明的發明目的是通過如下技術手段實現的。
[0007]—種系統監控及復位控制方法,該方法使用的硬體部分包括CPLD晶片、CPU晶片、看門狗控制晶片及其他外圍硬體電路,該方法中看門狗控制晶片的餵狗信號WDI採用系統軟體和CPLD邏輯代碼相結合的方式來產生,包括以下步驟:
(I)CPLD邏輯代碼產生周期小於3.2秒的方波信號SI,SI通過一個看門狗使能控制位FLAGl和一個CPU餵狗信號是否正常標識位FLAG2共同控制以後,再經CPLD的一個I/O管腳Jl輸出給看門狗控制晶片的餵狗輸入管腳;其中,看門狗使能控制位FLAGl默認不使能,關閉看門狗,CPU作業系統初始化完成以後再由軟體動態使能該控制位FLAG1,打開看門狗。
[0008](2)按如下策略控制CPU餵狗信號是否正常標識位FLAG2:
作業系統軟體通過CPU的一個GP1管腳向CPLD的一個I/O管腳J2輸入周期為T的方波信號S2,在CPLD邏輯代碼中判斷S2是否在正常跳變,如果跳變正常,FLAG2置為正常,否則置為異常;考慮到CPU作業系統的調度工作量和系統監控效果,T 一般大於3.2S,小於6S為宜;
FLAGl使能,FLAG2正常時,SI正常輸出給看門狗控制晶片的餵狗輸入管腳;FLAG1不使能或者FLAGl使能,FLAG2異常時,SI停止輸出給看門狗控制晶片的餵狗輸入管腳;
這種嵌套產生餵狗信號的方法既監控了 CPLD邏輯代碼的實時運行狀態,也監控了作業系統軟體的實時運行狀態,同時S2的產生周期T可根據系統的實際負荷情況進行靈活調整,從而保證作業系統能夠調度及時。
[0009](3) CPU作業系統復位控制:
看門狗控制晶片的復位輸出管腳W_R接入CPLD的I/O管腳J3,設備的手動復位按鈕SW並聯接入看門狗控制晶片的手動復位管腳MR,這樣看門狗晶片因餵狗信號不正常而復位、手動按鈕復位和設備上電啟動時J3上都會輸入復位信號RST,RST的低電平寬度為200毫秒,之後會自行跳變到高電平;CPLD邏輯代碼利用RST信號給相應的寄存器賦予確定的初值,其中,CPLD的餵狗輸出管腳Jl上賦予高阻態初值,看門狗使能控制位FLAGl —定要不使能,否則會造成系統啟動過程中由於CPU還未來得及產生S2時,Jl上的餵狗信號不正常而造成系統不斷重啟。同時在CPLD邏輯代碼中定義寄存器REG用於系統軟體控制各硬體晶片的復位,各硬體晶片的復位信號RSTO,RSTl等由J3上的復位信號RST和系統軟體復位控制位REG共同控制,任意一種有效都會控制CPU晶片及作業系統和其他硬體晶片的復位。
[0010]此復位機制中由於手動復位按鈕SW並聯接入看門狗控制晶片的手動復位管腳MR,而不是直接接入CPLD的I/O管腳,這樣就可以利用看門狗控制晶片的防抖動特性,避免CPLD邏輯代碼錯誤的將SW上的抖動當成復位操作。同時利用看門狗晶片輸出的復位信號RST來賦予相應的CPLD寄存器初值,可以使相應的初始狀態更加確定,避免了由於沒有初始狀態而引發的一些異常問題發生。各硬體晶片的復位操作由看門狗晶片輸出的復位信號RST和軟體復位控制位REG共同控制,可以使復位操作更加徹底和更加靈活。
[0011]在上述技術方案中,發明方法硬體部分包括CPLD晶片、看門狗控制晶片MAX706、CPU晶片,所述CPU晶片通過一個GP1管腳與CPLD的一個I/O管腳J2相連,CPLD晶片的I/O管腳Jl與MAX706晶片的WDI輸入管腳相連,設備的手動復位按鈕SW通過4.7K的上拉電阻後並聯接入MAX706晶片的手動復位按鈕MR, MAX706晶片的RST管腳與CPLD的I/O管腳J3相連,CPLD的I/O管腳J4和I/O管腳J5別與CPU晶片及其他外圍硬體電路相連。
[0012]本發明一種系統監控及復位控制方法,該方法基於CPLD邏輯、硬體電路和軟體控制策略,可以實現對實時運行的系統是否正常運行進行監控,同時也提供一種系統上電及系統異常復位控制機制,可有效提高嵌入式系統及設備運行的安全性、可靠性和穩定性。
【專利附圖】

【附圖說明】
[0013]圖1為本發明中餵狗信號WDI及復位信號產生硬體連接示意圖。
[0014]圖2為本發明餵狗信號WDI產生流程圖。
【具體實施方式】
[0015]下面結合附圖及實施例對本發明作進一步描述。
[0016]如圖1所示,本實施例硬體部分包括CPLD晶片、看門狗控制晶片MAX706、CPU晶片,所述CPU晶片通過一個GP1管腳輸出周期為T的方波信號S2給CPLD的一個I/O管腳J2,CPLD邏輯產生的餵狗信號WDI通過I/O管腳Jl輸入到MAX706晶片的WDI輸入管腳,設備的手動復位按鈕SW通過4.7K的上拉電阻上拉後並聯接入MAX706晶片的手動復位按鈕MR, MAX706產生的復位信號RST通過I/O管腳J3輸入給CPLD,CPLD產生的復位信號RSTO和RSTl等分別通過I/O管腳J4和I/O管腳J5輸入給CPU晶片及其他外圍硬體電路晶片。其中,為了給復位信號一個確定的初始非復位狀態,電路中各復位信號均通過一個4.7K的電阻上拉,並且為了去抖動,各復位信號同時通過一個1nf左右的電容並聯到地,MAX706的定時器溢出管腳WD0_N直接和MR相連,這樣一旦WDI餵狗不及時,MAX706晶片內部的定時器溢出或者設備的手動復位按鈕SW按下時,MAX706的復位管腳RST_N均會輸出200ms左右的低電平復位號。
[0017]如圖2所示為由系統軟體和CPLD邏輯代碼相結合來產生WDI信號的流程圖。
[0018]第一步,系統啟動一個看門狗定時器來通過CPU的一個GP1管腳產生周期為T的方波信號S2:啟動看門狗定時器,通過CPU的GP1管腳8產生周期T=4秒的方波信號S2 ;
第二步,系統軟體設置CPLD中的看門狗使能控制位FLAGl為使能狀態;
第三步,CPLD邏輯代碼產生周期小於3.2秒的方波信號SI ;
第四步,判斷S2信號的高低跳變周期是否小於Τ/2,若為是則判斷CPU餵狗信號是否正常標識位FLAG2跳變正常,進入步驟五;若為否則判斷CPU餵狗信號是否正常標識位FLAG2跳變不正常,則SI停止輸出給看門狗控制晶片的WDI管腳;
第五步,判斷是否滿足看門狗使能控制位FLAGl使能,CPU餵狗信號是否正常標識位FLAG2正常,若為是SI正常輸出給看門狗控制晶片的WDI管腳,若為否則SI停止輸出給看門狗控制晶片的WDI管腳;
第六步,返回第四步。
[0019]本實施例中還提供一種CPU作業系統復位控制,具體實現方式如下:
看門狗控制晶片的復位輸出管腳W_R接入CPLD的I/O管腳J3,設備的手動復位按鈕SW並聯接入看門狗控制晶片的手動復位管腳MR,這樣看門狗晶片因餵狗信號不正常而復位、手動按鈕復位和設備上電啟動時J3上都會輸入復位信號RST,RST的低電平寬度為200毫秒,之後會自行跳變到高電平;CPLD邏輯代碼利用RST信號給相應的寄存器賦予確定的初值,其中,CPLD的餵狗輸出管腳Jl上賦予高阻態初值,看門狗使能控制位FLAGl —定要不使能,同時在CPLD邏輯代碼中定義寄存器REG用於系統軟體控制各硬體晶片的復位,各硬體晶片的復位信號由J3上的復位信號RST和系統軟體復位控制位REG共同控制,任意一種有效都會控制CPU晶片及作業系統和其他硬體晶片的復位。
[0020]以VxWorks作業系統為例,系統啟動一個看門狗定時器來通過CPU的一個GP1管腳產生周期為T的方波信號S2的實現過程如下:
/*啟動看門狗定時器,通過CPU的GP1管腳8產生周期T=4秒的方波信號S2*/ void Feed_ffdt_Start (void)
{
WdIdO =wdCreate ;//創建看門狗定時器
ffd_Ctrl_Low ;//啟動看門狗定時器產生周期為4秒的方波信號
}Void ffd_Ctrl_Low (void)
{
Gp18_direct1n_output (0) ; // 控制 CPU 的 GP108 對外輸出低電平 wdStart(ffdIdO, T/2, (FUNCPTR)ffd_Ctrl_High, NULL) ;// 啟動看門狗定時器
}
Void ffd_Ctrl_High (void)
{
Gp18_direct1n_output (I) ; // 控制 CPU 的 GP108 對外輸出高電平 wdStart(ffdIdO, T/2, (FUNCPTR)ffd_Ctrl_Low, NULL) ;// 啟動看門狗定時器
}
作業系統啟動完成以後,執行如下函數Init_WDT來開啟系統的監控功能。
[0021]void Init_WDT (void)
{
Feed_ffdt_Start ;//啟動看門狗定時器產生周期為4秒的方波信號 CPLD_ffd_En ;//使能CPLD中的看門狗使能控制為FLAGl
}
以Verilog可編程邏輯語言為例,CPLD邏輯中檢測S2信號是否在按周期T正常跳變, 產生WDI餵狗信號以及復位控制等的實現過程如下: input GP108, //J2 input RST, //J3 output WDI, //Jl output RSTO, //J4 output RSTI, //J5
wire FLAG2; //S2產生是否正常標識位 reg WDI_reg;
reg FLAGl;//看門狗使能控制位
regCLK_8K;//8KHz 的時鐘信號
reg S2_HIGH;//S2的高電平半周期跳變標識位
reg S2_L0ff;//S2的低電平半周期跳變標識位
reg run_per1d_2s; //周期為2秒的方波信號,用於輸出給WDI
reg soft_rst_ctl [7:0];系統軟體復位各晶片控制位
always (posedge CLK_8K or negedge RST)//WDI 產生模塊
begin
if (RST == I』 bO) // MAX706輸出低電平復位信號
begin
FLAGK=IJ bO; //初始化時把看門狗使能位置為不使能
ffDI_reg<=rbz; //復位過程中WDI給高阻態,不啟動MAX706內部的定時器,以免MAX706不斷輸出復位信號,使系統無法正常啟動end
【權利要求】
1.一種嵌入式系統監控及復位控制方法,該方法使用的硬體部分包括CPLD晶片、CPU晶片、看門狗控制晶片及其他外圍硬體電路,其特徵在於該方法包括以下步驟: (1)CPLD邏輯代碼產生周期小於3.2秒的方波信號SI,SI通過一個看門狗使能控制位FLAGl和一個CPU餵狗信號是否正常標識位FLAG2共同控制以後,再經CPLD晶片的一個I/O管腳Jl輸出給看門狗控制晶片的餵狗輸入管腳;其中,看門狗使能控制位FLAGl默認不使能,關閉看門狗,CPU作業系統初始化完成後再由軟體動態使能控制位FLAG1,打開看門狗; (2)按如下策略控制CPU餵狗信號是否正常標識位FLAG2: CPU作業系統通過CPU的一個GP1管腳向CPLD的一個I/O管腳J2輸入周期為T的方波信號S2,在CPLD邏輯代碼中判斷S2是否在正常跳變,如果跳變正常,FLAG2置為正常,否則置為異常;其中,T 一般大於3.2S,小於6S; (3)若FLAGl使能,FLAG2正常時,SI正常輸出給看門狗控制晶片的餵狗輸入管腳;FLAGl不使能或者FLAGl使能,FLAG2異常時,SI停止輸出給看門狗控制晶片的餵狗輸入管腳; (4)CPU作業系統復位控制: 看門狗控制晶片的復位輸出管腳W_R接入CPLD的I/O管腳J3,設備的手動復位按鈕SW並聯接入看門狗控制晶片的手動復位管腳MR,這樣看門狗晶片因餵狗信號不正常而復位、手動按鈕復位和設備上電啟動時J3上都會輸入復位信號RST,RST的低電平寬度為200毫秒,之後會自行跳變到高電平;CPLD邏輯代碼利用RST信號給相應的寄存器賦予確定的初值,其中,CPLD的餵狗輸出管腳Jl上賦予高阻態初值,看門狗使能控制位FLAGl —定要不使能,同時在CPLD邏輯代碼中定義寄存器REG用於系統軟體控制各硬體晶片的復位,各硬體晶片的復位信號由J3上的復位信號RST和系統軟體復位控制位REG共同控制,任意一種有效都會控制CPU晶片及作業系統和其他硬體晶片的復位。
2.根據權利要求1所述的嵌入式系統監控及復位控制方法,其特徵是:所述方法硬體部分包括CPLD晶片、看門狗控制晶片MAX706、CPU晶片,所述CPU晶片通過一個GP1管腳與CPLD的一個I/O管腳J2相連,CPLD晶片的I/O管腳Jl與MAX706晶片的WDI輸入管腳相連,設備的手動復位按鈕SW通過4.7K的上拉電阻後並聯接入MAX706晶片的手動復位按鈕MR, MAX706晶片的RST管腳與CPLD的I/O管腳J3相連,CPLD的I/O管腳J4和I/O管腳J5分別與CPU晶片及其他外圍硬體電路相連。
【文檔編號】G06F11/30GK104035536SQ201410269423
【公開日】2014年9月10日 申請日期:2014年6月18日 優先權日:2014年6月18日
【發明者】鄭霞, 郭浩, 陳鵬, 徐鵬飛, 淳增輝, 李三, 張翼, 陳昊, 鄧松, 何裕舒, 程曉, 蔡立安, 鄧玉華, 溫照柏, 徐翔, 湯靈 申請人:中國船舶重工集團公司第七二二研究所

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀