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