合成後に RTL に戻るのは時間とコストがかかりすぎるので、ネットリストで次のように変更できます。
-
- [Find] ドロップダウン リストから Cells を選択します。
- [Properties] で [PRIMITIVE_TYPE] を選択し、値を BMEM.BRAM に設定します。
- [Search hierarchically] がオンになっていることを確認します。
-
OK をクリックします。
[Find Results] ウィンドウが開きます。
をクリックし [Find] ダイアログ ボックスを開きます。 - [Find Results] ウィンドウのツールバーで Show Search ボタン をクリックします。
- 「
ingressLoop
」を検索し、セル fftEngine/fftInst/ingressLoop[7].ingressFifo/ を選択します。[Cell Properties] ウィンドウの [Properties] タブで、DOA_REG および DOB_REG が 0 に設定されており、出力レジスタがディスエーブルになっていることを確認できます。
- [Tcl Console] ウィンドウからこのセルのカスタム タイミング レポートを生成します。次の Tcl コマンドを入力します。
report_timing -from [get_cells fftEngine/fftInst/ingressLoop[7].ingressFifo/ buffer_fifo/infer_fifo.block_ram_performance.fifo_ram_reg]
ヒント: [Cell Properties] ウィンドウの [General] タブからセル名をコピーし、Tcl コンソールに貼り付けることができます。 - [Tcl Console] ウィンドウの右上にある Maximize ボタン をクリックしてウィンドウを最大化し、タイミング レポートを見やすくします。
- レポートのデータパスのセクションを見ると、この RAMB により 1.800 ns 追加されています。
- [Tcl Console] ウィンドウを標準サイズに戻します。
- [Cell Properties] ウィンドウの [Properties] タブで、このセルの DOA_REG および DOB_REG プロパティを選択し、それぞれの値を 0 から 1 に変更します。
[Tcl Console] ウィンドウで
set_property
コマンドが 2 回実行されているのがわかります。set_property DOA_REG {1} [get_cells {fftEngine/fftInst/ingressLoop[7].ingressFifo/ buffer_fifo/infer_fifo.block_ram_performance.fifo_ram_reg}] set_property DOB_REG {1} [get_cells {fftEngine/fftInst/ingressLoop[7].ingressFifo /buffer_fifo/infer_fifo.block_ram_performance.fifo_ram_reg}]
- 選択したセルのタイミング レポートを実行します。次の Tcl コマンドを入力します。
report_timing -from [get_cells fftEngine/fftInst/ingressLoop[7].ingressFifo /buffer_fifo/infer_fifo.block_ram_performance.fifo_ram_reg]
- RAM のデータパス遅延が 0.622 ns になりました。