保持同步動態隨機存取存儲器存儲信息的方法
2023-10-08 09:01:04 3
專利名稱:保持同步動態隨機存取存儲器存儲信息的方法
技術領域:
本發明涉及網絡通信領域,尤其涉及一種數據網絡設備中同步動態隨機存取存儲器(SDRAM)所存儲信息的保持方法。
背景技術:
目前,數據網絡設備中一般用SDRAM作為內存,SDRAM的使用和管理僅限於在系統運行過程中,當系統重啟後,SDRAM的中保存的數據內容丟失,系統重新對SDRAM初始化。
在SDRAM中會存儲一些有用的信息,如系統信息。為防止在系統重啟後這部分SDRAM存儲的信息的丟失,可以在系統中增加一定容量的靜態隨機存取存儲器(SRAM)來實現,但是增加SRAM必然導致增加硬體設計的複雜性和系統的成本。
中國專利申請「維持動態隨機存取存儲器的存儲數據的方法及相關裝置」(申請號02148038.9)公開了一種在掉電後對動態隨機存取存儲器(DRAM)中存儲數據的保持方法,但該方法無法應用到在系統不掉電情況下的系統重啟過程的SDRAM存儲數據的保持。且該方法也需要系統硬體設計,同樣增加了系統的複雜性和硬體成本。
發明內容
本發明的目的在於提供一種不需要硬體設計、成本低廉的,在不掉電情況下的系統重啟過程中保持SDRAM中存儲的信息的方法。
本發明的保持同步動態隨機存取存儲器存儲信息的方法,其步驟包括1、在SDRAM中劃分一塊存儲空間作為信息記錄區;2、將需要保持的信息存儲於上述信息記錄區;3、改寫BIOS的相應程序段,使其不對上述信息記錄區進行寫操作;4、控制在CPU被復位到CPU的存儲接口重新被配置之間運行的代碼量,使代碼運行時間不大於SDRAM的暫態保持時間。
為了確保CPU被復位到CPU的存儲接口重新被配置之間運行時間不大於SDRAM的暫態保持時間,在CPU被復位到CPU的存儲接口重新被配置之間只運行CPU初始化代碼,將其他代碼設定在存儲接口初始化後運行。
所述需要保持的信息一般為系統數據信息。
SDRAM的暫態保持時間不大於10毫秒。
數據網絡設備所用的存儲器通常有SDRAM和FLASH(快閃記憶體)。SDRAM作為系統運行期間的程序和數據存儲器,FLASH用來存放系統程序映象和一些要求掉電不丟的數據。
SDRAM需要定時刷新,SDRAM的刷新通常由處理器(CPU)的存儲接口完成,存儲接口在上電後需要進行配置,以使SDRAM能夠正確被定時刷新。當設備復位後,CPU及其存儲接口也被復位了。因此,從CPU被復位到CPU的存儲接口重新被配置之前的這段時間裡,SDRAM沒有被刷新。通過實際測試發現,SDRAM具有暫態保持特性,即當從CPU被復位到CPU的存儲接口重新被配置之前的這段時間在一定範圍內時,SDRAM保存的內容不會丟失。SDRAM的暫態保持特性可通過測試驗證,測試過程為先是CPU存儲接口停止對SDRAM刷新,然後在短時間內,如10ms(毫秒)內再開始刷新,接著對前後的數據進行比較,這樣測試10000次,並對10臺設備進行了測試,結果顯示每次數據都沒有丟失。
數據網絡設備的引導程序(BIOS)在重啟過程中要對SDRAM進行檢測,這樣可能破壞保存在SDRAM中的數據。本發明通過改寫BIOS程序,使BIOS對保留用作異常信息記錄的那段存儲區不做檢測。
通常,從CPU復位到存儲接口被初始化之間,必須的代碼只是CPU自身各寄存器簡單的初始化,所用的時間遠小於SDRAM的暫態保持時間,其他的代碼都是在初始化存儲接口之後實現的。如果CPU復復位到存儲接口被初始化之間代碼量過多,應僅保留必要的CPU初始化自身的代碼,其餘的移到存儲接口初始化後,以保證時間不大於SDRAM的暫態保持時間。
本發明通過在SDRAM中劃分一塊存儲空間作為系統數據信息記錄區,把那些要求系統重啟仍然不丟失的數據記錄到該塊存儲區中。改寫BIOS程序,使重啟過程中記錄區不受BIOS程序破壞,使SDRAM在系統運行期間通過記錄區記錄各種數據信息,並且系統發生不掉電重啟時數據不丟失。
本發明具有特殊的意義,如數據網絡設備中的log(記錄)信息一般要發給遠端網管系統,但當設備出現異常問題時,log信息一般無法發到網管,此時可以利用本發明方法把log信息記錄到SDRAM中,系統重啟後讀出來再發送給網管系統,這樣利於對設備問題的診斷。
本方法利用了SDRAM在不斷電的情況下,在很小一段時間沒有被刷新的情況下,仍可以保持數據不丟失這一特性,僅需軟體改動,不增加系統硬體設計複雜性和硬體成本。
具體實施例方式在數據網絡設備的SDRAM中劃分1M空間作為信息記錄區。在BIOS裡面修改程序不對該區間進行寫操作,將系統運行時的一些信息實時寫入該區中,系統發生異常重啟後,讀取該塊數據區的信息並進行分析或者發送給網管,及時作出診斷,保維護系統的正常連續運行。
權利要求
1.一種保持同步動態隨機存取存儲器存儲信息的方法,其步驟包括1)在SDRAM中劃分一塊存儲空間作為信息記錄區;2)將需要保持的信息存儲於上述信息記錄區;3)改寫系統BIOS程序的相應程序段,使其不對上述信息記錄區進行寫操作;4)控制CPU被復位到CPU的存儲接口重新被配置之間需要運行的代碼數量,使該段運行時間不大於SDRAM的暫態保持時間。
2.如權利要求1所述的保持同步動態隨機存取存儲器存儲信息的方法,其特徵在於在CPU被復位到CPU的存儲接口重新被配置之間只運行CPU初始化代碼,將其他代碼設定在存儲接口初始化後運行。
3.如權利要求1所述的保持同步動態隨機存取存儲器存儲信息的方法,其特徵在於所述需要保持的信息為系統數據信息。
4.如權利要求1所述的保持同步動態隨機存取存儲器存儲信息的方法,其特徵在於所述SDRAM的暫態保持時間不大於10毫秒。
全文摘要
本發明涉及一種數據網絡設備中同步動態隨機存取存儲器(SDRAM)所存儲信息的保持方法。在SDRAM中劃分一塊存儲空間作為信息記錄區;將需要保持的信息存儲於上述信息記錄區;改寫BIOS的相應程序段,使其不對上述信息記錄區進行寫操作;控制在CPU被復位到CPU的存儲接口重新被配置之間運行的代碼量,使代碼運行時間不大於SDRAM的暫態保持時間。本發明利用SDRAM在不斷電的情況下,在很小一段時間沒有被刷新的情況下,仍可以保持數據不丟失這一暫態保持特性,僅需軟體改動,不增加系統硬體設計複雜性和硬體成本,就可使SDRAM在系統重啟時仍能保持有用的系統信息。可廣泛應用於網絡通信技術領域。
文檔編號G06F12/16GK1479209SQ03146159
公開日2004年3月3日 申請日期2003年7月25日 優先權日2003年7月25日
發明者任成珺, 楊啟軍, 任成 申請人:北京港灣網絡有限公司