110
Altera SoC エンベデッド・デザイン・ス イート(EDS)ユーザ・ガイド 更新情報 フィードバック ug-1137 2016.02.17 101 Innovation Drive San Jose, CA 95134 www.altera.com

Altera SoC エンベデッド・デザイン・ス イー … エンベデッド・デザイン・スイートの概要 1 2016.02.17 ug-1137 更新情報 フィードバック Altera®SoC

  • Upload
    phungtu

  • View
    233

  • Download
    0

Embed Size (px)

Citation preview

目次

SoCエンベデッド・デザイン・スイートの概要........................................... 1-1概要................................................................................................................................................................1-1

Linuxデバイス・ツリー・バイナリ........................................................................................1-3ハードウェア開発およびソフトウェア開発の役割........................................................................1-3

ハードウェア・エンジニア........................................................................................................1-4ベアメタル開発者および RTOS開発者.................................................................................. 1-4Linuxカーネル開発者およびドライバ開発者...................................................................... 1-5Linuxアプリケーション開発者.................................................................................................1-5

ハードウェア – ソフトウェアの開発フロー..................................................................................... 1-5改訂履歴:SoCエンベデッド・デザイン・スイートの概要.......................................................1-7

Altera SoCエンベデッド開発スイートのインストール................................ 2-1インストール・フォルダ........................................................................................................................ 2-1SoC EDSのインストール.........................................................................................................................2-1ARM DS-5 Altera Editionツールキットのインストール.................................................................2-2改訂履歴:Altera SoCエンベデッド開発スイートのインストール...........................................2-2

ライセンス.......................................................................................................... 3-1ライセンスの取得..................................................................................................................................... 3-1ライセンスのアクティベーション.......................................................................................................3-2改訂履歴:SoCエンベデッド・デザイン・スイートのライセンス..........................................3-8

エンベデッド・コマンド・シェル...................................................................4-1改訂履歴:エンベデッド・コマンド・シェル.................................................................................4-1

スタート・ガイド.............................................................................................. 5-1改訂履歴:スタート・ガイド............................................................................................................... 5-1

ARM DS-5 AE......................................................................................................6-1Eclipse ARM DS-5 AEの起動...................................................................................................................6-1ベアメタル・プロジェクトの管理.......................................................................................................6-2

makefileを使用するベアメタル・プロジェクトの管理.....................................................6-2GCCベースのベアメタル・プロジェクト管理................................................................... 6-5ARMコンパイラのベアメタル・プロジェクト管理..........................................................6-9

デバッグ.....................................................................................................................................................6-18デバッグ・コンフィギュレーションへのアクセス..........................................................6-19新しいデバッグ・コンフィギュレーションの作成..........................................................6-19

目次-2

Altera Corporation

デバッグ・コンフィギュレーション・オプション..........................................................6-21DTSLオプション.........................................................................................................................6-31

改訂履歴:ARM DS-5 AE...................................................................................................................... 6-36

ブート・ツール・ユーザガイド.......................................................................7-1概要................................................................................................................................................................7-1Second Stage Bootloaderサポート・パッケージ・ジェネレータ................................................. 7-2

BSPの生成フロー..........................................................................................................................7-2BSPジェネレータの GUI.............................................................................................................7-4BSPジェネレータのコマンドライン・インタフェース....................................................7-5BSPファイルおよび BSPフォルダ...........................................................................................7-9BSPの設定.....................................................................................................................................7-10

Second Stage Bootloaderイメージ・ツール(mkpimage)........................................................... 7-21mkpimageツールの動作............................................................................................................ 7-22ヘッダ・ファイルのフォーマット.........................................................................................7-22ツールの使用................................................................................................................................ 7-24出力イメージのレイアウト......................................................................................................7-25

U-Bootイメージ・ツール(mkimage)............................................................................................7-28ツール・オプション...................................................................................................................7-28使用例............................................................................................................................................. 7-29

Second Stageブートローダのビルド方法..........................................................................................7-29Cyclone Vおよび Arria Vのプリローダのビルド方法..................................................... 7-29Arria 10ブートローダのビルド方法...................................................................................... 7-30

改訂履歴:ブート・ツール・ユーザガイド...................................................................................7-31

ハードウェア・ライブラリ...............................................................................8-1各機能の説明.............................................................................................................................................. 8-2

SoC抽象化レイヤ(SoCAL).................................................................................................... 8-2ハードウェア・マネージャ(HW Manager).......................................................................8-3

ハードウェア・ライブラリ参考資料.................................................................................................. 8-3システム・メモリ・マップ....................................................................................................................8-3改訂履歴:ハードウェア・ライブラリ..............................................................................................8-4

HPSフラッシュ・プログラマ・ユーザーガイド...........................................9-1HPSフラッシュ・プログラマのコマンドライン・ユーティリティ.........................................9-1HPSフラッシュ・プログラマの動作..................................................................................................9-2コマンドラインからフラッシュ・プログラマを使用する...........................................................9-2

HPSフラッシュ・プログラマ................................................................................................... 9-2HPSフラッシュ・プログラマのコマンドラインの例....................................................... 9-5

サポートされているメモリ・デバイス..............................................................................................9-6改訂履歴:HPSフラッシュ・プログラマ・ユーザーガイド...................................................... 9-7

ベアメタル・コンパイラ.................................................................................10-1改訂履歴:ベアメタル・コンパイラ................................................................................................ 10-2

目次-3

Altera Corporation

SDカード・ブート・ユーティリティ...........................................................11-1使用状況シナリオ................................................................................................................................... 11-1ツール・オプション...............................................................................................................................11-2改訂履歴:SDカード・ブート・ユーティリティ........................................................................ 11-3

Linuxソフトウェア開発ツール......................................................................12-1Linuxコンパイラ.....................................................................................................................................12-1Linuxデバイス・ツリー・ジェネレータ......................................................................................... 12-2改訂履歴:Linuxソフトウェア開発ツール.....................................................................................12-2

サポートとフィードバックについて.............................................................13-1改訂履歴:サポートとフィードバックについて.......................................................................... 13-1

目次-4

Altera Corporation

SoCエンベデッド・デザイン・スイートの概要 12016.02.17

ug-1137 更新情報 フィードバック

Altera®SoCエンベデッド・デザイン・スイート(EDS)は、アルテラ SoCデバイスに向けたエンベデッド・ソフトウェアの開発に必要なツールを提供します。アルテラ SoC EDSは、アルテラ SoCデバイスのエンベデッド・ソフトウェア開発に向けた包括的なツール・スイートです。アルテラ SoC EDSには、開発ツール、ユーティリティ・プログラム、ランタイム・ソフトウェア、およびアルテラ SoCハードウェア・プラットフォームでファームウェアとアプリケーション・ソフトウェア開発が可能なアプリケーション・サンプルが含まれています。

概要Altera SoC EDSを使用することで、以下を含むアルテラ SoCをターゲットとするソフトウェア開発に必要な全てのタスクが実行可能です。• ボード立ち上げ• デバイス・ドライバ開発• オペレーティング・システム(OS)ポーティング• ベアメタル・アプリケーションの開発とデバッグ• OSベースおよび Linuxベース・アプリケーションの開発とデバッグ• 対称型マルチプロセシング(SMP)を実行するデバッグ・システム• デバイスの FPGA部分に配置されたソフト IPをターゲットとするデバッグ・ソフトウェアSoC EDSの主要コンポーネントには、以下が含まれます。

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

• ARM® Development Studio 5 (DS-5™) AE (AE) Toolkit• コンパイラ・ツール・チェイン:

• Mentor Graphics®社製 Bare-metal GNU Compiler Collection(GCC)ツール・チェイン• ベアメタル・コンパイラ• Linaro®社製 Linux GCCコンパイラ・ツール・チェイン

• 以下を含む Pre-built Linuxパッケージ:• Linuxカーネル実行ファイル• U-bootイメージ• Bootloader Device Tree —A10向け B-Bootで使用されるデバイス・ツリー・ブロブ• Linux Device Tree—Linuxで使用されるデバイス・ツリー・ブロブ• Secure Digital(SD)カード・イメージ• GitHubレポジトリから Linuxソース・コードをダウンロードするためのスクリプト(1)

• SoCハードウェア・ライブラリ(HWLIB)• ハードウェア-ソフトウェア間ユーティリティ:

• Second stage bootloaderジェネレータ• Linuxデバイス・ツリー・ジェネレータ

• サンプル・アプリケーション• 以下を含む Golden Hardware Reference Designs(GHRD)

• FPGAハードウェア・プロジェクト• FPGAハードウェア SRAM Object File(.sof)ファイル• 予めコンパイルされた Second Stage Bootloader

• Arria Vおよび Cyclone V用 Preloader• Arria 10用 Bootloader

• 内包ツールの素早い起動を可能にするエンベデッド・コマンド・シェル• SD Card Boot Utility• Quartus® Prime Programmerおよび SignalTap II

注意: SoC EDSに含まれる Linuxパッケージは、公式リリースではなく単なるサンプルとしての使用を意図しています。開発には、Rocketboardsウェブサイトで閲覧可能な Golden SystemReference Design (GSRD) User Manualに記載された公式の Linuxリリースを使用するか、あるいは GitHubレポジトリに含まれる Gitツリーからの特別なリリースを使用してください。

注意: SoC EDSは、Linuxに付属する Linuxリリースでのみ検証するです。この SoC EDSのリリースは、新しくリリースされた Linuxとは完全な互換性を持たない可能性があります。

注意: SoC EDSに含まれる Golden Hardware Reference Design(GHRD)は、公式リリースではなく単なるサンプルとしての使用を意図しています。開発が目的である場合は、Rocketboardsウェブサイトで閲覧可能な GSRD User Manualに記載された公式の GHRDリリースを使用してください。

関連情報• Golden System Reference Design User Manual• GitHub Repository

(1) このスクリプトは、Pre-built Linuxパッケージに対応するソースをダウンロードします。

1-2 概要ug-1137

2016.02.17

Altera Corporation SoCエンベデッド・デザイン・スイートの概要

フィードバック

Linuxデバイス・ツリー・バイナリSoC EDSには、2つのバージョンの Linuxデバイス・ツリー・バイナリ(DTB)ファイルが含まれます。• prebuilt_imagesフォルダ内のバージョン:socfpga_cyclone5.dtbと socfpga_arria10.dtbは、汎用的な DTBファイルで、ソフト IPに依存していません。この DTBを使用して Linuxが実行される前は、FPGAのプログラミングとブリッジのリリースは必要ではありません。この DTBファイルは新しいボードの立ち上げ、または Linuxプロンプトに至るまでにブート・フローを簡略化したいユーザによる使用を意図しています。開発済み、あるいはデバッグ済みのデザインに FPGAが含まれない場合、FPGAの複雑性を取り除くことを推奨します。

• デザイン・フォルダ内のバージョン:soc_system.dtb、ghrd_5astfd5k3.dtb、ghrd_10as066n2.dtbは GSRDの一部である GHRDデザインに基づいています。GHRDにはソフト IPが含まれているため、この DTBファイルのバージョンはソフト IPドライバをロードするよう Linuxに伝達します。このため、FPGAは Linuxをブートする前にプログラム済みであり、かつブリッジはリリース済みである必要があります。

ハードウェア開発およびソフトウェア開発の役割ハードウェア開発およびソフトウェア開発では、その役割に応じて異なるサブセットの SoCEDCツールキットが必要となります。次の表は、一般的な設計開発の役割およびそれぞれの開発段階で必要となるツールを示しています。それぞれのツールについての詳細は、SoC Embedded Design Suiteを参照してください。

表 1-1: ハードウェア開発およびソフトウェア開発の役割

次の表は一般的に使用されるツールを示していますが、実際の要件はプロジェクトや組織により異なります。

ツール ハードウェア エンジニア

ベアメタル開発者

RTOS 開発者 Linuxカーネル開発者およびドライバ開発者

Linuxアプリケーション開発者

ARM DS-5Debugging

√ √ √ √ √

ARM DS-5Tracing

√ √ √

ARM DS-5CrossTriggering

√ √ √

HardwareLibraries

√ √ √

Second StageBootloaderGenerator

√ √ √ √

ug-11372016.02.17 Linuxデバイス・ツリー・バイナリ 1-3

SoCエンベデッド・デザイン・スイートの概要 Altera Corporation

フィードバック

ツール ハードウェア エンジニア

ベアメタル開発者

RTOS 開発者 Linuxカーネル開発者およびドライバ開発者

Linuxアプリケーション開発者

FlashProgrammer

√ √ √ √

Bare-MetalCompiler

√ √ √ √

LinuxCompiler

√ √

Linux DeviceTreeGenerator

ハードウェア・エンジニアハードウェア・エンジニアは通常、Qsysの FPGAハードウェアを設計します。ARMコアに接続し、ハードウェアをテストするには、ARM DS-5 AEのデバッガを使用することができます。DS-5デバッガの便利な機能には、Cortex Microcontrollerソフトウェア・インタフェース規格(CMSIS)の System View Description(.svd)ファイルを使用するソフト IPレジスタの可視化が含まれます。この機能を利用することで、ARM側からソフト IPレジスタを容易に読み出し、編集することができます。ハードウェア・エンジニアは、ハードウェア・コンフィギュレーションに対し Preloaderを生成することがあります。Preloaderとは、ハードウェア・デザインをもとに HPSコンポーネントをコンフィギュレーションするソフトウェアのピースのことを指します。ハードウェア・エンジニアは、ボードの立ち上げを実行することもあります。ARMに接続可能で、ボードが正常に動作していることを確認するには、ARM DS-5デバッガを使用することができます。このようなタスクを実行するには JTAGデバッグが必要となりますが、JTAGデバッグはサブスクリプション・エディションでのみイネーブルされています。詳細については、ライセンスの項を参照してください。関連情報• 3-1ページの ライセンス• 1-5ページの ハードウェア – ソフトウェアの開発フロー

.svdファイルについての詳細は、ハードウェア – ソフトウェアの開発フローの項を参照してください。

ベアメタル開発者および RTOS開発者ベアメタル開発者と RTOS開発者のいずれもシステムへの下位レベルの可視化と JTAGデバッグが必要となります。コードのコンパイルにはベアメタル・コンパイラを使用し、ハードウェアの制御には SoCハードウェア・ライブラリを使用することで、このような作業を簡便かつ一貫した方法で実行することができます。

1-4 ハードウェア・エンジニアug-1137

2016.02.17

Altera Corporation SoCエンベデッド・デザイン・スイートの概要

フィードバック

ターゲットとするボードでフラッシュ・メモリをプログラムするには、Flash Programmerを使用します。このようなタスクを実行するには JTAGデバッグが必要となりますが、JTAGデバッグはサブスクリプション・エディションでのみイネーブルされています。詳細については、ライセンスの項を参照してください。関連情報3-1ページの ライセンス

Linuxカーネル開発者およびドライバ開発者Linuxカーネル開発者およびドライバ開発者はシステムへの下位レベルのアクセスと可視化が必要であるため、RTOS開発者が使用するツールと同じツールを使用することがあります。ただし、これにはベアメタル・コンパイラではなく Linuxコンパイラを使用する必要があります。Linuxデバイス・ツリーの生成には、Linuxデバイス・ツリー・ジェネレータ(DTG)を使用することができます。このようなタスクを実行するには JTAGデバッグが必要となりますが、JTAGデバッグはサブスクリプション・エディションでのみイネーブルされています。詳細については、ライセンスの章を参照してください。関連情報3-1ページの ライセンス

Linuxアプリケーション開発者Linuxアプリケーション開発者は、ボード上で実行する Linux OSをターゲットとするコードを記述します。OSはすべてのハードウェアにドライバを提供するため、Linuxアプリケーション開発者は JTAGを介した下位レベルの可視化は必要としません。DS-5は、実行中のスレッドやロードされたドライバなどの情報を表示し、OSの非常に詳細な内容を提供します。このようなタスクの実行には、JTAGデバッグは必要ではありません。このようなタスクはウェブ・エディションとサブスクリプション・エディションの両方で実行可能です。詳細については、ライセンスの章を参照してください。関連情報3-1ページの ライセンス

ハードウェア – ソフトウェアの開発フローアルテラのハードウェア-ソフトウェア間のハンドオフ・ユーティリティを使用することで、ハードウェア・チームとソフトウェア・チームが独立して開発を行い、それぞれに使い慣れたデザイン・フローに沿って作業を進めることが可能です。

ug-11372016.02.17 Linuxカーネル開発者およびドライバ開発者 1-5

SoCエンベデッド・デザイン・スイートの概要 Altera Corporation

フィードバック

図 1-1: アルテラのハードウェア-ソフトウェア間ハンドオフ

ACDSHardware

Design

Handoff

.svd

.sopcinfo

Second Stage Bootloader Genertaor

Second Stage Bootloader

Linux Device Tree Generator

Linux Device Tree

Ds-5 Debugger

.sof

ハードウェア・プロジェクトがコンパイルされると、以下のハンドオフ・ファイルが作成されます。• Handoffフォルダ – イネーブルされたペリフェラル、ピンMUXingや IOCSR設定、メモリ・パラメータなど、どのように HPSコンポーネントがコンフィギュレーションされたかについての情報を含みます。

• .svdファイル – デバイスの FPGA部分に実装された FPGA側の HPSレジスタおよびソフトIPレジスタについての説明を含みます。

• .sopcinfoファイル – 全システムについての説明を含みます。Handoffフォルダは、Preloaderを作成するために Second Stage Bootloaderジェネレータによって使用されます。Handoffフォルダについての詳細は、BSP Generation Flowの章を参照してください。.svdファイルには、SoCの FPGA部分に位置するソフト IPコンポーネント用レジスタと HPSペリフェラル・レジスタのレジスタについての説明が含まれます。このファイルは ARM DS-5Debuggerによって使用され、ユーザによるこれらのレジスタの点検、編集が可能です。SOPC Information(.sopcinfo)ファイルには全システムの情報が含まれ、Linuxカーネルによって使用されるデバイス・ツリーを作成するために Linuxデバイス・ツリー・ジェネレータによって使用されます。詳細については、「Linux Device Tree Generator」の章を参照してください。注意: ソフト IPレジスタの説明は、ソフト IPコアのすべてに対し生成されるわけではありませ

