官方链接:https://support.xilinx.com/s/article/66954?language=en_US
中文链接:https://cloud.tencent.com/developer/news/710703
TITLE
66954 - 2016.1 and newer Vivado Hardware Manager - Intermittent configuration failures can occur when the FPGA is power cycled and the programming cable is connected.
DESCRIPTION
The following behavior is new to the Vivado 2016.1 Hardware Manager: When a board is powered off or a cable is disconnected, Vivado will close the hardware target in Hardware Manager.
When the board is powered back on or the cable is reconnected, Vivado will now automatically attempt to re-open the hardware target in Hardware Manager.
In addition to reopening the hardware target, Hardware Manager will attempt to refresh all device registers including reading configuration status registers.
Due to this new behavior it is possible to see intermittent configuration failure occur if all of the following are true:
- Any configuration interface other than JTAG is used
- Vivado Hardware Manager is open with a Digilent or Xilinx USB programming cable connected
- Board is power cycled or powered on
If any configuration interface (except JTAG) is used and the JTAG cable is also connected, it is possible that the configuration will be interrupted by the JTAG chain auto detection and/or register reads and will not complete configuration at power up or power cycle.
Please Refer to (UG908) for additional details.
SOLUTION
The issue could occur under three conditions:
- Device power on or power cycle. Pulsing PROGRAM_B does not result in this issue because the Vivado Hardware Manager does not see a cable disconnection and perform the cable auto detection.
- User issues "refresh_hw_devices" command
- User plugs in the JTAG cable
Potential Work-arounds include the following:
1) Set the following parameter to disable the power up detection
set_param labtools.auto_update_hardware 0
Note: You need to create a Vivado_init.tcl script and add the above parameter in it.
Additional information on Vivado_init.tcl:
When you start the Xilinx Design tools, it looks for the Vivado_init.tcl initialization script in two different locations:
1) In the software installation: installdir/Vivado/version/scripts/Vivado_init.tcl
installdir is the installation directory where the Vivado Design Suite is installed.
2) In the local user directory:
- For Windows 7: %APPDATA%/Roaming/Xilinx/Vivado/Vivado_init.tcl
- For Linux: $HOME/.Xilinx/Vivado/Vivado_init.tcl
If Vivado_init.tcl exists in both of these locations, Vivado sources the file from the installation directory first, and then from your home directory.
For more information, see the Loading and Running Tcl Scripts chapter in (UG894) Vivado Design Suite User Guide Using Tcl Scripting.
http://www.xilinx.com/cgi-bin/docs/rdoc?v=latest;d=ug894-vivado-tcl-scripting.pdf
2) Unplug the cable prior to power up or power cycle.
3) Slow down occurrence of the polling.
For example to poll once an hour, launch hw_server with the following option:
hw_server -e "set jtag-poll-delay 3600000000"
This command should be called in the CMD window instead of Vivado Tcl console.
4) Close and reopen the target in JTAG mode as follows to prevent any polling from happening, then restore back to normal mode:
a) Close and reopen the target in JTAG mode:
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) Restore back to normal mode once the part has booted:
set_property LOCK false [get_property HW_JTAG $tmp_target
close_hw_target $tmp_target
open_hw_target $tmp_target
文章描述了在使用Vivado2016.1及其更新版本时,当使用非JTAG配置接口且编程线缆连接时,电源循环可能会导致配置失败。解决方案包括禁用电源检测参数、电源循环前断开线缆、调整轮询速度或在JTAG模式下重新打开目标设备。
5997

被折叠的 条评论
为什么被折叠?



