FC2カウンター FPGAの部屋 Vivado Design Suite のチュートリアルをやってみた4(Tclスクリプト4)
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

Vivado Design Suite のチュートリアルをやってみた4(Tclスクリプト4)

前の記事は、”Vivado Design Suite のチュートリアルをやってみた3(Tclスクリプト3)”

今回は、、”Vivado Design Suite チュートリアル デザイン フローの概要 UG888 (v2013.2) 2013 年 6 月 19 日”(以下、Vivadoチュートリアル)の16ページ、”手順 7 : デザインのインプリメンテーション”からやってみる。

run_bft_batch.tcl の STEP#3 から STEP#4 までの Tclコマンドを実行した。

1.opt_design
コマンドの内容を下に引用する。

現在のネットリストを最適化します。デフォルトでは、リターゲット、定数伝搬、スイープ、およびブロック RAM の消費電力最適化が実行されます。

デザイン ネットリストをターゲット パーツ用に最適化します。最適化では、サードパーティ ツールからの合成済
みネットリストや合成中に最適化されなかったネットリストを向上できます。
このコマンドをインプリメンテーションでデザインを配置配線する前に実行し、デザインを最適化してネットリスト
を簡略化します。


Vivado_Tutorial_33_130907.png

2.power_opt_design
コマンドの内容を下に引用する。

高度なクロック ゲーティングを使用して、ダイナミック消費電力を最適化します。

フリップフロップのクロック イネーブルを利用してクロック ゲーティングを変更することにより、デザインのダイナミック消費電力を最適化します。クロック ゲーティング最適化はデザイン全体に対して自動的に実行され、デザインの動作が変化する可能性のある既存のロジックやクロックを変更せずに消費電力を削減します。


Vivado_Tutorial_34_130907.png

3.place_design
コマンドの内容を下に引用する。

ポートと最下位インスタンスを自動配置します。


つまり、ロジックリソースを配置する。このコマンドは時間がかかった。
Vivado_Tutorial_35_130907.png

4.phys_opt_design
コマンドの内容を下に引用する。

現在の配置済みネットリストを最適化します。

デザインの負のスラック パスに対してタイミング ドリブンの最適化を実行します。最適化が実行されるためには、パスの負のスラックがワースト ネガティブ スラック (WNS) に近いことが必要です。このコマンドは、place_design コマンドの後、route_design コマンドの前に実行してください。


Vivado_Tutorial_36_130907.png

5.write_checkpoint -force $outputDir/post_place
コマンドの内容を下に引用する。

現在のデザインのチェックポイントを書き出します。

デザインをデザイン プロセスの任意の段階で保存し、必要に応じてツールにすばやくインポートし直せるように
します。デザイン チェックポイント (DCP) には、ネットリスト、制約、およびインプリメント済みデザインの配置配線情報が含まれます。
チェックポイント ファイルをインポートするには、read_checkpoint コマンドを使用します。


Vivado_Tutorial_37_130907.png

C:\Users\Masaaki\Documents\Vivado\Vivado_Tutorial\Tutorial_Created_Data\bft_outputフォルダに、post_place.dcp が書かれた。

ここまでで、今回の実行したコマンドでのレポートは全く書かれていない。

6.report_timing_summary -file $outputDir/post_place_timing_summary.rpt
Vivado_Tutorial_38_130907.png

C:\Users\Masaaki\Documents\Vivado\Vivado_Tutorial\Tutorial_Created_Data\bft_outputフォルダに、post_place_timing_summary.rpt ファイルが書かれた。

7.route_design
コマンドの内容を下に引用する。

現在のデザインを配線します。


Vivado_Tutorial_39_130907.png

8.以下のコマンドを実行した。

opt_design
place_design
write_checkpoint -force $outputDir/post_place
report_timing_summary -file $outputDir/post_place_timing_summary.rpt
route_design
write_checkpoint -force $outputDir/post_route
report_timing_summary -file $outputDir/post_route_timing_summary.rpt
report_timing -sort_by group -max_paths 100 -path_type summary -file
$outputDir/post_route_timing.rpt
report_clock_utilization -file $outputDir/clock_util.rpt
report_utilization -file $outputDir/post_route_util.rpt
report_power -file $outputDir/post_route_power.rpt
report_drc -file $outputDir/post_imp_drc.rpt
write_verilog -force $outputDir/bft_impl_netlist.v
write_xdc -no_fixed_only -force $outputDir/bft_impl.xdc
write_bitstream -force $outputDir/bft.bit


これで、ビットストリームまで生成できたわけだ。
Vivado_Tutorial_40_130907.png

C:\Users\Masaaki\Documents\Vivado\Vivado_Tutorial\Tutorial_Created_Data\bft_outputフォルダに生成されているファイルを下に示す。
Vivado_Tutorial_41_130907.png

次の記事は、”Vivado Design Suite のチュートリアルをやってみた5(Tclスクリプト5)
  1. 2013年09月07日 05:03 |
  2. Vivado
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog.fc2.com/tb.php/2581-357a1e8f
この記事にトラックバックする(FC2ブログユーザー)