<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > CAN FD網(wǎng)絡(luò )中每秒最多可以發(fā)送多少幀報文?

CAN FD網(wǎng)絡(luò )中每秒最多可以發(fā)送多少幀報文?

發(fā)布人:美男子玩編程 時(shí)間:2023-06-21 來(lái)源:工程師 發(fā)布文章

隨著(zhù)總線(xiàn)技術(shù)在汽車(chē)電子領(lǐng)域越來(lái)越廣泛和深入的應用,特別是自動(dòng)駕駛技術(shù)的迅速發(fā)展,汽車(chē)電子對總線(xiàn)寬度和數據傳輸速率的要求也越來(lái)也高,傳統CAN(1MBit/s,8Bytes?Payload)已難以滿(mǎn)足日益增加的需求。

因此在2012年,Bosch發(fā)布了新的CAN FD標準 (CAN with Flexible Data Rate) ,CAN FD繼承了CAN的絕大多數特性,如同樣的物理層,雙線(xiàn)串行通信協(xié)議,基于非破壞性仲裁技術(shù),分布式實(shí)時(shí)控制,可靠的錯誤處理和檢測機制等,同時(shí)CAN FD彌補了CAN在總線(xiàn)帶寬和數據長(cháng)度方面的不足。

2015年6月30日,國際標準化組織(ISO)已經(jīng)正式認可CAN?FD,并無(wú)反對票通過(guò)ISO 11898-1作為國際標準草案。

1

什么是CAN FD?

CAN FD協(xié)議是由Bosch以及行業(yè)專(zhuān)家預研開(kāi)發(fā)的,并于2012年發(fā)布。通過(guò)標準化對其進(jìn)行了改進(jìn),現已納入ISO 11898-1:2015。一開(kāi)始的Bosch CAN FD版本(非ISO CAN FD)與ISO CAN FD是不兼容。

CAN FD具有以下4個(gè)主要優(yōu)點(diǎn):

1、增加了數據的長(cháng)度

CAN FD每個(gè)數據幀最多支持64個(gè)數據字節,而傳統CAN最多支持8個(gè)數據字節。這減少了協(xié)議開(kāi)銷(xiāo),并提高了協(xié)議效率。

2、增加傳輸的速度

CAN FD支持雙比特率:與傳統CAN一樣,標稱(chēng)(仲裁)比特率限制為1 Mbit/s,而數據比特率則取決于網(wǎng)絡(luò )拓撲/收發(fā)器。實(shí)際上,可以實(shí)現高達5 Mbit/s的數據比特率。

3、更好的可靠性

CAN FD使用改進(jìn)的循環(huán)冗余校驗(CRC)和“受保護的填充位計數器”,從而降低了未被檢測到的錯誤的風(fēng)險。這在汽車(chē)和工業(yè)自動(dòng)化等安全攸關(guān)的應用中至關(guān)重要。

4、平滑過(guò)渡

在一些特定的情況下CAN FD能用在僅使用傳統CAN的ECU上,這樣就可以逐步引入CAN FD節點(diǎn),從而為OEM簡(jiǎn)化程序和降低成本。

實(shí)際上,與傳統CAN相比,CAN FD可以將網(wǎng)絡(luò )帶寬提高3到8倍,從而為數據的增長(cháng)提供了一種簡(jiǎn)單的解決方案。

2

CAN FD幀結構

CAN FD節點(diǎn)可以正常收、發(fā)CAN報文,但CAN節點(diǎn)不能正確收、發(fā)CAN FD報文,因為其幀格式不一致。


圖片


與CAN一樣,CAN FD一共具有:幀起始,仲裁段,控制段,數據段,CRC段,ACK段和幀結束,7部分組成。

2.1、幀起始

CAN與CANFD使用相同的SOF標志位來(lái)標志報文的起始。幀起始由1個(gè)顯性位構成,標志著(zhù)報文的開(kāi)始,并在總線(xiàn)上起著(zhù)同步作用。


圖片


2.2、仲裁段

與CAN不同,CAN FD取消了對遠程幀的支持,用RRS位替換了RTR位,為常顯性。IDE用于區分標準幀和擴展幀。

標準幀仲裁段由11位ID和r1位(顯性)、IDE(顯性)組成,總共13位。

