|
【お知らせ】 下記最新バージョンのツール環境向けにサンプル・プロジェクトのアップデートをおこないました。(2025.09.29)
|
1. はじめに
このサンプルは、Altera® SoC FPGA 向けベアメタル・アプリケーションを構築する際のスタートポイントとしてご使用いただけるサンプルです。
ハードウェア・ライブラリー(以降 HWLib と呼ぶ)などベアメタル開発に必要なコードをあらかじめプロジェクト内に配置しビルド対象にしているため、ユーザーは必要なヘッダーファイルをインクルードするだけで、Makefile の編集をせずに API をご使用いただくことが可能です。
また未使用の API に関しては、リンク時に対象外としておりますのでコードサイズに影響を与えません。
このページに添付されている資料では、以下の内容を説明しています:
使用環境(対応バージョン、対応ボード)
このサンプルを使用する利点
サンプルのディレクトリー/ファイル構成
コンパイル設定
サンプルの基本動作
コマンドの追加方法
このサンプルのメインルーチン・ソースコードの説明
便利なユーティリティー関数の紹介
HWLib(ハードウェア・ライブラリー)とは
HWLib Examples
2. このサンプルを使用する利点
通常のベアメタル・サンプル・アプリケーションでは、該当のインターフェース用の HWLib のみが使用される構成になっており、他の HWLib を使用するためには Makefile を修正して、追加の HWLib ソースを指定する必要があります。
また、Makefile プロジェクトで提供されるため、ユーザーが追加したソースファイルについても Makefile に追記する必要があり、SoC FPGA のソフトウェア開発フローを熟知していない方にとって理解するのに時間を要すものでした。
このサンプルでは、HWLib として提供されるソースがすべて登録済みとなっており、使用したい HWLib のヘッダーファイルをインクルードすれば、すべての API を使用することができるようにしてあります。
また、プロジェクトの TOP ディレクトリーに追加されたソースファイルは、すべてコンパイル対象にする状態としてありますので、基本的に Makefile を修正すること無く、各種評価が開始できるようになっています。
3. 使用環境
開発環境と対応ターゲットボードについて記載します。より詳細な情報は、このページに添付されている説明資料(.pdf)をご参照ください。
3-1. 開発環境
添付資料の説明で使用している主な開発環境を以下に示します。本サンプル・プロジェクトは以下の環境を使用して動作の確認を行っております。
【表 1】 添付資料の説明で使用している主な環境
| 項番 | 項目 |
最新版 Quartus® Prime v24.1 (Arm® DS)向け |
旧版 Quartus® Prime v22.1 Quartus® Prime v20.1 (Arm® DS)向け |
旧版 Quartus® Prime v18.1 (DS-5)向け |
| 1 | ホスト PC |
Windows 10 / 11(64 bit)搭載 64 bit マシン |
Windows 10(64 bit)搭載 64 bit マシン |
Windows 7 Professional SP1 (64 bit)搭載 64 bit マシン |
| 2 |
Quartus® Prime 開発ソフトウェア ※ SoC FPGA のハードウェアを開発するためのツールです。 |
下記の Quartus® Prime Standard Edition を使用します。
|
下記の Quartus® Prime Standard Edition を使用します。
|
下記の Quartus® Prime Standard Edition を使用します。
|
| 3 |
SoC FPGA Embedded Development Suite Standard Edition(以降 SoC EDS と呼ぶ)/ Arm® Development Studio for SoC FPGA Edition(以降 Arm® DS と呼ぶ) ※ SoC FPGA のソフトウェアを開発するためのツールです。 |
Arm® DS バージョン 2024.1 を使用しています。
|
SoC EDS Standard Edition v20.1 を使用します。 SoC EDS とは別に、Arm® DS のインストールも必要となります。Arm® DS を使用することで、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。
|
SoC EDS Standard Edition v18.1 を使用します。 SoC EDS に含まれる Arm® Development Studio 5 SoC FPGA Edition(以降 DS-5 と呼ぶ)を使用して、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。
|
| 4 | ターミナル・エミュレーション・ソフトウェア |
このサンプルを使用するためにはターミナル・エミュレーション・ソフトウェアが必要です。この資料では「Tera Term」と呼ばれるフリーウェア・ソフトを使用しています。
|
左に同じ | 左に同じ |
注記: ビルドエラーが発生する場合には以下の情報も併せてご確認ください。
参考:SoC EDS 環境で sopc-create-header-files が実行エラーになるトラブルの回避策
参考:SoC EDS 環境で bsp-create-settings が実行エラーになるトラブルの回避策
3-2. 対応ターゲットボード
このサンプルでは、下記のターゲットボードが config.mk ファイル内の TARGET_BOARD にて指定可能です。
【図 1】 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 |
メモ: v20.1 向け以降のサンプル・プロジェクトには、Helio ボード用のデータは含まれておりません。Helio でご使用されたい場合は、v18.1 向けのサンプル・プロジェクトをご使用ください。
4. 資料/サンプル・プロジェクト
4-1. 資料
SoCFPGA_HWLib-All-In-One_v241_r1.pdf
説明資料 v24.1(rev.1)SoCFPGA_HWLib-All-In-One_v221_r4.pdf
説明資料 v22.1(rev.4)SoCFPGA_HWLib-All-In-One_v201_r3.pdf
説明資料 v20.1(rev.3)SoCFPGA_HWLib-All-In-One_v181_r1.pdf
説明資料 v18.1(rev.1)
4-2. サンプル・プロジェクト
ALT-HWLib-All-In-One_v24.1_r1.1.tar.gz
ベアメタルサンプル・アプリケーション(Arm® DS 2024.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
ベアメタルサンプル・アプリケーション(DS-5 対応版)