手順 3: 出力バスのタイミングの解析 - 2022.1 日本語

Vivado Design Suite チュートリアル: インプリメンテーション (UG986)

Document ID
UG986
Release Date
2022-05-24
Version
2022.1 日本語
重要: チュートリアル デザインには、外部ロジックを駆動する出力データ バス wbOutputData が含まれています。ここでは、このバスのネットを手動で配線し、タイミング スキューを厳密に制御します。

[Report Datasheet] コマンドを使用すると、出力バス wbOutputData の各ビットの現在のタイミングを解析できます。[Report Datasheet] コマンドは、ポートのグループのタイミングを特定の基準ポートに対して解析するのに使用できます。

  1. メイン メニューから Reports > Timing > Report Datasheet をクリックします。
  2. [Report Datasheet] ダイアログ ボックスで Groups タブを選択し、次のように入力します。
    • Reference: [get_ports {wbOutputData[0]}]
    • Ports: [get_ports {wbOutputData[*]}]


  3. OK をクリックします。

    この場合、wbOutputData バスの信号を転送するポートでのタイミングを、バスの最初のビット wbOutputData[0] と比較します。これにより、バスのビット間の相対的なタイミングの差をすばやく知ることができます。

  4. [Maximize] ボタン をクリックして [Timing] ウィンドウの [Datasheet] タブを最大表示にします。
  5. 次の図に示すように、Max/Min Delays for Groups > Clocked by wbClk > wbOutputData[0] セクションを選択します。

    このレポートから、wbOutputData バスの各ビットのタイミング スキューに約 660 ps のばらつきがあることがわかります。ここでの目標は、バス ビット間のスキューのばらつきを 100 ps 未満にすることです。



  6. [Restore] ボタン をクリックし、[Device] ウィンドウと [Timing] ウィンドウの [Datasheet] タブの両方を表示します。
  7. ソース wbOutputData[28] の [Max Delay] のハイパーリンクをクリックします。

    [Device] ウィンドウでパスがハイライトされます。

    注記: [Device] ウィンドウで [Autfit Selection] がイネーブルになっていることを確認し、パス全体が表示されるようにします。

  8. [Device] ウィンドウでハイライトされているパスを右クリックし、[Schematic] をクリックします。

    選択した出力データ バスの回路図が表示されます。この回路図から、出力ポートが出力バッファー (OBUF) を介するレジスタで直接駆動されているのがわかります。

    バスの出力ピンに対するレジスタの配置が一貫したものになるようにし、レジスタと出力の間の配線を制御できれば、出力バスの各ビット間のスキューのばらつきを最小限に抑えることができます。



  9. [Device] ウィンドウに移動します。

    レジスタと出力の配置を見やすくするには、mark_objects コマンドを使用して [Device] ウィンドウでこれらをマークします。

  10. [Tcl Console] ウィンドウに次のコマンドを入力します。
    mark_objects -color blue [get_ports wbOutputData[*]]
    mark_objects -color red [get_cells wbOutputData_reg[*]]

    出力ポートに青のひし形マーカー、出力を駆動するレジスタに赤のひし形マーカーが表示されます。



    青のひし形でマークされている出力は、wbOutputData[0] (一番下) から wbOutputData[31] (一番上) まで、左側の 2 つのバンクに渡って配置されており、赤のひし形でマークされている出力レジスタは右側の 1 箇所にまとまっています。

    レジスタから出力までの配線をすべて表示するため、highlight_objects Tcl コマンドを使用してネットをハイライトします。

  11. Tcl プロンプトに次のコマンドを入力します。
    highlight_objects -color yellow [get_nets -of [get_pins -of [get_cells \
    wbOutputData_reg[*]] -filter DIRECTION==OUT]]

    wbOutputData_reg[*] レジスタの出力ピンに接続されているネットがハイライトされます。

    [Device] ウィンドウを見ると、ひとかたまりになっている出力レジスタと分散されているバスの出力パッドとの距離にばらつきがあることがわかります。出力レジスタを各出力ポートの右側にあるスライスに一貫して配置するようにすれば、wbOutputData バスの clock-to-out 遅延の大部分のばらつきをなくすことができます。



  12. メイン ツールバーの [Unhighlight All] ボタン および [Unmark All] ボタン をクリックします。