FRDM i.MX 95 Pro開発ボードのスタート・ガイド

最終更新日時: Jul 20, 2026 new サポート FRDM-IMX95-PRO

このドキュメントの内容

  • 1

    パッケージの内容
  • 2

    ソフトウェアの入手
  • 3

    ビルドと実行
  • 4

    開発者エクスペリエンス

1. パッケージの内容

次のセクションでは、FRDM-IMX95-PROボードをブートする手順について説明します。

1.1 キットの内容/同梱物一覧

キットには以下のものが含まれています。

  • FRDM i.MX 95 PRO開発ボード (FRDM-IMX95-PRO)
  • M.2モジュール x 1(PN:LBES5PL2EL)、Wi-Fi 6/BT 5.3/IEEE802.15.4
  • USB Type-Cオス - USB Type-Cオス x 1、白
  • USB Type-Cオス - USB Type-Cオス x 1、PD用、黒
  • ファスナー x 4、M2.5 * 20 + 6 mmナイロン製スタンドオフ
  • クイック・スタート・ガイド

パッケージ内容の説明ビデオを見て、FRDM-IMX95-PROボードでのアプリケーションの開発を始めましょう。詳細については、i.MX 95アプリケーション・プロセッサのドキュメントをご覧ください。

1.2 ボードの概要

次の図は、FRDM-IMX95-PROボードの上面にある重要なコンポーネントを示しています。

Figure 1: FRDM-IMX95-PRO Board Diagram (Top)

次の図は、FRDM-IMX95-PROボードの下面にある重要なコンポーネントを示しています。

Figure 2: FRDM-IMX95-PRO Board Diagram (Bottom)

1.3 eMMCからのブート

FRDM-IMX95-PROボードでは、ビルド済みのNXP Linuxバイナリ・デモ・イメージがeMMCに書き込まれています。内部のバイナリを変更することなく、eMMCからのブートにより、Linux上で他のアプリケーションをビルドするための特定の機能を備えたデフォルトのシステムが提供されます。

NXPの組込みLinuxの詳細については、次のセクションを参照してください。

1.4 USBデバッグ・ケーブルの接続

付属のUSB Type-Cケーブルをデバッグ用UARTポートJ22に接続し、ケーブルのもう一方の端をホスト・コンピュータに接続します。

ホスト・コンピュータで4つのUARTインターフェースが検出されます。A55、M33、M7の各コアのポート・マッピングは固定されていないため、4つすべてを開くことを強くお勧めします。

ターミナル・アプリケーションに慣れていない場合は、ステップ1.5 HDMIディスプレイの接続に進む前に、MinicomチュートリアルTera TermチュートリアルPuTTYチュートリアルのいずれかのチュートリアルを参照してください。

Linuxでデバッグする場合は、CH9114F Linuxドライバ がインストールされていることを確認してください。

1.5 HDMIディスプレイの接続

イメージ・バイナリに付属のユーザー・インターフェースを使用するには、HDMIコネクタJ21にHDMIケーブルを接続します。

1.6 ブート・スイッチの設定

SW4 [1-4] はブート設定用スイッチです。デフォルトでは、ブート・デバイスはeMMC/uSDHC1です。

BOOT_MODE3
SW4[1]
BOOT_MODE2
SW4[2]
BOOT_MODE1
SW4[3]
BOOT_MODE0
SW4[4]
ブート・コア ブート・デバイス
x 0 0 1 Cortex-M33 シリアル・ダウンローダ (USB)
x 0 1 0 uSDHC1 8ビットeMMC 5.1
x 0 1 1 uSDHC2 4ビットSD3.0
x 1 0 0 FlexSPIシリアルNORフラッシュ

1.7 電源の接続

USB Type-C - Type-Cケーブルを使用して、USB PD充電器をJ11に接続します。次に、電源スイッチSW1をスライドさせてボードの電源を入れます。USB PD充電器は、20 V/5 A出力をサポートしている必要があります。

ボードは、デフォルトではeMMCからブートするように設定されています。プロセッサはeMMCからのブータブル・イメージの実行を開始します。その後、U-Bootの実行が自動的に開始されます。

