電気回路/HDL/VivadoのXDC制約文法 の履歴(No.5)
更新Vivado の制約文法は ISE と異なる†
今までの UDC ファイルをXDCに直さなければならないらしいです。
情報源†
日本語版は版が古いので、利用する際には英語版の更新履歴をチェックする必要がありそうです。
- Vivado Design Suite ユーザー ガイド - 制約の使用
- ISE から Vivado Design Suite への移行ガイド - 第3章 UCF制約のXDCへの移行
- FPGA の部屋 - vivado :http://marsee101.blog19.fc2.com/category94-14.html
制約ガイドは論理だっていないし例も少ないしで非常に読みにくいです。
むしろ移行ガイドの3章を見ると、XDC文法の概略を見渡せるようです。 むしろこれ、UDC文法のガイドとしても役立ちそう。。。
tcl入門†
XDC ファイルは tcl として実行可能なプログラムソースになっています。
このあたりが分かりやすそう。
ただし、次の制約があります。
XDC フ ァ イルで使用可能なビル ト イ ン Tcl コマン ドは、 set、 list、 および expr のみです。
concat とかも使えないようですね。。。
[DRC 23-20] Rule violation (CFGBVS-1)†
新規プロジェクトを作成して bitstream を生成したところ、 次のような警告が表示されました。
[DRC 23-20] Rule violation (CFGBVS-1) Missing CFGBVS and CONFIG_VOLTAGE Design Properties - Neither the CFGBVS nor CONFIG_VOLTAGE voltage property is set in the current_design. Configuration bank voltage select (CFGBVS) must be set to VCCO or GND, and CONFIG_VOLTAGE must be set to the correct configuration voltage, in order to determine the I/O voltage support for the pins in bank 0. It is suggested to specify these either using the 'Edit Device Properties' function in the GUI or directly in the XDC file using the following syntax:
set_property CFGBVS value1 [current_design] #where value1 is either VCCO or GND
set_property CONFIG_VOLTAGE value2 [current_design] #where value2 is the voltage provided to configuration bank 0
Refer to the device configuration user guide for more information.
このエラーの対処は制約ガイドには載っていません。 「制約」ではなく「設定」のようです?
こちらに解説を見つけました。 http://japan.xilinx.com/support/answers/57045.html
例えば、次のように設定します。
set_property CONFIG_VOLTAGE 3.3 [current_design] set_property CFGBVS VCCO [current_design]
設定内容は XDC ファイルに直接記述しても良いですが、
によれば、Flow Navigator で Synthesized Design を開いた状態で、 メニューの [Tools]-[Edit Device Properties...]-[Configuration]-[Configuration Setup] に対応する項目がありますので、GUI で設定することも可能です。