【お知らせ】最新バージョンのツール環境「インテル® Quartus Prime スタンダード・エディション開発ソフトウェア v22.1、Arm® Development Studio (Arm DS) 2022.2」向けにサンプル・プロジェクトのアップデートをおこないました。( 2023.03.23 )
このサンプルは、インテル® SoC FPGA 向けベアメタル・アプリケーションを構築する際のスタートポイントとして、ご使用いただけるサンプルです。
ハードウェア・ライブラリー(以下、HWLib)などベアメタル開発に必要なコードをあらかじめプロジェクト内に配置しビルド対象にしているため、ユーザーは必要なヘッダーファイルをインクルードするだけで、Makefile の編集をせずに API をご使用いただくことが可能です。
また未使用の API に関しては、リンク時に対象外としておりますのでコードサイズに影響を与えません。
添付の資料では、以下の内容を説明しています。
- 使用環境(対応バージョン、対応ボード)
- このサンプルを使用する利点
- サンプルのディレクトリー/ファイル構成
- コンパイル設定
- サンプルの基本動作
- コマンドの追加方法
- このサンプルのメインルーチン・ソースコードの説明
- 便利なユーティリティー関数の紹介
- HWLib(ハードウェア・ライブラリー)とは
- HWLib Examples
このサンプルを使用する利点
通常のベアメタルサンプル・アプリケーションでは、該当のインターフェース用の HWLib のみが使用される構成になっており、他の HWLib を使用するためには Makefile を修正して、追加の HWLib ソースを指定する必要があります。
また、 Makefile プロジェクトで提供されるため、ユーザーが追加したソースファイルについても Makefile に追記する必要があり、 インテル® SoC FPGA のソフトウェア開発フローを熟知していない方にとって理解するのに時間を要すものでした。
このサンプルでは、HWLib として提供されるソースがすべて登録済みとなっており、使用したい HWLib のヘッダーファイルをインクルードすれば、すべての API を使用することができるようにしてあります。
また、プロジェクトの TOP ディレクトリーに追加されたソースファイルは、すべてコンパイル対象にする状態としてありますので、基本的に Makefile を修正すること無く、各種評価が開始できるようになっています。
使用環境
開発環境と対応ターゲットボードについて記載します。より詳細な情報は、添付の説明資料 (.pdf) を参照してください。
開発環境
添付資料の説明で使用している主な開発環境を以下に示します。本サンプル・プロジェクトは以下の環境を使用して動作の確認をおこなっています。
【表1】 添付資料の説明で使用している主な環境
項番 |
項目 |
最新版(Ver22.1 / Arm DS 向け) |
旧版(Ver18.1 / DS-5 向け) |
---|---|---|---|
1 | ホスト PC | Microsoft® Windows® 10 (64 bit) 搭載の 64 bit マシン | Microsoft® Windows® 7 Professional SP1 (64 bit) 搭載の 64 bit マシン |
2 | インテル® Quartus® Prime スタンダード・エディション開発ソフトウェア(以降、Quartus Prime)
※ SoC FPGA のハードウェアを開発するためのツールです。 |
インテル® Quartus® Prime スタンダード・エディション開発ソフトウェア v22.1 を使用します。 Quartus® Prime スタンダード・エディション v22.1 参考: Quartus® Prime のインストール方法については以下のサイトをご参照ください。 Quartus® Prime & ModelSim® インストール方法注記: 使用するターゲットボードに搭載されている SoC FPGA に対応した Device データをインストールしておく必要があります。 Note: この資料では、「4-6. FPGA のコンフィグレーション」において、ハードウェア・デザイン(sof ファイル)を FPGA にダウンロードするために Quartus® Prime Programmer のみを使用しています。 |
インテル® Quartus® Prime 開発ソフトウェア・スタンダード・エディション v18.1 を使用します。 Quartus® Prime スタンダード・エディション v18.1 参考: Quartus® Prime のインストール方法については以下のサイトをご参照ください。 Quartus® Prime & ModelSim® インストール方法 (v18.x) 注記: 使用するターゲットボードに搭載されている SoC FPGA に対応した Device データをインストールしておく必要があります。 Note: この資料では、「4-6. FPGA のコンフィグレーション」において、ハードウェア・デザイン (sof ファイル)を FPGA にダウンロードするために Quartus® Prime Programmer のみを使用しています。 |
3 | Arm® Development Studio Intel® SoC FPGA Edition (以下、Arm DS) / インテル® SoC FPGA エンベデッド開発スイートスタンダード・エディション(以降、SoC EDS)
※ SoC FPGA のソフトウェアを開発するためのツールです。 |
Point: 本バージョンのサンプル・プロジェクトは、SoC EDS をインストールしなくてもご使用頂けます。(詳細は添付資料を参照) SoC EDS とは別に、Arm DS のインストールが必要となります。Arm DS を使用することで、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。 SoC EDS スタンダード・エディション v20.1 を使用する場合は以下より入手。 SoC EDS スタンダード・エディション v20.1 参考: SoC EDS および Arm DS のインストール方法に関しては以下のサイトをご参照ください。 SoC EDS のインストール方法 ver.20.1 注記: インテル® FPGA ダウンロード・ケーブル II (以降、USB-Blaster™ II)を使用したベアメタル・アプリケーションのデバッグには、Arm DS / DS-5(有償版) が必要になります。 |
SoC EDS に含まれる Arm® Development Studio 5 Intel® SoC FPGA Edition (以下、DS-5) を使用して、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。 SoC EDS スタンダード・エディション v18.1 を使用します。 SoC EDS スタンダード・エディション v18.1 参考: SoC EDS のインストール方法に関しては以下のサイトをご参照ください。 SoC EDS のインストール方法 ver.18.1 注記: インテル® FPGA ダウンロード・ケーブル II (以降、USB-Blaster™ II)を使用したベアメタル・アプリケーションのデバッグには、DS-5(有償版) が必要になります。 |
4 | ターミナル・エミュレーション・ソフトウェア | このサンプルを使用するためには、シリアルターミナル・ソフトが必要です。この資料では、「Tera Term」と呼ばれるフリーウェア・ソフトを使用しています。 Tera Term のダウンロード URL 注記: Tera Term では、ターゲットボードの UART と接続した際の有効な COM ポートに対して、以下の設定をおこなってください。 ・ ボーレート 115200 bps ・ 8 ビットデータ ・ パリティなし ・ 1 ストップビット ・ フロー制御なし |
左に同じ |
対応ターゲットボード
このサンプルでは、下記のターゲットボードが config.mk ファイル内の TARGET_BOARD にて指定可能です。
【表2】 このサンプルの対応ターゲットボード
補足 および 注意事項
・ このサンプル・プロジェクトは、【表1】のホスト PC に記載の Windows® 環境以外に、Linux OS 環境でも使用できます。
・ 最新版(Ver22.1 向け)のサンプル・プロジェクトには、Helio ボード用のデータは含まれておりません。Helio でご使用されたい場合は、旧版(Ver18.1 向け)のサンプル・プロジェクトをご使用ください。
・ 最新版(Ver22.1 向け)のサンプル・プロジェクトは、Arm DS を使用する旧バージョン(Ver19.1 以降)でも使用できます。その際、Arm DS については最新版(2022.2)をご使用ください。
資料/サンプル・プロジェクト
資料
ツールバージョン:Ver.22.1 用ドキュメント(Rev.4)
ツールバージョン:Ver.18.1 用ドキュメント(Rev.1)
サンプル・プロジェクト
ツールバージョン:Ver.22.1 用サンプル・プロジェクト(Rev.4.0)
ツールバージョン:Ver.18.1 用サンプル・プロジェクト(Rev.1.4)