UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 51418

Vivado - 合成前に HDL ソースを変更する Tcl スクリプトを実行すると合成が実際には完了しているのに更新が必要と表示される

説明


HDL ソースを変更する Tcl スクリプトがあります (VHDL ソース ファイルのコメントに現在の日付、時間、バージョンおよびビルド番号を追加するなど)。

合成設定の [Tcl.pre] オプションで、このスクリプトが Vivado 合成前に自動的に実行されるように設定しています。

スクリプトは正しく実行し、合成は完了しましたが、合成が問題なく完了したにもかかわらず、Vivado GUI の合成ステータスには「Out of Date」 (更新が必要) と表示されます。このため、合成のステータスを手動で変更しないとインプリメンテーションを実行できません。

ステータスが「Out of Date」になるのはなぜですか。[Tcl.pre] オプションを使用してスクリプトを実行し、かつこの問題を回避する方法はありますか。

ソリューション


Vivado の tcl.pre/tcl.post コマンドは、特定の Tcl コマンドをできるだけ近くにラップするように設計されています。このため、ステータスのチェックは、合成全体 (tcl.pre および tcl.post スクリプト コマンドも含む) の開始時の HDL ソース ファイルの状態に基づいています。コマンド開始後にソース ファイルが変更されたため、コマンドのステータスは「Out of Date」に設定されます。

現時点では、この問題の回避策は手動での変更しかありません。
  • 合成が完了した後に、Tcl コンソールで「set_property needs_refresh false [get_runs synth_1]」を実行します。
  • Tcl コンソールで、上記のコマンドを含む Tcl コマンドを実行します。
  • [Synthesis and Implementation Out-of-Date] という文字列の右上にある [more info] をクリックし、開いたウィンドウで [Force up-to-date] をクリックします。

注記 : 合成設定の Tcl.post は、合成ステップの一部とみなされるので、ステップはアップデートはされません。
AR# 51418
作成日 10/19/2012
最終更新日 11/12/2012
ステータス アクティブ
タイプ 一般
ツール
  • Vivado - 2012.1
  • Vivado - 2012.2