国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于冗余編碼的變量簽名唯一性安全保證方法

2015-12-30 03:32:16汪明新孫軍峰
鐵道通信信號(hào) 2015年9期
關(guān)鍵詞:語(yǔ)句運(yùn)算分配

曹 杰 汪明新 孫軍峰

鐵路信號(hào)行業(yè)直接涉及列車的安全運(yùn)行和人民群眾的生命財(cái)產(chǎn)安全,其安全產(chǎn)品必須滿足RAMS(可靠性、可用性、可維護(hù)性、安全性)的要求。尤其對(duì)于車載ATP系統(tǒng),必須達(dá)到SIL4級(jí)的系統(tǒng)安全完善度等級(jí)。系統(tǒng)要求基于安全冗余編碼技術(shù),獨(dú)立于軟件和硬件環(huán)境,可以防護(hù)硬件或內(nèi)存錯(cuò)誤等引起的操作數(shù)、操作符及運(yùn)算錯(cuò)誤,能夠保證系統(tǒng)在復(fù)雜的軟件和硬件環(huán)境下達(dá)到SIL4級(jí)要求的錯(cuò)誤不可檢出率,有效提升系統(tǒng)的安全度等級(jí)。目前,多數(shù)ATP系統(tǒng)中都使用冗余代碼來(lái)保證系統(tǒng)的安全性,雖然形式各異但基本原理相同,并已應(yīng)用在許多地鐵項(xiàng)目中。

要使系統(tǒng)達(dá)到SIL4標(biāo)準(zhǔn)要求的錯(cuò)誤不可檢出率,需要保證冗余代碼中所有變量在同一時(shí)刻的簽名都是唯一的。為此,提出了一種基于冗余編碼的變量簽名唯一性安全保證方法,可以確保系統(tǒng)中所有的變量簽名都是唯一的,這樣系統(tǒng)的所有單點(diǎn)故障都可以檢測(cè)出來(lái)。而對(duì)于多點(diǎn)故障 (發(fā)生多次尋址錯(cuò)誤或硬件失效等故障,這類故障發(fā)生概率非常小,一般情況下可忽略不計(jì)),系統(tǒng)的錯(cuò)誤不可檢出率也明顯降低,該方法大大降低了系統(tǒng)的錯(cuò)誤不可檢出率。

1 編碼理論

微處理器及其電路中所有影響和干擾處理器運(yùn)算的錯(cuò)誤,從處理數(shù)據(jù)層次上或者從數(shù)據(jù)的角度,可以歸為以下3種類型:①運(yùn)算錯(cuò)誤,即處理器在運(yùn)算過(guò)程中發(fā)生了錯(cuò)誤;②操作數(shù)錯(cuò)誤,即處理器在運(yùn)算時(shí),提取了錯(cuò)誤的運(yùn)算數(shù);③操作符錯(cuò)誤,即處理器使用了正確的運(yùn)算數(shù),卻混淆了運(yùn)算符。

冗余編碼算法采用了AN碼、分離碼相結(jié)合的編碼方式。對(duì)簡(jiǎn)單變量x,設(shè)計(jì)其編碼后的形式為:

其中,A為編碼時(shí)選擇的大素?cái)?shù);Bx為編碼時(shí)為變量x分配的數(shù)據(jù)簽名,取值范圍為 [1,A-1];DT為時(shí)間戳,取值范圍為 [1,A-1]。在實(shí)際編碼中,將2k位的數(shù)據(jù)分成了高k位和低k位,高k位為數(shù)值域,存放數(shù)據(jù)原始值,XH=x;低k位為校驗(yàn)域,校驗(yàn)處理器錯(cuò)誤

令rkx= (2kx)modA,2kx-(2kx)modA ,能夠被A整除,符合AN碼的格式。按照這種編碼方法,通過(guò)AN碼可以檢測(cè)算術(shù)運(yùn)算操作是否錯(cuò)誤;對(duì)每個(gè)操作數(shù)分配一個(gè)固定的簽名Bx,可以檢測(cè)操作數(shù)尋址簽名錯(cuò)誤和操作符錯(cuò)誤;時(shí)間戳DT可以檢測(cè)循環(huán)中變量的值沒(méi)有被更新的錯(cuò)誤,或者因?yàn)槭褂蒙蟼€(gè)周期變量值的錯(cuò)誤。