ん。関連情報• 7-2ページの BSPの生成フロー• Linuxデバイス・ツリー・ジェネレータ• SoC Embedded Design Suite Download Page

1-6 ハードウェア – ソフトウェアの開発フローug-1137

2016.02.17

Altera Corporation SoCエンベデッド・デザイン・スイートの概要

フィードバック

Altera SoCエンベデッド開発スイートのインストール 2

2016.02.17

ug-1137 更新情報 フィードバック

アルテラの SoCハードウェア・プラットフォームで SoC EDSを実行するには、Altera SoCEmbedded Design Suite(EDS)と ARM DS-5 AEをインストールする必要があります。

インストール・フォルダSoC EDS用のデフォルトのインストール・フォルダ:• <SoC EDS installation directory>

• Windowsc:\altera\15.1\embedded• Linux ~/altera/15.1/embedded

Quartus PrimeProgrammer用のデフォルトのインストール・フォルダ:• <Quartus installation directory>

• Windowsc:\altera\15.1\qprogrammer• Linux~/altera/15.1/qprogrammer

注意: インストール・ディレクトリは次のように定義されています。• <Altera installation directory>は、アルテラのツールがインストールされた位置を示します。

• <SoC EDS installation directory>は、SoC EDSがインストールされた位置を示します。

SoC EDSのインストールWindowsベースのシステムに SoC EDSツール・スイートを実装するには、以下の手順を実行します。1. アルテラ・ウェブサイトの SoC Embedded Design Suite Download Centerの画面から最新のインストール・プログラムをダウンロードします。

2. インストーラを実行し、Installing SoC Embedded Design Suite (EDS) ダイアログ・ボックスを開き、Nextをクリックして Setup Wizardを開始します。

3. ライセンス使用許諾契約に同意し、Nextをクリックします。4. デフォルトのインストール・ディレクトリを容認するか、別のインストール・ディレクトリをブラウズし、Nextをクリックします。

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

注意: 以前 Quartus Primeソフトウェアをインストールしているのであれば、デフォルトの<SoC EDS installation directory>を容認し、 Quartus Primeソフトウェアと SoC EDSツール・スイートが同時に動作することを許可します。

5. インストールするすべてのコンポーネントを選択し、Nextをクリックします。インストーラにインストールのサマリが表示されます。

6. Nextをクリックして、インストール・プロセスを開始します。インストーラにコンポーネント・インストールのインストール進行状況を示す別のダイアログ・ボックスが表示されます。

7. インストール完了後、Launch DS-5 Installationをオンにして ARM DS-5のインストールを開始し、Finishをクリックします。

注意: 一部の Linuxベースのマシンでは、Windowsベースのセットアップ GUIに類似したセットアップ GUIを持つ SoC EDSをインストールすることが可能です。Linuxディストリビューションおよびパッケージの要件には多くのバリエーションが存在するため、すべてのLinuxマシンでセットアップ GUIが使用できるとは限りません。GUIが使用できない場合は、それに相当するコマンドライン・プロセスを使用します。アルテラ・ウェブサイトの SoC Embedded Design Suite Download Center画面から Linuxインストレーション・プログラムをダウンロードしてください。

関連情報SoC Embedded Design Suite Download Center

ARM DS-5 Altera Editionツールキットのインストール

はじめる前にSoC EDSインストール・プロセスの最後のステップで、ARM DS-5 AEツールキット・インストーラを開始します。注意: インターネット接続に適切な設定がされていることを確認します。1. Welcomeメッセージが表示されたら、Nextをクリックします。2. ライセンス使用許諾契約に同意し、Nextをクリックします。3. デフォルトのインストール・パスを容認し、SoC EDSと ARM DS-5 AE間に適切な相互運用性があることを確認した後、Nextをクリックします。

4. Installをクリックし、インストール・プロセスを開始します。プログレス・バーが表示されます。

5. ドライバ・インストール・ウィンドウが表示されます。Nextをクリックします。6. ドライバ・インストールに同意し、Installをクリックします。7. インストール成功後、Finishをクリックします。これで、ARM DS-5 AEのインストールが完了しました。

8. Finishをクリックします。

改訂履歴:Altera SoCエンベデッド開発スイートのインストール日付 バージョン 変更内容

2016年 2月 2016.0217 インストレーション・パスを 15.1に更新

2-2 ARM DS-5 Altera Editionツールキットのインストールug-1137

2016.02.17

Altera Corporation Altera SoCエンベデッド開発スイートのインストール

フィードバック

ライセンス 32016.02.17

ug-1137 更新情報 フィードバック

SoC EDSは、3つのライセンス・オプションが利用可能です。• サブスクリプション・エディション• ウェブ・エディション(無償)• 30日間評価版上記のライセンス・オプションの選択が影響するツールは、ARM DS-5 AEのみです。ARM DS-5AE以外のツールはすべて、全ライセンス・オプションにおいて同じレベルの機能を提供しています。たとえば、Second Stage Bootloaderジェネレータとベアメタル・コンパイラは、どのライセンス・オプションを選択しても提供される機能は全く同じです。ライセンス・オプション間における大きな相違点は、イネーブルされるデバッグ・シナリオの種類が異なります。

ライセンス・オプション デバッグ・シナリオがイネーブルされている場合

ウェブ・エディション • Linuxアプリケーションのイーサネット経由でのデバッグ

サブスクリプション・エディションサブスクリプション・エディションの 30日間評価版

• JTAGベースの Bare-Metalデバッグ• JTAGベースの Linuxカーネルおよびドライバのデバッグ

• Linuxアプリケーションのイーサネット経由でのデバッグ

ライセンスの取得ライセンス・オプションにより、ライセンスの取得方法が異なります。以下に、各エディションごとの入手手順を示します。サブスクリプション・エディション - SoC EDSサブスクリプション・エディションを購入済みであれば、ARMライセンスのシリアル番号を既にお受け取り頂いています。シリアル番号は数字を含むアルファベットで構成されており、2つのハイフンが含まれます。ライセンスのアクティベーションの項に記載された手順に従い、このシリアル番号を使用して DS-5のライセンスをアクティベーションする必要があります。

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

ウェブ・エディション(無償) - 無償の SoC EDSウェブ・エディションでは、イーサネット接続を介した Linuxアップリケーションのデバッグに DS-5を無期限で使用することができます。ライセンスのアクティベーションの項に記載された手順に従い、アルテラ・ウェブサイトの SoCEmbedded Design Suite downloadの画面から ARMライセンス認証コードを取得してください。30日間評価版 - SoC EDSサブスクリプション・エディションの試用を希望される場合、 ライセンスのアクティベーションの項に記載された手順に従い、アルテラ・ウェブサイトの SoCEmbedded Design Suite downloadの画面から 30日間評価版の認証コードを取得することができます。関連情報• SoC EDS Download Page• 3-2ページの ライセンスのアクティベーション

ライセンスのアクティベーションこの項では、「ライセンスの取得」で述べたシリアル・ライセンス番号または認証コードを使用した ARM DS-5 AEのライセンスのアクティベーションに必要な手順を紹介します。注意: DS-5 AEライセンスの有効化には、アクティブなユーザ・アカウントが必要となります。

アクティブなユーザ・アカウントをお持ちでない場合、ARMウェブサイトの ARM Self-Service 画面からアカウントを作成することができます。

1. ARM DS-5の初回起動時に、ライセンスを確認する画面が表示されます。Open LicenseManagerボタンをクリックしてください。

図 3-1: No License Found

2. ライセンスの変更を求められる場合、Help > ARM License Managerを選択し、License Managerを開きます。

3-2 ライセンスのアクティベーションug-1137

2016.02.17

Altera Corporation ライセンス

フィードバック

図 3-3: ARM License Manager

4. Add License - Obtain a new licensesダイアログ・ボックスで、入力するライセンスの種類を入力します。以下の例では、“Enter a serial number or activation code to obtain a license”のラジオ・ボタンを選択し、以下の選択肢のいずれかを選択します。選択後、Enterをクリックします。a. サブスクリプション・エディションの ARMライセンス番号b. ウェブ・エディションおよび 30日間評価版の ARMライセンス認証コード

3-4 ライセンスのアクティベーションug-1137

2016.02.17

Altera Corporation ライセンス

フィードバック

図 3-4: ライセンスの追加 - Obtain a New License

5. Nextをクリックします。6. Add License - Choose Host IDダイアログ・ボックスで、このライセンスで使用する Host ID(Network Adapter MACアドレス)を選択します。複数のオプションが存在する場合、ライセンスにロックさせたいオプションを選択し、Nextをクリックします。

ug-11372016.02.17 ライセンスのアクティベーション 3-5

ライセンス Altera Corporation

フィードバック

図 3-5: ライセンスの追加 - Host IDの選択

7. Add License - Developer account detailsダイアログ・ボックスで、ARM developer(Silver)アカウントを入力します。アカウントをお持ちでない場合、 ボックス内のリンクから簡単にアカウントを作成することができます。アカウント情報入力後、Finishをクリックします。

図 3-6: ライセンスの追加 - Developer Accountの詳細情報

注意: ライセンスをアクティベーションするには、License Managerがインターネットに接続されている必要があります。インターネット接続環境が無い場合、Ethernet MACアド

3-6 ライセンスのアクティベーションug-1137

2016.02.17

Altera Corporation ライセンス

フィードバック

レスを書き止め、ARMウェブサイトの ARM Self-Service画面から直接ライセンスを生成し、License Mangerの「Already have a license」オプションを選択する必要があります。

注意: ライセンス番号を持つサブスクリプション・エディションのみこの方法でアクティベーションが可能です。ウェブ・エディションと評価版は、認証コードでアクティベーションされます。そのため、これらの認証コードを ARMウェブサイトの ARM Self-Service画面で使用することはできません。認証コードは License Managerに直接入力する必要があるため、アクティベーションにはインターネット接続環境が必要となります。

ARM License Managerは、インターネットへの接続に Eclipseセッティングを使用します。デフォルトの Eclipseセッティングでは、インターネット接続にシステム全体のコンフィギュレーションを使用します。License Managerがインターネットに接続できない場合、Window >Preferences > General > Network Connectionsと進み Proxy設定を変更してみてください。「HTTPS」プロキシ入力がコンフィギュレーション済みでイネーブルされていることを確認してください。

8. しばらくすると、ARM DS-5のライセンスが有効となり、これが License Managerで表示されます。Closeをクリックします。

図 3-7: ARM License Manager

関連情報• ARM website• 3-1ページの ライセンスの取得

ug-11372016.02.17 ライセンスのアクティベーション 3-7

ライセンス Altera Corporation

フィードバック

エンベデッド・コマンド・シェル 42016.02.17

ug-1137 更新情報 フィードバック

エンベデッド・コマンド・シェルの目的は、SoC EDSツールを呼び出すオプションを提供することです。エンベデッド・コマンド・シェルを使用することで、フル・パスで制限する必要なくSoC EDSツールを呼び出すことが可能です。‘eclipse’、‘bsp-editor’、および‘arm-altera-eabi-gcc’といったコマンドは直接実行することが可能です。Windowsでエンベデッド・コマンド・シェルを開始するには、<SoC EDS installation directory>\Embedded_Command_Shell.batを実行します。Linuxでは、Startメニュー、あるいは<SoC EDS installation directory> /embedded_command_shell.shを実行してエンベデッド・コマンド・シェルを開始します。

改訂履歴:エンベデッド・コマンド・シェル日付 バージョン 変更内容

2016年 2月 2016.0217 メンテナンス・リリース2015年 8月 2015.0806 Arria10のサポートを追加

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

スタート・ガイド 52016.02.17

ug-1137 更新情報 フィードバック

スタート・ガイドの章では、以下内容を含む完全なスタート・ガイドの手順へのアクセス方法を紹介します。• ボードの設定• Linuxの実行• ツールの実行• Second Stageブートローダ• ベアメタルのデバッグ• ハードウェア・ライブラリ(HWLibs)• ペリフェラル・レジスタの可視化• ベアメタル・プロジェクト管理• Linuxアプリケーションのデバッグ• Linuxカーネルおよびドライバのデバッグ• トレース関連情報SoCEDSGettingStarted Wiki PageGetting Started Guideへのアクセス方法についての詳細情報です。

改訂履歴:スタート・ガイド日付 バージョン 変更内容

2016年 2月 2016.0217 メンテナンス・リリース2015年 8月 2015.0806 項から一部の内容を削除し、Altera Wikiへ移植

関連情報SoCEDSGettingStartedスタート・ガイドについての詳細は、アルテラWikiの SoCEDSGettingStartedページを参照してください。

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

ARM DS-5 AE 62016.02.17

ug-1137 更新情報 フィードバック

ARM Development Studio 5ツールキット AE(ARM DS-5 AE)は、アルテラが提供するデバイス固有の包括的な開発ツールです。ARM DS-5 AEは、強力な Eclipseベースの包括的で統合的な開発環境(IDE)を提供します。以下に ARM DS-5 AEに含まれる重要な機能の一部を挙げます。• シンタックス・ハイライトおよびソース・コード・インデックスをサポートするファイル編集

• makefileに基づいたビルド・サポート• ベアメタル・デバッグ• Linuxアプリケーション・デバッグ• Linuxカーネルおよびドライバのデバッグ• マルチコア・デバッグ• HPSペリフェラル・レジスタへのアクセス• FPGAソフト IPペリフェラル・レジスタへのアクセス• Program Trace Macrocells(PTM)を介したプログラム実行のトレース• System Trace Macrocells(STM)を介したシステム・イベントのトレース• HPSと FPGA間のクロストリガ• Altera USB Blaster™ IIを使用したターゲットへの接続The ARM DS-5 AEは多くの機能とオプションを備えた包括的なツールです。本章では、一般的に使用する機会の多い機能とオプションにのみ焦点を当て、素早く開発に取り組めるようスタート・ガイドを提供します。ARM DS-5 AEの参考資料は、オンラインあるいは Eclipseの Help > Help Contents > ARM DS-5Documentationからアクセス可能です。関連情報Online ARM DS-5 DocumentationARM DS-5 AEの参考資料は、ARMウェブサイトのドキュメント・ページで確認することができます。

Eclipse ARM DS-5 AEの起動ARM DS-5 AEは、エンベデッド・コマンド・シェルより起動する必要があります。Eclipseもすべてのユーティリティがサーチ・パスに追加され、フル・パスを使用せず makefileから直接使用できるようエンベデッド・コマンド・シェルより起動する必要があります。

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

ARM DS-5 AEで使用される Eclipse IDEを起動するには、コマンドラインに eclipse &と入力する必要があります。

ベアメタル・プロジェクトの管理ARM DS-5 AEではベアメタル・プロジェクトのプロジェクト管理に向けて、2種類の使い勝手の良い方法が選択可能です。• makefileを使用する方法• ARM DS-5 AEのグラフィカル・インタフェースを使用する方法ユーザには、スクリプトからのプロジェクト・コンパイルが実行可能なオプションを持つmakefileを使用する方法を好むユーザと、プロジェクトの管理に GUIを使用する方法を選択するユーザが存在しますが、ベアメタル・プロジェクトの管理では GCCと ARMコンパイラの両方が利用可能です。

方法 利点 コンパイラ・ツールチェイン・サポート

Makefile スクリプト化されたコンパイル

GCC

ARM DS-5 AEグラフィカル・インタフェース

複数のツールチェインのサポート

GCC、ARMコンパイラ

makefileを使用するベアメタル・プロジェクトの管理ARM DS-5 AEを使用すると、makefileを使用したプロジェクト管理が簡単に実行できるようになります。SoC EDSに含まれるサンプル・プロジェクトは、ビルド・プロセスの管理に makefileを使用します。注意: このオプションは、DS-5に特化した状況にのみ触れています。makefileの定義や使用方法

について詳しくない場合は、次の項で説明する ARM DS-5 AE GUIオプションを使用してください。

ARM DS-5 AEを使用して makefileベースのプロジェクトを管理するには、以下のようにプロジェクトを作成します。1. ディスクにフォルダを作成します。2. File > New > Makefile Project with Existing Codeの順で選択してプロジェクトを作成します。

6-2 ベアメタル・プロジェクトの管理ug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

図 6-2: 既存のコードをインポートする

4. 先ほどのフォルダ内にMakefileを作成し、コードのコンパイルに必要なルールを定義します。これには、allおよび cleanターゲットが含まれていることを確認してください。これで、ARM DS-5 AEは IDEからのビルド・プロセスを起動する選択しを提供し、以下の図で示すようにプロジェクトがビルドできます。

6-4 makefileを使用するベアメタル・プロジェクトの管理ug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

図 6-3: Eclipse IDE - ビルド・プロセスの起動 - ARM DS-5 AEでソフトウェア・プロジェクトをビルドする

コンパイル・ツールがエラーを表示する場合、ARM DS-5 AEはそれらを分類し、形式化したうえで Problems画面に表示します。

5. ARM DS-5 AEでソフトウェア・プロジェクトをビルドします。

GCCベースのベアメタル・プロジェクト管理この項では、GUI環境における GCCベースのプロジェクト管理にあたって、ベアメタル・ツールチェイン・プラグインの使用方法を紹介します。

プロジェクトの作成

1. Eclipseを開きます2. File > New C Projectに進みます3. Executableエンプティ・プロジェクトと Bare-metal libraryエンプティ・プロジェクトのどちらを作成するかを選択しますa. Bare-metal executable

Project Typeを Executable > Empty Projectと選択し、Toolchainを Altera Baremetal GCCと選択し、Finishをクリックします

ug-11372016.02.17 GCCベースのベアメタル・プロジェクト管理 6-5

