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

Vivado - How do I use the MYVIVADO environment variable to apply tactical patches?

Description

How do I use the MYVIVADO environment variable to apply a tactical patch for either a Vivado or PlanAhead install?

Solution

The MYXILINX equivalent in Vivado is a variable called MYVIVADO that can contain one or more paths (delimited by a ':' on Linux, ';' on Windows) to other patches.

The $MYVIVADO area allows you to use Xilinx software patches without affecting your original install area. 

In a shared environment, this allows individual users to apply any patch they need without affecting other users.

The $MYVIVADO directory structure should match that of the Vivado or PlanAhead install area.

Note: If a certain patch is desirable for use by all engineers at a site, In Vivado 2014.4 and later, the patches can be installed in the $XILIINX_VIVADO install directory under a user-created "patches" directory.

 

It is important to use patches only with the software for which they were built. 

For example, if you have a patch in the $MYVIVADO area that was built for 2014.3, you must not use this patch with the 2014.4 version of Vivado tools. 

Patches that are built for a certain build of software are included in the next full release of the software.

 

When the Vivado software loads a data file (for example, a speed file), it first checks to see if the required file exists in the $MYVIVADO area.

If so, it uses it and prints a message notifying the user that a $MYVIVADO data file is overriding the default VIVADO data file.  

Next, Vivado will look in the $XILINX_VIVADO/patches directory. 

If the file does not exist in the $MYVIIVADO or patches directories then Vivado uses the original data file within the $XILINX_VIVADO tree.


The following is an example of how to change from a standard environment to an environment that accesses a patch using the $MYVIVADO variable on Linux:

setenv MYVIVADO /home/user/patches/Vivado/2012_3_ar50123_patch

On Windows, the appropriate commands would be:

set MYVIVADO=C:\patches\Vivado\2012_3_ar50123_patch

The paths contained in MYVIVADO will take precedence going from left to right. 

This means that if patches contain the same files, the files first patch listed in MYVIVADO will be used.

Using Multiple Vivado Patches:


Example 1:

/opt/Vivado_AR12344  <-- Patch for AR12344
/opt/Vivado_AR12345  <-- Patch for AR12345
/opt/Xilinx/2012.4/
            Vivado/
                bin/
                  vivado
                data/
                   baseline.txt <-- points to /opt/Xilinx/ISE_DS/14.4/PlanAhead
            ISE_DS/
                14.4/
                  PlanAhead/
                          bin/
                          ...
                  ...


These are the options for using multiple patches:

For Vivado 2014.4 and later, we have the following support for multiple patches:

  1. You can create a patches directory under the install. 
    All patches can be unzipped into the $XILINX_VIVADO\patches directory. 
    Vivado will automatically check files in the $XILINX_VIVADO\patches\AR* directories.
     
  2. A MYVIVADO variable equivalent to the ISE MYXILINX is available.
    You can specify different patch directories, which will be included when Vivado/PlanAhead is run.


For Vivado 2012.3 to 2014.3, we have the following support for multiple patches:
 
  1. A MYVIVADO variable equivalent to the ISE MYXILINX is available.
    You can specify different patch directories, which will be included when Vivado/PlanAhead is run.
    This option will not allow for patching loaders.
     
  2. baseline.txt can be used to point to a base install.
    This must be used if loaders are being patched.
     
  3. Patches can be overlaid in one area.
    This only works if the patches do not contain the same files.
 
These are the possible options for using multiple patches:

  • Use the patches directory under $XILINX_VIVADO
     
    1. Navigate to the $XILINX_VIVADO/patches directory (create this directory if it does not exist)
       
    2. Extract the contents of the ".zip" archive to a directory starting with the name AR# (for example AR12345)
      Most extraction tools will allow you to automatically create a directory the same name as the zip file.
       
    3. Run Vivado software tools from the original install location.

    • Use MYVIVADO with or without overlays
      1. Install multiple patches in separate directories or in the same directory without loaders
      2. Set MYVIVADO to point to all patch areas
      3. Run Vivado/PlanAhead from the base install
     
    • One patch with loaders without MYVIVADO
      1. Install multiple patches in the same directory with one patch with loaders
      2. Establish a baseline to the base install
      3. Run Vivado/PlanAhead from the patch area
     
    • One patch with loaders using MYVIVADO
      1.  Install multiple patches in separate directories with one patch with loaders
      2. Establish a baseline in the patch directory with loaders.
      3. Set MYVIVADO to point to all patch areas
      4. Run Vivado/PlanAhead from the patch area

    Linked Answer Records

    Associated Answer Records

    AR# 53821
    Date Created 01/16/2013
    Last Updated 03/06/2015
    Status Active
    Type General Article