專利名稱:通信單板的節(jié)能方法和一種通信單板的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,尤其涉及通信單板的節(jié)能方法和一種通信單板。
背景技術(shù):
一般而言,通信設(shè)備的業(yè)務(wù)功能主要由處理器完成,處理器功耗占設(shè)備功耗的較 大比例。當(dāng)業(yè)務(wù)量大時(shí),處理器的占用率高,設(shè)備功耗大,反之則設(shè)備功耗小。由于通信設(shè) 備的能耗主要來自于處理器的能耗,業(yè)界據(jù)此提出一種常用的動(dòng)態(tài)能耗管理技術(shù)是對(duì)處理 器進(jìn)行降頻或休眠。所謂處理器降頻是指使處理器的工作頻率跟隨業(yè)務(wù)量變化,當(dāng)業(yè)務(wù)量 較低時(shí)通過降低處理器的工作頻率來降低處理器的功耗,例如,x86、PoWerPC等處理器都支 持這個(gè)功能,而且x86還可以同時(shí)降低電壓進(jìn)一步實(shí)現(xiàn)節(jié)能。所謂處理器休眠是指當(dāng)處理 器沒有業(yè)務(wù)處理、空閑時(shí)進(jìn)入休眠狀態(tài)、停止運(yùn)行,或者,當(dāng)業(yè)務(wù)量很小時(shí)將業(yè)務(wù)遷移到其 他設(shè)備,而本設(shè)備進(jìn)入休眠狀態(tài),從而實(shí)現(xiàn)更大幅度的節(jié)能。例如,一個(gè)通信設(shè)備在業(yè)務(wù)量 最大時(shí)的功耗為110W,而處理器進(jìn)入休眠狀態(tài)時(shí)的功耗只有15W,降低了 95W,處理器休眠 狀態(tài)時(shí)通信設(shè)備的功耗相對(duì)于處理器工作時(shí)通信設(shè)備的功耗降幅為86%。除了功耗指標(biāo),在通信領(lǐng)域,另一個(gè)需要關(guān)注的指標(biāo)是設(shè)備的可靠性。由于通信設(shè) 備的可靠性決定了通信設(shè)備能否在給定條件下、給定時(shí)間內(nèi)完成預(yù)定的功能,因此,在通信 領(lǐng)域,也不能只為了節(jié)能而犧牲可靠性。在實(shí)際應(yīng)用中,節(jié)能需求和保證通信設(shè)備的可靠性 常?;ハ嗝埽?,為了提高通信設(shè)備的可靠性,需要在設(shè)備之間做冗余備份,然而這種 做法會(huì)增加功耗;或者,為了節(jié)省電源消耗,可能需要提高機(jī)房空調(diào)的溫度,然而,通信設(shè)備 會(huì)因?yàn)闄C(jī)房溫度高而增加故障率,結(jié)果降低了可靠性。為了保證可靠性,要求通信設(shè)備能夠及時(shí)檢出故障隱患,進(jìn)行隔離、恢復(fù)或告警, 并通知維護(hù)人員處理。常用手段是定時(shí)進(jìn)行故障例測,即通信設(shè)備的處理器執(zhí)行一個(gè)定時(shí) 任務(wù),在業(yè)務(wù)處理過程中每隔一段時(shí)間就會(huì)對(duì)通信設(shè)備進(jìn)行一次檢測,例如,對(duì)存儲(chǔ)器做讀 寫測試。若沒有發(fā)現(xiàn)問題,則繼續(xù)執(zhí)行業(yè)務(wù);若發(fā)現(xiàn)了問題,則進(jìn)行業(yè)務(wù)倒換并上報(bào)告警。從通信設(shè)備節(jié)能和可靠性之間的關(guān)系來看,對(duì)于上述現(xiàn)有技術(shù)通過處理器降頻或 休眠達(dá)到節(jié)能的方法,雖然處理器降頻之后還能夠繼續(xù)運(yùn)行,并執(zhí)行一些定時(shí)故障例測任 務(wù),但是節(jié)能效果不夠明顯,一般可以降低20%至30%的功耗,而處理器休眠雖然節(jié)能效 果非常顯著,但是處理器此時(shí)不能執(zhí)行任何指令,無法對(duì)設(shè)備進(jìn)行例測。若在休眠過程中, 通信設(shè)備發(fā)生了故障(例如,需要故障告警上報(bào)或業(yè)務(wù)倒換等),則處理器不能及時(shí)進(jìn)行處 理。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供通信單板的節(jié)能方法和一種通信單板,以在兼顧節(jié)能的同時(shí)保 證通信設(shè)備的可靠性。本發(fā)明實(shí)施例提供一種通信單板的節(jié)能方法,包括在通信單板的業(yè)務(wù)處理處于 空閑狀態(tài)時(shí),處理器轉(zhuǎn)入休眠狀態(tài);若所述處于休眠狀態(tài)的處理器由中斷信號(hào)喚醒,則判斷所述中斷信號(hào)是否是定時(shí)中斷;若所述中斷信號(hào)是所述定時(shí)中斷,則所述處理器根據(jù)所述 定時(shí)中斷執(zhí)行故障例測和/或狀態(tài)信息發(fā)送,使得所述通信單板被確定是否需要進(jìn)行故障 處理,當(dāng)所述通信單板不需要進(jìn)行故障處理時(shí),再次轉(zhuǎn)入休眠狀態(tài);當(dāng)所述通信單板需要進(jìn) 行故障處理時(shí),退出休眠狀態(tài)并進(jìn)行故障處理。本發(fā)明實(shí)施例提供一種通信單板,包括處理器和中斷發(fā)生器;所述處理器,在通信 單板的業(yè)務(wù)處理處于空閑狀態(tài)時(shí),轉(zhuǎn)入休眠狀態(tài),若所述處于休眠狀態(tài)的處理器由中斷信 號(hào)喚醒,則判斷所述中斷信號(hào)是否是定時(shí)中斷,若所述中斷信號(hào)是所述定時(shí)中斷,則所述處 理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測和/或狀態(tài)信息發(fā)送,使得所述通信單板被確定是否 需要進(jìn)行故障處理,當(dāng)所述通信單板不需要進(jìn)行故障處理時(shí),再次轉(zhuǎn)入休眠狀態(tài),當(dāng)所述通 信單板需要進(jìn)行故障處理時(shí),退出休眠狀態(tài)并進(jìn)行故障處理;所述中斷發(fā)生器,用于產(chǎn)生中 斷信號(hào)。從上述本發(fā)明實(shí)施例可知,由于定時(shí)中斷是人為設(shè)置而產(chǎn)生的,因此,定時(shí)中斷產(chǎn) 生的間隔時(shí)間可以設(shè)置得較長;另一方面,處理器執(zhí)行定時(shí)中斷對(duì)應(yīng)的任務(wù)所需時(shí)間很短, 處理器可以長時(shí)間處于休眠狀態(tài),從而使得通信單板的功耗很小。與此同時(shí),執(zhí)行定時(shí)中斷 對(duì)應(yīng)的任務(wù)可以及時(shí)發(fā)現(xiàn)故障隱患,快速做出相應(yīng)響應(yīng),從而保證了系統(tǒng)的可靠性。
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)現(xiàn)有技術(shù)或?qū)嵤├枋鲋?所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí) 施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以從這些附圖 獲得其他的附圖。圖1是本發(fā)明實(shí)施例提供的一種通信單板的節(jié)能方法基本流程示意圖;圖2是本發(fā)明實(shí)施例提供的通信單板在休眠狀態(tài)和定時(shí)中斷時(shí)功耗的簡單對(duì)比 示意圖;圖3是本發(fā)明另一實(shí)施例提供的一種通信單板的節(jié)能方法基本流程示意圖;圖4是本發(fā)明另一實(shí)施例提供的一種通信單板的節(jié)能方法基本流程示意圖;圖5是本發(fā)明實(shí)施例提供的一種通信單板基本邏輯結(jié)構(gòu)示意圖;圖6是本發(fā)明另一實(shí)施例提供的一種通信單板基本邏輯結(jié)構(gòu)示意圖;圖7是本發(fā)明實(shí)施例采用PLD實(shí)現(xiàn)中斷匯聚模塊的邏輯結(jié)構(gòu)示意圖;圖8是本發(fā)明另一實(shí)施例采用PLD實(shí)現(xiàn)中斷匯聚模塊的邏輯結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于 本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。請(qǐng)參閱附圖1,是本發(fā)明實(shí)施例提供的一種通信單板的節(jié)能方法基本流程示意圖, 主要包括步驟S101,在通信單板的業(yè)務(wù)處理處于空閑狀態(tài)時(shí),處理器轉(zhuǎn)入休眠狀態(tài)。
在本發(fā)明實(shí)施例中,處理器(CPU)通過操作系統(tǒng)可以定時(shí)獲得自己的CPU占用率, 進(jìn)而判斷通信單板的業(yè)務(wù)處理是否處于空閑狀態(tài)。例如,若CPU占用率為0,則可以判斷通 信單板的業(yè)務(wù)處理處于空閑狀態(tài),處理器不需要執(zhí)行與業(yè)務(wù)有關(guān)的任務(wù)(例如,呼叫處理、 路由轉(zhuǎn)發(fā)等),此時(shí),處理器可以轉(zhuǎn)入休眠狀態(tài)。需要說明的是,在本發(fā)明實(shí)施例中,處理器的休眠狀態(tài),是指處理器停止執(zhí)行任何 指令,關(guān)閉內(nèi)部功能單元,且必須通過中斷才能喚醒并回到正常運(yùn)行狀態(tài)。因此,從功耗角 度來看,處理器的休眠狀態(tài)是一種低功耗的節(jié)能狀態(tài)。S102,若處于休眠狀態(tài)的處理器由中斷信號(hào)喚醒,則判斷該中斷信號(hào)是否是定時(shí) 中斷。在本發(fā)明實(shí)施例中,處理器接收到的中斷信號(hào)來源或產(chǎn)生的原因多種多樣,其中, 定時(shí)中斷可以視為一種人為可控的中斷。在本發(fā)明實(shí)施例中,可以通過定時(shí)器預(yù)設(shè)一個(gè)時(shí) 間值,例如,若干秒,每間隔這個(gè)預(yù)設(shè)的時(shí)間值,則產(chǎn)生一個(gè)中斷,向處理器發(fā)出一個(gè)中斷信 號(hào),這種中斷就是定時(shí)中斷。需要說明的是,預(yù)設(shè)的發(fā)生定時(shí)中斷的間隔時(shí)間一般遠(yuǎn)大于處 理定時(shí)中斷所花費(fèi)的時(shí)間(通常為幾毫秒),如此,不至于一個(gè)定時(shí)中斷尚未處理完緊接著 需要去響應(yīng)下一個(gè)定時(shí)中斷。這就是說,定時(shí)中斷需要處理器進(jìn)行處理的時(shí)間非常短,處理 器可以長時(shí)間處于休眠狀態(tài),從而使得通信單板的功耗很小,可參閱圖2給出的通信單板 在休眠狀態(tài)和定時(shí)中斷時(shí)功耗的簡單對(duì)比示意圖。在本發(fā)明提供的實(shí)施例中,定時(shí)中斷可以由處理器內(nèi)部定時(shí)器觸發(fā),也可以由外 部定時(shí)器觸發(fā)。在轉(zhuǎn)入休眠狀態(tài)前,處理器可以向其內(nèi)部定時(shí)器寫入時(shí)間間隔以設(shè)置定時(shí) 中斷發(fā)生的時(shí)刻,也可以通過局部總線向外部定時(shí)器寫入時(shí)間間隔以設(shè)置定時(shí)中斷發(fā)生的 時(shí)刻。定時(shí)器以減法計(jì)數(shù)或加法計(jì)數(shù)方式計(jì)時(shí),例如,以減法方式計(jì)時(shí),當(dāng)定時(shí)器的值減為0 時(shí),觸發(fā)定時(shí)中斷;以加法計(jì)數(shù)方式計(jì)時(shí),當(dāng)定時(shí)器的值增加為設(shè)定的值時(shí),觸發(fā)定時(shí)中斷。S103,若中斷信號(hào)是定時(shí)中斷,則處理器根據(jù)定時(shí)中斷執(zhí)行故障例測和/或狀態(tài) 信息發(fā)送,使得通信單板被確定是否需要進(jìn)行故障處理,當(dāng)通信單板不需要進(jìn)行故障處理 時(shí),再次轉(zhuǎn)入休眠狀態(tài);當(dāng)通信單板需要進(jìn)行故障處理時(shí),退出休眠狀態(tài)并進(jìn)行故障處理。如前所述,為了保證通信單板通信的可靠性,需要處理器對(duì)通信單板執(zhí)行預(yù)定的 例測任務(wù),這種預(yù)定的例測行為就是故障例測,例如,對(duì)存儲(chǔ)器進(jìn)行讀寫測試,對(duì)時(shí)鐘、溫 度、電壓進(jìn)行一些狀態(tài)測試;也可以是對(duì)某一些位進(jìn)行讀寫后測試,或者也可以是網(wǎng)口檢 測。在本發(fā)明實(shí)施例中,處理器就是根據(jù)定時(shí)中斷執(zhí)行故障例測。由于故障例測是處理器的一種主動(dòng)行為,并不必然會(huì)發(fā)現(xiàn)通信單板的故障,因此, 故障例測的結(jié)果可能是通信單板正常,也可能是通信單板異常。當(dāng)故障例測的結(jié)果為正常 時(shí),則處理器再次轉(zhuǎn)入休眠狀態(tài);若故障例測的結(jié)果為異常時(shí),則處理器退出休眠狀態(tài)并進(jìn) 行故障處理,與此同時(shí),立即上報(bào)故障告警。在本發(fā)明另一實(shí)施例中,若判斷中斷信號(hào)是定時(shí)中斷,處理器也可以根據(jù)定時(shí)中 斷執(zhí)行狀態(tài)信息發(fā)送,使該通信單板被確定是否需要進(jìn)行故障處理。具體方法可以是,向?qū)Χ说耐ㄐ艈伟鍌魉鸵活愄厥獾膱?bào)文,例如,心跳報(bào)文,以通 知對(duì)端的通信單板自己的狀態(tài)(例如,是否還在工作);也可以在報(bào)文(可以不限心跳報(bào) 文)中傳送一些狀態(tài)信息,讓對(duì)端通信單板獲知自己的狀態(tài)。狀態(tài)信息可以是由故障例測 后得到的信息。當(dāng)本端通信單板不需要進(jìn)行故障處理時(shí),再次轉(zhuǎn)入休眠狀態(tài);當(dāng)通信單板需要進(jìn)行故障處理時(shí),退出休眠狀態(tài)并進(jìn)行故障處理。在本發(fā)明另一實(shí)施例中,還可以將兩種方法結(jié)合,即處理器既執(zhí)行故障例測又發(fā) 送狀態(tài)信息給另一通信單板(狀態(tài)信息中也可以加入故障例測后的結(jié)果)。在處理器根據(jù) 所述定時(shí)中斷執(zhí)行故障例測且同時(shí)執(zhí)行狀態(tài)信息發(fā)送時(shí),當(dāng)執(zhí)行故障例測結(jié)果為不正?;?者接收狀態(tài)信息的另一通信單板根據(jù)狀態(tài)信息確定通信單板出現(xiàn)故障時(shí),確定需要進(jìn)行故 障處理;當(dāng)執(zhí)行故障例測結(jié)果為正常且接收所述狀態(tài)信息的另一通信單板根據(jù)狀態(tài)信息確 定所述通信單板未出現(xiàn)故障時(shí),確定不需要進(jìn)行故障處理。在本發(fā)明提供的其他實(shí)施例中,當(dāng)處理器判斷中斷信號(hào)不是定時(shí)中斷時(shí),則處理 器直接轉(zhuǎn)入正常工作狀態(tài),具體如下若中斷信號(hào)是設(shè)備的收發(fā)中斷,例如,通信單板收發(fā)報(bào)文產(chǎn)生的中斷,則表明有業(yè) 務(wù)需要處理,處理器會(huì)退回正常狀態(tài),開始處理通信單板業(yè)務(wù);若中斷信號(hào)是由于外部異常而產(chǎn)生的中斷,例如,環(huán)境溫度超過閾值、任何一路時(shí) 鐘丟失或通信單板的對(duì)端通信單板故障而產(chǎn)生的中斷,則處理器退回到正常狀態(tài),上報(bào)故
障告警。如前所述,能夠產(chǎn)生中斷的中斷源較多,因此,在本發(fā)明另一實(shí)施例中,處于休眠 狀態(tài)的處理器由中斷信號(hào)喚醒,在判斷該中斷信號(hào)是否是定時(shí)中斷時(shí)還包括判斷中斷信號(hào) 的優(yōu)先級(jí),即,當(dāng)多個(gè)中斷信號(hào)同時(shí)發(fā)送至處理器時(shí),則處理器進(jìn)一步判斷這些中斷信號(hào)的 優(yōu)先級(jí),優(yōu)先處理優(yōu)先級(jí)高的中斷信號(hào)。需要說明的是,在上述實(shí)施例中,中斷信號(hào)可以由處理器通過多個(gè)中斷輸入管腳 (即能夠接收處理中斷信號(hào)的管腳)接收,中斷信號(hào)也可以經(jīng)中斷匯聚模塊(如可由可編程 邏輯器件實(shí)現(xiàn))后由處理器一個(gè)中斷輸入管腳進(jìn)行接收。中斷信號(hào)經(jīng)匯聚后由處理器一個(gè) 中斷輸入管腳進(jìn)行接收可以節(jié)省處理器的管腳資源,以應(yīng)對(duì)中斷輸入管腳資源不足(即中 斷輸入管腳不夠用)的情況。從上述本發(fā)明實(shí)施例可知,由于處理器在相對(duì)較長時(shí)間內(nèi)處于休眠狀態(tài),因此可 以大幅減少通信單板的功耗,與此同時(shí),定時(shí)中斷機(jī)制兼顧通信單板的故障例測,及時(shí)發(fā)現(xiàn) 故障隱患,保證了系統(tǒng)的可靠性。并且,在出現(xiàn)時(shí)鐘丟失、環(huán)境溫度過高、對(duì)端通信單板故障 等問題時(shí),處理器立即被喚醒,快速響應(yīng),從而更進(jìn)一步提高了系統(tǒng)的可靠性。請(qǐng)參閱附圖3,是本發(fā)明另一實(shí)施例提供的一種通信單板的節(jié)能方法。在本實(shí)施 例中,中斷信號(hào)由可編程邏輯器件(PLD,Programmable Logic Device)匯聚后發(fā)送至處理 器,這樣可以減少對(duì)處理器中斷輸入管腳的占用,或者,在處理器中斷輸入管腳不夠時(shí)仍然 能夠?qū)崿F(xiàn)本發(fā)明。圖3所示方法主要包括如下流程S301,判斷通信單板的業(yè)務(wù)處理是否處于空閑狀態(tài)。例如,可以通過查看處理器的占用率來判斷當(dāng)前通信單板的業(yè)務(wù)處理是否處于空 閑狀態(tài)。S302,處理器轉(zhuǎn)入休眠狀態(tài)。若通信單板的業(yè)務(wù)處理處于空閑狀態(tài),則處理器轉(zhuǎn)入休眠狀態(tài)。休眠的長短,可以 通過處理器向定時(shí)器寫入時(shí)間間隔來確定。在本實(shí)施例中,定時(shí)器可以是PLD內(nèi)的一個(gè)定 時(shí)單元,一旦寫入時(shí)間間隔,則相當(dāng)于設(shè)置了定時(shí)中斷發(fā)生的時(shí)刻。具體地,處理器通過局 部總線向PLD的定時(shí)器寫入時(shí)間間隔數(shù)據(jù),設(shè)置喚醒的時(shí)刻,然后定時(shí)器開始計(jì)時(shí);或者,定時(shí)中斷也可以通過處理器內(nèi)部定時(shí)器來實(shí)現(xiàn),通過設(shè)置的寄存器的值來設(shè)定定時(shí)時(shí)間, 定期將處理器從休眠狀態(tài)喚醒。定時(shí)器可以以減法計(jì)數(shù)(寫入時(shí)間間隔不為0時(shí))或加法 計(jì)數(shù)方式開始計(jì)時(shí)。S303,判斷是否有中斷產(chǎn)生,如果是,則執(zhí)行步驟S304,如果否,則繼續(xù)等待中斷產(chǎn)生。具體地,可以設(shè)定處理器的中斷輸入管腳上出現(xiàn)高電平(“1”)時(shí)判斷為有中斷產(chǎn) 生,低電平(“0”)時(shí)判斷為沒有中斷產(chǎn)生,或者,設(shè)定處理器的中斷輸入管腳上出現(xiàn)低電 平(“0”)時(shí)判斷為有中斷產(chǎn)生,高電平(“1”)時(shí)判斷為沒有中斷產(chǎn)生,本發(fā)明對(duì)此不加 限制。S304,喚醒處理器,開始處理中斷。S305,讀取PLD中寄存器的值。在本實(shí)施例中,不同的中斷對(duì)應(yīng)PLD中不同的寄存器值。例如,可以為定時(shí)中斷、 由于通信單板收發(fā)報(bào)文產(chǎn)生的中斷、由于時(shí)鐘丟失、環(huán)境溫度超過閾值或通信單板的對(duì)端 通信單板故障而產(chǎn)生的中斷設(shè)置不同的寄存器值。S306,判斷是否為定時(shí)中斷。S307,若是,則執(zhí)行例測任務(wù),若否,轉(zhuǎn)入S309。S308,通過例測,判斷有無故障,若沒有,則轉(zhuǎn)入S302,即,處理器轉(zhuǎn)入休眠狀態(tài),否 則,轉(zhuǎn)入S309。S309,處理通信單板的業(yè)務(wù)或上報(bào)故障告警。具體地,若例測執(zhí)行的結(jié)果是有故障(S308的“是”分支),則處理器執(zhí)行上報(bào)告m.
θ ,若不是定時(shí)中斷(S307的“否”分支),則一方面可能是由于通信單板收發(fā)報(bào)文產(chǎn) 生的中斷,則處理器需要處理通信單板業(yè)務(wù),另一方面可能是由于時(shí)鐘丟失、環(huán)境溫度超過 閾值或通信單板的對(duì)端通信單板故障而產(chǎn)生的中斷,則處理器需要上報(bào)故障告警。請(qǐng)參閱附圖4,是本發(fā)明另一實(shí)施例提供的一種通信單板的節(jié)能方法。在本實(shí)施例 中,處理器內(nèi)部集成一定時(shí)器,除了可以向其中寫入定時(shí)時(shí)間間隔之外,當(dāng)處理器進(jìn)入休眠 狀態(tài)時(shí),定時(shí)器仍然可以工作,而不需要在PLD內(nèi)部設(shè)計(jì)定時(shí)器。并且,在本實(shí)施例中,處理器的中斷輸入管腳較多,可以分配給多個(gè)不同的外部中 斷源,例如,由于通信單板收發(fā)報(bào)文產(chǎn)生的中斷、由于時(shí)鐘丟失、環(huán)境溫度超過閾值或通信 單板的對(duì)端通信單板故障而產(chǎn)生的中斷等。每個(gè)中斷源可以對(duì)應(yīng)于不同的中斷處理程序, 如此,只需要直接將上述外部中斷信號(hào)一一輸入處理器的外部中斷輸入管腳即可,不需要 PLD對(duì)中斷信號(hào)進(jìn)行匯聚。圖4所示方法主要包括如下流程S401,判斷通信單板的業(yè)務(wù)處理是否處于空閑狀態(tài)。例如,可以通過查看處理器的占用率來判斷當(dāng)前通信單板的業(yè)務(wù)處理是否處于空 閑狀態(tài)。S402,處理器轉(zhuǎn)入休眠狀態(tài)。若通信單板的業(yè)務(wù)處理處于空閑狀態(tài),則處理器轉(zhuǎn)入休眠狀態(tài)。休眠的長短,可以 通過處理器向其內(nèi)部集成的定時(shí)器寫入的時(shí)間間隔來確定。一旦寫入時(shí)間間隔,則相當(dāng)于 設(shè)置了定時(shí)中斷發(fā)生的時(shí)刻。定時(shí)器可以以減法計(jì)數(shù)(寫入時(shí)間間隔不為0時(shí))或加法計(jì)數(shù)方式開始計(jì)時(shí)。S403,判斷是否有中斷產(chǎn)生,若有中斷產(chǎn)生,則執(zhí)行步驟S404,否則,繼續(xù)等待中斷 的產(chǎn)生。具體地,可以設(shè)定處理器的中斷口上出現(xiàn)高電平(“1”)時(shí)為有中斷產(chǎn)生,低電平 (“0”)時(shí)為沒有中斷產(chǎn)生,處理器可以據(jù)此判斷。S404,喚醒處理器,開始處理中斷。S405,判斷是否為定時(shí)中斷。S406,若是,則執(zhí)行例測任務(wù),若否,轉(zhuǎn)入S408。S407,通過例測,判斷有無故障,若沒有,則轉(zhuǎn)入S402,即,處理器轉(zhuǎn)入休眠狀態(tài),若 有,轉(zhuǎn)入S408。S408,處理通信單板的業(yè)務(wù)或上報(bào)故障告警。具體地,若例測執(zhí)行的結(jié)果是有故障(S407的“是”分支),則處理器執(zhí)行上報(bào)告 m.
θ ,若不是定時(shí)中斷(S406的“否”分支),則一方面可能是由于通信單板收發(fā)報(bào)文產(chǎn) 生的中斷,則處理器需要處理通信單板業(yè)務(wù),另一方面可能是由于時(shí)鐘丟失、環(huán)境溫度超過 閾值或通信單板的對(duì)端通信單板故障而產(chǎn)生的中斷,則處理器需要上報(bào)故障告警。請(qǐng)參閱圖5,本發(fā)明實(shí)施例提供的一種通信單板基本邏輯結(jié)構(gòu)示意圖。為了便于 說明,僅僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。該通信單板包括處理器501和中斷發(fā)生器 502,其中中斷發(fā)生器502,用于產(chǎn)生中斷信號(hào);具體地,中斷發(fā)生器502為能夠產(chǎn)生中斷信號(hào)的單元器件,也可以理解為一個(gè)中 斷源。例如,中斷發(fā)生器502可以是定時(shí)器(用于產(chǎn)生定時(shí)中斷信號(hào)),或者時(shí)鐘檢測單元 (用于檢測到時(shí)鐘出現(xiàn)故障時(shí)產(chǎn)生中斷信號(hào)),或者溫度檢測單元(用于檢測到溫度出現(xiàn)異 常時(shí)產(chǎn)生中斷信號(hào)),或者業(yè)務(wù)執(zhí)行單元(用于當(dāng)檢測到業(yè)務(wù)時(shí)產(chǎn)生中斷信號(hào)),或者其他 單元器件。需要說明的是,上述中斷發(fā)生器中的一些可以是處理器內(nèi)部集成的,或者獨(dú)立于 處理器的單元器件,例如,如果處理器內(nèi)部集成了能夠產(chǎn)生定時(shí)中斷的定時(shí)器,則可以通過 該定時(shí)器產(chǎn)生定時(shí)中斷(當(dāng)然也可以不使用內(nèi)部的定時(shí)器作為中斷發(fā)生器);如果處理器 內(nèi)部并沒有集成定時(shí)器(或者不想使用內(nèi)部定時(shí)器),則可以通過外部器件,例如,可編程 邏輯器件(PLD,ProgrammabIe Logic Device)產(chǎn)生,或者其他芯片內(nèi)部集成的定時(shí)器產(chǎn)生。 同理,其他中斷發(fā)生器也可以是處理器內(nèi)部集成的或者由其他與處理器獨(dú)立的單元器件產(chǎn) 生。處理器501,在通信單板的業(yè)務(wù)處理處于空閑狀態(tài)時(shí),轉(zhuǎn)入休眠狀態(tài),若處于休眠 狀態(tài)的處理器由中斷信號(hào)喚醒,則判斷該中斷信號(hào)是否是定時(shí)中斷,若中斷信號(hào)是定時(shí)中 斷,則處理器501根據(jù)該定時(shí)中斷執(zhí)行故障例測和/或狀態(tài)信息發(fā)送,使通信單板被確定是 否需要進(jìn)行故障處理,當(dāng)通信單板不需要進(jìn)行故障處理時(shí),再次轉(zhuǎn)入休眠狀態(tài),當(dāng)通信單板 需要進(jìn)行故障處理時(shí),退出休眠狀態(tài)并進(jìn)行故障處理。在本實(shí)施例中,中斷信號(hào)可以是定時(shí)中斷發(fā)生時(shí)產(chǎn)生的中斷信號(hào),也可以是通信 單板收發(fā)報(bào)文產(chǎn)生的中斷,或者是由于外部故障或異常而產(chǎn)生的中斷,例如,時(shí)鐘丟失、環(huán)境溫度超過閾值或通信單板的對(duì)端通信單板故障而產(chǎn)生的中斷。如果處理器501的管腳資源豐富或者不考慮管腳資源的占用情況,處理器501可 以直接與中斷發(fā)生器相連,通過多個(gè)管腳接收中斷信號(hào)。在處理器中斷輸入管腳資源不足或?yàn)榱斯?jié)省處理器的中斷輸入管腳資源,以便處 理器騰出更多的中斷輸入管腳資源執(zhí)行其他任務(wù)的情形下(如中斷輸入管腳復(fù)用為普通 的I/O管腳),中斷發(fā)生器502也可以與中斷匯聚模塊601相連,如圖6所示本發(fā)明另一個(gè) 實(shí)施例提供的通信單板。中斷匯聚模塊601用于匯聚中斷發(fā)生器502產(chǎn)生的中斷信號(hào)后發(fā) 送至處理器501。中斷匯聚模塊601可以采用PLD實(shí)現(xiàn),同時(shí),PLD也可以實(shí)現(xiàn)一些中斷發(fā)生器的功 能,具體實(shí)現(xiàn)時(shí)的邏輯結(jié)構(gòu)如圖7所示,其中時(shí)鐘檢測模塊701,用于檢測通信單板上的各路時(shí)鐘,發(fā)現(xiàn)任何一路時(shí)鐘丟失則產(chǎn) 生中斷信號(hào),可以將其視為一個(gè)中斷發(fā)生器;對(duì)端通信單板狀態(tài)檢測模塊702,用于對(duì)來自對(duì)端通信單板的狀態(tài)信號(hào)電平進(jìn)行 檢測,發(fā)現(xiàn)電平跳變則產(chǎn)生中斷信號(hào);時(shí)鐘檢測模塊701和對(duì)端通信單板狀態(tài)檢測模塊702在實(shí)際中可以是一個(gè)設(shè)備故 障檢測模塊,設(shè)備故障檢測模塊還可以包括其他的檢測模塊,例如電壓檢測模塊等。中斷狀態(tài)寄存器703,用于記錄各路中斷源的狀態(tài),例如,記錄時(shí)鐘檢測模塊701、 對(duì)端通信單板狀態(tài)檢測模塊702產(chǎn)生的中斷信號(hào)或者外部異常產(chǎn)生的中斷信號(hào)(例如,由 于所述通信單板收發(fā)報(bào)文產(chǎn)生的中斷、環(huán)境溫度超過閾值或通信單板的對(duì)端通信單板故障 而產(chǎn)生的中斷)。中斷狀態(tài)寄存器703可以使用“0”這一寄存器值表示無中斷,使用“1”這 一寄存器值表示有中斷產(chǎn)生。中斷使能寄存器704,用于屏蔽中斷源,例如,使用“0”表示無中斷輸出,使用“1” 表示中斷可以輸出。可以規(guī)定,只有當(dāng)中斷狀態(tài)寄存器703與中斷使能寄存器704的對(duì)應(yīng) 比特位都為1時(shí)才能對(duì)外產(chǎn)生中斷。當(dāng)通信單板正常工作時(shí),網(wǎng)口正常收發(fā)報(bào)文、溫度傳感器不斷檢測通信單板溫度、 中斷匯聚模塊601對(duì)通信單板上的各路時(shí)鐘以及對(duì)端通信單板的狀態(tài)進(jìn)行檢測,一旦有中 斷信號(hào)或異常情況產(chǎn)生,中斷匯聚模塊601就會(huì)匯聚上述中斷信號(hào),上報(bào)給處理器501。處 理器501執(zhí)行中斷處理程序。在處理器501進(jìn)入中斷處理程序時(shí),必須先關(guān)閉中斷使能寄 存器704,避免在中斷處理的過程中被其他中斷干擾,在當(dāng)前中斷處理完畢之后再打開中斷 使能寄存器704。中斷匯聚模塊601還包括定時(shí)器801,如圖8另一實(shí)施例所示的中斷匯聚模塊。定 時(shí)器801包括時(shí)間間隔寄存器和控制模塊,其中時(shí)間間隔寄存器可以預(yù)置時(shí)間間隔,按照增/減計(jì)數(shù)方式工作??刂颇K用于控 制增/減計(jì)數(shù)的啟停。以減法計(jì)數(shù)方式為例,當(dāng)時(shí)間間隔寄存器的內(nèi)容不為0時(shí),控制模塊 允許它做減法計(jì)數(shù),當(dāng)減到0時(shí)控制模塊停止其繼續(xù)計(jì)數(shù),并產(chǎn)生中斷信號(hào)。在本發(fā)明另一實(shí)施例中,定時(shí)器801也可以不由中斷匯聚模塊601提供。處理器 501可以包括內(nèi)部定時(shí)器,該內(nèi)部定時(shí)器用于接收寫入的時(shí)間間隔以設(shè)置定時(shí)中斷發(fā)生的 時(shí)刻。在轉(zhuǎn)入休眠狀態(tài)前,處理器可以向其內(nèi)部定時(shí)器寫入時(shí)間間隔以設(shè)置定時(shí)中斷發(fā)生 的時(shí)刻,也可以通過局部總線向外部定時(shí)器寫入時(shí)間間隔以設(shè)置定時(shí)中斷發(fā)生的時(shí)刻。定時(shí)器以減法計(jì)數(shù)或加法計(jì)數(shù)方式計(jì)時(shí),例如,以減法方式計(jì)時(shí),當(dāng)定時(shí)器的值減為0時(shí),觸 發(fā)定時(shí)中斷;以加法計(jì)數(shù)方式計(jì)時(shí),當(dāng)定時(shí)器的值增加為設(shè)定的值時(shí),觸發(fā)定時(shí)中斷。需要說明的是,上述裝置各模塊/單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與 本發(fā)明方法實(shí)施例基于同一構(gòu)思,其帶來的技術(shù)效果與本發(fā)明方法實(shí)施例相同,具體內(nèi)容 可參見本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可 以通過程序來指令相關(guān)的硬件來完成,該程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,存儲(chǔ) 介質(zhì)可以包括只讀存儲(chǔ)器(ROM,Read Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,RandomAccess Memory)、磁盤或光盤等。以上對(duì)本發(fā)明實(shí)施例提供的通信單板的節(jié)能方法和一種通信單板進(jìn)行了詳細(xì)介 紹,本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只 是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā) 明的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理 解為對(duì)本發(fā)明的限制。
權(quán)利要求
一種通信單板的節(jié)能方法,其特征在于,包括在通信單板的業(yè)務(wù)處理處于空閑狀態(tài)時(shí),處理器轉(zhuǎn)入休眠狀態(tài);若所述處于休眠狀態(tài)的處理器由中斷信號(hào)喚醒,則判斷所述中斷信號(hào)是否是定時(shí)中斷;若所述中斷信號(hào)是所述定時(shí)中斷,則所述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測和/或狀態(tài)信息發(fā)送,使得所述通信單板被確定是否需要進(jìn)行故障處理,當(dāng)所述通信單板不需要進(jìn)行故障處理時(shí),再次轉(zhuǎn)入休眠狀態(tài);當(dāng)所述通信單板需要進(jìn)行故障處理時(shí),退出休眠狀態(tài)并進(jìn)行故障處理。
2.如權(quán)利要求1所述的方法,其特征在于,所述若所述中斷信號(hào)是所述定時(shí)中斷,則所 述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測和/或狀態(tài)信息發(fā)送,使得所述通信單板被確定 是否需要進(jìn)行故障處理包括在所述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測時(shí),當(dāng)執(zhí)行故障例測結(jié)果為正常,則所 述通信單板被確定不需要進(jìn)行故障處理;當(dāng)故障例測結(jié)果為不正常時(shí),所述通信單板被確 定需要進(jìn)行故障處理;或者,在所述處理器根據(jù)所述定時(shí)中斷執(zhí)行狀態(tài)信息發(fā)送時(shí),當(dāng)接收所述狀態(tài)信息的另一通 信單板根據(jù)所述狀態(tài)信息確定所述通信單板出現(xiàn)故障時(shí),則需要進(jìn)行故障處理,否則,不需 要進(jìn)行故障處理;或者,在所述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測且同時(shí)執(zhí)行狀態(tài)信息發(fā)送時(shí),當(dāng)執(zhí)行故 障例測結(jié)果為不正?;蛘呓邮账鰻顟B(tài)信息的另一通信單板根據(jù)所述狀態(tài)信息確定所述 通信單板出現(xiàn)故障時(shí),確定需要進(jìn)行故障處理;當(dāng)執(zhí)行故障例測結(jié)果為正常且接收所述狀 態(tài)信息的另一通信單板根據(jù)所述狀態(tài)信息確定所述通信單板未出現(xiàn)故障時(shí),確定不需要進(jìn) 行故障處理。
3.如權(quán)利要求1所述的方法,其特征在于,若判斷所述中斷信號(hào)是由于所述通信單板 收發(fā)報(bào)文產(chǎn)生的中斷,則所述處理器退出休眠狀態(tài)并開始處理通信單板業(yè)務(wù);或者若判斷所述中斷信號(hào)是由于外部異常或故障而產(chǎn)生的中斷,則所述處理器退出休眠狀 態(tài)并上報(bào)故障告警。
4.如權(quán)利要求1至3任意一項(xiàng)所述的方法,其特征在于,所述中斷信號(hào)由所述處理器通 過多個(gè)中斷輸入管腳接收;或者所述中斷信號(hào)經(jīng)匯聚后由所述處理器一個(gè)中斷輸入管腳進(jìn)行接收。
5.如權(quán)利要求1所述的方法,其特征在于,所述定時(shí)中斷由所述處理器內(nèi)部的定時(shí)器 觸發(fā),或者所述定時(shí)中斷由外部定時(shí)器觸發(fā)。
6.如權(quán)利要求5所述的方法,其特征在于,所述處理器轉(zhuǎn)入休眠狀態(tài)前還包括所述處理器向所述定時(shí)器寫入時(shí)間間隔以設(shè)置所述定時(shí)中斷發(fā)生的時(shí)刻,所述定時(shí)器 以減法計(jì)數(shù)或加法計(jì)數(shù)方式計(jì)時(shí)。
7.一種通信單板,其特征在于,包括處理器和中斷發(fā)生器;所述中斷發(fā)生器,用于產(chǎn)生中斷信號(hào);所述處理器,在通信單板的業(yè)務(wù)處理處于空閑狀態(tài)時(shí),轉(zhuǎn)入休眠狀態(tài),若所述處于休眠狀態(tài)的處理器由所述中斷信號(hào)喚醒,則判斷所述中斷信號(hào)是否是定時(shí)中斷,若所述中斷信 號(hào)是所述定時(shí)中斷,則所述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測和/或狀態(tài)信息發(fā)送, 使得所述通信單板被確定是否需要進(jìn)行故障處理,當(dāng)所述通信單板不需要進(jìn)行故障處理 時(shí),再次轉(zhuǎn)入休眠狀態(tài),當(dāng)所述通信單板需要進(jìn)行故障處理時(shí),退出休眠狀態(tài)并進(jìn)行故障處理。
8.如權(quán)利要求7所述的通信單板,其特征在于,所述若所述中斷信號(hào)是所述定時(shí)中斷, 則所述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測和/或狀態(tài)信息發(fā)送,使得所述通信單板被 確定是否需要進(jìn)行故障處理包括在所述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測時(shí),當(dāng)執(zhí)行故障例測結(jié)果為正常,則所 述通信單板被確定不需要進(jìn)行故障處理;當(dāng)故障例測結(jié)果為不正常時(shí),所述通信單板被確 定需要進(jìn)行故障處理;或者,在所述處理器根據(jù)所述定時(shí)中斷執(zhí)行狀態(tài)信息發(fā)送時(shí),當(dāng)接收所述狀態(tài)信息的另一通 信單板根據(jù)所述狀態(tài)信息確定所述通信單板出現(xiàn)故障時(shí),則需要進(jìn)行故障處理,否則,不需 要進(jìn)行故障處理;或者,在所述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測且同時(shí)執(zhí)行狀態(tài)信息發(fā)送時(shí),當(dāng)執(zhí)行故 障例測結(jié)果為不正?;蛘呓邮账鰻顟B(tài)信息的另一通信單板根據(jù)所述狀態(tài)信息確定所述 通信單板出現(xiàn)故障時(shí),確定需要進(jìn)行故障處理;當(dāng)執(zhí)行故障例測結(jié)果為正常且接收所述狀 態(tài)信息的另一通信單板根據(jù)所述狀態(tài)信息確定所述通信單板未出現(xiàn)故障時(shí),確定不需要進(jìn) 行故障處理。
9.如權(quán)利要求7或8所述的通信單板,其特征在于,所述處理器通過多個(gè)中斷輸入管腳 接收所述中斷信號(hào)。
10.如權(quán)利要求7或8所述的通信單板,其特征在于,所述通信單板還包括中斷匯聚模 塊,用于匯聚所述中斷發(fā)生器產(chǎn)生的所述中斷信號(hào)后發(fā)送至所述處理器。
全文摘要
本發(fā)明實(shí)施例提供通信單板的節(jié)能方法和一種通信單板,以在兼顧節(jié)能的同時(shí)保證通信設(shè)備的可靠性。所述方法包括在通信單板的業(yè)務(wù)處理處于空閑狀態(tài)時(shí),處理器轉(zhuǎn)入休眠狀態(tài);若所述處于休眠狀態(tài)的處理器由中斷信號(hào)喚醒,則判斷所述中斷信號(hào)是否是定時(shí)中斷;若所述中斷信號(hào)是所述定時(shí)中斷,則所述處理器根據(jù)所述定時(shí)中斷執(zhí)行故障例測和/或狀態(tài)信息發(fā)送,使得所述通信單板被確定是否需要進(jìn)行故障處理,當(dāng)所述通信單板不需要進(jìn)行故障處理時(shí),再次轉(zhuǎn)入休眠狀態(tài);當(dāng)所述通信單板需要進(jìn)行故障處理時(shí),退出休眠狀態(tài)并進(jìn)行故障處理。本發(fā)明可以在休眠的同時(shí)及時(shí)發(fā)現(xiàn)故障隱患,快速做出相應(yīng)響應(yīng),從而保證系統(tǒng)的可靠性。
文檔編號(hào)H04L12/24GK101964724SQ201010270089
公開日2011年2月2日 申請(qǐng)日期2010年8月30日 優(yōu)先權(quán)日2010年8月30日
發(fā)明者李延松 申請(qǐng)人:華為技術(shù)有限公司