Keywords: evaluation, generate, order, bought, preference
I have a full license for an IP core, but when I attempt to generate the core, CORE Generator only finds an evaluation license.
The IP Core license manager (xlicmgr) should search for valid IP license types in the following preference order:
1. Source
2. Bought (Full)
3. Hardware_evaluation
4. Design_linking (Simulation only)
To find license files, it uses the license search order:
1. All the places listed by the environment variable XILINXD_LICENSE_FILE, if set.
2. All the places listed by the environment variable LM_LICENSE_FILE, if set.
3. Location cached for XILINXD_LICENSE_FILE in the registry ($HOME/.flexlmrc for Linux)
4. %HOMEDRIVE%\.Xilinx\*.lic ($HOME/.Xilinx/*.lic for Linux)
5. %HOMEDRIVE%\.Xilinx\Coregen\CoreLicenses\*.lic ($HOME/.Xilinx/Coregen/CoreLicenses/*.lic for Linux)
6. %XILINX_EDK%\data\core_licenses ($XILINX_EDK/data/core_licenses for Linux)
7. %XILINX%\coregen\core_licenses ($XILINX/coregen/core_licenses for Linux)
Within each of the directory locations, xlicmgr searches for a license feature in the order it appears in a license file. License files within a directory are searched in alphabetic order.
In 11.1, xlicmgr uses the correct search order to find license files. However, in ISE 11.1, it does not properly use the license type precedence rules. It simply picks up the first valid license found on the search path. This can lead to the wrong license being picked up under the following scenarios.
- If two licenses for the same feature, but different types are found in the same directory and the name of the lower preference license (e.g., Eval) appears alphabetically before the higher preference license (e.g., Full).
- An IP Core is first generated with a lower preference license (e.g., Eval) placing the license in the cache. Later, the higher preference license (e.g., Full) is placed in one of the default license locations (search order 4 through 7 above). It will check out licenses found in the cache (regardless of type) before searching the license default directories (e.g., C:\.Xilinx\Xilinx.lic).
- A lower preference license (e.g., Eval) is located in a file or directory with an earlier search order than the higher preference license (e.g., Full).
To work around this issue, refresh the license cache when new licenses have been installed to ensure these are picked up first.
You can also do the following:
- Use XILINXD_LICENSE_FILE environment variable point to the desired license file or directory first in the search order.
- Delete or rename unwanted license files in the search directories. Changing a file extension to anything other than ".lic" should prevent the file content from being searched by xlicmgr.
- Reset the license cache. Run "xlicmgr reset" to reset from a command line, or select the "Reset FLEX cache" button from the View License Status page of the IP Core you want to generate.
For a detailed list of where xlicmgr is searching for a license feature, use the status and verbose option for xlicmgr on the command line.
Example:
Run "xlicmgr status -c xaui_v7 -v" to obtain a detailed analysis of where xlicmgr is searching for the xaui_v7 license feature.
This issue is resolved in ISE 11.2.