modelsim问题综述
有关modelsim的问题汇总

问题一:编译xilinx仿真库在网上搜了无数帖子,结合自己数小时的实践,终于搞定了Xilinx仿真库。
测试环境:Windows XP3,Xilinx ISE Suite 10.1,ModelSim SE 6.5c使用ISE自带的库生成工具是最方便的方法。
首先打开ISE,在Edit->Preferences...->ISE General 的Intergrated Tools 的Model Tech Simulator中指定Modelsim.exe的实际安装路径。
(在这里我的路径是D:\Work\modeltech_6.5c\win32\modelsim.exe,请根据自己的实际情况更改)。
OK以后退出ISE。
然后到ModelSim安装目录下找到ModelSim.ini文件,右键将其只读属性去掉,确定。
按下WIN+R,输入compxlibgui后回车,这其实就是自带的工具Simulation Library Compilation Wizard。
点击Select simulator,选中ModelSim。
检查路径正确了以后选Next。
再Next,建议再Next,或者根据自己的实际需要选择FPGA/CPLD的具体型号。
继续Next,在Map only to existing pre-compiled libraries前打上勾,在Output Directory for modelsim.ini file using mapped libraries中选择modelsim安装根目录modelsim.ini所在的路径,这一步很重要。
再点击Next就开始编译了。
最后把ModelSim.ini文件的只读属性改回去,万事OK……问题二:Hello all,Whenever I need to look at a filter output (or any DSP core), I used to define a real signal and assign it to what I want to examine, roughly something like this:dac_real_out <= hex2real(dac_holder, 12.0);where dac_holder is a std_logic_vector. It is much easier to look at an analogue signal waveform instead of tracing hex values word by word.This used to work quite alright using ModelSim XE edition. Now for some reason, it seems I can't get it to compile my design---I get the following error:# ** Error: (vcom-42) Unsupported ModelSim library format for "work". (Format: 3)My first question is: can I go around it as I've never encountered this before.My second one is: if not, is there anyway I can make ISE simulator do the same thing? apparently I can't add this real signal to my waveform editor and presumably ISE doesn't support it.Would appreciate any input on this.Manny wrote:> This used to work quite alright using ModelSim XE edition. Now for > some reason, it seems I can't get it to compile my design---I get the > following error:> # ** Error: (vcom-42) Unsupported ModelSim library format for "work". > (Format: 3)You can't *elaborate* (vsim) your design becausethe compiled work directory does not match the simulatoryou are using. Delete it and recompile (vcom)For modelsim, that is something like:vdel -allvlib workvmap work workvcom <source files>I like to write script like thisto archive with the design.> is there anyway I can make ISE simulator do> the same thing? apparently I can't add this real signal to my waveform > editor and presumably ISE doesn't support it.I expect that is true.You are better off with a real hdl simulator in any case.问题3:使用verilog进行描述,经过编译之后,在仿真过程中发现object中无项目,最终无波形输出。
Modelsim常见问题

Modelsim 常见问题
Q1:设计中用到厂商提供的IP时,编译时出现“(vopt-3473) Component instance "XXXX" is not bound.”
A1:编译时,需要把所需的Libray添加到编译命令中,如“vsim -L C:/Modeltech_6.2b/xilinx_lib/XilinxCoreLib ......”。
Q2:vhdl和verilog混合仿真时,vhdl和verilog代码中会调用同一个组件,但是他们分别来自不同的library,如unisim和unisim_ver,它们相互并不通用,及verilog不能调用unisim_ver的组件,会造成组件找到却没办法绑定的错误,如:“Port 'Q' not found in the connected module”?
A2:当仿真时,由于vhdl代码中会指定从那个库文件里面提取,而verilog代码中没有,所以使用vsim命令时,把verilog所需的库放在第一个,而后放vhdl 所需的库,这样,verilog会从unisim_ver代码开始查询组件。
Q3:"ERROR: ../<project>/<module.v>: Unresolved reference to 'glbl' in 'glbl.GSR'" A3:在仿真工程中添加glbl.v文件(一般在~/ise/verilog/src/glbl.v,同理Quartus),把testbench.v和glbl.v同时选中后进行仿真,即vsim -t 1ps -L unisims_ver work.glbl work.tb。
安装modelsim6.5可能出现的问题以及解决办法