ARM DS-5 AE Altera Corporation

フィードバック

図 6-7: プロジェクト設定

Build Settingsには以下に挙げるツールの詳細な設定が含まれます• コンパイラ• アセンブラ• リンカ本資料のスタート・ガイドの章には、Altera SoC開発ボード上でのゼロから行うプロジェクトの作成、コンパイル、実行についての詳細な操作方法へのリンクが含まれています。

ARMコンパイラのベアメタル・プロジェクト管理本項では、ARM DS-5を使用した GUI環境における ARMコンパイラ・プロジェクトの管理方法について説明します。

ug-11372016.02.17 ARMコンパイラのベアメタル・プロジェクト管理 6-9

ARM DS-5 AE Altera Corporation

フィードバック

プロジェクトの作成

1. Eclipseを開きます2. File > New C Projectに進みます3. 以下のオプションのいずれかを選択します。

a.「Project Type」に Executable > Empty Projectを選択し、「Toolchains」には ARM Compiler 5を選択し、Finishをクリックします。

図 6-8: 空の ARMコンパイラ・ベアメタル実行可能プロジェクトの作成

b. Static Library > Empty Projectを選択し、「Toolchains」には ARM Compiler 5を選択し、Finishをクリックします。

6-10 プロジェクトの作成ug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

図 6-16: プロジェクトの設定

ビルド設定には以下に挙げるツールの詳細な設定が含まれます。• コンパイラ• アセンブラ• リンカ「ARMコンパイラのベアメタル・プロジェクト管理のスタート・ガイド」には、Altera SoC開発ボード上でのゼロから行うプロジェクトの作成、コンパイル、実行についての詳細な操作方法へのリンクが含まれています。

関連情報5-1ページの スタート・ガイド

デバッグARM DS-5 AEは、多くのデバッグ機能を備えています。

6-18 デバッグug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

デバッグ・コンフィギュレーションへのアクセスデバッグ・セクションの設定は、Debug Configurationに格納されています。DebugConfigurationsウィンドウには、Run > Debug Configurationsメニューからアクセス可能です。

図 6-17: デバッグ・コンフィギュレーションへのアクセス

新しいデバッグ・コンフィギュレーションの作成Debug Configurationは、Debug Configurationsウィンドウの左側のパネルで DS-5 Debuggerをコンフィギュレーション・タイプとして選択後、マウスを右クリックし Newメニュー・オプションを選択することで作成可能です。

ug-11372016.02.17 デバッグ・コンフィギュレーションへのアクセス 6-19

ARM DS-5 AE Altera Corporation

フィードバック

図 6-19: デバッグ・コンフィギュレーションの名称を変更する

デバッグ・コンフィギュレーション・オプション本項では、プロジェクトに最適なデバッグ・オプションの指定を可能にする Debug Configurationオプションについて説明します。• Connectionオプション• Fileオプション• Debuggerオプション• RTOS Awareness• Arguments• Environment• Event Viewer

関連情報• クイック・スタート・ガイド

ARM DS-5 AEのデバッグ機能の使用例を紹介しています。• Online ARM DS-5 Documentation詳細については、DS-5の参考資料を参照してください。

ug-11372016.02.17 デバッグ・コンフィギュレーション・オプション 6-21

ARM DS-5 AE Altera Corporation

フィードバック

ConnectionオプションConnectionタブからユーザは設定するターゲットを選択することが可能です。以下は、アルテラ・プラットフォームで利用可能なターゲットです。Arria 10 SoC:

• ベアメタル・デバッグ• Cortex-A9_0のデバッグ• Cortex-A9_1のデバッグ• Cortex-A9x2 SMPのデバッグ

• Linuxアプリケーション・デバッグ• 既に実行中の gdbserverへの接続• アプリケーションのダウンロードとデバッグ• gdbserverの開始とターゲットとするレジデント・アプリケーションのデバッグ

• Linuxカーネル/デバイス・ドライバのデバッグ• Cortex-A9_0のデバッグ• Cortex-A9_1のデバッグ• Cortex-A9x2 SMPのデバッグ

Arria V SoC:

• ベアメタル・デバッグ• Cortex-A9_0のデバッグ• Cortex-A9_1のデバッグ• Cortex-A9x2_SMPのデバッグ

• Linuxアプリケーション・デバッグ• 既に実行中の gdbserverへの接続• アプリケーションのダウンロードとデバッグ• dbgserverの開始とターゲットとするレジデント・アプリケーションのデバッグ

• Linuxカーネル/デバイス・ドライバのデバッグ• Cortex-A9_0のデバッグ• Cortex-A9_1のデバッグ• Cortex-A9x2_SMPのデバッグ

Cyclone V SoC(シングル・コア):

• ベアメタル・デバッグ• Cortex-A9_0のデバッグ

• Linuxアプリケーション・デバッグ• 既に実行中の gdbserverへの接続• アプリケーションのダウンロードとデバッグ• dbgserverの開始とターゲットとするレジデント・アプリケーションのデバッグ

• Linuxカーネル/デバイス・ドライバのデバッグ• Cortex-A9_0のデバッグ

Cyclone V SoC(デュアル・コア):

6-22 Connectionオプションug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

• ベアメタル・デバッグ• Cortex-A9_0のデバッグ• Cortex-A9_1のデバッグ• Cortex-A9x2_SMPのデバッグ

• Linuxアプリケーション・デバッグ• 既に実行中の gdbserverへの接続• アプリケーションのダウンロードとデバッグ• dbgserverの開始とターゲットとするレジデント・アプリケーションのデバッグ

• Linuxカーネル/デバイス・ドライバのデバッグ• Cortex-A9_0のデバッグ• Cortex-A9_1のデバッグ• Cortex-A9x2_SMPのデバッグ

デュアル Arria V SoC (2つのデュアル・コアを持つ SoC):

• ベアメタル・デバッグ• HPS0 Cortex-A9_0のデバッグ• HPS0 Cortex-A9_1のデバッグ• HPS0 Cortex-A9x2_SMPのデバッグ• HPS1 Cortex-A9_0のデバッグ• HPS1 Cortex-A9_1のデバッグ• HPS1 Cortex-A9x2_SMPのデバッグ

• Linuxアプリケーション・デバッグ• 既に実行中の gdbserverへの接続• アプリケーションのダウンロードとデバッグ• dbgserverの開始とターゲットとするレジデント・アプリケーションのデバッグ

• Linuxカーネル/デバイス・ドライバのデバッグ• HPS0 Cortex-A9_0のデバッグ• HPS0 Cortex-A9_1のデバッグ• HPS0 Cortex-A9x2_SMPのデバッグ• HPS1 Cortex-A9_0のデバッグ• HPS1 Cortex-A9_1のデバッグ• HPS1 Cortex-A9x2_SMPのデバッグ

デュアル Cyclone V SoC (2つのデュアル・コアを持つ SoC):

ug-11372016.02.17 Connectionオプション 6-23

ARM DS-5 AE Altera Corporation

フィードバック

• ベアメタル・デバッグ• HPS0 Cortex-A9_0のデバッグ• HPS0 Cortex-A9_1のデバッグ• HPS0 Cortex-A9x2_SMPのデバッグ• HPS1 Cortex-A9_0のデバッグ• HPS1 Cortex-A9_1のデバッグ• HPS1 Cortex-A9x2_SMPのデバッグ

• Linuxアプリケーション・デバッグ• 既に実行中の gdbserverへの接続• アプリケーションのダウンロードとデバッグ• dbgserverの開始とターゲットとするレジデント・アプリケーションのデバッグ

• Linuxカーネル/デバイス・ドライバのデバッグ• HPS0 Cortex-A9_0のデバッグ• HPS0 Cortex-A9_1のデバッグ• HPS0 Cortex-A9x2_SMPのデバッグ• HPS1 Cortex-A9_0のデバッグ• HPS1 Cortex-A9_1のデバッグ• HPS1 Cortex-A9x2_SMPのデバッグ

Androidアプリケーション・デバッグ:

• Nativeアプリケーション/ライブラリのデバッグ• gdbserverを介した APK Nativeライブラリのデバッグ

• 実行中の Androidアプリケーションへの接続• Androidアプリケーションのダウンロードとデバッグ

Linuxアプリケーション・デバッグ:

• アプリケーション・デバッグ• gdbserverを介した接続

• 既に実行中の gdbserverへの接続• アプリケーションのダウンロードとデバッグ• dbgserverの開始とターゲットとするレジデント・アプリケーションのデバッグ

選択したターゲットによって、Connectionsパネルの表示は異なります。ベアメタル・デバッグおよび Linuxカーネル/デバイス・ドライバ・デバッグのターゲット・タイプの場合、表示は以下のようになります。

6-24 Connectionオプションug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

• Target Connectionオプションが表示され、ユーザはターゲットへの接続タイプを選択可能です。Altera USB-Blasterと DSTREAMが最も一般的なオプションです。

• DTSLオプションが表示され、ユーザは Debug and Traces Services Layerをコンフィギュレーションすることが可能です(詳細は後述)。

• Connections Browseボタンが表示され、ユーザは接続に特定されたインスタンスである AlteraUSB Blasterか DSTREAMインスタンスのいずれか選択・展開することが可能です。

図 6-20: ベアメタル・デバッグおよび Linuxカーネル/デバイス・ドライバ・デバッグの接続オプション

Linux Application Debugターゲットの場合、選択された接続タイプにより接続パラメータは異なります。次の 2つのスクリーンショットはオプションを表しています。

ug-11372016.02.17 Connectionオプション 6-25

ARM DS-5 AE Altera Corporation

フィードバック

図 6-22: Linuxアプリケーションのデバッグ – アプリケーションのダウンロードとデバッグ

注意: Linux Application Debugの場合、Getting Started with Linux Application Debuggingに記載されたように Connectionは Remote System Explorer画面でコンフィギュレーションする必要があります。

関連情報• 6-31ページの DTSLオプション

Connectionsタブについての詳細は、DTSLオプションの項を参照してください。• 6-28ページの Debuggerオプション• 5-1ページの スタート・ガイド

FileオプションFilesタブより以下の設定のコンフィギュレーションが可能です。

ug-11372016.02.17 Fileオプション 6-27

ARM DS-5 AE Altera Corporation

フィードバック

• Application on host to download – ターゲットにダウンロードされるアプリケーションのファイル名です。edit boxでの直接入力、Workspace内での展開、File System上での展開も可能です。

• Files – 一連のファイルを含みます。ファイルを追加するには「+」ボタンをクリックし、削除するには「–」を使用します。ファイルは以下の 2種類のいずれかとなります。• Load symbols from file – デバッガはこのファイルをシンボルをロードするために使用します。

• Add peripheral description files from directory – デバッガは、ディレクトリに格納された.SVDファイルからペリフェラル・レジスタの記述をロードします。

図 6-23: File設定

DebuggerオプションDebuggerタブには以下のコンフィギュレーション可能なオプションが含まれます。• Run Controlオプション

• 接続のみ、エントリ・ポイントからのデバッグ、ユーザ定義のシンボルからのデバッグ• ユーザ指定のターゲット初期化スクリプトを実行するオプション• ユーザ指定のデバッグ初期化スクリプトを実行するオプション• ユーザ指定のデバッガ・コマンドを実行するオプション

• Host working directory – semihostingにより使用されます。• Paths – デバッガにソースを検索させるためにユーザが複数のパスを入力すること可能です。パスは「+」ボタンで追加し、「-」ボタンで削除することができます。

6-28 Debuggerオプションug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

図 6-25: RTOS Awareness設定

関連情報Keil WebsiteRTOS Awarenessについての詳細は、KeilTM™ウェブサイトの Embedded Development Toolsのページを参照してください。

Arguments

Argumentsタブより、ユーザはテキストとしてプログラムの引数を入力することが可能です。図 6-26: Arguments設定

Environment

Environmentタブより、ユーザは実行すべきプログラムに対し環境変数を入力することが可能です。

6-30 Argumentsug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

図 6-28: デバッグ・コンフィギュレーション - DTSL Options - Edit

Cross Triggerの設定Cross Triggerタブから SoC FPGAのクロストリガ・オプションのコンフィギュレーションが可能です。以下のオプションが提供されています。• Enable FPGA > HPS Cross Trigger – FPGAから HPSへのトリガをイネーブルする• Enable HPS > FPGA Cross Trigger – HPSから FPGAへのトリガをイネーブルする

6-32 Cross Triggerの設定ug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

図 6-29: DTSLコンフィギュレーション・エディタ - クロストリガ

Trace Captureの設定Trace Captureタブからトレース情報の方向の選択が可能です。導入部でも触れたように、方法は以下のいずれかとなります。• None – トレースはディセーブルされています• ETR – HPSによってアクセス可能なメモリ・バッファを使用します• ETF – 32KBオンチップ・トレース・バッファを使用します• DSTREAM – DSTREAMに配置された 4GBバッファを使用しますDSTREAMオプションは、Targetconnectionが Debug Configurationで DSTREAMとして選択されている場合にのみ使用可能です。

図 6-30: DTSLコンフィギュレーション・エディタ - Trace Capture > Trace Capture Method

Trace Bufferタブでは、オプションでタイムスタンプの周波数が選択可能です。図 6-31: DTSLコンフィギュレーション・エディタ - Trace Capture > Timestamp Frequency

ug-11372016.02.17 Trace Captureの設定 6-33

ARM DS-5 AE Altera Corporation

フィードバック

Cortex-A9の設定Cortex-A9タブでは、設定したいコア・トレース・オプションが選択可能です。

図 6-32: DTSLコンフィギュレーション・エディタ - Cortex-A9

以下の Core Tracing Optionsが使用可能です。• Enable Cortex-A9 0 core trace – コア #0へのトレースをイネーブルするには、このオプションをチェックします。

• Enable Cortex-A9 1 core trace – コア #1へのトレースをイネーブルするには、このオプションをチェックします。

• PTM Triggers halt execution – トレース中に実行を中止するには、このオプションをチェックします。

• Enable PTM Timestamps –タイム・スタンプをイネーブルするには、このオプションをチェックします。

• Enable PMT Context IDs –コンテキスト IDがトレースされることをイネーブルするには、このオプションをチェックします。

• Context ID Size– 8、16、32ビットの Context IDを選択します。Context IDがイネーブルされている場合にのみ使用可能です。

• Cycle Accurate – サイクル精度トレースを作成するには、このオプションをチェックします。• Trace capture range – 特定のアドレス・インターバルのみのトレースをイネーブルするには、このオプションをチェックします。

• Start Address, End Address – トレース・アドレス・インターバルを定義します。(Trace CaptureRangeがイネーブルされている場合にのみ使用可能です)

6-34 Cortex-A9の設定ug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

STMの設定STMタブでは、システム・トレース・マクロセル(STM)のコンフィギュレーションが可能です。

図 6-33: DTSLコンフィギュレーション・エディタ - STM

利用可能なオプションは 1つだけです。• Enable STM Trace – STMトレースをイネーブルするには、このオプションをチェックします。

ETRの設定ETRを設定することで、エンベデッド・トレース・ルータ (ETR)設定のコンフィギュレーションが可能となります。エンベデッド・トレース・ルータは、HPSによってアクセス可能なメモリ・バッファへトレース情報を向かわせる目的で使用されます。

図 6-34: DTSLコンフィギュレーション・エディタ - ETR

以下のオプションが提供されています。• Configure the system memory trace buffer – Trace Captureタブでトレース・デスティネーションに ETRが選択されている場合、このオプションをチェックします。

• Start Address, Size – システム・メモリ内のトレース・バッファの位置とそのサイズを定義します。

• Enable scatter-gather mode – OSが物理メモリの連続するピースを保証できない場合に使用します。scatter-gatherテーブルは、デバイス・ドライバを使用してオペレーティング・システムによりセットアップされ、ETRにより自動的にリードされます。

ETFの設定ETFタブでは、エンベデッド・トレース FIFO (ETF)設定のコンフィギュレーションが可能です。エンベデッド・トレース FIFOは HPS上に存在する 32KBバッファで、デバッガによって取得されるトレース・データを格納するために使用することができます。同時に、トレース・データが

ug-11372016.02.17 STMの設定 6-35

ARM DS-5 AE Altera Corporation

フィードバック

ERTを介してメモリに保存される場合や TPIUを使用して外部 DSTREAMに保存される場合には、エラスティック・バッファとして使用することも可能です。

図 6-35: DTSLコンフィギュレーション・エディタ - ETF

以下のオプションが提供されています。• Configure the on-chip trace buffer – Trace Captureタブでトレース・デスティネーションに ETFが選択されている場合、このオプションをチェックします。

• Size – ETFのサイズを定義します。デフォルト設定のサイズは 0x8000(32KB)です。

改訂履歴:ARM DS-5 AE日付 バージョン 変更内容

2016年 2月 2016.0217 ETF設定におけるデフォルト・サイズを更新2015年 8月 2015.0806 Arria10のサポートを追加

6-36 改訂履歴:ARM DS-5 AEug-1137

2016.02.17

Altera Corporation ARM DS-5 AE

フィードバック

ブート・ツール・ユーザガイド 72016.02.17

ug-1137 更新情報 フィードバック

概要すべてのアルテラ SoCデバイスのブート・フローには、Second Stage Bootloader(SSBL)が含まれます。SSBLは通常、Cyclone Vデバイスと Arria Vデバイスでは「プリローダ」、そして Arria10デバイスにおいては「ブートローダ」と呼ばれます。SSBLはブート ROMによりオンチップ RAM(OCRAM)へロードされ、SDRAMの立ち上げ、ブート・プロセスで次のステージのロード、実行といったタスクを実行します。

図 7-1: Cyclone Vおよび Arria Vの一般的なブート・フロー

BootROMSSBL

(Preloader)Bootloader Operating System

図 7-2: Arria 10の一般的なブート・フロー

BootROMSSBL

(Bootloader)Operating System

