《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 通信協議標準FlexRay總線的功能安全性詳解
通信協議標準FlexRay總線的功能安全性詳解
來源:互聯網
摘要: 世界上90%的都采用基于CAN總線的系統,而FlexRay是下一代通信協議事實上的標準,它的功能安全性如何是至關重要的。本文就通信協議標準FlexRay總線的功能安全性進行詳細解析
Abstract:
Key words :

   在汽車中采用電子系統已經有幾十年的歷史,它們使汽車安全、節能與環保方面的性能有大幅度的提高。隨著研究的深入,許多系統需要共享和交換信息,為了節省線纜,就形成了依賴于通信的分布式嵌入系統。目前,世界上90%的都采用基于CAN總線的系統。FlexRay是下一代通信協議事實上的標準,它的功能安全性如何是至關重要的。

  1 IEC61508功能安全的要求

  目前車控系統正在向線控技術(xbywire)過渡,例如線控轉向與線控剎車。線控系統最終目標是取消機械后備,因為取消這些后備可以降低成本,增強設計的靈活性,擴大適用范圍,為以后新添功能創造條件。但是取消機械后備就對電子系統的可信賴性(dependability)要求大為提高。車是一個運動的物體,處于運動的環境之中,它因故障可能傷及自身及別人。取消機械后備,就將電子系統由今天的故障靜默(failsilent)要求提升到故障仍工作(failoperational)的要求。

  國際上對工業應用的功能安全要求已制定了標準IEC61508,它主要關心被控設備及其控制系統的安全。雖然它也適用于汽車,但汽車不僅有上述功能安全問題,而且要關心由于功能變化造成的整車系統安全,所以汽車業內正在制定相應的標準ISO26262。汽車的功能安全等級分為4級,要求最高的是 ASILD,相應的失效概率<10-8/h,它相當于IEC61508的SIL3。根據實踐經驗,分配給通信的失效概率<10-10/h。有關這方面的介紹可參見參考文獻。

  現在安全攸關的應用系統的范圍有所擴大,以前不算在內的一些系統現在都要算了。例如安全預先動作系統(presafe)中座椅調整子系統、剎車輔助系統中的燈光控制子系統、碰撞后telematic自動呼叫求援的子系統,都將視為安全攸關系統。

  1.1 引起系統安全風險的通信故障

  通信故障有5種表現形式,第1種是造成值域的錯誤。第2種是造成時域的錯誤,這是工業不同于民用的部分。一條消息不能在預定的時限前送達就失去了實用意義,例如與安全氣囊引爆有關的傳感器消息不能在數ms內送達就引起安全問題。在多播或廣播通信中還有第3種錯誤:數據完整性錯(拜占庭錯),即各節點收到的結果不一致。它會引起系統性的失效,應對的策略必須將所有有關節點同時考慮。第4種是系統崩潰,除硬件失效外,也有干擾或軟件引起的,例如饒舌錯(babbling idiot)阻止通信。第5種是丟幀,短時間失效,例如可恢復的離線或bug引起的等效離線狀態,又如小集團錯。

  1.2 通信的容許失效率

  在通信故障對系統安全影響的分析上,參考文獻提供了一種方法,根據瞬態干擾出現的可能長度,計算通信失效的時段長,在假定的通信失效率下,推出系統的失效率。在該實例中,路段上電場超100 V/m的區間有可能引起通信失效,失效率近似5×10-3,車速為90 km/h,識別出的可能失效時間約74 s。通信以6 ms為周期,連續7個周期丟幀視為系統失效,在此條件下系統失效率為1.640 9×10-10,認為可以達到SIL4的安全要求。這種分析方法是有效的,但是假設的條件太多,例如:誤碼率有很大的變化區間;幀長的變化影響一次傳送的失效率;干擾持續時間的假定;連續丟7幀也與應用的場合有關,對90 km/h的車42 ms的失控對剎車系統而言有約1 m的距離,恐怕對撞擊的后果有完全不同的評估;還假設SIL4完全分配給通信,將CPU與軟件有關的部分失效率忽略不計,在軟件規模越來越大的今天,這個假設是不合理的。另一方面,決定系統失效率時還應考慮其他的通信故障形式,例如出現小集團錯到發生沖突的時間取決于相對的時鐘漂移,越精確,其間時間越長,失效的時間就越長,參考文獻中在人為制造出小集團后需300 ms才發現沖突,遠遠超出上述的42 ms。所以一般討論系統安全的文章中都單獨規定通信的失效率是相應安全等級失效率的1/100。

  1.3 影響通信失效率的因素

  功能安全等級與故障檢測的覆蓋率有關,如果有的故障未被檢查到(未認識到或做不到),當然那種失效情景就不可能計算在內,安全等級的劃分就有錯。

  參考文獻介紹了SFF(Safety Failure Fraction)的概念:失效分為引起危害的失效和安全失效,它們又各分為能檢測出和未檢測出兩種。安全失效比例SFF是能檢測出危害失效與安全失效在總的失效中的份額。診斷覆蓋率DC(Diagnostic Coverage)是能檢測出的危害失效占總危害失效的份額。可導出SFF與DC有線性關系。而SFF又與SIL有關。IEC61508的SIL等級與 SFF有關,在SFF占90%~99%時SIL3可容許1個故障。因此DC也決定了能達到的SIL等級。根據有關文章介紹,瞬態故障的概率比硬件失效概率大2個數量級,因此可大致推斷瞬態故障診斷覆蓋率應達到90%~99%。危害失效可能由通信失效引起,診斷覆蓋率也就成了評價通信協議的重要一環。

  在通信中,由于CRC有漏檢,這是明顯的診斷未覆蓋區,診斷未覆蓋率就相當于錯幀漏檢率,例如CAN的錯幀漏檢。

  在通信中發生值域錯或時域錯而丟幀是能診斷出的危害失效(這是本文分析的主要對象)。而假冒錯、拜占庭錯等應屬于未檢測出的危害失效。發生小集團錯時既可能產生丟幀,也可能產生拜占庭錯。CAN的等效離線失效也屬于未覆蓋的診斷引起的危害失效。要計算這些未覆蓋的診斷引起的危害失效占總危害失效的比例還相當困難,因為確定故障概率模型很難。但從定性上講,只有盡量排除假冒錯、拜占庭錯和小集團錯,才能使診斷覆蓋率提高(SIL等級提高)。

  2 FlexRay介紹

  由于線控技術可以提高車的操控性能,降低生產和使用成本,提升安全性、節能、環保和舒適度,成為整車技術進步的重要一環。但是為了取消機械或液壓的后備,對控制裝置及其通信的可靠性的要求大為提高。這就對通信的帶寬和確定性有更嚴的要求,CAN總線不能滿足這個帶寬要求,在確定性上也不足,于是就產生了 FlexRay技術。根據標準,FlexRay可以有總線、星型、樹狀等拓撲結構。它提供了雙通道的控制器結構,可組態為冗余通信,也可各通道獨立運行,有很大的靈活性。每個通道最高可組態工作于10 Mb/s。FlexRay是時間觸發通信協議,由分布式時鐘實現同步。系統的調度表由cycle\\static slot\\minislot確定。一個cycle有固定數目的static slot和minislot,它們的時間長度都是均等的,由組態時確定。一個節點在一個cycle中可以占用多個static slot,static slot可以散接(multiplxing),即各個cycle的同一static slot可以用于不同節點。FlexRay幀的數據域(payload)可達254字節,它的頭部為標識符及幀長等控制信息,有獨立的CRC檢驗,尾部有覆蓋全幀的24位CRC檢驗。FlexRay有對抗時域錯的Bus Guardian設計。

  關于FlexRay的缺點或弱點,參考文獻提到物理層連接的困難,影響到信號完整性,實際上能較易使用的是有源星型,但這帶來成本的提高;cycle設計約束多,帶來困難;同步和啟動節點配置與容錯有關,是挑戰;由于資源有限,升級演進時很困難(并非像以前強調時間觸發協議的 composability優點——筆者注)。參考文獻介紹了在FlexRay中產生各自獨立的時鐘同步小集團的可能性,也就是說雖然各節點都在通信,但是2個集團間無有效通信,是一種故障狀態。解決辦法是用3個冷啟動節點、3個同步節點,但是這與時間同步容錯的要求矛盾。還有就是將調度表排滿,以免形成小集團,這也與留有余地供將來升級擴充的要求矛盾??傊袩o徹底解決方案。再有就是時鐘可能產生同向漂移,與應用時鐘的差造成幀未能就緒或覆蓋引起漏幀。FlexRay雖然是為高可信性設計的,但是在傳送中出錯后處理要通過應用層解決,這帶來新的問題,本文將分析如果不作處理會怎么樣。

  3 Audi和BMW的FlexRay總線應用的功能安全等級

  BMW和Audi是首批批量使用FlexRay總線的車廠,它們的具體用法尚未查到,但是參考文獻給出了部分使用參數,可以以此作一些初步分析。

  3.1 Audi的參數

  Audi的cycle為5 ms,每個cycle有62個static slot,slot用于傳送42字節payload的幀,靜態段為4.03 ms。有8個ECU共傳送220個協議數據單元(PDU)。這些PDU經組合,最后在27個slot中傳送。由提供的周期分布可見5 ms消息為8個,10 ms消息為1個,20 ms消息為7個,40 ms消息為6個,其余更長周期的消息先忽略。

  由payload可以算出使用的幀長為500位,假定誤碼率為ber=1×10-7(這在銅線中已是相當好的了),那么誤幀率為fer=5×10-5/frame。

  由周期可算出每小時傳送的幀數為n=7.92×105frame/h。假定通信用2個通道同時傳送,那么同時失敗的概率為fer2=2.5×10-9/frame。1小時內所有幀均成功傳送的概率為:P=(1-fer2)n。

  1小時內有1次以上錯的概率為1-P≈fer2×n=2.5×10-9×7.92×105/h=1.98×10-3/h。SIL2的安全等級要求是系統失效概率為10-7/h,分配到通信上為10-9/h,由此可見存在巨大的差距。

   3.2 BMW的參數

  參考文獻[7]也間接給出了BMW的參數:cycle為5 ms,每個cycle有91個static slot,slot用于傳送16字節payload的幀,實際使用的payload為8字節,共有227個PDU。由2.5 ms消息占4%及使用10個slot知,這些PDU沒有合并。由提供的周期分布可見5 ms消息為62個,10 ms消息為45個,20 ms消息為80個,40 ms消息為38個,其余更長周期的消息先忽略。

  各個消息的payload長度是不同的,由這個分布,在假設誤碼率為ber=1×10-7時可以算出各自幀長與誤幀率,再算出平均誤幀率 fer=1.51×10-5/frame。假定通信用2個通道同時傳送,那么同時失敗的概率為fer2=2?28×10-9/frame。由周期算出傳送幀數為n=2.79×106/h。同樣算出1小時內有1次以上錯的概率為1-P≈fer2×n=2.28×10-9×2.79×106 /h=6.36×10-3/h,也遠大于SIL2分配給通信的要求。

  4 主動重發方案的可行性

  有2位作者建議了主動重發的方案,其一見參考文獻。主動重發在概念上就是時間上的冗余,幀不但在不同的物理通道上重發,也在不同的時段上重發。由此來分析第3節的兩種情況。

  4.1 Audi

  當每幀被安排用2個static slot傳送時,2個通道將有4次傳送,同時失敗的概率將小得多,為fer4=6.25×10-17/frame。實際傳送的幀數加倍,但內容未加倍,故計算仍按n進行,1 h內有1次以上錯的概率為1-P≈fer4×n=6.25×10-17×7.92×105/h=4.95×10-11/h。這可以滿足SIL2分配給通信的要求。

  理論上,原來的應用占用了27/62的static slot,現在加倍為27/31也還夠用,但是由于消息送達時限的限制,將使調度變得十分困難,是否有解尚無定論。留給將來擴展升級的空間很小,已經表現出FlexRay的帶寬不夠。

  4.2 BMW

  采用主動重發一次時,1 h內有1次以上錯的概率為1-P≈fer4×n=5.19×10-18×2.79×106/h=1.45×10-11/h。這可以滿足SIL2分配給通信的要求。

  但是,原來BMW已占用了2/3的static slot,根本沒有足夠的空余slot可供主動重發。例如BMW的靜態段為3 ms,在2.5~3 ms中總共可安排0.5/3×91=15個slot,它的2.5 ms的消息已占去10個slot,就不可能對它再作冗余傳送。這也說明FlexRay的帶寬不夠。

  5 與CAN總線的比較

  參考文獻中的BMW系統數據,若用CAN標準幀傳送,可推算出需要的帶寬至少為2.8 Mb/s,明顯顯示CAN總線帶寬不足。但是CAN總線的出錯自動重發機制卻使系統的通信可靠性遠勝于FlexRay。

  例如在ber=1×10-7時,CAN總線幀長為108位,誤幀率為fer=1.08×10-5/frame。在傳送幀數為n=2.79×106/h時(假定用多條總線滿足帶寬)出錯的幀有31幀,這31幀重發2次,則全錯的概率為31×fer3=31×1?26×10-15=3.9×10-14,遠小于SIL2分配給通信的份額。

  而且,如果原來的調度分析留有足夠2幀的出錯自動重發時間,也可以算出對送達時間的影響不大。送達時間變化大的是低優先級消息,對高優先級消息影響很小。例如10條2.5 ms周期消息的送達時間約1.2 ms(考慮到填充位與服務間隔),在2.5 ms內1條消息出錯自動重發2次也只會使送達時間增加到1.5 ms左右。

  CAN總線的出錯自動重發機制與主動重發方案相比,需要增加的帶寬很小,幾乎是后者的萬分之一。

  6 FlexRay總線的錯幀漏檢

  參考文獻對CRC的檢驗強度有討論。在假定錯均勻分布時,2-k是未檢出錯的上界,其中k是校驗和長度,對FlexRay來講k=24,2-24=5.9×10-8。如果位錯不相關,概率強度還要乘上(ber×幀長)HD,其中HD是CRC多項式的海明距離。以1 h計算時要乘1 h內的幀數。按標準,在payload小于248字節時HD=6。按此計算如下:幀長=256字節=2 560 bit,考慮到idle時間,計算每小時幀數時以每幀2 600 μs計,故每小時有3 600/260×106=1.38×107幀。每小時總的漏檢幀為1.38×107×5.9×10-8×(ber×2 560)6=0.81×(ber×2 560)6。ber=10-7時為2.27×10-22,ber=10-5時為2.27×10-10。干擾不是很強,幀也較短時,FlexRay的錯幀漏檢部分還是能滿足SIL2分配給通信的要求。

  7 小結

  計算表明,在ber=1×10-7時FlexRay通信的功能安全等級還離要求很遠,另外還有小集團錯、時鐘漂移等問題。此外,由于FlexRay沒有 CAN總線那樣簡潔高效的報錯機制,如果沒有主動重發方案,那么接收節點間由于局部錯引起的拜占庭錯造成的失效概率增加。由此看來,FlexRay要完全實現其設計目標還有不少工作要做。更長遠來看,需要在用工業以太網實現100 Mb/s速度的同時解決FlexRay現存的問題。

  本文分析討論的方法也適用于其他現場總線或工業以太網,許多協議都是基于類似FlexRay的時間觸發方式,它們的安全性倚賴于高層“安全協議”。這些基于“黑通道(black channel)”的“安全協議(safety protocol)”一般按照歐洲標準EN501592添加了一些判錯的措施,如對重復、丟幀、加插、次序錯、數據錯、延遲和假冒錯采用加流水號、時間戳、定時器、標識符、地址、附加簽名等方法。另一些安全協議僅僅考慮了硬件鏈路故障與恢復,只是通信故障的一種形式。但是這些措施依然是不夠的,沒有覆蓋故障樹的所有分支。對于其他形式,例如出現局部錯后的拜占庭失效、出現饒舌錯后的停止服務、出現小集團錯后的局部停止服務等,均未處理。有些錯可以在應用中發現,但受應用所在的host的時間特性的限制,可能已錯失時限,無法糾正錯誤。在通信層面,它們嚴重影響到診斷覆蓋率,也直接影響到SIL等級。即使在流程工業,消息的周期較長,用主動重發方案可以使出錯結果減少(現在的一些應用恐怕還沒有這樣做),有些錯(如拜占庭錯)依然是不可承受的,特別是涉及一些邏輯信號的傳送。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产深夜福利视频观看 | 成年人免费大片 | 91久久精品国产一区二区 | 91av小视频 | 99国产国人青青视频在线观看 | 日韩在线观看中文字幕 | 亚洲精品99久久一区二区三区 | 国产不卡在线播放 | 久草最新在线 | 毛片1毛片2毛片3毛片4 | 免费一级毛片在播放视频 | 日韩偷拍自拍 | 在线观看中文字幕国产 | 国产视频在线免费观看 | 男女男在线精品网站免费观看 | 亚洲综合99 | 台湾三级香港三级在线理论 | 亚洲国产精 | 午夜影院欧美 | 91成人在线免费视频 | 欧美色成人tv在线播放 | 欧美一二三 | 欧美午夜免费一级毛片 | 老妇综合久久香蕉蜜桃 | 亚洲国产精品成人综合久久久 | 免费一级a毛片在线播放 | 性欧美一级毛片 | 操12p| 成人性一级视频在线观看 | 韩国美女一级片 | 久久久久久综合一区中文字幕 | 一区二区三区四区国产精品 | 午夜精品视频在线观看美女 | www.av在线.com| 99久久香蕉国产综合影院 | 午夜宅男在线永远免费观看网 | 精品成人一区二区三区免费视频 | 最新国产午夜精品视频不卡 | 香蕉自拍视频 | 一级毛片在线不卡直接观看 | 欧美一级成人影院免费的 |