Arm Cortex-A55のシリアル・コンソールに情報が表示されます。U-Bootプロセスを停止しない場合は、引き続きカーネルのブートが実行されます。

ボードが起動すると、モニタの左上隅にペンギンが表示され、左上にLinuxターミナルのアイコン、右上にタイマが表示されます。これで準備が完了しました。

2. ソフトウェアの入手

i.MX Linuxボード・サポート・パッケージ (BSP) は、特定のi.MX開発プラットフォームで組込みLinuxイメージをブートするために使用されるバイナリ・ファイル、ソース・コード、およびサポート・ファイルの集まりです。

Linuxバイナリ・デモ・ファイルの現在のリリースは、Linuxダウンロード・ページにあります。その他のドキュメントは、i.MXソフトウェアおよび開発ツールのLinuxセクションにあるi.MX Linuxドキュメント・バンドルで入手できます。

2.1 概要

FRDM-IMX95-PROボードは、eMMCおよびSDカードからのブートをサポートしています。

このスタート・ガイドでは、Linux BSPをSDカードに転送するいくつかの方法の概要を説明します。オンボードeMMCに転送する場合は、すべてのコマンドで「sd」を「emmc」に置き換えてください。経験豊富なLinux開発者は、必要に応じて他のオプションを検討することができます。

2.2 NXP Linux BSPのビルド済みイメージのダウンロード

FRDM-IMX95-PROボード用の最新のビルド済みイメージは、Linuxのダウンロード・ページでLinuxの最新バージョンの項目から入手できます。

ビルド済みのNXP Linuxバイナリ・デモ・イメージは、プロセッサの使用および評価のための標準的なシステムと基本的な機能のセットを提供します。システムを変更する必要なしに、ユーザーはハードウェアのインターフェースを評価し、SoC機能をテストし、ユーザー空間のアプリケーションを実行できます。

2.3 Universal Update Utility (UUU) を使用したNXP Linux BSPイメージの書き込み

パッケージの内容セクションでの接続に加えて、適切なUSBケーブルを使用してUSB C (J7) をホスト・マシンに接続します。

電源アダプタを抜きます。セクション1.6 ブート・スイッチの設定を参照し、シリアル・ダウンロード・プロトコル (SDP) モードでブートするようにボードを設定します。

ホスト・マシンで使用されているOSに応じて、Linux BSPイメージをSDカードに転送する方法は異なります。詳細な手順については、以下のオプションを選択してください。

3. ビルドと実行

このセクションでは、FRDM-IMX95-PRO用のYocto BSPイメージをビルドする方法について簡単に説明します。

3.1 FRDM-IMX95-PRO Yocto BSP

FRDM-IMX95-PROボードのBSPリリースは、i.MXファミリ用Linux BSPリリースとともに四半期ごとにリリースされます。ソース・コードからFRDM-IMX95-PROイメージをビルドするには、まずi.MX Yoctoプロジェクトのユーザー・ガイドをお読みになり、YoctoプロジェクトとYoctoのビルドについて理解してください。その後、以下の手順に従ってFRDM-IMX95-PRO用のイメージをビルドしてください。ここでは、例としてLF6.18.20 2.0.0 BSPを使用します。

  1. 最新のi.MXファミリ用Linux BSPリリースをダウンロードします。
  2. $ repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-wrynose -m imx-6.18.20-2.0.0.xml 
    $ repo sync
  3. Yoctoプロジェクトのセットアップ:
  4. $ MACHINE=imx95-19x19-lpddr5-frdm-pro DISTRO=fsl-imx-xwayland source imx-setup-release.sh -b frdm-imx95-pro
  5. イメージのビルド:
  6. $ bitbake imx-image-full
  7. SDカードのイメージの書き込み:
  8. $ zstdcat imx-image-full-imx95-19x19-lpddr5-frdm-pro.rootfs.wic.zst | sudo dd of=/dev/sdx bs=1M && sync

    または、uuuを使用してSDカードにイメージを書き込む場合:

    $ uuu -b sd_all imx-image-full-imx95-19x19-lpddr5-frdm-pro.rootfs.wic.zst
  9. ブート・スイッチSW1 [1:4] を「0011」に切り替えてSDカードのブートを選択したら、SDカードを挿入してFRDM-IMX95-PROボードの電源を入れます。