Cyclone Vおよび Arria Vデバイスでは、OCRAMのサイズは 64 KBとなります。これによりSSBLのサイズが制限されるため、オペレーティング・システムのロードに使用されるもう 1つのブートローダ・ステージが通常必要となります。Arria 10デバイスでは OCRAMのサイズは 256 KBであり、必要な機能は SSBLに含まれているため、別にブートローダ・ステージを設ける必要はありません。本章では、SSBL管理をイネーブルするツールについて説明します。• SSBL Support Package Generator – ユーザによる SSBLの作成・管理を可能にします• SSBL Image Tool ( mkpimage ) – ユーザが SSBLにブート ROMを必要とするヘッダを追加することを可能にします

• U-Boot Image Tool ( mkimage ) – SSBLによってロードされたファイルに SSBLを必要とするヘッダをユーザが追加することを可能にします

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

Second Stage Bootloaderサポート・パッケージ・ジェネレータThe Second Stage Bootloader(SSBL)サポート・パッケージ・ジェネレータは、アルテラ SoCデバイスに向けて SSBLをカスタマイズする際、簡便かつ安全で信頼性の高い方法を提供します。本資料では、SSBLサポート・パッケージを「BSP」、SSBLサポート・パッケージ・ジェネレータを「BSPジェネレータ」と表記します。BSPジェネレータを使用することで、以下のタスクが実行可能となります。• 新規の BSPの作成• BSP設定のレポート• BSP設定の変更• BSPファイルの生成生成される BSPには makefileが含まれますが、この makefileは対応するブートテーブル・プリローダおよびブートローダ・イメージのビルドに使用することができます。BSPジェネレータの機能には、GUIあるいはフローの完全なスクリプティングが可能なコマンドライン・ツールを使用してアクセス可能です。

BSPの生成フロー本項では、Cyclone Vと Arria Vプリローダおよび Arria 10ブートローダの両方の BSP生成フローを説明します。2つのフローは似ていますが、いくつかの重要な相違点があります。

Cyclone Vおよび Arria VのフローCyclone Vおよび Arria Vでは、BSPジェネレータがプリローダ汎用ソース・ファイルとボードに特化した SoC FPGAファイルを持つカスタム BSPを作成します。ジェネレータはハードウェア設定とユーザ入力を統合し、BSPを作成します。BSPファイルには、プリローダ・イメージを作成するための makefileが含まれます。このプリローダ・イメージは、HPSのブートに使用されるフラッシュ・デバイスや FPGA RAMにダウンロードすることが可能です。

図 7-3: Arria V/ Cyclone V BSPジェネレータのフロー

SSBL Generator

User Options

Handoff Folder(XML Files,Binary Files,

Source Code)

Quartus Prime

Hardware Design

Legend

Part of SoC EDS

Preloader Customized Source code

Preloader GenericSource Code

Makefile makePreloader

Image

ハードウェアのハンドオフ情報には、ユーザが Qsysと Quartus Primeでハードウェア・デザインを作成した際に入力した様々な設定が含まれます。このような設定には以下が含まれます。

7-2 Second Stage Bootloaderサポート・パッケージ・ジェネレータug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

• HPS専用ピンへの Pin-muxing• HPS専用ピンへの I/O設定

• 電圧• スルー・レート• プルアップ/プルダウン

• HPSペリフェラルの状態• イネーブル• ディセーブル

• HPSと FPGA間のブリッジのコンフィギュレーション• クロック・ツリーの設定

• PLL設定• クロック・ディバイダ設定• クロック・ゲーティング設定

• DDRの設定• テクノロジ• 幅• 速度

ハンドオフの設定は、 Quartus Primeコンパイルから出力され、<quartus project directory>/hps_isw_handoff/<hps entity name>ディレクトリに位置します( <hps entity name > は QsysでのHPSコンポーネント名です)。ピンのマルチプレクサ化やピン・アサインメントの変更といったハードウェアの変更が HPSに影響する場合は必ずハードウェア・ハンドオフ・ファイルをアップデートし、BSPを再度生成する必要があります。

Arria 10のフローArria 10の場合、BSPジェネレータは makefileとブートローダ・デバイス・ツリーで構成されたカスタム化された BSPを生成します。全てのカスタマイゼーションはブートローダ・デバイス・ツリーと makefile設定内でカプセル化されるため、ソース・コードは生成されません。makefileは、ブートローダ実行ファイルとブートローダ・デバイス・ツリーの両方を含む合成されたブートローダ・イメージの生成に使用することができます。この合成されたイメージは、HPSのブートに使用されるフラッシュ・デバイスや FPGA RAMにダウンロードすることが可能です。

図 7-4: Arria 10 SSBLサポート・パッケージの生成フロー

SSBL Generator

User Options

Handoff Folder(XML Files)

Quartus Prime

Hardware Design

Legend

Part of SoC EDS

Bootloader Device Tree Source

BootloaderSource Code

Makefile makeCombined Bootloader and Bootloader Device

Tree Image

ug-11372016.02.17 Arria 10のフロー 7-3

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

ハードウェアのハンドオフ情報には、ユーザが Qsysと Quartus Primeでハードウェア・デザインを作成した際に入力した様々な設定が含まれます。このような設定には以下が含まれます。• HPS専用ピンへの Pin-muxing• HPS専用ピンへの I/O設定

• 電圧• スルー・レート• プルアップ/プルダウン

• 共有ピンへの Pin-muxing• HPSペリフェラルの状態

• イネーブル• ディセーブル

• HPSと FPGA間のブリッジのコンフィギュレーション• クロック・ツリーの設定

• PLL設定• クロック・ディバイダ設定• クロック・ゲーティング設定

ハンドオフの設定は、 Quartus Primeコンパイルから出力され、<quartus project directory>/hps_isw_handoffディレクトリに位置します。ユーザは上記のパラメータが変動するような変更がハードウェアにある場合、その度に BSPジェネレータを実行しブートローダ・デバイス・ツリーを再生成する必要があります。ただし、ハードウェアの設定に変更がある度に必ずブートローダをリコンパイルする必要はなく、ブート・ソースを変更する場合にのみブートローダをリコンパイルします。

BSPジェネレータの GUIBSPジェネレータを使用するには、以下の手順で bsp -editorを実行する必要があります。1. エンベデッド・コマンド・シェルを開きます2. エンベデッド・コマンド・シェルで bsp -editorコマンドを実行し、BSPジェネレータの GUIを起動します。3. 既存の BSPプロジェクトを開き、編集するには、File > Openの順でクリックし、既存の.bspファイルを展開します。4. 新しく BSPプロジェクトを作成するには、File > New HPS BSPの順でクリックし、New BSPダイアログ・ボックスを開きます。New BSPダイアログ・ボックスには以下の設定とパラメータが含まれます。• Preloader settings directory – ハードウェア・ハンドオフ・ファイルへのパスです。ジェネレータは、このパスの有効性を確認するためにハンドオフ・ファイルを検査します。

• Operating system – 以下の 2つのオプションから SSBLのタイプを選択します• U-Boot SPL Preloader (Cyclone V/Arria V HPS)• U-Boot Bootloader (Arria 10 HPS)

• Version – 使用する SSBLのバージョンです。今回のリリースではデフォルトの 1.0バージョンのみサポートされています。

• Use default locations – ハードウェア・ハンドオフ・フォルダから BSPの位置を得るため、デフォルトでチェックされています。

7-4 BSPジェネレータの GUIug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

• BSP target directory – ジェネレータが生成した新しい BSPのデスティネーション・フォルダです。本資料では、< bsp directory>と記載されます。Arria V/ Cyclone Vのディレクトリ名はデフォルトで「spl_bsp」、Arria 10ブートローダは「uboot_bsp」となります。ディレクトリ名はUse default locationsにチェックがない場合、編集が可能です。

• BSP settings file name – BSP設定を含んでいる. bspファイルの位置とファイル名です。• Additional .tcl scripting – デフォルトの BSP設定を上書きする.tclスクリプトの位置とファイル名です。

5. BSPはカスタマイズが可能です。.bspファイルを作成、展開した後 BSP Editorダイアログ・ボックスの Settingsにアクセスします。Settingsは Commonと Advanced設定に分かれており、複数の設定を選択すると、選択した設定へのコントロールがダイアログ・ボックスの右側に表示されます。単一の設定を選択すると、設定の名称、説明、値が表示されます。これらの設定は、BSP Editorダイアログ・ボックスで編集可能です。6. Generateをクリックし、BSPを生成します。7. Exitをクリックし、BSPジェネレータ GUIを終了します。

.tclスクリプトを使用する場合デフォルト設定を使用する代わりに、tclスクリプト・ファイル(.tcl)を作成し、BSP作成中にカスタムの設定を定義することが可能です。set_settingは唯一使用可能な.tclコマンドです。利用可能な設定のリストは、BSP設定を参照してください。BSP設定ファイルでパラメータの設定に使用されるコマンドの例を以下に記載します。set_setting spl.boot.BOOT_FROM_QSPI trueset_setting spl.boot.QSPI_NEXT_BOOT_IMAGE 0x50000

関連情報7-10ページの BSPの設定

BSPジェネレータのコマンドライン・インタフェースBSPコマンドライン・ツールはエンベデッド・コマンド・シェルから起動可能で、BSPジェネレータ GUIで使用可能な機能がすべて含まれます。• bsp-create-settingsツールは、新しく BSP設定ファイルを作成します。• bsp-create-settingsツールは、既存の BSP設定ファイルをアップデートします。• bsp-create-settingsツールは、既存の BSP設定ファイルの設定値をレポートします。• bsp-generate-filesツールは、BSP設定ファイルから BSPを生成します。注意: エンベデッド・コマンド・シェルで使用可能な各ツールのヘルプを表示するには、<name

of tool> --helpを入力します。

bsp-create-settings

bsp-create-settingsツールは、デフォルト設定で新しく BSP設定ファイルを作成します。以下の例で示すように、BSP設定を編集し、BSPファイルを生成するオプションがあります。

ug-11372016.02.17 .tclスクリプトを使用する場合 7-5

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

例 7-1: 新しい BSP設定ファイルを作成する

The following example creates a new Preloader BSP settings file, based on the hardware handoff information and using the default BSP settings:bsp-create-settings --type spl -–bsp-dir . \ --settings settings.bsp \ --preloader-settings-dir ../../hps_isw_handoff/<hps_entity_name>

表 7-1: ユーザ・パラメータ:bsp-create-settings

オプション 要/不要 説明

--type <bsp type> 要 このオプションは、BSPの種類を指定します。Cyclone V/Arria Vプリローダで許容される値は、「spl」、Arria 10ブートローラでは「uboot」です。

--settings <filename> 要 このオプションは、BSP設定ファイルへのパスを指定します。ファイルは、デフォルト設定で作成されます。アルテラでは、BSP設定ファイルを「settings.bsp」と命名することを推奨しています。

--preloader-settings-dir

<directory>要 このオプションは、ハードウ

ェア・ハンドオフ・ファイルへのパスを指定します。

--bsp-dir <directory> 要 このオプションは、BSPファイルが生成されるパスを指定します。パスが指定されると、設定ファイルが作成された後に bsp -create-settingsがファイルを生成します。アルテラでは、このパラメータを常に bsp -create-settingsで指定することを推奨しています。

--set <name> <value> 不要 このオプションは、BSP設定<name> を値 <value> に設定します。使用可能な設定の名称とその説明についての完全なリストは BSPの設定 を参照してください。

7-6 bsp-create-settingsug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

bsp-update-settings

bsp-update-settingsツールは、以下の例で示すように BSP設定ファイルに格納された設定をアップデートします。

例 7-2: BSP設定ファイルをアップデートする

The following command changes the value of a parameter inside the file "settings.bsp":bsp-update-settings --settings settings.bsp --set spl.debug.SEMIHOSTING 1

表 7-2: ユーザ・パラメータ:bsp-update-settings

オプション 要/不要 説明

--settings <settings-file> 要 このオプションはアップデートのために、既存の BSP設定へのパスを指定します。

--bsp-dir <bsp-dir> 不要 このオプションは、BSPファイルが生成された箇所へのパスを指定します。このオプションを指定すると、bsp -create-settingsは設定ファイルが作成された後に BSPファイルが生成されます。

--set <name> <value> 不要 このオプションは、BSP設定<name> を値 <value> に設定します。使用可能な設定の名称とその説明についての完全なリストは BSPの設定 を参照してください。

bsp-query-settings

bsp-query-settingsツールは、以下の例で示すように BSP設定ファイルに格納された設定をクエリします。

例 7-3: BSP設定ファイルをクエリする

The following command will retrieve all the settings from "settings.bsp" and displays the setting names and values:bsp-query-settings --settings settings.bsp --get-all --show-names

ug-11372016.02.17 bsp-update-settings 7-7

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

表 7-3: ユーザ・パラメータ:bsp-query-settings

オプション 要/不要 説明

--settings <settings-file> 要 このオプションは、既存のBSP設定へのパスを指定します。

--get <name> 不要 このオプションは、BSP設定<name> の値を返すよう bsp -query-settingsに命じます。

--get-all 不要 このオプションは、すべてのBSP設定値を表示します。--get-allを使用している場合、--show-namesを使用する必要があります。

--show-names 不要 このオプションは、--get<name> あるいは --get-all と使用されている場合にのみ実行されます。どちらかのオプションだけが使用される場合、BSP設定の名称と値は並んで表示されます。

bsp-generate-files

bsp-generate-filesツールは、以下の例で示すように BSP設定ファイルに格納されたファイルと設定を生成します。

例 7-4: BSP作成後にファイルを生成する

The following commands create a settings file based on the handoff folder, and then generate the BSP files based on those settings:bsp-create-settings --type spl --bsp-dir . \ --settings settings.bsp \ --preloader-settings-dir \ ../../hps_isw_handoff/<hps_entity_name>bsp-generate-files --settings settings.bsp --bsp-dir

例 7-5: BSPアップデート後にファイルを生成する

The following commands update the settings of a an existing BSP settings file, and then generate the BSP files based on those settings:bsp-update-settings --settings settings.bsp --set \ spl.debug.SEMIHOSTING 1bsp-generate-files --settings settings.bsp --bsp-dir

以下のいずれかの条件下で BSPファイルを再生成する必要が有る場合、bsp-generate-filesを使用してください。

7-8 bsp-generate-filesug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

• bsp-create-settingsで BSP設定を作成したが、--bsp-dirパラメータが指定されていないため、BSPファイルが生成されなかった場合

• bsp-update-settingsで BSP設定をアップデートしたが、--bsp-dirパラメータが指定されていないため、BSPファイルがアップデートされなかった場合

• BSPファイルが最新のものであることを確認する場合表 7-4: ユーザ・パラメータ:bsp-generate-files

オプション 要/不要 説明

--settings <settings-file> 要 このオプションは、既存のBSP設定へのパスを指定します。

--bsp-dir <bsp-dir> 要 このオプションは、BSPファイルが生成された箇所へのパスを指定します。

BSPファイルおよび BSPフォルダBSPジェネレータで生成されたファイルとフォルダは、New BSPダイアログ・ボックスの BSPtarget directoryで指定した箇所に格納されます。Cyclone V/Arriaプリローダ BSPの場合、生成されたファイルには以下のものが含まれます。• settings.bsp – すべての BSP設定が含まれているファイル• Makefile – makefileはプリローダをコンパイルし、プリローダ・イメージを作成するために使用されます。詳細はプリローダのコンパイルを参照してください。

• preloader.ds – ターゲット・デバイスでプリローダのダウンロードおよびデバックに使用可能な ARM DS-5スクリプトです。

• generated – ハードウェア・ハンドオフ・ファイルから生成されるファイルを含んでいるフォルダです。

Arria 10ブートローダ BSPの場合、生成されたファイルには以下のものが含まれます。• settings.bsp – すべての BSP設定が含まれているファイル• Makefile – makefileはブートローダのコンパイル、ブートローダ・デバイス・ツリー・ファイルのバイナリへの変換、および合成されたブートローダとブートローダ・デバイス・ツリー・イメージの作成に使用されます。詳細についてはプリローダのコンパイルを参照してください。

• config.mk – ブート・ソースの選択と選択されたブートローダ・コンパイルを含んでいるmakefileコンフィギュレーション・ファイルです。

• devicetree.dts – ハンドオフ・ファイルとユーザ設定から得られたブートローダ・カスタマイゼーションの詳細を含んでいるブートローダ・デバイス・ツリーです。

• uboot .ds – ターゲット・デバイスでブートローダのダウンロードおよびデバックに使用可能な ARM DS-5スクリプトです。

ug-11372016.02.17 BSPファイルおよび BSPフォルダ 7-9

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

BSPの設定本項では、利用可能なすべての BSP設定をリストします。これらは、GUIアプリケーション(bsp-editor)あるいはコマンドライン・ツール(bsp-create-settings、 bsp-update-settings、bsp-

query-settings)よりアクセス可能です。Cyclone Vと Arria Vの SSBL(プリローダ)と Arria 10の SSBL(ブートローダ)で利用可能なBSP設定は異なります。

Cyclone Vおよび Arria Vの BSP設定

表 7-5: Cyclone Vおよび Arria Vの BSP設定

BSP設定 タイプ デフォルト値 説明

spl.PRELOADER_TGZ String "<SoC EDS

installation

directory>/

host_tools/

altera/

preloader/

uboot-

socfpga.tar.

gz"

この設定は、プリローダ・ソース・ファイルを含むアーカイブ・ファイルへのパスを指定します。

spl.CROSS_COMPILE String "arm-altera-

eabi-"この設定は、使用するクロス・コンパイル・ツール・チェインを指定します。

spl.boot.BOOT_FROM_QSPI Boolean False 後続のブート・イメージへのソースを選択します。一度にアクティブにできるソースは 1つだけであることに注意してください。bsp-create-settingsあるいは bsp-update-settingsを使用している場合、別のブート・オプションをオンにするには、現在オンであるブート・オプションをオフにする必要があります。

spl.boot.BOOT_FROM_SDMMC Boolean True

