如何用ModelSim对Xilinx ISE产生的网表进行仿真

Posted Horizon00

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用ModelSim对Xilinx ISE产生的网表进行仿真相关的知识,希望对你有一定的参考价值。

图:

在对设计的芯片进行测试时,经常要用到FPGA,可是里面的仿真工具却不如Modelsim那么好用,且在规模比较大时,ISE在仿真时,软件经常会报告内存限制的问题,此时一般会切换到Modelsim软件中去做仿真,这样便不会出现内存限制的问题,且仿真器也更加好用。

 

下面以综合后仿真为例,讲一下如何用ModelSim对Xilinx ISE综合后产生的网表进行仿真。

 

在用Xilinx ISE综合后,如果想用Modelsim对它综合后产生的网表进行综合后仿真,总共需要3个*.v文件。一个是testbench文件,一个是ISE生成的xxx_ synthesis.v,另一个是glbl.v文件(这个文件在Xilinx安装目录:ISE\\verilog\\src下)。

步骤如下:

假设顶层设计名为main_1,双击Syntiesize - XST下的Generate Post-Synthesis Simulation Model,则在ISE项目目录内的./netgen目录里面会产生synthesis文件夹,生成main_1_synthesis.v文件以及main_1_synthesis.nlf文件。

在ModelSim项目中加入main_1_synthesis.v、testbench.v、Xilinx ISE安装目录/opt/Xilinx/ISE_DS/ISE/verilog/scr/目录内的glbl.v(必须加上glbl.v文件,否则会报下面Q1所示的glbl问题)。

然后在仿真中加入Xilinx编译的几个库文件(见文章Xilinx ISE如何调用Modelsim进行联合仿真),把testbench.v和glbl.v同时选中后进行仿真(必须都选上,否则仿真会报错)

仿真设置以下面的方式加入:

在Simulation中加入Xilinx ISE中编译的库文件(编译库的方法见Xilinx ISE如何调用Modelsim进行联合仿真):

点击Libraries,点击Add添加:

在Design下找到work库,在里面选中测试平台文件和glbl.v,则在Design Unit(s)中会出现work.glbl和work.tb。同时要在Optimization下取消勾选Enable optimization,否则有些信号可能会被仿真器优化掉。如下图所示:

之后双击Simulation 1即可开始仿真。


同样,在执行Implement Design下面的Translate以及其下面的Generate Post-Translate Simulation Model后,在netgen目录下会生成Translate文件夹,里面有main_1_translate.v文件。同样的方法可以进行翻译/转化后仿真。


Q1:"ERROR: ../<project>/<module.v>: Unresolved reference to \'glbl\' in \'glbl.GSR\'" 

A1:在仿真工程中添加glbl.v文件(一般在~/ise/verilog/src/glbl.v,同理Quartus),把testbench.v和glbl.v同时选中后进行仿真,即vsim -t 1ps -L unisims_ver work.glbl work.tb。

 

如果喜欢本公众号也请多多分享哟,谢谢您的关注

 

以上是关于如何用ModelSim对Xilinx ISE产生的网表进行仿真的主要内容,如果未能解决你的问题,请参考以下文章

(转)modelsim10.0C编译ISE14.7的xilinx库(xilinx ip核)

modelsim编译Xilinx器件库的另一种方法(节省时间)

ise启动modelsim出现如下的错误,该怎么办

Xilinx ISE FIFO读写操作仿真学习

求Xilinx ISE 13.3的破解版地址

Debussy VerilogVHDL ISE仿真平台搭建步骤