4. 開発者エクスペリエンス

NXPでは、あらゆるスキル・レベルのユーザーが開発を迅速化できるように、プラットフォームのさまざまな特長や機能に基づく広範なサンプル・アプリケーションを提供しています。

4.1 アプリケーション・コード・ハブ

アプリケーション・コード・ハブ (ACH) リポジトリでは、NXPの社内エキスパートが開発したマイクロコントローラおよびプロセッサのソフトウェア・サンプル、コード・スニペット、アプリケーション・ソフトウェア・パック、デモなどを簡単に見つけることができます。このスペースでは、マイクロコントローラおよびプロセッサのアプリケーションをすばやく簡単に一貫した方法で検索できます。

ACHには、特定のアプリケーションをすばやく見つけるためのフィルタと検索のオプションがあります。Git機能のサポートにより、ユーザーの開発環境でアプリケーションを簡単にインポートして使用できます。

ACHの詳細については、こちらのリンクをご覧ください。

利用可能なFRDM-IMX95向けアプリケーション・サンプルを見つけるには、下図に示すように、デバイス・ファミリで「i.MX」を選択してください。

Figure 3: Example Applications for FRDM-IMX95

Figure 3: Example Applications for FRDM-IMX95

それぞれのアプリケーション・サンプルを選択して、詳細を確認してください。

Figure 4: Check Example Details

Figure 4: Check Example Details

各サンプル・アプリケーションのソース・コードを取得するには、画面上部の[Visit on GitHub(GitHubにアクセス)]ボタンをクリックして、NXP GitHubのコード・リポジトリにアクセスします。

Figure 5: Visit on GitHub button

4.2 i.MXアプリケーション・プロセッサ用GoPoint

i.MXアプリケーション・プロセッサ用GoPointは、Linux BSPに含まれているビルド済みアプリケーションを起動するためのユーザー・フレンドリーなアプリケーションで、i.MX SoCのさまざまな機能をすばやく実際に体験してみることができます。GoPointは、高度な機能に加え、GitHub で提供されているアプリケーション用のソース・コードとビルド・レシピを使用して、実装のための実用的なソリューションを提供します。

GoPointの詳細については、こちらのリンクをご覧ください。

FRDM-IMX95-PROの場合、GoPointはデフォルトでBSPリリースに含まれています。GoPoint GUIランチャーを開くには、FRDM-IMX95-PROが起動した後、以下に示すように画面の左上隅に表示されるGoPointロゴをクリックします。

Figure 6: GoPoint Logo

Figure 6: GoPoint Logo

利用可能なサンプル・アプリケーションは、各アプリケーションのスクリーンショットのアイコンとともに表示されています。サンプル・アプリケーションを選択すると、右側にそのサンプル・アプリケーションの簡単な説明が表示されます。選択されているアプリケーションを起動するには、[Launch Demo(デモを起動)]ボタンをクリックします。

アプリケーションの起動後は、ランチャーに表示される[Stop Current Demo(現在のデモを停止)]ボタンをクリックすることで、デモを強制終了できます 。

各アプリケーションの使用方法の詳細については、i.MXアプリケーション・プロセッサ向けGoPointのユーザー・ガイド(ドキュメントGPNTUG)を参照してください。

Figure 7: Available Example Applications

Figure 7: Available Example Applications

1. デバッグ・ターミナルの設定

Linuxのデバッグ・ターミナル

Windowsのデバッグ・ターミナル

2. Cortex-M7の使用

Cortex-M7の使用

FRDM-IMX95-PROには、リアルタイムかつ低消費電力のプロセッシングに使用できる、最大800 MHzで動作する汎用Arm Cortex-M7が1つ搭載されています。Cortex-M7コア上でプログラムをビルドして実行する方法については、アプリケーション・ノートAN14748「i.MX 95のM7コアでアプリケーションを実行する方法」を参照してください。

