返回信息流本人使用的是modelsim SE 6.2d.要用Verilog实现程序的编写并用testbench验证.
情况描述如下:
现有一比较程序comp.v,同一文件夹下还有一个测试程序comptest.v.网上说仿真时只要把testbench文件和源文件放在一起编译,然后在仿真时只仿真testbench文件就可以了.但是我编译后在Start simulation里选择comptest.v的时候objects菜单里根本没有信号,选择comp.v的时候有信号但是拖到wave窗口里run -all也没有值,两个都选一起编译的时候情况也类似.
另外我在simulation的时候只选择comp.v,而在wave窗口用划波形的方法画了一段输入,然后run,此时的输出是对的.这说明testbench其实没有和源文件关联起来.
请问testbench在modelsim中到底应该怎么运行啊?!看起来很简单,就是搞不出来.
附源码:
comp.v:
module comp(equal,a,b);
input a,b;
output equal;
assign equal=(a==b)?1:0;
endmodule
comptest.v:
`timescale 1ns/1ns
`include "./comp.v"
module comptest;
reg a,b;
wire equal;
initial
begin
a=0;
b=0;
#100 a=0;b=1;
#100 a=1;b=1;
#100 a=1;b=0;
#100 $stop;
end
comp comp1(.equal(equal),.a(a),.b(b));
endmodule
程序很简单,就是还没有搞清楚软件的基本用法.......囧rz....
这是一条镜像帖。来源:北邮人论坛 / circuit / #11762同步于 2009/9/11
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Circuit机器人发帖
请教关于modelsim中testbench的使用问题
hgzxcc
2009/9/11镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
verilog。。。一年之前我还会。。现在不行了。。。
【 在 hgzxcc (走刀口) 的大作中提到: 】
: 本人使用的是modelsim SE 6.2d.要用Verilog实现程序的编写并用testbench验证.
: 情况描述如下:
: 现有一比较程序comp.v,同一文件夹下还有一个测试程序comptest.v.网上说仿真时只要把testbench文件和源文件放在一起编译,然后在仿真时只仿真testbench文件就可以了.但是我编译后在Start simulation里选择comptest.v的时候objects菜单里根本没有信号,选择comp.v的时候有信
: ...................
看不到信号很可能是因为modelsim默认开启优化功能,
默认就把你的信号全都给优化掉了,
这个功能备受大家诟病啊。
可以试试这样:Start simulation的时候,
下面有个优化的复选框,不要选中它,应该就行啦。
【 在 hgzxcc (走刀口) 的大作中提到: 】
: 本人使用的是modelsim SE 6.2d.要用Verilog实现程序的编写并用testbench验证.
: 情况描述如下:
: 现有一比较程序comp.v,同一文件夹下还有一个测试程序comptest.v.网上说仿真时只要把testbench文件和源文件放在一起编译,然后在仿真时只仿真testbench文件就可以了.但是我编译后在Start simulation里选择comptest.v的时候objects菜单里根本没有信号,选择comp.v的时候有信
: ...................
就是优化的问题!
设计优化包括:
不优化:完全不进行设计优化,所有信号可见,但仿真速度较慢(小工程也无所谓了)
优化,信号不可见:进行设计优化,但信号都不可见,速度最快。调试完全依赖于testbench的打印输出。
优化,具有完全可见性:进行设计优化,但又保证所有信号可见,速度较快,调试必备。
优化,自定义可见性:进行设计优化,自定义哪些模块及信号可见。
设计优化功能是用来提高仿真速度。对于小工程,可以选择不优化或者选择优化,完全可见性(full visibility)。
了解了以上概念之后,下面就介绍 “开始仿真+设计优化选择”的两种方式(实际还有更多)
方法一(这个文档上的):命令行
vopt +acc test_counter -o testcounter_opt (使用vopt表示进行设计优化,+acc表示完全可见,-o testcounter_opt表示把优化结果输出为新的名字。)
vsim testcounter_opt (vsim表示开始仿真,名字选择了优化之后的结果)
方法二 (菜单操作)
菜单Simulate->Start Simulation,在对话框中,work下选中顶层仿真文件,下部是设计优化的选择,去掉“Enable optimization"表示不进行设计优化;或者选择"Optimization Options",又打开了一个对话框,选择“Apply full visibility to all modules",这表示优化并且完全可见。然后两个对话框都点ok即可。