2 設(shè)計(jì)與實(shí)現(xiàn)

在現(xiàn)有的安全冗余編碼系統(tǒng)中,對(duì)源碼中所有的變量都會(huì)生成高位和低位,其中高位存儲(chǔ)源碼的變量值,低位存儲(chǔ)變量的校驗(yàn)信息,通過(guò)高位和低位信息可以計(jì)算出變量的簽名。所以,在系統(tǒng)每個(gè)周期運(yùn)行結(jié)束后,通過(guò)檢查變量的簽名是否正確,來(lái)判斷系統(tǒng)在運(yùn)行過(guò)程中是否出現(xiàn)尋址錯(cuò)誤、硬件失效等故障 (非系統(tǒng)本身的邏輯錯(cuò)誤)。如果變量的簽名不唯一,就會(huì)導(dǎo)致系統(tǒng)的故障可能檢測(cè)不出來(lái),也不便于系統(tǒng)安全的定量分析。

2.1 軟件功能結(jié)構(gòu)

一種基于冗余編碼的變量簽名唯一性安全保證方法,包括經(jīng)簽名產(chǎn)生模塊后依次進(jìn)入簽名分配模塊或簽名計(jì)算模塊、簽名檢查模塊,最后在簽名存儲(chǔ)模塊存儲(chǔ)簽名,其功能結(jié)構(gòu)如圖1所示。

1.簽名產(chǎn)生模塊:按照簽名生成算法產(chǎn)生足夠的簽名。

2.簽名分配與計(jì)算模塊:對(duì)待編碼的文件進(jìn)行冗余編碼,判斷待編碼的語(yǔ)句的類型,為每個(gè)變量分配或計(jì)算簽名。

3.簽名檢查模塊:對(duì)簽名分配與計(jì)算模塊得到的簽名做簽名唯一性檢查,如果該簽名與已經(jīng)分配的簽名相同,則從簽名表中重新取一個(gè)簽名分配給該變量。

4.簽名存儲(chǔ)模塊:存儲(chǔ)經(jīng)過(guò)簽名檢查模塊檢查的簽名。

圖1 軟件功能結(jié)構(gòu)示意圖

2.2 工作流程

圖2為該方法的工作流程圖,圖3為簽名產(chǎn)生模塊流程,圖4為簽名計(jì)算模塊基本運(yùn)算簽名處理流程。結(jié)合圖2~圖4對(duì)各步驟進(jìn)行詳細(xì)描述。

步驟1:按照簽名生成算法產(chǎn)生簽名,圖3是簽名產(chǎn)生模塊的具體步驟,如果產(chǎn)生的簽名個(gè)數(shù)足夠,就轉(zhuǎn)向步驟2,否則繼續(xù)執(zhí)行步驟1。例如可以設(shè)定產(chǎn)生20000個(gè)簽名。

步驟2:輸入待編碼的文件,判斷待編碼的語(yǔ)句的類型,為每個(gè)變量分配或計(jì)算簽名。

1.該語(yǔ)句為變量定義或聲明,則從步驟1生成的簽名表中分配一個(gè)簽名給該變量。

2.該語(yǔ)句屬于基本運(yùn)算,則判斷該基本運(yùn)算屬于哪種運(yùn)算,圖4描述了該過(guò)程的具體步驟。如果是加、減、乘、除運(yùn)算,或者是邏輯與、或、非運(yùn)算,或者是左移、右移運(yùn)算,都按照相應(yīng)運(yùn)算的簽名計(jì)算方式計(jì)算簽名。

圖3 簽名產(chǎn)生模塊流程圖

3.該語(yǔ)句為數(shù)組運(yùn)算。如果是數(shù)組賦值、數(shù)組取值運(yùn)算,按照相應(yīng)運(yùn)算的簽名計(jì)算方式計(jì)算簽名。

4.該語(yǔ)句為分支、循環(huán)結(jié)構(gòu),也按分支、循環(huán)結(jié)構(gòu)的簽名計(jì)算方式計(jì)算簽名。

5.該語(yǔ)句為函數(shù)調(diào)用。如果為模塊函數(shù)調(diào)用或計(jì)算函數(shù)調(diào)用,按相應(yīng)簽名計(jì)算方式計(jì)算簽名。

