两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種處理器系統、設備及故障處理方法

文檔序號:6464346閱讀:216來源:國知局
專利名稱:一種處理器系統、設備及故障處理方法
技術領域
本發(fā)明涉及數據處理設備,特別涉及一種處理器系統、CPU管理系統、故
障處理裝置以及故障處理方法。
背景技術
下面先對涉及的基本概念進行說明。
FLASH存儲器又稱閃存,是一種可以在線多次擦除的非易失性存儲器, 即掉電后數據不會丟失.為嵌入式系統中典型的存儲設備。嵌入式系統中一般用 于存儲系統工作的啟動代碼和數據。
并行FLASH: FLASH存儲器的一種又稱為NORFLASH,由于并行FLASH 支持代碼片上執(zhí)行,應用程序和啟動代碼可以直接在FLASH上運行,因此嵌 入式系統中 一般用于存儲系統的啟動代碼。
圖1為并行FLASH (NORFLASH)的管腳結構示意圖,如圖所示,其中
RESET為芯片的復位管腳;
CE為芯片的片選信號管腳;
WE為芯片的寫信號管腳;
OE為芯片的讀信號管腳;
VCC為芯片的電源輸入管腳;
VSS為芯片的接地管腳;
BYTE為芯片的工作方式選擇管腳,BYTE接高芯片工作在16位工作模 式,BYTE接地時芯片工作在8位工作模式;
WP/ACC為芯片的寫保護管腳,WP接低電平,芯片不允許被修改(有點 類似磁盤的寫保護);DQO至DQ7為芯片工作在8位模式下的數據信號管腳;
DQ8至DQ15為芯片工作在16位模式下的數據信號管腳;
AO Al A2至A20為并行FLASH工作在16位工作沖莫式地址線管腳;
A-l AO Al至A20為并行FLASH工作在8位工作模式下的地址線管腳。
并行FLASH器件一般包含地址信號管腳,數據信號管腳和讀寫控制信號
管腳,CPU (處理器)通過以上三種信號線讀或寫FLASH內容。
地址信號線用來傳輸地址信息的信號線,具體的,與圖1中的AOAl等
管腳相連,地址線不同,讀取的內容不同;
數據信號線數據信號線是用來傳輸數據信息的信號線,與圖1中的
DQ0-DQ7等管腳相連;
讀寫控制信號線用來傳輸控制信息的信號線,比如讀寫選擇等信息。 上電配置CPU的一些輸入管腳,通過在這些管腳輸入不同的電平信號組
合可以使CPU工作在不同的工作模式。
CPU的啟動過程 一般的通用處理器,上電的時候都是從連接到特定信號
線的并行FLASH的特定地址讀取啟動代碼后開始執(zhí)行代碼,比如該特定信號
線可以是片選信號線;
圖2為處理器系統中N0RFLASH連接結構示意圖,如圖所示,包括管
理系統201 、并行FLASH202、 CPLD ( Complex Programmable Logic Device,
復雜可編程邏輯器件)203、串口 204,其中
CPLD代表的是一種可編程邏輯器件,它可以在制造完成后由用戶根據自
己的需要定義其邏輯功能,在電子系統中 一般用于實現一些簡單的用戶定制邏輯。
RST:管理系統的復位輸入管腳,如果RST有低電平信號的脈沖,則管理 系統發(fā)生復位,整個系統重新開始工作。
啟動代碼電子系統中,CPU最早被執(zhí)行的代碼,是電子系統能正常工作 的最基本的代碼。本結構中管理系統201和FLASH 202通過地址信號線、讀寫信號線、片 選信號線連接在一起。
管理系統201:完成整個系統的控制,包括發(fā)起對FLASH202的讀寫操作。
管理系統201和CPLD203通過總線連4矣在一起,管理系統201通過總線 和CPLD203交換信息(比如系統工作正常信息)。
CPLD203: 通過管腳控制管理系統201的復位輸入,通過總線和管理系 統201交互系統的正常工作的各種情況,如果系統不正常工作則發(fā)起對整個管 理系統201的復位才喿作。
管理系統復位輸入RST:如果管理系統的復位管腳接收到由高到低的復位 脈沖,則管理系統就開始重新啟動,重新確認上電工作才莫式,重新發(fā)起對并行 FLASH202的讀寫。
CPLD全局復位如果CPLD203的復位管腳接收到由高到低的復位脈沖, 則CPLD就開始重新啟動,CPLD的內部所有狀態(tài)都恢復到初始的狀態(tài),CPLD 內部的狀態(tài)機就重新開始運轉。
并行FLASH202:存儲系統工作正常的啟動代碼和數據,接收管理系統發(fā) 送的讀寫命令。圖3為FLASH數據存放格式示意圖,如圖所示,在FLASH 的地址301上存儲了引導代碼,在地址302存儲了應用程序,在地址303存儲 其它數據。
寫信號線當管理系統要對FLASH進行寫操作時,該信號線為低電平。 寫保護管腳直接連接到高電平時,允許管理系統的寫操作行為,高電平一 般是指3.3V的電壓。
串口 204:管理系統201通過串口 204輸出系統的工作狀態(tài)。 但是,傳統系統存在以下不足
1、 當存在錯誤的操作啟動代碼的行為時,可能破壞系統的啟動代碼導致 系統無法啟動;
2、 一些非人為的故障會導致系統的啟動代碼被破壞導致系統無法啟動,比如存儲啟動代碼的FLASH可能因品質問題導致^t據丟失。
3、由于系統沒有冗余的啟動代碼設計, 一旦唯一的啟動代碼被破壞,系 統就無法正常工作。

