專利名稱:一種軟硬件協(xié)同防止系統(tǒng)死機中斷業(yè)務的復位方法
技術領域:
本發(fā)明涉及一種電子設備內利用軟硬件協(xié)同完成防止系統(tǒng)死機的復位方法,尤其涉及的是在通訊領域的復位邏輯電路設計中,通過軟件與硬件共同配合,防止系統(tǒng)運行死機引起業(yè)務中斷的復位方法。
背景技術:
在現(xiàn)有技術的電子設備中,為了防止系統(tǒng)出現(xiàn)CPU跑死或在工作不正常的情況下能夠及時的進行復位處理,系統(tǒng)中都設計有復位邏輯。
對于一塊單板,其一般的復位邏輯是簡單的由一塊帶看門狗的復位芯片來完成的,通過軟件喂狗的方式控制整板的復位。這種做法很有可能會造成整個通訊網的業(yè)務通訊中斷。如在軟件跑死時,沒有了喂狗信號,單板會重啟。對系統(tǒng)軟件版本升級時,需重啟軟件時也不得不復位系統(tǒng)或單板?;蛟谝恍┯赏话l(fā)性任務造成CPU工作負荷加重的情況下,使得軟件無法及時的給出喂狗信號,雖說這時CPU及軟件均在正常工作,但仍會引起單板或系統(tǒng)設備復位,造成業(yè)務中斷。
對于設備的整個系統(tǒng)來說,系統(tǒng)對各線卡的復位方案也比較的簡單,安全性很低。一般是從主控板送給各個線卡一個復位信號,指示當前是否要進行單板強制復位,這種做法容易導致由于線上的干擾使線卡誤操作,導致整板復位的現(xiàn)象。
因此,現(xiàn)有技術還有待于繼續(xù)改進和發(fā)展。
發(fā)明內容
本發(fā)明的目的就是為了解決以前復位邏輯過于簡單,對復位信號不作區(qū)分,任何情況下的復位都會引起整個單板的重起,導致業(yè)務中斷的技術問題,設計一種能夠解決以上各種不完善情況的軟硬件協(xié)同操作的復位方案。
本發(fā)明的技術方案包括一種軟硬件協(xié)同防止系統(tǒng)死機中斷業(yè)務的復位方法,其包括以下步驟A、在系統(tǒng)異常情況下選擇軟件復位或硬件復位;B、對于由軟件原因引起的軟件復位,系統(tǒng)只對CPU部分進行復位,對業(yè)務部分不處理,保證軟件復位時不斷業(yè)務;C、若系統(tǒng)在預定時間內超過了預定次數的軟件復位,則進行硬件復位。
所述的方法,其中,所述硬件復位的條件還包括上電,按復位鍵,網管下硬復位命令,線卡收到強制復位信號或單板自檢不通過。
所述的方法,其中,所述軟件復位的條件還包括版本下載結束后重新啟動或收到主控板下發(fā)的軟件復位命令。
所述的方法,其中,所述步驟C還包括所述系統(tǒng)中設置一可編程邏輯器件,其中設有兩個計數器,一第一計數器為看門狗,它的清零控制端需要CPU在預定時間內寫入喂狗字節(jié)的數字至少變化一次,否則溢出;一第二計數器對所述第一計數器的溢出次數進行計數,當計到預定次數時溢出;該第二計數器溢出后,切斷晶振時鐘到復位芯片的輸入,使所述復位芯片產生復位輸出,形成硬件復位過程。
所述的方法,其中,所述步驟C還包括該第二計數器的計數值由軟件的溢出次數字節(jié)讀回,用于判斷是硬件重啟還是軟件重啟。
所述的方法,其中,所述步驟C還包括所述第二計數器的計數值由軟件的溢出次數字節(jié)進行修改,以在所述第一計數器下一次溢出時產生硬件復位。
本發(fā)明所提供的一種軟硬件協(xié)同防止系統(tǒng)死機中斷業(yè)務的復位方法,大大提高了系統(tǒng)的穩(wěn)定性,對不同情況下的復位信號進行了智能處理,增強了系統(tǒng)復位的靈活性;降低了異常復位引起的業(yè)務中斷的可能性。
圖1為本發(fā)明方法的復位流程框圖;圖2為本發(fā)明方法的看門狗復位邏輯框圖。
具體實施例方式
以下結合附圖,將對本發(fā)明的各較佳實施例進行較為詳細的說明。
本發(fā)明的所述軟硬件協(xié)同防止系統(tǒng)死機中斷業(yè)務的復位方法,采用了軟件復位和硬件復位相結合的方案,可根據產生異常的情況不同產生不同的復位動作,從而達到對系統(tǒng)及業(yè)務的影響最小。
本發(fā)明方法中的復位分成兩大類硬件復位和軟件復位,其中的軟件復位只復位CPU部分,對業(yè)務部分的芯片不進行操作,從而對業(yè)務無中斷影響。硬件復位則是對單板上所有能執(zhí)行復位操作的芯片進行復位操作,也就是通常說的整板復位,此時會中斷業(yè)務,產生影響,因此非到必不可少不進行整板復位。
本發(fā)明較佳實施例中所述復位邏輯產生的條件有以下的幾種,根據產生條件的不同進行相應的復位操作。
對于由軟件原因引起的軟件復位,系統(tǒng)只對CPU部分進行復位,對業(yè)務部分不處理,保證軟件復位時不斷業(yè)務。若系統(tǒng)在預定時間內出現(xiàn)了N次軟件復位,則可能整個系統(tǒng)有問題,通過軟件復位無法解決問題,單板或系統(tǒng)執(zhí)行硬件復位,此時業(yè)務會中斷。該次數N為一個根據各自系統(tǒng)特點可以由用戶定義的數字,所述預定時間也可以由用戶據各自系統(tǒng)特點進行預先設定。
本發(fā)明方法的所述復雜可編程邏輯器件CPLD中設有2個計數器,如圖1和圖2所示的,第一計數器1為看門狗,它的清零控制端需要CPU軟件在軟件可編程規(guī)定的時間內寫入喂狗字節(jié)的數字(0/1)至少變化一次,否則溢出。該計數器的溢出時間可以根據CPU的忙閑程度做相應的調節(jié),可以適當將時間加長,這種情況下只要相應的調節(jié)計數器的溢出計數控制就可以實現(xiàn)。第一計數器1溢出端連至CPU的軟件復位引腳,產生軟件復位過程。第一計數器1的計數可以通過軟件狗使能字節(jié)控制停止/啟動。
第二計數器2對第一計數器1的溢出次數進行計數,當計到N時溢出。第二計數器2溢出后,切斷晶振時鐘到復位芯片的輸入,使復位芯片產生復位輸出,形成硬件復位過程。該第二計數器2的計數值可以由軟件的溢出次數字節(jié)讀回,用于判斷是硬件重啟還是軟件重啟。第二計數器2的計數值可以由軟件的溢出次數字節(jié)進行修改,修改成N-1后,如果第一計數器1再次溢出,就會產生硬件復位。軟件每次啟動后在規(guī)定的時間內要給溢出次數字節(jié)寄存器寫入0,以保證正常情況下如果規(guī)定時間內第一計數器1溢出N次則產生硬件復位。
CPLD內還使用主控板的管理時鐘信號采集主控板提供給線卡的強制復位線的信號,使用移位寄存器進行比較,在這里強制復位信號采用一串串行的特征字來表示,當監(jiān)測到這個特征字后,切斷晶振時鐘到復位芯片的輸入,使復位芯片產生復位輸出,形成硬件復位過程。這樣可有效的濾出強制復位線上的干擾信號,防止誤操作。
本發(fā)明方法的該邏輯詳細介紹如下所述單板內的復位芯片負責硬件復位,其復位輸出接至CPU、可編程邏輯器件和各專用芯片的復位腳。所述復位芯片的手工復位輸入接至復位芯片的手工復位端,按復位鍵產生硬件復位操作。所述復位芯片的看門狗輸入端接至可編程邏輯器件,由可編程邏輯器件為其提供時鐘信號,當產生下列情況之一時可編程邏輯器件停止提供時鐘信號,復位芯片產生硬件復位規(guī)定時間內看門狗曾經溢出次數計數達到N次,或,主控板發(fā)送的強制復位信號為規(guī)定的特征字時。
所述單板上的可編程邏輯器件中設有一個看門狗程序,要求在軟件規(guī)定的喂狗時間內至少喂狗(控制電平變化)一次,否則看門狗溢出,對CPU進行復位。軟件使用看門狗喂狗字節(jié)位寫“0”/“1”進行喂狗??撮T狗可以被禁止(比如啟動、版本更新時),軟件使用看門狗使能開關字節(jié)寫“0”禁止看門狗工作??删幊踢壿嬈骷冗壿嬍勾丝刂七壿嬋笔榻箍撮T狗工作。
本發(fā)明所述可編程邏輯器件中還有邏輯對看門狗曾經溢出的次數進行計數,當計數到N-1次后又產生了看門狗復位時進行硬件復位。軟件要在預定時間后將看門狗溢出次數清零,以保證“如果規(guī)定時間內有超過N次看門狗溢出就執(zhí)行硬件復位”的邏輯。軟件使用看門狗溢出次數字節(jié)位寫零清除看門狗溢出次數計數。
所述硬件復位后看門狗曾經溢出的次數的計數值為0,可以使用看門狗曾經溢出次數做為軟件判別軟/硬重起的標志。當看門狗曾經溢出的次數為0時,表明是硬重啟;當看門狗曾經溢出的次數不為0時,表明是軟重啟。軟件讀取看門狗溢出次數字節(jié)位對應看門狗曾經溢出次數。軟件可以修改看門狗曾經溢出次數,當寫成N-1后,看門狗再次溢出,就會產生硬件復位,從而實現(xiàn)軟件控制硬件復位。
本發(fā)明方法通過軟硬件的協(xié)同操作,對不同情況下的復位信號進行區(qū)分,并作適當的處理,對某些軟件或CPU跑死等引起的復位,在保證通訊業(yè)務不中斷的情況下,恢復系統(tǒng)正常運行。本發(fā)明的復位方法大大提高了系統(tǒng)的穩(wěn)定性,對不同情況下的復位信號進行了智能處理,增強了系統(tǒng)復位的靈活性;降低了異常復位引起的業(yè)務中斷的可能性。
應當理解的是,上述針對具體實施例的描述較為詳細,并不能因此而認為是對本發(fā)明專利保護范圍的限制,本發(fā)明的專利保護范圍應以所附權利要求為準。
權利要求
1.一種軟硬件協(xié)同防止系統(tǒng)死機中斷業(yè)務的復位方法,其包括以下步驟A、在系統(tǒng)異常情況下選擇軟件復位或硬件復位;B、對于由軟件原因引起的軟件復位,系統(tǒng)只對CPU部分進行復位,對業(yè)務部分不處理,保證軟件復位時不斷業(yè)務;C、若系統(tǒng)在預定時間內超過了預定次數的軟件復位,則進行硬件復位。
2.根據權利要求1所述的方法,其特征在于,所述硬件復位的條件還包括上電,按復位鍵,網管下硬復位命令,線卡收到強制復位信號或單板自檢不通過。
3.根據權利要求1所述的方法,其特征在于,所述軟件復位的條件還包括版本下載結束后重新啟動或收到主控板下發(fā)的軟件復位命令。
4.根據權利要求1至3任意所述的方法,其特征在于,所述步驟C還包括所述系統(tǒng)中設置一可編程邏輯器件,其中設有兩個計數器,一第一計數器為看門狗,它的清零控制端需要CPU在預定時間內寫入喂狗字節(jié)的數字至少變化一次,否則溢出;一第二計數器對所述第一計數器的溢出次數進行計數,當計到預定次數時溢出;該第二計數器溢出后,切斷晶振時鐘到復位芯片的輸入,使所述復位芯片產生復位輸出,形成硬件復位過程。
5.根據權利要求4所述的方法,其特征在于,所述步驟C還包括該第二計數器的計數值由軟件的溢出次數字節(jié)讀回,用于判斷是硬件重啟還是軟件重啟。
6.根據權利要求4所述的方法,其特征在于,所述步驟C還包括所述第二計數器的計數值由軟件的溢出次數字節(jié)進行修改,以在所述第一計數器下一次溢出時產生硬件復位。
全文摘要
本發(fā)明公開了一種軟硬件協(xié)同防止系統(tǒng)死機中斷業(yè)務的復位方法,其包括以下步驟在系統(tǒng)異常情況下選擇軟件復位或硬件復位;對于由軟件原因引起的軟件復位,系統(tǒng)只對CPU部分進行復位,對業(yè)務部分不處理,保證軟件復位時不斷業(yè)務;若系統(tǒng)在預定時間內超過了預定次數的軟件復位,則進行硬件復位。本發(fā)明方法大大提高了系統(tǒng)的穩(wěn)定性,對不同情況下的復位信號進行了智能處理,增強了系統(tǒng)復位的靈活性;降低了異常復位引起的業(yè)務中斷的可能性。
文檔編號G06F11/00GK1979381SQ200510120638
公開日2007年6月13日 申請日期2005年12月9日 優(yōu)先權日2005年12月9日
發(fā)明者王靜璇, 齊建, 陸建鑫 申請人:中興通訊股份有限公司