1、Flexray通信周期與時間分層 如上圖,按照協議(1)規定,Flexray的一個通信周期可以包含四個部分:靜態段(Static Segment)、動態段(Dynamic Segment)、符號窗(Symbol Window)、網絡空閑時間段(NIT,Network Idle Time)。
不管是哪個Segment,均由宏時鐘(macrotick)構成,macrotick是表示全局時間的最小粒度單位。每個通信循環由固定數量的macrotick構成,eg:one cycle = 5000 macrotick。其中,宏時鐘又由多個微時鐘(microtick)構成。微時鐘直接從晶振產生,也就是時鐘系統經過倍頻和分頻后的結果。微時鐘不受時鐘同步機制的影響,是一個結點里面的最小時間單位。 microtick對應的時間長度是多少呢?microtick既然由時鐘產生,我們就的知道Flexray模塊獲取的時鐘是多少,eg:80MHz。那么就意味著一個tick = 1/80000000 = 0.0125us,如果需要經過2次采樣(sample)得到一個microtick,也就是意味著一個microtick = 0.025us。規范(1)描述如下: 當microtick知道以后,即可推算macrotick。一般,macrotick長度可以設置在1us-6us,工程上,常常設置macrotick = 1us。如果設置macrotick = 1us,且一個microtick = 0.025us,參考規范(1)可知:一個macrotick = 40 microtick,如下所示: 工程上,Channel idle由參數gdDynamicSlotIdlePhase表示,eg:gdDynamicSlotIdlePhase = 0 minislot(不用該長度)。 每個Static Slot包含一個動作偏移點(Action Point),對于Flexray網段,Action Point偏移值固定,eg:gdActionPointOffset = 9 MT。gdActionPointOffset 同樣適用NIT中的動作偏移,示意如下: 提示:MT是macrotick簡稱。 2、Frame編碼 TSS:Transmission start sequence,當發送節點需要發送數據時,在所屬的slot中,首先發送TSS,TSS由多個連續的低電平組成,eg:gdTSSTransmitter = 9 gdBit = 9 * 0.1us = 0.9us。 FSS:Frame start sequence,由一個高電平組成。 BSS:Byte start sequence,由一個高電平+一個低電平組成,后跟一個byte數據。 FES:Frame end sequence,由一個低電平+一個高電平組成,表征數據傳輸結束。 提示:如果使用10MHz通信速率,1gdBit = 1/10000000 = 0.1us。 相對于靜態Frame,動態Frame多了一個DTS(dynamic trailing sequence)表征數據的結束。 ![]() 參考資料 SIMPLE TITLE (1)FlexRay Communications SystemProtocol Specification Version 2.1.pdf |
|
來自: 開心果NeedCar > 《待分類》