【正文】
仿真如圖7所示。通過仿真可見,Bx在接收過程中出現(xiàn)錯誤,但對于通信控制器仍然能正確接收到數(shù)據(jù),可見改進后的總線具有容錯能力。若一位數(shù)據(jù)的傳輸時發(fā)生兩處錯誤,假設Ay和Bx均發(fā)生錯誤,即Ay數(shù)據(jù)傳輸中第一位發(fā)生錯誤,接收的數(shù)據(jù)位流的最后第三位變?yōu)?;Bx中數(shù)據(jù)傳輸中第一位發(fā)生錯誤,即接收的數(shù)據(jù)位流的最后第三位變?yōu)?。圖8 兩條通道出現(xiàn)錯誤的幀接收通過仿真可見,若某位數(shù)據(jù)的傳輸過程中出現(xiàn)兩條線同時錯誤的情況下,通信控制器不能解析到收到的數(shù)據(jù),輸出高阻。 基于硬件的測試基于硬件仿真的測試,在開發(fā)平臺上實現(xiàn)5個開發(fā)板的通信。處理器采用Nios II內(nèi)核,系統(tǒng)參數(shù)與仿真設置參數(shù)相同,節(jié)點2在靜態(tài)段時隙為15發(fā)送16位數(shù)據(jù)0x0215,節(jié)點3在靜態(tài)段時隙為25發(fā)送16位數(shù)據(jù)0x0325,節(jié)點4在靜態(tài)段時隙為35發(fā)送16位數(shù)據(jù)0x0435,節(jié)點5在靜態(tài)段時隙為45發(fā)送16位數(shù)據(jù)0x0545。節(jié)點1接收數(shù)據(jù)。接收結果如圖9所示。圖9 節(jié)點1接收數(shù)據(jù)從以上實驗中接收的結果可見改進FlexRay總線能正確收發(fā),設計的電路能正確運行,即符合設計需求。測試節(jié)點4故障對傳輸?shù)挠绊?。對?jié)點4,首先假定Bx通道傳輸錯誤,即節(jié)點4的Bx不與通道相連,測試數(shù)據(jù)能否被接收;然后假定Ay和Bx通道均發(fā)生錯誤,即節(jié)點4的Ay和Bx都不與通道相連,測試數(shù)據(jù)能否被接收。對其他節(jié)點仍正確連接。測試結果:Bx通道傳輸錯誤,實驗結果與圖10相同,仍能接收到節(jié)點4發(fā)送的數(shù)據(jù),可見單個通道的故障不影響數(shù)據(jù)的通信,即改進后的FlexRay總線允許單個通道的傳輸故障。若Ay和Bx通道均發(fā)生錯誤,則實驗結果如圖10所示。圖10 容錯測試 從圖中可以看到節(jié)點不能接收到節(jié)點4中的數(shù)據(jù),因此,若兩個通道同時傳輸錯誤,則節(jié)點不接收該幀數(shù)據(jù)。通過對改進后總線容錯能力的測試,可見IP核的設計與要求容錯能力一致。4 結論為保證FlexRay總線能夠更好應用于列控系統(tǒng)的故障安全通信中,借鑒ARINC659總線對其物理層進行了改進。根據(jù)FlexRay協(xié)議符合性測試規(guī)范,首先利用Modelsim對設計的各模塊進行RTL級的仿真,以驗證設計模塊的符合性。然后采用Cyclone自帶的Nios II內(nèi)核作為主機控制通信控制器,進行開發(fā)板的通信實驗和主要功能的符合性測試。測試結果結果表明改進的FlexRay總線能夠正確完成調(diào)度和數(shù)據(jù)的收發(fā),且有更好的容錯能力,能容忍一個通道傳輸?shù)腻e誤,對兩個通道同時故障,可導向安全側,因此改進后的FlexRay總線能更好用于故障安全通信中。參考文獻[1] Functional safety of electrical/electronic/programmable electronic safetyrelated systems German version EN 61508: 2010[S], [2] FlexRay Consortium. FlexRay Communications System Protocol Specification Version [S],2010[3] Arinc Specification 659 Backplane Data Bus[A]. The Airlines Electronic Engineering Committee[C], ,1993[4] 劉欣,[J].,23(6):266268[5] FlexRay Consortium. FlexRay Communications System Protocol Conformance Test Specification Version [S],2010