国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

關于CAN隱患的爭辯

發布時間:2010-1-22 16:17    發布者:李寬
關鍵詞: CAN , 隱患 , 爭辯
關于CAN隱患的爭辯始于本刊發表的2篇文章,一是“CAN總線系統中的一種安全隱患”,一是“CAN消極報錯發送節點變為離線狀態的故障“。這2篇文章在送稿前已經發給國內外的一些專家征求意見,尚未有反駁的意見。由于此事聯系重大,涉及許多單位的利益,例如芯片供應商、開發工具供應商、ECU供應商、汽車制造商、高層協議供應商、高層協議產品提供商、各類服務提供商等等,為了防止這些單位由于既得利益的驅動有意無意地淡化疑問的嚴重性,須要一個獨立的代表第三者利益的機構來考察與評判疑問能不能存在,及其危害性。這個第三方利益就是終端用戶,例如汽車的駕駛與乘用人員、行人及與此有關的保險公司、道路管理單位等。因此,不僅應該告知CAN產業的有關方,也應告知利益有關方,才能得到正確的恰如其分的應對。基于此種考慮,筆者將2篇文章的英文稿送美國國家交通部公路交通安全管理處 (U.S.Department of Transportation,National Highwav Traffic Safety Administration)的網絡熱線,提請他們留心。后來這件事大概由他們轉到了國際標準化組織(ISO)。ISO的TC/22/SC3負責車用通信有關業務,其TC/22/SC3/WG1/TF1的組長是CiA的主席Zeltwanger先生。CiA曾有人作了回復,筆者也作了答復,最后由 Zeltwanger。先生轉來對此疑問的正式聲明作為答復。這是對疑問的答復,并不是對個人的答復,這個聲明是由ISO中國CAN專家組轉來的。(它的英文全文見本刊站點 www.mesnet.com.cn。)下面是Bosch聲明要素與筆者的觀點,在引述Bosch聲明時將力求準確。

Bosch聲明的標題是“它不是隱患,而是特色”(It's not a bug,it's a feature!)。在引用參考文獻[1—2]時說,“在那2篇文章中有一些對CAN協議故障約束機制,特別是對由消極報錯狀態下看到本地錯的關切。…… 在CAN總線上網絡流量很高以致連續幀之間不再有空閑時間時,以及消極報錯節點看到本地錯(即未被其他節點看到的錯)時,它將不能完成其消極報錯標志。后果是這個節點將不再能收發幀,直到它遇到空閑時間或其他節點發的主動報錯幀。消極報錯狀態的發送節點會由此而使出錯計數器加上去,直到達到離線狀態。…… 這是CAN協議故意要達到的行為。……2種要領企圖處理的是1個并不存在的疑問。”

上述引述與原文略有差異。總線上空閑的分布是不受控制的,尖峰負載也是不可控的,即使有部分空閑也不能保證消極報錯幀正確結束。尖峰負載是由消息到達時間的本質決定的,事件觸發消息的到達時間是隨機的,周期性消息的到達時間隨本地時鐘而變。例如,有2個原始相位相差5 ms的消息,它們的振蕩器相差200×lO-6,它們的相位差在25 s后就消散了。在某個公倍數時間點上,所有的消息就會有接近O的相位差,就形成CAN調度分析最壞響應時間時假定的最壞峰值負載。這種差異不影響對 Bosch聲明的進一步分析。就聲明的上述表述而言,“特色”、“故意要達到的行為”等語句實際上同意了等效離線和真實離線后果的存在,后面還有 Bosch對此行為的直接描述。不過,Bosch并不認為此后果是有害的,而是強調此后果的有利方面。

它說:“故障約束機制的目的是防止 有故障的節點干擾其余節點間的通信。”然后解釋了進入消極報錯狀態或離線狀態就可以達到上述目的。并說“1個因REC而進入消極報錯狀態的接收節點在成功收到1個無錯的消息后,它能切換回主動報錯狀態(見故障約束準則8),使它能至少再發1次主動報錯幀。”在談論總線負載應小于50%后,它說“尖峰負荷典型地是由總線上的擾動造成,此時通信要中斷一段時間,待發的傳送會累積起來。當擾動結束時,所有這些待發的消息將按它們的標識符一個接一個送出。……如果擾動是由有故障節點引起,并在節點進入消極報錯狀態結束,那么故障約束機制想要的功能是把該節點保持在消極報錯狀態,至少讓被該干擾推遲的所有消息發完,即尖峰負荷結束。