有时安装系统时不能填用户名和组织名,或是随便填一个,后来要更改用户名,该怎么办呢电脑用户名为中文造成Modelsim SE读取注册文件错误今天安装Modelsim SE6.5的时候,使用网上的破解软件破解;发现使用Modelsim ?License Wizard导入破解文件生成的license.dat时候报错;错误信息如下:Fatal License Error:Unable to check out alicense.RuntheModelsimLicensing wizard from the start->Programs menu to diagnose the problem仔细阅读发现是license.dat文件里面含有非法字符;因此打开license.dat发现应该是装机的时候用户名和组织是默认中文造成的。
找了改正用户名和组织名的方法,给大家分享;如何修改XP安装时的用户名和公司名?在java程序开发中,每个类开头加入javadoc注释时,生成的作者名总要修改,不方便,在网上找到了可行的方法下面是彻底修改安装操作系统时的用户名和公司名(1)打开“注册表编辑器”。
(2)选择HKEY_LOCAL_MACHINE/Software/Microsoft/Windows NT/Current Vers-ion ? ? ? ? 注册表项。
(3)在其右边的值项窗格中,双击RegisteredOwner 值项,打开“编辑字符串”对话框。
(4)在“数值数据”文本框中更改个人的信息,单击“确定”按钮即可。
(5)双击RegisteredOrganization 值项,打开“编辑字符串”对话框。
下面是修改系统中显示的用户名??右键“我的电脑”---“管理”---“本地用户和组”---“用户”,右键点击你要修改的用户名,选择“重命 ? 名”,改成你要的名字就可以了?这两个方法都做后,系统启动时的名字也会改变。
ModelSim使用的一点心得体会

ModelSim使用的一点心得- -1、至今还没有弄明白为什么要用ModelSim,因为看波形Quartus II自带的工具就可以了啊。
2、我刚刚接触modelsim,我想大多数菜鸟跟我一样,看过如何使用ModelSim的介绍,说句实话,那些介绍写的都太过简单,仿佛大家都不屑写上一些比较“弱智”的步骤,恰恰就是这些看似累赘的步走,难为我好久。
教程上都写道,modelsim的简单使用方法如下:建立库- 影射库到物理目录- 编译代码- 启动仿真。
首先建立库就叫我头晕。
库的概念用在这儿实在不合适,把我吓坏了,也就没心思看下一步了。
在我看来,教程应该这么写:<1> 建立一个目录modelsimStudy。
用任何文本编辑器编辑一个简单的例子程序,比如计数器counter.vhd。
有clk、ena、reset输入,cnt作为输出。
<2> 打开Modelsim,首先create project,工程名随意取了,比如命名为test,目录设在modelsimStudy下,默认的库work不变(这样就不用管什么建立库之类的东西了)。
然后add existing file,把counter.vhd加入当前工程。
<3> 编译这个文件,通过之后,work下面会出现counter这个实体。
然后选中它,右键,simulate(左键双击也可)。
<4> ModelSim有很多窗口(新手就怕这个),一开始只要选择view下面的objects 和wave窗口就行了。
旧版的signal窗口在6.0的版本改名为Objects(这个我是摸索了好久才发现的,是不是太笨了?)。
wave窗口刚打开时是空的,需要在objects窗口的add -> wave -> signals in region。
这时,wave上就有clk\ ena \ reset等信号了。
<5> 我们给clk来个输入激励,在object窗口中选中clk,右键选clock,给它定义个时钟。
modelsim仿真问题_xp

modelsim仿真问题_xp1、MODELSIM仿真提示already declared in this scope解决方法:在定义这个信号前其它模块接口信号中调用了这个信号,modelsim仿真报错,通过把信号定义挪到调用模块前面问题解决。
2、modelsim中,Instantiation of 'dffeas' failed. The design unit was not found.** Error: (vsim-3033) E:/pro/verilog_prj_example/simulation/modelsim/tb_sdrtest.v(2 4): Instantiation of 'print_task' failed. The design unit was not found.两种方法;报告3、Error: Can't compile duplicate declarations of entity "ram" into library "work"Error: Instance could be entity "ram" in file ram.v E rror: Instance could be entity "ram" in file ram.bdf解决办法:将.bdf文件的名字改掉,不能和.v文件的名字相同。
4、Quartus中仿真时出现no simulation input file assignment specify 对话框最好保证工程名、主模块、仿真文件的名字都一样。
5、9.17.2014下载波形文件仿真错误Error: Run Generate Functional Simulation Netlist (quartus_map yumen2_mk--generate_functional_sim_netlist) to generate functional simulation netlist for top level entity "yumen2_mk" before running the Simulator (quartus_sim)解决方法:原因是在功能仿真时候没有建立一个网表,网表的作用本人不是很清楚,只能说是功能仿真的一个必要步骤吧。
使用Modelsim仿真FPGA工程步骤以及一些问题