spl.boot.BOOT_FROM_RAM Boolean False

spl.boot.BOOT_FROM_NAND Boolean False

spl.boot.QSPI_NEXT_BOOT_

IMAGEHexadecimal 0x60000 この設定は、QSPIの後続のブー

ト・イメージの箇所を指定します。

spl.boot.SDMMC_NEXT_BOOT_

IMAGEHexadecimal 0x40000 この設定は、SD/MMCの後続の

ブート・イメージの箇所を指定します。

spl.boot.NAND_NEXT_BOOT_

IMAGEHexadecimal 0xC0000 この設定は、NANDの後続のブ

ート・イメージの箇所を指定します。

7-10 BSPの設定ug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

BSP設定 タイプ デフォルト値 説明

spl.boot.FAT_SUPPORT Boolean False SD/MMCからブートしている場合、FATパーティション・サポートをイネーブルします。

spl.boot.FAT_BOOT_PARTITION DecimalNumber

1 FATパーティション・サポートがイネーブルされている場合、この設定はブート・イメージが配置されている FATパーティションを指定します。

spl.boot.FAT_LOAD_PAYLOAD_

NAMEString "u-boot.img" FATパーティション・サポート

がイネーブルされている場合、この設定は使用するブート・イメージのファイル名を指定します。

spl.boot.WATCHDOG_ENABLE Boolean True この設定は、プリローダ実行フェーズ中にウォッチドッグをイネーブルします。ウォッチドッグは、プリローダ終了後もイネーブル状態を維持します。

spl.boot.CHECKSUM_NEXT_IMAGE Boolean True この設定により、プリローダが後続のブート・イメージ・ヘッダ情報のチェックサムを検証することが可能になります。

spl.boot.EXE_ON_FPGA Boolean False この設定は、FPGA上のプリローダを実行します。プリローダが FPGAからブートするようコンフィギュレーションされている場合、spl.boot.EXE_ON_FPGA

を選択してください。spl.boot.STATE_REG_ENABLE Boolean True この設定により、プリローダ終

了時にシステム・マネージャ内で INITSWSTATEレジスタにmagic valueをライトすることが可能になります。これは、プリローダがもつブート ROMが正常に実行したことを意味します。

ug-11372016.02.17 Cyclone Vおよび Arria Vの BSP設定 7-11

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

BSP設定 タイプ デフォルト値 説明

spl.boot.BOOTROM_HANDSHAKE_

CFGIOBoolean True この設定により、IOCSRおよび

ピンのマルチプレクス化をコンフィギュレーションする際、ブート ROMを使用したハンドシェイクが可能となります。spl.boot.BOOTROM_HANDSHAKE_

CFGIOがイネーブルされており、プリローダが IOCSRおよびピンのマルチプレクス化をコンフィギュレーションする際にウォーム・リセットが発生する場合、ブート ROMは IOCSRおよびピンのマルチプレクス化を再度リコンフィギュレーションします。このオプションはデフォルトでイネーブルされています。

spl.boot.WARMRST_SKIP_CFGIO Boolean True この設定によりは、プリローダがウォーム・リセット中にIOCSRおよびピンのマルチプレクス化を省略することが可能となります。spl.boot.WARMRST_SKIP_CFGIO

は、ブート ROMが IOCSRとピンのマルチプレクサ化のコンフィギュレーションを省略した場合にのみ適用可能です。

spl.boot.SDRAM_

INITIALIZATIONBoolean False ECCビットを初期化するため

に SDRAMを初期化します。spl.boot.SDRAM_ECC_INIT_

BOOT_REGION_STARTHexadecimal 0x1000000 初期化される SDRAM内のメモ

リ領域の開始アドレスです。spl.boot.SDRAM_ECC_INIT_

BOOT_REGION_ENDHexadecimal 0x2000000 初期化される SDRAM内のメモ

リ領域の終了アドレスです。spl.boot.SDRAM_ECC_INIT_

REMAIN_REGIONBoolean True フラッシュがイメージをロード

するためにアクセスする間、残りの SDRAMを初期化します。

7-12 Cyclone Vおよび Arria Vの BSP設定ug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

BSP設定 タイプ デフォルト値 説明

spl.debug.DEBUG_MEMORY_WRITE Boolean False この設定により、プリローダがデバッグに向けてメモリにデバッグ情報をライトすることが可能となります。この設定はUARTが利用可能でない場合に有用です。アドレスは、spl.debug.DEBUG_ MEMORY_ADDR

で指定されます。spl.debug.SEMIHOSTING Boolean False この設定は、デバッガ・ツール

との使用に向けてプリローダのsemihostingサポートをイネーブルします。spl.debug.SEMIHOSTINGは、UARTが利用可能でない場合に有用です。

spl.debug.SKIP_SDRAM Boolean False この設定がイネーブルされている場合、プリローダは SDRAMの初期化とキャリブレーションを省略します。

spl.performance.SERIAL_

SUPPORTBoolean True この設定により UARTプリン

トアウト・サポートがイネーブルとなり、ランタイム時にデバッグ情報を持つ printf()を呼び出すプリローダ・コードがイネーブルされます。printf()からのstdout出力は UARTに向けられます。このデバッグ情報は、UARTで指定したペリフェラルにターミナル・プログラムを接続することで表示することが可能です。

ug-11372016.02.17 Cyclone Vおよび Arria Vの BSP設定 7-13

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

BSP設定 タイプ デフォルト値 説明

spl.reset_assert.DMA Boolean False

イネーブルされると、この設定は対応するペリフェラルを強制的にリセットで保持させます。このようなコンポーネントからデバッガがレジスタをリードしないことを確認する必要があります。

spl.reset_assert.GPIO0 Boolean False

spl.reset_assert.GPIO1 Boolean False

spl.reset_assert.GPIO2 Boolean False

spl.reset_assert.L4WD1 Boolean False

spl.reset_assert.OSC1TIMER1 Boolean False

spl.reset_assert.SDR Boolean False

spl.reset_assert.SPTIMER0 Boolean False

spl.reset_assert.SPTIMER1 Boolean False

spl.warm_reset_

handshake.FPGABoolean True この設定により、リセット・マ

ネージャがウォーム・リセットをアサートする前に FPGAでハンドシェイクを実行することが可能となります。

spl.warm_reset_handshake.ETR Boolean True この設定により、リセット・マネージャがエンベデッド・トレース・ルータ (ETR)によりAdvanced eXtensible Interface(AXI)マスタをストールさせ、

ETRが L3インタコネクトあるいは ETRのデバッグ・リセットをアサートする前に未処理のAXIトランザクションを完了するまで待機するようリクエストすることが可能となります。

7-14 Cyclone Vおよび Arria Vの BSP設定ug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

BSP設定 タイプ デフォルト値 説明

spl.warm_reset_

handshake.SDRAMBoolean False このオプションにより、SDRAM

の内容をウォーム・リセットで保存することが可能となります。注意: このオプションを使

用する場合、SDRAMコントローラはウォーム・リセットから戻る際、完全には再度初期化されません。このことは、SDRAMコントローラの不成功の結果としてウォッチドッグによりウォーム・リセットが生成される際、問題となることがあります。

注意: また、SDRAM PLLもこのオプションがイネーブルされている場合、再度初期化されることはなく、システムはウォーム・リセットから抜けます。

spl.boot.FPGA_MAX_SIZE Hexadecimal 0x10000 この設定は、FPGA内に収まるコード(.textと.rodata)の最大サイズを指定します。指定のサイズよりもビルドされたコードが大きい場合、ビルド・エラーがトリガされます。

spl.boot.FPGA_DATA_BASE Hexadecimal 0xFFFF0000 この設定は、FPGAの実行がイネーブルされている場合、データ領域(.data、.bss、heap、および stack)の箇所を指定します。

spl.boot.FPGA_DATA_MAX_SIZE Hexadecimal 0x10000 この設定は、FPGA内に収まるデータ(.data、.bss、heap、および stack)の最大サイズを指定します。指定のサイズよりもビルドされたコードが大きい場合、ビルド・エラーがトリガされます。

ug-11372016.02.17 Cyclone Vおよび Arria Vの BSP設定 7-15

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

BSP設定 タイプ デフォルト値 説明

spl.debug.DEBUG_MEMORY_ADDR Hexadecimal 0xFFFFFD00 この設定は、spl.debug.DEBUG_

MEMORY_ WRITE設定でイネーブルされたプリローダのデバッグ情報を格納するベース・アドレスを指定します。

spl.debug.DEBUG_MEMORY_SIZE Hexadecimal 0x200 この設定は、プリローダのデバッグ情報の格納に使用される最大サイズを指定します。

spl.debug.DEBUG_MEMORY_ADDR Hexadecimal 0xFFFFFD00 この設定は、spl.debug.DEBUG_

MEMORY_ WRITE設定でイネーブルされたプリローダのデバッグ情報を格納するベース・アドレスを指定します。

spl.debug.HARDWARE_

DIAGNOSTICBoolean False ハードウェア診断サポートをイ

ネーブルします。この設定をイネーブルするには、最低 1GBのメモリが必要です。メモリが1GBを下回る場合、ハードウェア診断は正常には実行されません。

spl.boot.RAMBOOT_PLLRESET Boolean True CSEL = 00の際、ウォーム・リセットで RAM Boot PLLリセット・コードを実行します。CSEL= 00を使用している場合にウォーム・リセット機能を修正するには、このオプションをイネーブルする必要があります。このオプションがイネーブルされている場合、OCRAMの上部 4 KBは予約されます。ユーザ・ソフトウェアで修正しないでください。注意: この機能を CSEL !=

00でイネーブルしても、影響を受けるコードがこれをチェックするため、何ら影響はありません。

Arria 10の BSP設定Arria 10の BSP設定は、4つのグループに分類されます。

7-16 Arria 10の BSP設定ug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

• Main Group• MPU Firewall• L3 Firewall Group• F2S Firewall Group

次の表に、各グループの設定名の前に付ける設定のプリフィックスを示します。これらのプリフィックスは、本項の内容がより明瞭となるよう、表内で表示されます。

表 7-6: Arria 10 BSP Firewall設定のプリフィックス

設定グループ 設定グループのプリフィックス

Main Group N/A

MPU Firewall mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.*

L3 Firewall Group mpu_m0.noc_fw_ddr_l3_ddr_scr.*

F2S Firewall Group mpu_m0.noc_fw_ddr_mpu_fpga2sdram_ddr_scr.*

Arria 10の主要な BSP設定グループ

表 7-7: Arria 10の主要な BSP設定グループ

BSP設定 タイプ デフォルト値 説明

uboot.boot_device String "SD/MMC" ブート・イメージのソースを選択します。使用可能な値は、SD/MMCと QSPIです。

uboot.model String "SOCFPGA

Arria10 Dev

Kit"

ブートローダ開始の際に表示されるボードの名称です。

uboot.external_fpga_config Boolean False JTAGダウンロードまたは外部接続フラッシュにより FPGAがユーザ・モードとなるよう、ブート・シーケンスの早い段階でUbootが待機するようコンフィギュレーションします。

uboot.rbf_filename String socfpga.rbf 完全な FPGA .rbfファイル名です。uboot.external_fpga_

config設定がイネーブルされている場合、この設定は無視されます。

uboot.rbf_offset Hexadecimal 0x720000 QSPIフラッシュ内の RBFオフセット・アドレスです。

ug-11372016.02.17 Arria 10の主要な BSP設定グループ 7-17

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

BSP設定 タイプ デフォルト値 説明

uboot.disable_uboot_build Boolean False Ubootのビルドをディセーブルし、ブートローダ・デバイス・ツリー・ファイルのみの生成にのみ使用することが可能です。

uboot.secureboot.enable_

bootloader_encryption

Boolean 0 指定のキー・ファイルを使用してブートローダを暗号化します。

uboot.secureboot.enable_

bootloader_signing

Boolean 0 指定のキー・ペア・ファイルを使用してブートローダをサインします。

uboot.secureboot.encryption_

key_file

String encrypt.key ブートローダ暗号化に使用されるキー・ファイルです。

uboot.secureboot.encryption_

key_name

String key1 ブートローダ暗号化に対しキー・ファイル内で使用する名称です。

uboot.secureboot.signing_

key_fpga_offset

Hexadecimal 0x0 H2Fブリッジ・ベース・アドレスから(0xC0000000)root-public-keyのロケーションへのオフセットです。

uboot.secureboot.signing_

key_pair_file

String root_key.pem Signingがイネーブルされている場合に使用するキー・ペア・ファイルです。このファイルを生成するには、'make generate-signing-key-pair-file’コマンドを使用します。

uboot.secureboot.signing_

key_type

String user 指定のキー・ペア・ファイルを使用してブートローダをサインします。

Arria 10ブートローダ MPU Firewallの BSP設定グループ

表 7-8: Arria 10ブートローダ MPU Firewallの BSP設定グループ

BSP設定 タイプ デフォルト値 説明

enable.mpuregion0enable

Boolean

True

MPU Firewall領域をイネーブルします

enable.mpuregion1enable False

enable.mpuregion2enable False

enable.mpuregion3enable False

7-18 Arria 10ブートローダ MPU Firewallの BSP設定グループug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

BSP設定 タイプ デフォルト値 説明

mpuregion0addr.base

Hexadecimal 0x0 MPU Firewall領域のベースmpuregion1addr.base

mpuregion2addr.base

mpuregion3addr.base

mpuregion0addr.limit

Hexadecimal 0xffff MPU Firewall領域のリミットmpuregion1addr.limit

mpuregion2addr.limit

mpuregion3addr.limit

Arria 10ブートローダ L3 Firewallの BSP設定グループ

表 7-9: Arria 10ブートローダ L3 Firewallの BSP設定グループ

BSP設定 タイプ デフォルト値 説明

enable.hpsregion0enable

Boolean

True

L3 Firewall領域をイネーブルします

enable.hpsregion1enable False

enable.hpsregion2enable False

enable.hpsregion3enable False

enable.hpsregion4enable False

enable.hpsregion5enable False

enable.hpsregion6enable False

enable.hpsregion7enable False

hpsregion0addr.base

Hexadecimal 0x0 L3 Firewall領域のベース

hpsregion1addr.base

hpsregion2addr.base

hpsregion3addr.base

hpsregion4addr.base

hpsregion5addr.base

hpsregion6addr.base

hpsregion7addr.base

ug-11372016.02.17 Arria 10ブートローダ L3 Firewallの BSP設定グループ 7-19

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

BSP設定 タイプ デフォルト値 説明

hpsregion0addr.limit

Hexadecimal 0xffff L3 Firewall領域のリミット

hpsregion1addr.limit

hpsregion2addr.limit

hpsregion3addr.limit

hpsregion4addr.limit

hpsregion5addr.limit

hpsregion6addr.limit

hpsregion7addr.limit

Arria 10ブートローダ F2S Firewallの BSP設定グループ

表 7-10: Arria 10ブートローダ F2S Firewallの BSP設定グループ

BSP設定 タイプ デフォルト値 説明

enable.fpga2sdram0region0

Boolean

True

F2S Firewall領域をイネーブルします

enable.fpga2sdram0region1 True

enable.fpga2sdram0region2 True

enable.fpga2sdram0region3 False

enable.fpga2sdram1region0 False

enable.fpga2sdram1region1 False

enable.fpga2sdram1region2 False

enable.fpga2sdram1region3 False

enable.fpga2sdram2region0 False

enable.fpga2sdram2region1 False

enable.fpga2sdram2region2 False

enable.fpga2sdram2region3 False

7-20 Arria 10ブートローダ F2S Firewallの BSP設定グループug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

BSP設定 タイプ デフォルト値 説明

fpga2sdram0region0addr.base

Hexadecimal 0x0 F2S Firewall領域のベース

fpga2sdram0region1addr.base

fpga2sdram0region2addr.base

fpga2sdram0region3addr.base

fpga2sdram1region0addr.base

fpga2sdram1region1addr.base

fpga2sdram1region2addr.base

fpga2sdram1region3addr.base

fpga2sdram2region0addr.base

fpga2sdram2region1addr.base

fpga2sdram2region2addr.base

fpga2sdram2region3addr.base

fpga2sdram0region0addr.limit

Hexadecimal 0xffff F2S Firewall領域のリミット

fpga2sdram0region1addr.limit

fpga2sdram0region2addr.limit

fpga2sdram0region3addr.limit

fpga2sdram1region0addr.limit

fpga2sdram1region1addr.limit

fpga2sdram1region2addr.limit

fpga2sdram1region3addr.limit

fpga2sdram2region0addr.limit

fpga2sdram2region1addr.limit

fpga2sdram2region2addr.limit

fpga2sdram2region3addr.limit

Second Stage Bootloaderイメージ・ツール(mkpimage)The Second Stage Bootloader(SSBL)イメージ・ツール(mkpimage)は Arria Vと Cyclone Vのプリローダおよび Arria 10ブートローダのアルテラ BootROMに互換性を持つイメージを作成します。また、このツールは以前に生成されたイメージのヘッダーをデコードすることも可能です。mkpimageツールは、以下の内容を前提としています。

ug-11372016.02.17 Second Stage Bootloaderイメージ・ツール(mkpimage) 7-21

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

• 入力ファイルのフォーマットがロウ・バイナリである。Executable and Linking Format File(.elf)、Hexadecimal(Intelフォーマット)ファイル(.hex)、S-Recordファイル(. srec)のような他のファイルのフォーマットをバイナリ・フォーマットに変換するには、Mentor Graphics社のウェブサイトの GNU Compiler Collection(GCC)ツール・チェインで提供されているobjcopyユーティリティを使用する必要があります。

• 出力ファイルのフォーマットがロウ・バイナリである。• ツールは必ずバイナリ・ファイルの始めに出力イメージを作成します。イメージを特定のベース・アドレスでプログラムする必要がある場合、フラッシュ・プログラミング・ツールにアドレス情報を提供する必要があります。

