前言:想要寫出一篇引人入勝的文章?我們特意為您整理了安全計(jì)算機(jī)雙口RAM數(shù)據(jù)通信論文范文,希望能給你帶來靈感和參考,敬請(qǐng)閱讀。
1安全數(shù)據(jù)交互方式
為避免MPU和HCU同時(shí)對(duì)雙口RAM的同一個(gè)內(nèi)存單元進(jìn)行訪問,本設(shè)計(jì)沒有采用雙口RAM的中斷或者信號(hào)量等機(jī)制,而是采用一種基于角色的環(huán)形緩沖收發(fā)機(jī)制,將雙口RAM劃分為兩個(gè)獨(dú)立環(huán)形緩沖區(qū):發(fā)送環(huán)形緩沖區(qū)和接收環(huán)形緩沖區(qū)。發(fā)送環(huán)形緩沖區(qū)負(fù)責(zé)將MPU數(shù)據(jù)傳遞給HCU,最終發(fā)送給外部設(shè)備;HCU從外部設(shè)備接收到數(shù)據(jù),放到接收環(huán)形緩沖區(qū),并傳遞給MPU。
1.1數(shù)據(jù)處理
三取二安全計(jì)算機(jī)邏輯運(yùn)算模塊的運(yùn)行周期為600ms,該模塊按照周期進(jìn)行數(shù)據(jù)接收、數(shù)據(jù)處理、數(shù)據(jù)輸出。在第n個(gè)周期,MPU上的控制邏輯運(yùn)算模塊從雙口ram接收到數(shù)據(jù)后,放到邏輯接收緩沖區(qū);從邏輯接收緩沖區(qū)取出n-1個(gè)周期的數(shù)據(jù)并進(jìn)行邏輯處理;將n-2個(gè)周期的邏輯處理結(jié)果,從邏輯發(fā)送緩沖區(qū)中取出,放到雙口RAM中。MPU上的控制邏輯運(yùn)算模塊對(duì)安全數(shù)據(jù)進(jìn)行邏輯處理的時(shí)間不超過300ms,如果超過,就會(huì)影響MPU接收或者發(fā)送數(shù)據(jù)。同樣,MPU上的控制邏輯運(yùn)算模塊接收、發(fā)送數(shù)據(jù)超過300ms,也會(huì)影響邏輯處理功能。在接收發(fā)送處理階段,300ms中的280ms被分為20個(gè)發(fā)送接收子周期,每一個(gè)子周期的時(shí)間為14ms。在HCU中,也是按照同樣的運(yùn)行節(jié)拍從雙口RAM中寫入或讀出數(shù)據(jù)。MPU與HCU之間交互的數(shù)據(jù),按照預(yù)先定義的雙口RAM交換數(shù)據(jù)幀進(jìn)行。數(shù)據(jù)幀定義略———編者注。
1.2數(shù)據(jù)接收
HCU通過網(wǎng)絡(luò)接口接收到數(shù)據(jù)后,對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,按照交換數(shù)據(jù)幀進(jìn)行數(shù)據(jù)組包。根據(jù)當(dāng)前周期號(hào)設(shè)置“cycle”,同時(shí)確定該數(shù)據(jù)包需要被放到D、E、F三個(gè)區(qū)塊中寫入?yún)^(qū)塊角色標(biāo)志“role”,將“flag”設(shè)置為1(即為輸入),并交換數(shù)據(jù)幀的其他字段,按照源網(wǎng)絡(luò)數(shù)據(jù)包中的信息進(jìn)行設(shè)置。HCU根據(jù)當(dāng)前周期號(hào)確定在接收環(huán)形緩沖區(qū)中的寫入?yún)^(qū)塊后,將組包之后的交換數(shù)據(jù)幀放到寫入?yún)^(qū)塊中。MPU根據(jù)當(dāng)前周期號(hào)確定在接收環(huán)形緩沖區(qū)中的讀出區(qū)塊后,從讀出區(qū)塊中獲取交換數(shù)據(jù)幀,然后對(duì)數(shù)據(jù)幀進(jìn)行解包,并通過“cycle”、“role”、“flag”、“safety”、“crc”等信息來驗(yàn)證數(shù)據(jù)幀的唯一性和正確性,正常的數(shù)據(jù)幀被放到邏輯接收緩沖區(qū),異常的數(shù)據(jù)幀被丟棄。同時(shí)MPU根據(jù)當(dāng)前周期號(hào),確定在接收環(huán)形緩沖區(qū)中的測試區(qū)塊,利用內(nèi)存檢測算法對(duì)測試區(qū)塊進(jìn)行雙口RAM內(nèi)存區(qū)塊檢測。
1.3數(shù)據(jù)發(fā)送
在當(dāng)前周期的600ms內(nèi),MPU進(jìn)行邏輯運(yùn)算處理在300ms內(nèi)完成后,MPU從邏輯發(fā)送緩沖區(qū)中讀取上個(gè)周期的邏輯處理結(jié)果數(shù)據(jù),并對(duì)結(jié)果數(shù)據(jù)進(jìn)行預(yù)處理,按照交換數(shù)據(jù)幀進(jìn)行數(shù)據(jù)組包。根據(jù)當(dāng)前周期號(hào)設(shè)置“cycle”,同時(shí)確定該數(shù)據(jù)包需要被放到A、B、C三個(gè)區(qū)塊中寫入?yún)^(qū)塊角色標(biāo)志“role”,將“flag”設(shè)置為1(即為輸入),并交換數(shù)據(jù)幀的其他字段,按照源網(wǎng)絡(luò)數(shù)據(jù)包中的信息進(jìn)行設(shè)置。MPU根據(jù)當(dāng)前周期號(hào),確定在發(fā)送環(huán)形緩沖區(qū)中的寫入?yún)^(qū)塊后,將組包之后的交換數(shù)據(jù)幀放到寫入?yún)^(qū)塊中。HCU根據(jù)當(dāng)前周期號(hào),確定在接收環(huán)形緩沖區(qū)中的讀出區(qū)塊后,從讀出區(qū)塊中獲取交換數(shù)據(jù)幀,然后對(duì)數(shù)據(jù)幀進(jìn)行解包,并通過“cycle”、“role”、“flag”、“safety”、“crc”等信息來驗(yàn)證數(shù)據(jù)幀的唯一性和正確性,驗(yàn)證數(shù)據(jù)幀的正確性。異常的數(shù)據(jù)幀被丟棄,正常的數(shù)據(jù)幀按照網(wǎng)絡(luò)數(shù)據(jù)幀進(jìn)行組包,并通過網(wǎng)絡(luò)發(fā)送給軌旁設(shè)備或者車載控制器。同時(shí)HCU根據(jù)當(dāng)前周期號(hào),確定在發(fā)送環(huán)形緩沖區(qū)中的測試區(qū)塊,利用內(nèi)存檢測算法對(duì)測試區(qū)塊進(jìn)行雙口RAM內(nèi)存區(qū)塊檢測。
1.4區(qū)塊角色輪換
雙口RAM的發(fā)送與接收環(huán)形緩沖區(qū)的3個(gè)區(qū)塊,在任意一個(gè)周期都只能處于讀出、寫入、測試3種中的某一種角色,而且這3個(gè)角色進(jìn)行周期輪換,區(qū)塊角色輪換表略———編者注。MPU與HCU通過雙口RAM區(qū)塊角色進(jìn)行數(shù)據(jù)交互的步驟略———編者注。MPU與HCU通過相同的外部時(shí)鐘中斷來驅(qū)動(dòng)數(shù)據(jù)處理軟件模塊的運(yùn)行,MPU與HCU在對(duì)雙口RAM進(jìn)行訪問時(shí)可以做到同步、流水線作業(yè)。在同一個(gè)處理周期內(nèi),發(fā)送環(huán)形緩沖區(qū)或者接收環(huán)形緩沖區(qū)中任何一個(gè)區(qū)塊都有明確固定的角色,MPU板和HCU板不會(huì)同時(shí)訪問操作相同區(qū)塊,只有一個(gè)板卡對(duì)特定區(qū)塊進(jìn)行訪問,從而解決了雙口RAM的訪問沖突問題,不需要另外采取硬件仲裁、軟件仲裁或者信號(hào)量交互等手段。
1.5雙口RAM檢測
應(yīng)用在三取二安全計(jì)算機(jī)中雙口RAM可能存在一些功能性缺陷。無論門級(jí)電子元件的制造缺陷,還是板卡電路級(jí)的設(shè)計(jì)錯(cuò)誤,都可能導(dǎo)致雙口RAM的存儲(chǔ)功能性故障,從而降低其功能完整性和可靠性。雙口RAM存儲(chǔ)單元具有多種類型的故障略———編者注。實(shí)際項(xiàng)目應(yīng)用中,開發(fā)人員需要關(guān)注雙口RAM存儲(chǔ)功能的完整性和可靠性,可以通過存儲(chǔ)器檢測算法來對(duì)其進(jìn)行檢測和診斷,能夠及時(shí)地發(fā)現(xiàn)和定位雙口RAM的存儲(chǔ)功能故障,并及時(shí)采取相應(yīng)的措施,避免因雙口RAM存儲(chǔ)單元的數(shù)據(jù)錯(cuò)誤導(dǎo)致的嚴(yán)重后果。本文采用硬件BIST架構(gòu)(HBIST),在硬件電路中設(shè)計(jì)專門的硬件邏輯部件來對(duì)內(nèi)存進(jìn)行測試,其圖形測試向量有專門的硬件電路模塊生成,自動(dòng)對(duì)內(nèi)存的各種功能故障進(jìn)行測試,硬件架構(gòu)內(nèi)建測試的內(nèi)存故障測試覆蓋率高,而且測試速度快,設(shè)計(jì)選取的圖形測試向量主要用于覆蓋高層次的內(nèi)存故障,如NPSF、CF、DRF。HBIST利用March-TB內(nèi)存測試算法對(duì)系統(tǒng)的內(nèi)存進(jìn)行測試,使用硬件HBIST電路來生成圖形測試向量,并由硬件HBIST電路來進(jìn)行測試,HBIST測試電路模型略———編者注。在硬件BIST處于非工作狀態(tài)時(shí),會(huì)拉低BIST的時(shí)鐘信號(hào),BIST電路進(jìn)入休眠狀態(tài)。當(dāng)系統(tǒng)在夜間進(jìn)入非繁忙狀態(tài),會(huì)產(chǎn)生BIST_M(jìn)ODE信號(hào),來激活BIST電路的BIST模式控制器,并拉高時(shí)鐘信號(hào),BIST模式控制器發(fā)出控制信號(hào),會(huì)接管對(duì)整個(gè)RAM的訪問控制,并對(duì)RAM開始進(jìn)行測試。BIST模式控制器控制測試向量產(chǎn)生器、地址與數(shù)據(jù)生成邏輯工作,產(chǎn)生相應(yīng)的測試向量對(duì)RAM進(jìn)行測試。同時(shí),并將測試結(jié)果在BIST結(jié)果比較器中進(jìn)行比較,如果發(fā)現(xiàn)異常,退出BIST_M(jìn)ODE模式,通知MPU測試異常,MPU產(chǎn)生相應(yīng)的告警和錯(cuò)誤處理。HBIST在進(jìn)行內(nèi)存檢測時(shí)一共具有4種狀態(tài):idle、test、error、wait。idle表示處于等待測試數(shù)據(jù)進(jìn)行測試的空閑狀態(tài);test表示獲得測試向量對(duì)相應(yīng)內(nèi)存單元進(jìn)行測試;error表示檢測到內(nèi)存單元出錯(cuò);wait表示處于休眠狀態(tài),等待CPU模塊激活HBIST。HBIST狀態(tài)機(jī)的狀態(tài)轉(zhuǎn)移圖略———編者注。HBIST狀態(tài)機(jī)的VHDL程序略———編者注。在測試的過程中,通過植入內(nèi)存故障,并用邏輯分析儀獲取出錯(cuò)信號(hào),硬件BIST模塊檢測內(nèi)存出錯(cuò)圖如圖3所示。圓圈里面的測試結(jié)果與期望結(jié)果不一致,內(nèi)存檢測出錯(cuò)。
1.6數(shù)據(jù)交互軟硬件設(shè)計(jì)
雙口RAM是雙端口SRAM芯片,本設(shè)計(jì)采用CY7C028V-15AXI,讀寫速度最高為15ns,數(shù)據(jù)容量為64K×16位。雙口RAM連接HCU板的一端為MPC8247的LO-CALBUS總線,連接MPU板的一端為CPCI總線橋接芯片的LOCALBUS總線,HCU可以直接通過LOCALBUS總線訪問雙口RAM,而MPU板通過PCI總線訪問,其中還有控制信號(hào),如片選、讀寫、中斷、BUSY信號(hào)等。雙口RAM交互電路圖略———編者注。在MPU和HCU中,通過設(shè)計(jì)的軟件模塊,來完成雙口RAM的訪問操作。雙口RAM的MPU上軟件交互關(guān)鍵代碼略———編者注。
2結(jié)語
分析了應(yīng)用在軌道交通行業(yè)中的三取二安全計(jì)算機(jī)的雙口RAM數(shù)據(jù)通信要求,并在實(shí)際的項(xiàng)目設(shè)備開發(fā)中,設(shè)計(jì)了基于角色輪換和自檢技術(shù)的數(shù)據(jù)通信方案,可以滿足三取二安全計(jì)算機(jī)數(shù)據(jù)通信的安全性、可靠性和實(shí)時(shí)性要求。
作者:徐軍 張磊 孫軍峰 單位:卡斯柯信號(hào)有限公司
級(jí)別:部級(jí)期刊
榮譽(yù):中國優(yōu)秀期刊遴選數(shù)據(jù)庫
級(jí)別:部級(jí)期刊
榮譽(yù):中國優(yōu)秀期刊遴選數(shù)據(jù)庫
級(jí)別:部級(jí)期刊
榮譽(yù):中國優(yōu)秀期刊遴選數(shù)據(jù)庫
級(jí)別:部級(jí)期刊
榮譽(yù):中國優(yōu)秀期刊遴選數(shù)據(jù)庫
級(jí)別:省級(jí)期刊
榮譽(yù):中國優(yōu)秀期刊遴選數(shù)據(jù)庫