關注公眾號,點擊公眾號主頁右上角“ ··· ”,設置星標,實時關注智能汽車電子與軟件最新資訊

傳統的車載CAN總線最高支持500 kbit/s的傳輸速率,每幀只能承載8 bytes的數據,由于傳輸速率和數據長度的限制,在自動駕駛和智能網聯對網絡通信的高要求背景下,使用傳統 CAN 通信勢必會導致總線負載率過高從而導致網絡擁堵,傳統CAN總線通信的瓶頸逐漸凸顯。
2011年,為滿足帶寬和可靠性的需求,Bosch首次發布了 CAN-FD(CAN With Flexible Data-Rate)方案,CAN-FD繼承了傳統CAN總線的主要特性,使用改動較小的物理層,雙線串行通信協議,依然基于非破壞性仲裁技術,分布式實時控制,可靠的錯誤處理和檢測機制,在此基礎上對帶寬和數據長度進行優化,將逐步取代傳統CAN成為下一代主流汽車總線系統,與車載以太網搭配構建未來汽車的網絡骨架。
1. CAN-FD概述
1.1 基于OSI參考模型的CAN-FD 協議分層
CAN-FD 的協議架構(網絡分層)與傳統 CAN 保持一致,故后文中對協議架構部分的說明將不對CAN與CAN-FD進行區分。
CAN 協議也是基于 ISO/IEC 7498-1 中規定的開放系統互聯(OSI)基本參考模型,該模型將通信系統結構劃分為 7 層。自上而下分別為應用層(層 7)、表示層、會話層、傳輸層、網絡層、數據鏈路層和物理層(層 1)。
考慮到 CAN 作為工業測控底層網絡,其信息傳輸量相對較少,信息傳輸的實時性要求較高,網絡連接方式相對較簡單,因此,CAN 總線網絡底層只采用了 OSI 7 層通信模型的最低 2 層,即物理層和數據鏈路層,而在高層只有應用層。CAN 的數據鏈路層又分為邏輯鏈路控制(LLC)子層和媒體訪問控制(MAC)子層。物理層定義信號怎樣傳輸,完成電氣連接,實現驅動器/接收器特性;MAC 子層是實現CAN 協議的核心,它的功能主要是傳送規則,即控制幀結構、執行仲裁、錯誤檢測、出錯標定和故障界定;LLC子層的功能主要是報文濾波、超載通知和恢復管理。
物理層和數據鏈路層的功能可由 CAN 接口器件來完成。應用層的功能是由微處理器完成的。在ISO 11898中對 CAN 協議層級與 OSI模型層級的關系進行了說明,圖 1 描述了 CAN 協議中數據鏈路層和物理層與 OSI模型的關系。

圖1 CAN分層結構與OSI模型對比
1.2 CAN-FD優勢分析
CAN-FD相比傳統CAN總線,其優勢主要有以下3點。
(1)傳輸速率更快
FD全稱是 Flexible Data-Rate,顧名思義,表示CAN-FD 的幀報文具有數據場波特率可變的特性,即仲裁場合數據控制場使用標準的通信波特率,而到數據場就會切換為更高的通信波特率,車端常用的為2Mbit/s和5Mbit/s,從而達到提高通信速率的目的。

圖2 CAN標準幀結構

圖3 CAN-FD標準幀結構(數據長度最大為16 bytes)

圖4 CAN-FD標準幀結構(數據長度為20~64 bytes)
(2)有效數據場更長
傳統CAN報文標準幀的有效數據場只有8bytes,每幀攜帶的數據量很少,CAN-FD 對有效數據場的長度進行了很大的擴充,標準幀的有效數據場最大可達到64bytes,大大提高了每幀報文中所能攜帶的數據量。
(3)更小的改動
CAN-FD保留了傳統CAN總線協議的核心特征,這使得在ECU和收發器等硬件層面上相較于車載以太網更易實現和應用,且由于CAN-FD與傳統CAN對物理層的要求基本一致,CAN-FD的 ECU 和收發器對傳統CAN兼容,OEM不論是采用直接升級為CAN FD總線的方案還是在切換過渡的階段先采用混網的方案,在技術實現和開發成本控制層面都可以達到預期。
2. CAN-FD在產品車型上的應用
以某車型為例,該項目已對 CAN-FD網絡進行了量產化應用,該項目基于電子電氣功能架構搭建了集合多種車載網絡協議的網絡架構,集信息域、互聯域、自動駕駛域、底盤動力域的多域融合的一汽新一代整車網絡架構,該架構具備支持拓展 L2+級自動駕駛和整車級 OTA 技術的能力,具有高功能安全、高信息安全的技術優勢。
2.1 功能定義
本車型CAN-FD部分主要實現ADAS自動駕駛和動力車控等功能,ADAS 功能分為駕駛智能輔助功能和自動駕駛功能,包括撥桿換道、自動換道、自適應巡航、高速代駕、擁堵跟車、自動泊車等基本或高階的功能,涉及到 ADAS 域控制器與感知傳感器、底盤、動力等執行控制器的控制交互。
2.2 方案設計
對于 2.1 章節所描述的功能需求,在以往項目設計時多采用 CAN 總線進行傳輸相關報文,但隨著ADAS 功能水平升級,這些 ADAS 功能的實現對網絡通信有著更高性能、低時延、高帶寬及ASIL B+的功能安全要求,傳統CAN通信已無法滿足。一汽紅旗在本車型上首次應用 CAN-FD 搭建 ADAS 等域的網絡架構,實現 ADAS 域控制器與感知控制器及執行控制器之間的高實時性和穩定性的通信傳輸。
在本車型網絡架構設計中,將 ADAS 功能相關的報文分為 2類,控制類和感知類。再根據每個單元功能的功能安全ASIL等級確定每條報文和信號的ASIL等級,進而制定每條信號的E2E校驗策略。由于舒適娛樂采用傳統CAN的網絡骨架,所以在中央網關中做了 CAN 轉 CAN-FD(CAN-FD 轉 CAN)的功能設計,并對網關做了功能安全冗余設計,網關功能安全設計內容在此不做贅述。
2.3 設計實現
2.3.1 車型CAN-FD節點拓撲結構設計
在本車型項目中,CAN-FD 節點主要有網關控制器、ADAS 域控制器、ADAS 感知控制器、動力域控制器、底盤域控制器(圖 5)。

