2016-03-23 48 views
0

我想爲QuestaSim(ModelSim)編譯Xilinx Vivado仿真原語。該文件列出了TCL的命令,但我想用一個通用的shell命令如舊之一ISE:如何編譯Xilinx Vivado的仿真庫QuestaSim?

<ISEDirectory>\bin\nt64\compxlib.exe -family all - language all -library all -simulator questa .... 

據我所看到的,TCL命令應在Vivado GUI輸入。

如何從用戶定義的PowerShell或Bash腳本運行編譯?

+0

的PlanAhead擁有TCL的外殼,想必你可以從,也許Vivado也有類似的選項調用COMPXLIB。作爲參考,要輸入PlanAhead交互式TCL shell,請使用'planAhead -mode tcl'或運行TCL腳本,使用'planAhead -mode batch -source ' – suoto

+0

是的,Vivado也有一個命令行TCL shell 。它被構建到'Vivado.exe'中。沒有其他辦法嗎? – Paebbels

回答

0

只是爲了回答我的問題的完整性......

有那麼運行從Vivado的Tcl外殼編譯命令沒有別的辦法,無論是在GUI或命令行。

編譯自擊Vivado庫:

VSimBinDir=/opt/questasim/10.4d/bin 
DestDir=xilinx-vivado 

Simulator=questa 
Language=vhdl 
Library=all 
Family=all 

CommandFile=vivado.tcl 

echo "compile_simlib -force -library $Library -family $Family -language $Language -simulator $Simulator -simulator_exec_path $VSimBinDir -directory $DestDir" > $CommandFile 
if [ $? -ne 0 ]; then 
    echo 1>&2 -e "${COLORED_ERROR} Cannot create temporary tcl script.${ANSI_NOCOLOR}" 
    exit -1; 
fi 
echo "exit" >> $CommandFile 

# compile common libraries 
$Vivado_tcl -mode tcl -source $CommandFile 
if [ $? -ne 0 ]; then 
    echo 1>&2 -e "${COLORED_ERROR} Error while compiling Xilinx Vivado libraries.${ANSI_NOCOLOR}" 
    exit -1; 
fi