デザインの合成と ILA コアの挿入 - 2022.1 日本語

Vivado Design Suite ユーザー ガイド: IP インテグレーターを使用した IP サブシステムの設計 (UG994)

Document ID
UG994
Release Date
2022-04-20
Version
2022.1 日本語

次に、最上位デザインを合成します。これには次を実行します。

  1. Flow Navigator > Synthesis をクリックし、Run Synthesis をクリックします。

    合成が終了すると、[Synthesis Completed] ダイアログ ボックスが表示されます。

  2. Open Synthesized Design をオンにしてネットリスト デザインを開くようにし、OK をクリックします。

    [Schematic] ウィンドウと [Debug] ウィンドウが表示されます。メイン ウィンドウの下部に [Debug] ウィンドウが表示されない場合は、メニューから [Windows] → [Debug] をクリックして開くことができます。次の図に、[Debug] ウィンドウを示します。



    デバッグ用にマークしたネットはすべて [Debug] ウィンドウの [Unassigned Debug Nets] フォルダーの下に表示されます。これらのネットは、Integrated Logic Analyzer (ILA) のプローブに接続する必要があります。次の手順で、ILA コアを挿入し、これらの割り当てられていないネットを ILA のプローブに接続します。

  3. [Debug] ウィンドウのツールバーの [Set up Debug] ボタン をクリックします。

    または、メニューから Tools > Set Up Debug をクリックします。



    次の図に示すように、Set up Debug ウィザードが開きます。



  4. Next をクリックします。

    次の図に示すような [Nets to Debug] ページが開きます。



  5. デバッグするネットのサブセット (またはすべて) を選択します。すべての信号を ILA の同じクロックに関連付ける必要があります。クロック ドメインの関連付けがツールにより検出されない場合は、[Clock Domain] 列で [undefined] または [partially defined] と指定されているネットすべてを選択して、手動でクロック ドメインに関連付ける必要があります。
    注意:
    デバッグするインターフェイスすべてをマークする必要はありますが、デバイス リソース使用量が心配な場合は、デバッグ コアを設定する際にデバッグに不要なネットを削除できます。
  6. クロック ドメインを未定義または一部だけ定義済みのクロック ドメインを持つ信号に関連付けるには、ネットを選択して右クリックし、Select Clock Domain をクリックします。
    ヒント: 各クロック ドメインで 1 つの ILA が Set up Debug ウィザードで推論されます。


  7. [Select Clock Domain] ダイアログ ボックスでクロックを選択し、OK をクリックします。

  8. [Nets to Debug] ページで Next をクリックします。
  9. 次の図に示す [ILA Core Options] ページで、データをトリガーおよびキャプチャするためのオプションを選択して Next をクリックします。

    アドバンス トリガー機能を使用すると、トリガー メカニズムをより詳細に制御できます。[Advanced trigger] をオンにすると、ランタイム時に設定可能なトリガー ステート マシン言語がイネーブルになります。

    ステートごとに 3 方向分岐があり、ステート マシンの一部として使用可能なステートは 16 個あります。アドバンス トリガー機能の一部として、4 つのカウンターと 4 つのプログラマブル カウンターが使用可能で、アナライザーで表示可能です。

    キャプチャ制御機能を使用すると、基本的なデータ キャプチャだけでなく、条件に一致するデータのみをキャプチャできます。これにより、ブロック RAM のスペースが不要に使用されることがなくなり、効率的なソリューションが提供されます。

  10. 次の図に示す [Set up Debug Summary] ページですべての情報が正しいことを確認し、Finish をクリックします。

    ILA コアを挿入すると、[Debug] ウィンドウの表示は次のようになります。

    注記: すべてのバス (およびシングル ビットのネット) が別のプローブに割り当てられます。

    プローブ情報には、そのプローブに割り当てられた信号の数も表示されます。

    たとえば次の図では、probe0 に 32 個の信号 (microblaze_1_axi_periph_m02_axi_WDATA の 32 ビット) が割り当てられています。



    これで、デザインをインプリメントしてビットストリームを生成する準備が整いました。

  11. Flow Navigator > Program and Debug をクリックし、Generate Bitstream をクリックします。

    ILA コアを挿入してネットリストに変更を加えたので、ビットストリームを生成する前にデザインを保存するかどうか尋ねるダイアログ ボックスが表示されます。



    デザインを保存してアクティブな制約ファイルに適切な制約を記述するか、新しい制約ファイルを作成します。

    次の図に示すように、制約ファイルには合成済みネットリストに ILA コアを挿入するために使用されたすべてのコマンドが含まれます。



    プロジェクトを保存する利点は、デバッグ用にマークされた信号が元のブロック デザインと同じであれば、これらの制約により処理されるので、合成後に手動で ILA コアを挿入する必要がないことです。このため、この後デザインを変更しても、手動でコアを挿入する必要はありません。

    デバッグ用ネットをさらに追加する場合 (またはネットのデバッグ用マークを解除する場合) は、合成済みネットリストを開いて、Set Up Debug ウィザードで適切な変更を加える必要があります。

    コアの挿入後にプロジェクトを保存しない場合は、制約ファイルにそれらの制約は含まれないので、この後デザインを変更したときに合成済みネットリストに ILA コアを手動で挿入する必要があります。

    最上位デザインにデバッグ コアと信号プローブを挿入したら、Vivado ハードウェア マネージャーでデザインをデバッグできます。Vivado ハードウェア マネージャーとデバイスのプログラムおよびデバッグに関する詳細は、 『Vivado Design Suite ユーザー ガイド: プログラムおよびデバッグ』 (UG908)このセクションを参照してください。