擴展幀仲裁段由29位ID和SRR(隱性)、IDE(隱性)、r1位(顯性)組成,總共32位。

  • SRR:替代CAN標準幀中的RTR位;

  • IDE:擴展幀標志位;

  • r1:保留位,為顯性。

2.3、控制段

CAN FD與CAN有著(zhù)相同的IDE、res和DLC位,同時(shí)增加了FDF、BRS、ESI三個(gè)bit位。

  • FDF 位(Flexible Data Rate Format):原 CAN 數據幀中的保留位 r。表示 CAN 報文還是 CAN-FD 報文,FDF 位常為隱性(1),表示 CAN FD 報文;

  • BRS 位( Bit Rate Switch):表示位速率轉換,當 BRS 為顯性位(0)時(shí)數據段的位速率與仲裁段的位速率一致(恒定速率),當 BRS 為隱性位(1)時(shí)速率可變(即 BSR 到 CRC 使用轉換速率傳輸);

  • ESI 位(Error State Indicator):發(fā)送節點(diǎn)錯誤狀態(tài)指示,主動(dòng)錯誤時(shí)發(fā)送顯性位(0),被動(dòng)錯誤時(shí)發(fā)送隱性位(1)。


圖片


2.4、數據段 

CAN FD兼容CAN的數據格式,同時(shí)最大還能支持:12、16、 20、 24、 32、 48和64byte。

像在傳統CAN中一樣,CAN FD DLC是4位,表示幀中數據字節的數量。為了維持4位DLC,CAN FD使用從9到15的其余7個(gè)值來(lái)表示所使用的數據字節數(12、16、20、24、32、48、64)。 


圖片


編輯


圖片


2.5、CRC段

傳統CAN中的循環(huán)冗余校驗(CRC)為15位,而在CAN FD中由固定填充位FSB(6/7位)、填充位計數(4位)、CRC(17/21位)和CRC界定符(1位)組成,總共28或33位組成。在傳統CAN中,CRC中可以包含0到3個(gè)填充位,而在CAN FD中,總是有4個(gè)固定填充位以提高通信可靠性。

固定填充位(FSB):CRC段中每4個(gè)位固定填充一個(gè)與上位相反的位。

  • 采用CRC17時(shí),FSB為6個(gè)位;

  • 采用CRC21時(shí),FSB為7個(gè)位。

填充位計數:由填充位計數(3位)和奇偶校驗位(1位)組成。

CRC:

  • 報文長(cháng)度小于16時(shí),采用CRC17,17位組成;

  • 報文長(cháng)度大于16時(shí),采用CRC21,21位組成。

CRC界定符:固定為隱性位;從該位采樣后,切換為仲裁域波特率。

2.6、ACK段

ACK緊跟著(zhù)CRC結束標識位。不同的是,CAN FD支持2bits的ACK的識別,由ACK位和ACK界定符位組成。

  • ACK:接收節點(diǎn)應答位,接收節點(diǎn)應應答顯性位;

  • ACK界定符,固定為隱性。


圖片


2.7、幀結束

與CAN一樣,CAN FD的幀結尾也為連續7位的隱性位。

3

一幀CAN FD報文位數

根據CAN FD幀結構組成,可以算出一幀CAN FD報文位數:

CAN FD報文位數 = 幀起始(1位)+ 仲裁段(13/32位)+ 控制段(8位)+ 數據段(0~512位)+ CRC段(28/33位)+ ACK段(2位)+ 幀結束(7位)

影響報文位數主要為仲裁段(幀ID長(cháng)度)和數據段(CRC段受數據段長(cháng)度影響)。通過(guò)幀類(lèi)型、幀長(cháng)度組合出不同情況報文位數:

  • 標準幀,數據0字節

幀起始(1位)+ 仲裁段(13位)+ 控制段(8位)+ 數據段(0位)+ CRC段(28位)+ ACK段(2位)+ 幀結束(7位)= 59位

  • 標準幀,數據64字節

幀起始(1位)+ 仲裁段(13位)+ 控制段(8位)+ 數據段(512位)+ CRC段(33位)+ ACK段(2位)+ 幀結束(7位)= 576位

  • 擴展幀,數據0字節

