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# 66954

2016.1 以降の Vivado ハードウェア マネージャー - FPGA の電源が再投入され、プログラム ケーブルが接続されていると、断続的なコンフィギュレーション エラーが発生することがある

説明

Vivado 2016.1 ハードウェア マネージャーの新しい動作について説明します。ボードの電源がを切るか、またはケーブルの接続を解除すると、Vivado ハードウェア マネージャーでハードウェア ターゲットが閉じます。

ボードに電源を再び投入する、またはケーブルを再び接続すると、Vivado ハードウェア マネージャーではハードウェア ターゲットが自動的に開きます。

さらに、ハードウェア マネージャでは、ハードウェア ターゲットを開き直すときに、読み出しコンフィギュレーション ステータス レジスタを含むすべてのレジスタが更新されます。

この新しい動作により、次の状況がすべてあてはまる場合に断続的なコンフィギュレーション エラーが発生することがあります。

  • JTAG 以外のコンフィギュレーション インターフェイスが使用されている
  • Digilent またはザイリンクス USB プログラム ケーブルが接続された状態で Vivado ハードウェア マネージャーが開いている
  • ボードの電源が再投入 (切って入れ直す) されている、または投入されている

コンフィギュレーション インターフェイス (JTAG を除く) が使用され、JTAG ケーブルも接続されている場合、JTAG チェーン自動検出またはレジスタの読み出しによりコンフィギュレーションに割り込みが発生し、電源の投入または再投入でコンフィギュレーションが完了しないことがあります。

詳細は、UG908 を参照してください。

ソリューション

この問題は次の 3 つの条件で発生する可能性があります。

  1. デバイス電源の投入または再投入。PVivado ハードウェア マネージャーでは、ケーブルの未接続を確認したり、ケーブルの自動検出を実行しないため、ROGRAM_B のパルスによりこの問題が発生することはありませn。
  2. ユーザーによる refresh_hw_devices コマンドの発行
  3. ユーザーによる JTAG ケーブルのプラグイン


次に回避策の例を示します。

1) 次のパラメーターを設定して電源投入検出をディスエーブルにします。

set_param labtools.auto_update_hardware 0

注記: 上記のパラメーターは、Vivado の init.tcl ファイルで設定できます。

init.tcl に関するその他の情報

ザイリンクス デザインを起動すると、Tcl 初期化スクリプトが次の 2 つの場所で検索されます。

1) ツールのインストール場所: installdir/Vivado/version/scripts/init.tcl

installdir は Vivado Design Suite のインストール ディレクトリです。

2) ユーザーのローカル ディレクトリ:

  1. Windows 7 の場合: %APPDATA%/Roaming/Xilinx/Vivado/init.tcl
  2. Linux の場合: $HOME/.Xilinx/Vivado/init.tcl


両方の場所に init.tcl が存在する場合は、Vivado ではまずインストール ディレクトリのものが読み込まれ、その後ローカル ディレクトリのものが読み込まれます。

詳細は、『Vivado Design Suite ユーザー ガイド: Tcl スクリプト機能の使用』 (UG894) を参照してください。

https://japan.xilinx.com/cgi-bin/docs/rdoc?v=latest;d=ug894-vivado-tcl-scripting.pdf


2) 電源の投入または再投入前にケーブルを外します。

3) ポーリングの発生頻度を抑えます。

たとえば、1 時間に一度ポーリングを発生させるには、次のオプションで hw_server を起動します。

hw_server -e "set jtag-poll-delay 3600000000"

4) 次のように JTAG モードでターゲットを閉じて開き直してポーリングが発生しないようにし、その後通常モードに戻します。

a) JTAG モードでターゲットを閉じて再び開きます。

set tmp_target [ get_hw_targets -filter { IS_OPENED == 1 }]
close_hw_target $tmp_target
open_hw_target -jtag_mode on $tmp_target
set_property LOCK true [get_property  HW_JTAG $tmp_target]

b) デバイスがブートしたら通常モードに戻します。

set_property LOCK false [get_property  HW_JTAG $tmp_target
close_hw_target $tmp_target
open_hw_target $tmp_target
AR# 66954
日付 03/13/2017
ステータス アクティブ
種類 一般
ツール
  • Vivado Design Suite
このページをブックマークに追加