• <table id="4yyaw"><kbd id="4yyaw"></kbd></table>
  • <td id="4yyaw"></td>
  • 發布時間:2020-10-05 11:53 原文鏈接: 一文讀懂什么是FlexRay?(二)

    FlexRay數據傳輸

    FlexRay規范定義了OSI參考模型中的物理層和數據鏈路層,每個FlexRay節點通過一個FlexRay Controller和兩個FlexRay Transceivers(用于通道冗余)與總線相連,FlexRay Controller負責Flexray協議中的數據鏈路層,FlexRay Transceivers則負責總線物理信號接收發送。

    FlexRay可采用屏蔽或不屏蔽的雙絞線,每個通道有兩根導線,即總線正(Bus-Plus,BP)和總線負(Bus-Minus,BM)組成。采用不歸零法(NRZ,Non-Return to Zero)進行編碼。

    可通過測量BP和BM之間的電壓差識別總線狀態,這樣可減少外部干擾對總線信息的影響,因這些干擾同時作用在兩根導線上可相互抵消。每一通道需使用80~110歐的終端電阻。將不同的電壓加載在一個通道的兩根導線上,可使總線有四種狀態:Idle_Lp(Low power)、Idle、Data_0和Data_1

    顯性:差分電壓不為0V(Data_0和Data_1)

    隱性:差分電壓為0V(Idle_Lp、Idle)

    FlexRay幀格式

    FlexRay幀由起始段、有效負載段和結束段三大部分構成。

    1、起始段:由40個bits構成(5 bytes),包括

    -Status Bits-5bits

    -Frame ID-11bits

    -Payload Length-7 bits

    -Hedaer CRC-11bits

    -Cycle count -6 bits

    其中5bits的Status Bits包含四類指示符:凈荷指示位(Payload Preamble Indicator)、空幀指示位(Null Frame Indicator-指明該幀是否為無效幀)、同步幀指示位(Sync Frame Indicator-指明該幀是否為一個同步幀)和起始幀指示位(Startup Frame Indicator-指明該幀是否為起始幀)。

    Frame ID:數據標志符,定義了在時間窗口(Slot)中發送的號碼,每個通道數據標志符需唯一。

    Payload Length:工作區長度,指示該幀含有的有效數據長度,在每個Cycle下的靜態區中,每幀的數據長度是相同的,在動態區的長度則是不同的。

    Hedaer CRC:用于起始段冗余校驗,檢查傳輸中的錯誤。

    Cycle count:循環計數器。

    2、有效負載段

    包含要傳輸的有效數據,有效數據長度最大254個Bytes(0~127個Words),

    3、結束段

    包含24  Bits的檢驗域,由起始段和有效負載段計算得出的CRC校驗碼,計算CRC時,根據網絡傳輸順序從保留位到有效負載段的最后一位放到CRC生成器中進行計算。

    FlexRay編碼

    編碼的過程實際就是對要發送的數據進行一定的打包處理,即在節點可傳輸帶有主計算機數據的數據前需將其轉換為“比特流(Bitstream)”。

    RxD為接收信號,TxD為發送信號,TxEN為通訊控制器請求數據,對于靜態幀和動態幀分別按照如下方式進行編碼。


  • <table id="4yyaw"><kbd id="4yyaw"></kbd></table>
  • <td id="4yyaw"></td>
  • 调性视频