modelsim输入信号赋值示例:
vlib wormodelsimk //新建work库;
vmap work //将work库映射到当前工作目录下;
vlog counter.v //新建counter.v文件,默认编译到work库下;
vsim -L work work.counter -t 1ns //仿真work库中名为counter模块,最小时间单位为1ns;
add wave -r/ * //将所有信号加入到波形图中去;
force a 16#aa //将a赋值为16进制的AA(10101010);
force b 164bb //将b赋值为16进制的BB(10111011);
force n_rst 1//将n_rst信号置1;
run 40 //运行40(ns),即40个最小单位时间;
force n_rst 0 //将n_rst信号置0;
run 20 //运行40(ns);
force n_rst 1 //将n_rst信号置1;
force a 16#55 //将a赋值为16进制的55(01010101);
force b 16#aa //将b赋值为16进制的AA(10101010);
run 20 //运行20ns;
扩展资料
在Modelsim中,将工作目录切换到counter.v和counter.do两个文件所在目录下,然后在命令行中输入 do counter.do即可。
PS:1,如果在仿真的时候要修改.do文件,需要现在modelsim里运行quit -sim,退出仿真,然后修改.do文件,再保存;
用modelsim的时候,在sim中选中测试程序,点鼠标右键add->addall
signals
to
wave,这样就行了
或者,在想看的信号所在模块中将这些信号引出来,作为输出,这样在输出中也看得到
IP核生成文件:(Xilinx/Altera 同)IP核生成器生成 ip 后有两个文件对我们比较有用,假设生成了一个 asyn_fifo 的核,则asyn_fifo.veo 给出了例化该核方式(或者在 Edit->Language Template->COREGEN 中找到verilog/VHDL 的例化方式)。asyn_fifo.v 是该核的行为模型,主要调用了 xilinx 行为模型库的模块,仿真时该文件也要加入工程。2.调试方便。在 ISE/Quartus 中调用 modelsim仿真只能看到输入输出信 号,而对于设计的中间信号/变量,特别是ip核的内部信号/变量无法观测。而在modelsim中直接仿真可以观测设计中出现的任何信号/变量无和 ip 核内的任何信号/变量,这样我们设计的数据流向就可以很清楚的表示出来,还可以检测不同编程方式的处理效果,极大的方便了调试。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)