如今,,汽車行業(yè)變革迅猛,,汽車的設(shè)計(jì)、使用和銷售模式都在快速演變,。駕駛員安全技術(shù),、交通擁堵,、環(huán)境問題及汽車作為代步工具的基本前提都影響著新一代汽車的研發(fā)。為解決這些難題,,很多汽車廠商都試圖強(qiáng)化計(jì)算能力以優(yōu)化車輛控制,。歐盟新車安全評鑒協(xié)會(huì)(EuroNCAP)頒布的新標(biāo)準(zhǔn)規(guī)定,車道變換支持等安全輔助功能是獲得五星安全評級的必要條件,。車載處理器的數(shù)量在所有細(xì)分市場都穩(wěn)步上升,,目前平均為40-50個(gè),而一些高端車型則已經(jīng)搭載近120個(gè)處理器,。據(jù)Semicast Research預(yù)測,,到2022年,,僅發(fā)動(dòng)機(jī)引擎罩下的電子控制單元(ECU)組件就將達(dá)到近860億美元的市場規(guī)模,相較2015年的530億年復(fù)合增長率達(dá)到7%,。半導(dǎo)體廠商將有機(jī)會(huì)在汽車電子領(lǐng)域挖掘一大桶金,。
高科技芯片可以改善動(dòng)力系統(tǒng)排放、增強(qiáng)安全性能,、并利用蜂窩網(wǎng)絡(luò)實(shí)現(xiàn)車輛間及道路基礎(chǔ)設(shè)施之間的互聯(lián),。但是,隨著系統(tǒng)的復(fù)雜化,,保證駕駛員安全就變得更為關(guān)鍵,,必須打造更加自動(dòng)化,系統(tǒng)化,,且能患于未然的解決方案——即我們通常所稱的“功能安全”,。
什么是功能安全?
簡而言之,,功能安全的最終目的是確保產(chǎn)品安全運(yùn)行,,即便出現(xiàn)問題也可以繼續(xù)保駕護(hù)航?;谶@一理念,,ARM將保證安全視為頭等大事,而非單純依照市場導(dǎo)向隨波逐流,,不斷加強(qiáng)研發(fā),,推出更多功能安全相關(guān)產(chǎn)品。
各行各業(yè)都會(huì)制定標(biāo)準(zhǔn),,指導(dǎo)未來發(fā)展并限定最低準(zhǔn)入門檻,。在汽車電子行業(yè),這一標(biāo)準(zhǔn)就是ISO 26262,,它將功能安全定義為:
“避免因電氣/電子系統(tǒng)故障而導(dǎo)致的不合理風(fēng)險(xiǎn)”。
不同領(lǐng)域的標(biāo)準(zhǔn)并不完全一致,,例如針對電氣和電子系統(tǒng)的IEC 61508以及飛行器電子硬件的DO-254都有各自的定義方式,。更需值得注意的是,它們都擁有專用術(shù)語,,并提供了包括目標(biāo)參數(shù)在內(nèi)的工程研發(fā)指導(dǎo),。因此,開始產(chǎn)品研發(fā)前確定目標(biāo)市場并制定合適的流程至關(guān)重要,,因?yàn)橹型拘薷难邪l(fā)流程必然會(huì)導(dǎo)致效率低下,。圖1展示了硅片IP的不同應(yīng)用標(biāo)準(zhǔn)。實(shí)際操作中,,如果需要滿足多套標(biāo)準(zhǔn),,則可以求同存異,先列出專屬需求,再執(zhí)行質(zhì)量管理等通用準(zhǔn)則,;最一開始就要做到安全第一,。
圖1:硅片IP的功能安全標(biāo)準(zhǔn)
實(shí)際操作中,功能安全系統(tǒng)必須由獨(dú)立評估員認(rèn)證,,符合所有安全標(biāo)準(zhǔn),。實(shí)現(xiàn)功能安全需要具備預(yù)測能力的故障模式,實(shí)時(shí)判斷系統(tǒng)狀態(tài)是功能完整,,部分功能損壞,,還是系統(tǒng)必須關(guān)閉進(jìn)行重啟或重置。
并不是所有故障都會(huì)立刻引發(fā)嚴(yán)重事故,。比如,,汽車動(dòng)力轉(zhuǎn)向系統(tǒng)故障可能會(huì)導(dǎo)致突發(fā)性的錯(cuò)誤轉(zhuǎn)向,但是由于電氣和機(jī)械設(shè)計(jì)天然的時(shí)間延遲,,故障并不會(huì)馬上產(chǎn)生后果,,這一延遲通常是幾毫秒以上,ISO 26262將之定義為容錯(cuò)時(shí)間間隔,,間隔長短取決于潛在的事故類型和系統(tǒng)設(shè)計(jì),。所以,不難理解,,對系統(tǒng)安全要求越高,,產(chǎn)生不安全事件的故障就越應(yīng)該避免。
理想情況下,,功能安全不會(huì)影響系統(tǒng)性能,;但現(xiàn)實(shí)生活中,現(xiàn)行的許多安全措施都會(huì)嚴(yán)重影響系統(tǒng)性能,、功率和面積(PPA),。如何在保證功能安全的前提下減輕對系統(tǒng)性能的不利影響以及設(shè)計(jì)制造成本的上升,是設(shè)計(jì)師們面臨的一大難題,。
為什么需要功能安全,?
芯片IP的功能安全曾是非常小眾的領(lǐng)域,只有少數(shù)汽車,、工業(yè),、航空航天和其他類似市場的芯片與系統(tǒng)開發(fā)商感興趣。然而,,隨著過去幾年各類汽車應(yīng)用的興起,,情況已經(jīng)發(fā)生巨大變化。除了汽車外,,還有很多其他行業(yè)也能從電子器件的增加受益,,當(dāng)然保障功能安全是大前提,。醫(yī)療電子和航空就是兩個(gè)典型例子。
自動(dòng)駕駛過去幾年吸引了不少人的眼球,,但一直是霧里看花,;如今,隨著高級駕駛輔助系統(tǒng)(ADAS)及富媒體車載信息娛樂系統(tǒng)(IVI)的普及,,盡管高度自動(dòng)化駕駛的時(shí)代依然遙遠(yuǎn),,但自動(dòng)駕駛汽車的前景已變得愈發(fā)清晰。尺寸形狀各異的無人機(jī)和日益普及的物聯(lián)網(wǎng)也是亟需功能安全的領(lǐng)域,,ARM 的技術(shù)將成為一大助力,。
ARM功能安全技術(shù)
與其他技術(shù)市場一樣,新興的功能安全應(yīng)用也需要半導(dǎo)體的驅(qū)動(dòng),;這并不是紙上談兵,,日新月異的產(chǎn)品創(chuàng)新已經(jīng)引起了ARM合作伙伴的濃厚興趣。多數(shù)功能安全嵌入式系統(tǒng)都需要具備安全防護(hù)及實(shí)時(shí)處理兩大核心要素,,ARM Cortex-R系列處理器為此需求量身定制,,為嵌入式系統(tǒng)提供高性能運(yùn)算解決方案,確保產(chǎn)品的高可靠性,、高可用性,、容錯(cuò)、以及/或強(qiáng)大實(shí)時(shí)自主判斷能力,。這些特性為實(shí)現(xiàn)ADAS和IVI系統(tǒng)的高安全完整性打下基礎(chǔ),,不僅可以執(zhí)行關(guān)鍵行為處理,應(yīng)對安全相關(guān)的中斷事件,,與其他系統(tǒng)通訊,,還可以對集成度較低的復(fù)雜功能進(jìn)行監(jiān)管。
什么是故障,?
故障可能是系統(tǒng)性的(如規(guī)范制定和設(shè)計(jì)過程中的人為因素),;也有可能與使用的工具有關(guān)。減少故障的一種方法是執(zhí)行嚴(yán)苛的質(zhì)量管控流程,,必須包括詳細(xì)的規(guī)劃,、審查和量化評估。合理的規(guī)劃使用工具認(rèn)證非常重要,,管理與追蹤需求變更的能力也同樣關(guān)鍵。ARM的Compiler 5編譯器已經(jīng)通過南德集團(tuán)(TüV SüD)認(rèn)證,,助力安全研發(fā),,客戶無需對編譯器進(jìn)行額外認(rèn)證。
還有一種故障類型被稱為隨機(jī)硬件故障,。它們可能是圖2顯示的永久性故障,,比如短路,;也有可能是由于天然輻射而造成的軟性故障。這類故障可以利用集成在軟硬件的方案進(jìn)行處理,,因此系統(tǒng)級的技術(shù)也同樣重要,。舉例來說,邏輯內(nèi)建自測試(BIST)可以應(yīng)用于系統(tǒng)啟動(dòng)和關(guān)閉,,區(qū)分軟性和永久性故障,。
圖2:故障類型
應(yīng)對措施
故障檢測和控制措施的選擇和設(shè)計(jì)是流程設(shè)計(jì)師最喜歡的環(huán)節(jié),因?yàn)樗麄兛梢酝瑫r(shí)用系統(tǒng)級和微架構(gòu)級的技術(shù)大展手腳,。建立故障模式概念和效果分析(FMEA)是個(gè)不錯(cuò)的開始,,列舉出所有可能出現(xiàn)的故障模式及其后果的嚴(yán)重程度。有了這些信息,,加上設(shè)計(jì)師對復(fù)雜系統(tǒng)的深入理解,,即可鑒別出最嚴(yán)重的故障模式,并設(shè)計(jì)出應(yīng)對措施,。
應(yīng)對潛在故障的方法較多,,下面列出了一些最常用的技術(shù):
·多樣化檢查器:使用另一條電路檢查主電路是否發(fā)生故障。舉個(gè)例子,,檢查器可以為中斷控制器計(jì)數(shù),,持續(xù)記錄人為及系統(tǒng)引起的中斷總數(shù)。
·完整鎖步復(fù)制:該技術(shù)主要用于Cortex-R5處理器,,對一個(gè)IP元件(如一個(gè)處理器)進(jìn)行多次實(shí)例化,,利用循環(huán)產(chǎn)生操作延遲,生成時(shí)間和空間冗余,。大容量存儲(chǔ)通常由多個(gè)實(shí)例共享,,以降低所需面積。盡管這一技術(shù)非??煽?,但也極為昂貴。
·選擇性硬件冗余:這個(gè)方案里,,只有硬件的關(guān)鍵部分可以復(fù)制,,如仲裁器。
·軟件冗余:硬件冗余通常非常復(fù)雜,,而且會(huì)產(chǎn)生間接成本,,是對資源的不合理使用。硬件運(yùn)算的替代方法就是,,在多個(gè)處理器內(nèi)核上運(yùn)行同一次計(jì)算,,檢查結(jié)果是否匹配。
·錯(cuò)誤檢測和校正碼是另一種為人熟知的技術(shù),,通常被用于保護(hù)存儲(chǔ)器和總線,。代碼類型多種多樣,,但目標(biāo)只有一個(gè),既通過少量附加位獲得更高冗余,,無需復(fù)制所有底層數(shù)據(jù),。汽車系統(tǒng)中,這一尖端技術(shù)可以利用足夠多的冗余檢測出一個(gè)存儲(chǔ)字的2位錯(cuò)誤,;并支持錯(cuò)誤修正,。
故障日志
檢測出故障后就必須進(jìn)行記錄,以幫助監(jiān)管軟件判斷系統(tǒng)的健康和安全狀況,。安全故障(如存儲(chǔ)器修正)和危險(xiǎn)故障(如不能挽回的硬件故障)必須分別記錄,。
故障記錄通常從故障計(jì)數(shù)開始,可以由系統(tǒng)級架構(gòu)記錄有信號事件(類似于中斷)的數(shù)量,;或者由IP計(jì)數(shù)器記錄,。為了解這些事件發(fā)生的原因,最好還能將過去的事件作為參考,,判斷當(dāng)前時(shí)間的發(fā)生原因,。為支持這一需求并進(jìn)行調(diào)試糾錯(cuò),可以允許一些IP捕捉額外信息,,如被偵查的存儲(chǔ)地址,。因?yàn)樵摰刂吠ǔ?huì)由軟復(fù)位保存,所以可以在系統(tǒng)啟動(dòng)和系統(tǒng)自檢過程中被讀取,。
有一點(diǎn)需要牢記,,故障也可能發(fā)生在安全架構(gòu)本身。與硬件故障不同的地方是,,后者通??梢栽谑褂眠^程中被很快發(fā)現(xiàn),但安全檢查器中的故障可能是潛伏的,,它已經(jīng)無法偵測危險(xiǎn)故障,,但故障卻已經(jīng)悄悄地蔓延開了。這樣的故障被稱為潛伏故障,,定期測試檢查器是個(gè)不錯(cuò)的方法,。
安全完整性等級
不同的標(biāo)準(zhǔn)體系反應(yīng)安全等級的方法也各不相同,但其主要目的是直觀的反映功能的關(guān)鍵性,。比如說,,控制擋風(fēng)玻璃雨刮、安全氣囊或制動(dòng)器的ECU,,完整性必須高于控制車速表或泊車傳感器的ECU,,因?yàn)榍胺揭曇爸陵P(guān)重要,突然剎車或氣囊充氣可能造成致命后果,,駕駛員也會(huì)兇多吉少,;而車速表或泊車傳感器對安全停車的重要性就低得多了。
換句話說,,安全完整性等級是與人避免危險(xiǎn)情況的必要性和能力相關(guān)的,;而各項(xiàng)標(biāo)準(zhǔn)的作用就是指導(dǎo)人們?nèi)绾味x安全完整性等級,并提供相關(guān)參數(shù),,幫助其對系統(tǒng)完整性進(jìn)行量化,。
IEC 61508將安全完整性等級(SIL)分成4級,第4級為最高完整性,。與之相似,,ISO 26262提出了汽車安全完整性等級(ASIL),最低為ASIL A,,最高為ASIL D,。此外,就表二所示,,針對ASIL B到ASIL D,,ISO 26262分別就單點(diǎn)故障、潛伏故障和硬件故障概率指標(biāo)(PMHF,,業(yè)內(nèi)也稱及時(shí)故障)提出了建議參數(shù),。可檢測故障的比例被稱為診斷覆蓋率,。
表1. ISO 26262的推薦標(biāo)準(zhǔn)
盡管這些指標(biāo)通常被視為標(biāo)準(zhǔn)要求,,但在實(shí)際應(yīng)用中,它們一般只被視為建議,,供應(yīng)商可以自行制定目標(biāo)參數(shù),。最重要的目標(biāo)是打造安全的產(chǎn)品,而不是在產(chǎn)品參數(shù)表上多加幾個(gè)數(shù)字,。讓我們再次借用前面提到過的例子——擋風(fēng)玻璃雨刮,、制動(dòng)器和安全氣囊,這些元件的安全級別可能達(dá)到ASIL D,,而車速表和泊車傳感器可能是ASIL B或更低,,具體級別取決于整體系統(tǒng)安全設(shè)計(jì)。
無論診斷覆蓋率多高,,打造功能安全應(yīng)用的時(shí)候都必須遵循合適的流程——這也是標(biāo)準(zhǔn)體系最大的益處,。此外,無論采用何種功能安全措施,,嚴(yán)格的質(zhì)量流程都可以提升任何應(yīng)用的整體質(zhì)量,。
功能安全I(xiàn)P的設(shè)計(jì)流程
開發(fā)功能安全應(yīng)用IP時(shí),“循規(guī)蹈矩”非常重要,。這個(gè)過程必須從一開始就將安全納入考慮,,而且還必須營造支持安全的文化,。
完整的開發(fā)流程必須包含以下幾個(gè)重要方面:
·安全管理:包括團(tuán)隊(duì)組織架構(gòu),具體內(nèi)容如:明確不同職位的定義和職責(zé),、打造安全文化,、定義安全生命周期,定義功能安全支持級別,。安全生命周期的設(shè)定包括制定一份成功計(jì)劃,,選擇合適的開發(fā)工具,確保團(tuán)隊(duì)接受充分的培訓(xùn),。
·需求管理和故障檢測及控制措施(應(yīng)對措施)的可追溯性,。為精確實(shí)現(xiàn)需求追溯,需求本身定義必須要明確,,精準(zhǔn),,且具備唯一性。追溯等級取決于完整性的要求,,文件可以高等級,;產(chǎn)品則需要從故障檢測到驗(yàn)證等各個(gè)環(huán)節(jié)面面俱到——計(jì)劃過程不得空穴來風(fēng),必須經(jīng)過詳細(xì)驗(yàn)證,。
·質(zhì)量管理是需求追溯的拓展和延伸,。勘誤表必須得到妥善管理和使用,。ARM在這一領(lǐng)域擁有豐富的經(jīng)驗(yàn),。此外,流程的記錄和傳達(dá)也同樣重要,。
安全文件包
IP開發(fā)是ARM支持合作伙伴的一種途徑,,我們的合作關(guān)系并不會(huì)止于客戶收到IP的那一刻。就功能安全相關(guān)的IP開發(fā),,ARM定義了2個(gè)安全文件包等級:
·最高至ASIL B的標(biāo)準(zhǔn)支持
·最高至ASIL D的延伸支持
每個(gè)安全文件包都包含一份安全手冊,,詳細(xì)說明遵循的流程、故障檢測及控制功能,、適用場景和其他信息,。我們同時(shí)提供“故障模式及效果分析報(bào)告”,并提供案例分析,,闡述如何用IP實(shí)現(xiàn)更高的診斷覆蓋率,;我們也為客戶的獨(dú)立分析提供芯片級的更多支持。此外,,文件包也就ARM和被授權(quán)方的開發(fā)接口做出了明確定義,。
獨(dú)立安全單元
安全狀況報(bào)告的建立和使用需要步步遞進(jìn)。該報(bào)告由芯片開發(fā)商提供信息,所有廠商的信息都必須綜合考慮,,最后交付客戶使用,,層層遞進(jìn)。獲許可最多的芯片IP被稱為“獨(dú)立安全單元”(SEooC),,其設(shè)計(jì)師們無需了解該芯片后續(xù)的使用方式,。因此,安全手冊必須說明 IP開發(fā)商對芯片使用建議和說明,,避免誤用。同樣,,OEM的1級控制器供應(yīng)商也可以使用SEooC模型開發(fā)安全功能,。因此,IP級的安全文件包可用于整個(gè)價(jià)值鏈,,是 IP開發(fā)的重要部分,。
功能安全將逐漸成為硬性要求
從汽車到醫(yī)療再到工業(yè)設(shè)備,依賴電子器件的應(yīng)用越來越多,,功能安全正變得更加重要,,并將成為常規(guī)要求。功能安全是IP廠商必須達(dá)成的要求,,也是讓基于該IP建造的模型順利運(yùn)行的必要條件,,因此IP廠商必須將每項(xiàng)研究成果授予盡可能多的芯片合作伙伴,反之亦然,。有了堅(jiān)實(shí)的質(zhì)量和可靠性,,功能安全才能帶來更廣泛的好處,進(jìn)而推動(dòng)全行業(yè)的質(zhì)量和可靠性提升,。包括駕駛員安全,、燃油經(jīng)濟(jì)性、舒適度和車載信息娛樂系統(tǒng)等,,功能安全是芯片設(shè)計(jì)師解決更高級別汽車難題的基礎(chǔ),。