你的位置:首頁 > EMC安規(guī) > 正文

功能安全要求:使用FPGA實現(xiàn)ADAS設(shè)計

發(fā)布時間:2015-05-28 責(zé)任編輯:echolady

【導(dǎo)讀】ADAS是一項為確保道路安全而設(shè)計的創(chuàng)新技術(shù)。這項系統(tǒng)性能對未來的標(biāo)準(zhǔn)商用貨架發(fā)起了挑戰(zhàn),而FPGA則可以助力ADAS的設(shè)計。本文主要解析的是使用FPGA實現(xiàn)ADAS設(shè)計的功能安全要求。

基于雷達(dá)和攝像機的應(yīng)用現(xiàn)在也被用于安全駕駛領(lǐng)域。最初,自適應(yīng)巡航控制和道路偏離報警等這些高級輔助駕駛系統(tǒng)(ADAS)只是一些非常便利的特性。而現(xiàn)在,它們在車輛控制上扮演了更積極主動的角色,支持實現(xiàn)道路輔助保持(LKA)等功能。以前的高性能CPU被認(rèn)為是最適合這些應(yīng)用的器件,但是綜合考慮計算性能和低功耗之后,促使工程師轉(zhuǎn)而采用FPGA器件。

ADAS需要滿足特殊的功能安全要求。2011年,載重3.5噸以下客車的ISO26262標(biāo)準(zhǔn)發(fā)布,其目的是降低系統(tǒng)出現(xiàn)故障后造成危險狀態(tài)的風(fēng)險。這一標(biāo)準(zhǔn)要求采用嚴(yán)密的設(shè)計過程,在應(yīng)用執(zhí)行過程中探測隨機硬件故障,以減少系統(tǒng)性故障。

應(yīng)用開發(fā)人員定義了專門的安全目標(biāo),針對每一目標(biāo)分配了相應(yīng)的汽車安全完整性等級(ASIL)。對于應(yīng)用中最高級別的ASIL,通常定義了每一組件從開發(fā)直至工作到壽命終了時應(yīng)滿足的要求。圖1顯示了從客戶需求角度看,ADAS應(yīng)符合的ASIL目前的范圍。
 功能安全要求:使用FPGA實現(xiàn)ADAS設(shè)計
圖1.ADAS ASIL市場需求(注:Range of Market Requirements for ADAS Applicatios:針對ADAS應(yīng)用的市場要求范圍)

ASIL-B是市場上的最低級別,而某些應(yīng)用則要求采用ASIL-D以支持某些功能。越來越多的ASIL有更嚴(yán)格的要求。在某些具體實現(xiàn)中,組件的通用ASIL或者條目(系統(tǒng))等級都會帶來不必要的復(fù)雜度,影響了開發(fā)成本和進(jìn)度。分析系統(tǒng)概念,得出安全概念和要求后,還可以把應(yīng)用分成幾種不同的步驟,這就具有不同的ASIL,更容易實現(xiàn),而且實現(xiàn)的效率更高。

例如,前端攝像機應(yīng)用使用了ADAS中常見的一個圖像傳感器。圖2顯示了系統(tǒng)的高級結(jié)構(gòu)圖。


 功能安全要求:使用FPGA實現(xiàn)ADAS設(shè)計
圖2.高級單前端攝像機ADAS

一個圖像傳感器連接至圖像處理器,例如可以是Altera Cyclone V SoC。信號處理鏈和數(shù)據(jù)流被分成四個部分。首先,通過把圖像變換成更實用的表現(xiàn)形式,在像素級上進(jìn)行底層處理。然后,對行圖像或者塊圖像進(jìn)行中間級處理,使用相應(yīng)的算法,提取出邊沿等特征。下一步,進(jìn)行高級處理,提取出每一幀的數(shù)據(jù),探測目標(biāo)并分類。然后,系統(tǒng)會跟蹤目標(biāo),如果需要采取措施,則與剎車或者轉(zhuǎn)向電子控制單元(ECU)進(jìn)行通信。

在FPGA上,底層和中間級處理能被非常高效地實現(xiàn),但是,用戶也可以在Cyclone V SoC硬核處理器系統(tǒng)(HPS)的Cortex-A9處理器等CPU上實現(xiàn)某些中間級處理。高級處理主要是控制代碼,可以映射到HPS中的一個或者兩個Cortex-A9上。處理鏈的最后一步是目標(biāo)跟蹤和決策,可以在外部微控制器上完成這一步。

