インテルのみ表示可能 — GUID: klc1638580197736
Ixiasoft
インテルのみ表示可能 — GUID: klc1638580197736
Ixiasoft
4.5.2.1.3. ソフトウェア・デザインフロー (SDM Bootloaderプロジェクト)
SDMブートローダーBSPプロジェクトの作成
BSP Editorを起動するには、次の手順に従います。
- Platform Designerウィンドウで、File > New BSPを選択します。Create New BSPウィンドウが表示されます。
- BSP setting fileでは、software/mailbox_bootloader/bsp フォルダーに移動し、BSPに settings.bsp という名前を付けます。
BSPパス: <project directory>/software/mailbox_bootloader/bsp/settings.bsp
- System file (qsys or sopcinfo) では、Nios V/mプロセッサー・プラットフォーム・デザイナー・システム (.qsys) ファイルを選択します。
- Quartus projectでは、Quartus Project Fileを選択します。
- Revisionでは、正しいリビジョンを選択します。
- CPU nameでは、Nios V/mプロセッサーを選択します。
- Operating systemでは、Altera HALを選択します。
- Createをクリックして、BSPファイルを作成します。
BSP EditorのコンフィグレーションおよびBSPプロジェクトの生成
- BSP Editor > Main > Settingsに移動します。
- 次の表に従って、設定をコンフィグレーションします。
表 17. BSP Editorの設定 設定 アクション hal.max_file_descriptors 5
4を入力します。 hal.log_port 5
Noneを選択します。 hal.enable_exit 5
hal.enable_clean_exit 5
hal.c_plus_plus 5
Uncheckedにして、機能をディスエーブルします。 hal.sys_clk_timer 5
hal.timerstamp_timer 5
hal.stdin 5
hal.stdout 5
hal.stderr 5
Noneを選択します。 hal.linker 次の設定をイネーブルします。
• allow_code_at_reset
• enable_alt_load
• enable_alt_load_copy_rodata
• enable_alt_load_copy_rwdata
• enable_alt_load_copy_exceptions
hal.make.cflags_user_flags 5
-ffunction-sections -fdata-sectionsを入力します。 hal.make.link_flags 5
-Wl,--gc-sectionsを入力します。 hal.make.cflags_optimization 5
-Osを入力します。 図 55. hal設定図 56. hal.linker設定図 57. hal.toolchain設定図 58. hal.make設定 - BSP Software Packageに移動し、altera_safeclib をイネーブルします。
図 59. BSP Software Package
- BSP Editorで、BSP Linker Scriptタブをクリックします。
- Linker Section Nameの.text項目を、Linker Region NameのBootloader ROMに設定します。Linker Section Nameリストの残りの項目を、Bootloader RAMに設定します。
図 60. リンカー領域の設定
- BSP Driverタブに移動し、すべてのドライバーをディスエーブルします (Nios V ProcessorおよびMailbox Client Intel FPGA IPを除く)。
図 61. BSP Driverタブ
- Generate BSPをクリックします。BSPの生成が成功したことを確認します。
- BSP Editorを閉じます。
SDMブートローダー・アプリケーション・プロジェクトの作成
- デザインファイルの例を生成します (SDM Bootloader Example Designを参照)。デザイン例をビルドする必要はありません。
- SDM Bootloader Example Designプロジェクトの software/mailbox_bootloader/app フォルダーに移動します。
- SDMブートローダー (mailbox_bootloader.c) をプロジェクトの software/mailbox_bootloader/app フォルダーにコピーします。
- mailbox_bootloader.c. で PAYLOAD_OFFSET を再定義します。
注: SOFイメージサイズは、PAYLOAD_OFFSET に影響します。PAYLOAD_OFFSET は、QSPIフラッシュの Nios® VアプリケーションHEXファイルの開始アドレスであり、SOFイメージの後の位置を指す必要があります。デバイス・データシートのコンフィグレーション・ビットストリーム・サイズを使用して、最小 PAYLOAD_OFFSET を決定できます。
例えば、インテルStratix 10 SX 2800の推定圧縮コンフィグレーション・ビットストリーム・サイズは、577 Mbit (72.125 MByte) です。実際のサイズは、このビットストリーム・サイズと等しい、もしくは小さい場合があります。SOFイメージがアドレス0x0で始まる場合、SOFイメージはアドレス0x44C8FFF(0x44C8A48)まで到達するはずです。これにより、選択できる最小 PAYLOAD_OFFSET は、0x4500000です。
- Nios Vコマンドシェルを起動します。
- 以下のコマンドを実行して、SDMブートローダー・アプリケーション CMakeLists.txt を生成します。
niosv-app --app-dir=software/mailbox_bootloader/app\ --bsp-dir=software/mailbox_bootloader/bsp\ --srcs=software/mailbox_bootloader/app/mailbox_bootloader.c
SDMブートローダー・プロジェクトのビルド
インテル FPGA向けのRiscFree IDE、Eclipse Embedded CDT、またはコマンドライン・インターフェイス (CLI) を使用して、SDMブートローダー・プロジェクトのビルドを選択できます。
CLIでは、次のコマンドを使用してSDMブートローダーをビルドできます。
cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -B \
software/mailbox_bootloader/app/release -S \
software/mailbox_bootloader/app
make -C software/mailbox_bootloader/app/release
SDMブートローダー (.elf) ファイルは、
software/mailbox_bootloader/app/release フォルダーで作成されています。
HEXファイルの生成とメモリーの初期化
HEXファイルをメモリーの初期化用に使用できるように、ELFファイルからHEXファイルを生成する必要があります。
- Nios Vコマンドシェルを起動します。
- SDMブートローダーの場合、次のコマンドラインを使用してELFをHEXに変換します。このコマンドは、SDMブートローダー (bootcopier_rom.hex) ファイルを作成します。
elf2hex software/mailbox_bootloader/app/release/app.elf \
-o bootcopier_rom.hex -b <base address of Bootloader ROM> \
-w <data width of Bootloader ROM> -e <end address of Bootloader ROM> -r 4
ハードウェア・デザインをリコンパイルして、bootcopier_rom.hex のBootloader ROMへのメモリー初期化を行います。