modelsim无法编译仿真库
㈠ modelsim不能编译Altera的库文件。
编译库应该成功了,在你调用altera库时,没有指定这些altera库的位置,一般用 -L lib_altera
后面的那个lib_altera名字由你自己指定的,load lib时指定的名称。
㈡ modelsim 编译不了怎样办就是程序保存了以后编译没反应
2
modelsim仿真需要编写测试文件,就是testbench,如果是您所叙述的情况,很有可能
6
问题:我烧写经Quartus
5.0编译的loopback程序,解码芯片SAA7113和编
㈢ 如何用Modelsim仿真
step1:在qurtus改变编译选项:
assignments->EDA tool setting:选择verilog还是vhdl。
step2:编译。你会在你的工程所在目录 看到一个simulation的目录,这里面有你生成的网表文件和标准延时文件。
step3:在目录:\quartus\eda\sim_lib找到你选用器件对应的库文件,将库文件和网表文件以及延时文件和testbench文件放在同一目录,在modelsim里进行编译库文件、网表文件以及bench文件。
step4:编译成功后,然后进行load,在load design的时候,需要制定延时文件的路径,以及延时文件作用的区域,延时文件的左右区域就是testbench里面调用顶层文件取的名字。
step5:打开signal窗口(view->signal)和wave窗口(view->signal),将你希望仿真的信号添加进去。
Step:仿真。。。
利用ModelSim SE6.0C实现时序仿真!!!
1) 打开一个工程文件。
2) 打开Settings设置栏,选择EDA Tools Settings下的Simulation栏。在右边出现的设置栏中将“Tool name”的下拉菜单选择“ModelSim(Verilog)”(如果工程用VHDL语言实现,则可以选择“ModelSim(VHDL)”;如果ModelSim使用的是for Altera的专用版本,则可以选择“ModelSim-Altera(Verilog)”或“ModelSim-Altera(VHDL)”)。
另外在设置栏中还有其他的核选框。
如果选中“Maintain hierarchy”,则表示在做时序仿真时就能看到像在功能仿真的工程文件层次结构,可以找到定义的内部信号。因为在做后仿时,源文件中的信号名称已经没有了,被映射为软件综合后自己生成的信号名,观察起来很不方便。这个设置与ISE里综合右键属性的Keep Hierarchy选择YES的功能是一样的。
如果选中“Generate netlist for functional simulation only”,则表示只能做功能仿真。
3) 点击 “Start Compilation”按钮编译工程,完成之后在当前的工程目录下可以看到一个名为“Simulation”的新文件夹,下面的“ModelSim”文件夹下包括仿真需要的.vo网表文件和包含延迟信息的.sdo文件。
4) 打开ModelSim软件(或者在Quartus下“Settings->EDA Tools Setting->Simulation”出现的设置栏中选中“Run this tool automatically after compilation”,直接从Quartus下调用ModelSim软件),可以在当前工程目录下新建一个Project。在Project标签栏内点击右键,出现在快捷菜单中选择“Add to Project->Existing File…”。加入当前工程目录的“\Simulation\ModelSim\”路径下的.vo文件、TestBench文件和对应当前工程所选择器件的网表文件。
比如:当前工程选择的器件是Cyclone系列,Quartus安装目录在“C:\altera”路径下。因此需要在“C:\altera\quartus50\eda\sim_lib”路径下找到“cyclone_atom.v”的网表文件导入到ModelSim下的Project。如果是其他器件亦是如此,只要在此目录下找到对应有“_atom”后缀的.v文件。当然整个大前提是ModelSim SE版本已经加入了Alterta的仿真库,不过ModelSim-Altera版本就不会存在这样的问题。
5) 在出现的Project标签栏的快捷菜单中选择“Add to Project->Simulation Configuration”,会出现如上图所示的名为“Simulation1”的仿真配置。右键点击选择“Properties”,弹出的“Simulation Properties”对话框中有几个标签栏。
在“Design”标签栏内需要选择仿真的文件,也就是TestBench文件。
在“SDF”标签栏内需要选择包含延迟信息的文件,即Quartus下生成的.sdo文件。这里建议将.sdo文件与ModelSim的工程文件(.mpf文件)放在同一个目录下,不然ModelSim会报类似无法读取.sdo文件的错误。当加入.sdo文件时,需要在如下图所示的“Apply to Region”的编辑框内填写延迟信息文件作用的区域。
举个例子来说明:
TestBench文件中定义了测试文件的Mole名称为ConvEncdTestBnch。
TestBench文件中调用待测顶层文件的实例名为top_encode_1。(top_encode top_encode_1(clk, rst, dataIn, serialData, parData);这是TestBench文件中调用顶层的语句)
所以在作用区域内需要填写“/ConvEncdTestBnch/top_encode_1”。
6) 右键点击名为“Simulation1”的仿真配置,快捷菜单中选择“Execute”命令,执行仿真。
7) 指定延时文件sdo 路径时,特别注意“域”的指定,否则用户会在timing 仿真中报load error “can’t find instance file”. 指定的域可以从sim标签页查看sim 的top 层,或要仿真的对象。另外,时序仿真时,一定要记住要把顶层top.v 用 top.vo 替换。同时要确保预编译的库中每个库的名字必需遵循altera的要求,比如:cylcone 的device 库必需命名为cycclone, maxii 的device命名为maxii, flex10Ke 和acex1K 都命名为flex10Ke,详细查看文档附件。Simulation.pdf
8) 提供一个testbench 的模板。
利用ModelSim SE6.0C实现功能仿真
功能仿真流程比较简单,一般不会出现什么问题,这里不再多述。
㈣ modelsim 仿真问题
modelsim仿真错误解决办法
编译不成功可能是因为:
1、本身程序有问题。
2、没有设置顶层文件
3、modelsim 出现错误是不要只是看错误的地方,也要看前面的一部分
㈤ 使用Modelsim仿真时出现的问题
先根据代码检查所有文档是不是在正确的目录下并且可操作
然后重新编译所需文档,注意加入需要的库
最后不行搜索macro ./yuanlitu.ldo文档看看里面是不是有设置问题,重点看看15行
㈥ modelsim不停出现loading……无法仿真
我也遇到这样的问题。可能与网络有关。我用代理软件proxifier联网时,一直出现这种问题。关闭这个软件后,便可以加载波形。你可以试着断网,再看能否加载波形
㈦ 如何在modelsim中编译xilinx的库文件
将Modelsim根目录下的modelsim.ini的属性由只读改为可写。
新建一个文件夹,比如library(为叙述方便,把它放在modelsim的根目录下)。D:/modelsim/library.
启动Modelsim,选择[File]/[chang
Directory],选择D:/modelsim/library.
选择[File]/[New]/[library]命令,弹出[Creat a New
library],在[lihrary
Name]中输入“simprims_ver”,同时下一栏也自动输入“simprims_ver”,单击OK。
在主窗口中选择[compile]/[Compile]命令,弹出[compile Source
Files],在[Library]的下拉列表中选择“simprims_ver”在[查找范围]中选中[Xilinx/veriog/src/simprims]目录下的全部文件,单击complie进行编译。(这时可能会花你一些时间,耐心等待编译完毕)用同样的方法将unisims和Xilinxcorelib三个仿真库进行编译。
这时在D:/modelsim/library 下就有以上三个仿真库。
7.总结步骤为a:建立库的放置路径b:对库进行编译c:对库进行映射。最后重新启动Modelsim可以在列表中看到建立的三个库。
那么这个办法明显是比较麻烦的。其实我们可以这样做;
首先将modelsim.ini文件只读模式去掉,存档前面打对勾。
在您安装ise的目录下,进入到bin\nt目录下,例如e:\ise6\bin\nt,确认有compxlib这个程序
在cmd中运行compxlib -s mti_se -f all -l all -o
e:\modeltech_6.0\xilinx_libs就可以了,e:\modeltech_6.0是我安装modelsim的目录,您可以作相应的更改。参数也可以按照您的要求作相应的更改。
这样就可以了。
需要注意的是,千万记住ise和modelsim的安装目录都不要出现空格,最好是直接安装在根目录下。
具体单独用modelsim进行behavioral
model的方法是,打开modelsim,把你的代码和仿真代码文件加入,别忘了加入glbl.v文件。在哪里?自己找吧。然后编译,work库这些设置好后,命令行(modelsim里的)输入
vsim -L Xilinxcorelib_ver -L unisims_ver -L simprims_ver -libwork$yourtestname glbl就可以了
我自己发现的更简便的编译方法,bin\nt
文件夹下有一个compxlibgui.exe程序,直接运行,后边的步骤很傻瓜,试试就明白了:)
㈧ 如何用ModelSim se完全编译Xilinx库文件
Modlesim 仿真库的建立:
将Modelsim根目录下的modelsim.ini的属性由只读改为可写。
新建一个文件夹,比如library(为叙述方便,把它放在modelsim的根目录下)。D:/modelsim/library.
启动Modelsim,选择[File]/[chang Directory],选择D:/modelsim/library.
选择[File]/[New]/[library]命令,弹出[Creat a New library],在[lihrary Name]中输入“simprims_ver”,同时下一栏也自动输入“simprims_ver”,单击OK。
在主窗口中选择[compile]/[Compile]命令,弹出[compile Source Files],在[Library]的下拉列表中选择“simprims_ver”在[查找范围]中选中[Xilinx/veriog/src/simprims]目录下的全部文件,单击complie进行编译。(这时可能会花你一些时间,耐心等待编译完毕)用同样的方法将unisims和Xilinxcorelib三个仿真库进行编译。
这时在D:/modelsim/library 下就有以上三个仿真库。
7.总结步骤为a:建立库的放置路径b:对库进行编译c:对库进行映射。最后重新启动Modelsim可以在列表中看到建立的三个库。
那么这个办法明显是比较麻烦的。其实我们可以这样做;
首先将modelsim.ini文件只读模式去掉,存档前面打对勾。
在您安装ise的目录下,进入到bin
t目录下,例如e:ise6in
t,确认有compxlib这个程序
在cmd中运行compxlib -s mti_se -f all -l all -o e:modeltech_6.0xilinx_libs就可以了,e:modeltech_6.0是我安装modelsim的目录,您可以作相应的更改。参数也可以按照您的要求作相应的更改。
这样就可以了。
需要注意的是,千万记住ise和modelsim的安装目录都不要出现空格,最好是直接安装在根目录下
modelsim下编译xilinx库的方法
这几天,建库的问题比较多,写一个建库的方法。
所用软件:ISE7.1i+ModelsimSE6.0
语言:VHDL
首先安装软件。注意:ISE,Modelsim的安装路径不能含有空格。
另外,Modelsim的安装路径可设为“$:/modelsim”,其中$为盘符,不要使用默认的安装路径。
将Modelsim根目录下的modelsim.ini文件的只读属性去掉。
在modelsim的命令窗口中输入命令“compxlib -s mti_se -arch all -l vhdl -w -lib all”,按回车键即可。
编译完成后,将Modelsim根目录下的modelsim.ini文件的属性设置为只读。
关于“compxlib”命令各项参数的含义,请在modelsim的命令窗口中输入“compxlib -help”查询
把库建好后,接下来的事情就是使它成为modelsim的标准库。这只要修改modelsim安装目录下的modelsim.ini文件就可以了。修改后的内容如下:
[Library]
std = $MODEL_TECH/../std
ieee = $MODEL_TECH/../ieee
verilog = $MODEL_TECH/../verilog
vital2000 = $MODEL_TECH/../vital2000
std_developerskit = $MODEL_TECH/../std_developerskit
synopsys = $MODEL_TECH/../synopsys
modelsim_lib = $MODEL_TECH/../modelsim_lib
simprim_ver = G:/EDA/Xilinx/simprim_ver(库的路径,以下同)
unisim_ver = G:/EDA/Xilinx/unisim_ver
xilinxcorelib_ver = G:/EDA/Xilinx/xilinxcorelib_ver
注意的是,这个文件是只读属性。修改之前要把这个属性去掉。
第六步:关掉工程,重启modelsim。查看这3个库是否在library框里面。
二、 在ISE环境下,调用synplify,生成后仿真所需要的文件。
之所以要在ISE环境下调用synplify,主要是因为方便!我也尝试过在synplify环境下综合设计文件,然后在ISE里编译synplify生成的edif文件。但是不成功。ISE在第三方工具支持方面做的是比较好的,感觉跟用ISE直接综合一样。不过有一个缺点是看不了RTL原理图。你可以在synplify中打开ISE生成的synplify工程文件,解决在ISE中不方便查看synplify综合结果的问题。现在,就要开始第二个大步骤了!
第一步:创建ISE工程文件。选择好器件。注意Design Flow中一定要选择Synplify Pro Verilog。
第二步:综合设计文件,也就是verilog文件。
ISE就会自动调用synplify。(如果没有的话,那可能是你的系统环境变量没有设置好)。此时会弹出一个对话框,要你选择synplify的liscense。(这步本来不用说的。如果没有对话框弹出来的话,也不要紧)随便选择一个,就等结果了。
第三步:生成后仿真需要的文件。
我们可以看到在Implement Design中有三个大分支,这对应着三种仿真。按你的需要按下相应的图标,生成modelsim后仿真所需要的文件,下面对生成的文件和生成这些文件的图标进行说明。
第三步:在弹出的对话框里,选择SDF项。把ISE生成的SDF文件添加进出。如下图:
记住Apply to Region这一项要写好。它对应的是你的tb文件(就是测试文件)调用的顶层模块名。(不是顶层模块名!!)比如你的测试文件是text,例化顶层模块top为i_top,那你应该这样填:text/i_top或者/text/i_top。如果是第一种仿真,此步可以省略。
第四步:添加library。
我们创建的那三个库终于派上用场了!我们要添加的就是这3个。选择library项,添加这3个库。你的库建在哪里,就去哪里找!这个也不用说了吧
第五步:选择要仿真的模块。
你先不要急,看清楚再选。(有些朋友性子急,驾轻就熟就选了)
我们要选的仿真模块可不止一个,如下图,用CTRL键实现!!选了之后点0k!!
㈨ modelsim创建了.vhd文件 但无法编译成功显示work(empty) 求大侠指点~
新建工程和work库都有了,就是新建一个VHDL文件时,输入代码后不能编译,但是如果先复制一个编译好的VHDL文件在工程了,就可以显示status和编译仿真,请问这是为什么?
还有,以下是Transcript的出错信息:
# ** Error: (vish-19) Failed to access library 'work' at "work"
# No such file or directory. (errno = ENOENT)
或是新建文件type不对,改为VHDL再map到work库就可以编译了……-……
㈩ ISE和Modelsim编译仿真库的时候 到12%左右就出现这些问题了,下边还有好多类是的问题,烦死了!求助啊!
project加载有问题,似乎还有语法问题,可以现在modelsim中编译检查,成功之后再从xilinx ise中调用modelsim进行仿真