圖5 車型CAN-FD節點拓撲
其中網關主要實現 PDUCAN-FD 路由功能、CAN-CANFD 路由功能;ADAS 域控制器實現 ADAS 規劃決策功能;ADAS 感知控制器實現環境感知和定位功能;動力域控制器實現動力分配和控制功能;底盤域控制器實現制動和轉向功能。
2.3.2 路由策略設計
從 CAN 到 CAN-FD 的路由,考慮到傳輸效率,網關將接收到的多個 CAN 報文打包到一個 CAN-FD 報文中進行發送,為保證報文矩陣的可擴展性和打包解析的便利性,CAN-FD中每8個bytes與傳統CAN報文相對應,每連續的8 bytes中至少預留32 bits用于未來功能的擴展。CAN-FD報文數據部分設計為如圖6。

圖6 CAN-FD路由CAN-FD報文數據場結構
網關的報文路由形式分為CAN-CAN路由,CANCANFD 路由和 CANFD-CAN 路由 3 種,CAN-CAN 路由遵循傳統 CAN 路由原則,在此不做贅述,后文主要對后2種路由形式進行詳細說明。
CAN-CANFD路由:
網關可以將多條報文進行組包后轉發,也可以不組包單報文轉發;單報文轉發僅改變源網段報文的ID和報文類型(幀結構和傳輸速率),但不改變數據場里信號的位置和數據場長度(DLC),這種轉發形式稱為報文路由。直接路由可以通過底層軟件自己完成,不需要上層軟件的參與,路由時間延遲低,一般可控制器在2 ms以內。

圖7 報文路由過程示例
CANFD-CAN路由:
CAN-FD到CAN總線的消息轉發需要將DLC長達64 bytes的CAN-FD的消息幀拆分為多個DLC最長為8 bytes的CAN消息幀,需要數據場中的信號拆分重組,改變報文的ID、報文類型、DLC長度以及信號位置,這種路由方式稱為信號路由。信號路由過程需要上層軟件的參與,路由時延相比報文路由要高一些,想實現功能安全,網關也需要做更多的安全冗余設計工作。
2.4 CAN-FD通信性能驗證
針對本項目設計,搭建了臺架對 CAN-FD相關節點進行了一致性測試和硬件在環(Hardware In the Loop,HIL)驗證,在網絡的關鍵性能指標如總線負載率、吞吐量、平均時延和峰值時延、網絡利用率和網絡效率都得出了不錯的結果數據。

圖8 信號路由過程示例
3. 基于CAN-FD的新一代汽車網絡架構
車聯網、V2X 和自動駕駛對汽車網絡高帶寬、低延遲的高要求,使得以傳統CAN為骨架的汽車網絡架構已逐步退出歷史舞臺。車載以太網技術的發展為高帶寬提供了可能性,但車載以太網由于其點對點通信和非實時的協議特性使其無法滿足車控功能對高實時性和一對多通信的需求,而 CAN-FD 基于傳統CAN 的核心特征,繼承了總線仲裁和廣播通信特性,非常適用于車控信息的交互。利用 CAN-FD 與車載以太網的協議特征,主機廠已構建出以CAN-FD和車載以太網為網絡骨架的新一代智能汽車的網絡架構。
車載以太網在一汽的量產車型上也已得到應用,用于實現了安全防護、車況查詢、遠程控制、手機泊車、移動網絡、WiFi 功能、定位導航、信息推送方面功能。在該車型上,以車載以太網和 CAN-FD 為主干網絡,研發工程師搭建了面向服務的集信息域、互聯域、自動駕駛域、底盤域的多域融合的新一代整車網絡架構。

