欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

輔助cpu工作狀態(tài)的檢測方法、系統(tǒng)、組件及多cpu設(shè)備的制作方法

文檔序號:6466520閱讀:321來源:國知局
專利名稱:輔助cpu工作狀態(tài)的檢測方法、系統(tǒng)、組件及多cpu設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信設(shè)備控制技術(shù),尤其涉及一種輔助CPU工作狀態(tài)的檢 測方法和檢測系統(tǒng),還涉及一種多CPU設(shè)備和輔助CPU工作狀態(tài)的檢測組件。
背景技術(shù)
隨著處理數(shù)據(jù)的不斷增加,以及人們對于處理能力要求的不斷提高,僅具有單一 CPU的設(shè)備已經(jīng)日益難以滿足實(shí)際需求,因此常常在同一設(shè)備上 設(shè)計(jì)多個(gè)CPU,外界數(shù)據(jù)通過接口器件送往各CPU,各CPU分別進(jìn)行相關(guān) 業(yè)務(wù)的處理,從而實(shí)現(xiàn)設(shè)備處理能力的擴(kuò)展。但是,由于各個(gè)CPU之間是 相互獨(dú)立的,主CPU對于輔助CPU的狀態(tài)并不清楚,因此當(dāng)某一輔助CPU出現(xiàn)故障時(shí),無法使其退出服務(wù)。為了解決上述問題,現(xiàn)有技術(shù)通過板間通信的方式進(jìn)行CPU之間的握手,以實(shí)現(xiàn)對輔助CPU工作狀態(tài)的檢測,具體包括主控板上的主CPU通過板間通信向其他業(yè)務(wù)板上的輔助CPU發(fā)送握手報(bào)文,并對輔助CPU的板 間回應(yīng)的握手報(bào)文進(jìn)行統(tǒng)計(jì);當(dāng)發(fā)現(xiàn)一定時(shí)間內(nèi)(比如n個(gè)握手報(bào)文的時(shí)間) 沒有收到某一輔助CPU的回應(yīng)時(shí),認(rèn)為該業(yè)務(wù)板的CPU工作狀態(tài)異常,對其進(jìn)行自動復(fù)位。上述現(xiàn)有技術(shù)所采用的板間通信方案雖然能夠?qū)崿F(xiàn)主CPU對輔助 CPU工作狀態(tài)的檢測和控制,但實(shí)時(shí)性較差,其原因主要包括以下兩個(gè)方面一個(gè)方面,是握手報(bào)文本身存在的發(fā)送間隔和容錯時(shí)間; 一般情況 下,主控板的主CPU每隔1秒發(fā)送一次握手報(bào)文,加上容錯判斷的時(shí)間 (即n次沒有響應(yīng)才判斷異常),因此輔助CPU工作狀態(tài)的檢測時(shí)間至 少是n秒;另一方面,主CPU對報(bào)文的處理是串行的,如圖1所示,因此主CPU5在對握手報(bào)文的處理過程中,必然要受到其他報(bào)文處理進(jìn)度的影響,難 以保證在主CPU本身對于握手報(bào)文處理的及時(shí)性,導(dǎo)致檢測時(shí)間的進(jìn)一 步延長。可以看出,現(xiàn)有的輔助CPU工作狀態(tài)檢測方案在檢測實(shí)時(shí)性方面表 現(xiàn)不佳。對于一些具有高實(shí)時(shí)數(shù)據(jù)處理需求的網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備,上述缺陷表現(xiàn)的尤為明顯。比如,當(dāng)通過OAM (Operation, Administration and Maintenance,操作、管理和維護(hù))信元維護(hù)網(wǎng)絡(luò)時(shí),為了提高作為段點(diǎn)或者端點(diǎn)的網(wǎng)絡(luò)節(jié)點(diǎn) 設(shè)備對于OAM信元的處理能力,需要為該網(wǎng)絡(luò)節(jié)點(diǎn)相應(yīng)增設(shè)輔助CPU,稱 之為OAM CPU;由于OAM信元的處理實(shí)時(shí)性要求非常高,因此, 一般要 求OAM CPU對各個(gè)任務(wù)的響應(yīng)時(shí)間不宜超過50ms。而采用現(xiàn)有的輔助CPU 工作狀態(tài)檢測方案,當(dāng)一個(gè)輔助CPU發(fā)生異常時(shí),僅其判定時(shí)間就需要以 秒計(jì),再加上后續(xù)的復(fù)位或者輔助CPU切換處理等操作,顯然對于一個(gè)出 現(xiàn)異常的輔助CPU來說,其所處理的任務(wù)是不可能在指定的時(shí)間內(nèi)獲得響 應(yīng)的。綜上所述,基于現(xiàn)有的輔助CPU工作狀態(tài)檢測方案,主CPU難以快速 檢測到輔助CPU的工作狀態(tài),因此也無法快速的進(jìn)行后續(xù)的復(fù)位或切換處 理,這也直接導(dǎo)致了網(wǎng)絡(luò)節(jié)點(diǎn)處理性能的下降。發(fā)明內(nèi)容本發(fā)明的實(shí)施例旨在提供輔助CPU工作狀態(tài)的檢測方案,以實(shí)現(xiàn)主CPU 對輔助CPU工作狀態(tài)的快速檢測。為實(shí)現(xiàn)上述目的,本發(fā)明的實(shí)施例提供了一種輔助CPU工作狀態(tài)的檢 測方法,適用于設(shè)有一個(gè)主CPU和至少一個(gè)輔助CPU的設(shè)備;在該主CPU和各輔助CPU啟動完成后執(zhí)行以下步驟步驟SI:該輔助CPU基于硬件中斷定時(shí)向與其一一對應(yīng)設(shè)置的第二硬件邏輯單元執(zhí)行數(shù)據(jù)寫入操作 ,步驟S2:與該主CPU對應(yīng)設(shè)置的第一硬件邏輯單元監(jiān)控各第二硬件邏 輯單元的數(shù)據(jù)寫入狀況;步驟S3:當(dāng)該第一硬件邏輯單元超出預(yù)設(shè)時(shí)間未檢測到某一第二硬件邏 輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常并上報(bào)給該主CPU。本發(fā)明的實(shí)施例還提供了一種輔助CPU工作狀態(tài)的檢測系統(tǒng),適用 于設(shè)有一個(gè)主CPU和至少一個(gè)輔助CPU的設(shè)備;該檢測系統(tǒng)包括與輔助CPU —一對應(yīng)連接的第二硬件邏輯單元,用于接受相應(yīng)輔助CPU基于硬件中斷定時(shí)的數(shù)據(jù)寫入操作;與該主CPU對應(yīng)連接的第一硬件邏輯單元,與各第二硬件邏輯單元連接,用于監(jiān)控各第二硬件邏輯單元的數(shù)據(jù)寫入情況,并在超出預(yù)設(shè)時(shí)間未檢測到某一第二硬件邏輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常并上 報(bào)給該主CPU。本發(fā)明的實(shí)施例還提供了一種多CPU設(shè)備,包括一個(gè)主CPU和至少 一個(gè)輔助CPU,還包括如上所述的輔助CPU工作狀態(tài)的檢測系統(tǒng)。本發(fā)明的實(shí)施例還提供了一種輔助CPU工作狀態(tài)的檢測組件,包括 一主CPU;與該主CPU對應(yīng)連接的第一硬件邏輯單元,用于監(jiān)控各輔助CPU對其第二硬件邏輯單元的數(shù)據(jù)寫入情況,并在超出預(yù)設(shè)時(shí)間未檢測到某 一第二硬件邏輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常并上報(bào)給主 CPU。本發(fā)明的實(shí)施例還提供了一種輔助CPU工作狀態(tài)的檢測組件,包括 一輔助CPU;與該輔助CPU對應(yīng)連接的第二硬件邏輯單元,用于接受該 輔助CPU基于硬件中斷定時(shí)的數(shù)據(jù)寫入操作,使主CPU的第一硬件邏輯單 元能夠基于該數(shù)據(jù)寫入操作識別所述輔助CPU的狀態(tài)。由上述技術(shù)方案可知,本發(fā)明的實(shí)施例采用基于硬件中斷的高可靠定時(shí)處理,具有以下有益效果1、 實(shí)現(xiàn)主CPU對輔助CPU工作狀態(tài)的快速檢測;2、 進(jìn)一步保證了報(bào)文處理的高實(shí)時(shí)性;3、 不通過板間通信的方式進(jìn)行握手,因此不占用板間通信的帶寬。通過以下參照附圖對優(yōu)選實(shí)施例的說明,本發(fā)明的上述以及其它目的、 特征和優(yōu)點(diǎn)將更加明顯。