在這里,尖峰負荷并不隨著干擾的消散而消散,CAN作為一種事件觸發協議,負荷的分布完全是隨機的,50%負載的約束并不能防止 等效離線或真實離線狀況的出現,參考文獻[1]中引述的例子已證明了這一點。Bosch把引入消極報錯狀態的好壞后果混為一談。當節點進入消極報錯狀態后其報錯幀全是隱位,本來可以不再干擾其他節點的正常通信,沒有必要讓它退出通信。此外,在這一段表述中可以清楚地看到,CAN故障約束機制要讓被該干擾推遲的所有消息發完,至少要禁止消極報錯狀態節點發送(不管消極報錯狀態節點待發的消息優先級多高),這印證了參考文獻[1-2]的分析,但是它未提及接收也被禁止了。

現在大家都認識到引入消極報錯狀態是一個積極的要領,對此并無異議。而bosch只看到故障約束機制設計的有利方面,未留心到它在幀同步上造成通信服務缺失的后果。在聲明中對此只字未提。那么通信服務缺失的后果能不能是一個故障或bug?這應該由用戶根據其對運用 能不能有害來確定,并不能因把它稱為“特色”而改動。進一步研究表明存在后果嚴重的可能性。基本的線索是:車內存在嚴重的電源傳導干擾(ISO7637干擾類型D→CAN收發器在電源跌落時CANH— CANL差減少,會有寫“0”讀回“1”的bit錯→CAN協議發覺錯后發報錯幀的規定(即能重復發報錯幀)→CAN協議在報錯標志中發覺 bit錯時出錯計數器+8的規定。一個較長時問跌落就可以將節點推入消極報錯狀態(消極報錯狀態并非罕見)。然后一次本地故障把它推入失去服務能力的狀態。CAN總線失去服務后對運用 的危害的仿真已有文章報道,如在彎道上的外沖或急轉。而故障約束機制設計上的這個bug是造成這一危險的因素中的關鍵一環。

失去服務能力的后果破壞了實時控制運用 的基礎——正時性(timeliness)。現在許多運用 只容許少量數據的丟失,而且能容許數據丟失的運用 已經考慮了消息的冗余,若要考慮這樣長時間的失去服務能力,數據的冗余就要多得更多,這將顯著添加總線上的流量。要考慮這個bug,又要符合Bosch的50%的限定,使運用 進入更加為難的境地。

安全標準IEC61508、EN50159將在汽車行業推行,在執行這類標準時要從可靠性角度作故障的危害與風險分析。由于一個小故障會引起一個元件出錯或失效,元件的錯或失效造成部件出錯或失效,然后造成子系統出錯或失效,從而造成更上一層系統出錯或失效。必須分析清楚這個鏈并研究其出錯或失效的概率,才能判斷這個最原始的錯能不能會對安全構成威脅。CAN的這個故障是引起系統失效的一個非常典型的故障。在一般通信系統中,一個本地錯引起1幀的丟失,如該運用 上可容忍,失效的后果到此為止。然而CAN的這個故障有可能引起100個左右不同接收幀的丟失。不僅如此,它使該節點的所有幀都暫時不能發送,也就是說會影響到其他的控制系統的功能。例如,對CAN總線掛上ECU節點的不同方案,不能發送發動機轉速信號就會影響變速器、ABS、ASR、空調,輪速信號不能發送就可能影響電噴、變速器、ASR,變速比信號不能發送就會影響到電噴、ASR、廢氣再循環,含有網關的儀表板單元不能正常發送可能引起發動機不能點火。也就是說,由一個本地故障轉為一個節點失效,然后又轉為若干個功能失效。有些功能的失效會影響能耗或排放,或使設備運行不平穩,但有的功能會影響制動和轉向。

CAN總線失去服務能力會導致控制系統的失效。車輛是一個運動的物體,控制系統的失效會變為運動的失控,從而引起安全疑問。這對所有人都是沉重的壓力,采取審慎與觀望的態度是符合情理的,但如果CAN失去服務能力的流程存在,這個后果是回避不了的。

Bosch對惡性后果并未提及,這表示他們并未意識到這一點。參考文獻[1]提到,這一等效離線或真實離線的開始源于消極報錯狀態節點的消極報錯幀沒有足夠的時間結束。但可能的情景遠超過Bosch在CAN2.O規范中的描述,如果他們原來就已知有如此多的情景,就會把這些情景都包括在CAN2.O中。他們也沒有提醒過作調度分析工具軟件的人們,由于任何優先級的消息在此隱患發作時都失去服務能力,且進入消極報錯狀態不是罕見的事,那么調度的效果就很小了 ——木桶的底是漏的,其余板長短的影響已退居次要地位甚至失去意義。bug影響了工具理論基礎的完整性,調度的結果不能保證,就不能最終保證控制功能的實現。網上尚未見到Bosch有任何關于節點因故障約束機制設計而推遲收發的類似這次聲明的報道。因此,由于未充分估計到故障會引起如此壞的后果,只能說這是一個bug。

實際上,消極報錯狀態下出現壞后果及失去服務能力的毛病是可以克服的。參考文獻[1]提出了2種要領,也是Bosch聲明提到的2種要領。其實還存在其他可能的處理方案,例如將消極報錯幀分界符內的顯位不視為錯而視為超載幀的請求。此時經超載幀與其他節點的報錯幀重合,可以使消極報錯狀態節點快速和其他節點取得同步,但這樣做犧牲了超載幀占用的帶寬,并使其他節點蒙受一次出錯的不白之冤。所以參考文獻[1]提出的是較好的方案。在保持引入消極報錯狀態的優點時不必死抱

它的缺點。失去服務能力的疑問得以防止,由于這個因素造成的對CAN消息負載率的限定也可減少,這樣對大多數人都有優點。

已有的大量CAN運用 ,特別是那些現場條件較好,本身并非安全攸關的運用 (即使在汽車內,也有許多節點與安全聯系不大),對CAN隱患的討論不要恐慌,只需對自己的環境和運用 作評估,必要時補充作些測試即可。

對CAN隱患的討論并不是要徹底否定CAN。盡管CAN尚有其他疑問與不足,甚至較為嚴重的疑問,但它仍然是當前最好的協議。CAN最突出的優點是出錯自動重發功能。很久以來,關于事件觸發協議與時間觸發協議孰優孰劣的討論中人們傾向于認為時間觸發協議更為可靠,后者更適用于線控系統。但是研究表明,由于出錯自動重發功能的存在,CAN的消息不正確概率比重復送2次消息的TTCAN小多個數量級。有理由相信時間觸發的其他協議也會在類似的比較中顯得遜色,除非它們采用更為復雜的上層糾錯要領。上述bug使CAN的這一巨大性價比優勢變得無用,所以對CAN執行 改良是非常有價值的。現在誰作改良,誰就能處理當前的急需,也就有機會在未來勝出,這是一個重新洗牌的機會。這一爭辯由于Bosch的聲明而使事情變得明朗,國際國內對此作出自己的結論的時間已經同步。

綜合上述分析,筆者依然認為它是一個隱患。對我國IC、ECU、整車廠來說,必須加以重視并及時采取行動。決策是一個博弈的流程,落后將動搖消費者的信任,導致十分被動的境地。

參考文獻

1. 楊福宇 CAN 總線系統中的一種安全隱患 [期刊論文] -單片機嵌入式系統應用2009(1)
2. 楊福宇 CAN 消極報錯發送節點變為離線狀態的故障 2009(5)
3. Corno F A Multi-level Approach to the Ependability Analysis of CAN Networks for Automotive Applications 2004
4. Broster Ian.Burns Alan Rodr′?guez?Navas Guillermo.Comparing Real?time Communication under Electromagnetic Interference 2004
5. 劉亞飛 控制器局域網協議(CAN)技術隱患分析 2009(2)

作者:重慶工業自動化儀表研究所 楊福宇  來源:《單片機與嵌入式系統應用 》 2009(6)
本文地址:http://www.qingdxww.cn/thread-7887-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • Dev Tool Bits——使用MPLAB® Discover瀏覽資源
  • Dev Tool Bits——使用條件軟件斷點宏來節省時間和空間
  • Dev Tool Bits——使用DVRT協議查看項目中的數據
  • Dev Tool Bits——使用MPLAB® Data Visualizer進行功率監視
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人欧美一区二区三区视频xxx | 成人亚洲欧美日韩在线观看 | 羞羞视频在线免费 | 免费观看一区二区 | 亚洲欧美成人网 | 四虎国产精品永久在线 | 日韩精品久久久久久 | 亚洲综合香蕉 | 欧美日韩一区二区在线 | 欧美日韩免费看 | 国产高清精品91在线 | 亚洲欧美在线观看一区二区 | 欧美人与性动交a欧美精品 欧美人与禽zzz000xxx | 高清不卡| 亚洲日韩中文字幕天堂不卡 | 国产高清一区二区三区 | 日本欧美中文字幕 | 国产精品亚洲专区在线观看 | 国产精品夜间视频香蕉 | 久久er视频| www.四| 性视频福利在线看 | 久久福利影院 | 1024精品| 四虎影院色 | 日韩一区二区三区四区区区 | 小黄鸭视频网站 | 高清色本在线www | 国产对白精品刺激一区二区 | 久草精品视频在线播放 | www.黄色一片 | 欧美日韩在线一区二区三区 | 在线青草| 色亚洲影院 | 国内自拍经典三级在线 | 老鸭窝欧美一级一区二区 | 欧美亚洲视频在线观看 | 国产精品久久久久久麻豆一区 | 轻点灬大ji巴太粗太大了小说 | 一级人做人a爰免费视频 | 天天操夜夜拍 |