<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 車載網(wǎng)絡(luò)技術(shù)革新-CAN FD淺析

          車載網(wǎng)絡(luò)技術(shù)革新-CAN FD淺析

          作者: 時間:2016-12-19 來源:網(wǎng)絡(luò) 收藏
            1.引言

            隨著電子、半導(dǎo)體、通訊等行業(yè)的快速發(fā)展,汽車電子智能化的訴求也越來越強(qiáng),消費者希望駕駛動力性、舒適性、經(jīng)濟(jì)性以及娛樂性更強(qiáng)的汽車。汽車制造商為了提高產(chǎn)品競爭力,將越來越多的電子控制系統(tǒng)加入到汽車控制中,例如ESP(Electronic Stability Program,電子穩(wěn)定程序)、PEPS(Passive Entry Passive Start無鑰匙進(jìn)入和啟動系統(tǒng))等。但是由于CAN總線的最高傳輸速率為1Mbit/s(通常汽車CAN系統(tǒng)的實際使用速率最高為500kbit/s),ECU(Electronic Control Unit,電子控制單元)的大量增加使總線負(fù)載率急劇增大以致造成網(wǎng)絡(luò)擁堵,影響信息傳輸?shù)目煽啃院蛯崟r性。
            不同的汽車,根據(jù)其級別、類型和配置的不同,ECU的數(shù)量和網(wǎng)絡(luò)拓?fù)涠疾槐M相同。圖1所示的網(wǎng)絡(luò)拓?fù)錇榻?jīng)濟(jì)型轎車中常見的網(wǎng)絡(luò)拓?fù)?,因為所有的ECU都在同一個CAN網(wǎng)段上,其總線負(fù)載率可能高達(dá)50~60%,而一般情況下,CAN總線負(fù)載率在30%左右時網(wǎng)絡(luò)系統(tǒng)的性能相對較好,否則會增大報文延遲、降低系統(tǒng)的擴(kuò)展性,尤其對于實時性要求較高的安全系統(tǒng),高負(fù)載率甚至可能影響汽車行車安全;另一方面,CAN總線的位填充規(guī)則會對CRC(Cyclical Redundancy Check)造成干擾,引起錯誤幀漏檢,使信息傳輸?shù)目煽啃赃_(dá)不到預(yù)期的設(shè)計要求,因此CAN總線將不能滿足日益增長的汽車網(wǎng)絡(luò)需求。

          本文引用地址:http://www.ex-cimer.com/article/201612/331249.htm

            圖1汽車CAN總線網(wǎng)絡(luò)拓?fù)?/p>

            為解決帶寬與可靠性的需求,有人提出在汽車網(wǎng)絡(luò)中使用新的總線協(xié)議替代CAN總線,例如安全系統(tǒng)中使用FlexRay總線、娛樂系統(tǒng)中使用MOST總線,但需要重新開發(fā)控制器軟硬件、重新設(shè)計車載網(wǎng)絡(luò)系統(tǒng)等,這無疑會增加汽車制造商的開發(fā)成本,降低其市場競爭力,因此在目前車載網(wǎng)絡(luò)系統(tǒng)的基礎(chǔ)上對CAN總線進(jìn)行改進(jìn)顯得尤其迫切。
            2011年Bosch發(fā)布了CAN替代總線--CAN FD (CAN with Flexible Data-Rate) 1.1版。CAN FD比CAN總線的帶寬更高,具有與CAN總線相似的控制器接口,這種相似性使ECU供應(yīng)商不需要對ECU的軟件部分做大規(guī)模修改,降低了開發(fā)難度和成本。CAN FD是CAN總線的升級換代設(shè)計,它繼承了CAN總線的主要特性,提高了CAN總線的網(wǎng)絡(luò)通信帶寬,改善了錯誤幀漏檢率,同時可以保持網(wǎng)絡(luò)系統(tǒng)大部分軟硬件特別是物理層不變。CAN FD協(xié)議充分利用CAN總線的保留位進(jìn)行判斷以及區(qū)分不同的幀格式[1]。在現(xiàn)有車載網(wǎng)絡(luò)中應(yīng)用CAN FD協(xié)議時,需要加入CAN FD控制器,但是CAN FD也可以參與到原來的CAN通信網(wǎng)絡(luò)中,提高了網(wǎng)絡(luò)系統(tǒng)的兼容性。
            2.CAN FD介紹
            引入CAN FD協(xié)議,對當(dāng)前CAN網(wǎng)絡(luò)系統(tǒng)物理層的改動較小,但是可以明顯提高數(shù)據(jù)的串行通信速率, CAN FD與文獻(xiàn)【2】中提到的方法近似,即通過改變幀的格式增加總線帶寬:一種方式為加長數(shù)據(jù)場長度減少報文數(shù)量降低總線負(fù)載率;另一種方式為縮短位時間提高位速率。
            CAN FD在數(shù)據(jù)幀內(nèi)部采用兩種不同的位速率,即在仲裁段(Arbitration-Phase)采用標(biāo)準(zhǔn)CAN位速率通信,在數(shù)據(jù)段(Data-Phase)采用高速率通信。
            2.1CAN FD的幀格式

            (a)標(biāo)準(zhǔn)幀格式

            (b)擴(kuò)展幀格式

            數(shù)據(jù)場數(shù)據(jù)字節(jié)小于16時CRC為17位

            圖2 CAN FD數(shù)據(jù)幀格式

            對比CAN總線幀格式,CAN FD幀增加或改變了一些位的功能,包括:
            ◆EDL(Extended Data Length)擴(kuò)展數(shù)據(jù)長度,在標(biāo)準(zhǔn)的CAN幀中,控制場包含的保留位被指定為顯性位發(fā)送,但是在CAN FD幀中,如圖2(a)標(biāo)準(zhǔn)幀IDE位之后的保留位或者圖2(b)擴(kuò)展幀中RTR位之后的保留位被定義為EDL并以隱性位發(fā)送,EDL主要用于區(qū)分標(biāo)準(zhǔn)CAN幀格式和CAN FD的幀格式。由于在CAN FD中EDL總是以隱形位發(fā)送,后面的位r0為顯性位,因此可在BRS(Bit Rate Switch)位速率開關(guān)位之前提供一個重同步沿,這個沿也可用于在收發(fā)器延遲補(bǔ)償中測量收發(fā)器的延遲;
            ◆r1,r0,保留位并以顯性位發(fā)送,在CAN FD中接收節(jié)點忽略r1和r0位的值;
            ◆BRS(Bit Rate Switch)位速率轉(zhuǎn)換開關(guān),當(dāng)BRS為顯性位時數(shù)據(jù)段的位速率與仲裁段的位速率一致,當(dāng)BRS為隱性位時數(shù)據(jù)段的位速率高于仲裁段的位速率;
            ◆ESI(Error State Indicator)錯誤狀態(tài)指示,主動錯誤時發(fā)送顯性位,被動錯誤時發(fā)送隱性位。
            CAN FD協(xié)議中沒有遠(yuǎn)程幀,標(biāo)準(zhǔn)CAN幀中的RTR位由保留位r1(顯性位)替代,因此可將CAN遠(yuǎn)程幀用于CAN FD系統(tǒng)中。
            CAN FD一幀最多可以傳輸64個字節(jié),因此DLC將重新定義CAN FD的數(shù)據(jù)長度,值的范圍將由原來的0000b~1000b(覆蓋8個字節(jié))擴(kuò)大至0000b~1111b以滿足需求,表1所示為DLC數(shù)值與字節(jié)數(shù)的對應(yīng)關(guān)系。

            表1 DLC值與字節(jié)數(shù)對應(yīng)表

            2.2CRC算法
            CAN總線通常進(jìn)行位填充以保持同步,但是位填充會干擾CRC的計算,從而造成錯誤漏檢率達(dá)不到設(shè)計目標(biāo)。因為有兩種位錯誤在個別的情況下檢測不出來,一種位錯誤產(chǎn)生位填充條件,另外一種位錯誤失去位填充條件,這兩種位錯誤都會改變幀位。CAN FD為了避免這種錯誤,對CRC算法做了改進(jìn):將填充位納入到CRC計算中,即CRC以含填充位的位流進(jìn)行計算,以一個填充位開始并且序列每4位插入一個填充位加以分割,且填充位的值是上一位的反碼。作為格式檢查,如果填充位不是上一位的反碼,就報錯處理。


          上一頁 1 2 下一頁

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();