Cortex-M7コアで実行されるプログラムのデバッグ方法については、アプリケーション・ノートAN14120「i.MX 8M、i.MX 8ULP、およびi.MX 9でのVS Codeを使用したCortex-Mのデバッグ」を参照してください。

3. NPUへのMLモデルの実装

FRDM-IMX95-PROは、ニューラル・ネットワークの機械学習推論を高速化するために、最大8eTOPSで動作するニューラル・プロセッシング・ユニット (NPU) を搭載しています。NPUのハードウェア・アーキテクチャの詳細については、i.MX 95アプリケーション・プロセッサ・リファレンス・マニュアルを参照してください。NPUのソフトウェア・アーキテクチャの詳細については、i.MX機械学習ユーザー・ガイドを参照してください。

モデルの量子化

NPUでの高速化を実現するには、ニューラル・ネットワークの演算子を8 ビット(符号なし/符号付き)に量子化する必要があります。モデルの量子化については、最新のeIQツールキットをダウンロードし、ユーザー・ガイドを確認してください。

モデルの変換

NPUでの高速化を実現するには、量子化されたモデルをNeutronコンバータ・ツールを使用して変換する必要があります。最新のNeutronコンバータ・ツールは、eIQツールキットのページからダウンロードできるeIQ Neutron SDKに含まれています。i.MX95のモデルを変換するには、eIQ Neutron SDKのユーザー・ガイドに従ってください。

モデル推論

NNモデルのNPUでのパフォーマンスを評価するには、Linux BSPのbenchmark_modelツールを使用するのが最も簡単な方法です。このツールは、入力としてランダム・データを使用し、指定された実行回数の平均推論時間を提供します。以下に例を示します。

root@imx95frdm:~# /usr/bin/tensorflow-lite-2.19.0/examples/benchmark_model --graph=/usr/bin/tensorflow-lite-2.19.0/examples/mobilenet_v1_1.0_224_quant_converted.tflite --external_delegate_path=/usr/lib/libneutron_delegate.so

NPUでモデル推論を実行するためのコードをc++およびpythonで記述する方法については、GoPoint のアプリケーション・サンプルを参照してください。

4. System Managerの使用

System Managerの使用

FRDM-IMX95-PROには、SM (System Manager) の実行専用に、最大333 MHzで動作するArm Cortex-M33が1つ搭載されています。SMはNXPが提供するアプリケーションで、SoC内の他のプロセッサ用に低レベルのリソースを管理することを目的としています。

Cortex-M33はブート・コアとしてブートROMを実行し、SM(およびその他のブート・コード)がロードされた後はSMに分岐します。次に、SMは分離メカニズムなどいくつかのハードウェア機能を設定してから、システム内の他のコアを起動します。これらのコアを起動した後はサービス・モードに入り、Armのシステム制御および管理インターフェース(System Control and Management Interface:SCMI) に基づくクライアントRPC APIを介して、クロック、電源、センサ、およびピン制御にアクセスできるようになります。コア間の分離を容易にするために、SMはSoCを複数の論理マシン (LM) へと分割します。各LMは、ハードウェアとRPC API呼び出しの両方に対して、静的に設定可能なアクセス権を持ちます。

SMはGitHub imx-sm リポジトリ内にソース形式で提供され、お客様はニーズに合わせてコードを自由に変更および再コンパイルできます。ただし、SMの機能を拡張するために変更を加える場合は、その対象をお客様のボード層に限定することを推奨します。SMの機能を拡張する場合は、「ボード制御によるi.MX 9 System Manager機能の拡張」(ドキュメントAN14478)を参照してください。

5. VPUの使用

VPUの使用

FRDM-IMX95-PROは、H.264、H.265 4Kp30のデコードをサポートするデコーダとH.264、H.265 4Kp30のエンコードをサポートするエンコーダを含むビデオ処理ユニット (VPU) を備えています。

VPUをテストする最も簡単な方法は、次のコマンドを使用してMP4ビデオ・ファイルを再生することです。

