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