お客様の素早い設計とより早い製品化を実現する、技術情報と専門知識をご紹介します。
1
パッケージの内容2
組込みLinux3
組込みAndroid4
MCUXpresso SDK次のセクションでは、i.MX 8M Plus EVKをブートする手順について説明します。
開発キットの内容:
パッケージ内容の説明ビデオを見て、i.MX 8M Plus EVKでのアプリケーションの開発を始めましょう。詳細については、i.MX 8M Plusアプリケーション・プロセッサのドキュメントをご覧ください。
Something went wrong! Please try again.
i.MX 8M Plus EVKでは、ビルド済みのNXP Linuxバイナリ・デモ・イメージがeMMCに書き込まれています。内部のバイナリを変更することなく、eMMCからのブートにより、Linux上で他のアプリケーションをビルドするための特定の機能を備えたデフォルトのシステムが提供されます。
NXPの組込みLinux®、組込みAndroid™、MCUXpresso SDKの詳細については、以降のセクションを参照してください。
Something went wrong! Please try again.
付属のUSB micro-Bケーブルをデバッグ用UARTポートJ23
に接続し、ケーブルのもう一方の端をホスト・コンピュータに接続します。
4つのUART接続がホスト・コンピュータに表示されます。3番目のポートがA53
コア用、4番目のポートがM7
コアのシステム・デバッグ用です。
ターミナル・アプリケーションに慣れていない場合は、ステップ1.4に進む前に、次のいずれかのチュートリアルを参照してください。Minicomチュートリアル、Tera Termチュートリアル、PuTTYチュートリアル。
Something went wrong! Please try again.
イメージ・バイナリに付属のユーザー・インターフェースを表示するには、HDMIコネクタ (J17
) を使用してモニタを接続します。
Something went wrong! Please try again.
ブート・シーケンスの詳細は、i.MX 8M Plusリファレンス・マニュアルに記載されています。つまり、i.MXボードのブート・モードは、ブート設定スイッチによって制御されます。
これらのスイッチは、ブート・メディア(ボードに応じて、SDカード、eMMC、またはNAND)、シリアル・ダウンロード・プロトコル・モード (SDP)、またはeFusesの設定値を選択します。
また、SDPはブート・メディアのフォールバックとしても機能します。つまり、SDカードからブートするようにスイッチが設定されていてSDカード・スロットが空の場合、またはSDカードのバイナリ・コンテンツがブート可能でない場合は、ブート・シーケンスはSDPブートに切り替わります。
図4. i.MX 8M Plus EVKのブート・スイッチの設定
次の表は、i.MX 8M Plus EVKボードのブート・スイッチの設定の一覧です。同じ情報は、i.MX 8M Plusリファレンス・マニュアルおよびスイッチ近くのボード上のシルクスクリーンにも記載されています。
表1. i.MX 8M Plus EVKで利用可能なブート・モード
ブート・メディア | SW1101 [D1-D4] |
---|---|
ヒューズからのブート | 0000 |
シリアル・ダウンロード | 0001 |
eMMC/SDHC3 | 0010 |
MicroSD/SDHC2 | 0011 |
NAND 256ページ | 0100 |
NAND 512ページ | 0101 |
QSPI 3B読み出し | 0110 |
ECSPIフラッシュ | 1000 |
無限ループ | 1110 |
注:emmcからブートするようにブート・スイッチが設定されていることを確認してください。
Something went wrong! Please try again.
電源ケーブルを電源コネクタ (PORT0
) に接続します。
スイッチ (SW3
) を使用してボードの電源を入れます。
プロセッサがオンチップROMコードから実行を開始します。デフォルトのブート・スイッチ設定では、このコードにより、ブータブル・イメージが格納されているメディアを指定するヒューズが読み取られます。ブータブル・イメージが見つかると、U-Bootの実行が自動的に開始されます。
Cortex® A53のシリアル・コンソールに情報が表示されます。U-Bootプロセスを停止しない場合は、引き続きカーネルのブートが実行されます。
これでLinuxのブートは完了です。
ボードが起動すると、モニタの左上隅に4羽のペンギンが表示され、左上にLinuxターミナルのアイコン、右上にタイマが表示されます。これで準備が完了しました。
Something went wrong! Please try again.
このセクションは、ボードにLinuxオペレーティング・システムをロードする場合にのみ適用されます。
i.MX Linuxボード・サポート・パッケージ (BSP) は、特定のi.MX開発プラットフォームで組込みLinuxイメージをブートするために使用されるバイナリ・ファイル、ソース・コード、およびサポート・ファイルの集まりです。
Linuxバイナリ・デモ・ファイルの現在のリリースは、i.MXのLinuxダウンロード・ページにあります。その他のドキュメントは、i.MXソフトウェアおよび開発ツールのLinuxセクションにあるi.MX Linuxドキュメント・バンドルで入手できます。
i.MXボード上でLinux OSカーネルがブートできるようになる前に、Linuxカーネルがブート・デバイス(SDカード、eMMCなど)にロードされ、そのデバイスをブートするようにブート・スイッチが設定されます。
各種のボードやブート・デバイス用のLinux BSPイメージをダウンロードするには、さまざまな方法があります。
このスタート・ガイドでは、Linux BSPをSDカードに転送するいくつかの方法の概要を説明します。経験豊富なLinux開発者は、必要に応じて他のオプションを検討することができます。
Something went wrong! Please try again.
i.MX 8M Plus EVK用の最新のビルド済みイメージは、Linuxのダウンロード・ページでLinuxの最新バージョンの項目から入手できます。
ビルド済みのNXP Linuxバイナリ・デモ・イメージは、プロセッサの使用および評価のための標準的なシステムと基本的な機能のセットを提供します。システムを変更する必要なしに、ユーザーはハードウェアのインターフェースを評価し、SoC機能をテストし、ユーザー空間のアプリケーションを実行できます。
より柔軟性が必要な場合は、SDカードに個々のコンポーネント(ブート・ローダ、カーネル、dtbファイル、rootfsファイル)を1つずつロードするか、*wic
イメージをロードして個々の部分を特定のコンポーネントで上書きします。
Something went wrong! Please try again.
「パッケージの内容」セクションでの接続に加えて、適切なUSBケーブルを使用してPORT1
をホスト・マシンに接続します。
ボードの電源を切ります。「1.5 ブート・スイッチの設定」セクションを参照し、シリアル・ダウンロード・プロトコル (SDP) モードでブートするようにボードを設定します。
ホスト・マシンで使用されているOSに応じて、Linux BSPイメージをSDカードに転送する方法は異なります。詳細な手順については、以下のオプションを選択してください。
UUU GitHubのページから最新の安定ファイルをダウンロードします。UUUについてさらにサポートが必要な場合は、この広範なチュートリアルを参照してください。
uuu
libusb1
(apt-getまたは他のパッケージ・マネージャ経由)i.MX 8M Plus EVK用の最新のビルド済みイメージは、Linuxのダウンロード・ページでLinuxの最新バージョンの項目から入手できます。
ビルド済みのNXP Linuxバイナリ・デモ・イメージは、プロセッサの使用および評価のための標準的なシステムと基本的な機能のセットを提供します。システムを変更する必要なしに、ユーザーはハードウェアのインターフェースを評価し、SoC機能をテストし、ユーザー空間のアプリケーションを実行できます。
より柔軟性が必要な場合は、SDカードに個々のコンポーネント(ブート・ローダ、カーネル、dtbファイル、rootfsファイル)を1つずつロードするか、.sdcard
イメージをロードして個々の部分を特定のコンポーネントで上書きします。
デフォルトでは、イメージがemmcフラッシュに書き込まれます。他のデバイスにイメージを書き込む方法については、UUU GitHubのページを参照してください。
ターミナル・アプリケーションを開き、uuu
とi.MX 8M Plus EVK用の最新のLinuxディストリビューションが格納されている場所にディレクトリを変更します。uuu
ファイルに実行権限を追加し、ファイルを実行します。uuu
はUSBデバイスが接続されるまで待機します
$ chmod a+x uuu sudo ./uuu .zip
ボードの電源を入れると、uuu
はボードへのイメージのコピーを開始します。
完了したら、ボードの電源を切ります。emmcからブートするようにボードを設定する方法については、「ブート・スイッチの設定」を参照してください。
UUU GitHubのページから最新の安定ファイルをダウンロードします。UUUについてさらにサポートが必要な場合は、この広範なチュートリアルを参照してください。
uuu.exe
デフォルトでは、イメージがemmcフラッシュに書き込まれます。他のデバイスにイメージを書き込む方法については、UUU GitHubのページを参照してください。
コマンド・プロンプト・アプリケーションを開き、uuu.exeファイルとi.MX 8M Plus EVK用のLinuxリリースが格納されているディレクトリに移動します。
uuu.exe _images_.zip
ボードの電源を入れると、uuu
はボードへのイメージのコピーを開始します。
完了したら、ボードの電源を切ります。emmcからブートするようにボードを設定する方法については、「ブート・スイッチの設定」を参照してください。
ブート・シーケンスの詳細は、i.MX 8M Plusリファレンス・マニュアルに記載されています。つまり、i.MXボードのブート・モードは、ブート設定スイッチによって制御されます。
これらのスイッチは、ブート・メディア(ボードに応じて、SDカード、eMMC、またはNAND)、シリアル・ダウンロード・プロトコル・モード (SDP)、またはeFusesの設定値を選択します。
また、SDPはブート・メディアのフォールバックとしても機能します。つまり、SDカードからブートするようにスイッチが設定されていてSDカード・スロットが空の場合、またはSDカードのバイナリ・コンテンツがブート可能でない場合は、ブート・シーケンスはSDPブートに切り替わります。
図4. i.MX 8M Plus EVKのブート・スイッチの設定
次の表は、i.MX 8M Plus EVKボードのブート・スイッチの設定の一覧です。同じ情報は、i.MX 8M Plusリファレンス・マニュアルおよびスイッチ近くのボード上のシルクスクリーンにも記載されています。
表1. i.MX 8M Plus EVKで利用可能なブート・モード
ブート・メディア | SW1101 [D1-D4] |
---|---|
ヒューズからのブート | 0000 |
シリアル・ダウンロード | 0001 |
eMMC/SDHC3 | 0010 |
MicroSD/SDHC2 | 0011 |
NAND 256ページ | 0100 |
NAND 512ページ | 0101 |
QSPI 3B読み出し | 0110 |
ECSPIフラッシュ | 1000 |
無限ループ | 1110 |
注:emmcからブートするようにブート・スイッチが設定されていることを確認してください。
Something went wrong! Please try again.
このセクションでは、i.MX 8M Plus EVKボードに組込みAndroidシステム・イメージをロードするブート・プロセスについて説明し、独自のシステム・イメージを作成するソフトウェア・コンポーネントのビルド方法も紹介します。Androidプラットフォームのビルドの詳細については、こちらのAndroidビルド・ガイドを参照してください。
現在のリリースには、デモ・イメージ、ソース・コード、ドキュメントが含まれています。これらは、i.MXアプリケーション・プロセッサ用のAndroid OSにも含まれています。
開発システム上のストレージ・デバイス(MMC/SDまたはNAND)は、 i.MXブート・ローダを使用してプログラムする必要があります。ブート・プロセスでは、スイッチの設定に基づいて、どのストレージ・デバイスにアクセスするかを決定します。ブート・ローダがロードされて実行が開始されると、U-Boot環境空間が読み取られ、ブート・プロセスの実行方法が決定されます。
イメージは、ビルド済みのリリース・パッケージから取得することも、ソース・コードから作成することもできます。入手方法に関係なく、すべてのAndroidイメージには以下のコンポーネントが含まれます
u-boot.imx
boot.img
system.img
recovery.img
Android BSPの詳細については、Androidユーザー・ガイドを参照してください。
Something went wrong! Please try again.
ビルド済みのNXP Androidデモ・イメージは、評価用の特定の機能を備えたデフォルトのシステムを提供します。システムを変更することなく、ユーザーはいくつかの基本的な操作を実行し、システムと対話しながらハードウェア・インターフェースをテストし、ユーザー空間でソフトウェア・アプリケーションを開発できます。
パッケージのビルド済みイメージは、ブート・デバイスごとに分類され、デバイス名のディレクトリに格納されます。最新のビルド済みイメージ・ファイルは、i.MXソフトウェアおよび開発ツールのAndroidのセクション、またはデモ・イメージのダウンロード・リンクにあります。
Something went wrong! Please try again.
「パッケージの内容」セクションでの接続に加えて、適切なUSBケーブルを使用してUSB 3.0 Type-Cポート1
をホスト・マシンに接続します。
ボードの電源を切ります。
「ブート・スイッチの設定」を参照し、SDP(シリアル・ダウンロード・プロトコル)モードでブートするようにボードを設定します。
ホスト・マシンで使用されているOSに応じて、Android BSPイメージをSDカードに転送する方法は異なります。
Something went wrong! Please try again.
ブート・シーケンスの詳細は、i.MX 8M Plusクイック・スタート・ガイドに記載されています。つまり、i.MXボードのブート・モードは、ブート設定スイッチによって制御されます。
これらのスイッチは、ブート・メディア(ボードに応じて、SDカード、eMMC、またはNAND)、シリアル・ダウンロード・プロトコル・モード (SDP)、またはeFusesの設定値を選択します。
また、SDPはブート・メディアのフォールバックとしても機能します。つまり、SDカードからブートするようにスイッチが設定されていてSDカード・スロットが空の場合、またはSDカードのバイナリ・コンテンツがブート可能でない場合は、ブート・シーケンスはSDPブートに切り替わります。
次の表は、i.MX 8M EVKボードのブート・スイッチの設定の一覧です。同じ情報は、i.MX 8M Plusクイック・スタート・ガイドおよびスイッチ近くのボード上のシルクスクリーンにも記載されています。
表1. i.MX 8M Plus EVKで利用可能なブート・モード
ブート・デバイス | SW4-1 |
SW4-2 |
SW4-3 |
SW4-4 |
---|---|---|---|---|
ヒューズからのブート | 0 | 0 | 0 | 0 |
USBシリアル・ダウンロード・モード | 0 | 0 | 0 | 1 |
USDHC3(eMMCブートのみ、SD3 8ビット)デフォルト | 0 | 0 | 1 | 0 |
USDHC2(SDブートのみ、SD2) | 0 | 0 | 1 | 1 |
8ビットNANDシングル・デバイス、256ページ | 0 | 1 | 0 | 0 |
8ビットNANDシングル・デバイス、512ページ | 0 | 1 | 0 | 1 |
QSPI 3B読み出し | 0 | 1 | 1 | 0 |
QSPIハイパーフラッシュ3.3V | 0 | 1 | 1 | 1 |
ecSPIブート | 1 | 0 | 0 | 0 |
注:デフォルトのブート・デバイスはeMMC/uSDHC3です。他のブート・デバイスを試す場合は、各ブート・スイッチを表に記載された対応する値に変更します。
注:1 = オン、0 = オフ、X = Don’t Care
Something went wrong! Please try again.
MCUXpressoソフトウェア開発キット (MCUXpresso SDK) は、i.MX 8M Plus M7コアで実行される包括的なソフトウェア・ソース・コードを提供します。現時点でi.MX 8M PlusでCortex-M7を有効にしたくない場合は、このセクションをスキップできます。
MCUXpresso SDKは、Cortex®-M7をスタンドアロンまたはAコアとともに使用する組込みアプリケーションの開発用に設計されています。MCUXpresso SDKは、ペリフェラル・ドライバに加えて、基本的なペリフェラルの使用例からデモ・アプリケーションまでをカバーする豊富なサンプル・アプリケーションのセットを提供します。MCUXpresso SDKには、RTOSカーネルとデバイス・スタック、および迅速な開発をサポートするさまざまなミドルウェアも含まれています。
このガイドでは、REL_2.9.0
リリースで提供されているhello_world.bin
デモの実行方法について説明します。MCUXpresso SDKの詳細と、カスタム・デモの作成および展開方法については、MCUXpresso SDKのサイトをご覧ください。
Something went wrong! Please try again.
このセクションでは、SDカードとi.MXプロセッサ用のビルド済みU-Bootイメージを使用してアプリケーションを実行する方法について説明します。
hello_world.binなど
)をSDカードのFATパーティションにコピーします。 ボードのDEBUG UARTコネクタをUSBケーブルでPCに接続します。Windows OSはUSBドライバを自動的にインストールし、Ubuntu OSはシリアル・デバイスも検出します。
シリアル通信アプリケーションの詳細については、「USBデバッグ・ケーブルの接続」セクションを参照してください。i.MX 8M Plus EVKボードの2番目に列挙されたシリアル・ポートの2番目のターミナルを開きます。
ボードの電源を入れ、U-Bootのカウントダウンがゼロになる前に、任意のキーを押してブート・プロセスを停止します。最初のターミナルのU-Bootプロンプトで、次のコマンドを入力します。
=> fatload mmc 0:1 0x48000000 hello_world.bin
=> cp.b 0x48000000 0x7e0000 0x20000
=> bootaux 0x7e0000
これらのコマンドは、SDカードの最初のパーティションにあるイメージ・ファイルをCortex-M7のTCMにコピーし、Cortex-M7のリセットを解除します。
Something went wrong! Please try again.
ブート・シーケンスの詳細は、i.MX 8M Plusクイック・スタート・ガイドに記載されています。つまり、i.MXボードのブート・モードは、ブート設定スイッチによって制御されます。
これらのスイッチは、ブート・メディア(ボードに応じて、SDカード、eMMC、またはNAND)、シリアル・ダウンロード・プロトコル・モード (SDP)、またはeFusesの設定値を選択します。
また、SDPはブート・メディアのフォールバックとしても機能します。つまり、SDカードからブートするようにスイッチが設定されていてSDカード・スロットが空の場合、またはSDカードのバイナリ・コンテンツがブート可能でない場合は、ブート・シーケンスはSDPブートに切り替わります。
次の表は、i.MX 8M EVKボードのブート・スイッチの設定の一覧です。同じ情報は、i.MX 8M Plusクイック・スタート・ガイドおよびスイッチ近くのボード上のシルクスクリーンにも記載されています。
表1. i.MX 8M Plus EVKで利用可能なブート・モード
ブート・デバイス | SW4-1 |
SW4-2 |
SW4-3 |
SW4-4 |
---|---|---|---|---|
ヒューズからのブート | 0 | 0 | 0 | 0 |
USBシリアル・ダウンロード・モード | 0 | 0 | 0 | 1 |
USDHC3(eMMCブートのみ、SD3 8ビット)デフォルト | 0 | 0 | 1 | 0 |
USDHC2(SDブートのみ、SD2) | 0 | 0 | 1 | 1 |
8ビットNANDシングル・デバイス、256ページ | 0 | 1 | 0 | 0 |
8ビットNANDシングル・デバイス、512ページ | 0 | 1 | 0 | 1 |
QSPI 3B読み出し | 0 | 1 | 1 | 0 |
QSPIハイパーフラッシュ3.3V | 0 | 1 | 1 | 1 |
ecSPIブート | 1 | 0 | 0 | 0 |
注:デフォルトのブート・デバイスはeMMC/uSDHC3です。他のブート・デバイスを試す場合は、各ブート・スイッチを表に記載された対応する値に変更します。
注:1 = オン、0 = オフ、X = Don’t Care
Something went wrong! Please try again.
ドキュメントとビデオ | 説明 |
---|---|
AN12714 CAAMセキュリティ・キーを使用したi.MX暗号化ストレージ | このアプリケーション・ノートでは、i.MXの暗号化アクセラレータおよび保証モジュール (CAAM) が提供するセキュリティ・キー機能を利用して、DM-Cryptによる透過的ストレージ暗号化をブロック・レベルで実行する手順について説明します。 |
AN12838 CAAMセキュリティ・キーを使用した公開鍵暗号の強化 | このアプリケーション・ノートでは、i.MXアプリケーション・プロセッサで提供されているBlack Key機能に基づいた公開鍵暗号化方式について説明します。 |
AN12632 i.MX 8Mおよびi.MX 8MMでの拡張OpenSSL | このアプリケーション・ノートでは、暗号化アクセラレータおよび保証モジュール (CAAM) による高速化OP-TEE OSのサポートをOpenSSLに追加する方法について説明します。結果として、OP-TEEを介して安全な方法で暗号アルゴリズムを高速化できる拡張されたOpenSSLが得られます。 |
Trusted Execution Environment:i.MXプロセッサにおけるOP-TEEのスタート・ガイド | TEEの概要、サンプルの使用例、およびOP-TEEによるi.MXハードウェアのセキュリティ機能の活用方法について説明します。 |
エッジをセキュアに:製造の保護:非セキュアな環境における機密データのプロビジョニング | このウェビナーでは、製造の保護機能の概要、およびこの機能を使用して機密データをセキュアに転送およびインストールする方法について説明します。 |
AN4581 HABv4対応デバイスでの i.MXセキュア・ブート | このアプリケーション・ノートでは、HABv4を含む、i.MXアプリケーション・プロセッサ向けセキュア・ブートのリファレンスを提供し、署名付きイメージの生成やICをセキュアに動作させる設定の例を示します。 |
AN12812 ハードウェア・セキュリティ・モジュールを備えたコード署名ツールの使用 | このドキュメントでは、ユーザーがバックエンドのハードウェア・セキュリティ・モジュール (HSM) を備えたコード署名ツール (CST) を効果的に使用するために必要な情報を提供しています。 |
i.MXのセキュリティ機能と関連資料 | i.MXアプリケーション・プロセッサのさまざまなセキュリティ面に焦点を当てたドキュメントとコミュニティ・ポストを集約しています。 |
i.MX 8M Plus EVKボードには、暗号化と復号化のプロセスをハードウェアで高速化するために、CryptoDevを介して使用できる暗号化アクセラレーションおよび保証モジュール (CAAM) が含まれています。大量のデータを扱う場合や、パフォーマンスが重要なアプリケーションでは、このモジュールを使用することをお勧めします。
aes-128-cbc
です。OpenSSLの速度テストは、次のコマンドを使用して確認できます。
# openssl speed -evp aes-128-cbc
Doing aes-128-cbc for 3s on 16 size blocks: 43389139 aes-128-cbc's in 2.99s
Doing aes-128-cbc for 3s on 64 size blocks: 28788614 aes-128-cbc's in 3.00s
Doing aes-128-cbc for 3s on 256 size blocks: 11766741 aes-128-cbc's in 2.99s
Doing aes-128-cbc for 3s on 1024 size blocks: 3674139 aes-128-cbc's in 2.99s
Doing aes-128-cbc for 3s on 8192 size blocks: 495157 aes-128-cbc's in 3.00s
OpenSSL 1.0.2p 14 Aug 2018
built on: reproducible build, date unspecified
options:bn(64,64) rc4(ptr,char) des(idx,cisc,16,int) aes(partial) idea(int) blowfish(ptr)
compiler: arm-poky-linux-gnueabi-gcc -march=armv7ve -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a7 -DL_ENDIAN -DTERMIO -O2 -pipe -g -feliminate-unused-debug-types -Wall -Wa,--noexecstack -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS
The 'numbers' are in 1000s of bytes per second processed. type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
Aes-128-cbc 193627.86k 513839.78k 837089.96k 1048974.64k 1130986.42k
ソリューション:
ドキュメント「AN12838 CAAMセキュリティ・キーを使用した公開鍵暗号の強化」のセクション5.2.1および5.2.2で、使用方法の詳細について説明しています。
ドキュメントとビデオ | 説明 |
---|---|
AN12409 i.MX6/7/8シリーズUSB認証ガイド | この文書は、i.MX6/7/8シリーズのアプリケーション・プロセッサ・ファミリでUSB認証テストを実施する方法を説明することを目的としたものです。これには、手順の説明やUSBコンプライアンス・テストのツールおよび基準が含まれます。 |
AN13164 i.MX8MP PCIe帯域幅の分析 | このドキュメントでは、プロトコル・オーバーヘッド後にGen3 x1付近のライン・レート帯域幅 (8 Gbits/s) を実現できるケースについてより明確に理解できるよう、i.MX 8M PlusでのPCIeのさまざまな使用シナリオを提示しています。 |
AN13210 LinuxでのFlexCANの使用方法 | i.MX8MPは、リアルタイム・ドメインまたはLinuxドメインからプログラム可能な2つのFlexCAN FDインターフェースを提供します。このドキュメントでは、LinuxでFlexCANがどのように使用されるのかを明確に理解できるよう、i.MX 8M PlusでのFlexCANのさまざまな使用シナリオを紹介しています。 |
i.MXボード上でLinuxが動作している場合、i.MX SoCが提供する特別な機能を評価できます。このチュートリアルでは、i.MX 8M Plus EVKを使用してLinuxでインターネットに接続する手順を説明します。
RJ-45
コネクタにイーサネット・ケーブルを接続しますLinuxプロンプトで、次のコマンドを入力します
# ifconfig eth0
# ping 8.8.8.8 PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=119 time=4.81 ms 64 bytes
from 8.8.8.8: icmp_seq=2 ttl=119 time=4.87 ms 64 bytes
from 8.8.8.8: icmp_seq=3 ttl=119 time=4.94 ms 64 bytes
from 8.8.8.8: icmp_seq=4 ttl=119 time=4.61 ms
ドキュメントとビデオ | 説明 |
---|---|
クラウド・コネクティビティ | Amazon Web Services、Microsoft Azure、Google Cloud IoTなどのクラウド・サービスの統合サポート。 |
Linux OSを実行するi.MX 8M Quad EVK上のNXPベースのWiFiモジュールのスタート・ガイド | このマニュアルでは、i.MX 8M Quad EVKの起動、BSPイメージの設定、NXPベースのワイヤレス・モジュールとのハードウェア接続、Wi-FiおよびBluetoothの起動方法について取り上げています。 |
i.MX 8M Quad EVKにおけるNXPベースのワイヤレス・モジュールの機能設定ガイド | このドキュメントでは、Azurewave AW-CM358MA (88W8987) およびAzurewave AW-CM276MA (88W8997) ワイヤレス・モジュールを搭載したi.MX 8M Quad EVKでのWi-FiおよびBluetooth®の機能と構成について記載しています。Wi-FiおよびBluetoothインターフェースの初期化と設定について取り上げています。 |
PCA9450は 、i.MX 8M Plus向けに最適化されたNXPのパワー・マネジメントICです。
ドキュメントとビデオ | 説明 |
---|---|
AN13054 i.MX 8M Plusの消費電力の測定 | このアプリケーション・ノートでは、NXP EVKプラットフォームで実施されるi.MX 8M Plusアプリケーション・プロセッサの電流ドレイン測定について、いくつかの使用例を用いて説明しています。 |
i.MXボード上でLinuxが動作している場合、i.MX SoCが提供する特別な機能を評価できます。この例では、低消費電力モードへのサスペンドと、通常の動作を再開する方法を示します。
次のコマンドを入力して、ボードのウェイクアップ・ソースとしてシリアルTTYを有効にします。
パス:
# echo enabled > /sys/class/tty/ttymxc0/power/wakeup
次のコマンドを入力して、Suspend-To-RAMモードに入ります。
# echo enabled > /sys/class/tty/ttymxc0/power/wakeup
次のコマンドを入力して、Suspend-To-RAMモードに入ります。
# echo mem > /sys/power/state
PM: suspend entry (deep)
PM: Syncing filesystems ... done.
Freezing user space processes ... (elapsed 0.001 seconds) done.
OOM killer disabled.
Freezing remaining freezable tasks ... (elapsed 0.000 seconds) done.
Suspending console(s) (use no_console_suspend to debug)
SW01
スイッチを押して、ボードをウェイクアップします。ターミナルには次のメッセージが表示されます。
HIFsuspendwow TODO
PM: suspend devices took 0.112 seconds
Disabling non-boot CPUs ...
CPU1: shutdown
psci: CPU1 killed.
CPU2: shutdown
psci: CPU2 killed.
CPU3: shutdown
psci: Retrying again to check for CPU kill
psci: CPU3 killed.
Enabling non-boot CPUs ...
Detected VIPT I-cache on CPU1
GICv3: CPU1: found redistributor 1 region 0:0x00000000388a0000
CPU1: Booted secondary processor [410fd034]
cache: parent cpu1 should not be sleeping
CPU1 is up
Detected VIPT I-cache on CPU2
GICv3: CPU2: found redistributor 2 region 0:0x00000000388c0000
CPU2: Booted secondary processor [410fd034]
cache: parent cpu2 should not be sleeping
CPU2 is up
Detected VIPT I-cache on CPU3
GICv3: CPU3: found redistributor 3 region 0:0x00000000388e0000
CPU3: Booted secondary processor [410fd034]
cache: parent cpu3 should not be sleeping
CPU3 is up
PM: resume devices took 0.028 seconds
OOM killer enabled.
Restarting tasks ... done.
PM: suspend exit
ドキュメントとビデオ | 説明 |
---|---|
i.MX 8プロセッサ向けDSP Concepts製品 | i.MX 8Mファミリ向けDSP Conceptsオーディオ・プラットフォーム製品について紹介しています。 |
AN12195 i.MX8Mへの低消費電力オーディオの実装 | このドキュメントでは、i.MX 8Mにおける低消費電力オーディオ・アプリケーション設計について説明しています。 |
i.MX 8M Plus EVKボードのオーディオ・ジャックにイヤホンを接続します。
イヤホンにマイク機能(4つの接点を持つTRRS)が付いている場合は、マイク・ジャックを最後まで押し込まないでください。1つの接点リングを外側に残します。
#aplay -1
**** List of PLAYBACK Hardware Devices ****
card 0: imxspdif [imx-spdif], device 0: S/PDIF PCM snd-soc-dummy-dai-0 [S/PDIF PCM snd-soc-dummy-dai-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: wm8524audio [wm8524-audio], device 0: HiFi wm8524-hifi-0
[]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: wm8524audio [wm8524-audio], device 1: HiFi-ASRC-FE (*)
[]
Subdevices: 1/1
Subdevice #0: subdevice #0
# gst-launch-1.0 audiotestsrc ! alsasink device=plughw:2
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Redistribute latency...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GetAudioSinkClock
イヤホンで音が聞こえるはずです。
音を確認したら、キーボードの [Ctrl+C] を押してコマンド・ラインを終了します。
この例は、ビデオ・ファイルからオーディオだけをデコードする方法を説明します。SDカードのrootfsパーティションの/home/root/
にビデオ・ファイルをコピーし、SDカードからボードをブートして、次のコマンドを実行します。
注:Big Buck Bunnyのサイトから、例で使用されているファイルを無料で入手できます。
# gplay-1.0 SampleVideo_1280x720_2mb.mp4
FSL_GPLAY2_01.00_LINUX build on Mar 12 2018 11:48:19
Set VideoSink kmssink
Set TextSink fakesink ====== AIUR: 4.3.4 build on Mar 12 2018 11:47:35. ======
Core: AVI_PARSER_03.05.29 build on Aug 31 2017 09:15:57
file: /usr/lib/imx-mm/parser/lib_avi_parser_arm_elinux.so.3.1
Track 00 [video]: Disabled
Codec: 4, SubCodec: 1
-----------------------
------------------------ Track 01 [audio_0] Enabled
Duration: 0:09:56.424000000
Language: und
Mime: audio/mpeg, mpegversion=(int)1, channels=(int)2, rate=(int)48000, bitrate=(int)0
codec_data=(buffer)014d401fffe10017674d401fda014016ec0440000003004000000c83c60ca801000468ef3c80
------------------------
====== BEEP: 4.3.4 build on Mar 12 2018 11:47:45. ======
Core: MP3 decoder Wrapper build on Jan 11 2018 10:20:25
file: /usr/lib/imx-mm/audio-codec/wrap/lib_mp3d_wrap_arm_elinux.so.3
CODEC: BLN_MAD-MMCODECS_MP3D_ARM_02.13.01_ARMV8 build on Jan 11 2018 10:05:45. [Stop (No Repeated)][Vol=1.0][00:00:00/00:09:56]=========== fsl_player_play()=========== FSL_GPLAY2_01.00_LINUX build on Mar 12 2018 11:48:19
[h]display the operation Help
[p]Play
[s]Stop
[e]Seek
[a]Pause when playing, play when paused
[v]Volume
[m]Switch to mute or not
[>]Play next file
[ [r]Switch to repeated mode or not
[u]Select the video track
[d]Select the audio track
[b]Select the subtitle track
[f]Set full screen
[z]resize the width and height
[t]Rotate
[c]Setting play rate
[i]Display the metadata
[x]eXit
State changed: buffering
State changed: playing
[Playing (No Repeated)][Vol =1.0][00:00:13/00:00:13]EOS Found
getNextItem No next item!
No more media file, exit gplay!
State changed: stopped
Exit display thread
FSL_PLAYER_UI_MSG_EXIT
fsl_player_deinit
ドキュメントとビデオ | 説明 |
---|---|
i.MXグラフィックス・ユーザー・ガイド | このガイドでは、グラフィック・アプリケーションやビデオ・ドライバを作成する開発者向けに、グラフィックAPIおよびドライバのサポートに関する情報を提供します。 |
i.MX 8 GStreamerユーザー・ガイド | i.MX 8M Plus EVKでのGStreamer version 1.0の使用方法について、詳細に説明しています。このガイドには、デコード、エンコード、カメラ、ビデオ合成、ビデオのスケーリングと回転などの例が含まれます。 |
NXP MCUと組込みウィザードを使用したリアルタイム・インダストリアルHMIシステムへのグラフィックスの実装 | NXPはTARA Systemsと連携し、イネーブリング・ソフトウェア・テクノロジとして組込み型のウィザードを提供しています。 |
AN12189 i.MX 8M評価キット向けMX8-DSI-OLED1のクイック・スタート・ガイド | このドキュメントでは、MX8-DSI-OLED1アクセサリ・カード、タッチ・スクリーン・サポート付きMIPI-DSIインターフェースOLEDディスプレイ・キット、およびi.MX 8M EVKの使用方法の概要を説明しています。 |
AN12188 i.MX 8M評価キット向けIMX-MIPI-HDMIのクイック・スタート・ガイド | このドキュメントでは、i.MX 8M EVK、およびMIPI-DSI信号をHDMI信号に変換するIMX-MIPI-HDMIアクセサリ・カードの使用方法の概要を説明しています。 |
AN12187 i.MX 8M評価キット向けMINISASTOCSIのクイック・スタート・ガイド | このドキュメントでは、i.MX 8M EVK、およびOmniVisionチップ・セットOV5640をベースにしたMIPI-CSIインターフェース・カメラ・キットであるMINISASTOCSIアクセサリ・カードの導入方法について簡単に説明します。 |
ドキュメントとビデオ | 説明 |
---|---|
i.MX 8カメラのユース・ケース | i.MX 8 MIPI CSIのユース・ケース、Advanced GStreamerカメラのユース・ケース、i.MX 8M Plus EVKでサポートされている利用可能なカメラとドータ・カード、互換性のあるデバイス・ツリー (DTS) ファイル、およびさまざまなカメラ・オプションを有効化する方法について詳細に説明しています。 |
i.MX 8 GStreamerユーザー・ガイド | i.MX 8M Plus EVKでのGStreamer version 1.0の使用方法について、詳細に説明しています。これには、デコード、エンコード、カメラ、ビデオ合成、ビデオのスケーリングと回転などの例が含まれます。 |
AN12187 i.MX 8M評価キット向けMINISASTOCSIのクイック・スタート・ガイド | このドキュメントでは、i.MX 8M EVK、およびOmniVisionチップ・セットOV5640をベースにしたMIPI-CSIインターフェース・カメラ・キットであるMINISASTOCSIアクセサリ・カードの導入方法について簡単に説明します。 |
機械学習 (ML) は一般的に、人間が生み出した抽象概念の分類、認識、予測が求められる用途に幅広く対応します。画像認識、ジェスチャー認識、異常検出、音声のテキスト変換、テキストの音声変換、ASR、情景認識など、多くの例が挙げられます。ここでは、特に画像やビデオのストリームに適用されるNXP MLツールに焦点を当てます。オーディオのセクションで、ここに含まれるサンプルを参照している場合があります。
ドキュメントとビデオ | 説明 |
---|---|
eIQ® MLソフトウェア開発環境 | NXPのMCU、i.MX RT クロスオーバーMCU、i.MXファミリSoCで、MLアルゴリズムを使用できるようになります。eIQソフトウェアには、推論エンジン、ニューラル・ネットワーク・コンパイラ、最適化されたライブラリが含まれています。 |
i.MX機械学習ユーザー・ガイド | NXPのi.MX向けeIQ UMツールキットは、NXPのマイクロコントローラとアプリケーション・プロセッサを対象とした機械学習向けのライブラリと開発ツールのセットです。 |
i.MXアプリケーション・プロセッサ向けNXP eIQ®機械学習ソフトウェア開発環境 | このドキュメントは、i.MXファミリでサポートされているMLソフトウェアに関するガイドを提供します。eIQの概要、Yoctoのインストール・ガイド、およびサポートされているすべてのDNNおよび非DNNのサンプルを実行するためのステップ・バイ・ステップ・ガイドが含まれています。 |
eIQに関するよくある質問 (FAQ) | このドキュメントでは、eIQと組込み機械学習に関してよく寄せられる質問のいくつかを取り上げています。 |
AN13001 Glowのメモリの分析 | Glowコンパイラによって生成されたGlowメモリ情報を理解し、特定のモデルに必要なメモリを計算する方法を紹介します。このコンパイラは、モデルの実行に必要な最小メモリ・サイズを測定するために使用できます。 |
AN12766 Tensor Flow LiteのK-Meansクラスタリングを使用した、eIQによる異常検出 | 異常検出を使用した機械状態監視アプリケーションを実現する手順を紹介します。 |
i.MXアプリケーション・プロセッサ向けeIQソフトウェアのスタート・ガイド | 開梱、実装、モデリング、およびエッジでの推論について示す、NXP eIQ MLソフトウェア開発環境の使用に関する一連のステップ・バイ・ステップ・チュートリアル。 |
AN12964 i.MX 8M PlusにおけるNPUのウォームアップ時間 | このドキュメントは、NPUのウォームアップ時間が全体的な性能に与える影響を明確にすることを目的としています。 |
DeepViewRT®を使用したeIQ推論 - EdgeVerse MCUやマイクロプロセッサでの機械学習アプリケーション向けにプラットフォームが最適化された、独自のランタイム推論エンジン。
TensorFlow® Liteライブラリを使用したeIQ®推論 - TensorFlow Liteは、低レイテンシかつ小フットプリントの推論エンジンで、Eigenライブラリ、事前融合されたアクティベーション、量子化されたカーネルなどの技術が使用されています。
ドキュメントとビデオ | 説明 |
---|---|
AN12900 CAAMおよびMenderを使用したLinuxまたはSWアップデート向けのセキュアなOver-the-Airプロトタイプ | 特にi.MX 8M/MMを対象とした、Linuxイメージ向けセキュアOTAのプロトタイプの実装について説明します。 |
Ubuntu搭載i.MX8MMのDocker | このドキュメントでは、ホストPCでubuntu rootfsを作成し、任意のARM 64プラットフォームにDockerをインストールする方法について説明しています。 |
Linuxホスト・マシンのコマンド・プロンプトで、次のコマンドを実行してポート番号を確認します。
$ ls /dev/ttyUSB*
数字の小さい方がArm® Cortex®-A53コアの番号、大きい方がArm® Cortex®-M4コアの番号です。
次のコマンドを使用して、シリアル通信プログラム(例:minicom
)をインストールし、実行します。
$ sudo apt-get install minicom
$ sudo minicom /dev/ttyUSB* -s
図3. Minicomの設定
i.MX8MQuadのFTDI USBシリアル・チップは、2つのシリアル・ポートを列挙します。これらのポートをCOM9
、COM10
とします。小さい番号のポート (COM9
) はArm® Cortex®-A53からのシリアル・コンソール通信用で、大きい番号のポート (COM10
) はArm® Cortex®-M4コア用です。Serial-to-USBドライバは、http://www.ftdichip.com/Drivers/VCP.htmから入手できます。
注:i.MXボードの仮想COMポートのポート番号を確認するには、Windowsのデバイス・マネージャを開き、[ポート (COMとLPT)]でUSBシリアル・ポートを探します
オープン・ソースのターミナル・エミュレーション・アプリケーションです。このプログラムは、NXP開発プラットフォームの仮想シリアル・ポートから送信された情報を表示します。
COM
ポート番号を使用して、シリアル・ポートをボーレート115200
、8
データ・ビット、パリティなし、1
ストップ・ビットに設定します。この設定は[Setup(セットアップ)]>[Serial Port(シリアル・ポート)]から行うことができます。
i.MX8MQuadのFTDI USBシリアル・チップは、2つのシリアル・ポートを列挙します。これらのポートをCOM9
、COM10
とします。小さい番号のポート (COM9
) はArm® Cortex®-A53からのシリアル・コンソール通信用で、大きい番号のポート (COM10
) はArm® Cortex®-M4用です。Serial-to-USBドライバは、http://www.ftdichip.com/Drivers/VCP.htmから入手できます。
注:i.MXボードの仮想COMポートのポート番号を確認するには、Windowsのデバイス・マネージャを開き、[ポート (COMとLPT)]でUSBシリアル・ポートを探します
PuTTYは、広く利用されているターミナル・エミュレーション・アプリケーションです。このプログラムは、NXP開発プラットフォームの仮想シリアル・ポートから送信された情報を表示します。
COM
ポート番号を入力します。ボーレートもあわせて指定します。今回は「115200
」を入力します。COM
ポートが入力されていれば、ターミナル・ウィンドウが開きます。設定が正しくない場合は、アラートが表示されます。次の段階に進むために、以下で適切な課題を見つけましょう。不明な点がある場合は、NXPサポートにお問い合わせください。
トレーニング | 説明 |
---|---|
I.MX 8M Plusトレーニング | この製品に関するNXPのオンデマンド・トレーニング、ハウツー・ビデオ、およびウェビナーの全リスト。 |
NXPのいずれかのコミュニティ・サイトで、他のエンジニアとつながり、i.MX 8M Plusを使用した設計に関する専門的なアドバイスを受けることができます。
製品フォーラム:
ソフトウェア・フォーラム: