【お知らせ】
最新バージョンのツール環境「Quartus® Prime スタンダード・エディション開発ソフトウェア v22.1、Arm® Development Studio (Arm DS) 2022.2」向けにサンプル・プロジェクトのアップデートを
おこないました。(2023.03.23)
はじめに
このサンプルは、Altera®(Intel®)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 向け) | 旧版 (Ver20.1/Arm DS 向け) |
旧版 (Ver18.1/DS-5 向け) |
1 | ホスト PC |
Microsoft® Windows® 10 (64 bit) 搭載の 64 bit マシン |
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 開発ソフトウェアおよび Questa* - Intel® FPGA Edition のインストール方法 |
Quartus® Prime スタンダード・エディション開発ソフトウェア v20.1 を使用します。 Quartus® Prime スタンダード・エディション v20.1
インテル® Quartus® Prime & ModelSim® - Intel® FPGA Edition のインストール方法(v18.0) - 半導体事業 - マクニカ
|
Quartus® Prime 開発ソフトウェア・スタンダード・エディション v18.1 を使用します。 Quartus® Prime スタンダード・エディション v18.1
インテル® Quartus® Prime & ModelSim® - Intel® FPGA Edition のインストール方法(v18.0) - 半導体事業 - マクニカ
|
3 |
SoC FPGA エンベデッド開発スイートスタンダード・エディション(以降、SoC EDS) ※ SoC FPGA のソフトウェアを開発するためのツールです。 |
SoC EDS とは別に、Arm DS のインストールが必要となります。Arm DS を使用することで、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。
SoC FPGA エンベデッド・デベロップメント・スイート(SoC EDS)のインストール方法 ver.20.1
|
SoC EDS スタンダード・エディション v20.1 を使用します。 SoC EDS スタンダード・エディション v20.1 SoC EDS とは別に、Arm® Development Studio Intel® SoC FPGA Edition (以下、Arm DS) のインストールも必要となります。Arm DS を使用することで、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。 SoC FPGA エンベデッド・デベロップメント・スイート(SoC EDS)のインストール方法 ver.20.1
|
SoC EDS スタンダード・エディション v18.1 を使用します。 SoC EDS スタンダード・エディション v18.1 SoC EDS に含まれる Arm® Development Studio 5 Intel® SoC FPGA Edition (以降、DS-5) を使用して、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。
|
4 | ターミナル・エミュレーション・ソフトウェア | このサンプルを使用するためには、シリアル・ターミナル・ソフトが必要です。この資料では、「Tera Term」 と呼ばれるフリーウェア・ソフトを使用しています。 Tera Term のダウンロード URL ・ ボーレート 115200 bps ・ 8 ビットデータ ・ パリティなし ・ 1 ストップビット ・ フロー制御なし |
左に同じ | 左に同じ |
注記:ビルドエラーが発生する場合には以下の情報も合わせてご確認ください。
- SoC EDS 環境で sopc-create-header-files が実行エラーになるトラブルの回避策
- SoC EDS 環境で bsp-create-settings が実行エラーになるトラブルの回避策
対応ターゲットボード
このサンプルでは、下記のターゲットボードが config.mk ファイル内の TARGET_BOARD にて指定可能です。
【表 2】 このサンプルの対応ターゲットボード
項 番 | ターゲットボード |
1 | Cyclone® V SoC 開発キット |
2 | Arria® 10 SoC 開発キット |
3 | Helio - Cyclone® V SoC キット (販売終了) |
4 | Sodia - Cyclone® V ST SoC 評価ボード |
5 | DE0-Nano-SoC Kit / Atlas-SoC Kit (販売終了) |
6 | DE10-Nano Kit |
メモ: Ver20.1 向け以降のサンプル・プロジェクトには、Helio ボード用のデータは含まれておりません。Helio でご使用されたい場合は、Ver18.1 向けのサンプル・プロジェクトをご使用ください。
資料/サンプル・プロジェクト
📕 資料
SoCFPGA_HWLib-All-In-One_v221_r4.pdf
説明資料 ver22.1 (rev.4)
SoCFPGA_HWLib-All-In-One_v201_r3.pdf
説明資料 ver20.1 (rev.3)
SoCFPGA_HWLib-All-In-One_v181_r1.pdf
説明資料 ver18.1 (rev.1)
📦 サンプル・プロジェクト
ALT-HWLib-All-In-One_v22.1_r4.0.tar.gz
ベアメタルサンプル・アプリケーション(Arm DS 2022.2 対応版)
ALT-HWLib-All-In-One_v20.1_r3.3.tar.gz
ベアメタルサンプル・アプリケーション(Arm DS 2020.1 対応版)
ALT-HWLib-All-In-One_v18.1_r1.4.tar.gz
ベアメタルサンプル・アプリケーション