眾所周知,CAN FD是基于CAN 2.0的升級版協議,為了滿足汽車電子日益增長的高帶寬和高傳輸速率的要求,CAN FD主要升級了以下幾個方面:
一、更高的傳輸波特率
圖 1 可變數據段波特率結構
CANFD速率包含兩個段的速率,一個是仲裁段和ACK段,沿用CAN2.0的規范,最高速率為1Mbit/s,中間的數據段是可以加速的,標稱可以達到5Mbit/s,甚至更高。
二、更高效的數據段
對于汽車電子來說,對車輛動力系統、地盤以及主被動系統來說,加長的數據段避免了數據非必要的拆分,大大提升了CAN幀的傳輸效率。
圖 2 CAN FD高效的數據段
三、更可靠的CRC校驗和額外的控制位
在傳統的CAN 2.0中,由于填充規則會對CRC產生干擾,在CAN FD中升級了算法,將填充位加入多項式的運算,主要作為格式檢查,考慮數據長度變化的區間很大,CRC也根據區間會生成兩種校驗算法,當幀長小于210位,使用CRC_17,當幀長小于1023位,使用CRC_21位算法。
圖 3 可靠的CRC校驗
另外在CAN FD中利用了部分保留標志位,新增三種控制位,包括EDL(是否是CANFD幀)、BRS(是否可變速率)以及ESI(錯誤狀態),豐富幀內的有用信息。
圖 4 新增控制位
接下來我們回到正題,升級后的CAN FD到底能跑多快呢?直接講參數很膚淺的,我們要分析。。.。。.那我們就用一個問題開始,大家都知道CAN 2.0最高速率可以到1M,但是為什么汽車電子高速CAN只跑到500K呢?
對于CAN總線的傳輸速率來講,傳輸距離和傳輸速率是成反比的,一般來說傳輸距離(m)=(50000/波特率kbps)*0.8,如圖 5所示。
圖5 傳輸距離和傳輸速率的關系。
那收發器和傳輸距離到底關系何在?剛才提到,收發器輸出是電平值,電平在傳輸的過程中難免衰減,線纜本身的阻抗和容抗無法避免,其次首尾終端電阻也是必要的,主要有兩個功能:
首尾120歐姆終端電阻,保證阻抗連續性(防止電信號反射);
放電作用;
針對終端電阻放電作用,我們下面從兩個層面分析:
電平傳輸層面分析
圖 6 CAN FD波形
我們先來看一個CANFD分解波形,其中是由顯隱性電平構成的,其中上升沿是由CAN收發器芯片本身驅動的。當顯性電平轉變為隱形電平的時候,需要終端電阻放電,所以下降沿是我們的終端電阻放電的造成的。
圖 7 負載電阻與差分幅值的關系
如果下降沿緩慢是什么原因導致?
檢查收發器外圍電路是否存在容性較大的器件(不影響電路正常工作的情況下拆除),重新測試波形是否正常;
檢查線纜的參數,每米容抗是否在正常范圍內,正常線纜電容在40-70pF/m,容抗太大,建議更換線纜;
增加終端電阻放電,建議采用專業設備測試網絡阻抗容抗做正確匹配。
圖8 CANscope總線阻抗容抗測試
四、總線網絡數據能否正確傳輸層面
阻抗太大,電壓幅值壓降太大,傳輸距離大大降低。現象就是在手牽手的網絡拓撲中,當然差分輔幅值最好不要低于1.3V,防止在強干擾的環境下,導致收發器無法識別或誤識別總線信號。
容抗也是影響下降沿的重要因素,如果下降沿太緩慢會導致位寬拉長,導致收發器錯誤識別,導致0/1的翻轉,CAN總線是錯誤重發的機制,會一直重發,直到這一幀被正確接收。
圖 9 電容對下降沿的影響
同樣的我們回到阻抗和容抗的匹配是如何影響CAN FD的傳輸速率的呢,接下來我們用實測證明:
圖 10 穩定時間140ns
前面我也提到5M數據速率時,位時間是200ns,,實際傳輸過程中,一位時間包含了上升沿、下降沿以及數據穩定時間,如圖 15所示,數據穩定時間按是140ns,那其中上升沿和下降沿占了60ns,理想情況下,上升沿和下降沿完全對稱,其中上升沿時間是30ns,按照邊沿極限值12%計算,實際算出來的位時間=30/(12/100)=250ns,那么相對應的傳輸波特率就=1/250ns=4M波特率,所以實際5M波特率也就是在測試使用,如果按照7%的邊沿時間為安全值來計算,實際的位時間=30/(7/100)約等于42ns,相對應的傳輸波特率=1/42ns約等于2.3M,所以想要實際在工況下穩定可靠傳輸,數據端波特率在2M左右比較合理。
綜上所述,影響CAN FD到底能傳輸多快影響的因素非常多,也是我們大多數工程師在實際CAN總線開發的過程中會忽略的問題,如果需要CAN總線的相應的產品解決方案,隨時致電我們,期待與您的探討和交流。
-
CAN總線
+關注
關注
145文章
1951瀏覽量
130779 -
CAN
+關注
關注
57文章
2756瀏覽量
463751 -
波特率
+關注
關注
2文章
307瀏覽量
34152
發布評論請先 登錄
相關推薦
評論