999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于冗余編碼系統(tǒng)的循環(huán)冗余校驗方法

2019-08-21 02:22:28蔣建金傅林泰
城市軌道交通研究 2019年8期
關鍵詞:故障系統(tǒng)

夏 偉 蔣建金 傅林泰 張 磊

(卡斯柯信號有限公司,200071,上海//第一作者,工程師)

列車自動控制(ATC)系統(tǒng)是由列車自動保護(ATP)系統(tǒng)、列車自動監(jiān)控(ATS)系統(tǒng)、列車自動運行(ATO)系統(tǒng)和計算機聯(lián)鎖系統(tǒng)組成[1],對列車運行速度、運行間隔和運行方向等進行控制,保證列車安全、高效運行。這些系統(tǒng)大多在設計時需要采用安全冗余編碼技術來提高系統(tǒng)的安全性,使系統(tǒng)達到SIL4安全完整性等級。

循環(huán)冗余校驗(CRC)是通信領域常用的一種校驗碼,用于檢測數(shù)據(jù)在傳輸過程中是否發(fā)生了被篡改的錯誤。一般的方法是通信雙方定義好計算多項式和CRC的計算方法(包括寬度、起始值、結(jié)果異或值、輸入輸出數(shù)據(jù)反轉(zhuǎn)等),發(fā)送方在對數(shù)據(jù)計算后將得出的CRC值附在消息幀后面一起發(fā)送;接收方收到后對數(shù)據(jù)進行同樣的計算,并將結(jié)果與原始的CRC進行比較,來校驗數(shù)據(jù)的正確性與完整性。

當冗余編碼的列車自動控制系統(tǒng)與其它類型冗余編碼或非冗余編碼系統(tǒng)通信時,需要采用CRC來保證傳輸數(shù)據(jù)的完整性,且只需傳輸高位數(shù)據(jù),低位冗余碼不參與傳輸。當列車自動控制系統(tǒng)無故障時計算出的冗余碼CRC與標準CRC結(jié)果完全一致,外界系統(tǒng)可校驗通過;當列車自動控制系統(tǒng)存在故障時,計算出的冗余碼CRC需要包含故障信息且該故障能被外界檢測出而拒絕接收。現(xiàn)有的技術在發(fā)送消息時,僅對高位數(shù)據(jù)進行CRC計算,那么會導致外界系統(tǒng)無法檢測到低位數(shù)據(jù)中可能存在的隨機性失效或故障;收到外界消息時,如果只是根據(jù)高位數(shù)據(jù)直接計算出低位冗余碼,那么當CRC校驗過程失效時,故障信息將不體現(xiàn)在低位冗余碼中而無法被當前系統(tǒng)檢測。為此,提出了一種安全性高、錯誤可檢測率高、基于冗余編碼的CRC校驗方法。

1 冗余編碼技術

冗余編碼技術雖然種類多樣,但是編碼形式、安全原理大致相同。每個變量都是由高位與低位組成,高位為數(shù)據(jù)的信息位,低位為數(shù)據(jù)的校驗位,其中低位是由高位、簽名、時間戳等信息通過預定義的公式計算得出,因此每個變量的高低位之間存在確定的對應關系。系統(tǒng)在運行的每個周期都會對關鍵變量的高位、低位正確性進行校驗,用于判斷是否存在內(nèi)存錯誤、隨機性失效等故障。本文采用AN碼、分離碼相結(jié)合的編碼方式[2-3]。對于簡單變量x,設計其編碼后的形式為:

X=Ax+Bx+DT

式中:

A——編碼時選擇的大素數(shù);

Bx——編碼時為變量x分配的大素數(shù);

DT——時間戳。

在實際編碼中,將長度為k個字節(jié)(k=1,2,3,4)的變量分成了高k位和低k位,高k位為數(shù)值域,存放數(shù)據(jù)的原始值,低k位為校驗域。

按照這種編碼方法,對每個操作數(shù)分配一個固定的簽名,可以檢測操作數(shù)尋址簽名錯誤和操作符錯誤;時間戳可以檢測循環(huán)變量值沒有被更新的錯誤,或者循環(huán)變量值失效使用上周期變量值的錯誤。

2 CRC技術

CRC校驗技術是一種十分有效的錯誤檢測技術,能檢驗一位錯、雙位錯、所有的奇數(shù)錯、所有長度小于或等于所用的生成多項式長度的錯誤。如采用16位生成多項式的CRC校驗,對17位以上的檢錯率高達99.997%[4],32位生成多項式的出錯概率比16位低10-5倍[5],因此CRC 32更適用于重要數(shù)據(jù)的傳輸,在軌道交通列車自動控制系統(tǒng)中得到廣泛應用。文獻[6-8]中對查表法CRC校驗的原理做了詳細闡述。

3 基于冗余編碼的CRC校驗方法

針對現(xiàn)有技術無法實現(xiàn)對列車信號控制系統(tǒng)中冗余碼進行CRC校驗以及無法利用CRC校驗碼與外界冗余/非冗余編碼系統(tǒng)進行通信的問題,提出一種基于冗余編碼系統(tǒng)的CRC校驗方法:

1)對發(fā)送消息進行編碼。通過將冗余碼校驗信息融合到CRC校驗計算過程中,在無故障的情況下得出的CRC校驗碼與標準CRC完全一致,保證了正常的通信功能;在列車信號控制系統(tǒng)發(fā)生故障的情況下能夠?qū)㈠e誤信息反饋到編碼CRC校驗碼中,外界冗余/非冗余系統(tǒng)可校驗出故障信息。