• 出力ファイルには、プリローダ・イメージあるいはブートローダ・イメージのみが含まれます。Linux、SRAM Object File(.sof)、およびユーザ・データは、フラッシュ・プログラミング・ツールもしくはターゲット・システムの U-bootで関連するユーティリティを使用して別にプログラムされます。

図 7-5: mkpimageツールの基本動作

SSBL

(empty)Exception Vector

CRC Checksum

HeaderSSBL

Exception Vector

CRC Checksum

Header

Padding

+

mkpimageツールの動作mkpimageツールはホスト・マシーン上で実行されます。ツールはヘッダーと CRCチェックサムを生成し、それらを SSBLプログラム・イメージと例外ベクタと共に挿入します。一部のフラッシュ・メモリ・ツールでは、SSBLイメージの位置は特定のブロック・サイズに揃える必要があります。mkpimageツールは必要なパディング・データを生成します。以前に生成された SSBLイメージがある場合、mkpimageツールはオプションでヘッダ情報をデコードし、検証します。前述したように、SSBLイメージは mkpimageツールへの出力です。コンパイラは、SSBL例外ベクタとプログラムの間に空白の領域を残します。mkpimageツールはこの空白部分をヘッダ情報で上書きし、全イメージのチェックサムを算出します。必要であれば、mkpimageツールは出力イメージにパディング・データを追加します。mkpimageツールは、1つ、あるいは 4つの入力ファイルで動作可能です。4つの入力ファイルで動作する場合、各ファイルを別々に処理し、4つのイメージの結果を統合します。

ヘッダ・ファイルのフォーマットmkpimageヘッダ・ファイルには 2つのフォーマットがあります。• Version 0 ‐ Cyclone Vおよび Arria Vの SSBL(プリローダ)に使用されます• Version 1 ‐ Arria 10の SSBL(ブートローダ)に使用されますCyclone Vおよび Arria Vのプリローダに使用される Version 0のヘッダには以下が含まれます。

7-22 mkpimageツールの動作ug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

• 検証ワード(0x31305341)• バージョン・フィールド(0x0で設定されています)• フラッグ・フィールド(0x0で設定されています)• プリローダ・プログラムで 32ビット・ワードで測定されるプログラム・レングス• ヘッダ・コンテントの 16ビット・チェックサム(0x40 – 0x49)

表 7-11: Version 0のヘッダ・フォーマット

0x4A ヘッダ・チェックサム

0x48 予約(0x0)

0x46 32ビット・ワードのプログラム・レングス(n)

0x45 フラグ

0x44 バージョン

0x40 検証ワード(0x31305341)

図 7-6: Version 0のヘッダ・フォーマット

Header Checksum

Reserved (0x0)

Program length in 32-bit words

Flags

Version

Validation word (0x31305341)0x40

0x44

0x450x46

0x48

0x4A

Arria 10のブートローダに使用される Version 1のヘッダには以下が含まれます。• 検証ワード(0x31305341)• バージョン・フィールド(0x1で設定されています)• フラッグ・フィールド(0x0で設定されています)• バイト単位のヘッダ・レングス、0x14で設定されています(20バイト)

ug-11372016.02.17 ヘッダ・ファイルのフォーマット 7-23

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

• バイト単位の総プログラム・レングス(例外ベクタと CRC領域を含む)。イメージが有効となるには、レングスは最小で 0x5C(92バイト)、最大で 0x32000(200KiB)である必要があります。

• ヘッダの開始(0x40)に対応するプログラム・エントリ・オフセットで、32ビット幅でワード・アラインメントされていなければいけません。デフォルトは 0x14で、これより小さい値は無効となります。

• ヘッダ・コンテントの 16ビット・チェックサム(0x40 – 0x51)です。図 7-7: Version 1のヘッダ・フォーマット

Program entry offset

Program length in bytes

Header length in bytes

Flags

Version

Validation word (0x31305341)0x40

0x44

0x450x46

0x48

0x4C

0x50 Reserved (0x0)

0x52 Header checksum

表 7-12: Version 1のヘッダ・フォーマット

0x52 ヘッダ・チェックサム

0x50 予約(0x0)

0x4c プログラム・エントリ・オフセット(x)

0x48 バイト単位のプログラム・レングス(n)

0x46 バイト単位のヘッダ・レングス

0x45 フラグ

0x44 バージョン

0x40 検証ワード(0x31305341)

両バージョンの mkpimageヘッダに対するヘッダチェックサムは、0x0から(n*4)-4バイトへのバイト地の CRCチェックサムです。この nはプログラム・レングスを意味します。CRCは、多項式の標準 CRC32です。x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1

ビットの反映はなく、残りの初期値は 0xFFFFFFFF、最終値は 0xFFFFFFFFを持つ exclusive OR-edです。

ツールの使用mkimageツールは 3つの使用モデルを備えています。

7-24 ツールの使用ug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

• シングル・イメージの作成• クワッド・イメージの作成• シングルまたはクワッド・イメージのデコーディングmake imageプロセス中にエラーが検出されると、ツールは停止し、エラーを表示します。起こり得るエラーには以下の条件が含まれます。• Cyclone Vおよび Arria Vのプリローダ:入力イメージが 81バイトより小さいか、あるいは 60

KBより大きい場合• Arria 10のブートローダ:入力イメージが 92バイトより小さいか、あるいは 200 KBより大きい場合

mkpimageによってツールが起動します。ツールを --helpオプションで起動すると、ツールの説明、ツールの使用方法やオプション情報が表示されます。$ mkpimage --helpmkpimage version 15.1 (build 189)

Description: This tool creates an Altera BootROM-compatible image of SecondStage Boot Loader (SSBL). The input and output files are in binary format.It can also decode and check the validity of previously generated image.

Usage: Create quad image: mkpimage [options] -hv <num> -o <outfile> <infile> <infile> <infile> <infile> Create single image: mkpimage [options] -hv <num> -o <outfile> <infile> Decode single/quad image: mkpimage -d [-a <num>] <infile>

Options: -a (--alignment) <num> : Address alignment in kilobytes for output image (64, 128, 256, etc.), default to 64 for header version 0 and 256 for header version 1, override if the NAND flash has a different block size. If outputting a single image, value of '0' is permitted to specify no flash block padding (needed for SSBL image encryption). -d (--decode) : Flag to decode the header information from input file and display it -f (--force) : Flag to force decoding even if the input file is an unpadded image -h (--help) : Display this help message and exit -hv (--header-version) <num> : Header version to be created (Arria/Cyclone V = 0, Arria 10 = 1) -o (--output) <outfile> : Output file, relative and absolute path supported -off (--offset) <num> : Program entry offset relative to start of header (0x40), default to 0x14. Used for header version 1 only -v (--version) : Display version and exit

出力イメージのレイアウト

ベース・アドレスブート可能な SSBLイメージは、NANDおよび QSPIフラッシュに対しては 0x0に配置する必要があります。SD/MMCの場合、イメージは 0x0に配置することも可能ですが、通常はイメージはカスタム・パーティションのタイプ 0xA2のオフセット 0x0に配置します。カスタム・パーテ

ug-11372016.02.17 出力イメージのレイアウト 7-25

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

ィションにはファイルシステムは存在しません。ブート ROMは SD/MMCカードの 0x0に位置するMBR(Master Boot Record)を使用してパーティションを検索することが可能です。mkpimageツールは通常、ターゲットとするフラッシュ・メモリの種類を問わず出力イメージを出力バイナリ・ファイルの始めに配置します。フラッシュ・プログラミング・ツールは、フラッシュ・メモリ・デバイスで目的の位置にイメージを配置する役割を持ちます。

サイズCyclone Vと Arria Vでは、単一のプリローダにおける最大イメージ・サイズは 60 KBです。フラッシュには、最大 4つのプリローダ・イメージを格納することが可能です。ブート ROMが最初のロケーションで有効なプリローダ・イメージを検出できない場合、次のロケーションからイメージの検出を試みます。この機能を利用するには、フラッシュに 4つのプリローダ・イメージをプログラムします。Arria 10では、単一のブートローダにおける最大イメージ・サイズは 200 KBです。フラッシュには、最大 4つのブートローダ・イメージを格納することが可能です。ブート ROMが最初のロケーションで有効なブートローダ・イメージを検出できない場合、次のロケーションからイメージの検出を試みます。この機能を利用するには、フラッシュに 4つのブートローダ・イメージをプログラムします。

アドレス・アラインメントCyclone Vと Arria Vでは、NANDデバイスの場合を除き、それぞれのプリローダ・イメージを64KB境界にアラインする必要があります。NANDデバイスの場合、プリローダ・イメージはNANDブロック・サイズにアラインするか、あるいは 64 KBより大きくアラインします。Arria 10では、NANDデバイスの場合を除き、それぞれのブートローダ・イメージを 256 KB境界にアラインする必要があります。NANDデバイスの場合、ブートローダ・イメージは NANDブロック・サイズにアラインするか、あるいは 256 KBより大きくアラインします。次の表は一般的なイメージ・レイアウトを表しています。これはブロック・サイズが 64 KB以下(Cyclone V/Arria V)またはブロック・サイズが 256 KB以下(Arria 10)の QSPI、SD/MMC、および NANDデバイスに使用可能です。

表 7-13: 一般的な Arria V/Cyclone Vプリローダのイメージ・レイアウト

オフセット イメージ

0x30000 Preloader Image 3

0x20000 Preloader Image 2

0x10000 Preloader Image 1

0x00000 Preloader Image 0

表 7-14: 一般的な Arria 10ブートローダのイメージ・レイアウト

オフセット イメージ

0xC0000 Bootloader Image 3

7-26 サイズug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

オフセット イメージ

0x80000 Bootloader Image 2

0x40000 Bootloader Image 1

0x00000 Bootloader Image 0

mkpimageツールは、ターゲットとするフラッシュ・メモリの種類を認識していません。ブロック・サイズを指定しない場合、デフォルトは 64 KBとなります。

NANDフラッシュプリローダおよびブートローダの各イメージは、ブロックの整数値を使用します。1つのブロックは消去が可能な最小のエンティティであるため、特定のブート・イメージへのアップデートを実行しても他のイメージに影響を与えることはありません。たとえば Cyclone Vと Arria Vの場合、単一のプリローダ・イメージの最大サイズは 64 KBですが、NANDブロックであれば 128 KBとなります。よってプリローダ・イメージは 128 KBインターバルで配置する必要があります。

シリアル NORフラッシュ各 QSPIブート・イメージは、サブセクタの消去がサポートされていない限りセクタの整数値を使用します。これにより、1つのイメージをアップデートを実行しても、他のイメージに影響を与えることはありません。

SD/MMC

デバイス・メモリの始めの 512バイトに位置するマスタ・ブート・レコードには、パーティション・アドレスとサイズの情報が含まれます。プリローダとブートローダのイメージはタイプ0xA2のパーティションに格納されています。他のアイテムは、ターゲットとするファイル・システムのフォーマットに応じて他のパーティション・タイプに格納することが可能です。マスタ・ブート・レコードの設定と管理には、fdiskツールを使用することができます。fdiskツールが SD/MMCデバイスをパーティションする際、ツールは SD/MMCの各パーティションのパーティション・アドレスとサイズの情報を使用し、最初のセクタにマスタ・ブート・レコードを作成します。

パディングmkimageツールは、イメージの未使用領域に CRCチェックサムを挿入します。パディング・ファイルは残りの未使用領域を満たします。イメージのパディングされた領域と未使用の領域の内容は定義されません。関連情報• Arria V Hard Processor System Technical Reference Manual詳細は、ブートとコンフィギュレーションの章を参照してください。

• Cyclone V Hard Processor System Technical Reference Manual詳細は、ブートとコンフィギュレーションの章を参照してください。

• Arria 10 Hard Processor System Technical Reference Manual詳細は、ブートとコンフィギュレーションの章を参照してください。

ug-11372016.02.17 NANDフラッシュ 7-27

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

U-Bootイメージ・ツール(mkimage)プリローダ(Arria V/ Cyclone V向け)とブートローダ(Arria 10向け)は、next stageブート・イメージの始めに U-Bootイメージ・ヘッダを必要とします。シナリオの使用方法によっては、プリローダあるいはブートローダのいずれかによってロードされた他のアイテムは、U-Bootイメージ・ヘッダを必要とする場合があります。mkimageユーティリティは SoC EDSに付属し、next stageブート・イメージをはじめとする他の必要なファイルに U-Bootイメージ・ヘッダを加える目的で使用することが可能です。

図 7-8: mkimageヘッダ

Input File

mkimage Signature Header0x0000

0x0040

ヘッダは以下のアイテムで構成されます。• Image magic number - イメージが有効なブート・イメージであるかを判断します• Image data size - コピーされるイメージのレングスです• Data load address - ブート・イメージのエントリ・ポイントです(ブート可能でないイメージのアイテムに対しては使用されません)

• Operating system - イメージの種類を決定します• Image name - ブート・イメージの名称です• Image CRC - ブート・イメージのチェックサム値です

図 7-9: mkimageのヘッダ・レイアウト

Magic Number0x0000

Data Load Address

Header CRC Timestamp Image Data Size

Entrypoint Image CRC O A T C

Image Name

0x0010

0x0020

0x0030

0x0040

0x4 0x8 0xC

O – Operating System A – Architecture T – Type C – Compression

ツール・オプションmkimageは mkimageツールを起動し --helpオプションはツールの説明とオプション情報を提供します。$ mkimage --helpUsage: mkimage -l image -l ==> list image header information mkimage [-x] -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file[:data_file...] image -A ==> set architecture to 'arch' -O ==> set operating system to 'os' -T ==> set image type to 'type' -C ==> set compression type 'comp' -a ==> set load address to 'addr' (hex) -e ==> set entry point to 'ep' (hex) -n ==> set image name to 'name' -d ==> use image data from 'datafile' -x ==> set XIP (execute in place)

7-28 U-Bootイメージ・ツール(mkimage)ug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

mkimage [-D dtc_options] [-f fit-image.its|-F] fit-image -D => set options for device tree compiler -f => input filename for FIT sourceSigning / verified boot not supported (CONFIG_FIT_SIGNATURE undefined) mkimage -V ==> print version information and exit

使用例

例 7-6: U-bootイメージの作成

mkimage –A arm –T firmware –C none –O u-boot –a 0x08000040 –e 0 –n "U-Boot 2014.10 for SOCFGPA board" –d u-boot.bin u-boot.img

例 7-7: ベアメタル・アプリケーション・イメージの作成

mkimage -A arm -O u-boot -T standalone -C none -a 0x02100000 -e 0 -n "baremetal image" -d hello_world.bin hello_world.img

Second Stageブートローダのビルド方法本項では、Cyclone Vと Arria Vのプリローダ、および Arria 10のブートローダに向けて生成された makefileを使用したブート可能な SSBLイメージの作成方法の詳細を説明します。

Cyclone Vおよび Arria Vのプリローダのビルド方法以下の図は、makeを呼び出して、生成した makefileで実行する Cyclone Vと Arria Vのプリローダのビルド・フローを表しています。図を見やすくするため、生成された makefileは図には含まれていません。

図 7-10: Cyclone V/Arria Vプリローダのビルド・フロー

SSBL Generator

User Options

Handoff Folder(XML Files,Binary Files,

Source Code)

Legend

Part of SoC EDS

Preloader Customized Source code

Preloader Generic

Source Code

Compiler Toolchain

Preloader Binary

mkp

imag

e

Bootable Preloader

Image

makefileは、以下のタスクを実行します。

ug-11372016.02.17 使用例 7-29

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

• 一般的なプリローダ・ソース・コードを< bsp directory>/ uboot-socfpgaへコピーします。• 生成された BSPファイルとハードウェア・ハンドオフ・ファイルを< bsp_directory >/ uboot-

socfpga /board/ altera / socfpga _<device>のソース・ディレクトリへコピーします。• SoC FPGAをターゲットとするようコンパイラ・ツールをコンフィギュレーションします。• ユーザ指定(BSP設定で指定)のクロス・コンパイラを使用してソース・ファイルを< bsp

directory>/ uboot-socfpgaにコンパイルし、生成されたプリローダのバイナリ・ファイルを<bsp_directory >/ uboot - socfpga / splに格納します。

• プリローダのバイナリ・ファイルをmkpimageツールを使用してプリローダ・イメージである< bsp_directory >/preloader- mkpimage.binni変換します。

makefileには、以下のターゲットが含まれます。• make all – プリローダをコンパイルします。• make clean – <bsp directory>から preloader-mkpimage.binを消去します。• make clean-all – ディレクトリのソース・ファイルを含む<bsp directory>を消去します。

Arria 10ブートローダのビルド方法以下の図は、makeを呼び出して、生成した makefileで実行する Arria 10のブートローダのビルド・フローを表しています。図を見やすくするため、生成された makefileは図には含まれていません。

図 7-11: Arria 10ブートローダのビルド・フロー

SSBL Generator

User Options

Handoff Folder(XML Files)

Legend

Part of SoC EDS

BootloaderDevice Tree

BootloaderSource Code

Compiler Toolchain

BootloaderBinary

Bootable Combined

Image

Device Tree Compiler

Bootloader Device Tree

Binary

cat Combined

Binary

mkp

imag

e

注意:今回のツールのリリースでは、ブートローダのコンパイルは Linuxホスト・マシーンでのみサポートされています。ブートローダのコンパイルは、Windowsホスト・マシーンではサポートされていません。これ以外のフローは LinuxとWindowsの両方のホスト・マシーンでサポートされています。注意: ブートローダは、ブート・ソースに変更がある場合にのみリコンパイルする必要がありま

す(SD/MMCと QSPIが現在サポートされています)。設定はブートローダ・デバイス・ツリーでカプセル化されているため、他の設定が変更されてもブートローダをリコンパイルする必要はありません。

makefileは、以下のタスクを実行します。

7-30 Arria 10ブートローダのビルド方法ug-1137

2016.02.17

Altera Corporation ブート・ツール・ユーザガイド

