UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 67818

Zynq UltraScale+ MPSoC: JTAG/SD ブート モードでの 2016.3 PMUFW の読み込みおよびサンプルの実行

説明

このアンサーでは、次の内容について説明します。

  • SDK を使用した PMU ファームウェアの構築
  • SDK を使用した PMU ファームウェアのデバッグ
  • (Xilinx Answer 67871) Zynq UltraScale+ MPSoC: ES2 およびそれ以降のデバイスでは MicroBlaze PMU MDM がデフォルトで無効になっている
  • SD ブート モードを使用した PMU ファームウェアの読み込み
  • FSBL を使用した PMU ファームウェアの読み込み
  • CBR を使用した PMU ファームウェアの読み込み

ソリューション

SDK を使用した PMU ファームウェアの構築

  1. XSDK を開きます。
  2. 次のように設定して新しいアプリケーションを作成します。
    1. プロジェクト/ボード サポート パッケージを指定します。
    2. OS プラットフォーム: スタンドアロン
    3. ハードウェア プラットフォーム: ZynqMP_ZCU102_hw_platform
    4. プロセッサ: psu_pmu_0
       
  3. [Next] をクリックします。利用可能なテンプレートに「ZynqMP PMU Firmware」が表示されます。
  4. [Finish] をクリックして PMU ファームウェアを生成します。
  5. ローカル ボードへ接続して、接続をテストします。接続が問題なく確立されたことを示すポップアップ ウィンドウが表示されるはずです。
  6. ターミナルで COM ポートを接続して UART 出力を表示します。
    注記: PMU ファームウェアは、デフォルトの STDOUT として psu_uart_0 を使用します。これは、[Modify BSP Settings] でほかの UART に変更できます。
    PMU ファームウェアからのデバッグ出力を無効にするには、xpfw_config.h ファイルにあるライン「#define DEBUG_MODE」を PMU ファームウェア ソース コードから未定義設定/削除/コメントアウトします。
  7. XSCT コンソールで、ボードへ接続して PMU ファームウェアを実行します。
  8. ターミナル コンソールに PMU ファームウェア出力を表示します。

 

SDK を使用した PMU ファームウェアのデバッグ

  1. アプリケーション上で右クリックし、[Debug As] → [Debug Configurations] をクリックします。
  2. [System Debugger] を右クリックして [New] をクリックします。[New Configuration] が表示されるはずです。[Debug] をクリックします。
  3. デバッグ パースペクティブを選択します。[OK] をクリックします。
  4. デバッグ パースペクティブが表示されて PMU ファームウェアが実行されます。
  5. フローを制御するためにブレークポイントを配置し、デバッグの目的で再度実行します。

 

SD ブート モードを使用した PMU ファームウェアの読み込み

注記: 1.0 シリコンで PMU ファームウェアが非 JTAG ブート モードで読み込まれると、スタートアップ時に PMU ファームウェアにより「Error: Unhandled IPI received」というエラー メッセージがログに記録されることがあります。

これは無視しても問題ありません。この問題は、IPI0 ISR が PMU ROM によってクリアされていないことに起因します。2.0 およびそれ以降のバージョンのシリコンで修正されています。

 

FSBL を使用した PMU ファームウェアの読み込み:

  1. pmufw.elf ファイルが必要です。(このページの上の方にある PMU ファームウェアの構築を参照)
  2. SDK で A53 用に FSBL を構築します。(R5 の使用も可)
  3. A53 用に hello_world サンプルを作成します。「hello_world example」プロジェクト上で右クリックし、[Create a boot image] をクリックします。
  4. 次のように設定して新しい bif ファイルを作成します。
    1. アーキテクチャ: ZynqMP
    2. パーティションに A53 FSBL と hello_world サンプルがデフォルトで表示されます。PMU ファームウェアも必要です。
    3. [Add] をクリックして、pmufw.elf のパスを入力します。パーティション タイプ: datafile、デスティネーション デバイス: PS、デスティネーション CPU: PMU と設定します。
    4. [OK] をクリックします。
    5. パーティションとして pmufw を追加した後、PMUFW パーティションをクリックして [UP] をクリックします。
    6. パーティション順が次のようになっていることを確認します。
      1. A53 FSBL
      2. PMUFW
      3. hello world App
    7. [Create Image] をクリックします。サンプル プロジェクトの「bootimage」という新しいフォルダーに BOOT.bin が作成されます。
    8. .BIF ファイルを表示してパーティション順を確認します。
    9. この BOOT.bin を SD カードにコピーします。
    10. ZCU102 ボードを SD ブート モードで起動します。fsbl → pmufw → hello_world の順序でサンプル出力が表示されます。

 

CBR を使用した PMU ファームウェアの読み込み:

PMU ファームウェアが CBR によって読み込まれる場合、これは FSBL の前で実行されます。 

このため、MIO、クロック、およびほかの初期化はこの時点で実行されません。つまり、PMUFW バナーおよびほかの出力は FSBL の前に表示されないということです。

FSBL 実行後、PMUFW 出力は通常どおりに表示されます。

  1. CBR による PMU ファームウェアの読み込みを可能にするには、BOOT.bin ブート パーティションの変更のみが必要です。
  2. FSBL を使用した PMU ファームウェアの読み込み: で示した上記の最初の 3 つの手順に従います。
  3. 新しい bif ファイルを作成します。
    1. アーキテクチャ: ZynqMP と設定します。
    2. A53 FSBL と hello_world サンプルがパーティションに デフォルトで表示されます。PMU ファームウェアも必要です。
    3. [Add] をクリックして、pmufw.elf のパスを入力します。さらにパーティション タイプ: pmu (BootROM によって読み込まれる) と設定します。
    4. [OK] をクリックします。
    5. [Create Image] をクリックします。サンプル プロジェクトの「bootimage」という新しいフォルダーに BOOT.bin が作成されます。
    6. パーティション順を確認するために、.bif ファイルを表示することもできます。
    7. この BOOT.bin を SD カードにコピーします。
    8. ZCU102 ボードを SD ブート モードで起動します。pmufw → fsbl → hello_world の順序でサンプル出力が表示されます。
AR# 67818
日付 10/27/2016
ステータス アクティブ
種類 一般
デバイス
このページをブックマークに追加