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