デバイスサポート
製品開発を問題なく開始できるように、IAR製品のインストールには、広範囲のデバイス固有のサポートが提供されています。
32 ビット Arm デバイス
Armv4、Armv5、Armv6、Armv7、およびArmv8 世代に属するほとんどのコアおよびデバイスはサポートされています(Armv8.1-Mを含む)。
Arm アーキテクチャプロファイル
32-bit Arm プロパティ
32 ビットArmデバイス(Mプロファイル以外)には、 ユーザーモード、割り込み(FIQ, IRQ) モード、スーパーバイザーモードなどのCPU モードがあります。
32ビットArmデバイスには、3つの命令セットがあります(すべてのコアには3つの命令セットはありません)。
Thumb (T)、16ビットワイド命令。コンパクトなコードに使用。
Arm (A32)、32ビットワイド命令。より速いコードに使用。
Thumb-2 (T32)、Thumb命令セット用に拡張した32ビットワイド命令。
アドレスは常に32ビットです。
レジスタセットは、13個の汎用32ビットレジスタから構成されます。
32ビットArmデバイスには、VFP(ベクタ浮動小数点)やSIMD(シングルインストラクションの複数のデータ)などのコプロセッサがあります。コプロセッサには、16個の64ビットレジスタと32個の128ビットレジスタがあります。
32ビットArmデバイスは、オブジェクトおよびイメージフォーマットとして、32ビットELFを使用します。
64 ビット Arm デバイス
Armv8.4-A以前のアーキテクチャをベースにした64ビットArmデバイス、およびArmv8-R AArch64をサポートしています。
Armv8-A/R 世代は2つの実行状態を定義します。AArch32およびAArch64です。(一部のコアは、両方の実行状態をサポートしていません。)
AArch32実行状態
32ビットAAarch32実行状態はArmv7-Aアーキテクチャと互換性があり、同じCPUモード、命令セット、レジスタセットなどがあり、VFPおよび高度なSIMDがあります。この実行状態では、CPUは常に32ビットモードで実行します(例外モード参照)。
AArch64実行状態
AArch64 は、4つのレベルの権限をサポートしています。
CPUは高いELから低いELにトラバースすることができ、その間にAArch64からAArch32の実行状態に変更できます。
AArch64状態では、CPUは常に64ビットモードで実行します。例外モードを参照してください。
Arch64は、32ビット命令がある1つの命令セット、A64をサポートします。
アドレスは常に64ビットです。
レジスタセットは、31個の64ビットワイド汎用レジスタがあります。
A VFPおよびNEONモジュールは常に表示されます。モジュールには、128 ビットワイドの32個のレジスタがあります。
注: ILP32データモデルを使用しているAArch64の生成したコードは、LP64データモデルを使用して生成したコードとリンクできません。AArch32とAArch64の生成されたコードは、どちらもともにリンクできません。
定義済みサポートファイル
IAR製品のインストールには、さまざまなデバイスをサポートするための定義済ファイルが含まれています。追加のファイルが必要な場合は、既存のファイルをテンプレートとして使用することにより、作成できます。
I/Oヘッダファイル
標準の周辺ユニットは、デバイス専用のI/Oヘッダファイル(拡張子はh)で定義されています。製品パッケージには、リリース時に入手可能なすべてのデバイス用のI/Oファイルが付属しています。これらのファイルは、arm\inc\<vendor>ディレクトリにあります。該当するインクルードファイルをアプリケーションのソースファイルにインクルードしてください。追加のI/Oヘッダファイルが必要な場合は、既存のヘッダファイルをテンプレートとして使用することにより、作成できます。ヘッダファイルの形式について詳しくは、arm\docディレクトリのEWARM_HeaderFormat.pdfを参照してください。
デバイス記述ファイル
デバッガは、使用可能なメモリエリア、周辺レジスタおよびこれらのグループの定義など、いくつかのデバイス固有の要件を、デバイス記述ファイルを使用して処理します。これらのファイルは、arm\configディレクトリにあり、そのファイル名拡張子はddfです。周辺レジスタおよびそのグループは、個別のファイル(ファイル名拡張子sfr)で定義できます。これは、ddfファイルに含まれています。これらのファイルの詳細については、arm\docディレクトリにあるデバイス記述ファイルの修正』およびEWARM_DDFFORMAT.pdfを参照してください。
開発を開始するためのサンプルプロジェクト
アプリケーションのサンプルはIAR Embedded Workbenchに同梱されています。これらのサンプルを使用して、IARの開発ツールを使用する準備を行えます。また、これらのサンプルを基にして、アプリケーションプロジェクトを開始することもできます。
サンプルは現状のまま提供されます。既製のワークスペースファイルが、ソースコードファイルおよび関連する他のすべてのファイルとともに提供されます。サンプルプロジェクトを実行する方法については、サンプルプロジェクトの使用を参照してください。