發(fā)明內容
本發(fā)明提供一種處理器系統、CPU管理系統、故障處理裝置以及故障處理 方法,用以解決在啟動代碼出現錯誤時,能夠識別出錯誤,進一步的,解決在 出現故障時處理器系統不能夠正常重新啟動的問題。
本發(fā)明提供了一種處理器系統的故障處理裝置,包括第一地址信號管腳、 第二地址信號管腳,還包括控制器,其中
第一地址信號管腳、第二地址信號管腳分別用于通過地址信號線與CPU 管理系統、FLASH連接;
控制器分別與第一地址信號管腳、第二地址信號管腳相連;
控制器,用于在設定時間內沒有接收到正常工作標示信息或接收到重新啟 動命令后,向CPU管理系統發(fā)出復位脈沖。
較佳地,控制器包括
定時器,用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)復位脈 沖發(fā)射單元;
復位脈沖發(fā)射單元,用于在被定時器觸發(fā)或接收到重新啟動命令后,向 CPU管理系統發(fā)出復位脈沖。 較佳地,控制器進一步包括
切換單元,用于在被定時器觸發(fā)時,將通過第二地址信號管腳發(fā)送的第一 存儲地址信號切換至第二存儲地址信號;
所述定時器進一步用于在設定時間內沒有接收到正常工作標示信息,則觸 發(fā)切換單元。
較佳地,控制器進一步包括故障標識單元,用于在被定時器觸發(fā)后,標識FLASH在當前讀耳又的第一 存儲地址上存儲的啟動代碼存在故障;
定時器進一步用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)故 障標識單元。
較佳地,控制器進一步包括
啟動次數統計單元,用于在啟動時,將當前讀取的第二存儲地址啟動的次 數力口一。
較佳地,控制器進一步包括
升級標識單元,用于標識CPU管理系統是否對啟動^^碼進^f亍升級。
所述切換單元進一步用于在被定時器觸發(fā)且升級標識未置位時,將通過第 二地址信號管腳發(fā)送的第一存儲地址信號切換至第二存儲地址信號;
所述故障標識單元進一步用于在被定時器觸發(fā)且升級標識未置位時,標識 FLASH在當前讀取的第 一存儲地址上存儲的啟動代碼存在故障;
所述啟動次數統計單元進一步用于啟動且升級標識未置位時,將當前讀取> 的第二存儲地址啟動的次數加一 。
本發(fā)明還提供了一種處理器系統,包括
FLASH,通過地址信號線與控制器相連,在第一存儲地址上存儲啟動代碼 數據文件,在第二存儲地址上備份啟動代碼數據文件;
CPU管理系統,通過地址信號線與控制器相連,根據從FLASH上讀取的 啟動代碼數據文件進行啟動,在正常啟動后向控制器發(fā)出正常工作標示信息, 并在接收到控制器發(fā)送的復位脈沖后重新啟動;
控制器,連接CPU管理系統的地址信號線與FLASH的地址信號線,用于 在設定時間內沒有接收到正常工作標示信息或接收到重新啟動命令后,向CPU 管理系統發(fā)出復位脈沖。
較佳地,控制器進一步包括
故障標識單元,用于在被定時器觸發(fā)后,標識FLASH在當前讀取的第一存儲地址上存儲的啟動代碼存在故障;
定時器進一步用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)故 障標識單元;
CPU管理系統進一步包括
第一恢復單元,用于在CPU管理系統啟動后,當確定第一或第二存儲地 址上存儲的啟動代碼存在故障后,將另一存儲地址上的啟動代碼數據文件恢復 至存儲的啟動代碼存在故障的存儲地址。
較佳地,控制器進一步包括
啟動次數統計單元,用于啟動時,將當前讀取的第二存儲地址啟動的次數 力口一;
CPU管理系統進一步包括
第二恢復單元,用于在CPU管理系統啟動后,當確定從第一或第二存儲 地址啟動的次數超過閾值時,將另一存儲地址上的啟動代碼數據文件恢復至啟 動次數超過閾值的存儲地址。
較佳地,控制器進一步包括
升級標識單元,用于標識CPU管理系統是否對啟動代碼進行升級; CPU管理系統進一步用于升級啟動代碼前將升級標識置位。 本發(fā)明提供了一種處理器系統的故障處理方法,包括如下步驟 控制器在設定時間內沒有接收到正常工作標示信息或接收到重新啟動命
令,向CPU管理系統發(fā)出復位脈沖。
將通過第二地址信號管腳發(fā)送的第一存儲地址信號切換至第二存儲地址
信號,并標識FLASH在當前讀取的第 一存儲地址上存儲的啟動代碼存在故障。 較佳地,還包括
CPU管理系統啟動后,將另一存儲地址上的啟動代碼恢復到故障的存儲地址。
較佳地,進一步包括在啟動時,將從當前FLASH讀取的第二存儲地址啟動的次數加一; CPU管理系統啟動后,將啟動次數正常的存儲地址上的啟動代碼恢復到啟 動次數超過閾值的存儲地址上。 本發(fā)明有益效果如下
本發(fā)明能檢測系統是否正常啟動,從而完全避免了老設計在啟動代碼被破 壞的情況下,不能識別出現錯誤的問題,進一步的還能解決不能正常重新啟動 的問題。


