CAN-FD引入了更快的比特率,在數據階段可設置為高達5Mbit/s,但其后果是由于信號振鈴而受到嚴格的拓撲結構限制。這就使CAN-FD局限于線性網絡,限制了設計的自由度,增加了布線和系統成本。所以,在2020年的第17屆國際CAN大會(iCC)上,CiA推出了第三代CAN通信技術CAN-XL(extra long)。
CAN-XL是一種高度可擴展的通信技術,涉及比特率和數據字段的長度,物理層仍在開發中。其目標是實現高達10+Mbit/s的比特率。CAN-XL針對面向區域的異構網絡體系結構進行優化,能夠以最優的長度滿足未來車載網絡的要求。
汽車工業試圖減少布線,以最小化重量,或者換句話說,是限制能耗。CAN-XL通過保持CAN協議的優勢(例如無損仲裁的沖突解決),為高達10Mbit/s的數據速率提供了出色的解決方案, 填補了CAN-FD與100BASE-T1之間的空白。
它主要有以下幾個核心期望特性。
1.有效負載長度:?與以太網幀長度一樣。
2.可靠性:?等于或者優于CAN,CAN-FD和10Mbit/s以太網的穩定性。
3.魯棒性:?與CAN-FD一樣好,甚至要優于10Mbit/s以太網。
4.波特率:?在數據段的傳輸速率至少大于10Mbit/s。
5.兼容性:?向后兼容CAN-FD。
CAN-XL是對CAN和CAN-FD的進一步擴展,并且在很大程度上遵循相同的運行原理。CAN報文分為仲裁段和數據段,盡管CAN-XL在仲裁段使用500kbit/s至1Mbit/s的低速率,但數據段的傳輸速率卻可提升至2Mbit/s至10Mbit/s。相對于CAN-FD的可選速率切換功能,CAN-XL能夠強制執行速率切換。?
CAN-XL協議
此外,總線訪問仍舊采用CSMA/CD(載波偵聽多路訪問/沖突解決方案),通過位仲裁解決總線訪問權限問題。CAN-XL遵循嚴格的優先級概念,允許更重要的消息無延遲地傳輸。CAN-XL僅支持11位標識符ID,不再使用29位標識符ID,憑借用于報頭和幀以及格式檢查的漢明距離6算法,確保數據傳輸的高可靠性,實際上勝過FlexRay和以太網的CRC功能。
然而,對于未來的應用而言重要的不僅僅是提高數據傳輸速率。CAN-XL主要功能之一是數據段支持1~2048Byte的可變長度。在必要時,可將以太網幀打包為CAN-XL消息,直接或間接通過CAN-XL使用IP通信技術。
第3代 CAN-XL 數據鏈路層協議關鍵功能如下:
1.傳輸數據最多可達2048字節;
2.包含高層協議管理信息;
3.使用兩個CRC檢驗段用于提升可靠性;
4.其傳輸位速率達到10 Mbit/s;
5.支持所有3種CAN協議,經典CAN、CAN-FD和CAN-XL,保留與CAN2.0和CAN-FD的互操作性;
6.支持集成到TCP/IP網絡系統中。
CAN-XL重新定義數據鏈路層,分為兩個數據鏈路子層CAN-XL與以太網相似,CAN標準(ISO 11898系列)規定了兩個數據鏈路層子層:LLC層和MAC層。
LLC子層:?位于OSI網絡層和MAC子層的中間層。LLC幀結構包含所有的CAN幀格式和類型需要的內容。
MAC子層:?負責將幀數據從LLC子層移動到PMA子層,通過位填充(stuffbits)和CRC來保證幀的傳輸。
在發送過程中,LLC幀被轉換為一個MAC幀。在接收時MAC幀被轉換為一個LLC幀。在LLC幀中未被用于所選的CAN幀格式的部分內容將被忽略。
從頂層看,CAN控制器支持CAN-XL,CAN-FD和經典CAN,所以需要支持3種數據格式,其軟件接口如圖所示。
新的LLC幀格式
有了優先級ID、遠程幀和擴展幀指示,FDF位表示使用CAN-FD協議而不是經典CAN;選擇了FDF段,就可以選擇額外使用包含很多內容的XLF段,表示支持CAN-XL。
根據CAN XL LLC幀格式,可以總結出如下幾個特點:
1、CAN-XL數據需要傳輸一個11位的優先級ID,表示數據在總線上的優先級。系統設計師需要為數據分配獨一無二的優先級ID;
2、FDF位會一直是顯性的;
3、XLF位會一直是顯性的;
4、服務數據單元(SDU)類型表示這個CAN-XL幀使用那個高層協議;
5、數據鏈路層安全指示(SEC)是一個新的位,表示在數據鏈路層使用了額外的數據安全協議;
6、數據長度編碼(DLC),在CAN-FD和經典CAN中也有,它的長度是4位。在CAN-XL中是11位,為了傳輸更多的數據,數據可以有2048個字節;
7、虛擬CAN ID和SDU類型一樣是新的字段。虛擬CAN ID可以使完全不同的應用運行在同一條電纜上。例如這一幀用于這個應用,下一幀用于另外一個應用,可以使用分開不同的通道。虛擬ID在以太網中很常見;
8、接收段(AF),首先這是正式的CAN ID,有時直接使用29位ID,可以在這里提供用戶希望收到的內容,也可以用作保證字段,像經典CAN一樣表示數據的內容或者節點地址信息。無論用戶想要什么,都可以將其放入接收字段;
9、LLC數據字段的幀可以包含最多2048字節數據,最小字節為1字節,所以不能像經典CAN和CAN-FD一樣發送0字節的數據。
正如上面提到CAN ID和CAN-FD和經典CAN不一樣,在經典CAN和CAN-FD中,CAN ID字段(11位或29位)用于仲裁和尋址目的。而在CAN-XL中,這些函數是分開的。11位優先級ID子字段(priority ID sub-field)提供了CAN-XL數據幀的唯一優先級分配。32位接收字段(acceptance field)包含在CAN-XL控制器的64位硬件接收過濾器中,它可能包含節點地址或內容指示信息,可以用于包含經典CAN的高層協議。
數據服務單元(SDU)是一個新的內容,和以太網的EtherType類似。OSI層管理信息符合ISO 7498-4:1998,這是一個舊的協議,將它內嵌到XL幀中,可以提供更多的應用。在SDT中,發送節點提供使用高層協議的信息,可以是傳輸層協議、網絡層協議或應用層協議。例如:遺留的基于CAN的高層協議;以太網幀的隧道化,可以傳輸以太網幀,使過程更加平滑和簡單;經典CAN和CAN-FD幀的隧道化,將經典CAN和CAN-FD幀轉發到另一個局域網,CAN-XL作為骨干網使用;TCP/IP段;CAN open/CAN open FD;J1939-21/22消息;生產商自定義協議等。
虛擬CAN-ID和SDT雖然有些類似,但也有一定的區別。虛擬CAN-ID的目的是在電纜上運行不同的應用,帶寬和長度足以用于更多的數據。例如,可以同時上傳或下載兩個不同的應用程序,支持256個不同的虛擬通道,某種程度上也屬于網絡層信息。所以,可同時使用一幀用于某個應用程序,另一幀用于另一個程序或一組應用程序。
對于數據鏈路層,CAN-XL支持專有的協議。控制字段中的SEC位表示這個CAN-XL數據幀是否使用CADsec協議。CADsec協議具有一個4字節的header,包含密碼控制信息、CAN安全通道ID和一個新鮮度值。16字節的trailer包含128位身份驗證標記。這個功能目前尚在開發中,還需要芯片制造商的支持。
經典CAN、CAN-FD和CAN-XL幀的區別如圖所示。
經典CAN、CAN-FD和CAN-XL幀的比較
1. 幀起始
幀起始和幀結束是作為不變的部分。
2.仲裁段
在仲裁段中存在如下內容:
(1)優先級ID:11位優先級ID字段負責分配唯一優先級仲裁的CAN XL數據幀。系統設計人員需要保證優先級ID對于不同幀是唯一的;
(2)RRS:用于填充遠程幀;
(3)IDE:用于指示是否使用29位ID;
(4)FDF:FDF指示使用2個波特率;
(5)XLF:用于指示是否使用新了XL協議。
3.控制段
控制段在經典CAN和CAN-FD中很短,在CAN-XL中有更多的功能,需要更多的位去控制XL幀。
控制段中包括以下幾個內容:
(1)R1:保留的R1位,用于未來第四代CAN的開發;
(2)ADS:并不是協議的一部分,只是切換比特率,為了正確切換到快速波特率,長度需要4位。傳輸使用快速波特率,可以達到10Mbit/s或者更高;
(3)SDT:服務數據單元;
(4)SEC:安全位;
(5)DLC:數據長度編碼;
(6)SBC:填充位計數器,這個在CAN-FD協議就已經有了,用于計算填充位的數據;
(7)PCRC:CRC多項式校驗,PCRC是13位,它提供的漢明距離為6,意味著可以檢測出在CRC字段之前5個隨機分布的錯誤。在CAN-XL中可以進行單次發送,可以停止傳輸并表明需要處理一個錯誤;
(8)VCID:虛擬CAN ID;
(9)AF接收段,有32位長,在控制段的結尾,不需要經典CAN和CAN-FD的地址信息。
4.數據段
數據段最大長度為2048字節。
5.CRC段
數據段受CRC段保護,CRC段提供32位的幀CRC,在全部2048字節的漢明距離也為6,比其他網絡要好。檢查模式用于檢測幀中某一位的錯誤。因為兩個CRC是級聯的,所以FCRC也保護PCRC,全部的FCRC和PCRC保證了高可靠性的通信系統。
6.ACK段
經典CAN和CAN-FD是2位,CAN-XL有6位,多出來的4位用于將不同節點從高速度重新同步到低速度。DAS字段中的第一個是DAH位,它是作為邏輯1發送的。通過該位,將CAN-XL SIC中的收發器模式切換回SIC模式。ACK位和ACK界定符同之前的協議一樣。
7.幀結束
幀結束段包含7個隱性位,表示已經準備好并且幀已經發送完畢。
CAN-XL有很多變化,需要更多位,所以幀頭開銷更大,數據也變得更長長。使用CAN-XL僅傳輸一個字節的話,效率會非常低。如果使用所有的2048個字節,例如下載軟件,效率會很高。
CAN-XL的物理層會有些不同,使用經典CAN收發器速率會被限制在1Mbit/s,CAN-FD收發器速率會被限制在2Mbit/s或者2Mbit/s,使用CAN SIC收發器,速率可以達到8Mbit/s。
目前正在開發CAN-XL SIC收發器,速率可以達到10Mbit/s以上,2023年4月CAN XLPlugfest會議上Kvaser成功演示了20Mbit/s的速度。CAN-XL SIC收發器必須支持MICI接口(medium-independent CAN interface,介質無關CAN接口),當采用MICI接口時,可以向下兼容之前的CAN-FD,也給半導體商和工具開發商提供更多靈活的實現方案。目前研發中的芯片MICI接口是和收發器芯片在一起的,MICI用于連接CAN-XL控制器和CAN-XL SIC收發器,它基于TX的單路經PWM信號而工作。
MICI接口
CiA規定了CAN-XL控制器(CIA 610-1)和CAN-XL SIC收發器(CIA 610-3),CAN-XL控制器可以連接到所有提供AUI或MICI接口標準化CAN收發器技術。CAN SIC XL收發器有兩個工作模式:SIC mode模式;Fast TX /RX mode模式。
CAN-XL傳承自經典的CAN和CAN-FD,并縮小了CAN/CAN-FD與Ethernet之間的傳輸速度和耦合的差距。在合適的應用領域中,CAN-XL可以采用更小巧更便宜的控制器。利用高達2048Byte的有效數據長度,CAN-XL為將來傳輸以太網幀和利用IP通信提供所需的功能。這意味著CAN-XL和10base-T1S可以共同在基于信號的通信和面向服務的通信之間提供連接。通過對協議層進行適當地展開,將為應用提供更豐富的可能性。
審核編輯:湯梓紅
?
評論
查看更多