フィードバック

• ブートローダ・ソース・コードを< bsp directory>/ uboot-socfpgaへコピーします。• Arria 10 SoCをターゲットとするようブートローダをコンフィギュレーションします。• ソース・ファイルを< bsp directory>/ uboot-socfpga にコンパイルし、ブートローダ・バイナリである< bsp directory>/ uboot-socfpga /u- boot .binを作成します。

• ハードウェア・ハンドオフ情報とユーザ設定をもとにブートローダ・デバイス・ツリーを<bsp directory>/ devicetree.dtsに作成します。

• dtc(デバイス・ツリー・コンパイラ)を使用し、ブートローダのデバイス・ツリー・ソース・ファイルを< bsp directory>/ devicetree.dtbにコンパイルします。

• ブートローダのデバイス・ツリー・バイナリおよびブートローダのバイナリ・ファイルを合成されたバイナリ・ファイルである< bsp directory>/ u- boot_w_dtb.binに連結します。

• mkpimageツールを使用し、合成されたバイナリ・ファイルをブート可能な合成イメージある< bsp_directory >/preloader- mkpimage.binに変換します。

makefileには、以下のターゲットが含まれます。• make all – すべてをビルドします。• make src – ブートローダのソース・コード・フォルダをコピーします。• make uboot – ブートローダ・バイナリをビルドします。• make dtb – ブートローダのデバイス・ツリー・ソースをデバイス・ツリー・バイナリにコンパイルします。

• make clean – ビルドされたファイルをすべて消去します。• make clean-all – ビルドされたすべてのファイルおよびブートローダ・ソース・コード・フォルダを消去します。

改訂履歴:ブート・ツール・ユーザガイド日付 バージョン 変更内容

2016年 2月 2016.0217 • 「ツールの使用」と「ツールのオプション」の項で mkpimage

への helpの定義を更新• Arria 10の主要な BSP設定グループの表を更新

2015年 8月 2015.0806 Arria10のサポートを追加

ug-11372016.02.17 改訂履歴:ブート・ツール・ユーザガイド 7-31

ブート・ツール・ユーザガイド Altera Corporation

フィードバック

ハードウェア・ライブラリ 82016.02.17

ug-1137 更新情報 フィードバック

アルテラ SoC FPGAハードウェア・ライブラリ(HWLIB)は、SoC FPGAハードウェアのコントロール機能およびコンフィギュレーションへの完全なアクセスを必要とする下位レベルのソフトウェア・プログラマのニーズに応える目的で作成されました。HWLIBのもう 1つの目的は、非常に高度なオペレーション、マルチコア・アプリケーション・プロセッサおよび SoCアーキテクチャ内でのハード化された IPペリフェラル・ブロックとプログラマブル・ロジックの統合に付随する複雑な管理を緩和することにあります。

図 8-1: HWライブラリ

Application

Operating System

BSP

Bare-metal Application

Hardware

SoCAL

HWMgr

SoC HW/SWエコシステムのコンテキスト内において、HWLIBはフル機能装備のオペレーティング・システムおよびスタンドアロン・ベアメタル・プログラミング環境と連携したソフトウェア開発をサポートすることが可能です。上記の図は、完全な SoC HW/SW環境内での HWLIBの関係を表しています。HWLIBは、アドレス空間内で HPSデバイス・レジスタへの直接的なアクセスとコントロールを可能にする SoC Abstraction Layer(SoCAL)と呼ばれるシンボリック・レジスタの抽象化レイヤを提供します。このレイヤは、ハードウェア・リソースへアクセスとコントロールに正確な精度が求められるいくつかの主要なステークホルダ(ブート・ローダ開発者、ドライバ・デベロッ

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

パ、ボード・サポート・パッケージ開発者、デバッグ・エージェント開発者、およびボード立ち上げエンジニア)に必要となります。HWLIBはまた、より高度なユース・ケース・シナリオに向けたより複雑な機能とドライバを提供する一連の Hardware Manager(HW Manager)APIを備えています。HWLIBは、ソース・コード配布として開発されました。このモデルの目的は、すぐに使用可能で有用な機能を提供し、ユーザがそれぞれのターゲットとするシステム要件を満たすよう調整が可能なソース・コード・リファレンス実装として機能することにあります。特にコモン・ユース・ケース・パターンの使用が実際のシステムでの実用性がより明確になるにつれ、HWLIBの性能はより拡大し、向上することが期待されます。一般的には、HWLIBは特権的な監視モードかつセキュア・モードで Hard Processor System(HPS)上で実行されるシステム・ソフトウェアの一部であると考えられます。今後予想される HWLIBクライアントには以下が含まれます。• ベアメタル・アプリケーション開発者• カスタム・プリローダおよびブート・ローダ・ソフトウェア開発者• ボード・サポート・パッケージ開発者• 診断ツール開発者• ソフトウェア・ドライバ開発者• デバッグ・エージェント開発者• ボード立ち上げエンジニア• SoC FPGAハードウェア機能へのフル・アクセスを必要とする他の開発者

各機能の説明本項では、HWLIBに含まれる機能やその特徴について解説します。また、HWLIBアーキテクチャの概要も簡単に説明します。HWLIBとは、2つの主要な機能コンポーネントから構成されたソフトウェア・ライブラリです。• SoC抽象化レイヤ(SoCAL)• ハードウェア・マネージャ(HW Manager)

SoC抽象化レイヤ(SoCAL)SoC抽象化レイヤ(SoCAL)は、実際の HPSハードウェアに最も近いソフトウェア APIを提供します。SoCALの目的は、HPSのハードウェア・インタフェースを構成する物理デバイスとレジスタに論理インタフェースの抽象化とデカップリング・レイヤを提供することです。SoCALの使用には以下の利点があります。• ビットフィールドを含む HPS物理デバイスおよびレジスタへの論理インタフェースの抽象化

• システム・アドレス・マップおよびデバイス・レジスタ・ビットフィールド・レイアウト内におけるハードウェアの変更からソフトウェアの分離を促進する、下位層のハードウェアへ疎結合されたソフトウェア・インタフェース

8-2 各機能の説明ug-1137

2016.02.17

Altera Corporation ハードウェア・ライブラリ

フィードバック

ハードウェア・マネージャ(HW Manager)ハードウェア・マネージャ(HW Manager)コンポーネントは、選択した HPSリソースのより複雑なコンフィギュレーションと動作コントロールを処理するファンクショナル APIを提供します。HW Managerの機能には以下の特徴があります。• これらの機能は、指定のシーケンスで実行される SoCALによって提供される下位レベルのデバイス動作の組み合わせを使用し、設定したい動作を達成します。

• これらの機能は、期待する効果を実装するために(たとえば別の IPブロックからの)機能横断的なデバイス動作を使用します。

• これらの機能は、アプリケーションの動作に対しての特別なタイミング制約および予期される動作の反応の検証を満たす必要があります。

• これらの機能は、パラメータ制約および検証チェックより一定のユーザ保護およびエラー診断を提供します。

HW Manager機能は、SoCAL APIによって提供される基礎的動作を使用することで実装され、より複雑な機能性能やサービスを実装します。 HW Managerの機能は HW Manager API内の他の機能の複合されたアプリケーションによっても実装され、より複雑な動作(FPGAのソフトウェア制御のコンフィギュレーションなど)を構築します。

ハードウェア・ライブラリ参考資料SoCAL APIおよび HW Manager APIの参考資料は、SoCEDSツールキットの一部として配布されています。この参考資料は、どのウェブ・ブラウザからもアクセス可能なオンライン HTMLとして提供されています。オンラインでの SoC FPGAハードウェア・ライブラリ(HWLIB)参考資料は、以下から参照可能です。• SoC抽象化レイヤ(SoCAL)API参考資料:

• Cyclone V and Arria V: <SoC EDS installation directory> /ip/altera/hps/altera_hps/doc/soc_cv_av/socal/html/index.html

• Arria 10: <SoC EDS installation directory> /ip/altera/hps/altera_hps/doc/soc_a10/socal/html/index.html

• ハードウェア・マネージャ(HW Manager)API参考資料: <SoC EDS installation directory> /ip/altera/hps/altera_hps/doc/hwmgr/html/index.html

システム・メモリ・マップHPSハード IPモジュールのアドレスには、提供されている SoCALマクロを介してアクセス可能です。SoCALはまた、HPSハード IPモジュールのレジスタ領域および個々のレジスタにアクセス可能なマクロも提供しています。FPGA IPモジュールの場合、IPレジスタおよびレジスタ領域へアクセスするためのマクロは、通常は IPデリバラブルの一部ですが、実際の IPモジュール・ベースのアドレスは多くの場合 Qsysツール内でシステム統合時に変更されます。ツールの「sopc-create-header-files」は、FPGAファブリック内に存在するすべての IPモジュールのベース・アドレスを持つ C includeファイルを作成する際に使用することができます。

ug-11372016.02.17 ハードウェア・マネージャ(HW Manager) 8-3

ハードウェア・ライブラリ Altera Corporation

フィードバック

注意: このツールは Quartus Primeの一部であり、SoC EDSには含まれていません。 QuartusPrimeインストール後であれば、このツールを SoC EDS エンベデッド・コマンド・シェルから起動することが可能です。

このツールの基本的な使用方法は、.sopcinfoファイルを使用して単一のパラメータとして起動することです。たとえば、Arria 10 GHRDに対し includeファイルを生成するためには、そのフォルダで次のコマンドを実行します。sopc-create-header-files ghrd_10as066n2.sopcinfo

ツールはシステム内の各マスタに対して includeファイルを別個に生成し、マスタ側から見たシステム・アドレスを表示します。HPSソフトウェア開発であれば、HPSから見たシステム・アドレスが表示される、ファイル<hps_component_name>_a9_0.hを使用してください。次の例は、HPS A9 Core 0の視点を表示するファイルのみを生成するツールの使用方法を紹介しています。sopc-create-header-files ghrd_10as066n2.sopcinfo --module\ arria10_hps_0_arm_a9_0 --single arria10_hps_0_arm_a9_0.h

このコマンドにより、「arria10_hps_0_arm_a9_0.h」と呼ばれるファイルが 1つだけ作成されます。ツールの詳細情報を確認するには、sopc-create-header-files --help」を実行するか、 QuartusPrimeの資料を参照してください。

改訂履歴:ハードウェア・ライブラリ日付 バージョン 変更内容

2016年 2月 2016.0217 • HWライブラリの図を更新• 「システム・メモリ・マップ」の項を追加

2015年 8月 2015.0806 Arria10のサポートを追加

8-4 改訂履歴:ハードウェア・ライブラリug-1137

2016.02.17

Altera Corporation ハードウェア・ライブラリ

フィードバック

HPSフラッシュ・プログラマ・ユーザーガイド 9

2016.02.17

ug-1137 更新情報 フィードバック

Altera Quartus Primeソフトウェアおよび Quartus Primeプログラマには、HPSフラッシュ・プログラマが含まれています。HPSといったハードウェア・デザインは、FPGAコンフィギュレーション・データや HPSプログラム・データの保存にボード上のフラッシュ・メモリを統合します。HPSフラッシュ・プログラマは、アルテラ SoCに接続されたフラッシュ・メモリ・デバイスへデータをプログラムします。プログラマは、USB-Blaster™ IIなどのアルテラのダウンロード・ケーブルを介して HPSにファイルの内容を送信し、HPSにデータをフラッシュ・メモリ上に書き込むよう命令します。HPSフラッシュ・プログラマは、以下の種類の内容をフラッシュ・メモリへプログラムします。• HPSソフトウェア実行可能ファイル — 多くのシステムは、不揮発性プログラム・コードやファームウェアの保存にフラッシュ・メモリを使用します。HPSシステムはフラッシュ・メモリからブート可能です。注意: HPSフラッシュ・プログラマは主に、Preloaderイメージを QSPIあるいは NANDフラ

ッシュへのプログラミングを目的として使用されます。動作は低速で実行されるため、大量のファイルのプログラミングには推奨されません。

• FPGAコンフィギュレーション・データ — システム起動時、ボードあるいは HPS上の FPGAコンフィギュレーション・コントローラは FPGAをプログラムするためにフラッシュ・メモリからの FPGAコンフィギュレーション・データをリードします。コンフィギュレーション・コントローラあるいは HPAは、フラッシュ・メモリに保存された複数の FPGAコンフィギュレーション・ファイルから選択することが可能です。

• その他のアービトレーション・データ・ファイル — HPSフラッシュ・プログラマはあらゆる目的においてもフラッシュ・メモリ内の任意の箇所にバイナリ・ファイルをプログラムします。たとえば、HPSプログラムは、このデータを係数表やサイン・ルックアップ表として使用可能です。

HPSフラッシュ・プログラマは、以下の種類のメモリをプログラムします。• QSPI(quad serial peripheral interface)フラッシュ• ONFI(Open NAND Flash Interface)準拠の NANDフラッシュ

HPSフラッシュ・プログラマのコマンドライン・ユーティリティHPSフラッシュ・プログラマは、直接コマンドラインから実行可能です。 Quartus Primeソフトウェアであれば HPSフラッシュ・プログラマは<Altera installation directory> /quartus/binに位置

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

し、 Quartus Primeプログラマの場合 HPSフラッシュ・プログラマは<Altera installationdirectory> /qprogrammer/binに位置します。

HPSフラッシュ・プログラマの動作HPSフラッシュ・プログラマは、ホスト部とターゲット部に別れています。ホスト部は、コンピュータ上で動作し、ダウンロード・ケーブルを介しターゲットへフラッシュ・プログラミング・ファイルとプログラミング・インストラクションを送信します。ターゲット部は SoC内のHPSに存在し、プログラミング・データ・フラッシュの内容とホストによって送信されたターゲット・フラッシュ・メモリ・デバイスについての必要な情報を受け入れます。ターゲットは、フラッシュ・メモリ・デバイスへデータをライトします。

図 9-1: HPSフラッシュ・プログラマ

HPSフラッシュ・プログラマは、コールド・リセット中にブート・セレクト(BSEL)ピンをサンプリングすることでプログラムするフラッシュの種類を決定するため、プログラムするフラッシュの種類を指定する必要はありません。

コマンドラインからフラッシュ・プログラマを使用する

HPSフラッシュ・プログラマHPSフラッシュ・プログラマ・ユーティリティは、フラッシュの消去、ブランク・チェック、プログラミング、検証、検査が可能です。このユーティリティは、必要な「.bin」拡張子を持つバイナリ・ファイルを受け入れます。以下は、HPSフラッシュ・プログラマのコマンドライン・シンタックスです。quartus_hps <options> <file.bin>

注意: HPSフラッシュ・プログラマはバイト・アドレッシングを使用します。

9-2 HPSフラッシュ・プログラマの動作ug-1137

2016.02.17

Altera Corporation HPSフラッシュ・プログラマ・ユーザーガイド

フィードバック

表 9-1: HPSフラッシュ・プログラマのパラメータ

オプション 短いオプション名

要/不要 説明

--cable -c 要 このオプションで使用するダウンロード・ケーブルを指定します。プログラミング・ケーブルのリストを表示するには、「jtagconfig」コマンドを実行します。このコマンドにより以下に示すような利用可能なケーブルがリストされます。jtagconfig

1) USB-Blaster [USB-0]

2) USB-Blaster [USB-1]

3) USB-Blaster [USB-2]

「-c」パラメータは、プログラミング・ケーブルの本数あるいはその名称とすることができます。上記のケースの有効な例を以下に示します。-c 1

-c "USB-Blaster [USB-2]"

--device -d 要(チェイン内に複数の HPSデバイスが存在する場合)

このオプションで HPSデバイスのインデックスを指定します。ツールは自動的にチェインを検出し、HPSデバイスの位置を決定します。ただし、チェイン内に複数の HPSデバイスが存在する場合、ターゲットとするデバイス・インデックスを指定する必要があります。

ug-11372016.02.17 HPSフラッシュ・プログラマ 9-3

HPSフラッシュ・プログラマ・ユーザーガイド Altera Corporation

フィードバック

オプション 短いオプション名

要/不要 説明

--operation -o 要 このオプションで実行する動作を指定します。以下の動作がサポートされています。• I: SoCデバイスの IDCODEをリードし、

Access Portを検出する• S: フラッシュの Silicon IDをリードする• E: フラッシュを消去する• B: ブランク・チェック・フラッシュ• P: フラッシュをプログラムする• V: フラッシュを検証する• EB: ブランク・チェック・フラッシュを消去する

• BP: <BlankCheck>フラッシュをプログラムする

• PV: フラッシュをプログラムし、検証する• BPV: (ブランク・チェック)をプログラムし、フラッシュを検証する

• X: フラッシュを検査する注意: このプログラムはフラッシュをプ

ログラミングする前にデフォルトでフラッシュ動作の消去から開始します。

--addr -a 要(スタート・アドレスが 0でない場合)

このオプションで実行するオペレーションのスタート・アドレスを指定します。

--size -s 不要 このオプションで動作で実行されるデータのバイト数を指定します。sizeはオプションです。

--repeat -t

不要

これらのオプションは同時に使用する必要があります。HPS BOOTフローは、それぞれのイメージが同一であるイメージを最大 4つまでサポートし、これらのオプションはそのオペレーション・データを複製します。これにより、複製されたイメージを含む大きなファイルを作成する際、eSWは不要となります。repeatで実行する動作に向けて複製されたイメージの個数を指定します。intervalでリピート・アドレスを指定します。デフォルト値は 64キロバイト(KB)です。repeatおよび intervalはオプションです。

--interval -i

9-4 HPSフラッシュ・プログラマug-1137

2016.02.17

Altera Corporation HPSフラッシュ・プログラマ・ユーザーガイド

フィードバック

HPSフラッシュ・プログラマのコマンドラインの例使用方法についての情報を確認するには、quartus_hps --helpと入力してください。また、各オプションの詳細情報を確認するには、quartus_hps --help=<option>と入力してください。例:「quartus_hps --help=o」