使用Modelsim仿真Altera FPGA工程(包括IP核)步骤以及问题汇总前提:计算机上已经安装QuartusII和Modelsim通用版,并且均已破解。
环境说明:所用的软件版本,QuartusII为9.0,Modelsim为6.5c。
本测试仅在WIN XP SP3上测试,对于VISTA/WIN7/LIN或者其他平台没做过测试。
但其他平台或者其他版本的过程应该都差不多。
其他:感谢teamo版主的破解和编译教程,以及后期对我的热心指导。
如果各位对整个步骤还有什么问题的华可以直接和我联系,我的论坛ID是lanphon,邮箱是lanphon@。
一、Altera库的编译(本部分基本上全部抄袭teamo版主的教程,懒得写了)1) 先到C:\modeltech_6.5目录下找到文件"modelsim.ini",将其属性改为可写(右键‐>属性)。
2) 启动modelsim se,选择【file】‐>【new】‐>【library】命令,在弹出的【create a newlibrary】窗口中将选项【create】设置为【a new library and a logical mapping to it】,在【libryr name】和【library library】窗口中将选项【create】设置为【a new library and a logical mapping to it】,在【libryr name】和【library physical name】中键入所要创建库名字,如Altera ,此时在主窗口中已多了一个Altera 项。
注:这个过程实质上想当于在modelsim 主窗口中的脚本区域中输入了vlib和vmap命令。
3) 在workspace中的library中选中你健入的库名Altera,在主菜单中选【compile】→【compile…】命令。
想很多人跟我一样,被ModelSim的后仿真搞的头晕脑胀

