quartus中修改设计后多次调用modelsim太麻烦了,求简单方法。
我仿真后觉得不好,修改了一下设计(没有关掉modelsim),如果要再次单击runedasimulationtool->runRTLsimulation,就会出现这个错误...
我仿真后觉得不好,修改了一下设计(没有关掉modelsim),如果要再次单击run eda simulation tool->run RTL simulation,就会出现这个错误
我必须要关掉modelsim避免这个错误。
有什么简单一点的方法吗? 展开
我必须要关掉modelsim避免这个错误。
有什么简单一点的方法吗? 展开
1个回答
展开全部
你没有关掉ModelSim的情况下,重新运行当然会出现错误,ModelSim一次只能为一个工程编译。
至于简单的方法是有的:
1、你第一次运行ModelSim以后,在Modelsim的Transcript串口,按一下“上”键,会出现一个do XXXXX.do的命令,这条就是运行Modelsim的指令,先不用。你将它改为edit XXXXX.do,单击回车,会弹出一个窗口,你可以将窗口内的一下内容前面加上#,目的是为了防止再一次编译库,可以节省时间。弄好以后点击保存,关掉这个窗口。
vlib verilog_libs/altera_ver
vmap altera_ver ./verilog_libs/altera_ver
vlog -vlog01compat -work altera_ver {d:/altera/11.0/quartus/eda/sim_lib/altera_primitives.v}
vlib verilog_libs/lpm_ver
vmap lpm_ver ./verilog_libs/lpm_ver
vlog -vlog01compat -work lpm_ver {d:/altera/11.0/quartus/eda/sim_lib/220model.v}
vlib verilog_libs/sgate_ver
vmap sgate_ver ./verilog_libs/sgate_ver
vlog -vlog01compat -work sgate_ver {d:/altera/11.0/quartus/eda/sim_lib/sgate.v}
vlib verilog_libs/altera_mf_ver
vmap altera_mf_ver ./verilog_libs/altera_mf_ver
vlog -vlog01compat -work altera_mf_ver {d:/altera/11.0/quartus/eda/sim_lib/altera_mf.v}
vlib verilog_libs/altera_lnsim_ver
vmap altera_lnsim_ver ./verilog_libs/altera_lnsim_ver
vlog -sv -work altera_lnsim_ver {d:/altera/11.0/quartus/eda/sim_lib/altera_lnsim.sv}
vlib verilog_libs/cycloneive_ver
vmap cycloneive_ver ./verilog_libs/cycloneive_ver
vlog -vlog01compat -work cycloneive_ver {d:/altera/11.0/quartus/eda/sim_lib/cycloneive_atoms.v}
2、你可以在Quartus里面修改你的逻辑代码了,然后修改完了保存以后,直接在Modelsim的Transcript串口,按“上”键,找出刚才的do XXXXX.do命令,然后回车运行即可,此时的Modelsim将会按照你修改后程序进行仿真,但是注意,若主程序的端口和变量发生变化后,你需要修改你的testbench文件,不然报错。
这只是简单的编译,还有不懂的继续追问,若没有请采纳~
至于简单的方法是有的:
1、你第一次运行ModelSim以后,在Modelsim的Transcript串口,按一下“上”键,会出现一个do XXXXX.do的命令,这条就是运行Modelsim的指令,先不用。你将它改为edit XXXXX.do,单击回车,会弹出一个窗口,你可以将窗口内的一下内容前面加上#,目的是为了防止再一次编译库,可以节省时间。弄好以后点击保存,关掉这个窗口。
vlib verilog_libs/altera_ver
vmap altera_ver ./verilog_libs/altera_ver
vlog -vlog01compat -work altera_ver {d:/altera/11.0/quartus/eda/sim_lib/altera_primitives.v}
vlib verilog_libs/lpm_ver
vmap lpm_ver ./verilog_libs/lpm_ver
vlog -vlog01compat -work lpm_ver {d:/altera/11.0/quartus/eda/sim_lib/220model.v}
vlib verilog_libs/sgate_ver
vmap sgate_ver ./verilog_libs/sgate_ver
vlog -vlog01compat -work sgate_ver {d:/altera/11.0/quartus/eda/sim_lib/sgate.v}
vlib verilog_libs/altera_mf_ver
vmap altera_mf_ver ./verilog_libs/altera_mf_ver
vlog -vlog01compat -work altera_mf_ver {d:/altera/11.0/quartus/eda/sim_lib/altera_mf.v}
vlib verilog_libs/altera_lnsim_ver
vmap altera_lnsim_ver ./verilog_libs/altera_lnsim_ver
vlog -sv -work altera_lnsim_ver {d:/altera/11.0/quartus/eda/sim_lib/altera_lnsim.sv}
vlib verilog_libs/cycloneive_ver
vmap cycloneive_ver ./verilog_libs/cycloneive_ver
vlog -vlog01compat -work cycloneive_ver {d:/altera/11.0/quartus/eda/sim_lib/cycloneive_atoms.v}
2、你可以在Quartus里面修改你的逻辑代码了,然后修改完了保存以后,直接在Modelsim的Transcript串口,按“上”键,找出刚才的do XXXXX.do命令,然后回车运行即可,此时的Modelsim将会按照你修改后程序进行仿真,但是注意,若主程序的端口和变量发生变化后,你需要修改你的testbench文件,不然报错。
这只是简单的编译,还有不懂的继续追问,若没有请采纳~
追问
追答
附图比较麻烦,你看下个链接的博客,你可以学习一下,里面小技巧部分有介绍操作
http://www.cnblogs.com/emouse/archive/2012/07/08/2581223.html
关于你上面那个图rtl simulation仿真结果,应该是没有在testbench文件中附初值所致。或者你把你的testbench文件的内容发来看看。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询