【お知らせ】
SoC EDS Ver20.1 向けに Arm® Development Studio (Arm® DS) に対応したプロジェクトを追加しました。( 2021.05.18 )

 

このサンプルは、インテル® SoC FPGA 向けベアメタル・アプリケーションを構築する際のスタートポイントとして、ご使用いただけるサンプルです。

ハードウェア・ライブラリー(以下、HWLib)などベアメタル開発に必要なコードをあらかじめプロジェクト内に配置しビルド対象にしているため、ユーザーは必要なヘッダーファイルをインクルードするだけで、Makefile の編集をせずに API をご使用いただくことが可能です。

また未使用の API に関しては、リンク時に対象外としておりますのでコードサイズに影響を与えません。

添付の資料では、以下の内容を説明しています。 

  • 使用環境(対応バージョン、対応ボード)
  • このサンプルを使用する利点
  • サンプルのディレクトリー/ファイル構成
  • コンパイル設定
  • サンプルの基本動作
  • コマンドの追加方法
  • このサンプルのメインルーチン・ソースコードの説明
  • 便利なユーティリティー関数の紹介
  • HWLib(ハードウェア・ライブラリー)とは
  • HWLib Examples

このサンプルを使用する利点

通常のベアメタルサンプル・アプリケーションでは、該当のインターフェース用の HWLib のみが使用される構成になっており、他の HWLib を使用するためには Makefile を修正して、追加の HWLib ソースを指定する必要があります。

また、 Makefile プロジェクトで提供されるため、ユーザーが追加したソースファイルについても Makefile に追記する必要があり、 インテル® SoC FPGA のソフトウェア開発フローを熟知していない方にとって理解するのに時間を要すものでした。

このサンプルでは、HWLib として提供されるソースがすべて登録済みとなっており、使用したい HWLib のヘッダーファイルをインクルードすれば、すべての API を使用することができるようにしてあります。

また、プロジェクトの TOP ディレクトリーに追加されたソースファイルは、すべてコンパイル対象にする状態としてありますので、基本的に Makefile を修正すること無く、各種評価が開始できるようになっています。 

使用環境

開発環境と対応ターゲットボードについて記載します。より詳細な情報は、添付の説明資料 (.pdf) を参照してください。

開発環境

添付資料の説明で使用している主な開発環境を以下に示します。本サンプル・プロジェクトは以下の環境を使用して動作の確認を行っています。

【表1】 添付資料の説明で使用している主な環境

項番 項目 最新版(Ver20.1 向け) 旧版(Ver18.1 向け)
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 スタンダード・エディション開発ソフトウェア v20.1 を使用します。
Quartus® Prime スタンダード・エディション v20.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 インテル® SoC FPGA エンベデッド開発スイートスタンダード・エディション(以降、SoC EDS)
※ SoC FPGA のソフトウェアを開発するためのツールです。
SoC EDS スタンダード・エディション v20.1 を使用します。
SoC EDS スタンダード・エディション v20.1
SoC EDS とは別に、Arm® Development Studio Intel® SoC FPGA Edition (以下、Arm DS) のインストールも必要となります。Arm DS を使用することで、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。

参考: SoC EDS および Arm DS のインストール方法に関しては以下のサイトをご参照ください。
SoC EDS エンベデッド・デベロップメント・スイート (SoC EDS) のインストール方法
注記: インテル® FPGA ダウンロード・ケーブル II (以降、USB-Blaster™ II)を使用したベアメタル・アプリケーションのデバッグには、Arm DS / DS-5(有償版) が必要になります。

注記: 本バージョンのサンプル・プロジェクトは、Arm DS の使用を前提としています。DS-5 で使用したい場合には旧バージョンのサンプル・プロジェクトをご使用ください。
SoC EDS スタンダード・エディション v18.1 を使用します。
SoC EDS スタンダード・エディション v18.1
SoC EDS に含まれる Arm® Development Studio 5 Intel® SoC FPGA Edition (以下、DS-5) を使用して、アプリケーション・ソフトウェアをコンパイルしデバッグすることができます。

参考: SoC EDS のインストール方法に関しては以下のサイトをご参照ください。
SoC EDS のインストール方法 (v18.x)
注記: インテル® 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 環境でも使用できます。

・ 最新版(Ver20.1 向け)のサンプル・プロジェクトには、Helio ボード用のデータは含まれておりません。Helio でご使用されたい場合は、旧版(Ver18.1 向け)のサンプル・プロジェクトをご使用ください。

 

 

資料/サンプル・プロジェクト

資料

ツールバージョン:Ver.20.1 用ドキュメント(Rev.3)

ツールバージョン:Ver.18.1 用ドキュメント(Rev.1)

 

サンプル・プロジェクト

ツールバージョン:Ver.20.1 用サンプル・プロジェクト(Rev.3.3)

ツールバージョン:Ver.18.1 用サンプル・プロジェクト(Rev.1.4)

おすすめ記事/資料はこちら

おすすめ FAQ はこちら

おすすめセミナー/ワークショップはこちら