采用已認(rèn)證嵌入式芯片 工業(yè)應(yīng)用安全風(fēng)險(xiǎn)銳減
工業(yè)領(lǐng)域?qū)﹄娮釉O(shè)備安全性要求甚嚴(yán),因此產(chǎn)品開(kāi)發(fā)人員對(duì)嵌入式晶片的選擇須格外謹(jǐn)慎;采用已預(yù)先通過(guò)標(biāo)準(zhǔn)認(rèn)證的嵌入式方案,不僅可降低系統(tǒng)設(shè)計(jì)復(fù)雜度、減少額外元件使用數(shù)量,更能確保最終產(chǎn)品的安全性,提高市場(chǎng)競(jìng)爭(zhēng)力。
工業(yè)自動(dòng)化、物流以及智慧電網(wǎng)等很多工業(yè)領(lǐng)域都要求機(jī)械設(shè)備和產(chǎn)品具有安全性,通過(guò)功能安全認(rèn)證。當(dāng)開(kāi)發(fā)的機(jī)械設(shè)備必須符合全世界安全標(biāo)準(zhǔn)時(shí),靈活性和逐漸增高的安全成本,是非常重要的決定因素。
在這些應(yīng)用中,安全要求產(chǎn)生新的機(jī)械開(kāi)發(fā)過(guò)程,增加電子設(shè)備的復(fù)雜度,一般會(huì)導(dǎo)致硬體成本的顯著增加,延長(zhǎng)產(chǎn)品上市時(shí)間。工業(yè)單晶片系統(tǒng)能夠幫助工程師在獲得IEC 61508產(chǎn)品認(rèn)證過(guò)程中節(jié)省十八個(gè)月的設(shè)計(jì)時(shí)間。具有現(xiàn)場(chǎng)可編程閘陣列(FPGA)等經(jīng)過(guò)認(rèn)證的元件,意味著設(shè)計(jì)人員可以充分發(fā)揮FPGA的靈活性?xún)?yōu)勢(shì),不用擔(dān)心這些元件能否用于安全應(yīng)用。
安全設(shè)計(jì)擺第一 各類(lèi)挑戰(zhàn)大又多
如果公司計(jì)劃將產(chǎn)品銷(xiāo)售到須要符合當(dāng)?shù)匕踩?guī)章制度的國(guó)家,這些國(guó)家要求須有功能安全評(píng)估人員的認(rèn)證,例如新的機(jī)械建造規(guī)范(2006/42/EG),這是產(chǎn)品出口到歐洲必須滿(mǎn)足的要求,那么這些公司必須在整個(gè)設(shè)計(jì)過(guò)程中采用安全方法,這樣才能參與競(jìng)爭(zhēng)。工廠(chǎng)操作人員須要對(duì)機(jī)械設(shè)備進(jìn)行安全操作以提高效能,例如在部分機(jī)械設(shè)備還在運(yùn)作時(shí)對(duì)設(shè)備進(jìn)行維護(hù),顯著縮短開(kāi)機(jī)和停機(jī)的時(shí)間等。
當(dāng)公司決定開(kāi)發(fā)安全產(chǎn)品時(shí),必須把安全作為核心系統(tǒng)功能。以往,都是透過(guò)備用控制器或通訊模組等其他功能,結(jié)合電路來(lái)監(jiān)視系統(tǒng),在系統(tǒng)中增加安全功能。與從一開(kāi)始就針對(duì)安全和成本競(jìng)爭(zhēng)力進(jìn)行最佳化的設(shè)計(jì)安全應(yīng)用相比,這些置入的安全性零組件是事后才加入到系統(tǒng)概念中,明顯地提高成本,不夠靈活也無(wú)法更新。
成功設(shè)計(jì)安全應(yīng)用的關(guān)鍵是采用經(jīng)過(guò)驗(yàn)證的設(shè)計(jì)方法,合格的工具和元件作為產(chǎn)品的一部分,從產(chǎn)品開(kāi)發(fā)的一開(kāi)始就考慮安全問(wèn)題。
典型設(shè)計(jì)步驟 安全考量非重點(diǎn)
如果沒(méi)有想到安全問(wèn)題,開(kāi)發(fā)一個(gè)具體應(yīng)用的五個(gè)典型設(shè)計(jì)步驟包括:架構(gòu)開(kāi)發(fā)、零組件選擇、應(yīng)用設(shè)計(jì)實(shí)現(xiàn)、整合和測(cè)試、發(fā)布。
第一步是產(chǎn)品架構(gòu),如圖1所示。對(duì)于驅(qū)動(dòng)器等典型的馬達(dá)控制應(yīng)用,設(shè)計(jì)步驟把系統(tǒng)分成系統(tǒng)控制、通訊和即時(shí)馬達(dá)控制功能等部分。例如,對(duì)于系統(tǒng)的控制部分和即時(shí)部分,在架構(gòu)上選擇用軟體實(shí)現(xiàn),對(duì)于通訊部分確定使用硬體/軟體方法,以支援即時(shí)工業(yè)乙太網(wǎng)路通訊協(xié)定。
圖1 架構(gòu)開(kāi)發(fā)
下一步是選擇零組件(圖2)。做出決定后,具體實(shí)施時(shí),控制軟體可能運(yùn)行在標(biāo)準(zhǔn)應(yīng)用處理器上,然后在數(shù)位訊號(hào)處理器(DSP)上實(shí)現(xiàn)即時(shí)馬達(dá)控制部分,而采用FPGA架構(gòu)的方法實(shí)現(xiàn)系統(tǒng)中的通訊部分。采用FPGA,系統(tǒng)能夠在可以互換的相同元件中靈活地實(shí)現(xiàn)各種工業(yè)乙太網(wǎng)路標(biāo)準(zhǔn),例如乙太網(wǎng)路/IP、EtherCat、PROFINET或SERCOS III等。利用靈活的通訊部分架構(gòu),可以訂制標(biāo)準(zhǔn)硬體平臺(tái),很容易滿(mǎn)足最終使用者的特殊通訊協(xié)定需求。
圖2 零組件選擇
確定如何劃分并選擇元件后,設(shè)計(jì)團(tuán)隊(duì)可以針對(duì)各自的應(yīng)用展開(kāi)開(kāi)發(fā)工作。然后,將元件整合為一個(gè)完整的系統(tǒng),測(cè)試系統(tǒng)功能,發(fā)布產(chǎn)品。
增加安全性 取得安全認(rèn)證
如果按照產(chǎn)品要求,開(kāi)發(fā)功能安全設(shè)計(jì),則須增強(qiáng)其他的專(zhuān)案階段,如圖3左起第1、3、4、6、8、10、11方塊部分所示。
圖3 根據(jù)安全步驟而增加的設(shè)計(jì)步驟
設(shè)計(jì)安全應(yīng)用的目的是獲得功能安全認(rèn)證,例如IEC 61508等,因此導(dǎo)致專(zhuān)案越來(lái)越復(fù)雜。IEC 61508規(guī)范涵蓋從開(kāi)發(fā)具體應(yīng)用到產(chǎn)品退出市場(chǎng)的整個(gè)安全生命周期。按照安全標(biāo)準(zhǔn)的步驟和過(guò)程,則須要簡(jiǎn)化與評(píng)估人員的通訊,以確保能夠清楚地理解安全目標(biāo)、概念、過(guò)程和解決方案,滿(mǎn)足安全要求。以下是根據(jù)安全步驟而增加的設(shè)計(jì)步驟:
.專(zhuān)案啟動(dòng)和風(fēng)險(xiǎn)分析
在專(zhuān)案啟動(dòng)和風(fēng)險(xiǎn)分析階段,根據(jù)應(yīng)用的一般要求來(lái)確定安全范圍。對(duì)于實(shí)施階段,確定并整理和記錄應(yīng)用所需及能夠?qū)崿F(xiàn)的安全完整性等級(jí)(SIL),作為風(fēng)險(xiǎn)分析和評(píng)估的基礎(chǔ)。風(fēng)險(xiǎn)分析是以后測(cè)量的基礎(chǔ),它表明對(duì)產(chǎn)品界限的理解,與產(chǎn)品范圍定義密切相關(guān)。它是所需SIL的基礎(chǔ),詳細(xì)定義安全功能,以及產(chǎn)品文件建檔框架,這必須在元件層級(jí)和系統(tǒng)層級(jí)來(lái)完成。
.架構(gòu)開(kāi)發(fā)
然后,設(shè)計(jì)人員開(kāi)發(fā)架構(gòu)來(lái)滿(mǎn)足功能和安全要求。他們對(duì)安全要求進(jìn)行改善,記錄在操作和維護(hù)階段實(shí)現(xiàn)的某些功能,確定驗(yàn)證能否滿(mǎn)足安全要求而須要采取的策略。
.安全要求規(guī)范
對(duì)于安全驅(qū)動(dòng),專(zhuān)案范圍可能包括幾個(gè)方面,例如確定驅(qū)動(dòng)參數(shù)是否在允許的范圍內(nèi),或者安全輸入輸出(I/O)訊號(hào)是否為關(guān)鍵事件等。驅(qū)動(dòng)最基本的安全特性是安全關(guān)閉(STO),以安全方式斷開(kāi)馬達(dá)電源。此一過(guò)程還可能包括與出現(xiàn)安全事件的整個(gè)自動(dòng)化系統(tǒng)進(jìn)行通訊,必須在一定的時(shí)間周期內(nèi)進(jìn)行評(píng)估,例如按照一系列步驟順序關(guān)閉整個(gè)應(yīng)用。
.驗(yàn)證和認(rèn)證規(guī)畫(huà)
驗(yàn)證規(guī)畫(huà)的開(kāi)發(fā)包括受控制的失敗介入方法,以測(cè)試系統(tǒng),進(jìn)行其他的監(jiān)控,觀(guān)察系統(tǒng),對(duì)比當(dāng)前參數(shù)和預(yù)先確定的參數(shù),以及允許值。
.元件選擇及元件、IP和工具條件
典型的專(zhuān)案都有元件選擇步驟,但是設(shè)計(jì)人員應(yīng)確保元件和IP功能適合安全應(yīng)用。重要的是考慮殘留錯(cuò)誤概率,這是計(jì)算產(chǎn)品全部失敗概率(FIT)以及最終SIL的基礎(chǔ)??梢酝高^(guò)收集廣泛應(yīng)用的產(chǎn)品的元件和設(shè)計(jì)工具資料來(lái)實(shí)現(xiàn),就不會(huì)出現(xiàn)系統(tǒng)錯(cuò)誤,能夠可靠使用(例如對(duì)于IP),還可以透過(guò)使用處理器或FPGA等半導(dǎo)體產(chǎn)品錯(cuò)誤概率報(bào)告,以及可靠性資訊來(lái)實(shí)現(xiàn)。
.應(yīng)用設(shè)計(jì)實(shí)現(xiàn)
通訊協(xié)定、FPGA的記憶體介面IP、或者嵌入在FPGA中的嵌入式處理器IP等復(fù)雜系統(tǒng)功能,通常用于運(yùn)行驅(qū)動(dòng)應(yīng)用中工業(yè)乙太網(wǎng)路通訊協(xié)定的軟體堆疊,這些都須要進(jìn)行安全應(yīng)用分析、測(cè)試和認(rèn)證。
.安全/診斷功能
除了實(shí)現(xiàn)應(yīng)用程式外,還必須在設(shè)計(jì)中加入某些功能。這些設(shè)計(jì)須要采用時(shí)鐘和電源等基本參數(shù)監(jiān)視功能,以及資料監(jiān)視等復(fù)雜功能,觀(guān)察脈沖寬度調(diào)變(PWM)的輸出,進(jìn)而保證系統(tǒng)正常運(yùn)作。此外,還需要能夠自動(dòng)發(fā)現(xiàn)錯(cuò)誤的功能,讓系統(tǒng)進(jìn)入安全狀態(tài)。基本功能包括保證記憶體內(nèi)容不會(huì)由于外部影響設(shè)計(jì)而發(fā)生改變、監(jiān)視系統(tǒng)時(shí)鐘以保證在設(shè)定的系統(tǒng)參數(shù)范圍內(nèi)驅(qū)動(dòng)設(shè)計(jì)(或是因?yàn)橥獠吭?dǎo)致錯(cuò)誤出現(xiàn)),以及電源正常運(yùn)作。
.整合和測(cè)試
將每一個(gè)元件整合到安全驅(qū)動(dòng)方案中,進(jìn)行測(cè)試,實(shí)現(xiàn)預(yù)期的系統(tǒng)功能,提供設(shè)定好的安全功能。透過(guò)安全驗(yàn)證,保證所需的安全特性能夠在運(yùn)作期間發(fā)揮作用,例如,確保外部因素對(duì)設(shè)計(jì)的安全功能沒(méi)有不利影響,偶然的禁用不會(huì)影響系統(tǒng)。
.安全驗(yàn)證、認(rèn)證和發(fā)布
在整個(gè)過(guò)程中,要求與評(píng)估人員密切合作,以保證在開(kāi)發(fā)過(guò)程中所進(jìn)行的評(píng)估是合理的,提供合適的安全功能。最后,評(píng)估人員對(duì)產(chǎn)品的安全功能進(jìn)行認(rèn)證,可以向市場(chǎng)推出該產(chǎn)品。
增加預(yù)認(rèn)證安全功能
Altera等半導(dǎo)體供應(yīng)商提供某些步驟說(shuō)明實(shí)現(xiàn)這一個(gè)過(guò)程,減少在安全應(yīng)用開(kāi)發(fā)上的投入。例如,立即使用經(jīng)過(guò)功能安全預(yù)認(rèn)證的半導(dǎo)體資料、IP、開(kāi)發(fā)流程和設(shè)計(jì)工具等,大幅度縮短整個(gè)產(chǎn)品開(kāi)發(fā)過(guò)程(圖4)。
圖4 具有預(yù)認(rèn)證安全步驟的設(shè)計(jì)步驟
Altera投入近兩年的時(shí)間來(lái)實(shí)現(xiàn)產(chǎn)品認(rèn)證,其SIL 3功能安全資料套件包括評(píng)估機(jī)構(gòu)TV Rheinland對(duì)Altera工具、IP和元件資料的認(rèn)證,縮短并簡(jiǎn)化符合IEC 61508安全應(yīng)用的開(kāi)發(fā)。經(jīng)過(guò)預(yù)先認(rèn)證的設(shè)計(jì)流程和工具,以及經(jīng)過(guò)預(yù)先認(rèn)證的嵌入式系統(tǒng)和診斷矽智財(cái)(IP),降低了對(duì)安全非常重視之工業(yè)應(yīng)用的認(rèn)證風(fēng)險(xiǎn),例如伺服和變頻驅(qū)動(dòng)器、安全I(xiàn)/O和可編程邏輯控制器(PLC)以及自動(dòng)控制器等。
對(duì)IP和設(shè)計(jì)工具以及元件可靠性資料的測(cè)試和應(yīng)用資料進(jìn)行總結(jié)和整理,簡(jiǎn)化了功能安全驗(yàn)證。采用TV Rheinland認(rèn)可的設(shè)計(jì)方法(V-Flow),可滿(mǎn)足FPGA設(shè)計(jì)的特殊需求。功能安全套件包括所必須的診斷功能,將其設(shè)計(jì)為FPGA IP。功能安全套件用戶(hù)受益于A(yíng)ltera在TV上的前期投入,在專(zhuān)案投入上能夠節(jié)省同樣的時(shí)間。
安全驅(qū)動(dòng)實(shí)例示范
具有安全I(xiàn)/O的此一驅(qū)動(dòng)實(shí)例采用Altera認(rèn)證過(guò)的FPGA設(shè)計(jì)工具Quartus II軟體9.0 SP2,以及所建議的設(shè)計(jì)方法實(shí)現(xiàn)這一個(gè)應(yīng)用實(shí)例。此外,如圖5所示,這個(gè)應(yīng)用使用兩顆FPGA,而沒(méi)有采用外部處理器和DSP。該應(yīng)用被劃分成幾個(gè)Nios II軟式處理器核心。第一個(gè)Nios II軟式核心處理器提供通訊堆疊支援,第二個(gè)處理系統(tǒng)控制,第三個(gè)Nios II處理器整合在馬達(dá)控制模組內(nèi)。對(duì)馬達(dá)控制演算法進(jìn)行劃分,其軟體部分運(yùn)行在Nios II處理器上,針對(duì)這個(gè)應(yīng)用而專(zhuān)門(mén)開(kāi)發(fā)的硬體模組加速馬達(dá)控制回路的實(shí)現(xiàn)。外部安全控制器提供SIL3應(yīng)用所需要的備用功能。
圖5 安全驅(qū)動(dòng)的兩顆FPGA實(shí)現(xiàn)
此一解決方案在一顆FPGA中結(jié)合安全控制器和現(xiàn)場(chǎng)匯流排控制器,使用Altera的SOPC Builder系統(tǒng)整合工具,整合Nios II軟式核心處理器、其他通訊IP模組,以及編碼器介面和記憶體介面。
診斷晶片驅(qū)動(dòng)安全性
對(duì)于FPGA中關(guān)鍵而又常用診斷任務(wù)的底層監(jiān)視功能,這個(gè)實(shí)例使用Altera的安全認(rèn)證診斷IP模組。這些診斷IP設(shè)計(jì)滿(mǎn)足IEC 61508規(guī)范要求,完成以下常用診斷功能:
.循環(huán)校驗(yàn)碼(CRC)運(yùn)算
應(yīng)用在許多系統(tǒng)內(nèi),特別適用于現(xiàn)場(chǎng)匯流排應(yīng)用。
.提取時(shí)鐘檢查
這個(gè)核心檢查是否有系統(tǒng)時(shí)鐘及時(shí)鐘頻率。
.SEU檢查控制器
此模組采用元件中的內(nèi)置軟式錯(cuò)誤檢查硬體,監(jiān)視軟式錯(cuò)誤導(dǎo)致的變化。
由于這些硬式核心IP是在FPGA邏輯區(qū)中實(shí)現(xiàn),因此系統(tǒng)處理器不再承擔(dān)這些任務(wù)。在認(rèn)證方法方面,Altera采用IEC規(guī)范來(lái)分析FPGA設(shè)計(jì)方法和相關(guān)要求。從這個(gè)分析中,形成工具流程文件檔。此工具流程的中心主題是對(duì)Altera開(kāi)發(fā)的FPGA V-Flow的描述(圖6)。
V-Flow及其相關(guān)文件檔將Altera FPGA安全應(yīng)用設(shè)計(jì)的所有步驟映射到IEC規(guī)范上,滿(mǎn)足其要求。此外,它解釋哪些設(shè)計(jì)步驟采用哪些Altera工具。其涉及到IEC規(guī)范中的某些章節(jié),以指導(dǎo)使用者依照合適的開(kāi)發(fā)步驟來(lái)開(kāi)發(fā)安全應(yīng)用。
這包括評(píng)估人員所需要的認(rèn)證文件檔和資料,以提供完全符合IEC 61508規(guī)范的格式,因此評(píng)估人員很容易處理它們。以正確的格式提供這些文件檔,可節(jié)省安全專(zhuān)案大量的文件檔工作。在所包括的可靠性報(bào)告中,Altera對(duì)FPGA可靠性統(tǒng)計(jì)資訊進(jìn)行大量分析,包括所需的全部資訊來(lái)計(jì)算FIT率。
透過(guò)重新使用符合預(yù)認(rèn)證兩顆晶片方法的驅(qū)動(dòng)系統(tǒng)概念,按照經(jīng)過(guò)認(rèn)證的設(shè)計(jì)方法、設(shè)計(jì)流程、工具和IP,通常能夠加速實(shí)現(xiàn)典型的應(yīng)用開(kāi)發(fā)過(guò)程。由于能夠立即使用元件的可靠性資料,提供的格式很容易整合到安全認(rèn)證的所有文件檔內(nèi),因此加速實(shí)現(xiàn)認(rèn)證過(guò)程。在安全設(shè)計(jì)和系統(tǒng)設(shè)計(jì)中,設(shè)計(jì)人員可以充分利用靈活的FPGA設(shè)計(jì)整合功能。由于安全已經(jīng)成為具體應(yīng)用的關(guān)鍵需求之一,因此它包含在整個(gè)概念中,透過(guò)滿(mǎn)足成本和產(chǎn)品及時(shí)上市目標(biāo)來(lái)實(shí)現(xiàn)。