新聞中心

        EEPW首頁 > 汽車電子 > 設計應用 > 通過FPGA設計安全的高級輔助駕駛系統

        通過FPGA設計安全的高級輔助駕駛系統

        作者: 時間:2016-10-29 來源:網絡 收藏

        隨著道路上汽車數量的增加,我們需要更多的技術來進一步減少交通事故。過去幾年,基于雷達和攝像機的新系統功能的出現使駕駛更加安全。很多高級輔助(ADAS)應用,如自動巡航控制、道路偏離報警、交通信號標志識別等,已經成為車輛上非常方便的功能,但對車輛行為沒有影響或影響很小。然而,現在這些技術開始在車輛控制中扮演積極主動的角色,如車道輔助保持(LKA)或自動緊急剎車(AEB)等,以幫助實現減少交通事故的既定目標。這帶來的挑戰是,當系統出現故障時,必須確保系統不會對車輛和環境造成更大的損害。

        本文引用地址:http://www.104case.com/article/201610/309976.htm

        本文以單前端攝像機系統為例,對其進行深入分析,介紹它如何通過使用Altera Cyclone V SoC確定關鍵數據流.在現有的診斷機制下,如何找到故障;并提供一些診斷實例,通過靈活的可編程,在系統級實現診斷。與使用通用微處理器、數字信號處理(DSP)和其他平臺相比,在某些情況下,針對實際應用使用定制診斷方法可以提高應用性能。

        ADAS應用中的

        上文提到的很多應用都有相對較高的計算需求,需要從雷達或視頻圖像中提取特征信號,確定目標及其蹤跡。這通常要求高性能多核CPU體系結構。這些CPU能夠靈活地對特殊事件重新編程,但缺點是效率較低,因為有些功能并非必需或很少使用。

        功耗是需重點關注的另一因素。很多系統位于后視鏡前面的擋風玻璃下面,直接暴露在陽光下,或位于散熱器前保險杠中,因此無法高效地散熱。當使用高頻運行的多核通用CPU體系結構時,很難滿足性能和功耗要求。使用可同時解決這些問題。FPGA的功耗通常比標準邏輯高,但與通用計算體系結構相比,高效的定制實現某一算法實際上降低了功耗。FPGA的另一優點是,當實現流處理算法后,可以避免在內部和外部存儲器之間傳送數據。若使用外部DDR存儲器進行數據處理,實際功耗會非常大。

        就性能而言,流處理也降低了某些應用中遇到外部存儲器帶寬問題的風險。FPGA內在的可編程特性帶來了通用計算體系結構所具有的某些優勢。它甚至支持系列產品的在現場更新,實現在系統編程。在某些情況下,基于FPGA開發,要比基于CPU的高性能芯片體系結構容易得多。由于SoC越來越多,因此,FPGA能夠很好地結合這兩種體系結構,例如Altera Cyclone V SoC系列,它在一個芯片上集成了通用CPU系統和FPGA架構。Cyclone V SoC實現了兩個ARM Cortex—A9 CPU,支持通用微控制器和處理器常用的很多外設。

        性能安全

        與目前市場上的其他解決方案相比,FPGA更加容易滿足應用的功能安全需求。ADAS需要滿足特殊的功能安全要求。2011年,發布了載重3.5噸以上的ISO26262標準,以降低系統出現故障后造成危險狀態的風險。這一標準要求實現嚴密的設計過程,在應用執行過程中探測隨機硬件故障,以減少系統性故障。它涉及到一個系統及多個系統的分析和開發,列出了系統中使用的每一硬件組件的指南(包括這些硬件組件上運行的軟件),設定了產品整個安全生命周期中的要求。

        應用開發人員定義了專門的安全目標,針對每一目標分配了相應的汽車安全完整性等級(ASIL)。對于應用中最高級別的ASIL,通常定義了每一組件從開發直至工作到壽命終了時應滿足的要求。圖1顯示了ASlL目前的范圍,來自ADAS需要遵守的客戶需求。

        通過FPGA設計安全的高級輔助駕駛系統

        ASIL-B是市場上的最低級別,而某些應用則要求采用ASIL-D以支持某些功能。越來越多的ASIL有更嚴格的要求。在某些具體實現中,組件的通用ASIL或者條目(系統)等級都會帶來不必要的復雜度,對開發成本和進度有影響。建議應詳細地了解應用需求。這一般通過分析系統概念,并從中得出安全概念和要求來實現。還可以把應用分成幾種不同的步驟,具有不同的ASIL,更容易實現,效率更高。

        ADAS單前端攝像機應用系統概念

        本文舉例的前端攝像機應用使用了ADAS中常見的一個圖像傳感器。圖2顯示了系統的整體框圖。

        通過FPGA設計安全的高級輔助駕駛系統

        一個圖像傳感器連接至圖像處理器,即Altera Cyclone V SoC。信號處理鏈和數據流被分成4部分:

        ◆ 通過把圖像變換成更實用的表示,在像素級上進行底層處理。

        ◆ 對行圖像或者塊圖像進行中間級處理,使用相應的算法,例如Sobcl濾波器或者Canny邊沿探測算法等,提取出邊沿等特征。

        ◆ 進行高級處理,提取出每一幀的數據,探測目標并分類。

        ◆ 跟蹤識別出的目標,決定在危險環境下是否需要采取措施,例如剎車或者換擋電子控制單元(ECU)等會要求與微控制器進行通信。

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

        在整個處理過程中,每一步將輸入數據進行簡化得到更有意義的數據,數據減少意味著提高了安全臨界。因此,底層實現可以分成質量管理(QM)或底層ASIL(如ASIL-A)。這樣的原因是,一個像素期間引入的故障對后續算法性能的影響很小,可以忽略。在這個例子中,假設中間級處理符合ASIL-A或者ASIL-B,識別目標并進行分類的高級處理應符合ASIL-B。對目標進行分類后,生成目標表,提供給微控制器,進行目標跟蹤和判決。這是信號鏈最關鍵的部分,我們假設它應該符合ASIL-D,這對汽車的行力有直接影響。

        組件應用功能

        圖3顯示了單前端攝像機系統實例的總體結構圖。由一個外部電源管理電路為Cyclone V SoC提供電源。當供電電壓不在額定工作范圍內時,單獨的電壓監控功能會產生復位。外部非易失存儲器連接至四路串行外設(quad SPI)模塊,用于系統啟動過程中裝入應用程序并配置FP GA。執行應用代碼,存儲數據和圖像幀時,我們使用DDR存儲器。通過SPI連接外部微控制器,進行目標探測和最終判決,通過CAN總線接口與汽車基礎結構的其他部分進行通信。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 淄博市| 武清区| 巴东县| 台南县| 佛坪县| 武夷山市| 慈溪市| 阳西县| 东光县| 南京市| 大姚县| 娱乐| 七台河市| 胶南市| 鹤壁市| 荥阳市| 内乡县| 原阳县| 抚州市| 托克托县| 丰城市| 平顺县| 南充市| 准格尔旗| 鄂州市| 德惠市| 额济纳旗| 通渭县| 泸州市| 明溪县| 荃湾区| 莆田市| 黑水县| 扬中市| 南宁市| 凤翔县| 台南市| 东丰县| 芦溪县| 武隆县| 万盛区|