圖1為背景技術中所述并行FLASH的管腳結構示意圖2為背景技術中所述處理器系統中NORFLASH連接結構示意圖3為背景技術中所述FLASH數據存放格式示意圖4為本發(fā)明實施例中所述處理器系統結構示意圖6為本發(fā)明實施例中所述地址邏輯切換示意圖7為本發(fā)明實施例中所述處理器系統的CPU管理系統結構示意圖8為本發(fā)明實施例中所述處理器系統的故障處理裝置結構示意圖9為本發(fā)明實施例中所述處理器系統實施流程示意圖IO為本發(fā)明實施例中所述處理器系統的故障處理方法實施流程示意圖11為本發(fā)明實施例中所述升級導致啟動失敗的解決方案實施流程示意圖。
具體實施例方式
下面結合附圖對本發(fā)明的具體實施方式
進行說明。 發(fā)明人在發(fā)明過程中注意到
傳統電子系統寫并行FLASH的操作一般在以下幾種情況中存在1 、升級啟動代碼,相當于PC的BIOS ( Basic Input / Output System,基本 輸入輸出系統);
2、 升級主程序,相當于升級WINDOWS才喿作系統;
3、 記錄故障信息,相當于平時在使用PC過程中出錯時PC記錄錯誤日記;
4、 用戶設置信息,類似修改BIOS的參數。
以上四種的操作一般只在一定的條件被使用,什么時候調用這些操作理論 上是已知的確定的,但是,由于人為或其他一些無法預知的客觀原因也會導致 這些操作被錯誤的調用。比如
由于系統設計人員粗心大意,在某些不該寫FLASH的時候調用寫FLASH 操作,也就是說寫"l喿作在不該被調用的時候調用;
在升級或修改代碼的時候系統被錯誤的下電,類似在安裝WIDOWS操作 系統一半的過程中斷電;
以上兩種情況都有可能導致的系統啟動代碼和主程序被破壞,導致系統無 法正常工作。
其將會導致如下情況
傳統系統正常開機操作流程如下
1、 系統上電;
2、 CPLD接收到全局復位脈沖信號,CPLD內部邏輯恢復到初始狀態(tài);
3、 CPLD通過管腳發(fā)送復位脈沖給CPU管理系統,并且啟動對CPU管理 系統工作情況的4企測;
4、 CPU管理系統從并行FLASH啟動;CPU管理系統讀取并行FLASH內 容,系統開始啟動。系統正常工作,管理系統通過總線發(fā)送正常工作信息給 CPUD。
但是,當發(fā)生在FLASH上的啟動代碼被破壞時,則會出現
5、 由于FLASH啟動代碼出現問題,CPU管理系統無法正常啟動,CPU 管理系統無法正常定時發(fā)出系統工作正常信息;6、CPLD在一定的時間間隔內沒有收到管理系統的正常工作的標識,CPLD 重復上面正常時的第3步驟工作,即、CPLD通過管腳發(fā)送復位脈沖給CPU管 理系統,并且啟動對CPU管理系統工作情況的4企測;
然后,就不斷重復上面正常的第3、 4、 5、 6的工作步驟,系統無法正常 工作。
由此可見,由于傳統的并行FLASH存儲系統系統由于沒有冗余的啟動代 碼,所以一旦FLASH的啟動代碼被破壞就導致處理器系統無法正常啟動。鑒
以上問題,從而提高處理器系統的可靠性。
一、 通過在現有技術的FLASH存儲系統的不同的兩個地址存儲兩份啟動 代碼,避免處理器系統的主啟動代碼被破壞時,系統沒有可以使用的啟動代碼;
二、 通過在電^各中添加啟動代碼地址切換單元,當系統無法正常啟動時,切 換到備份FLASH的地址空間,使系統從冗余的FLASH的地址空間啟動;
三、 還進一步的采用了恢復啟動的方案,通過在處理器系統無法正常啟動 時,當通過正常的FLASH啟動后,在啟動完成后通過處理器系統恢復被破壞 的FLASH。
根據上述思路,下面對如何具體實施進行說明。
圖4為處理器系統結構示意圖,如圖所示,在處理器系統中可以包括 FLASH401、 CPU管理系統402、控制器403,其中
FLASH401通過地址信號線與控制器403相連,用于存儲啟動代碼數據文 件;FLASH上存儲了系統工作正常的啟動代碼和數據,接收管理系統發(fā)送的 讀寫命令,具體的,可以在第一存儲地址上存儲啟動代碼數據文件,在第二存 儲地址上備份啟動代碼數據文件。
實施中,以存儲了啟動代碼數據文件的兩個存儲地址為例來進行說明, 其中,按啟動順序來命名,則稱優(yōu)先啟動的存儲地址為第一存儲地址,備用的 存儲地址為第二存儲地址,容易知道,二者之間的關系是互為備份的關系,比如當從目前命名的第二存儲地址啟動時,則第一存儲地址則成了第二存儲地
址的備用存儲地址。同時,為了在實施中便于表述,實施例中啟動時首先從第 一存儲地址讀取啟動數據文件進行啟動,因此在第二存儲地址上備份啟動代碼
數據文件,具體實施中,控制器的地址信號線與FLASH上的地址信號線管腳 相連,但是通過一些技術手段卻可以實現在同樣的地址信號線上從同樣的地址 信號線管腳上控制CPU管理系統在不同的存儲地址上讀取數據。比如由于 在FLASH上有多個存儲地址,其是根據從地址信號線上輸送的電平信號來決 定讀取存儲地址的,因此也可以通過控制從地址信號線上輸送的電平信號來控 制在不同的存儲地址上讀取啟動代碼,同樣也可以在不同的存儲地址對啟動代 碼數據文件進行備份;需要注意的是,利用電平信號來控制在不同的存儲地址 上讀取數據是一種常用的手段,本發(fā)明實施中強調的是對存儲地址的切換控 制,如果有其他可以控制對不同的存儲地址上的數據進行讀取的手段,那么通 過在控制器上實現該功能手段則也可以達到電平信號控制的目的,取得一樣的 技術效果。圖5為FLASH在存儲地址上的數據存放格式示意圖,如圖所示, 在第一存儲地址存儲了啟動代碼數據文件,在第二存儲地址上存儲了備份啟動 代碼數據文件,在第三存儲地址存儲了其他數據,在第四存儲地址存儲了應用 程序。本圖僅用于示例,本領域技術人員容易知道,在FLASH的各個存儲地 址上具體存儲何種數據是可以根據需要來確定的。
CPU管理系統402通過地址信號線與控制器403相連,根據從通過地址信 號線控制的存儲地址上讀取的啟動代碼數據文件進行啟動,在正常啟動后向控 制器403發(fā)出正常工作標示信息,并在接收到向控制器403發(fā)送的復位脈沖后 重新啟動;由圖4可知,當CPU管理系統從通過地址信號線控制讀取的存儲 地址上讀取啟動代碼時,該地址信號線在實施中包括了 CPU管理系統402與 控制器403件的地址信號線、以及控制器403與FLASH401之間的地址信號線, 對于CPU管理系統來說,讀取啟動代碼是透明的,實施中通過控制器對存儲 地址的切換便可以控制CPU管理系統通過同樣的數據信號線從不同存儲地址上對數據進行讀取。
控制器403,與CPU管理系統的地址信號線和FLASH的地址信號線連接, 用于在設定時間內沒有接收到正常工作標示信息或接收到重新啟動命令后,向 CPU管理系統發(fā)出復位脈沖。
具體的,控制器中可以包括
定時器,用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)復位脈 沖發(fā)射單元;
復位脈沖發(fā)射單元,用于在被定時器觸發(fā)或接收到重新啟動命令后,向 CPU管理系統發(fā)出復位脈沖。
進一步的,定時器還可以進一步用于在設定時間內沒有接收到正常工作標 示信息,則觸發(fā)切換單元;此方案下,控制器中還可以包括切換單元,用于在 被定時器觸發(fā)時,將通過第二地址信號管腳發(fā)送的第一存儲地址信號切換至第 二存儲地址信號,具體的可以將向第二地址信號管腳輸送的第 一存儲地址電平 信號切換至輸送第二存儲地址電平信號;這樣,控制器通過對在地址線上輸送 的電平信號進行控制,便可以根據需要切換到所需讀取啟動代碼數據文件所在 的存儲地址。
實施中,控制器可以采用CPLD來實現,采用該種可編程邏輯器件來實現, 便可以在其制造完成后由用戶根據自己的需要定義其邏輯功能,在電子系統中 用于實現一些簡單的用戶定制邏輯。
由上述實施可以看出系統的連接改進在于
老處理器系統設計中'.并行FLASH的地址信號由CPU管理系統直接供給; 實施例的新處理器系統中并行FALSH的地址信號通過控制器供給,新 系統中FLASH的地址信號線沒有和CPU管理系統直接連接。由于控制器可以
存儲地址,因此通過控制電平信號的選擇便可以控制CPU管理系統對FLASH 在不同存儲地址上對的啟動數據文件的讀取。具體實施中,定時器可以用于在設定時間內沒有接收到正常工作標示信
息,則觸發(fā)復位脈沖發(fā)射單元;定時器實施中可以采用正常工作記數器,用于
記錄兩次管理系統通知控制器系統正常工作的時間間隔,如果定時器溢出,通
知控制器的邏輯開始重新啟動。進一步的,還可以設置如果在特定的時間內 收到CPU管理系統發(fā)出的正常工作標識,該定時器自動清0。
復位脈沖發(fā)射單元,用于在被定時器觸發(fā)或接收到重新啟動命令后,向 CPU管理系統發(fā)出復位脈沖;其可以采用一個復位邏輯來實現,其用于復位 CPU管理系統。
進一步包括的切換單元,用于在被定時器觸發(fā)后,將向第二地址信號管腳 輸送的第 一存儲地址電平信號切換至輸送第二存儲地址電平信號??梢圆捎靡?個地址切換邏輯來實現,用于選擇從并行FLASH的第一存儲地址啟動還是從 第二存儲地址啟動。圖6為地址邏輯切換示意圖,如圖所示,可以采用以下兩 種組合之一
邏輯切換組合一
控制器地址線發(fā)送第一存儲地址電平信號;
貝'J CPU管理系統從并行FLASH的第 一存儲地址啟動。
邏輯切合組合二
控制器地址線發(fā)送第二存儲地址電平信號;
貝'J CPU管理系統從并行FLASH的第二存儲地址啟動。
實施中,CPU管理系統的地址信號線連接至控制器,通過控制器對存儲地
址的連接切換,便可以實際達到控制CPU管理系統從不同的存儲地址讀取啟
動代碼進行啟動。
進一步的,在控制器403中還可以包括
故障標識單元,用于在被定時器觸發(fā)后,標識FLASH在當前向第二地址 信號管腳輸送的第一存儲地址電平信號對應的第一存儲地址上存儲的啟動代 碼有故障;在此方案下,定時器還可以進一步用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)故障標識單元。故障標識單元可以記錄第二存儲地址的故障標識,在系統啟動的過程中, 如果系統無法從當前電平信號選擇的存儲地址啟動,則控制器在內部記錄一個 狀態(tài),標識該存儲地址上存儲的啟動代碼可能有故障,用以供后續(xù)系統和控制 器內部邏輯進行判斷。同理,故障標識單元還可以記錄第一存儲地址的故障標識,在系統的啟動過程中,如果系統無法從并行FLASH第一存儲地址啟動,則控制器在內部記 錄一個狀態(tài),標識并行FLASH第一存儲地址上存儲的啟動代碼可能有故障, 供后續(xù)系統和控制器內部邏輯進行判斷。實施中,存在CPU管理系統或其他裝置向控制器發(fā)送重新啟動命令,控 制器向CPU管理系統發(fā)送復位脈沖的情況,這種情況下不認為啟動代碼發(fā)生 故障,即不切換、不置故障標識,僅發(fā)出復位脈沖。在此實施方案中,CPU管理系統可以進一步包括第一恢復單元,用于在CPU管理系統啟動后,當確定FLASH上第一或第 二存儲地址存儲的啟動代碼存在故障后,將另 一存儲地址上的啟動代碼數據文 件恢復至故障的存儲地址。在出現故障后,第一恢復單元便可以通過上面的故障標識識別出存儲的啟 動代碼存在故障的存儲地址,從而可以進行相應的文件恢復。實施中,在恢復 后可將故障標識置零,以便于以后出現故障時再次使用。進一步的,控制器中還可以包括啟動次數統計單元,用于啟動時,將當前讀取的第二存儲地址啟動的次數 力口一;在此實施方案中,CPU管理系統進一步包括第二恢復單元,用于在CPU管理系統啟動后,當確定從FLASH第一或第 二存儲地址啟動的次數超過閾值時,將另一存儲地址上的啟動代碼數據文件恢 復至啟動次數超過閾值的存儲地址。CPU管理系統讀取啟動代碼數據文件進行啟動后,若工作正常則會發(fā)送正 常工作標示信息,因此當接收到正常工作標示信息時,便可確定系統已經正常 啟動??刂破鬟€可以進一步包括升級標識單元,用于標識CPU管理系統是否 對啟動代碼進行升級;則,CPU管理系統可以進一步用于升級啟動代碼前將升 級標識置位。升級標識的作用是當升級標識置O的情況下,若定時器溢出,發(fā)復位脈 沖、進行切換、設置障礙標識,然后將啟動的存儲地址次數+l;升級標識置l的情況下,若定時器溢出或接收到重啟命令,則僅發(fā)復位脈 沖,將升級標識置回0;對于升級標識單元、啟動次數統計單元的具體實施中,可以如下啟動次數統計單元可以記錄作為備份的第二存儲地址的啟動次數,當從第 二存儲地址啟動一次,在該數字加一,為避免出現錯誤記錄,可以設置在控制 器接收到全局復位脈沖時,將該值置零。該次數是用于在后續(xù)過程中判斷系統 是否正常啟動使用。同理,啟動次數統計單元還可以記錄作為備份的第 一存儲地址的啟動次 數,從第一存儲地址啟動一次,在該數字加一,為避免出現錯誤記錄,可以設 置在控制器接收到全局復位脈沖時,將該值置零。該次數是用于在后續(xù)過程中 判斷系統是否正常啟動使用。當在進行啟動代碼升級時,系統將升級標識置位(如置為1),若升級成功, CPU管理系統將升級標識重置為0。具體實施中,當收到CPU的重新啟動命 令或定時器被觸發(fā)時,若確定升級標識被置1,則僅需發(fā)出復位脈沖,而無需 切換存儲地址、啟動次數加一或設置故障標識。在發(fā)出復位脈沖后,將升級標 識復位為0。通過設置升級標識,使得升級導致的無法發(fā)送正常工作標示信息 不會被誤認為故障而切換,從而導致無法完成升級后的重啟。另外,實施中還存在從某個存儲地址啟動多次的情況,針對該種情況,第二恢復單元確定啟動次數是否超過閾值的目的在于,若系統出現從該存儲地址 多次啟動的情況,則認為啟動代碼出現異常,因此,當統計的啟動次數超出設 定的閾值時,也需進行啟動文件的恢復。本發(fā)明還提供了一種處理器系統的CPU管理系統與一種處理器系統的故 障處理裝置,下面對其具體實施方式
進行說明。圖7為處理器系統的CPU管理系統結構示意圖,如圖所示,在CPU管理 系統中可以包括第一恢復單元701、和/或第二恢復單元702,其中第一恢復單元701,用于在CPU管理系統啟動后,當確定第一或第二存儲 地址上存儲的啟動代碼存在故障后,將另 一存儲地址上的啟動代碼數據文件恢 復至故障的存儲地址。第二恢復單元702,用于在CPU管理系統啟動后,當確定從第一或第二存 儲地址啟動的次數超過閾值時,將另一存儲地址上的啟動代碼數據文件恢復至 該啟動次數超過閾值的存儲地址。圖8為處理器系統的故障處理裝置結構示意圖,如圖所示,故障處理裝置 中可以包括第一地址信號管腳801、第二地址信號管腳802、控制器403,其 中第一地址信號管腳801、第二地址信號管腳802分別用于通過地址信號線 與CPU管理系統、FLASH連接;控制器403分別與第一地址信號管腳801、第二地址信號管腳802相連;控制器403,用于在設定時間內沒有接收到正常工作標示信息或接收到重 新啟動命令后,向CPU管理系統發(fā)出復位脈沖;控制器中可以包括定時器4031,用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)復 位脈沖發(fā)射單元;復位脈沖發(fā)射單元4033,用于在被定時器觸發(fā)或接收到重新啟動命令后, 向CPU管理系統發(fā)出復位脈沖。進一步的,定時器還可以進一步用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)切換單元;則,控制器進一步還可以包括切換單元4032用于在被定時器觸發(fā)時,將通過第二地址信號管腳發(fā)送的第一存儲地址信號切換 至第二存儲地址信號;該實施下,控制器可以利用改變通過地址線輸送的電平信號來實現對所讀 取的存儲地址的切換。當與外部設備進行連接時,具體的實施可以為可以用第一地址信號管腳 801通過地址信號線連接CPU管理系統,第二地址信號管腳802通過地址信號 線連接存儲有啟動代碼數據文件的FLASH。貝'J,當控制器在接收到全局復位脈沖后,在設定時間內沒有接收到正常工 作標示信息時,在發(fā)出復位脈沖后,便可通過控制與FLASH連接的地址信號 線上輸出的電平信號控制CPU管理系統對不同存儲地址上的啟動代碼數據文 件的讀取。具體實施中,控制器403可以包括定時器4031 、復位脈沖發(fā)射單元4033, 還可以包括切換單元4032,其中定時器4031,用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)復 位脈沖發(fā)射單元4033;還可以進一步用于觸發(fā)切換單元4032;復位脈沖發(fā)射單元4033,用于在被定時器4031觸發(fā)或接收到重新啟動命 令后后,發(fā)出復位脈沖;在故障處理裝置中,還可以進一步包括故障標識單元804,用于被定時 器觸發(fā)后,標識FLASH在當前讀取的第 一存儲地址上存儲的啟動代碼存在故 障。在此實施方案中,定時器還進一步用于在設定時間內沒有接收到正常工作 標示信息,則觸發(fā)故障標識單元。故障處理裝置中還可以進一步包括啟動次數統計單元806,用于在啟動時,將當前讀取的第二存儲地址啟動 的次lt加一??刂破髦羞€可以進一步包括升級標識單元805,用于標識CPU管理系統 是否對啟動代碼進行升級。實施中,切換單元在被定時器觸發(fā)且升級標識未置位時,將通過第二地址 信號管腳發(fā)送的第一存儲地址切換至第二存儲地址的信號,即將讀取數據的第 一存儲地址切換至第二存儲地址;故障標識單元則在被定時器觸發(fā)且升級標識 未置位時,標識FLASH在當前讀取的第一存儲地址上存儲的啟動代碼存在故 障;啟動次數統計單元在啟動且升級標識未置位時,將當前讀取的第二存儲地 址啟動的次lt加一。下面舉一實施例用以說明上述系統以及裝置的實施中,圖9為處理器系統 實施流程示意圖,如圖所示,可以看到該實施流程事如何解決技術問題的,該 實施例中控制器采用CPLD來進行實施。步驟901、系統上電;步驟902、 CPLD接收到全局復位脈沖信號,CPLD內部邏輯恢復到初始 狀態(tài);步驟903、地址切換邏輯切換到從并行FLASH第一存儲地址啟動,并行 FLASH讀取次數加一;當系統正常啟動時,流程為CPLD通過管腳發(fā)送復位脈沖給管理系統, 正常工作定時器開始計數;管理系統從并行FLASH第一存儲地址啟動;管理 系統讀取并行FLASH第一存儲地址上的內容,系統開始啟動,管理系統通過 總線定時發(fā)出系統正常工作標識。以下是系統無法正常啟動時的實施流程,即,由于并行FLASH第一存儲 地址上存儲的啟動代碼數據文件已經破壞,管理系統無法讀取正常的代碼,管 理系統無法定時發(fā)出正常工作標示信息;則以下步驟為步驟904、 CPLD在設定時間內沒有收到正常工作標示信息;步驟905、 CPLD切換邏輯切換管理系統從FLASH第二存儲地址啟動; CPLD置位并行FLASH第一存儲地址故障標識位;步驟906、 CPLD重新復位管理系統;步驟907、管理系統從FLASH第二存儲地址啟動,讀取代碼; 步驟908、管理系統通過總線在CPLD讀取并行FLASH第一存儲地址故 障標示位和第二存儲地址故障標示位,確認并行FLASH第一存儲地址發(fā)生故障;步驟909、管理系統發(fā)起恢復并行FLASH第一存儲地址上的啟動的代碼。 由上述實施可見,實施中通過在原有電路上做了小小的改動,或在原有的 軟件行為上做了小小的改動,不僅能檢測系統是否正常啟動,還能在系統出現 問題的時候切換到正常的FLASH進行啟動,更進一步的,還能在系統正常的 時候恢復被破壞的FLASH的內容,從而完全避免了老設計在啟動代碼被破壞 的情況下無法正常啟動的問題??梢姳景l(fā)明實施方式在設計上改動小,但是效 果明顯。本發(fā)明還提供了一種處理器系統的故障處理方法,下面對該方法的具體實 施進行說明。圖10為處理器系統的故障處理方法實施流程示意圖,如圖所示,實施故 障處理方法時可以包括如下步驟步驟IOOI、通過地址信號線連接FLASH與控制器;步驟1002、在FLASH的第一存儲地址中存儲啟動代碼數據文件,在 FLASH的第二存儲地址中存儲備份啟動代碼數據文件;步驟1003、控制器接收到全局復位脈沖后開始計時;步驟1004、控制器在設定時間內沒有接收到正常工作標示信息,向CPU 管理系統發(fā)出復位脈沖,同時重新開始計時;步驟1005、控制器將向地址信號線輸送的第一存儲地址電平信號切換至輸 送第二存儲地址電平信號;步驟1006、控制器標識第一存儲地址上存儲的啟動代碼存在故障,此時, 在輸送第一存儲地址電平信號時CPU管理系統從第一存儲地址讀取數據;步驟1007、 CPU管理系統根據從FLASH第二存儲地址上讀取的啟動代碼 數據文件進行啟動;步驟1008、 CPU管理系統啟動成功,定時向控制器發(fā)送正常工作標示信臺 步驟1009、 CPU管理系統確定第一存儲地址上存儲的啟動代碼存在故障, 將第二存儲地址上備份的啟動代碼數據文件恢復至第 一存儲地址。具體實施中,控制器在發(fā)出復位脈沖之后,還統計從CPU管理系統當前 讀取的存儲地址上啟動的次數,如將從當前存儲地址啟動的次數加一;在該實施方式下,步驟1009中CPU管理系統在啟動后,當確定從第一或 第二存儲地址啟動的次數超過閾值時,將另一存儲地址上備份的啟動代碼數據 文件恢復至啟動次數超過閾值的存儲地址。由于系統出現故障很多原因是發(fā)生在升級啟動代碼、以及升級主程序時, 所以舉一解決因升級導致不能啟動的實施例以對本發(fā)明的具體實施方式
作進 一步的說明。圖11為升級導致啟動失敗的解決方案實施流程示意圖,為具體解決因升 級帶來的啟動失敗,實施中可以增加升級標識,用于標識系統曾經發(fā)生過升級 和修改FLASH的行為,該標識可以在有任何的軟件修改FLASH的時候被記 錄,進一步,可以設定控制器接收到全局復位脈沖時,將該值置零;該實施例 中控制器采用CPLD來進行實施,則如圖所示,實施中可以包括如下步驟 步驟IIOI、管理系統通過總線將CPLD的升級標識置位; 步驟1102、管理系統發(fā)起對FLASH的修改操作; 步驟1103、管理系統通過總線向CPLD發(fā)出重新啟動命令; 步驟1104、 CPLD接收到重新啟動命令,CPLD發(fā)出復位脈沖,升級標識 置零,正常工作定時器自動置零;實施中,管理系統可能在升級后沒法主動發(fā)重新啟動命令,這種情況下步 驟1104中還是通過設定時間內沒有接收到正常工作標識位而觸發(fā)定時器,發(fā)復位脈沖;步驟1105、判斷管理系統啟動是否成功,是則轉入步驟1106,否則轉入 步驟1107;步驟1106、管理系統重新啟動,重新發(fā)起對FLASH的操作,如果啟動成 功則定時發(fā)起正常工作標識位;步驟1107、若在升級過程中啟動代碼被破壞,CPU無法讀取到正確的啟 動代碼,CPU不能定時發(fā)出正常工作標識位;步驟1108、由于正常工作定時器沒有接收到正常工作標識,CPLD判斷系 統出現問題;步驟1109、 CPLD確認升級標識位被置O,而且系統無法正常啟動,CPLD 切換邏輯把將向地址信號線輸送的第一存儲地址電平信號切換至輸送第二存 儲地址電平信號,將第二存儲地址上的啟動次數加一;步驟lllO、 CPLD通過管腳發(fā)送復位脈沖給管理系統,正常工作定時器開 始計數;步驟1111、管理系統從FLASH的第二存儲地址啟動; 步驟1112、管理系統讀取FLASH的第二存儲地址內容,系統開始啟動, 管理系統通過總線定時發(fā)出系統正常工作標識;步驟1113 、管理系統發(fā)起恢復FLASH第 一存儲地址上的啟動的代碼。 由上述實施可以看出,本發(fā)明實施中不僅能檢測系統是否正常啟動,還能 在系統出現問題的時候切換到FLASH正常的存儲地址上進行啟動,更進一步 的,還能在系統正常的時候恢復FLASH上被破壞的存儲地址上的內容,從而 完全避免了老設計在啟動代碼被破壞的情況下無法正常啟動的問題。顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā) 明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及 其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。
權利要求
1、一種處理器系統的故障處理裝置,包括第一地址信號管腳、第二地址信號管腳,其特征在于,還包括控制器,其中第一地址信號管腳、第二地址信號管腳分別用于通過地址信號線與CPU管理系統、FLASH連接;控制器分別與第一地址信號管腳、第二地址信號管腳相連;控制器,用于在設定時間內沒有接收到正常工作標示信息或接收到重新啟動命令后,向CPU管理系統發(fā)出復位脈沖。
2、 如權利要求1所述的故障處理裝置,其特征在于,控制器包括 定時器,用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)復位脈沖發(fā)射單元;復位脈沖發(fā)射單元,用于在被定時器觸發(fā)或接收到重新啟動命令后,向 CPU管理系統發(fā)出復位脈沖。
3、 如權利要求2所述的故障處理裝置,其特征在于,控制器進一步包括 切換單元,用于在^C定時器觸發(fā)時,將通過第二地址信號管腳發(fā)送的第一存儲地址信號切換至第二存儲地址信號;所述定時器進一步用于在設定時間內沒有接收到正常工作標示信息,則觸 發(fā)切換單元。
4、 如權利要求3所述的故障處理裝置,其特征在于,控制器進一步包括 故障標識單元,用于在被定時器觸發(fā)后,標識FLASH在當前讀取的第一存儲地址上存儲的啟動代碼存在故障;定時器進一步用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)故 障標識單元。
5、 如權利要求3所述的故障處理裝置,其特征在于,控制器進一步包括 啟動次數統計單元,用于在啟動時,將當前讀取的第二存儲地址啟動的次數力口一。
6、 如權利要求3至5任一所述的故障處理裝置,其特征在于,控制器進 一步包括升級標識單元,用于標識CPU管理系統是否對啟動代碼進行升級;所述切換單元進一步用于在被定時器觸發(fā)且升級標識未置位時,將通過第 二地址信號管腳發(fā)送的第 一存儲地址信號切換至第二存儲地址信號;所述故障標識單元進一步用于在被定時器觸發(fā)且升級標識未置位時,標識 FLASH在當前讀耳又的第 一存儲地址上存儲的啟動代碼存在故障;所述啟動次數統計單元進一步用于啟動且升級標識未置位時,將當前讀取 的第二存儲地址啟動的次數加一 。
7、 一種處理器系統,其特征在于,包括FLASH,通過地址信號線與控制器相連,在第一存儲地址上存儲啟動代碼 數據文件,在第二存儲地址上備份啟動代碼數據文件;CPU管理系統,通過地址信號線與控制器相連,根據從FLASH上讀取的 啟動代碼數據文件進行啟動,在正常啟動后向控制器發(fā)出正常工作標示信息, 并在接收到控制器發(fā)送的復位脈沖后重新啟動;控制器,連接CPU管理系統的地址信號線與FLASH的地址信號線,用于 在設定時間內沒有接收到正常工作標示信息或接收到重新啟動命令后,向CPU 管理系統發(fā)出復位脈沖。
8、 如權利要求7所述的系統,其特征在于, 控制器進一步包括故障標識單元,用于在被定時器觸發(fā)后,標識FLASH在當前讀取的第一 存儲地址上存儲的啟動代碼存在故障;定時器進一步用于在設定時間內沒有接收到正常工作標示信息,則觸發(fā)故 障標識單元;CPU管理系統進一 步包括第一恢復單元,用于在CPU管理系統啟動后,當確定第一或第二存儲地 址上存儲的啟動代碼存在故障后,將另 一存儲地址上的啟動代碼數據文件恢復至故障的存儲地址。
9、 如權利要求7所述的系統,其特征在于,控制器進一步包括啟動次數統計單元,用于啟動時,將當前讀取的第二存儲地址啟動的次數 力口一;CPU管理系統進一步包括第二恢復單元,用于在CPU管理系統啟動后,當確定從第一或第二存儲 地址啟動的次數超過閾值時,將另 一存儲地址上的啟動代碼數據文件恢復至啟 動次數超過閾值的存儲地址。
10、 如權利要求7至9任一所述的系統,其特征在于,控制器進一步包括 升級標識單元,用于標識CPU管理系統是否對啟動代碼進行升級;CPU管理系統進一步用于升級啟動代碼前將升級標識置位。
11、 一種處理器系統的故障處理方法,其特征在于,包括如下步驟 控制器在設定時間內沒有接收到正常工作標示信息或接收到重新啟動命令,向CPU管理系統發(fā)出復位脈沖;將通過第二地址信號管腳發(fā)送的第一存儲地址信號切換至第二存儲地址 信號,并標識FLASH在當前讀取的第 一存儲地址上存儲的啟動代碼存在故障。
12、 如權利要求11所述的方法,其特征在于,還包括CPU管理系統啟動后,將另 一存儲地址上的啟動代碼恢復到故障的存儲地址。
13、 如權利要求11所述的方法,其特征在于,進一步包括在啟動時,將從當前FLASH讀取的第二存儲地址啟動的次數加一; CPU管理系統啟動后,將啟動次數正常的存儲地址上的啟動代碼恢復到啟 動次數超過閾值的存儲地址上。
全文摘要
本發(fā)明公開了一種處理器系統、設備及故障處理方法,包括第一地址信號管腳、第二地址信號管腳,還包括控制器,其中第一地址信號管腳、第二地址信號管腳分別用于通過地址信號線與CPU管理系統、FLASH連接;控制器分別與第一地址信號管腳、第二地址信號管腳相連;控制器,用于在設定時間內沒有接收到正常工作標示信息或接收到重新啟動命令后,向CPU管理系統發(fā)出復位脈沖。使用本發(fā)明能完全避免老設計在啟動代碼被破壞的情況下無法正常啟動的問題。
文檔編號G06F11/00GK101299200SQ20081011462
公開日2008年11月5日 申請日期2008年6月11日 優(yōu)先權日2008年6月11日
發(fā)明者林建加 申請人:北京星網銳捷網絡技術有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
天长市| 富顺县| 威宁| 浪卡子县| 鲜城| 奉贤区| 仪征市| 通化市| 巴彦淖尔市| 平舆县| 台江县| 当雄县| 日土县| 黄冈市| 宁化县| 瑞丽市| 武平县| 黔南| 峨边| 济阳县| 紫金县| 定西市| 卓资县| 皋兰县| 双城市| 阜宁县| 卢龙县| 怀仁县| 清流县| 高碑店市| 屏东县| 丰原市| 集贤县| 武陟县| 宁国市| 扶余县| 安吉县| 九江市| 雷波县| 迭部县| 晴隆县|