分析和仿真FlexRay總線的高性能硬件接口
為分析而進(jìn)行優(yōu)化
總體而言,為了最好的和CANoe/CANalyzer(仿真分析工具)以及CANape(測量和標(biāo)定工具)(圖2)聯(lián)合使用,Vector對FlexRay接口硬件進(jìn)行了優(yōu)化。接口硬件不僅僅識別總線上所有的活動,且根據(jù)需要對其進(jìn)行緩沖;并且它們可以將所有的信息傳遞到主機(jī)。不同于ECU中的控制器, FlexRay接口硬件中的控制器主接口用來記錄所有的數(shù)據(jù):無效幀、錯誤幀和符號,包括對應(yīng)的時鐘,并將它們傳到軟件工具中。這是供開發(fā)者來分析和解析總線數(shù)據(jù),并找到錯誤根源的唯一方法。如果FlexRay的同步?jīng)]有建立起來或沒有可用的帶有TMDA參數(shù)的FIBEX數(shù)據(jù)庫,未同步的總線分析仍是可行的,但只可能跟蹤事件并在讀操作下記錄它們。在這種模式下,仍然可以觀察FlexRay網(wǎng)絡(luò)的啟動過程。測量和標(biāo)定工具CANape使得開發(fā)者可以通過標(biāo)準(zhǔn)的XCP on FlexRay協(xié)議來訪問ECU內(nèi)部參數(shù)。在這種情況下,如果總線通信被中斷,F(xiàn)lexRay硬件支持FlexRay接口的重同步。
滿足所有仿真需求的發(fā)送能力
PC上ECU的仿真的要求很高。例如,CANoe仿真模式比分析模式對系統(tǒng)的要求高很多。因為在一個足夠快的電腦上,多個ECU可以被仿真,考慮到時序上的要求,接口必須能夠處理更高的數(shù)據(jù)量。10個或10個以上的ECU并行仿真是完全可能的。值得一提的是,只需要使用新的FlexRay接口中的一個就可以達(dá)到這個目標(biāo)。通過將TX緩沖區(qū)擴(kuò)展到2M字節(jié),它能夠存儲多于1000個獨立的發(fā)送報文來達(dá)到這個性能。
CANoe的RT平臺尤其適合于具有實時要求的小型或中型項目,例如硬件在環(huán)仿真。它將可視化和控制功能從實時仿真中隔離出來。仿真在一個獨立的具有Windows XP Embedded操作系統(tǒng)的計算機(jī)上運行,從而保證了可靠的更新發(fā)送的時刻。適用于這種計算機(jī)的硬件接口是:快速PCI接口,例如VN3300(圖3)。
為了達(dá)到應(yīng)用程序的最小的響應(yīng)時間和確定性時序行為,超短的延時是絕對必要的。除了應(yīng)用程序計算上的所需的時間,在不同的層上進(jìn)行傳輸也需要時間。為了在這種情況下達(dá)到超低的PC負(fù)載率,在FlexRay硬件中實現(xiàn)了DMA(直接內(nèi)存訪問)功能。使用DMA,可以達(dá)到高速發(fā)送數(shù)據(jù)并且減輕主處理器的負(fù)擔(dān),使得處理器可以有更多的時間去進(jìn)行計算。最短的延時時間是依賴于系統(tǒng)的:PCI接口卡可以達(dá)到最小的延時時間。
為開發(fā)者每天的工作提供智能的輔助功能
經(jīng)驗和客戶在各種FlexRay項目上的需求激勵著Vector的開發(fā)人員在FlexRay的接口卡中集成一些其他重要的功能:PDU的硬件支持,自動遞增的報文計數(shù)器,非激活ECU 的仿真,組更新和自動總線啟動能力。為了將傳輸層從應(yīng)用程序中分離出來,最近引入了FlexRay網(wǎng)絡(luò)PDU來代替用相關(guān)總線數(shù)據(jù)容器來直接工作。在這種情況下,需要為每一個PDU使用額外的信息,來指示當(dāng)前周期以及內(nèi)容是否有效。
PDU的概念增強(qiáng)了應(yīng)用軟件的靈活性并使其易于重復(fù)使用。但是,它的缺點是:為了生成和譯碼FlexRay幀,需要更多的努力(消耗)。強(qiáng)大的FlexRay接口卡通過硬件來將PDU并入和抽取出幀,彌補(bǔ)了這個缺點。
評論