在之前本公众号写过两篇关于工具更新对仿真调试提高效率的文章,【干货】推荐一款FPGA仿真调试鸟枪换炮的工具!本文就介绍其中一种仿真环境的搭建过程。后续还有VCS+Verdi环境的安装介绍,敬请期待。
INCISIVE又叫做IES,以前老版本叫做IUS,是Cadence的一款可以用于数字IC设计仿真的套件工具,它就是我们所熟知的NC-Verilog,内置有图形界面的nclaunch,或是直接使用命令行及脚本去run仿真,然后通过输出的.shm波形文件可以在套件中的Simvision波形观察软件中对波形进行观察,它可以实现wave—source code—schematic这三者的相互实时映射,为代码仿真调试提供了极大的便利。且它的仿真效率要远远高于Modelsim、Questasim等Windows系统下常用的仿真软件,因此强烈推荐使用这款仿真软件。
我选用的这款INCISIVE152是目前网络上的最新的版本,可以支持Vivado2017.2及Vivado2018版本,也就是说可以将Xilinx库编译到INCISIVE,调用INCISIVE进行仿真(就像联调使用Modelsim和Questasim一样)。
但是由于INCISIVE或者说Cadence的软件一直十分难以安装,网上相关教程非常少,因此我写了这篇安装教程,方便大家能够容易的按照教程一步步就把它安装成功,用上更贴近于产业界的更先进的工具。
工欲善其事,必先利其器。大家加油!
1、操作系统:本人使用的Ubuntu16.04 与 Ubuntu18.04均安装成功并完成与Vivado的联调编译。
2、操作系统需要的安装的库:
dpkg --add-architecture i386
apt-get update
apt-get install default-jdk
sudo apt-get install lib32z1
sudo apt-get install lib32ncurses5
sudo apt-get install lib32bz2-1.0(这个可能会失败,不过貌似不影响)
sudo apt-get install libstdc++6
sudo apt-get install lib32stdc++6
apt-get install libx11-6:i386 libx11-dev:i386 libxext6:i386libxext-dev:i386
sudo apt-get install libelf1 ksh nscd ureadahead csh xterm
我安装库时su进入了root模式,如果你安装不成功可以尝试进入root。
如果这些库没有安装,那么在打开Installscape的时候会报错(JVM报错),并且打不开Installcape。
建议将这几个命令多循环一遍,确保依赖库安装成功。
1、解压下图这个压缩包,要使用tar-zxvf IScape04.23-s010lnx86.t.Z才可以正确进行解压。
2、解压完成后得到下图三个文件夹,然后按照下面三个图这样的路径找到iscape.sh。
3、在iscape.sh所在的那一级目录打开terminal,输入sudo ./iscape.sh 即可打开Cadence安装器InstallScape。如下图。
解压上图的包,右键或者点开解压或者tar都可以。这里要注意这个安装包有12.7GB大小,如果小于这个大小可能是安装包有问题。
解压完成后内部是一个CDROM1文件夹,这个文件夹里就包含了安装INCISIVE152所需要的安装文件。
1、用刚才打开的InstallScape安装INCISIVE152,可以先设置安装目录。如下图。点击Preference => InstallScape然后就会弹出设置界面。
2、设置完之后点右下角OK。
3、然后回到InstallScape的主界面,点击界面上方的Local directory/Media install,就是一个DVD图标的选项
4、然后进入下图选择安装文件所在文件夹的界面。
在这个界面内选择解压安装包时解压出来的CDROM1的位置continue即可。
5、然后进入下面这些界面,在图片里说明了怎么做。(第二张图的PINCISIVE请务必勾选上)
6、在开始安装后,terminal内会经常需要按回车或是输入yes/no,注意所有的这也要输入yes/no的都输入no然后回车,直到Installing和Configuring的进度条都走完,然后点击右下角Done。
下图情况即为按回车的情况
下图情况即为输入 no 的情况
1、配置环境变量的方法有很多,大家可以自行选用,我这里使用的是修改.bashrc的方法。
首先在桌面terminal通过su进入root,然后gedit .bashrc,就会弹出如下图的文本文件。
将我提供的bashrc_model内的所有文本复制粘贴到.bashrc的最后。
并对做以下修改。
这里的测试安装是否成功只是很粗略的测试能否正常打开INCISIVE152的工具,并不跑工程。(测试工程可以和与Vivado联调一起进行,不在这里进行)。
在terminal内输入nclaunch如下图,然后回车
能出现如下图的界面。
然后选择MultipleStep,能出现下图界面。
这可以说明nclaunch基本正常运行,接下来我们再测试simvision是否能打开。
还是在terminal输入simvision,回车后看能否出现如下图的加载界面:
并最终出现下图这样的Simvision界面。
如果出现了,那么恭喜你,完成了INCISIVE或者说是NC-Verilog的安装。
这一步操作十分简单,和以前在Modelsim联调的基本操作是一样的,但是如果INCISIVE没有安装好,那么会出现大量error。
2、等待编译完成,查看编译是否成功
如果如下图一样编译0errors且100% complete,则说明编译成功。
在联调这一步编译库的时候很有可能会出现165个error这种情况,或是Verilog库都编译成功而VHDL库编译失败,这都是由于INCISIVE安装不正确而造成的。
特别注意:安装过程中,如果前面的ConfigureStatus是Fail,那么编译库联调必然出现error,必须达到安装和配置都success。
一般Configure Status出现Fail的情况是,在Install进度条100%后,不会弹出命令行让你按回车或者输入yes/no,而是Configuring进度条直接100%,并Configure Status显示Fail。这时大概率是依赖库安装不完全,或是前面哪些步骤没有按照教程进行。
本教程内尽可能的使用较多的图片来逐步还原与讲解安装的过程,文字较少,但是这也说明了每个文字都是很关键的,出现问题请详细阅读。
NC-Verilog的图形界面即为nclaunch,具体使用方法也不在此安装教程内给出。后续也会提供nclaunch的基本使用教程,不过还是鼓励脱离图形界面,让自己的操作更加“现代化”。
安装过程中如有问题,欢迎留言沟通交流。