為變量分配或計(jì)算好簽名后,則轉(zhuǎn)向步驟3。

步驟3:對(duì)步驟2(或步驟4)得到的簽名做簽名唯一性檢查,如果該簽名與已經(jīng)分配的簽名相同,則轉(zhuǎn)向步驟4,否則轉(zhuǎn)向步驟5。

步驟4:從簽名表中重新取一個(gè)簽名分配給該變量,再轉(zhuǎn)向步驟3。

步驟5:存儲(chǔ)經(jīng)過(guò)簽名唯一性檢查的簽名,并判斷編碼是否結(jié)束,如果沒(méi)有到達(dá)待編碼文件的結(jié)尾,則轉(zhuǎn)向步驟2,否則轉(zhuǎn)向步驟6。

步驟6:結(jié)束。

3 分析

按照隨機(jī)編碼思想,在一個(gè)消息空間中有N個(gè)消息;其中有M個(gè)消息是合法消息,那么N個(gè)消息中某個(gè)消息發(fā)生了錯(cuò)誤,變成合法消息 (M中的一個(gè))的概率P為:

P=M/N

前提:編碼碼字M在消息空間N中分布足夠隨機(jī)。

采用基于冗余編碼的變量簽名唯一性安全保證方法處理后,系統(tǒng)的有效內(nèi)存空間中所有變量簽名都是唯一的,即對(duì)于每個(gè)變量該內(nèi)存空間中只存在一個(gè)合法的消息,因此,如果一個(gè)合法變量發(fā)生錯(cuò)誤,該變量只可能變成該內(nèi)存空間中的一個(gè)非法變量,從而利用冗余編碼算法簽名錯(cuò)誤檢查機(jī)制檢測(cè)出該錯(cuò)誤。

與現(xiàn)有技術(shù)相比,該方法保證了所有變量的簽名都是唯一的,所有的變量都被唯一標(biāo)識(shí),系統(tǒng)的所有單點(diǎn)故障都能檢測(cè)出來(lái);而系統(tǒng)的多點(diǎn)故障,只要基于內(nèi)存空間中的所有消息 (對(duì)應(yīng)系統(tǒng)中的簽名)的分布足夠隨機(jī) (從某種程度上來(lái)說(shuō)是一種偽隨機(jī)),就可以通過(guò)對(duì)系統(tǒng)的安全進(jìn)行定量分析,也證明該方法明顯降低了系統(tǒng)的錯(cuò)誤不可檢出率。

圖4 簽名計(jì)算模塊基本運(yùn)算簽名處理流程圖

[1] 姜堅(jiān)華.loo2D模型分析及其在地鐵列車自動(dòng)防護(hù)系統(tǒng)中的應(yīng)用[J].城市軌道交通研究,2011,6:25-28.

[2] IEC 61508 2010Functional Safety of electrical/electronic/programmable electronic safety-related system[S].

[3] Forin P.Vital Coded Microprocessor Principle and Application for Various Transit Systems[C].1989 IFAC CCCT Symposium:79-84.

猜你喜歡
語(yǔ)句運(yùn)算分配
重視運(yùn)算與推理,解決數(shù)列求和題
重點(diǎn):語(yǔ)句銜接
有趣的運(yùn)算
應(yīng)答器THR和TFFR分配及SIL等級(jí)探討
遺產(chǎn)的分配
一種分配十分不均的財(cái)富
績(jī)效考核分配的實(shí)踐與思考
精彩語(yǔ)句
“整式的乘法與因式分解”知識(shí)歸納
撥云去“誤”學(xué)乘除運(yùn)算
千阳县| 阳春市| 施秉县| 壤塘县| 新余市| 泾源县| 托克托县| 阜康市| 六安市| 县级市| 南汇区| 贵州省| 伊通| 汪清县| 焦作市| 香格里拉县| 辽源市| 喀喇沁旗| 石首市| 荆州市| 兴化市| 清原| 广汉市| 龙口市| 彰化市| 龙岩市| 安康市| 如皋市| 瓮安县| 榆社县| 溆浦县| 津南区| 平江县| 阜新市| 江永县| 曲松县| 和田县| 尖扎县| 油尖旺区| 青龙| 正阳县|