想很多人跟我一样,被ModelSim的后仿真搞的头晕脑胀。
为了这个问题,我在网上找了很多的资料,但发现这些资料往往说的不明白。
一些步骤被作者有意无意地省略掉,这常常给读者造成不必要的麻烦,所以我决定写下这一篇文章,把这3天我努力的结果拿出来,与大家分享。
首先,我把我用到的软件说明一下。
如果你发现根据我的操作,你还是解决不了ModelSim后仿真的问题,那就可能是软件版本的问题。
1, ModelSim Se 6.1b2, Synplify Pro 7.5.13, ISE 5.2i (这个是老了点)4, WindowsXP(这个应该没有多大的关系)还有就是我使用的是verilog,我想VHDL的方法与verilog是差不多的,最多也就是在建库方面有点差别而已。
下面的这些方法,是我这3天搞出来的。
当然也参考了一些文章。
如果谁有更方便的方法,欢迎指出来。
我的邮箱是****************。
有空大家多交流。
一、为modelsim生成3个库。
首先,介绍一下这三个库。
Simprim_ver:用于布局布线后的仿真。
Unisim_ver :如果要做综合后的仿真,还要编译这个库。
Xilinxcorelib_ver:如果设计中调用了CoreGen产生的核,则还需要编译这个库。
我们要为modelsim生成的是标准库。
所谓的标准库就是modelsim运行后,会自动加载的库。
不过这方面我还不是很肯定。
因为我在后仿真时,还是要为仿真指定库的路径,不然modelsim找不到。
第一步:在modelsim环境下,新建工程,工程的路径与你想把库存储的路径一致。
第二步:新建库,库名起作simprim_ver。
我们首先就是要建的就是这个库。
第三步:在modelsim的命令栏上,打下如下命令:vlog -work simprim_ver d:/Xilinx/verilog/src/simprims/*.v其中的d:/Xilinx是我的Xilinx的安装路径,你把这个改成你的就行了。
实验调试中出现的问题

一.Modelsim实验调试的问题1.编译过程中的问题1)新建工程后:如果这里选择是creat new file ,一定记得这里把这里的Add file as type 改为verilog因为这里默认是VHDL.2)如果是add existing file :要把所有的工程文件,包括仿真文件放在 project location 里面。
或者在下面的选项卡中:选择copy to project directory !!注意了:由于我们用的软件都是自己破解的,所有,有时候即便选择了 copy to project directory 有时候编译还是会出错,所有我们还是自己把工程文件,v 拷贝到我们的工程目录中吧。
2.仿真中出现的问题:当编译成功之后我们就可以进行仿真了1)在仿真的时候有些版本的modelsim 仿真出来的波形是直线原因是我们要注意把Optimization 中的enable optimization 的选项取消了:2)当我们编译成功之后在仿真的过程中,还会经常碰到这样的错误:“#Error loading design”解答:loading design的问题就是你对每个模块编译后的内容,也就是你在work库里出现的东西提示你加载设计错误,就是说明你加载的东西在work 库里没有,这的问题的原因有两个:(1)testbench 没有写好(2)在modelsim编译的时候相关的文件没有添加到modelsim中。
所以我们的对应的解决办法也有两个:A.虽然我们编译通过了,但是可能有些字符拼写错误。
B.我们可以关掉软件,再重新打开重新编译,重新仿真。
3)仿真时遇到如图所示的情况:不能看到全局时,可以通过工具栏里这两个符号进行调节,结果如图:上面问题虽然解决了,但是result结果却让人头疼,根本看不清是多少,此时,可以通过如下步骤把他修改成十进制数字,效果如下图所示:是不是可以看得很清楚了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MODELSIM问题综述
——阿泽成长路
鉴于最近一直困于modelsim se 10.0c(win32/win64)的安装及破解,在借鉴了度娘提供的好多零散的信息后,今天好好归纳总结下权当做个备忘,也顺便给电子信息、通信专业及做数字系统设计的同学分享我的经验。
安装过程很常规,一直狂击next就ok,只是在安装过程中会产生一个选项(是否使用硬件级别证书),选择yes,即要求重新启动(注意安装路径不允许有中文与下划线)完成安装,度娘也说可以点no,总之对于软件的破解不会产生影响,至于后期的使用还未见太多端倪。
在我鼓捣的好多次中有过重启,也有点no,应该不会影响,但我建议还是照软件原意选择安装,值得一提的是安装过程还比较漫长需耐心等待。
在安装后就是软件的破解了。
1.解压modelsim-gcc-4.
2.1-mingw32vc9.zip/modelsim_se_10.0c.rar,然后将解压后的文件()覆盖(粘贴)到安装目录下的win64/win32目录下,如果win64/win32目录下已存在就选择替换,没有就直接保存。
2.打开patch_dll.bat同是在弹出的选项中选择运行MentorKG.exe,此时请耐心等待,正常情况下会弹出LICENSE.TXT文件,将其保存到modelsim10.0c安装目录下(与win64/win32同级存在!!!);然而也可能遇到运行patch_dll.bat但得不到LICENSE.TXT的情况这时就只有从外部直接复制一个LICENSE到安装目录下,至于这个LICENSE的得到就只有从别人那儿copy了。
3.以上步骤之后需要修改环境变量。
右键计算机-->属性-->高级系统设置-->环境变量,之后在系统变量中寻找E:\modeltech64_10.0c\license.txt(安装目录因人而异),选择编辑在原来值后加分号,再将变量值改为modelsim10.0c的安装目录+license.txt ,之后一路ok;但如果系统变量中无E:\modeltech64_10.0c\license.txt 则需要新建变量名:LM_LICENSE_FILE,变量值同上,之后ok。
4.运行modelsim破解安装完毕。
另外:在做模拟过程中也许会出现object栏无信号&wave无波形的情况,解决方案如下:现象:仿真时没有“object”,没有波形。
原因:软件本身的优化问题
解决方法:在安装目录下如C:\Modeltech_6.2b目录下找到modelsim.ini文件,将其属性改为可写即将原来选中的“可读”去掉(这一步可能没有,视情况而定)。
打开该文件将里面的VoptFlow = 1改为VoptFlow = 0。
值得一提的是,如果在修改modelsim.ini之前建立的project,在修改之后仍然会出现没有波形的情况,这时你只需要建立一个新的project 把你的代码移过去就行了。
因为在修改modelsim.ini之前建立的project还是默认VoptFlow = 1。
尽情享用吧!!!。