通過校核字來檢查ram的方法
【專利摘要】本發(fā)明公開了一種通過校核字來檢查RAM的方法,包括以下步驟:計算并分配好每個檢查對象的校驗字,并將被檢查的對象與校核字相關(guān)聯(lián);判斷RAM檢查的校核字是否正確,進而判斷RAM地址或存儲單元是否正常。本發(fā)明可以檢查是否所有用于安全數(shù)據(jù)存儲的RAM區(qū)地址正確無誤,存儲單元能夠正常讀寫訪問。
【專利說明】通過校核字來檢查RAM的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于軟件算法領(lǐng)域,用于檢查安全關(guān)鍵系統(tǒng)中RAM的狀況。
【背景技術(shù)】
[0002]在工業(yè)控制系統(tǒng)和安全信號系統(tǒng)(應(yīng)用于航空電子、鐵路信號、核電等行業(yè))中,所有用于安全數(shù)據(jù)存儲的RAM區(qū)必須保證其地址正確無誤,存儲單元能夠正常讀寫訪問。當(dāng)校核字檢查錯誤時,要啟動故障管理機制,及時采取安全措施以避免更為嚴(yán)重的事故發(fā)生。
【發(fā)明內(nèi)容】
[0003]本發(fā)明所要解決的技術(shù)問題是提供一種通過校核字來檢查RAM的方法,它可以檢查是否所有用于安全數(shù)據(jù)存儲的RAM區(qū)地址正確無誤,存儲單元能夠正常讀寫訪問。
[0004]為了解決以上技術(shù)問題,本發(fā)明提供了一種通過校核字來檢查RAM的方法,包括以下步驟:計算并分配好每個檢查對象的校驗字,并將被檢查的對象與校核字相關(guān)聯(lián);判斷RAM檢查的校核字是否正確,進而判斷RAM地址或存儲單元是否正常。
[0005]本發(fā)明的有益效果在于:可以檢查是否所有用于安全數(shù)據(jù)存儲的RAM區(qū)地址正確無誤,存儲單元能夠正常讀寫訪問。
[0006]對于每一個獨立的檢查對象,校核字是唯一分配的。
[0007]所有校核字是由α算法正運算離線生成并且離線分配的。
[0008]所有校核字的預(yù)處理值是由β算法正運算依據(jù)已分配的校核字和被檢查的對象離線生成的。
[0009]所有校核字的在線運算過程是與其離線生成過程和在線檢查過程均無關(guān),但與校核字的預(yù)處理值有關(guān),屬于β算法逆運算的范疇。
[0010]所有校核字的離線生成過程和在線檢查過程是與校核字分配的序號相關(guān)的,分別屬于α算法正運算和逆運算的范疇。
[0011]具體還包括以下步驟:
[0012]離線預(yù)運算階段,首先采用α算法生成用于RAM檢查的校核字,然后根據(jù)被檢查RAM區(qū)的地址,刷新常量校驗和,以及預(yù)分配的校核字,通過β算法算出該校核字對應(yīng)的預(yù)處理值,該階段的運算應(yīng)該離線完成;
[0013]在線運算階段,首先動態(tài)刷新RAM區(qū),計算刷新常量校驗和,然后根據(jù)被檢查RAM區(qū)的地址,刷新常量校驗和,以及離線計算好的預(yù)處理值,通過β算法的逆運算算出該RAM區(qū)校核字;
[0014]在線檢查階段,獲得所有在線計算出的RAM校核字,然后根據(jù)α算法的逆運算檢查這些校核字的正確性,從而確定對應(yīng)的RAM區(qū)是否存在故障。
【專利附圖】
【附圖說明】
[0015]下面結(jié)合附圖和【具體實施方式】對本發(fā)明作進一步詳細說明。[0016]圖1是本發(fā)明所述通過校核字來檢查RAM的總體方法流程圖。
【具體實施方式】
[0017]本發(fā)明提供一種通過校核字來檢查RAM的方法,該算法能夠應(yīng)用于包括但并不局限于安全信號系統(tǒng)、工業(yè)控制系統(tǒng)等領(lǐng)域。
[0018]本發(fā)明事先計算并分配好每個檢查對象的校驗字,并將被檢查的對象(比如地址和存儲單元)與校核字相關(guān)聯(lián),然后在安全操作(或安全輸出)前判斷RAM檢查的校核字是否正確,進而判斷RAM地址或存儲單元是否正常。
[0019]對于每一個獨立的檢查對象(如每一塊獨立的內(nèi)存區(qū)),校核字是唯一分配的;
[0020]所有校核字是由α算法正運算離線生成并且離線分配的;
[0021]所有校核字的預(yù)處理值是由β算法正運算依據(jù)已分配的校核字和被檢查的對象離線生成的;
[0022]所有校核字的在線運算過程是與其離線生成過程和在線檢查過程均無關(guān),但與校核字的預(yù)處理值有關(guān),屬于β算法逆運算的范疇;
[0023]所有校核字的離線生成過程和在線檢查過程是與校核字分配的序號相關(guān)的,分別屬于α算法正運算和逆運算的范疇;
[0024]根據(jù)圖1所示,該檢查方法可以分為以下三個階段。
[0025]I)離線預(yù)運算階段,首先采用α算法生成用于RAM檢查的校核字,然后根據(jù)被檢查RAM區(qū)的地址,刷新常量校驗和,以及預(yù)分配的校核字,通過β算法算出該校核字對應(yīng)的預(yù)處理值,該階段的運算應(yīng)該離線完成;
[0026]2)在線運算階段,首先動態(tài)刷新RAM區(qū),計算刷新常量校驗和,然后根據(jù)被檢查RAM區(qū)的地址,刷新常量校驗和,以及離線計算好的預(yù)處理值,通過β算法的逆運算算出該RAM區(qū)校核字。
[0027]3)在線檢查階段,獲得所有在線計算出的RAM校核字,然后根據(jù)α算法的逆運算檢查這些校核字的正確性,從而確定對應(yīng)的RAM區(qū)是否存在故障。
[0028]以上三個階段如果能夠從硬件上獨立,比如每個階段都采用不同的CPU來完成,則可以達到更充分的檢查目的。
[0029]相關(guān)算法說明如下:
[0030]α算法及其逆運算可表示為:
[0031]Checkffordi= a (Seed, i);
[0032]Seed= a (Checkffordi, i);
[0033]β算法及其逆運算可表示為:
[0034]PreconditionValuei= β (Checkffordi, Addr, Checksum);
[0035]Checkffordi= β (PreconditionValuei, Addr, Checksum);
[0036]α算法和β算法不需要特定的算法,但這兩個算法本身應(yīng)該是相異的。為了保證校核字生成和校驗過程的正確性,α算法推薦采用隨機數(shù)(Seed)按照校核字的分配序號進行循環(huán)移位的方式來生成校核字,然后采用其逆運算進行校驗;β算法推薦采用多項式除法(如CRC算法)根據(jù)被檢查項和預(yù)分配的校核字來計算預(yù)處理值,然后采用其逆運算計算校核字。其它非推薦算法也可以實現(xiàn)同樣的功能。[0037]本發(fā)明并不限于上文討論的實施方式。以上對【具體實施方式】的描述旨在于為了描述和說明本發(fā)明涉及的技術(shù)方案。基于本發(fā)明啟示的顯而易見的變換或替代也應(yīng)當(dāng)被認為落入本發(fā)明的保護范圍。以上的【具體實施方式】用來揭示本發(fā)明的最佳實施方法,以使得本領(lǐng)域的普通技術(shù)人員能夠應(yīng)用本發(fā)明的多種實施方式以及多種替代方式來達到本發(fā)明的目的。
【權(quán)利要求】
1.一種通過校核字來檢查RAM的方法,其特征在于,包括以下步驟: 計算并分配好每個檢查對象的校驗字,并將被檢查的對象與校核字相關(guān)聯(lián); 判斷RAM檢查的校核字是否正確,進而判斷RAM地址或存儲單元是否正常。
2.如權(quán)利要求1所述的通過校核字來檢查RAM的方法,其特征在于,對于每一個獨立的檢查對象,校核字是唯一分配的。
3.如權(quán)利要求2所述的通過校核字來檢查RAM的方法,其特征在于,所有校核字是由α算法正運算離線生成并且離線分配的。
4.如權(quán)利要求3所述的通過校核字來檢查RAM的方法,其特征在于,所有校核字的預(yù)處理值是由β算法正運算依據(jù)已分配的校核字和被檢查的對象離線生成的。
5.如權(quán)利要求4所述的通過校核字來檢查RAM的方法,其特征在于,所有校核字的在線運算過程是與其離線生成過程和在線檢查過程均無關(guān),但與校核字的預(yù)處理值有關(guān),屬于β算法逆運算的范疇。
6.如權(quán)利要求5所述的通過校核字來檢查RAM的方法,其特征在于,所有校核字的離線生成過程和在線檢查過程是與校核字分配的序號相關(guān)的,分別屬于α算法正運算和逆運算的范疇。
7.如權(quán)利要求6所述的通過校核字來檢查RAM的方法,其特征在于,包括以下步驟: 離線預(yù)運算階段,首先采用α算法生成用于RAM檢查的校核字,然后根據(jù)被檢查RAM區(qū)的地址,刷新常量校驗和,以及預(yù)分配的校核字,通過β算法算出該校核字對應(yīng)的預(yù)處理值,該階段的運算應(yīng)該離線完成; 在線運算階段,首先動態(tài)刷新RAM區(qū),計算刷新常量校驗和,然后根據(jù)被檢查RAM區(qū)的地址,刷新常量校驗和,以及離線計算好的預(yù)處理值,通過β算法的逆運算算出該RAM區(qū)校核字; 在線檢查階段,獲得所有在線計算出的RAM校核字,然后根據(jù)α算法的逆運算檢查這些校核字的正確性,從而確定對應(yīng)的RAM區(qū)是否存在故障。
【文檔編號】G06F11/10GK103885852SQ201310064786
【公開日】2014年6月25日 申請日期:2013年3月1日 優(yōu)先權(quán)日:2013年3月1日
【發(fā)明者】遲寶全, 吳昊 申請人:上海富欣智能交通控制有限公司