Con las nuevas herramientas de Xilinx (12 hacia arriba), debes ejecutar un script antes de ejecutar cualquiera de ellas. La secuencia de comandos establece algunas variables de entorno para que apunten a la "versión correcta"
Si ejecuta las herramientas desde los iconos de inicio habituales, esa secuencia de comandos se ejecuta de forma transparente. Si abre su propio cuadro de DOS y desea ejecutar una compilación dentro de él, debe ejecutar <path to xilinx tools>\<version>\ise_ds\settings[32|64].bat
para configurar el entorno.
Luego, se configura un conjunto de variables de entorno XILINX_*
, la más fundamental de las cuales se llama XILINX
. En mi instalación 12.4 apunta a
XILINX=c:\Xilinx.4\ISE_DS\ISE
Esto también se agrega a la ruta, por lo que cuando llama a map
, par
, etc., se llama al correcto. Por lo tanto, no debería necesitar conocer la ruta en sus scripts, a menos que desee acceder a algunos de los archivos de datos dentro de la instalación.
¿Cómo puedo encontrar la "raíz" correcta mediante programación?
En mi experiencia, la forma "correcta" de operar es exigir que el usuario defina explícitamente la raíz correcta. Tenemos muchas versiones diferentes de ISE instaladas y seleccionamos cuál dependiendo del proyecto. Una vez que un proyecto ha comenzado, congelamos las herramientas utilizadas (en la medida en que con los proyectos de producción, el script de compilación verifica la versión de las herramientas como una primera tarea y las bombas del usuario han seleccionado una incorrecta). Particularmente entre las versiones principales, existe suficiente rotación de que los conjuntos de herramientas de migración pueden ser un trabajo bastante grande, especialmente si está utilizando un conjunto de herramientas más amplio (por ejemplo, EDK, generador de sistemas, etc.).
Sin embargo, si realmente desea ejecutar las últimas herramientas que puede encontrar todo el tiempo, creo que puede haber algunas claves de registro (suponiendo que sea un usuario de Windows) que pueda repetir. Pueden contener un puntero a la raíz que luego podría usar.