NXP i.MX93 EVK Linux (Yocto)機器學習環境建置

i.MX93 處理器是i.MX系列中首個集成了Arm Cortex-A55內核的產品。因為內含Arm Ethos-U65 microNPU 可支持0.5 TOPS,有助開發人員打造功能更強大、更具成本效益、更節能的Linux Machine Learning應用。i.MX 93 EVK (板載11x11mm處理器晶片)提供了一個平臺,可供用戶全面評估i.MX 93應用處理器,並具備測量電源軌功耗的功能。這個雙板設計的解決方案包含計算模組以及基板,其中計算模組集成i.MX 93 SoC、LPDDR4、eMMC、QSPI、PMIC和功率監測電路,而基板提供產品評估所需的廣泛連接周邊介面。基於此評估套件,使用者可以對晶片進行全面評估,以加速終端產品設計。 

i.MX93 EVK(MCIMX93-EVKCM)



以下說明如何建置yocto Linux 環境及相關的生成images 的指令。

Linux 環境建置(使用 Yocto):
採用範例為NXP發行版本L6.1.22_2.0.0​適用於Yocto Project 4.2(Mickledore), 而建置環境的主機建議使用作業系統為ubuntu 20.04 或更新的版本。主機建議至少保留120GB 的硬碟空間。
如果是建置機器學習環境,則建議預留250GB硬碟空間,而記憶體大小建議為16GB. 詳細建置步驟如下描述。

  • 安裝主機工具包          
 $ sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils \
    debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev python3- subunit mesa-common-dev zstd liblz4-tool file locales 

          $sudo locale-gen en_US.UTF-8

  • 設置Repo實用程序:安裝 repo,並加入 PATH 中。如果bin folder 已存在,則可以省略以下步驟。
$ mkdir ~/bin
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
  • Yocto Project 建立
         使用如下的命令確認git設定。
$ git config --global user.name "Your Name"
$ git config --global user.email "Your Email"
$ git config --list

接下來使用如下步驟下載i.MX Yocto Project BSP

$ mkdir imx-yocto-bsp
$ cd imx-yocto-bsp
$ repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-mickledore -m imx-6.1.22-2.0.0.xml
$ repo sync

這個步驟之後,源代碼的目錄會位於 imx-yocto-bsp/sources,接下來進行 build image 的動作。
  • 構建Image
          為了簡化 machine 的建立流程,提供了一個 script,名為〝, imx-setup-release.sh〞。利用這個 script,並賦予特定待建構的machine 名稱,即可快速建構其相關環境。
           imx-setup-release.sh 腳本使用指令如下:

          EULA=1 MACHINE="${MACHINE}" DISTRO="${DISTRO}" source imx-setup-release.sh -b build_${DISTRO}

          "${MACHINE}"為 meta-imx/imx-bsp/conf/machine 資料夾中所支持的配置檔。
          "${DISTRO}" 的參數i.MX常用的為以下二種:
             fsl-imx-wayland :為純Wayland 圖形 
             fsl-imx-xwayland:Wayland 圖形及X11. 但使用EGL的 X11 應用是沒有支持的。


      所以以i.MX93 EVK構建環境的的指令範例為:
       EULA=1 MACHINE=imx93evk DISTRO=fsl-imx-xwayland source imx-setup-release.sh -b build_fsl-imx-xwayland
       
       此步驟需要一些時間把環境建置完成。建置完成後會在目錄下產出build_fsl-imx-xwayland 資料夾。
     
  • 建立 i.MX Yocto Project 的 image  
Yocto Project 可提供多種image 讓 user依需求做選擇。

因我們想要有機器學習的功能,所以選擇”imx-image-full”作為我們的範例。在所建置出的Yocto環境產出build_fsl-imx-xwayland 資料夾下,利用 bitbake 指令建出 images。指令如下:

                $ bitbake imx-image-full

完成之後,產生出來的 image 可以在"bld-xwayland-imx93/tmp/deploy/imx93evk”資料夾找到,其中檔案〝imx-boot-imx93evk-sd.bin-flash_singleboot 〞及” imx-image-full-imx93evk.wic.zst”為燒錄所需要的images 檔案。
  • Image 燒錄
       設定i.MX93EVK 板子 Boot Mode (SW1301[4:1) 到Serial Downloader. 



SW[4:1]1301 為0011(0表示OFF, 01稘ON),也就是將SW130位置的指撥開關第一及第二腳位調為ON ON進入燒錄模式。
並透過uuu燒錄工具,執行如下的指令燒錄image 到eMMC。搭配 uuu指令做完整的 eMMC 燒錄。

$uuu -b emmc_all imx-boot-imx93evk-sd.bin-flash_singleboot imx-image-full-imx93evk.wic.zst/*

而UUU 的版本建議為1.4.243以後的版本。

  • 開機

       燒錄完成後,切換Boot Mode 到eMMC的設定,使用eMMC 開機。

      有關Boot Mode 設定可以參考如下表格,因為使用eMMC 開機。所以SW1301[4:1] 切換為0000 設定。

      


參考文件:

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

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

評論