【導讀】嵌入式FPGA(eFPGA)將在這類芯片中扮演重要角色。如為了滿足第六條中提到的車輛外部360度視頻監(jiān)控數(shù)據(jù)的獲取和處理,采用eFPGA來設計相關功能芯片具有很明顯的優(yōu)勢。
2018年4月11日,工業(yè)和信息化部、公安部和交通運輸部聯(lián)合發(fā)布“關于印發(fā)《智能網(wǎng)聯(lián)汽車道路測試管理規(guī)范(試行)》的通知”,為我國智能網(wǎng)聯(lián)汽車道路測試提供了相關法律依據(jù)。三部委在賦予智能網(wǎng)聯(lián)汽車上路資格的同時,也提出了若干嚴格的條件。
其中,在第二章“測試主體、測試駕駛?cè)思皽y試車輛”的第七條第(四)點中,三部委要求:具備車輛狀態(tài)記錄、存儲及在線監(jiān)控功能,能實時回傳下列第1、2、3項信息,并自動記錄和存儲下列各項信息在車輛事故或失效狀況發(fā)生前至少90秒的數(shù)據(jù),數(shù)據(jù)存儲時間不少于3年:
1.車輛控制模式;
2.車輛位置;
3.車輛速度、加速度等運動狀態(tài);
4.環(huán)境感知與響應狀態(tài);
5.車輛燈光、信號實時狀態(tài);
6.車輛外部360度視頻監(jiān)控情況;
7.反映測試駕駛?cè)撕腿藱C交互狀態(tài)的車內(nèi)視頻及語音監(jiān)控情況;
8.車輛接收的遠程控制指令(如有);
9.車輛故障情況(如有)。
由此可以看出,上述條件除了對進行道路測試的智能網(wǎng)聯(lián)汽車有若干功能性要求外,還在相關領域?qū)⑼苿尤舾尚乱淮ㄐ?、監(jiān)控、控制和存儲等技術的發(fā)展,為智能網(wǎng)聯(lián)汽車專用SoC的開發(fā)提供新的市場機會。
嵌入式FPGA(eFPGA)將在這類芯片中扮演重要角色。如為了滿足第六條中提到的車輛外部360度視頻監(jiān)控數(shù)據(jù)的獲取和處理,采用eFPGA來設計相關功能芯片具有很明顯的優(yōu)勢。作為同時提供獨立FPGA芯片和eFPGA IP產(chǎn)品的公司,Achronix可以幫助智能汽車SoC設計人員先在FPGA芯片上開發(fā)和調(diào)試相關功能,而在市場進入批量化應用后無需顯著修改設計,立即將設計移植到搭載了eFPGA的SoC之上。
有關eFPGA如何支持嵌入式360度視域視覺系統(tǒng)設計,請閱讀Achronix Semiconductor資深產(chǎn)品營銷經(jīng)理Alok Sanghavi的文章,標題為“將eFPGA應用于嵌入式360度視域視覺系統(tǒng)中”。
帶有多個高分辨率攝像頭的嵌入式360°視域視覺系統(tǒng)已經(jīng)進入了各種應用中,如汽車傳感器融合、視頻監(jiān)控、目標檢測、運動分析等。在此類系統(tǒng)中,多個實時攝像機的視頻流(最多6個) 被匯聚在一起逐幀處理,進行失真和其他圖像偽影校正,調(diào)整曝光和白平衡,然后動態(tài)拼接成一個360°全景視圖,以4K清晰度和60 fps幀頻輸出,最終投影到一個球形坐標空間上。
目前用于此類應用的高分辨率魚眼相機鏡頭通常具有一個廣角視域(FOV)。環(huán)視相機系統(tǒng)最大的瓶頸之一是: 實時到或從外部存儲器存儲/讀取和訪問多路攝像機輸入數(shù)據(jù),然后將其作為一個單一幀進行處理。硬件需要在一幀延遲內(nèi),在輸入攝像機傳入的原始傳感器數(shù)據(jù)和拼接輸出視頻之間完成處理運行。
高性能計算平臺一直朝著與CPU一起協(xié)同使用FPGA的方向發(fā)展,以便為實時圖像處理任務提供專門的硬件加速。 這種配置使得CPU能專注于特別復雜的算法,其中它們可以快速切換線程和上下文,并將重復性任務分配給一個FPGA,以充當可配置的硬件加速器/協(xié)處理器/卸載引擎。 即使將FPGA和CPU作為分立器件使用,系統(tǒng)也可以提高整體效率,因為這些技術不會發(fā)生沖突,而是像將手套戴在手上一樣來配合在一起。
例如,從魚眼鏡頭獲得的圖像遭受嚴重失真之苦,因而基于多個相機視頻生成的拼接操作是高度計算密集型的任務,其原因為它是點像素操作。這種拼接需要大量的實時圖像處理和高度并行化的架構(gòu)。但是,這種下一代的應用超過了FPGA可不斷接續(xù)實現(xiàn)的性能,主要是由于芯片吞吐數(shù)據(jù)的延遲。這反過來會影響整個系統(tǒng)的整體延遲、吞吐速度和性能。
在一個SoC中加入可與CPU一起嵌入的eFPGA半導體知識產(chǎn)權(IP)。與一個獨立的FPGA芯片加CPU解決方案相比,嵌入式FPGA陣列結(jié)構(gòu)具有獨特的優(yōu)勢,主要優(yōu)勢在于性能更強。一個eFPGA可通過一個寬的并行接口直接連接到ASIC(無I / O緩沖器)上,提供顯著提高的吞吐量,以及以個位數(shù)時鐘周期來計數(shù)的延遲。低延遲是復雜的圖像實時處理過程的關鍵,例如糾正魚眼鏡頭的失真這樣的處理。
利用Speedcore eFPGA IP,客戶可以定義其邏輯、內(nèi)存和DSP資源需求,然后Achronix可配置其IP以滿足他們的需求。查找表(LUTs)、RAM單元塊和DSP64單元塊可以像積木一樣進行組合,為任何給定的應用創(chuàng)建最佳的可編程結(jié)構(gòu)。 除了標準邏輯、嵌入式存儲器和DSP單元模塊之外,客戶還可以在Speedcore eFPGA結(jié)構(gòu)里面定義他們自己的功能塊。通過把這些定制功能模塊與傳統(tǒng)構(gòu)建模塊一起集成到邏輯陣列結(jié)構(gòu)中,可添加優(yōu)化過的功能來減少面積和提高目標應用的性能,可使eFPGA的性能得到極大的提高,特別是對嵌入式視覺和圖像處理算法非常有效。
用自定義單元塊來成功地解決高性能圖像處理就是一個很好的例子,在實現(xiàn)您只看一次(YOLO)這一種使用了神經(jīng)網(wǎng)絡的、最先進的、實時對象檢測算法時,可以優(yōu)于早期的方法大大提高性能。該算法依賴于大量的矩陣乘法器,而在FPGA中實現(xiàn)時,這些矩陣乘法器需要使用DSP和RAM模塊來構(gòu)建;YOLO所需要的DSP和RAM模塊之間的最佳配置,與一個典型的FPGA陣列結(jié)構(gòu)中發(fā)現(xiàn)的不匹配之處就會出現(xiàn)問題。例如,F(xiàn)PGA陣列結(jié)構(gòu)可能提供18×27乘法/累加單元塊和32×128 RAM的DSP單元塊,而此時的最佳解決方案可能是帶有48×1024 RAM的16×8 DSP單元塊。通過創(chuàng)建實現(xiàn)最佳DSP和RAM模塊配置的定制單元塊,所得到的Speedcore陣列結(jié)構(gòu)所使用的芯片面積就會減少40%,來實現(xiàn)相同的功能并且能獲得更高級別的系統(tǒng)性能。
在SoC中嵌入FPGA陣列結(jié)構(gòu)提供了兩個額外的系統(tǒng)級好處:
更低的功耗 - 可編程I / O電路占獨立FPGA芯片總功耗的一半,而一個eFPGA可以與主控SoC中的其他模塊直接內(nèi)部線路連接,完全不需要大型可編程I / O緩沖器。
更低的系統(tǒng)成本 - 由于eFPGA只需實現(xiàn)特定功能,eFPGA的裸片尺寸遠小于等效的獨立FPGA芯片,這是因為eFPGA不再需要可編程的I / O緩沖器和不必要的接口邏輯。
借助超低延遲和實時處理功能,可以有效實現(xiàn)基于360°視域的視覺系統(tǒng),具有定制單元塊的Speedcore eFPGA與同一主控SoC中的一個CPU配合使用,非常適合去實現(xiàn)專用功能,如目標檢測和圖像識別、變形和失真校正、以及最后將最終圖像拼接在一起。在SoC中嵌入FPGA陣列結(jié)構(gòu)是超深亞微米時代系統(tǒng)集成的一個自然發(fā)展過程。
推薦閱讀: