為什么保證芯片系統(tǒng)長期安全如此困難
越來越多的行業(yè)正在關(guān)注安全問題,但目前還沒有標(biāo)準(zhǔn)和方法來確保電子系統(tǒng)隨著時(shí)間的推移達(dá)到規(guī)定的安全水平。這一任務(wù)很大程度上落到了芯片行業(yè)肩上,因?yàn)樗峁┝嘶A(chǔ)技術(shù),也發(fā)出了還能做些什么來提高安全性的問題。
本文引用地址:http://www.ex-cimer.com/article/202308/449974.htm最近引入了一種粗略的分類法,用于驗(yàn)證和測試安全性 (見下文圖 1)。許多問題跨越了整個(gè)矩陣。例如,自動(dòng)駕駛汽車必須在產(chǎn)品的整個(gè)生命周期內(nèi)擁有安全可靠的硬件和軟件,但即使在出現(xiàn)硬件故障的情況下,它也必須保持安全可靠。不幸的是,沒有工具可以確定這個(gè)抽象目標(biāo)是否已經(jīng)實(shí)現(xiàn)。相反,工具和方法傾向于覆蓋其中的一兩個(gè)盒子,而這些盒子的整合在某種程度上是臨時(shí)的。這反過來又讓一些潛在的問題被遺漏了。此外,所使用的指標(biāo)與現(xiàn)實(shí)的關(guān)聯(lián)也很松散。
圖 1:與安全和安保相關(guān)的問題矩陣。來源:Semiconductor Engineering
更糟糕的是,今天并非所有的問題都得到了充分處理,部分原因是人們認(rèn)為它們的優(yōu)先級(jí)較低,部分原因是成本太高。例如,硬件安全就是由多個(gè)領(lǐng)域的標(biāo)準(zhǔn)處理的。軟件安全也涵蓋在不同的標(biāo)準(zhǔn)中,但沒有任何內(nèi)容定義硬件和軟件組合的安全性或談及整個(gè)系統(tǒng)的安全性。最接近的方法是考慮顯示軟件檢測到的硬件錯(cuò)誤百分比的故障活動(dòng)。此外,針對(duì)已定義的工作負(fù)荷和場景優(yōu)化的硬件越多,軟件或未來的軟件更新就越有可能導(dǎo)致硬件以最初未考慮的方式運(yùn)行。這反過來又會(huì)造成硬件過早老化,或使其處于產(chǎn)生意外漏洞的狀態(tài)。
錯(cuò)誤模型
測量任何東西都需要一個(gè)實(shí)用的度量標(biāo)準(zhǔn),即某物必須是可處理和有效的,但不一定要基于現(xiàn)實(shí)。故障模型(如故障卡住模型)已經(jīng)存在了很長時(shí)間,并被證明可以有效地表示硬件故障——盡管硬件可能會(huì)發(fā)生故障的方式有很多,例如開路,短路或運(yùn)行緩慢。瞬態(tài)故障也很重要,因?yàn)樗鼈兇砹溯椛淇赡芤鸬奈环D(zhuǎn)。
「有一系列規(guī)范適用于多個(gè)行業(yè)的功能安全,」Cadence 產(chǎn)品管理集團(tuán)總監(jiān) Pete Hardee 說?!赣幸粋€(gè)通用的 IEC 標(biāo)準(zhǔn),IEC 61508,這是一種元標(biāo)準(zhǔn)。ISO 26262 是其衍生產(chǎn)品,更具體地針對(duì)汽車市場。對(duì)于鐵路、醫(yī)療設(shè)備、工廠自動(dòng)化、核能等等,同樣的元標(biāo)準(zhǔn)還有其他衍生物,有適用于航空航天工業(yè)的 DO-254。越來越多的人進(jìn)入這些領(lǐng)域的供應(yīng)鏈,因此不得不考慮滿足一些功能安全規(guī)范?!?/span>
然后,我們可以推進(jìn)這些規(guī)范。「ISO 26262,特別是第 5 部分和第 11 部分,是半導(dǎo)體的指南,」西門子數(shù)字工業(yè)軟件功能安全和自主解決方案經(jīng)理 Jake Wiltgen 表示?!高@些標(biāo)準(zhǔn)要求特定的指標(biāo),即覆蓋率指標(biāo)。ISO 中使用的術(shù)語是診斷覆蓋率,但本質(zhì)上是檢測到的故障率超過總故障率?!?/span>
需要建立流程?!笇?duì)安全性的高度信任依賴于定義良好的流程以及對(duì)流程的嚴(yán)格遵守?!笷raunhofer IIS 自適應(yīng)系統(tǒng)工程部設(shè)計(jì)方法負(fù)責(zé)人 Roland Jancke 說?!缸詈玫姆椒ㄖ皇切枨蠊こ蹋≧E)。它從適當(dāng)定義的安全目標(biāo)開始,接著建立各自的需求,并將它們轉(zhuǎn)換為測試用例。一個(gè)基本要素是在整個(gè)過程中建立需求跟蹤,以便在發(fā)生任何變化時(shí)僅針對(duì)受影響的部件進(jìn)入重新設(shè)計(jì)循環(huán)。」
對(duì)汽車來說,系統(tǒng)需要的安全程度取決于自動(dòng)駕駛的程度?!高@實(shí)際上取決于人們的目標(biāo) ASIL 水平,」Cadence 的 Hardee 說?!窤SIL A 并沒有真正改變,但'我必須讓我的流程獲得認(rèn)證'。在某些情況下,ASIL B 的影響也很小。但是,當(dāng)涉及到滿足 ASIL C 和 ASIL D 水平時(shí),它可能變得非常具有挑戰(zhàn)性。這與人們?yōu)楣δ茯?yàn)證所做的工作非常一致,因?yàn)轵?yàn)證和滿足規(guī)范的基本方法是查看一臺(tái)好的機(jī)器,并通過功能驗(yàn)證實(shí)現(xiàn)良好的覆蓋率?!?/span>
如何做到這一點(diǎn)是留給設(shè)計(jì)師的。Imperas Software 創(chuàng)始人兼首席執(zhí)行官 Simon Davidmann 表示:「這取決于設(shè)計(jì)人員提出的架構(gòu)、技術(shù)或解決方案,以證明他們能夠滿足這些質(zhì)量目標(biāo)。挑戰(zhàn)在于他們?nèi)绾卧u(píng)估自己所做工作的質(zhì)量。他們可能想要運(yùn)行模擬,注入故障,以查看他們的軟件和硬件對(duì)這些故障有多大彈性。我們?cè)诠收夏P蜕献隽撕芏喙ぷ?,以表示現(xiàn)實(shí)世界中發(fā)生的這些不同事情。」
這就是實(shí)用性發(fā)揮作用的地方。「如果你采用 1 億個(gè)門的設(shè)計(jì),看看不同故障機(jī)制的數(shù)量,任何一種方法都無法涵蓋這一點(diǎn),」Synopsys 的 EDA 集團(tuán)工程副總裁 Manish Pandey 說?!笍男问降慕嵌瓤矗@取所有錯(cuò)誤并嘗試傳播它在計(jì)算上是不可行的。我們需要更好的采樣方法,有不同的內(nèi)部故障模式,確定安全和不安全的區(qū)域,等等。這種安全方法需要構(gòu)建適當(dāng)?shù)墓收线\(yùn)動(dòng)途徑,并且必須以非常有意識(shí)的方式完成。對(duì)微架構(gòu)的認(rèn)識(shí)至關(guān)重要。」
隨時(shí)間推移的安全性
在理想的硬件上做到這一點(diǎn)是不夠的。「另一個(gè)類別是保證整個(gè)生命周期的預(yù)期功能,」Fraunhofer 的 Jancke 說?!缚煽啃苑抡婵梢源_保這一點(diǎn),而可靠性仿真又依賴于已知老化機(jī)制的適當(dāng)退化模型和全面的壽命外推能力?!?/span>
老化起著至關(guān)重要的作用。西門子 EDA 的 Veloce、DFT 和功能安全產(chǎn)品經(jīng)理 Robert Serphillips 表示:「如果你看一下制造測試,他們通常會(huì)測試超過絕對(duì)規(guī)格的 20%,無論是時(shí)鐘頻率、功率還是溫度。硅會(huì)隨著時(shí)間推移而降解,溫度是非常關(guān)鍵的。在高溫下,設(shè)備的物理速度會(huì)變慢。像快速路徑和慢路徑這樣的東西現(xiàn)在開始變得有問題了。從安全角度來看,設(shè)備在周圍環(huán)境中的行為方式對(duì)于設(shè)備如何降級(jí)、故障如何開始出現(xiàn)以及電路如何開始失效至關(guān)重要。所有這些都必須納入考量,而不僅僅是從外太空射出的隨機(jī)光子。這款設(shè)備能否在其額定使用壽命內(nèi)保持不變?」
「當(dāng)我們考慮老化時(shí),電路的閾值可能發(fā)生改變,」Hardee 說?!鸽娐房赡芨菀资艿竭@些東西的影響,設(shè)備可能會(huì)直接失效,這通常會(huì)造成卡住一類的故障?!沟⒎强偸侨绱恕!府?dāng)你采用 5nm 或 3nm 的節(jié)點(diǎn)時(shí),這些芯片會(huì)以許多奇怪的方式老化和失效,」Synopsys 的 Pandey 說?!冈陔娋€中,有電子遷移,這可能會(huì)產(chǎn)生開路。有些機(jī)制我們甚至都不知道。另一件有趣的事情是你如何檢測故障,以及設(shè)計(jì)中的嵌入式傳感器如何監(jiān)控這些芯片的行為,它們是如何退化的。是否有潛在的故障蔓延?我們將不得不通過額外的芯片監(jiān)控和芯片智能來補(bǔ)充傳統(tǒng)的故障預(yù)警方法。」
片內(nèi)監(jiān)控是對(duì)其他 BiST 技術(shù)的補(bǔ)充。「先進(jìn)的 SLM 監(jiān)測器通過分析升級(jí),可以作為應(yīng)對(duì)間歇性和降級(jí)故障的安全機(jī)制,」Synopsys 戰(zhàn)略系統(tǒng)工程可靠性核心團(tuán)隊(duì)負(fù)責(zé)人 Dan Alexandrescu 表示?!付嚯A段方法使用來自高級(jí)傳感器的信息,這些傳感器緊密嵌入關(guān)鍵設(shè)計(jì)模塊中。路徑裕量監(jiān)控、錯(cuò)誤前檢測、內(nèi)存訪問時(shí)間測量、ECC 和 BiST 事件被統(tǒng)一評(píng)估為相關(guān)的、及時(shí)的安全和質(zhì)量指標(biāo)。然后向系統(tǒng)執(zhí)行器發(fā)布可操作的見解,以及時(shí)糾正安全性和可靠性威脅。芯片內(nèi)數(shù)據(jù)被發(fā)送到邊緣和云平臺(tái),以進(jìn)行車隊(duì)級(jí)監(jiān)控。所有階段的高級(jí)分析都可以快速準(zhǔn)確地了解非常罕見的事件和現(xiàn)象,幫助安全使用已部署的產(chǎn)品,并為未來的設(shè)計(jì)提供更高的質(zhì)量。」
遠(yuǎn)程分析對(duì)功能驗(yàn)證提出了要求。Synopsys 系統(tǒng)設(shè)計(jì)集團(tuán)產(chǎn)品線管理高級(jí)總監(jiān) Johannes Stahl 說:「原始設(shè)備制造商希望對(duì)具有特定 VIN 號(hào)的特定汽車進(jìn)行生命周期監(jiān)控,并向他們報(bào)告故障。」「從驗(yàn)證的角度來看,在硅前階段,你必須確保這些機(jī)制有效,并提供正確的信息?!?/span>
擴(kuò)展到人工智能
自動(dòng)駕駛汽車越來越多地使用人工智能,這給驗(yàn)證和確認(rèn)帶來了一系列新的挑戰(zhàn)。其中許多今天還無法完全理解。圖 2(下圖) 定義了 AI 系統(tǒng)驗(yàn)證與傳統(tǒng)軟件的不同之處。
圖 2:從 V&V 的角度對(duì)比傳統(tǒng)算法和機(jī)器學(xué)習(xí)算法。來源:《PolyVerif:自動(dòng)駕駛汽車驗(yàn)證和驗(yàn)證研究加速的開源環(huán)境》
如何檢測 AI 系統(tǒng)是否出現(xiàn)故障?「人工智能是一個(gè)統(tǒng)計(jì)系統(tǒng),它會(huì)在某個(gè)時(shí)間點(diǎn)失敗,」Pandey 說。「我們?nèi)绾未_保這些系統(tǒng)繼續(xù)表現(xiàn)良好? 有一類工作正在興起,就是正式驗(yàn)證這些人工智能系統(tǒng)并確保它們?cè)谙拗品秶鷥?nèi)。同樣,有研究正在進(jìn)行,以包含這些系統(tǒng)。但是,如果我們用額外的傳感器和其他故障安全機(jī)制來補(bǔ)充傳統(tǒng)系統(tǒng),就需要一些東西來驗(yàn)證并確保系統(tǒng)真正做它們應(yīng)該做的事情?!?/span>
在未來,它會(huì)變得更加復(fù)雜。人工智能系統(tǒng)本質(zhì)上是一個(gè)學(xué)習(xí)系統(tǒng),」Synopsys 的 Stah 表示?!杠浖怯扇司帉懙?,可能包含錯(cuò)誤。那么人工智能是否比軟件有更高的風(fēng)險(xiǎn)? 它是一個(gè)可以學(xué)習(xí)的人工智能系統(tǒng)嗎?」
限制故障空間
硬件的故障空間是巨大的,即使有高度受限的故障模型也是如此。所以必須使用其他技術(shù)來限制實(shí)際需要考慮的故障數(shù)量。
「故障模式效應(yīng)和診斷分析 (FMEDA) 考慮到了你正在處理的電路的可靠性數(shù)據(jù),」Hardee 說。「你正在研究失敗的模式和這些模式的影響。因此,我們實(shí)際上只關(guān)注故障的子集,這些故障可能發(fā)生在傳播到可能造成傷害的功能輸出的地方?!?/span>
沒有最好的方法來做到這一點(diǎn)?!竿ㄟ^故障模擬,你可以將故障輸入到設(shè)計(jì)中,看看它們是否能被檢測到或觀察到,」西門子的 Wiltgen 說?!傅@不是唯一的方法。還可以部署其他分析方法來獲得這些指標(biāo)。它需要在靜態(tài)空間、形式空間和模擬空間中結(jié)合不同的工具與方法,以盡可能快速有效地達(dá)到這些指標(biāo)?!?/span>
現(xiàn)場測試和數(shù)字孿生可以補(bǔ)充現(xiàn)有工具?!赣腥藫芘艘幌伦児忾_關(guān),說我在這里插入了一個(gè)錯(cuò)誤,」Arteris 營銷副總裁 Frank Schirrmeister 說?!赶霗z查測試是否真的發(fā)現(xiàn)了這個(gè)錯(cuò)誤。就像是在進(jìn)行一場安全活動(dòng),只不過是在系統(tǒng)中進(jìn)行。會(huì)有更多這樣的工具插入安全和安保項(xiàng)中嗎?也許,并且會(huì)擴(kuò)展到虛擬化中。有了電子數(shù)字孿生,就可以插入一些東西,看看虛擬表示是否與真實(shí)硬件相匹配?!?/span>
結(jié)論
經(jīng)驗(yàn)證據(jù)表明,簡化的故障模型——合理地應(yīng)用于系統(tǒng)的硬件方面,再加上軟件和內(nèi)置傳感器來進(jìn)行檢測,有時(shí)也糾正錯(cuò)誤行為——可以充分確保硬件在其使用壽命內(nèi)是安全的。它依靠一些專家來監(jiān)督這個(gè)過程,以確保根據(jù)它所處的環(huán)境和可以提供的安全程度給予充分考慮。
然而,該過程是臨時(shí)的和不完整的,因?yàn)樗鼪]有考慮整個(gè)系統(tǒng)的安全性。這應(yīng)該成為我們的目標(biāo)。
評(píng)論