例 9-1: フラッシュのアドレス 0へのプログラム・ファイル

quartus_hps –c 1 –o P input.binはケーブルMを使用してフラッシュ・アドレス 0へフラッシュへ入力ファイル(input.bin)をプログラムします。

例 9-2: 初めの 500バイトのファイルをフラッシュへプログラムする(10進数)

quartus_hps –c 1 –o PV –a 1024 –s 500 input.binはフラッシュ・アドレス 1024から入力ファイル(input.bin)の初めの 500バイトをフラッシュへプログラムします。ケーブルMを使用した検証がそれに続きます。注意: フラッシュ・アドレスに対しプリフィックスの 0xがない場合、ツールはこ

れを 10進数であると仮定します。

例 9-3: 初めの 500バイトのファイルをフラッシュへプログラムする(16進数)

quartus_hps –c 1 –o PV –a 0x400 –s 500 input.binは入力ファイル(input.bin)の初めの 500バイトをフラッシュへプログラムし、フラッシュ・アドレス 1024から開始し、ケーブルMを使用した検証がそれに続きます。注意: プリフィックスの 0xを使用すると、ツールはこれを 16進数であると仮定

します。

例 9-4: ファイルを 1 MBごとに 2度リピートするフラッシュへプログラムする

quartus_hps –c 1 –o BPV –t 2 –i 0x100000 input.binは入力ファイル(input.bin)をケーブルMを使用しプログラムします。 この動作は、フラッシュ・アドレスの 1メガバイト(MB)ごとに 2度リピートされます。プログラム実行前に、ツールはフラッシュがブランクであることを確認します。プログラム実行後、ツールはプログラムされたデータを検証します。

例 9-5: フラッシュ・アドレス上のフラッシュを消去する

quartus_hps –c 1 –o EB input.binは、入力ファイル(input.bin)が存在するフラッシュ・アドレス上のフラッシュを消去します。ケーブルMを使用したブランク・チェックがそれに続きます。

例 9-6: フル・チップを消去する

quartus_hps –c 1 –o EはケーブルMを使用しフル・チップを消去します。入力ファイル(input.bin)が指定されていない場合、フラッシュの内容をすべて消去します。

ug-11372016.02.17 HPSフラッシュ・プログラマのコマンドラインの例 9-5

HPSフラッシュ・プログラマ・ユーザーガイド Altera Corporation

フィードバック

例 9-7: 指定したフラッシュのメモリ・コンテントを消去する

quartus_hps –c 1 –o E –a 0x100000 –s 0x400000は、指定したフラッシュのメモリ・コンテントを消去します。たとえば、フラッシュ・アドレス内の 4 MBに相当するメモリ・コンテントをケーブルMを使用して 1 MBから消去します。

例 9-8: フラッシュからのデータを検査する

quartus_hps –c 1 –o X –a 0x98679 –s 56789 output.binはケーブルMを使用し、0x98679フラッシュ・スタート・アドレスを持つフラッシュからの 56789バイトのデータを検査します。

サポートされているメモリ・デバイス表 9-2: QSPIフラッシュ

フラッシュ・デバイス

モード デバイス ID DIE # 集積度(Mb)

N25Q128A Micron 0x18BA20 1 128

N25Q256 Micron 0x19BA20 1 256

N25Q512 Micron 0x20BA20 2 512

N25Q00 Micron 0x21BA20 4 1024

N25Q128A Micron 0x18BB20 1 128

N25Q256 Micron 0x19BB20 1 256

N25Q512 Micron 0x20BB20 2 512

N25Q00 Micron 0x21BB20 4 1024

Micron 0x132020 1

S25FL128S Spansion 0x182001 1 128

(セクタ・サイズ 64KB)

S25FL128S Spansion 0x182001 1 128

(セクタ・サイズ 256KB)

9-6 サポートされているメモリ・デバイスug-1137

2016.02.17

Altera Corporation HPSフラッシュ・プログラマ・ユーザーガイド

フィードバック

フラッシュ・デバイス

モード デバイス ID DIE # 集積度(Mb)

S25FL256S Spansion 0x190201 1 256

(セクタ・サイズ 64KB)

S25FL256S Spansion 0x190201 1 256

(セクタ・サイズ 256KB)

S25FL512S Spansion 0x200201 1 512

表 9-3: ONFI準拠の NANDフラッシュ

メーカー MFC ID デバイス ID 集積度(Gb)

Micron 0x2C 0x68 32

Micron 0x2C 0x48 16

Micron 0x2C 0xA1 8

Micron 0x2C 0xF1 8

注意: HPSフラッシュ・プログラマは、HPS QSPIフラッシュ・コントローラでサポートされるONFI準拠の NANDフラッシュ・デバイスをすべてサポートします。

注意: HPSフラッシュ・プログラマは、Cyclone V、Arria V、および Arria 10 SoCデバイスをサポートします。

改訂履歴:HPSフラッシュ・プログラマ・ユーザーガイド日付 バージョン 変更内容

2016年 2月 2016.0217 「サポートされているメモリ・デバイス」で QSPIフラッシュの表に QSPIフラッシュのデバイス IDを追加

2015年 8月 2015.0806 Arria10のサポートを追加

ug-11372016.02.17 改訂履歴:HPSフラッシュ・プログラマ・ユーザーガイド 9-7

HPSフラッシュ・プログラマ・ユーザーガイド Altera Corporation

フィードバック

ベアメタル・コンパイラ102016.02.17

ug-1137 更新情報 フィードバック

SoC EDSに付属するベアメタル・コンパイラは、Mentor Graphics Sourcery™ CodeBenchライト・エディションのバージョン 4.9.2です。Sourcery CodeBenchライト・エディションについての詳細情報および最新バージョンのツールのダウンロードについては、Mentor Graphics社のウェブサイトを参照してください。このコンパイラは GCCベースの arm-altera-eabiポートで、ARMプロセッサをターゲットとしており、ベアメタル・オペレーションを仮定し、標準の ARMエンベデッド・アプリケーション・バイナリ・インタフェース(EABI)規定を使用します。ベアメタル・コンパイラは SoC EDSインストールの一部として以下のフォルダにインストールされます。<SoC EDS installation directory> /host_tools/mentor/gnu/arm/baremetal.

エンベデッド・コマンド・シェルは SoC EDS installation directoryからスクリプトを実行することで開きますが、エンベデッド・コマンド・シェルは呼び出されるべきベアメタル・コンパイル・ツールへの正しい環境 PATH変数を設定します。シェルの開始後は、arm-altera-eabi-gccのようなコマンドは直接呼び出すことが可能です。ARM DS-5 AE環境がエンベデッド・コマンド・シェルから開始される場合、環境設定が継承され、これらのコンパイル・ツールを直接呼び出すことが可能です。また、コンパイル・ツールへのフル・パスは次のように使用可能です。<SoC EDS installationdirectory> /host_tools/mentor/gnu/arm/baremetal/bin.

ベアメタル・コンパイラの完全なドキュメンテーションは、<SoC EDS installation directory> /host_tools/mentor/gnu/arm/baremetal/share/doc/sourceryg++-arm-altera-eabiに格納されています。ドキュメンテーションは、様々なユーザの好みに合わせて 4種類の形式で提供されています。• HTMLファイル• Infoファイル• Manページ• PDFファイル提供されているドキュメントは以下を含みます。• コンパイラ・マニュアル• アセンブラ・マニュアル• リンカ・マニュアル• Binutilsマニュアル• GDBマニュアル• スタート・ガイド(2)

• ライブラリ・マニュアル

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

関連情報• Mentor Graphics• SoC EDS Getting Started Guides

改訂履歴:ベアメタル・コンパイラ日付 バージョン 変更内容

2016年 2月 2016.0217 Mentor Graphics Sourcery CodeBench Liteエディションのコンパイラ・バージョンを更新

2015年 8月 2015.0806 Arria10のサポートを追加

(2) スタート・ガイドは、Altera Wikiの SoCEDSGettingStartedのページで確認することができます。

10-2 改訂履歴:ベアメタル・コンパイラug-1137

2016.02.17

Altera Corporation ベアメタル・コンパイラ

フィードバック

SDカード・ブート・ユーティリティ112016.02.17

ug-1137 更新情報 フィードバック

SoC EDS SDカード・ブート・ユーティリティは、SDカードでブート・ソフトウェアをアップデートするためのツールです。Preloaderは一般的に、SDカードのカスタム・パーティション(with type = 0xA2)に格納されています。これとは別に、次のブート・ステージ(通常は Bootloader)も同一のカスタム・パーティションに格納することが可能です。ファイルシステムを持たないカスタム・パーティションであるため、Preloader/Bootloaderは新しいファイルをカードにコピーするだけではアップデートが不可能であり、ソフトウェア・ツールが必要となります。SDカード・ブート・ユーティリティを使用することで、ユーザは物理 SDカードやディスク・イメージ・ファイルに Preloader/Bootloaderをアップデートすることが可能です。SDカード・ブート・ユーティリティは、ブート可能な SDカードやディスク・イメージ・ファイルをゼロから新しく作成するためのものではありません。新規に作成するには、Linuxホスト OS上で fdiskを使用することを推奨します。関連情報12-1ページの Linuxソフトウェア開発ツール

使用状況シナリオこのユーティリティは既存のブート・ソフトウェアをアップデートするためのものです。• 既存の SDカード• 既存のディスク・イメージ・ファイルツールは以下のアップデートの実行をサポートしています。• Cyclone Vおよび Arria V Preloader• Cylone Vおよび Arria V Bootloader• Arria 10 Bootloader

注意: Cyclone Vと Arria Vの場合、Preloaderファイルにはブート ROMで必要なようにmkpimageヘッダが必要です。また、Bootloadeファイルには Preloaderで必要なようにmkimageヘッダが必要です。

注意: Arria 10の場合、Bootloaderには BootROMで必要なように mkpimageヘッダが必要です。

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

注意: mkpimageツールと mkimageツールは両方とも SoC EDSの一部として提供されています。このツールは、アルテラ SoCブート・コードを格納するカスタム・パーティションのみをアップデートします。それ以外の部分の SDカードおよびディスク・イメージ・ファイルはアップデートされません。これには、マスタ・ブート・レコード(MBR)、その他のパーティション(FAT、EXT3など)、空き領域が含まれます。注意:このツールを使用して物理 SDカードに書き込みを実行するには、ユーザはコンピュータへのルート・アクセスあるいはアドミニストレータとしてのアクセスが必要です。ディスク・イメージ・ファイルのみに作業を行う場合、このようなアクセスは不要です。使用する PCに対しこのような権限が必要な場合、IT部門にお問い合わせください。

ツール・オプションユーティリティは、コマンドライン・プログラムです。以下の表にすべてのコマンドライン・オプションを示します。その次の例は、ツールからの--helpアウトプットです。

表 11-1: コマンドライン・オプション

コマンドライン引数 要/不要 説明

-p filename オプション ライトする Preloaderファイルを指定します。

-b filename オプション ライトする Cyclone Vあるいは Arria VBootloaderファイルを指定します。

-B filename オプション ライトする Arria 10 Bootloaderファイルを指定します。

-a write 要 実行する動作を指定します。「write」動作のみサポートされています。例:「-awrite」

disk_file 要(-dオプションが使用されている場合を除く)

書き込むディスク・イメージ・ファイルあるいは物理ディスクを指定します。ディスク・イメージ・ファイルとは、パーティション・テーブルを含むストレージ・ボリュームへの全データが含まれるファイルです。これは別のツールを使用して後で物理ディスクに書き込むことが可能です。Linuxの物理ディスクであれば、デバイス・ファイルを指定するだけです(例: /dev/mmcblk0)。Windowsの物理ディスクであれば、\\.\physicaldrive2といった物理ドライブ・パスを指定するか、ドライブ・レターを指定します。Windowsでは、ドライブ・レター・オプションが最も簡単な方法です。

11-2 ツール・オプションug-1137

2016.02.17

Altera Corporation SDカード・ブート・ユーティリティ

フィードバック

コマンドライン引数 要/不要 説明

-d オプション 書き込むディスク・ドライブ・レターを指定します。例:「-d E」。このオプションを使用中は、disk_fileファイルオプションを指定することはできません。

-h オプション ヘルプ・メッセージを表示し、終了する。

--version オプション スクリプトのバージョン・ナンバーを表示し、終了する。

ユーティリティからのサンプル出力

$ alt-boot-disk-util --helpAltera Boot Disk UtilityCopyright (C) 1991-2014 Altera Corporation

Usage:#write preloader to disk alt-boot-disk-util -p preloader -a write disk_file

#write bootloader to disk alt-boot-disk-util -b bootloader -a write disk_file

#write BOOTloader and PREloader to disk alt-boot-disk-util -p preloader -b bootloader -a write disk_file

#write Arria10 Bootloader to disk alt-boot-disk-util -B a10bootloader -a write disk_file

#write BOOTloader and PREloader to disk drive 'E' alt-boot-disk-util -p preloader -b bootloader -a write -d E

Options: --version show program's version number and exit -h, --help show this help message and exit -b FILE, --bootloader=FILE bootloader image file' -p FILE, --preloader=FILE preloader image file' -a ACTION, --action=ACTION only supports 'write' action' -B FILE, --a10-bootloader=FILE arria10 bootloader image file -d DRIVE, --drive=DRIVE specify disk drive letter to write to

改訂履歴:SDカード・ブート・ユーティリティ日付 バージョン 変更内容

2016年 2月 2016.0217 メンテナンス・リリース2015年 8月 2015.0806 Arria10のサポートを追加

ug-11372016.02.17 改訂履歴:SDカード・ブート・ユーティリティ 11-3

SDカード・ブート・ユーティリティ Altera Corporation

フィードバック

Linuxソフトウェア開発ツール122016.02.17

ug-1137 更新情報 フィードバック

Linuxソフトウェア開発ツールを以下に示します。Linuxコンパイラと Linuxデバイス・ツリー・ジェネレータについては、本章の次の項で説明します。• Linuxコンパイラ• SDカード・ブート・ユーティリティ• Linuxデバイス・ツリー・ジェネレータ(DTG)

12-1ページの Linuxコンパイラ12-2ページの Linuxデバイス・ツリー・ジェネレータ12-2ページの 改訂履歴:Linuxソフトウェア開発ツール関連情報11-1ページの SDカード・ブート・ユーティリティ

LinuxコンパイラLinaro Linuxコンパイラ・バージョン 4.8.3は、SoC EDSに付属しています。Linuxコンパイラについての詳細情報および最新バージョンのツールのダウンロードについては、Linaroのダウンロード・サイトを参照してください。このコンパイラは GCCベースの arm-linux-gnueabihfポートで、ARMプロセッサをターゲットとしており、ターゲット・プラットフォームが Linuxを実行していると仮定し、GNUエンベデッド・アプリケーション・バイナリ・インタフェース(EABI)ハード・フロート(HF)規定を使用します。Linuxコンパイラは ARM DS-5 AEの一部としてインストールされており、これは SoC EDSの一部としてインストールされています。コンパイル・ツールは、<SoC EDS installation directory> /ds-5/binに位置します。Linuxコンパイラの完全なドキュメンテーションは、<SoC EDS installation directory> /ds-5/documents/gccに格納されています。ドキュメンテーションは HTMLファイルで提供されています。以下はその資料です。

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134

• コンパイラ・マニュアル• アセンブラ・マニュアル• リンカ・マニュアル• Binutilsマニュアル• GDBマニュアル• スタート・ガイド関連情報Linaro Website

Linuxデバイス・ツリー・ジェネレータデバイス・ツリーとは、オペレーティング・システム(主に Linux)へ下位層のハードウェアを説明するデータ・ストラクチャのことを指します。このデータ・ストラクチャを OSカーネルへ渡すことで、1つの OSバイナリでハードウェアの多くのバリエーションをサポートすることが可能となります。この柔軟性はハードウェアに FPGAが含まれる場合、特に重要となります。Linuxデバイス・ツリー・ジェネレータ(DTG)ツールは、Altera SoC EDSの一部を構成し、Qsysを使用して作成された FPGAデザインを含む SoCシステムへのデバイス・ツリーの作成に使用されます。生成されたデバイス・ツリーは、HPSペリフェラル、選択された FPGAソフト IP、およびボードに依存するペリフェラルを説明します。注意: Arria 10 Bootloaderにも、Bootloader Deviceと呼ばれる関連するデバイス・ツリーが含まれ

ますが、これは BSP Editorツールで作成・管理されます。関連情報• Altera Wiki

Linux DTGについての詳細は、Altera Wikiウェブサイトを参照してください。• Linux Device Tree Generator User Guide詳細は、Rocketboardsウェブサイトの Device Tree Generator Documentation画面より DeviceTree Generator User Guideを参照してください。

改訂履歴:Linuxソフトウェア開発ツール日付 バージョン 変更内容

2016年 2月 2016.0217 メンテナンス・リリース2015年 8月 2015.0806 Arria10のサポートを追加

12-2 Linuxデバイス・ツリー・ジェネレータug-1137

2016.02.17

Altera Corporation Linuxソフトウェア開発ツール

フィードバック

サポートとフィードバックについて132016.02.17

ug-1137 更新情報 フィードバック

アルテラはお客様のフィードバックを重視しています。ソフトウェアのバグや潜在的な強化、また追加情報を得るにはアルテラ TSFAEまでお問い合わせいただくか、サービス・リクエストを申請して頂くようお願いいたします。関連情報myAltera Account Sign In

改訂履歴:サポートとフィードバックについて日付 バージョン 変更内容

2016年 2月 2016.0217 メンテナンス・リリース2015年 8月 2015.0806 Arria10のサポートを追加

© 2016 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, ENPIRION, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos aretrademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified astrademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performanceof its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to anyproducts and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information,product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of devicespecifications before relying on any published information and before placing orders for products or services.

ISO9001:2008登録済

www.altera.com101 Innovation Drive, San Jose, CA 95134