在整個處理過程中,每一步將輸入數(shù)據(jù)進(jìn)行簡化得到更有意義的數(shù)據(jù),數(shù)據(jù)減少意味著提高了安全臨界。因此,底層實現(xiàn)可以分成質(zhì)量管理(QM)或者底層ASIL (例如,ASIL-A)。原因是一個像素期間出現(xiàn)的故障對后續(xù)算法性能的影響很小,可以忽略。在這個例子中,假設(shè)中間級處理符合ASIL-A或者ASIL-B,識別目標(biāo)并進(jìn)行分類的高級處理功能應(yīng)符合ASIL-B。對目標(biāo)進(jìn)行分類后,生成目標(biāo)表,將之提供給微控制器,進(jìn)行目標(biāo)跟蹤和決策。這是信號鏈最關(guān)鍵的部分,Altera認(rèn)為它應(yīng)該符合ASIL-D,這對汽車的行為有直接影響。
[page]

在這類應(yīng)用中,最好對數(shù)據(jù)流進(jìn)行更全面的分析,每一級的安全臨界定義對整個系統(tǒng)的性能會產(chǎn)生直接影響。對前面計算級有太高的安全要求會導(dǎo)致難以滿足系統(tǒng)性能目標(biāo),而且對系統(tǒng)整體安全的影響很小。但是,處理鏈底層也會出現(xiàn)故障,對系統(tǒng)安全功能產(chǎn)生較大的影響。例如,底層處理功能的永久故障會導(dǎo)致高層數(shù)據(jù)永久損害,但是,合理性檢查很容易探測到這類故障,對系統(tǒng)性能的影響相對較小。

 功能安全要求:使用FPGA實現(xiàn)ADAS設(shè)計
圖3.單前端攝像機系統(tǒng)實例

圖3顯示了單前端攝像機系統(tǒng)實例的高級結(jié)構(gòu)圖。由一個外部電源管理電路為Cyclone V SoC提供電源。當(dāng)供電電壓不在額定工作范圍內(nèi)時,單獨的電壓監(jiān)控功能會產(chǎn)生復(fù)位。外部非易失存儲器連接至四路串行外設(shè)(quad SPI)模組,系統(tǒng)啟動過程中裝入應(yīng)用程序,配置FPGA時會使用這些模組。執(zhí)行應(yīng)用程序代碼,存儲數(shù)據(jù)和圖像幀時,Altera使用DDR存儲器。通過SPI連接外部微控制器,進(jìn)行目標(biāo)探測和最終決策,通過CAN接口與汽車底盤的其他部分進(jìn)行通信。

 功能安全要求:使用FPGA實現(xiàn)ADAS設(shè)計
圖4.Cyclone V SoC模組視圖

應(yīng)用中所使用的圖像處理器模組如圖4所示。視頻端口接收來自圖像傳感器的數(shù)據(jù),將其傳送至圖像預(yù)處理模塊。這一模塊展示了底層圖像處理。在這個例子中,數(shù)據(jù)通過圖像預(yù)處理模塊后,通過FPGA至HPS (F2H)橋接被寫入到DDR存儲器中,也可以傳送至下一級,實現(xiàn)的效率更高。第二級是中間級處理,由各種圖像處理模塊來完成。通過HPS至FPGA (H2F)橋接讀出以前存儲在DDR存儲器中的數(shù)據(jù),再次將其寫入到DDR存儲器中。在這個例子中,由HPS完成高級處理。

現(xiàn)在,讓我們了解一下用于探測設(shè)計中不同區(qū)域是否有故障的診斷功能。文中所討論的一些診斷功能能夠探測到永久故障,而有的只能探測到瞬時故障,也有的能夠探測各種故障。瞬時故障是一種出現(xiàn)后又消失的故障。對于這一分析,Altera應(yīng)考慮實現(xiàn)某些功能時存儲器中出現(xiàn)的故障,以及實現(xiàn)功能時邏輯中可能出現(xiàn)的故障。