root@imx95frdm:~# gplay-1.0 MP4_EXAMPLE_FILE.mp4

gplay-1.0は、VPUを自動的にビデオ・デコーダとして選択し、WestonデスクトップでMP4ファイルを再生します。接続されている場合は、HDMIディスプレイでビデオを再生できます。

アプリケーションでVPU APIを使用する方法の詳細については、 i.MX VPUアプリケーション・プログラミング・インターフェースLinuxリファレンス・マニュアル(ドキュメントRM00294)を参照してください。

6. ISPの使用

ISPの使用

FRDM-IMX95-PROは、500 Mpixel/s MIPI-CSIおよびISP(4レーン x 2、2.5 Gbps/レーン)、PHY内蔵(DSIとのmux x 1)のカメラ・インターフェースを備え、最大4Kp60fps x 1、4Kp30 x 2、1080p60 x 4、または1080p30 x 8のMIPI仮想チャネル対応カメラをサポートします。

ISPをテストするには、FRDM-IMX95-PROでEXPI-OS08A20カメラを使用できます。

u-boot=> setenv fdtfile imx95-19x19-frdm-pro-os08a20-isp.dtb 
u-boot=> boot

OS08A20カメラを接続した状態でFRDM-IMX95-PROがブートされたら、次のコマンドを実行して環境を設定し、OS08A20のカメラ・プレビューを開きます。

root@imx95frdm:~# cam -l 
root@imx95frdm:~# export LIBCAMERA_IPA_MODULE_PATH=/usr/lib/libcamera/ipa 
root@imx95frdm:~# export LIBCAMERA_PIPELINES_MATCH_LIST='nxp/neo,uvc' 
root@imx95frdm:~# export LIBCAMERA_IPA_CONFIG_PATH=/usr/share/libcamera/ipa 
root@imx95frdm:~# export CAMERA0="/base/soc/bus@42000000/i2c@42540000/os08a20_mipi@36" 
root@imx95frdm:~# gst-launch-1.0 libcamerasrc camera-name="${CAMERA0}" ! video/x-raw, width=3840, height=2160, format=YUY2 ! queue ! waylandsink

HDMIディスプレイにカメラのプレビューとして正しい映像が表示されれば、ISPは正常に動作しています。

ISPの使用方法の詳細については、i.MX 95カメラ移植ガイド(ドキュメントUG10215)を参照してください。

7. GPUの使用

GPUの使用

FRDM-IMX95-PROは、最大60 GFLOPS(高精度)で動作するMali-G310グラフィックス・プロセッシング・ユニット (GPU) を備えており、OpenGL ES 3.2、OpenCL 3.0、Vulkan 1.2をサポートしています。

GPUのパフォーマンスをテストする最も簡単な方法は、次のコマンドでglmark2-es2-waylandベンチマークを実行することです。

root@imx95frdm:~# glmark2-es2-wayland --fullscreen

この他にも、FRDM-IMX95-PROのデフォルトのrootfsにインストールされている多くのGPUサンプル・アプリケーションが/opt/imx-gpu-sdk/フォルダにあります。バイナリを直接実行するか、GoPointからアプリケーションを起動して試すことができます。

GPUの使用方法の詳細については、i.MXグラフィックス・ユーザー・ガイド(ドキュメントUG10159)を参照してください。

8. 高速ブート

高速ブート

特定のユース・ケースでは、デバイスの最小ブート時間の要件があります。これは、デバイスのブートを所定の時間内に完了させる必要があることを意味します。

ブート時間を最適化するために、FRDM-IMX95-PROはU-BootのFalconモードをサポートしています。FalconモードはU-Bootの機能で、SPLがLinuxカーネルを直接起動できるようにすることで高速ブートを可能にします。U-Bootのロードと初期化を完全にスキップし、ブートローダで費やされる時間を短縮する効果があります。

Falconモードを有効にしてブート時間を最適化する方法については、「Falconモードとカーネル最適化を使用したi.MX 8およびi.MX 9での高速ブート」(ドキュメントAN14093)を参照してください。