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次,发文人进小黑屋喔~

评论