2)收到外界消息,根據(jù)消息中的CRC校驗碼和高位數(shù)據(jù)對該消息進行解碼校驗,校驗結(jié)果加入最終生成的低位冗余碼,保證了傳輸過程中任何故障可以被編碼系統(tǒng)及時檢測出。

該方法實現(xiàn)步驟包括離線數(shù)據(jù)準備模塊、編碼模塊和解碼模塊三個部分。

3.1 離線數(shù)據(jù)準備模塊

離線配置工具輸入的文件有msgType.xml(定義所有消息的格式,每條消息中包含的具體變量,每個變量的長度)和signature.txt(包含所有變量的簽名)。

離線配置工具需要根據(jù)輸入文件計算每條消息中每個變量簽名數(shù)據(jù)的補償值。由于在計算CRC時需要同時進行低位冗余碼的計算,因此需要根據(jù)具體CRC的多項式和計算方法,計算每個變量的簽名補償值表,用于在CRC計算時抵消低位冗余碼信息。簽名補償值的計算公式如下:

Smod=(S∧M)×Pk-1

式中:

S——原始簽名;

Smod——簽名補償值;

M——CRC 32多項式對應的掩碼;

P——多項式轉(zhuǎn)換成的32位矩陣;

k——變量長度,支持1-4 B。

簽名計算完成需要進行校驗,校驗的方法是進行反向計算,逆推原簽名。如果校驗失敗,則終止輸出;校驗成功后輸出的bin文件中應包含:每條消息的格式,每條消息中每個變量對應的簽名補償值,臨時接收簽名TempSig_rcv(跟Sig_nature保持常量差Constant_1)。離線配置工具處理如圖1所示。

圖1 離線配置工具處理流程圖

3.2 編碼模塊

冗余編碼系統(tǒng)中所有待發(fā)送消息的變量均采用編碼技術,包含高位和低位數(shù)據(jù)。由于冗余碼無法直接轉(zhuǎn)換為CRC,在編碼時(即計算CRC的過程),會同時對每個變量的高位、低位進行校驗,如果發(fā)現(xiàn)冗余碼故障或在編碼過程中發(fā)生隨機性失效,那么該錯誤信息將會被融合于CRC計算過程,得到錯誤的CRC校驗碼,外部系統(tǒng)可以檢測出該故障信息。處理流程如圖2所示。

圖2 發(fā)送消息編碼處理流程圖

具體步驟為:

1) 從配置bin文件中獲取當前變量的長度。

2) 查表法依次計算當前變量的每個字節(jié)的CRC值。

3) 查找簽名補償值表,計算當前變量當前字節(jié)簽名對應的補償值。

4) 根據(jù)當前變量的長度判斷當前變量CRC計算是否結(jié)束,如未結(jié)束則執(zhí)行步驟2),如結(jié)束則根據(jù)當前變量的整體簽名補償值、高位數(shù)據(jù)、低位冗余碼、時間戳(TimeStamp)進行校驗。當數(shù)據(jù)正確時校驗結(jié)果應為0;如果校驗結(jié)果非0,則表示存在故障。將每個變量的校驗結(jié)果信息異或到編碼CRC值。

5) 判斷當前消息所有變量是否都已計算結(jié)束,如未結(jié)束執(zhí)行步驟1),如已結(jié)束則返回編碼CRC值作為最終結(jié)果。

其中步驟3)中一個變量的某個字節(jié)CRC補償值的計算公式為:

Scmp[x]=(T[xk]-1×2k1×8)MOD(A)

式中:

xk——該字節(jié)的數(shù)值,范圍為[0, 255];

T——查表法CRC32計算表;

k1——變量的第幾個字節(jié),范圍為[0, 3]。

3.3 解碼模擬

