The Xilinx Vivado 2020.2 version is a widely used release, particularly for 7-Series and UltraScale+ FPGAs, often favored for its stability compared to later releases, though it has several known installation and runtime issues. The primary "fixed" approach involves applying the 2020.2.1 Update.
Below is a detailed post covering the key fixes, known issues, and workarounds for Vivado 2020.2. 1. The Key Fix: Vivado 2020.2.1 Update
Xilinx recommends applying the 2020.2.1 (Update 1) patch to resolve several issues, particularly those related to device support and IP.
Purpose: Addresses issues found in the initial 2020.2 release (SW Build 3064766). Where to find: Available on the Xilinx Downloads Page.
Application: Must be applied over an existing 2020.2 installation. 2. Known Issues and Workarounds Installation Stuck at "Optimize Disk Usage":
Issue: The installer hangs during final file compression/linking.
Fix: This is a common issue with the Unified Installer. Let it run for a prolonged time (sometimes hours), or in some cases, closing the installer window and checking if the installation was actually successful (e.g., checking if vivado.bat exists) is needed. Installer Obsolete Error (Windows 10/11):
Issue: The installer fails on newer Windows 10/11 versions (e.g., 20H2+).
Fix: Run the installer as an administrator and ensure compatibility mode is set to Windows 8.
Vivado Stuck at "INFO: [Project 1-571] Translating Synthesized Netlist":
Issue: Synthesis/Implementation hangs due to .ngc file issues in IP.
Fix: Convert the problematic .ngc file to .edf format using the command: ngc2edif xyz.ngc xyz.edf, then re-package the IP. Wrong RTL Functionality/Synthesis Bug:
Issue: Synthesis results do not match simulation behavior, particularly with certain HDL constructs.
Fix: Update if conditions to specifically handle all bits of a signal (e.g., use c_state(3 downto 0) instead of c_state if only 4 bits are used). PDI Generation Fails (Versal VCK190):
Issue: Failure during Bootgen with error "Partitions not specified in subsystem". Fix: Re-run the Bitgen process. 3. Installation Best Practices for 2020.2
Xilinx Unified 2020.2 installation is stuck at 'Optimize Disk Usage'
While there isn't a single "famous" short story about Vivado 2020.2
, there is a legendary real-world troubleshooting saga that design engineers often share as a cautionary tale of "untraceable" bugs. The Mystery of the Ryzen Ghost
In early 2021, an engineer built a powerhouse workstation featuring a brand-new AMD Ryzen 9 processor specifically to speed up long Vivado 2020.2 compilations.
Instead of lightning-fast builds, they encountered a nightmare: the software crashed constantly during phys_opt_design
—the phase where the tool optimizes the physical placement of logic. There were no error codes, just immediate desktop crashes. The Twist:
The engineer tried everything: reinstalling Ubuntu, swapping RAM, and even downgrading Vivado
They eventually discovered the culprit wasn't Xilinx’s code at all, but a microscopic flaw in the AMD AGESA (BIOS)
A specific Simultaneous Multithreading (SMT) bug was causing the CPU to miscalculate under the extreme mathematical load of Vivado's optimization algorithms. The story ended when a Beta BIOS update
was released. Suddenly, the "broken" software worked perfectly. It remains a classic example in the FPGA community of how "software bugs" are sometimes actually hardware phantoms. Notable "Fixed" Issues in 2020.2
If you are looking for specific technical fixes that felt like "stories" to those affected, the 2020.2.2 Update resolved several critical headaches: The Root Port Hang: PCIe Bridge Mode
that caused intermittent hangs during configuration reads was finally squashed. The 99% Stall: Many users reported the Block Design generator
getting stuck at exactly 99%—a psychological torture for engineers that required specific IP cache clearing to fix. fixing a specific error
in your 2020.2 installation, or just curious about the tool's history?
8. Verifying Your Installation is "Fixed"
Run the following inside Vivado Tcl console:
# Check exact version
version -short
# Should output: 2020.2.2
Step-by-Step: How to "Fix" Common 2020.2 Installation Issues
Even with the fixes in 2020.2, installation can be tricky. Here is a community-sourced checklist to ensure your environment is robust.
The "Missing .xdc" After Checkpoint
Symptom: write_checkpoint -force drops your XDC constraints.
Fix: Always reapply constraints after checkpoint:
write_checkpoint -force post_route.dcp
read_xdc constraints.xdc
set_property IS_ENABLED 1 [get_xdcs constraints.xdc]