以MCU開啟Edge AI新境界:Renesas RA8P1實測
Posted By?Lin Felix?on 10 月 22, 2025 in?Edge AI應(yīng)用案例,?Edge AI開發(fā)地圖,?Renesas,?TinyML,?教學(xué)文,?
作者:Felix Lin
臺灣Maker圈對於瑞薩電子(Renesas)
RA系列屬於瑞薩Arm Cortex架構(gòu)的MCU,如下圖所示,
RA8P1 MCU甫於今年七月初問世,有別以往瑞薩MCU命名規(guī)則,
EK-RA8P1評估套件
EK-RA8P1 evaluation kit內(nèi)部包含了三塊電路板,分別是RA8P1晶片開發(fā)板、7” LCD 1024×600顯示擴充板,
如此高效能的MCU還能夠兼具低耗電的特性嗎? RA8P1採用使用臺積電(TSMC) 22nm 超低漏電(Ultra-Low Leakage,ULL)製程技術(shù),在相同的運作頻率下,
- Cortex-M85@1 GHz高效能應(yīng)用核心。執(zhí)行主要應(yīng)用程式與複雜運算,
搭配Helium (MVE)處理DSP或ML前後處理任務(wù)。 - Cortex-M33@250 MHz即時與安全核心。執(zhí)行常態(tài)即時性與管理性任務(wù),
必要時再把M85大核喚醒, 並且包含TrustZone安全隔離區(qū)。 - Ethos-U55@500 MHz AI加速器。NPU可把CNN/RNN推論的能耗大幅壓低,
AI推論效能可達(dá)256 GOPS等級,獨立於前兩者M(jìn)CU運作。
如同下圖所示,RA8P1內(nèi)部的Cortex-
安裝FSP with e2Studio
開發(fā)MCU通常都會用上整合式開發(fā)環(huán)境(Integrated Development Environment,IDE),
而FSP可以理解為 BSP (Board Support Package,開發(fā)板支援套件)、 HAL (Hardware Abstraction Layer,硬體抽象層)、Middleware (中介軟體)、RTOS (即時作業(yè)系統(tǒng))等軟體的整合套件(如下圖所示),
筆者將以建議安裝的FSP + e2studio的搭配組合說明,如果是已經(jīng)習(xí)慣使用Keil MDK或是IAR的開發(fā)者,
而雖然e2studio與FSP為兩套不同的軟體,
執(zhí)行後提供 “Quick Install” 與 “Custom Install” 兩種安裝選項,筆者建議可以選擇後者 “Custom Install” 客製化安裝,並且在安裝流程的 “Customise Features” 與 “Additional Software” 兩個步驟需要選擇欲安裝的軟體元件,把所有能安裝的都給裝上。
RUHMI
Renesas RUHMI (Robust Unified Heterogenous Model Integration)
要在 Windows 上安裝 RUHMI 也僅需幾個簡單步驟,首先須安裝微軟 VC++ 可轉(zhuǎn)散發(fā)套件與Python 3.10。完成後在windows power shell下建立虛擬環(huán)境,這邊須留意虛擬環(huán)境的路徑必須為.
py -3.10 -m venv .venv
?接著將當(dāng)前目錄設(shè)定為 CONVERSION_TOOL_E2STUDIO_PLUGIN_PYTHON_VENV_LOC 環(huán)境變數(shù),方便給e2studio查找。 並且設(shè)定允許執(zhí)行網(wǎng)路來源的腳本:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
?
?
啟用虛擬環(huán)境:
?
?
從github下載最新版本RUHMI,
?
安裝所需python模組:
python -m pip install .\mera-2.4.0+pkg.179-cp310-
python -m pip install onnx==1.17.0 tflite==2.18.0
?
完成後輸入以下指令,確認(rèn)是否有順利安裝成功:
vela –version
python -c “import mera;print(dir(mera))”
?
若出現(xiàn)如下圖所示的2.4.0+pkg.179、4.2.
燒錄範(fàn)例程式
瑞薩官方的EK-RA8P1 Example Project Bundle裡面包含各種類型的範(fàn)例程式提供RA8P1的開發(fā)者
將EK-RA8P1 Example Project Bundle解壓縮後會有一個ek_ra8p1的資料夾,
匯入專案後可以直接點選e2Studio IDE 左上角的鐵鎚圖示進(jìn)行「build」開始進(jìn)行編譯,若在tool chain都正常安裝的情況下,
Extracting support files…
23:58:28 **** 項目quickstart_ek_ra8p1_
make -r -j16 all
arm-none-eabi-size –format=berkeley “quickstart_ek_ra8p1_ep.elf”
? ?text ? ?data ? ? bss ? ? dec ? ? hex filename
5736252 ? 15080 18142169? ? 23893501? ? 16c95fd quickstart_ek_ra8p1_ep.elf
23:58:32 Build Finished. 0 errors, 0 warnings. (took 4s.403ms)
接著準(zhǔn)備一條USB-A to USB-C傳輸線連接電腦到EK-RA8P1 的 J10 USB-C 介面上,評估版上電源指示燈會點亮?;氐絜2Studio IDE中,點選蟲子圖示旁的箭頭,選擇「除錯配置」。
在開啟的對話框中左側(cè)欄位選擇到目前的quickstart_
等待系統(tǒng)初始化完成後,EK-RA8P1的觸控螢?zāi)粚@示「
MCU實現(xiàn)視覺模型推論
前段的「Hello World」範(fàn)例若是正常運作,就可以進(jìn)入到RA8P1的主場-
目前僅有「Smart City」可供選擇,另一個「Notice」
選擇後會開啟ruhmi-framework-
完成匯入後顯示目前專案與AI模型的相關(guān)資訊,右側(cè)有「Edit and Build」的按鈕可以修改專案程式碼,
筆者建議這裡可以直接點選左側(cè)「Run on the Board」按鈕,再點選「Run the AI]進(jìn)行編譯並且燒錄到開發(fā)板中,實際執(zhí)行範(fàn)例程式。
範(fàn)例程式使用的模型是MobileNet V1 (alpha=0.25) 執(zhí)行影像分類推論,模型大小相當(dāng)精簡,但辨識精確度卻也不含糊。
自定義模型轉(zhuǎn)換
若要將前段所使用的範(fàn)例程式內(nèi)的模型更換成自己的模型,
STEP 1:準(zhǔn)備模型。基本上只要是TensorFlow Lite都可以進(jìn)行轉(zhuǎn)換,筆者為方便說明,
.\.venv\Scripts\Activate.ps1
?cd .\ruhmi-framework-mcu\
執(zhí)行下方指令,完成後會產(chǎn)出alpha為0.
參考log如下圖所示:
STEP 2:開啟模型轉(zhuǎn)換工具。回到e2Studio中的AI Navigator,選擇專案後點選「Edit and Build」,左側(cè)會出現(xiàn)「Convert AI Model」,選擇後再點選右方「Covert…」
STEP 3:設(shè)定匯入模型。在轉(zhuǎn)換工具頁簽中,左側(cè)有三個欄位,分別為「
STEP 4:設(shè)定最佳化模型。此步驟主要在做模型的量化「
STEP 5:轉(zhuǎn)換模型生成 C code。在轉(zhuǎn)換選項中可以設(shè)定最佳化模式以及記憶體配置,
STEP 6:複製檔案到mera目錄下。找到生成程式碼的資料夾,
STEP 7:手動修改 wrapper.h。由於模型架構(gòu)可能和範(fàn)例程式不同,
STEP 8:編譯、燒錄。依循前述步驟執(zhí)行完成後,
AI應(yīng)用案例
除了Example Project Bundle範(fàn)例程式之外,
駕駛監(jiān)視系統(tǒng)DMS
先進(jìn)駕駛輔助系統(tǒng)(Advanced Driver Assistance Systems,ADAS)在各種車款中日益普及,
Nota AI提出基於Renesas RA8D1、RA8P1、RZ/V2L的DMS解決方案,
智慧城市視覺感知系統(tǒng)
臺灣近年來有增設(shè)許多智慧交通的建設(shè),
從效能上來看,在RA8P1的Cortex-
小結(jié):揭開 MCU 的新篇章
Renesas RA8P1的問世開啟了 MCU 發(fā)展史的新篇章,擁有強大的異質(zhì)運算能力、高性能與低功耗兼具、