想着把FPGA在Ubuntu下的环境弄一下,结果一天半就过去了,网上有数不清的教程,基本都是模糊不清,这里算做个总结吧。
PC环境是64位Ubuntu16.04,ISE是64位14.7,从官网上下载的,modelsim在官网上怎么都没法下载,从eetop一个哥们那分享里下载的。
ISE的安装目录为/opt/xilinx/, ,modelsim安装目录为/opt/modelsim/, 正式开始。
一,ISE的安装破解,这个应该没什么难度,网上搜的基本都靠谱。
二,modelsim安装:
(1), 执行modelsim文件夹下install_linux (如果提示少相关库,sudo apt-get install libxtst6:i386):
sudo ./install_linux
(2) sudo apt-get insall wine 安装wine
(3) 切换到root用户, 执行MentorKG文件夹下:
wine MentorKG.exe
(4) cp LICENSE.txt /opt/modelsim/modeltech/license.dat
(5) 添加.bashrc, 并source一下
export LM_LICENSE_FILE=/opt/modelsim/modeltech/license.dat
export PATH=$PATH:/opt/modelsim/modeltech/bin
(6) 重点来了!执行vsim会提示找不到文件,是因为这个modelsim只支持到linux2.X版本, 当前版本为linux4.X, (e.g. linux3.X版本类似添加)
vi /opt/modelsim/modeltech/vco,修改
case $utype in
2.4.[7-9]*) vco="Linux" ;;
2.4.[1-9][0-9]*) vco="linux" ;;
2.[5-9]*) vco="linux" ;;
2.[1-9][0-9]*) vco="linux" ;;
*) vco="linux_rh60" ;;
esac
为:
case $utype in
2.4.[7-9]*) vco="linux" ;;
2.4.[1-9][0-9]*) vco="linux" ;;
2.[5-9]*) vco="linux" ;;
2.[1-9][0-9]*) vco="linux" ;;
4.[0-9]*) vco="linux" ;;
*) vco="linux_rh60" ;;
esac
(7)重点又来了!执行vsim提示license错误, 其实却是是网卡命名问题?我原本网卡1名字为enp3s0, 需要改成eth0:
1.sudo vi /etc/default/grub, 修改
GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"
2.sudo update-grub
3.修改/etc/network/interfaces文件, 将原来的网卡名字该为eth0, eth1 ...
(8)reboot
三,ISE和modelsim的联合
1,进入/opt/xilinx/14.7/ISE_DS/ISE/bin/lin64目录下(32位是lin/), 执行:
./compxlib -s mti_se -arch all -l all -dir /opt/xilinx/xilinx_lib
2,在ise的simulate behavioral model右键里指定compiled library directory为/opt/xilinx/xilinx_lib