幀起始(1位)+ 仲裁段(32位)+ 控制段(8位)+ 數據段(0位)+ CRC段(28位)+ ACK段(2位)+ 幀結束(7位)= 78位

  • 擴展幀,數據64字節

幀起始(1位)+ 仲裁段(13位)+ 控制段(8位)+ 數據段(512位)+ CRC段(33位)+ ACK段(2位)+ 幀結束(7位)= 590位

4

精品專(zhuān)欄仲裁域和數據域位數

由于CANFD采用了雙波特率形式:標準波特率(也稱(chēng)仲裁域波特率)和數據域波特率,所以幀結構中不同段采用的波特率也不同。

  • 仲裁域波特率所占位數幀起始(1位)+ 仲裁段(13位)+ 控制段的EDL、r0、BRS(3位)+ ACK段(2位)+ 幀結束(7位)

  • 數據域波特率所占位數控制段的ESI、DLC(5位)+ 數據段(0~512位)+ CRC段(28/33位)

主要說(shuō)明的是,BRS位和CRC界定符位均同時(shí)使用了兩個(gè)波特率

  • BRS位:由**仲裁域波特率 * 仲裁域采樣點(diǎn) + 數據域波特率 * (1 - 仲裁域采樣點(diǎn))**組成;

  • CRC界定符:由**數據域波特率 * 數據域采樣點(diǎn) + 仲裁域波特率 * (1 - 數據域采樣點(diǎn))**組成。

此處將BRS認定采用仲裁域波特率、CRC界定符采用數據域波特率以方便計算。

5

位填充

當然,上述報文位數中,還未包含填充位個(gè)數。在CAN/CAN FD協(xié)議中規定:每5個(gè)相同的位就必須填充一個(gè)相反位,該位即為填充位。

我們知道字節0x55或0xAA,其二進(jìn)制分別為0101 0101或1010 1010,也就是每個(gè)位與上一位均相反,若此時(shí)ID和數據均為0x55或0xAA,則可以使填充位個(gè)數最少。

同理,字節0xFF或0x00,其二進(jìn)制位1111 1111或0000 0000,也就是所有位均一致,若此時(shí)ID和數據均為0x00或0xFF,此時(shí)報文的填充位個(gè)數最多。

6

不同類(lèi)型報文位數

基于以上報文位數的計算,我們可以得出算出不同類(lèi)型報文所占位數,如下表所示:


圖片


從上表可知:

  • 當報文為CAN FD標準幀ID為0x555,數據長(cháng)度為0時(shí),報文位數最少,為59位;

  • 當報文為CAN FD擴展幀ID為0x0,數據長(cháng)度為64字節,數據全為0xFF時(shí),報文位數最多,為703位。

7

CAN FD報文時(shí)間計算

最后,可以根據波特率算出不同類(lèi)型報文時(shí)間了,計算公式如下:

報文時(shí)間 = 仲裁域位時(shí)間 * 仲裁域位數 + 數據域位時(shí)間 * 數據域位數

以位數最少的CANFD報文為例,在仲裁域波特率為1Mbps(位時(shí)間1us),數據域波特率為5Mbps(位時(shí)間200ns)時(shí),其報文時(shí)間 = 1us * 26 + 33 * 200ns = 32.6us。

那么一秒鐘最多可以發(fā)送報文呢?由于報文發(fā)送成功后,需經(jīng)過(guò)幀間隔(3個(gè)位)后才能發(fā)送下一幀報文,也就說(shuō)仲裁段要在原來(lái)基礎上加3個(gè)位,就可以算出每秒發(fā)送多少幀了。那么上述位數最少報文的發(fā)送時(shí)間耗時(shí) = 1us * (26 + 3) + 33 * 200ns = 35.6us,也就是1秒鐘最多可以發(fā)送1000000us / 35.6us = 28089幀報文。也就是說(shuō),1M/5M波特率下,發(fā)送CAN FD標準加速幀,最多可以發(fā)送28089幀。

下面我們給出一些常用波特率下,不同類(lèi)型報文每秒最多可以發(fā)送的CANFD報文幀數(下表中報文BRS位為1,ESI位為0),供大家參考。


圖片



圖片



圖片



*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。



關(guān)鍵詞: CAN 幀報文

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>