【ATU Book-S32V系列】APEX 新知介紹

一.   概敘

先進駕駛輔助系統 ADAS (Advanced Driver-Assistance Systems) 為近年來車輛發展的重要趨勢之一。國際間,各家大廠紛紛投入人力與技術資源,佈下先機以利於搶佔市場。而知名半導體大廠 - 恩智浦 NXP,專門進攻車用處理晶片與相關感測器,其中高階處理晶片就是 S32V234,這也是本篇系列文章主要介紹的處理晶片。可以透過 NXP所開發的 S32V234 處理晶片做一系列相關的車用安全演算法,像是疲勞監控、駕駛者監控 DM、車道偏移偵測 LDW、前方防碰撞偵測 FCW,甚至全景監控 3D-AVM 都能實現。本篇將從 S32V234 處理器介紹起,將一步步帶領初學者認知 APEX 功能與作用,最重要的是傳達 APEX 核心在整個 S32V234 中所扮演的角色以及負責的作用 !! 並希望能透過最後提供的視頻引起大家對 APEX 的興趣 !!


S32V234 車用相關演算法之示意圖

 圖文出處 : NXP網站

 

二.   NXP S32V234 架構介紹

NXP S32V234 是一個很強大的處理晶片,裡面包含了許多核心,並各自具有獨立的作用。如下圖所示,為原廠提供的 NXP 架構示意圖,主要核心平台為灰色方塊之標題的部分的部分,分別為 :

(1) 影像處理平台 (Image Processor Platform) :

顧名思義,就是專門為了影像處理所設計的平台,內有 雙鏡頭介面 (Dual Camera Interfaces) 能同步兩顆鏡頭輸入、並可以結合 影像訊號處理核心 (Image Signal Processing) 以及 影像識別處理核心 (Image Cognition Processor) 這兩類核心結構,幫助開發者設計演算法,藉由這兩類核心獨有的硬體架構加快演算法。其中此系列的主題將介紹影像識別處理核心內的主要核心 APEX2CL ,簡稱 APEX 。透過此核心的架構能大幅度加快算法運算,高達 80 GMACS 的運算速度。亦表示每秒具有 800億次的定點乘累加運算。

(2) 中央處理器平台 (CPU Platform) :

CPU Platform 就是我們一般熟知計算機處理架構,這裡 S32V234 搭載4顆 Quard Cortex-A53 處理器,運行頻率高達 1 GHz,具相當足夠的能力處理整個系統。並搭配上述的影像處理平台能夠有效分擔系統的負擔,提高執行效率。

(3) 視覺平台 (Vision Platform) :
此平台主要用於視覺相關處理的核心,主力核心為 顯示控制單元 (Display Control Unit) 以及 圖形處理器 (Graphics Processing Unit)。其中 DCU 為顯示方面的控制核心,而另一個視覺處理的核心就是 GPU ,型號為 GC3000,此核心的架構與 APEX 相似,但最主要的差異為 GPU 隸屬於多指令多數據流 (MIMD) 架構,比起 APEX 更加耗電,較浪費效能。因此這裡建議將複雜的算法交予 GPU 運算較為適當,例如 3D-AVM 、空間轉換等等運用較多浮點數之算法。


S32V234 核心架構示意圖

 圖文出處 : NXP網站

 三.  APEX 核心定位介紹


系列的主題為APEX ,但因上述介紹了 S32V234 內有許多核心,故此小節就來闡述各個核心在算法上的應用。讓開發者更能清楚的理解 APEX 這顆核心的角色定位為何。先從原廠提供的 S32V234 各核心應用示意圖說明起,如下圖上方的流程圖,為影像識別的演算流程,從 影像預處理(Image Pre-Processing) 開始,直到完成物件識別 (Objection Recognition) 到最後的視覺輸出顯示,皆有各個負責的核心去處理。像是影像預處理的動作主要就是由 ISP(Image Signal Processing) 負責解析鏡頭訊號與基礎的影像處理、特徵擷取的動作就是由 APEX 負責運算提取特徵、物件識別就是由 CPU 進行識別以及最後再由 DCU 負責顯示其結果。


S32V234 各核心應用示意圖
圖文出處 : NXP網站

 

因為不同的演算法適合不同的核心應用,這裡舉一個更實際的 車道偏移偵測(Lane Departure Warning)  範例作說明。亦可以僅利用 ISP 與 APEX 進行實作,如下圖所示,ISP 核心負責從鏡頭訊號處理成原始影像,以及將彩色影像轉成灰階影像的動作。其餘的車道線特徵算法就透過 APEX 去運算實現,像是可以利用此核心估算閥值以建構出二值化影像,再藉由細線化的條件將車道線的特徵變細小,最後再利用霍夫轉換的概念,將極座標轉換成直角坐標,並統計出最具代表的直線就找到車道線,並可以進行一些警告的設置。 因此 APEX 於整個 S32V234 的處理器上的最佳的角色定位就是負責運算處理主力算法的部分,以加速算法的運算速度,減少 CPU 的運算負擔。


車道偏移核心應用示意圖


回到最初所介紹的 S32V234 車用相關演算法之示意圖 ,這系列所要介紹的就是 APEX 這個核心,該如何應用? 硬體架構是如何動作,以及如何利用 APEX 進行演算法開發。而系列的後續有更進階的 APEX 應用,像是 APEX 最底層的 APU 的架構探討以及如何設計出專屬的 APU Kernel,這系列最後都會詳細介紹。如下圖示意圖,這系列博文就是介紹如何利用 APEX 硬體加速的特性,去實現演算法,以呈現更好的成果表現。


S32V234 車用相關演算法之示意圖

圖文出處 : NXP網站


此系列可以參照 “ APEX技術指南-文章架構示意圖 “
如下圖所示,透過這個指南可以快速地找到所需的文章,以及這系列的相關流程。建議初步認識 APEX 的技術人員先從 “初階使用方式” 進行閱覽,其文章將一步一步帶領各位認識 APEX 的軟硬體架構、搭建編譯環境,APEX-CV 資料庫以及建置專屬的 APEX 專案。待有一定認知之後,即可進入至 “進階使用方式”,這系列的文章,將從最底層的 APU 建置起,並指導各位 ACF 該如何建置,最後建置屬於自己的 APEX Kernel !! 以利更靈活的使用 APEX !!


APEX 技術指南-文章架構示意圖

      接下來還會分享更多 APEX 的技術文章 ! 敬請期待 【 ATU Book-S32V系列 】 !!

      大聯大旗下世平集團 ATU 部門可以提供相關設計方案,需要請聯繫 atu.cn@wpi-group.com


 

相關影片

【ATU Book-S32V系列】 APEX 新知介紹

介紹 NXP S32V234 之 APEX 新知識

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論