インテルのみ表示可能 — GUID: pdo1638456111011
Ixiasoft
1. Nios® Vエンベデッド・プロセッサーについて
2. Quartus® Prime開発ソフトウェアおよびプラットフォーム・デザイナーでの Nios® Vプロセッサー・ハードウェア・システム・デザイン
3. Nios® Vプロセッサーのソフトウェア・システム・デザイン
4. Nios® Vプロセッサーのコンフィグレーションとブート・ソリューション
5. Nios® Vプロセッサー: MicroC/TCP-IPスタックの使用
6. Nios® Vプロセッサーのデバッグ、検証、およびシミュレーション
7. Nios® Vプロセッサー: リモート・システム・アップデート
8. Nios® Vプロセッサー: カスタム命令の使用
9. Nios® Vエンベデッド・プロセッサー・デザイン・ハンドブックのアーカイブ
10. Nios® Vエンベデッド・プロセッサー・デザイン・ハンドブックの改訂履歴
インテルのみ表示可能 — GUID: pdo1638456111011
Ixiasoft
4.5.1.1.2. ソフトウェア・デザインフロー
このセクションでは、 Nios® Vプロセッサー・ソフトウェア・プロジェクトを生成およびビルドするデザインフローを提供します。効率的なビルドフローを実現するには、デザイン・プロジェクトで同様のディレクトリー・ツリーを作成することが推奨されます。ソフトウェア・デザインフローは、このディレクトリー・ツリーに基づいています。
次の手順を使用して、ソフトウェア・プロジェクトのディレクトリー・ツリーを作成します。
- デザイン・プロジェクト・フォルダーに、software というフォルダーを作成します。
- software フォルダーに、2つのフォルダー (app および bsp) を作成します。
図 22. ソフトウェア・プロジェクトのディレクトリー・ツリー
BSPプロジェクト・アプリケーションの作成
BSPエディターの設定は、選択している Nios® Vプロセッサーのブートオプションに従い編集する必要があります。
BSP Editorを起動するには、次の手順を行います。
- プラットフォーム・デザイナー・ウィンドウで、File > New BSP を選択します。Create New BSP ウィンドウが表示されます。
- BSP setting file では、software/bsp フォルダーに移動し、BSPに settings.bsp という名前を付けます。
BSPパス: <project directory>/software/bsp/settings.bsp
- System file (qsys or sopcinfo) には、 Nios® V プラットフォーム・デザイナー・システム (*.qsys) を選択します。
注: Quartus® Primeスタンダード・エディションでは、SOPCINFOファイルを使用してBSPファイルを生成します。詳細は、AN 980: Nios V Processor Intel Quartus Prime Software Support を参照してください。
- Quartus project には、 Quartus® Primeプロジェクト・ファイルを選択します。
- Revision には、正しいリビジョンを選択します。
- CPU name には、 Nios® Vプロセッサーを選択します。
- Operating system には、Altera HAL を選択します。
- Create をクリックし、BSPファイルを作成します。
図 23. Create New BSPウィンドウ
BSP EditorのコンフィグレーションとBSPプロジェクトの生成
- BSP Editor で、BSP Linker Script をクリックします。
- Linker Section Name で、次の設定を行います。
- .text には、Linker Region Name をQSPIフラッシュに設定します。
- .exceptions は、デザインの要件に応じてOCRAM/外部RAMまたはQSPIフラッシュに設定します。
- 残りの項目をOCRAMまたは外部RAMに設定します。
図 24. リンカー領域の設定 (ExceptionsがOCRAM/外部RAMに設定されている場合)図 25. リンカー領域の設定 (ExceptionsがQSPIフラッシュに設定されている場合) - Main > Settings > Advanced > hal.linker に進みます。
- 例外がOCRAMまたは外部RAMに設定されている場合は、次の項目を有効にします。
- allow_code_at_reset
- enable_alt_load
- enable_alt_load_copy_rodata
- enable_alt_load_copy_rwdata
- enable_alt_load_copy_exceptions
図 26. hal.linker 設定 (例外エージェントがOCRAMまたは外部RAMの場合) - 例外がQSPIフラッシュに設定されている場合は、次の項目を有効にします。
- allow_code_at_reset
- enable_alt_load
- enable_alt_load_copy_rodata
- enable_alt_load_copy_rwdata
図 27. hal.linker 設定 (QSPIフラッシュの場合) - BSP Drivers タブに移動します。
- 汎用シリアルフラッシュ・インターフェイス・ドライバー (intel_generic_serial_flash_interface_top) を無効にします。
図 28. BSPドライバー
- BSP Editor タブに戻り、Generate BSP をクリックします。BSPの生成が成功していることを確認します。
- BSP Editor を閉じます。
アプリケーション・プロジェクト・ファイルの生成
- software/app フォルダーに移動し、 Nios® Vアプリケーション・ソースコードを作成します。
- Nios Vコマンドシェルを起動します。
- 次のコマンドを実行し、アプリケーションの CMakeLists.txt を生成します。
niosv-app --app-dir=software/app --bsp-dir=software/bsp \ --srcs=software/app/<Nios V application source code>
アプリケーション・プロジェクトのビルド
アプリケーション・プロジェクトのビルドには、インテルFPGA向け RiscFree* IDE、またはコマンドライン・インターフェイス (CLI) を使用することができます。
CLIを使用する場合は、次のコマンドを使用してアプリケーションをビルドすることができます。
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Debug -B \ software/app/debug -S software/app
make -C software/app/debug
アプリケーションの (.elf) ファイルは、software/app/debug フォルダーに作成されます。
HEXファイルの生成
アプリケーションの .elf ファイルから .hex ファイルを生成すると、フラッシュデバイスのプログラミングに適した .jic ファイルを作成することができます。
- Nios Vコマンドシェルを起動します。
- コンフィグレーションQSPIフラッシュから Nios® Vプロセッサー・アプリケーションをインプレース実行 (XIP) する場合は、次のコマンドラインを使用して、アプリケーションのELFをHEXに変換します。次のコマンドにより、アプリケーションの .hex ファイルを作成します。
elf2flash --input software/app/debug/<Nios V application>.elf \ --output flash.srec --reset <reset offset + base address of GSFI AVL MEM> \ --base <base address of GSFI AVL MEM> \ --end <end address of GSFI AVL MEM>
riscv32-unknown-elf-objcopy --input-target srec --output-target ihex \ flash.srec <Nios V application>.hex