一種用ec sci功能監(jiān)控計(jì)算機(jī)死機(jī)的方法
【專利摘要】本發(fā)明公開(kāi)了一種用EC?SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法,所述的方法是使用ECtimer搭配SCI中斷的方式來(lái)解決計(jì)算機(jī)死機(jī)的問(wèn)題。本發(fā)明的一種用EC?SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法和現(xiàn)有技術(shù)相比,具有設(shè)計(jì)合理、操作方便等特點(diǎn),該方法不需要終端用戶額外運(yùn)行一個(gè)應(yīng)用程序,避免給終端用戶帶來(lái)了麻煩與技術(shù)挑戰(zhàn)。
【專利說(shuō)明】—種用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)死機(jī)處理【技術(shù)領(lǐng)域】,具體地說(shuō)是一種用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法。
【背景技術(shù)】
[0002]EC (Embed Controller,嵌入式控制器)是一個(gè)16位單片機(jī),它內(nèi)部本身也有一定容量的Flash來(lái)存儲(chǔ)EC的代碼。在系統(tǒng)開(kāi)啟的過(guò)程中,EC控制著絕大多數(shù)重要信號(hào)的時(shí)序。
[0003]SCI (Serial Communicat1n Interface)意為“串行通信接口”,是相對(duì)于并行通信的,是串行通信技術(shù)的一種總稱。SCI模塊用于串行通訊,通信協(xié)議體現(xiàn)在SCI的數(shù)據(jù)格式上。通常將SCI的數(shù)據(jù)格式稱之為可編程的數(shù)據(jù)格式。
[0004]Watchdog是Linux的“看門狗”。在由單片機(jī)構(gòu)成的微型計(jì)算機(jī)系統(tǒng)中,由于單片機(jī)的工作常常會(huì)受到來(lái)自外界電磁場(chǎng)的干擾,造成程序的跑飛,而陷入死循環(huán),程序的正常運(yùn)行被打斷,由單片機(jī)控制的系統(tǒng)無(wú)法繼續(xù)工作,會(huì)造成整個(gè)系統(tǒng)的陷入停滯狀態(tài),發(fā)生不可預(yù)料的后果,所以出于對(duì)單片機(jī)運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)監(jiān)測(cè)的考慮,便產(chǎn)生了一種專門用于監(jiān)測(cè)單片機(jī)程序運(yùn)行狀態(tài)的芯片,俗稱〃看門狗〃。
[0005]現(xiàn)如今,工控機(jī)在各行各業(yè)中應(yīng)用十分普遍。工控機(jī)已經(jīng)在航空信息,車載應(yīng)用,特種運(yùn)用,機(jī)械設(shè)備,金融系統(tǒng),智能交通,控制系統(tǒng),醫(yī)療設(shè)備等各領(lǐng)域發(fā)揮著巨大的作用。
[0006]由于硬件或軟件的原因,工控機(jī)有時(shí)會(huì)死機(jī)。像硬件散熱性能不佳或操作系統(tǒng)死鎖都會(huì)造成死機(jī)。死機(jī)是指操作系統(tǒng)不能正常工作。死機(jī)后,我們要強(qiáng)制讓電腦重啟,使得工控機(jī)再次能夠作業(yè)。這里有一個(gè)問(wèn)題,工控機(jī)是為工業(yè)現(xiàn)場(chǎng)控制而研制,在工控機(jī)運(yùn)行時(shí),往往沒(méi)有人在工控機(jī)旁邊守護(hù),那么我們?nèi)绾蝹蓽y(cè)工控機(jī)死機(jī)呢?
現(xiàn)在一般的做法有兩種。第一種,使用南橋TCO timer SMI Handle和南橋watchdog來(lái)做。第二種,使用操作系統(tǒng)的應(yīng)用程序搭配EC來(lái)做。第一種方式并不能完全做到偵測(cè)死機(jī),因?yàn)榈谝环N如果系統(tǒng)發(fā)生死鎖而CPU功能完好的話,TCO timer SMI中斷還是照樣可以觸發(fā),這種方法不會(huì)認(rèn)為計(jì)算機(jī)死機(jī)。只有CPU死掉,第一種方式才能起作用。第二種方式可以解決第一種方式帶來(lái)的弊端,但它要求終端用戶額外運(yùn)行一個(gè)應(yīng)用程序。但它需要終端用戶提供額外的應(yīng)用程序,無(wú)疑給終端用戶帶來(lái)了麻煩與技術(shù)挑戰(zhàn)。
【發(fā)明內(nèi)容】
[0007]本發(fā)明的技術(shù)任務(wù)是提供一種用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法。
[0008]本發(fā)明的技術(shù)任務(wù)是按以下方式實(shí)現(xiàn)的,所述的方法是使用EC timer搭配SCI中斷的方式來(lái)解決計(jì)算機(jī)死機(jī)的問(wèn)題。
[0009]所述的該方法的具體步驟包括EC偵測(cè)Watchdog變量和EC driver處理ECSCI兩個(gè)環(huán)節(jié)。
[0010]所述的EC偵測(cè)Watchdog變量的具體步驟如下:
首先,在EC代碼中,初始化Watchdog變量,并設(shè)置一個(gè)I秒鐘的Timer中斷;之后在Timer中斷中,使用Watchdog變量進(jìn)行計(jì)時(shí),如果計(jì)時(shí)到8秒鐘,發(fā)SCI中斷給Host端;如果Watchdog沒(méi)在發(fā)完SCI中斷后的4秒鐘內(nèi)恢復(fù)初值;EC拉南橋Init#管腳,CPU收到信息并重新啟動(dòng)系統(tǒng)。
[0011]所述的EC driver處理ECSCI的具體步驟如下:
B1S在ASL宣告EC Device,并將ECSCI設(shè)置成相應(yīng)的GPE,將相應(yīng)的EC space地址設(shè)置成讀寫Watchdog變量值的地址;操作系統(tǒng)啟動(dòng)時(shí),EC driver會(huì)讀取這些信息;在相應(yīng)QEvent里添加代碼,將數(shù)值12寫到Watchdog變量所在地址的EC SPACE中。
[0012]本發(fā)明的一種用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法和現(xiàn)有技術(shù)相比,具有設(shè)計(jì)合理、操作方便等特點(diǎn),該方法不需要終端用戶額外運(yùn)行一個(gè)應(yīng)用程序,避免給終端用戶帶來(lái)了麻煩與技術(shù)挑戰(zhàn)。
【專利附圖】
【附圖說(shuō)明】
[0013]附圖1為一種用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法的EC偵測(cè)Watchdog變量示意圖。
[0014]附圖2為一種用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法的EC driver處理ECSCI示意圖。
【具體實(shí)施方式】
[0015]實(shí)施例1:
該用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法包括EC偵測(cè)Watchdog變量和EC driver處理ECSCI兩個(gè)環(huán)節(jié);
EC偵測(cè)Watchdog變量的具體步驟:首先,在EC代碼中,初始化Watchdog變量,并設(shè)置一個(gè)I秒鐘的Timer中斷;之后在Timer中斷中,使用Watchdog變量進(jìn)行計(jì)時(shí),計(jì)時(shí)到8秒鐘,發(fā)SCI中斷給Host端。
[0016]EC driver處理ECSCI的具體步驟:B10S在ASL宣告EC Device,并將ECSCI設(shè)置成相應(yīng)的GPE,將相應(yīng)的EC space地址設(shè)置成讀寫Watchdog變量值的地址;操作系統(tǒng)啟動(dòng)時(shí),EC driver會(huì)讀取這些信息;在相應(yīng)QEvent里添加代碼,將數(shù)值12寫到Watchdog變量所在地址的EC SPACE中。
[0017]實(shí)施例2:
該用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法包括EC偵測(cè)Watchdog變量和EC driver處理ECSCI兩個(gè)環(huán)節(jié);
EC偵測(cè)Watchdog變量的具體步驟:首先,在EC代碼中,初始化Watchdog變量,并設(shè)置一個(gè)I秒鐘的Timer中斷;之后在Timer中斷中,使用Watchdog變量進(jìn)行計(jì)時(shí),Watchdog沒(méi)在發(fā)完SCI中斷后的4秒鐘內(nèi)恢復(fù)初值;EC拉南橋Init#管腳,CPU收到信息并重新啟動(dòng)系統(tǒng)。
[0018]EC driver處理ECSCI的具體步驟:B10S在ASL宣告EC Device,并將ECSCI設(shè)置成相應(yīng)的GPE,將相應(yīng)的EC space地址設(shè)置成讀寫Watchdog變量值的地址;操作系統(tǒng)啟動(dòng)時(shí),EC driver會(huì)讀取這些信息;在相應(yīng)QEvent里添加代碼,將數(shù)值12寫到Watchdog變量所在地址的EC SPACE中。
[0019]通過(guò)上面【具體實(shí)施方式】,所述【技術(shù)領(lǐng)域】的技術(shù)人員可容易的實(shí)現(xiàn)本發(fā)明。但是應(yīng)當(dāng)理解,本發(fā)明并不限于上述的幾種【具體實(shí)施方式】。在公開(kāi)的實(shí)施方式的基礎(chǔ)上,所述【技術(shù)領(lǐng)域】的技術(shù)人員可任意組合不同的技術(shù)特征,從而實(shí)現(xiàn)不同的技術(shù)方案。
【權(quán)利要求】
1.一種用EC SCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法,其特征在于,所述的方法是使用ECtimer搭配SCI中斷的方式來(lái)解決計(jì)算機(jī)死機(jī)的問(wèn)題。
2.根據(jù)權(quán)利要求1所述的一種用ECSCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法,其特征在于,所述的該方法的具體步驟包括EC偵測(cè)Watchdog變量和EC driver處理ECSCI兩個(gè)環(huán)節(jié)。
3.根據(jù)權(quán)利要求2所述的一種用ECSCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法,其特征在于,所述的EC偵測(cè)Watchdog變量的具體步驟如下: 首先,在EC代碼中,初始化Watchdog變量,并設(shè)置一個(gè)I秒鐘的Timer中斷;之后在Timer中斷中,使用Watchdog變量進(jìn)行計(jì)時(shí),如果計(jì)時(shí)到8秒鐘,發(fā)SCI中斷給Host端;如果Watchdog沒(méi)在發(fā)完SCI中斷后的4秒鐘內(nèi)恢復(fù)初值;EC拉南橋Init#管腳,CPU收到信息并重新啟動(dòng)系統(tǒng)。
4.根據(jù)權(quán)利要求2所述的一種用ECSCI功能監(jiān)控計(jì)算機(jī)死機(jī)的方法,其特征在于,所述的EC driver處理ECSCI的具體步驟如下: B1S在ASL宣告EC Device,并將ECSCI設(shè)置成相應(yīng)的GPE,將相應(yīng)的EC space地址設(shè)置成讀寫Watchdog變量值的地址;操作系統(tǒng)啟動(dòng)時(shí),EC driver會(huì)讀取這些信息;在相應(yīng)QEvent里添加代碼,將數(shù)值12寫到Watchdog變量所在地址的EC SPACE中。
【文檔編號(hào)】G06F11/30GK104199760SQ201410448531
【公開(kāi)日】2014年12月10日 申請(qǐng)日期:2014年9月4日 優(yōu)先權(quán)日:2014年9月4日
【發(fā)明者】趙龍偉, 陳乃闊, 牛玉峰 申請(qǐng)人:山東超越數(shù)控電子有限公司