在應(yīng)用軟件使用圖像傳感器之前,應(yīng)對其進(jìn)行配置,在應(yīng)用程序執(zhí)行過程中不斷修改配置以適應(yīng)不同的光照條件。圖像傳感器對于應(yīng)用操作非常關(guān)鍵,因此,建議在容錯時間間隔(FTTI)期間對其配置至少進(jìn)行一次檢查。這并不一定能夠覆蓋傳感器的所有可能的故障,但是,可以管理好配置寄存器組。

汽車中使用的某些傳感器支持用戶在每一圖像幀的輔助掃描線中傳送某些配置寄存器數(shù)據(jù)。通過這一功能,用戶可以檢查每一幀的傳感器設(shè)置,不需要通過I2C接口來讀取寄存器。傳送幀數(shù)據(jù)時就可以在FPGA中實現(xiàn)這種檢查,而不需要在CPU上花費財力。

通過底層圖像處理時,一個像素的變化不太可能對實際應(yīng)用的行為產(chǎn)生很大的影響,因此,在很多情況下,可以忽略這類故障。但是,會導(dǎo)致幀丟失或者整個幀被損壞的故障是必須被檢查到的。

大部分圖像傳感器含有傳送定義好的測試幀的功能,不需要傳送正常的圖像數(shù)據(jù)。定義好輸入數(shù)據(jù)后,也就定義了圖像處理模塊的輸出數(shù)據(jù)。然后進(jìn)行后續(xù)測試。例如,通過對輸出數(shù)據(jù)進(jìn)行循環(huán)冗余校驗(CRC),找到系統(tǒng)中出現(xiàn)的任何永久故障。這種測試覆蓋了整個數(shù)據(jù)通路中的永久故障。

另外,還應(yīng)該探測到FPGA中一個模塊向另一個模塊傳輸數(shù)據(jù)時數(shù)據(jù)的變化。前面提到的測試碼型或者測試幀方法涵蓋了大部分永久故障,但是,探測不到瞬時故障。而各種傳輸或者信息冗余技術(shù)能夠探測到這類故障。

中間層圖像處理實現(xiàn)了邊沿或者角探測算法,還可以應(yīng)用特征提取算法。因此,只查看圖像中關(guān)注的特征,減少了生成數(shù)據(jù)。數(shù)據(jù)減少后,由于故障會導(dǎo)致后續(xù)處理步驟中丟失目標(biāo),因此,丟失特征的風(fēng)險增大了。

高級圖像處理階段包括目標(biāo)探測和目標(biāo)分類。從軟件術(shù)語的角度來講,這一級主要是控制代碼,因此,非常適合在CPU上運行。HPS采用了幾種硬件功能(例如,ECC、MMU、看門狗),在HPS中進(jìn)行故障診斷。

功能安全重要的另一面是確保減少系統(tǒng)性故障。這通過使用可靠的開發(fā)過程和工具來實現(xiàn)。ISO26262標(biāo)準(zhǔn)詳細(xì)規(guī)定了功能安全的管理要求,例如,對安全生命周期和支持過程中不同的行為進(jìn)行一致性測量,類似配置和修改管理。如果所使用的工具有可能造成應(yīng)用故障,那么就應(yīng)該分析這些工具,進(jìn)行測量以減小故障發(fā)生的概率。

ADAS是確保越來越擁擠的道路更加安全的下一波創(chuàng)新。這些系統(tǒng)的性能需求給現(xiàn)有以及未來的標(biāo)準(zhǔn)商用貨架(COTS)產(chǎn)品帶來了挑戰(zhàn),而可編程FPGA在這方面有很大的優(yōu)勢。實現(xiàn)專用診斷能夠擴大系統(tǒng)的診斷覆蓋。很多COTS產(chǎn)品在設(shè)計時并沒有體現(xiàn)功能安全,而通過使用具有功能安全的平臺和開發(fā)環(huán)境,與擅長功能安全的合作伙伴合作,這些都有利于系統(tǒng)的整體實現(xiàn)。

相關(guān)閱讀:

基于FPGA的等效時間采樣原理的實現(xiàn)
博客精品:FPGA系統(tǒng)構(gòu)成及器件互聯(lián)
網(wǎng)友教你設(shè)計FPGA的通用數(shù)控分頻器

要采購傳感器么,點這里了解一下價格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書下載更多>>
熱門搜索
?

關(guān)閉

?

關(guān)閉