由于接收到的消息只有高位數(shù)據(jù)和CRC,需要根據(jù)高位數(shù)據(jù)和CRC生成有效的冗余碼。如果數(shù)據(jù)在傳輸過程被篡改或解碼過程發(fā)生隨機性失效,將導致校驗結(jié)果異常,生成的冗余碼包含錯誤信息,該錯誤會被系統(tǒng)檢出。在解碼時,先對消息進行臨時編碼,將臨時編碼 CRC與接收CRC進行比較,并將校驗結(jié)果融合到最終冗余碼的計算過程。具體為:

1) 根據(jù)配置信息中的TempSig_rcv和收到消息中的高位數(shù)據(jù)計算出每個變量的臨時冗余碼Temp_Redcode,且不包含TimeStamp信息。

2) 根據(jù)Temp_Redcode對收到的消息進行臨時編碼, 得到臨時編碼CRC。

3) 將步驟2)中的臨時編碼CRC與接收CRC進行校驗比較,并去除步驟1)中常量差Constant_1。如果兩者相等,則校驗通過,校驗結(jié)果為0;如果兩者不等,則校驗不通過,校驗結(jié)果非0。

4) 如果步驟3)校驗通過,修改步驟1)中每個變量的Temp_Redcode,異或3.2中步驟3)校驗結(jié)果,并加上TimeStamp,作為最終冗余碼結(jié)果輸出。

5) 如果步驟3)校驗不通過,返回錯誤,不輸出冗余碼;如果發(fā)生隨機性失效,進入步驟4),輸出的冗余碼會攜帶步驟3)中的錯誤校驗結(jié)果,當前系統(tǒng)會檢測出該故障,處理流程如圖3所示。

圖3 接收消息解碼處理流程圖

4 結(jié)語

采用基于冗余編碼系統(tǒng)的CRC校驗方法,可實現(xiàn)冗余編碼系統(tǒng)與非冗余編碼系統(tǒng)的正常通信,提高系統(tǒng)的通信兼容性,并且有效保證了對傳輸過程中的錯誤信息和系統(tǒng)的隨機性失效的檢出率。目前該方法已成功應用于ATP、ATS等多個安全產(chǎn)品中。

猜你喜歡
故障系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
故障一點通
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
奔馳R320車ABS、ESP故障燈異常點亮
故障一點通
故障一點通
主站蜘蛛池模板: 在线观看精品国产入口| 在线观看亚洲天堂| 女人天堂av免费| 日本午夜在线视频| 亚洲欧美日韩动漫| 色综合色国产热无码一| 欧美一级色视频| 2020国产在线视精品在| 久久人午夜亚洲精品无码区| 国产欧美日韩精品综合在线| 天天躁日日躁狠狠躁中文字幕| 波多野结衣无码视频在线观看| 国产夜色视频| 精品无码人妻一区二区| 免费国产黄线在线观看| 欧美色亚洲| 久久这里只精品国产99热8| 内射人妻无套中出无码| 久久五月视频| 中字无码av在线电影| 国产第一页免费浮力影院| 成年人久久黄色网站| 亚洲无码精彩视频在线观看| 91探花国产综合在线精品| 久夜色精品国产噜噜| 国产一级α片| 在线一级毛片| 国产乱人伦偷精品视频AAA| 凹凸精品免费精品视频| 免费在线不卡视频| 久久精品最新免费国产成人| 亚洲国产精品人久久电影| 亚洲国产天堂久久综合| 欧美黄色网站在线看| 久久婷婷国产综合尤物精品| 日韩天堂网| 69av免费视频| 亚洲第一极品精品无码| 亚洲日韩AV无码精品| 五月婷婷综合网| 无码综合天天久久综合网| 2024av在线无码中文最新| 国产精品漂亮美女在线观看| 免费在线播放毛片| 精品日韩亚洲欧美高清a| 在线无码av一区二区三区| 日韩精品久久久久久久电影蜜臀| 一本二本三本不卡无码| 成人亚洲视频| 久久9966精品国产免费| 一级毛片在线播放免费观看 | 久久无码av一区二区三区| 高清无码不卡视频| 国产精品大尺度尺度视频| 国产精品毛片在线直播完整版| 亚洲中文字幕久久精品无码一区| 久久国产亚洲欧美日韩精品| 在线观看的黄网| 国产成人精品高清在线| 啪啪免费视频一区二区| 911亚洲精品| 亚洲一区毛片| 久久午夜影院| 亚洲人妖在线| 亚洲一区毛片| 真实国产精品vr专区| 国产美女无遮挡免费视频网站 | 国产高清色视频免费看的网址| 亚洲综合一区国产精品| 99精品影院| 久久婷婷六月| 老色鬼欧美精品| 好吊妞欧美视频免费| 国产成本人片免费a∨短片| AV不卡国产在线观看| 亚洲午夜天堂| 欧美一级黄色影院| 91热爆在线| 欧美人在线一区二区三区| 婷婷午夜影院| 亚洲第一区欧美国产综合| 久久亚洲国产最新网站|