Skip to content

edaa-org/pyEDAA.Launcher

Repository files navigation

Sourcecode on GitHub Documentation Gitter
GitHub Workflow - Build and Test Status Codacy - Quality

pyEDAA.Launcher starts the correct Xilinx Vivado version based on the version number written into the *.xpr file. If no suitable version was found, an error message is shown.

Main Goals

When opening Xilinx Vivado by double-clicking an *.xpr file in the Windows Explorer, a default Vivado version is launched by Windows. In many cases, this is the first Vivado version that was installed on a system, but not the latest version. Anyhow, in most cases, Windows starts the wrong Vivado version, which leeds to a project upgrade question, or a rejection, because the project file is too new.

pyEDAA.Launcher addresses exactly this problem. It will start the correct Xilinx Vivado installation with correct working directory settings, if that requested Vivado version is found on the system.

How does it work?

  1. Check with which Vivado version was used to save the *.xpr file.
  2. Scan the Xilinx installation directory for available Vivado versions.
  3. If a matching version was found, start Vivado and pass the *.xpr as a parameter.

Differences to opening the *.xpr from GUI?

By default, Xilinx Vivado has its working directory in AppData, but the working directory should be in the directory where the *.xpr file is located. This is fixed by pyEDAA.Launcher as a side effect. Now, Vivado saves log and journal files to the correct locations.

Installation

  • Copy the executable from the releases to the Vivado installation Path. For me its C:\Xilinx\Vivado\.
  • In this Path you should see the installation-folders of all Vivado Versions. E.g: 2018.3, 2019.1, ...
  • Change File-association: Right click on *.xpr -> open with -> choose another app -> and select the VivadoLauncher.exe
  • That's it.

Note for Xilinx: Feel free to include this in the next release to stop this version madness. Please inform us then.

Contributors

License

This Python package (source code) licensed under Apache License 2.0.
The accompanying documentation is licensed under Creative Commons - Attribution 4.0 (CC-BY 4.0).


SPDX-License-Identifier: Apache-2.0