[Other Interfaces] - 2023.2 日本語

MicroBlaze プロセッサ エンベデッド デザイン ユーザー ガイド (UG1579)

Document ID
UG1579
Release Date
2023-11-01
Version
2023.2 日本語
  • Enable Trace Bus Interface: トレース バス インターフェイスを使用できるようにします。このインターフェイスは、デバッグ、実行統計、およびパフォーマンス解析に有益です。特に、このインターフェイスを ChipScope Logic Analyzer (ILA) に接続すると、クロック サイクル精度でプログラムの実行をトレースできます。

    MicroBlaze の Trace インターフェイスを使用すると、シミュレーションおよびハードウェアでプロセッサ ソフトウェア実行を表示できます。インターフェイスを実際に接続せずにイネーブルにし、シミュレーションで信号にアクセスし、ハードウェアで ILA にそれらを追加できます。

    波形は、実行可能オブジェクト ダンプを確認すると、アセンブラーおよびソース コードに関連付けることができます。Vitis ソフトウェア プラットフォームの場合は、生成された ELF ファイルをダブルクリックすると確認できます。mb-objdump コマンドをソース コードに含めて、ELF ファイルからオブジェクト ダンプを生成することもできます。Trace_PC および Trace_Instruction 信号は、オブジェクト ダンプのアドレスおよび命令に該当します。これらの信号およびその他のほとんどの信号は Trace_Valid_Instr が設定されている場合にのみ有効です。

    メモリ アクセス アドレスは Trace_Data_Address 信号に示され、Trace_Data_Read または Trace_Data_Write のいずれかを設定すると有効になります。命令の結果は、Trace_Reg_Write 信号が設定されると、Trace_New_Reg_Value 信号で示された値を使用して Trace_Reg_Addr で示された MicroBlaze デスティネーション レジスタに書き込まれます。

    Trace_Exception_Taken を設定すると有効になる Trace_Exception_Kind 信号は、割り込み、ブレーク、および例外を示します。これは、エラーの状況や割り込みに関連する問題を見つけるのに役立ちます。

    すべての Trace バス インターフェイス信号の詳細は、 『MicroBlaze プロセッサ リファレンス ガイド』 (UG984) の第 3 章「トレース インターフェイスについて」を参照してください。

  • Lockstep Interface: ロックステップ サポートをイネーブルにします。ロックステップ サポートがイネーブルになると、2 つの MicroBlaze コアでロックステップで同じプログラムを実行し、それらの出力を比較してエラーを検出できます。
    • NONE: ロックステップ インターフェイスをディスエーブルにします。
    • LOCKSTEP_MASTER: Lockstep_Master_Out および Lockstep_Out 出力ポートをイネーブルにします。
    • LOCKSTEP_SLAVE: 次のように設定します。
      • Lockstep_Slave_In 入力ポートおよび Lockstep_Out 出力ポートをイネーブルにします。
      • C_LOCKSTEP_SLAVE パラメーターを 1 に設定します。

      スレーブ プロセッサは CPU として表示され、プライベート LMB メモリを持つことができます。

    • LOCKSTEP_HIDDEN_SLAVE: LOCKSTEP_SLAVE と同様に機能しますが、スレーブ プロセッサは CPU としては表示されません。プライベート LMB メモリを使用する場合以外は、この設定をお勧めします。

    このオプションをオンにすると、[Other Interfaces] に示すように、Local Memory Bus Interfaces および AXI and ACE Interfaces セクションの下にさらにオプションが表示されるようになります。次に、これらのオプションについて説明します。

    図 1. MicroBlaze Configuration ウィザード: [Advanced] モードの [Buses] タブ
    • Use Monitor Interface for Local Memory Bus Instruction Interface: LMB 命令インターフェイスのモニター インターフェイスを選択します。これは、プライベート LMB メモリが使用されていない場合に、ロックステップ スレーブ プロセッサの LMB の接続を簡素にするために使用できます。
    • Use Monitor Interface for Local Memory Bus Data Interface: LMB データ インターフェイスのモニター インターフェイスを選択します。これは、プライベート LMB メモリが使用されていない場合に、ロックステップ スレーブ プロセッサの LMB の接続を簡素にするために使用できます。
    • Use Monitor Interface for Peripheral AXI Instruction Interface: AXI ペリフェラル データ インターフェイスのモニター インターフェイスを選択します。これは、ロックステップ スレーブ プロセッサの AXI の接続を簡素にするために使用できます。
    • Use Monitor Interface for Peripheral AXI Data Interface: AXI ペリフェラル データ インターフェイスのモニター インターフェイスを選択します。これは、ロックステップ スレーブ プロセッサの AXI の接続を簡素にするために使用できます。
    • Use Monitor Interface for Cache AXI Instruction Interface: AXI キャッシュ命令インターフェイスのモニター インターフェイスを選択します。これは、ロックステップ スレーブ プロセッサの AXI の接続を簡素にするために使用できます。
    • Use Monitor Interface for Cache AXI Data Interface: AXI キャッシュ データ インターフェイスのモニター インターフェイスを選択します。これは、ロックステップ スレーブ プロセッサの AXI の接続を簡素にするために使用できます。
    • [Temporal Depth]:Temporal Depthスレーブ プロセッサの一時的なロックステップ クロック サイクル遅延を設定します。

    Interrupt & Reset タブにも割り込み用のモニター オプションがあります。

    Use Monitor Interface for Interrupt: 割り込みインターフェイスのモニター インターフェイスを選択します。これは、共有の割り込みソースが使用される場合に、ロックステップ スレーブ プロセッサの割り込みの接続を簡素にするために使用できます。