圖1為現(xiàn)有技術(shù)中主CPU對報(bào)文進(jìn)行處理的示意圖;圖2為本發(fā)明所提供的輔助CPU工作狀態(tài)的檢測方法一實(shí)施例的流程圖;圖3為圖2所示方法的應(yīng)用示意圖;圖4為本發(fā)明所提供的輔助CPU工作狀態(tài)的檢測方法另一實(shí)施例的流 程圖;圖5A、 5B為本發(fā)明所提供的輔助CPU工作狀態(tài)的檢測方法較佳實(shí)施例 的應(yīng)用示意圖;圖6為本發(fā)明所提供的輔助CPU工作狀態(tài)的檢測系統(tǒng)一實(shí)施例的框圖; 圖7為本發(fā)明所提供的輔助CPU工作狀態(tài)的檢測系統(tǒng)一具體實(shí)施例的 框圖;圖8為本發(fā)明所提供的輔助CPU工作狀態(tài)的檢測系統(tǒng)一改進(jìn)實(shí)施例的 框圖。
具體實(shí)施方式
下面將詳細(xì)描述本發(fā)明的具體實(shí)施例。應(yīng)當(dāng)注意,這里描述的實(shí)施例只 用于舉例說明,并不用于限制本發(fā)明。本發(fā)明的技術(shù)構(gòu)思在于,處于正常工作狀態(tài)的輔助CPU基于硬件的高 可靠定時(shí)中斷進(jìn)行數(shù)據(jù)寫入,通過專有的硬件邏輯單元對CPU的硬件寫入 進(jìn)行響應(yīng),這樣,當(dāng)輔助CPU出現(xiàn)故障導(dǎo)致數(shù)據(jù)寫入的中斷時(shí),硬件邏輯 單元就能夠迅速做出反應(yīng),從而取代現(xiàn)有技術(shù)中通過板間通信進(jìn)行CPU間 交互的檢測方式,實(shí)現(xiàn)對輔助CPU故障的快速檢測。為了實(shí)現(xiàn)上述技術(shù)構(gòu)思,本發(fā)明提供了一種輔助CPU工作狀態(tài)的檢 測方法,適用于設(shè)有一個(gè)主CPU和至少一個(gè)輔助CPU的設(shè)備,用于實(shí)現(xiàn)2 個(gè)或者多個(gè)CPU的快速握手。需要指出,多個(gè)CPU的具體排列方式并 不影響本發(fā)明技術(shù)方案的實(shí)現(xiàn),比如,多個(gè)CPU可以在同一個(gè)單板上,也可以在不同的單板上通過總線連接起來。該輔助CPU工作狀態(tài)的檢測方法一實(shí)施例如圖2所示,在主CPU和各輔助CPU啟動完成后執(zhí)行以下步驟步驟Sl:輔助CPU基于硬件中斷定時(shí)向與其一一對應(yīng)設(shè)置的第二硬件 邏輯單元執(zhí)行數(shù)據(jù)寫入操作;在本步驟S1中,第二硬件邏輯單元可以是可編程邏輯器件,通過邏輯 實(shí)現(xiàn)一個(gè)寄存器的功能,接受輔助CPU基于硬件中斷定時(shí)寫入的數(shù)據(jù);由 于硬件中斷由硬件保證觸發(fā),因此具有高可靠性。較佳的,輔助CPU是基于TICK中斷(俗稱滴答中斷)定時(shí)向與其第 二硬件邏輯單元執(zhí)行數(shù)據(jù)寫入操作,也就是說,硬件中斷可以為TICK 中斷。以默認(rèn)情況下,每10ms產(chǎn)生一次TICK中斷為例,則按照TICK 中斷,處于正常狀態(tài)的輔助CPU每10ms就能夠執(zhí)行一次對第二硬件邏 輯單元的數(shù)據(jù)寫入,而當(dāng)輔助CPU沒有按時(shí)執(zhí)行數(shù)據(jù)寫入時(shí),說明該輔 助CPU已經(jīng)由于軟件或者硬件故障發(fā)生了宕機(jī)或者重新啟動的情況。步驟S2:與主CPU對應(yīng)設(shè)置的第一硬件邏輯單元監(jiān)控各第二硬件邏輯 單元的數(shù)據(jù)寫入狀況;在本步驟S2中,第一硬件邏輯單元可以是可編程邏輯器件,通過與各 個(gè)第二硬件邏輯單元的總線連接實(shí)現(xiàn)對第二硬件邏輯單元數(shù)據(jù)寫入的檢測。 具體的,可以采用由接收到數(shù)據(jù)寫入的第二硬件邏輯單元主動觸發(fā)第一硬件 邏輯單元的方案加以實(shí)現(xiàn)步驟S21:接收到數(shù)據(jù)寫入的第二硬件邏輯單元向第一硬件邏輯單元 發(fā)送觸發(fā)信號;該觸發(fā)信號可以是波形信號,比如方波或者脈沖,當(dāng)然,也可以是 其它的波形或者波形的變化,比如,前一次觸發(fā)發(fā)送高電平波形,下一 次觸發(fā)發(fā)送低電平波形等,只要第一硬件邏輯單元能夠通過接收到的波 形識別出第二硬件邏輯單元是否存在數(shù)據(jù)寫入即可;步驟S22:第一硬件邏輯單元通過監(jiān)控接收到的觸發(fā)信號識別各第二 硬件邏輯單元的數(shù)據(jù)寫入狀況;具體的,第一硬件邏輯單元可以通過監(jiān)控是否按時(shí)收到特定的波形 或者脈沖,或者收到的波形是否發(fā)生變化來判斷第二硬件邏輯單元是否 存在數(shù)據(jù)寫入。9硬件邏輯單元在沒有數(shù)據(jù)寫入時(shí),不發(fā)送觸發(fā)信號, 因此第一硬件邏輯單元可以據(jù)此很容易的判斷出第二硬件邏輯單元的數(shù)據(jù) 寫入狀況;同時(shí),第一硬件邏輯單元對第二硬件邏輯單元的監(jiān)控是基于硬件 實(shí)現(xiàn)的,具有高可靠性?;蛘?,本步驟S2可以采用由第一硬件邏輯單元主動查詢第二硬件邏輯 單元的方案加以實(shí)現(xiàn)第一硬件邏輯單元定時(shí)向第二硬件邏輯單元發(fā)送查詢 信號,當(dāng)?shù)诙布壿媶卧獩]有收到數(shù)據(jù)寫入時(shí),不對該査詢信號進(jìn)行反應(yīng);這種情況下,第一硬件邏輯單元也可以根據(jù)査詢信號的反饋情況判斷出第二硬件邏輯單元的數(shù)據(jù)寫入狀況;雖然這種情況下對于輔助CPU異常的識別 較前一種情況可能稍微滯后,但第一硬件邏輯單元對第二硬件邏輯單元的監(jiān) 控同樣是基于硬件實(shí)現(xiàn)的,也具有高可靠性。步驟S3:當(dāng)?shù)谝挥布壿媶卧鲱A(yù)設(shè)時(shí)間未檢測到某一第二硬件邏輯 單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常并上報(bào)給主CPU。在本步驟S3中,第一硬件邏輯單元需要進(jìn)行計(jì)時(shí),計(jì)時(shí)次數(shù)可以預(yù) 設(shè),比如2次或者3次,當(dāng)然也可以多次;如果在預(yù)設(shè)時(shí)間內(nèi)(n*10ms, n為計(jì)時(shí)次數(shù))未檢測到某一第二硬件邏輯單元的數(shù)據(jù)寫入,那么就可以 識別該輔助CPU異常??梢钥闯觯?dāng)一個(gè)輔助CPU出現(xiàn)故障時(shí),基本上在毫秒級的時(shí)間內(nèi), 第一硬件邏輯單元就能夠?qū)崿F(xiàn)識別和對主CPU的上報(bào),因此,主CPU 能夠接近實(shí)時(shí)的獲知輔助CPU的狀態(tài)異常。作為一個(gè)具體實(shí)施例,當(dāng)計(jì) 時(shí)次數(shù)取3時(shí),主CPU可以在30ms后獲知輔助CPU的故障,這能夠保 證一些具有高實(shí)時(shí)性要求的業(yè)務(wù)(比如OAM信元處理)的順利進(jìn)行。具體的,第一硬件邏輯單元可以通過中斷方式實(shí)現(xiàn)對主CPU的上報(bào)。通過上述步驟S1 S3,本發(fā)明提供的輔助CPU工作狀態(tài)的檢測方法基于 硬件中斷進(jìn)行高可靠定時(shí)處理,能夠?qū)崿F(xiàn)主CPU對輔助CPU工作狀態(tài)的快 速檢測,能夠適應(yīng)高實(shí)時(shí)性要求環(huán)境,同時(shí),不通過板間通信的方式進(jìn)行握 手,因此不占用板間通信的帶寬。如圖3所,顯示了本發(fā)明所提供的輔助CPU工作狀態(tài)的檢測方法 的一應(yīng)用示意圖。進(jìn)一步的,由于輔助CPU在啟動成功前處于上電狀態(tài),硬件中斷尚未 執(zhí)行工作,那么有可能導(dǎo)致主CPU誤判其工作異常。舉例來說,當(dāng)主CPU檢測到一輔助CPU異常并指令該輔助CPU復(fù)位時(shí),由于在該輔助CPU的復(fù)位過程中沒有繼續(xù)檢測到數(shù)據(jù)寫入,可能第一硬件邏輯單元會再次認(rèn)定該輔助CPU異常并上報(bào)主CPU,由該主CPU重新指令其復(fù)位,這樣陷入一種死 循環(huán)中。再例如,在多CPU設(shè)備初始化時(shí),由于輔助CPU處于上電狀態(tài), 因此其硬件中斷無法正常工作,那么第一硬件邏輯單元也會認(rèn)為該輔助CPU狀態(tài)異常,從而產(chǎn)生誤判。為了避免這種情況,作為一個(gè)較佳的實(shí)施例,在輔助CPU啟動過程中, 包括異常時(shí)主CPU的指令復(fù)位過程中,以及輔助CPU的初始化過程中,還需要執(zhí)行以下步驟S01:啟動成功的輔助CPU向主CPU執(zhí)行注冊操作;S02:主CPU接收到一輔助CPU的注冊時(shí),使能第一硬件邏輯單元對相應(yīng)第二硬件邏輯單元的檢測功能。這樣,當(dāng)輔助CPU復(fù)位成功之前,或者輔助CPU初始化成功之前,由 于主CPU并未啟動第一硬件邏輯單元的相應(yīng)檢測功能,因此避免了誤判情 況的發(fā)生。當(dāng)然,本領(lǐng)域普通技術(shù)人員可以理解,當(dāng)主CPU識別一個(gè)輔助 CPU異常并指令其復(fù)位時(shí),還要相應(yīng)的對該輔助CPU去注冊,并指令第一硬件邏輯單元關(guān)閉相應(yīng)的檢測功能。如圖4所示,顯示了本發(fā)明提供的輔助CPU工作狀態(tài)的檢測方法另一實(shí)施例的流程圖。但是,在上述提供的實(shí)施例中,能夠迅速識別的僅為引起硬件中斷的輔助CPU故障情況,比如輔助CPU故障宕機(jī)或者重新啟動;但對于 一些軟件異常,比如陷入未導(dǎo)致CPU重啟的死循環(huán),由于硬件中斷(如 TICK中斷)能夠照常工作,即第二硬件邏輯單元還能夠繼續(xù)接收到輔助 CPU的數(shù)據(jù)寫入,那么主CPU還需要結(jié)合現(xiàn)有的板間通信方式進(jìn)行滯后 檢測,也就是上述技術(shù)方案對于一些特定的、軟件方面的輔助CPU故障, 難以實(shí)現(xiàn)主CPU快速的檢測。為了克服上述技術(shù)缺陷,較佳的,可以在步驟S1中采用下述兩種方案加以解決一種如圖5A所示各輔助CPU分別在硬件中斷時(shí),比如在TICK 中斷中,進(jìn)行運(yùn)行程序狀態(tài)的識別;當(dāng)出現(xiàn)運(yùn)行程序異常時(shí),阻斷對相 應(yīng)第二硬件邏輯單元的數(shù)據(jù)寫入操作;進(jìn)一步的,為了提高第一硬件邏輯單元對于輔助CPU異常的識別速度, 可以由該輔助CPU直接觸發(fā)該第一硬件邏輯單元上報(bào)給主CPU,從而實(shí) 現(xiàn)主CPU對軟件異常情況的迅速獲知,使該輔助CPU處理的業(yè)務(wù)能夠 及時(shí)切換到備用輔助CPU或者分流到其他輔助CPU進(jìn)行處理。另一種如圖5B所示通過為各輔助CPU分別設(shè)置的硬件狗對相應(yīng)輔助 CPU運(yùn)行程序進(jìn)行監(jiān)控,當(dāng)監(jiān)控到該輔助CPU出現(xiàn)運(yùn)行程序異常時(shí),復(fù)位 該輔助CPU;對于第二種情況,由于軟件出現(xiàn)異常比如死循環(huán)時(shí)會觸發(fā)硬件狗報(bào) 警,由硬件狗相應(yīng)進(jìn)行輔助CPU的復(fù)位,那么可能存在以下兩種可能的情形(1) 當(dāng)輔助CPU迅速復(fù)位,甚至其復(fù)位時(shí)間短于第一硬件邏輯單 元識別輔助CPU異常的預(yù)設(shè)時(shí)間,那么硬件中斷將在復(fù)位期間中止,并 在復(fù)位之后迅速恢復(fù),重新進(jìn)行對第二硬件邏輯單元的數(shù)據(jù)寫入。雖然此時(shí),第一硬件邏輯單元不會識別輔助CPU異常,但由于輔助 CPU已經(jīng)復(fù)位,能夠正常處理報(bào)文,因此能夠滿足業(yè)務(wù)需求。比如對于 OAM信元處理而言,如果一個(gè)輔助CPU故障,并在30ms內(nèi)完成復(fù)位, 那么相對于OAM信元所要求的50ms反應(yīng)時(shí)間來說,是綽綽有余的,也 就是說,輔助CPU從不正常到正常的時(shí)間符合實(shí)時(shí)性要求,不需要執(zhí)行 輔助CPU的切換操作;(2) 當(dāng)輔助CPU的復(fù)位時(shí)間較長時(shí),那么硬件中斷在預(yù)設(shè)時(shí)間甚 至更長時(shí)間內(nèi)不能正常工作,也就無法正常向第二硬件邏輯單元執(zhí)行數(shù) 據(jù)寫入,則第一硬件邏輯單元可以在預(yù)設(shè)時(shí)間到達(dá)時(shí)識別輔助CPU異常, 及時(shí)向主CPU執(zhí)行上報(bào),使該輔助CPU處理的業(yè)務(wù)能夠及時(shí)切換到備 用輔助CPU或者分流到其他輔助CPU進(jìn)行處理。需要指出,上述步驟S1中補(bǔ)充采用的兩種方案事實(shí)上解決的問題各有側(cè)重。第一種方案主要解決一些輔助CPU自檢能夠發(fā)現(xiàn)的較微小異常, 這類異常不會影響對于硬件狗的觸發(fā),因此不會引起硬件狗的警戒;第 二種方案主要解決較大的軟件異常,比如軟件死循環(huán),這種情況下,輔 助CPU由于沒有能力觸發(fā)硬件狗而引起硬件狗的警戒。可以看出,上述 第一種方案下,硬件狗的監(jiān)控能力很難發(fā)揮,而上述第二種方案下,輔助CPU—般已經(jīng)喪失了自檢的能力,因此,將二者結(jié)合使用,能夠有效達(dá)到完善監(jiān)控軟件異常的效果。相應(yīng)的,本發(fā)明還提供了一種輔助CPU工作狀態(tài)的檢測系統(tǒng),該檢測 系統(tǒng)適用于設(shè)有一個(gè)主CPU和至少一個(gè)輔助CPU的設(shè)備,用于實(shí)現(xiàn)2個(gè)或 者多個(gè)CPU的快速握手;同樣的,多個(gè)CPU的具體排列方式并不影響本發(fā) 明技術(shù)方案的實(shí)現(xiàn),比如,多個(gè)CPU可以在同一個(gè)單板上,也可以在不同 的單板上通過總線連接起來。如圖6所示,顯示了該輔助CPU工作狀態(tài)的檢測系統(tǒng)100 —實(shí)施例的框圖,包括與輔助CPU —一對應(yīng)連接的第二硬件邏輯單元102,用于接受相應(yīng)輔助 CPU基于硬件中斷定時(shí)的數(shù)據(jù)寫入操作;較佳的,該基于硬件中斷定時(shí)的數(shù)據(jù)寫入操作為基于TICK中斷定時(shí)的 數(shù)據(jù)寫入操作,即處于正常狀態(tài)的輔助CPU根據(jù)TICK中斷,比如默認(rèn)情況 下每10ms向第二硬件邏輯單元102寫入一次數(shù)據(jù)??梢钥闯觯捎谳o助CPU的硬件中斷由硬件保證觸發(fā),因此具有高可 靠性。而當(dāng)輔助CPU沒有按時(shí)執(zhí)行數(shù)據(jù)寫入時(shí),說明該輔助CPU已經(jīng)由 于軟件或者硬件故障發(fā)生了宕機(jī)或者重新啟動的情況。與主CPU對應(yīng)連接的第一硬件邏輯單元101 ,與第二硬件邏輯單元102 連接,用于監(jiān)控各第二硬件邏輯單元102的數(shù)據(jù)寫入情況,并在超出預(yù)設(shè)時(shí) 間未檢測到某一第二硬件邏輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異 常并上報(bào)給主CPU,具體的上報(bào)方式可以采用中斷上報(bào)。其中,第一硬件邏輯單元101對第二硬件邏輯單元102的監(jiān)控可以通過 接收到數(shù)據(jù)寫入的第二硬件邏輯單元102主動觸發(fā)實(shí)現(xiàn),也可以由第一硬件邏輯單元102主動查詢實(shí)現(xiàn)。以前一種情況為例,由于第二硬件邏輯單元102 在沒有數(shù)據(jù)寫入時(shí),不發(fā)送觸發(fā)信號,因此第一硬件邏輯單元IOI可以據(jù)此 很容易的判斷出第二硬件邏輯單元102的數(shù)據(jù)寫入狀況;同時(shí),第一硬件邏輯單元101對第二硬件邏輯單元102的監(jiān)控是基于硬件實(shí)現(xiàn)的,具有高可靠 性;以后一種情況為例,第一硬件邏輯單元IOI可以根據(jù)第二硬件邏輯單元 102對查詢信號的反饋情況判斷出第二硬件邏輯單元102的數(shù)據(jù)寫入狀況, 雖然這種情況下對于輔助CPU異常的識別較前一種情況可能稍微滯后,但 第一硬件邏輯單元101對第二硬件邏輯單元102的監(jiān)控同樣是基于硬件實(shí)現(xiàn) 的,也具有高可靠性。由于硬件中斷是毫秒級的,如果預(yù)設(shè)時(shí)間在幾個(gè)計(jì)時(shí)中斷內(nèi),那么 對一個(gè)故障輔助CPU的識別也可以在毫秒級實(shí)現(xiàn)。也就是說,當(dāng)一個(gè)輔 助CPU出現(xiàn)故障時(shí),基本上在毫秒級的時(shí)間內(nèi),第一硬件邏輯單元101 就能夠?qū)崿F(xiàn)識別和對主CPU的上報(bào),因此,主CPU能夠接近實(shí)時(shí)的獲 知輔助CPU的狀態(tài)異常。通過上述實(shí)施例,本發(fā)明提供的輔助CPU工作狀態(tài)的檢測系統(tǒng)100基 于硬件中斷進(jìn)行高可靠定時(shí)處理,能夠?qū)崿F(xiàn)主CPU對輔助CPU工作狀態(tài)的 快速檢測,能夠適應(yīng)高實(shí)時(shí)性要求環(huán)境,同時(shí),不通過板間通信的方式進(jìn)行 握手,因此不占用板間通信的帶寬。在上述實(shí)施例中,第一硬件邏輯單元101與第二硬件邏輯單元102 可以合設(shè)或分設(shè),也就是說,第一硬件邏輯單元101與第二硬件邏輯單 元102既可以分別采用芯片或者硬件功能塊實(shí)現(xiàn),也可以整合在一塊芯 片或者硬件功能塊上實(shí)現(xiàn)。比如,第一硬件邏輯單元101和第二硬件邏 輯單元102具體可以采用可編程邏輯器件實(shí)現(xiàn)。作為一具體實(shí)現(xiàn)方案,請結(jié)合圖7,顯示了本發(fā)明所提供的輔助CPU 工作狀態(tài)的檢測系統(tǒng)IOO—具體實(shí)施例的框圖,其第一硬件邏輯單元101 對第二硬件邏輯單元102的監(jiān)控通過接收到數(shù)據(jù)寫入的第二硬件邏輯單 元102主動觸發(fā)實(shí)現(xiàn),具體的該第二硬件邏輯單元102包括相連接的數(shù)據(jù)寫入接收模塊1021和觸 發(fā)信號發(fā)送模塊1022,第一硬件邏輯單元101包括相連接的觸發(fā)信號識別模塊1011和異常上報(bào)模塊1012;其中,觸發(fā)信號發(fā)送模塊1022和觸 發(fā)信號識別模塊1011可以為波形信號發(fā)送器和波形信號識別器,該波形 信號可以包括脈沖和方波,當(dāng)然,也可以是其他的波形或者波形的變化。 其中該數(shù)據(jù)寫入接收模塊1021用于根據(jù)輔助CPU的數(shù)據(jù)寫入,觸發(fā)觸 發(fā)信號發(fā)送模塊1022;觸發(fā)信號發(fā)送模塊1022用于向所述第一硬件邏輯單元101發(fā)送觸發(fā)信號;觸發(fā)信號識別模塊1011識別接收到的觸發(fā)信號,以識別各第二硬件 邏輯單元102的數(shù)據(jù)寫入狀況,即通過監(jiān)控是否按時(shí)收到特定的波形或 者脈沖,或者收到的波形是否發(fā)生變化來判斷第二硬件邏輯單元102是 否存在數(shù)據(jù)寫入;異常上報(bào)模塊1012用于根據(jù)各第二硬件邏輯單元102的數(shù)據(jù)寫入狀況, 相應(yīng)向主CPU上報(bào);可以看出,由于第二硬件邏輯單元在沒有數(shù)據(jù)寫入時(shí),不發(fā)送觸發(fā)信號, 因此第一硬件邏輯單元可以據(jù)此很容易的判斷出第二硬件邏輯單元的數(shù)據(jù) 寫入狀況;同時(shí),第一硬件邏輯單元對第二硬件邏輯單元的監(jiān)控是基于硬件 實(shí)現(xiàn)的,具有高可靠性。進(jìn)一步的,由于輔助CPU在啟動成功前處于上電狀態(tài),硬件中斷尚未 執(zhí)行工作,那么有可能導(dǎo)致主CPU誤判其工作異常。為了避免這種情況, 作為一個(gè)較佳的實(shí)施例,該第一硬件邏輯單元101可以包括使能寄存器(圖 中未示),用于在主CPU接收到一輔助CPU的注冊時(shí),使能第一硬件邏輯 單元101對相應(yīng)第二硬件邏輯單元的檢測功能。這樣,當(dāng)輔助CPU復(fù)位成 功之前,或者輔助CPU初始化成功之前,由于主CPU并未啟動第一硬件邏 輯單元101的相應(yīng)檢測功能,因此避免了誤判情況的發(fā)生。當(dāng)然,本領(lǐng)域普 通技術(shù)人員可以理解,當(dāng)主CPU識別一個(gè)輔助CPU異常并指令其復(fù)位時(shí), 還要相應(yīng)的對該輔助CPU去注冊,并指令第一硬件邏輯單元101關(guān)閉相應(yīng)的檢測功能。再進(jìn)一步的,為了克服上述技術(shù)方案在一些軟件異常的情況下,難以實(shí)現(xiàn)主CPU對輔助CPU故障進(jìn)行快速檢測的缺陷,本發(fā)明還提供了兩個(gè)改進(jìn) 實(shí)施例。其中一實(shí)施例為,輔助CPU工作狀態(tài)的檢測系統(tǒng)100中,輔助CPU中分別設(shè)有接口單元(圖中未示),該接口單元與第一硬件邏輯單元101連接, 用于在硬件中斷時(shí)識別所在輔助CPU的運(yùn)行程序狀態(tài),當(dāng)出現(xiàn)運(yùn)行程序異常時(shí),阻斷對相應(yīng)第二硬件邏輯單元102的數(shù)據(jù)寫入操作;進(jìn)一步的,為了提高第一硬件邏輯單元101對于輔助CPU異常的識別 速度,可以由該接口單元直接觸發(fā)所述第一硬件邏輯單元101,使其上報(bào)給 所述主CPU,從而實(shí)現(xiàn)主CPU對軟件異常情況的迅速獲知,使該輔助CPU 處理的業(yè)務(wù)能夠及時(shí)切換到備用輔助CPU或者分流到其他輔助CPU進(jìn)行處理。另一實(shí)施例為,輔助CPU工作狀態(tài)的檢測系統(tǒng)100還包括與輔助CPU 一一對應(yīng)連接的硬件狗單元103,用于對相應(yīng)輔助CPU運(yùn)行程序進(jìn)行監(jiān)控, 當(dāng)監(jiān)控到輔助CPU出現(xiàn)運(yùn)行程序異常時(shí),復(fù)位所述輔助CPU。這種情況下, 如果輔助CPU迅速復(fù)位,那么硬件中斷將在復(fù)位期間中止,并在復(fù)位之后 迅速恢復(fù),重新進(jìn)行對第二硬件邏輯單元的數(shù)據(jù)寫入,即輔助CPU從不正 常到正常的時(shí)間符合實(shí)時(shí)性要求;如果輔助CPU的復(fù)位時(shí)間較長,那么硬 件中斷在預(yù)設(shè)時(shí)間甚至更長時(shí)間內(nèi)不能正常工作,則第一硬件邏輯單元101 可以在預(yù)設(shè)時(shí)間到達(dá)時(shí)識別輔助CPU異常,及時(shí)向主CPU執(zhí)行上報(bào),使該 輔助CPU處理的業(yè)務(wù)能夠及時(shí)切換到備用輔助CPU或者分流到其他輔助 CPU進(jìn)行處理。由于上述第一實(shí)施例主要克服較微小的軟件故障,而另一實(shí)施例主要克 服較嚴(yán)重的軟件故障,因此,較佳的改進(jìn)方案為將兩個(gè)實(shí)施例結(jié)合起來使用,如圖8所示。本發(fā)明還提供了一種多CPU設(shè)備10,包括一個(gè)主CPU 200和至少一個(gè) 輔助CPU 300,還包括如上所述的輔助CPU工作狀態(tài)的檢測系統(tǒng)IOO,其具 體連接關(guān)系請結(jié)合圖6、 7和8。由于在實(shí)際實(shí)現(xiàn)過程中,主CPU方面的檢測組件和輔助CPU方面的 檢測組件可以分別由不同的廠商獨(dú)立實(shí)現(xiàn),因此本發(fā)明相應(yīng)提供了相應(yīng) 的輔助CPU工作狀態(tài)的檢測組件。一種輔助CPU工作狀態(tài)的檢測組件包括 一主CPU,以及與該主CPU對應(yīng)連接的第一硬件邏輯單元,用于監(jiān)控各輔助CPU對其第二硬件邏輯單元的數(shù)據(jù)寫入情況,并在超出預(yù)設(shè)時(shí)間未檢測到某一第二硬件邏輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常并上報(bào)給該主CPU;另一種輔助CPU工作狀態(tài)的檢測組件包括 一輔助CPU,以及與該輔助CPU對應(yīng)連接的第二硬件邏輯單元,用于接受該輔助CPU基于硬件中 斷定時(shí)的數(shù)據(jù)寫入操作,使主CPU的第一硬件邏輯單元能夠基于該數(shù)據(jù)寫 入操作識別該輔助CPU的狀態(tài)。將上述一包括主CPU的檢測組件和一個(gè)或多個(gè)包括輔助CPU的檢測 組件結(jié)合起來,即實(shí)現(xiàn)一個(gè)多CPU設(shè)備。雖然己參照幾個(gè)典型實(shí)施例描述了本發(fā)明,但應(yīng)當(dāng)理解,所用的術(shù)語是說明和示例性、而非限制性的術(shù)語。由于本發(fā)明能夠以多種形式具體實(shí)施而不脫離發(fā)明的精神或?qū)嵸|(zhì),所以應(yīng)當(dāng)理解,上述實(shí)施例不限于任何前述的細(xì)節(jié),而應(yīng)在隨附權(quán)利要求所限定的精神和范圍內(nèi)廣泛地解釋,因此落入權(quán)利 要求或其等效范圍內(nèi)的全部變化和改型都應(yīng)為隨附權(quán)利要求所涵蓋。
權(quán)利要求
1.一種輔助CPU工作狀態(tài)的檢測方法,適用于設(shè)有一個(gè)主CPU和至少一個(gè)輔助CPU的設(shè)備;其特征在于,在所述主CPU和各輔助CPU啟動完成后執(zhí)行以下步驟步驟S1所述輔助CPU基于硬件中斷定時(shí)向與其一一對應(yīng)設(shè)置的第二硬件邏輯單元執(zhí)行數(shù)據(jù)寫入操作;步驟S2與所述主CPU對應(yīng)設(shè)置的第一硬件邏輯單元監(jiān)控各第二硬件邏輯單元的數(shù)據(jù)寫入狀況;步驟S3當(dāng)所述第一硬件邏輯單元超出預(yù)設(shè)時(shí)間未檢測到某一第二硬件邏輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常并上報(bào)給所述主CPU。
2. 根據(jù)權(quán)利要求1所述的輔助CPU工作狀態(tài)的檢測方法,其特征在于,所述步驟S1還包括各輔助CPU分別在硬件中斷時(shí)進(jìn)行運(yùn)行程序狀態(tài)的識別,當(dāng)出現(xiàn)運(yùn)行程序異常時(shí),阻斷對相應(yīng)第二硬件邏輯單元的數(shù)據(jù)寫入操作,和/或直接觸發(fā)所述第一硬件邏輯單元上報(bào)給所述主CPU。
3. 根據(jù)權(quán)利要求1所述的輔助CPU工作狀態(tài)的檢測方法,其特征在于,所述步驟S1還包括通過為各輔助CPU分別設(shè)置的硬件狗對相應(yīng)輔助CPU運(yùn)行程序進(jìn)行監(jiān)控,當(dāng)監(jiān)控到所述輔助CPU出現(xiàn)運(yùn)行程序異 常時(shí),復(fù)位所述輔助CPU。
4. 根據(jù)權(quán)利要求1-3任一所述的輔助CPU工作狀態(tài)的檢測方法,其 特征在于,所述步驟S2包括步驟S21:接收到數(shù)據(jù)寫入的第二硬件邏輯單元向所述第一硬件邏輯 單元發(fā)送觸發(fā)信號;步驟S22:所述第一硬件邏輯單元通過監(jiān)控接收到的觸發(fā)信號識別各 第二硬件邏輯單元的數(shù)據(jù)寫入狀況。
5. 根據(jù)權(quán)利要求1-3任一所述的輔助CPU工作狀態(tài)的檢測方法,其 特征在于,在所述輔助CPU啟動過程中還執(zhí)行以下步驟S01:啟動成功的輔助CPU向所述主CPU執(zhí)行注冊操作;S02:所述主CPU接收到一輔助CPU的注冊時(shí),使能所述第一硬件邏輯單元對相應(yīng)第二硬件邏輯單元的檢測功能。
6. —種輔助CPU工作狀態(tài)的檢測系統(tǒng),適用于設(shè)有一個(gè)主CPU和至 少一個(gè)輔助CPU的設(shè)備;其特征在于,所述檢測系統(tǒng)包括與所述輔助CPU —一對應(yīng)連接的第二硬件邏輯單元,用于接受相應(yīng)輔 助CPU基于硬件中斷定時(shí)的數(shù)據(jù)寫入操作;與所述主CPU對應(yīng)連接的第一硬件邏輯單元,與所述第二硬件邏輯單元連接,用于監(jiān)控各第二硬件邏輯單元的數(shù)據(jù)寫入情況,并在超出預(yù)設(shè)時(shí)間未檢測到某一第二硬件邏輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常 并上報(bào)給所述主CPU。
7. 根據(jù)權(quán)利要求6所述的輔助CPU工作狀態(tài)的檢測系統(tǒng),其特征在 于,所述輔助CPU中分別設(shè)有接口單元,所述接口單元與所述第一硬件 邏輯單元連接,用于在硬件中斷時(shí)識別所在輔助CPU的運(yùn)行程序狀態(tài), 當(dāng)出現(xiàn)運(yùn)行程序異常時(shí),阻斷對相應(yīng)第二硬件邏輯單元的數(shù)據(jù)寫入操作, 和/或直接觸發(fā)所述第一硬件邏輯單元,使其上報(bào)給所述主CPU。
8. 根據(jù)權(quán)利要求6所述的輔助CPU工作狀態(tài)的檢測系統(tǒng),其特征在 于,還包括與所述輔助CPU—一對應(yīng)連接的硬件狗單元,用于對相應(yīng)輔助 CPU運(yùn)行程序進(jìn)行監(jiān)控,當(dāng)監(jiān)控到所述輔助CPU.出現(xiàn)運(yùn)行程序異常時(shí), 復(fù)位所述輔助CPU。
9. 根據(jù)權(quán)利要求6-8任一所述的輔助CPU工作狀態(tài)的檢測系統(tǒng),其 特征在于,所述第二硬件邏輯單元包括相連接的數(shù)據(jù)寫入接收模塊和觸 發(fā)信號發(fā)送模塊,所述第一硬件邏輯單元包括相連接的觸發(fā)信號識別模 塊和異常上報(bào)模塊;所述數(shù)據(jù)寫入接收模塊用于根據(jù)輔助CPU的數(shù)據(jù)寫入,觸發(fā)觸發(fā)信 號發(fā)送模塊;所述觸發(fā)信號發(fā)送模塊用于向所述第一硬件邏輯單元發(fā)送觸發(fā)信號 所述觸發(fā)信號識別模塊識別接收到的觸發(fā)信號,以識別各第二硬件 邏輯單元的數(shù)據(jù)寫入狀況;所述異常上報(bào)模塊用于根據(jù)各第二硬件邏輯單元的數(shù)據(jù)寫入狀況,相應(yīng)向所述主CPU上報(bào)。
10.根據(jù)權(quán)利要求6-8任一所述的輔助CPU工作狀態(tài)的檢測系統(tǒng),其 特征在于,所述第一硬件邏輯單元包括使能寄存器,用于在所述主CPU 接收到一輔助CPU的注冊時(shí),使能所述第一硬件邏輯單元對相應(yīng)第二硬件 邏輯單元的檢測功能。
11.根據(jù)權(quán)利要求6-8任一所述的輔助CPU工作狀態(tài)的檢測系統(tǒng),其 特征在于,所述第一硬件邏輯單元與所述第二硬件邏輯單元合設(shè)或分設(shè)。
12. 根據(jù)權(quán)利要求6-8任一所述的輔助CPU工作狀態(tài)的檢測系統(tǒng),其 特征在于,所述第一硬件邏輯單元和所述第二硬件邏輯單元為可編程邏 輯器件。
13. —種多CPU設(shè)備,包括一個(gè)主CPU和至少一個(gè)輔助CPU,其特征 在于,還包括如權(quán)利要求6-12任一所述的輔助CPU工作狀態(tài)的檢測系統(tǒng)。
14. 一種輔助CPU工作狀態(tài)的檢測組件,其特征在于,包括一主CPU;與所述主CPU對應(yīng)連接的第一硬件邏輯單元,用于監(jiān)控各輔助CPU對其第二硬件邏輯單元的數(shù)據(jù)寫入情況,并在超出預(yù)設(shè)時(shí)間未檢測到某一第二硬件邏輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常并上報(bào)給所述主 CPU。
15. —種輔助CPU工作狀態(tài)檢測組件,其特征在于,包括 一輔助CPU;與所述輔助CPU對應(yīng)連接的第二硬件邏輯單元,用于接受所述輔助 CPU基于硬件中斷定時(shí)的數(shù)據(jù)寫入操作,使主CPU的第一硬件邏輯單元能 夠基于該數(shù)據(jù)寫入操作識別所述輔助CPU的狀態(tài)。
全文摘要
本發(fā)明公開了一種輔助CPU工作狀態(tài)的檢測方法和檢測系統(tǒng),還公開了一種多CPU設(shè)備以及輔助CPU工作狀態(tài)的檢測組件。該檢測方法適用于設(shè)有一個(gè)主CPU和至少一個(gè)輔助CPU的設(shè)備,在該主CPU和各輔助CPU啟動完成后執(zhí)行以下步驟該輔助CPU基于硬件中斷定時(shí)向與其一一對應(yīng)設(shè)置的第二硬件邏輯單元執(zhí)行數(shù)據(jù)寫入操作;與該主CPU對應(yīng)設(shè)置的第一硬件邏輯單元監(jiān)控各第二硬件邏輯單元的數(shù)據(jù)寫入狀況;當(dāng)該第一硬件邏輯單元超出預(yù)設(shè)時(shí)間未檢測到某一第二硬件邏輯單元的數(shù)據(jù)寫入時(shí),識別對應(yīng)的輔助CPU異常并上報(bào)給該主CPU。通過本發(fā)明,實(shí)現(xiàn)了主CPU對輔助CPU工作狀態(tài)的快速檢測,進(jìn)一步保證了報(bào)文處理的高實(shí)時(shí)性;以及,不占用板間通信的帶寬。
文檔編號G06F11/00GK101324855SQ200810147370
公開日2008年12月17日 申請日期2008年8月12日 優(yōu)先權(quán)日2008年8月12日
發(fā)明者鈦 王 申請人:杭州華三通信技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
乌恰县| 怀来县| 吉隆县| 特克斯县| 沈阳市| 安阳市| 寻甸| 泽普县| 泽库县| 旬阳县| 茶陵县| 沛县| 吕梁市| 甘洛县| 汾西县| 兴义市| 呼玛县| 西安市| 三明市| 华坪县| 宁蒗| 天台县| 阿合奇县| 繁昌县| 襄垣县| 伽师县| 昭觉县| 多伦县| 娄底市| 左云县| 墨竹工卡县| 德保县| 定远县| 凤翔县| 城市| 长岛县| 松江区| 定兴县| 洱源县| 南阳市| 黄浦区|