赞
踩
首先新建一个文件夹【test5】
打开Modelsim,依次选择【File】->【Change Directory】,把目录选择到创建的【test5】文件夹。
创建库。依次选择【File】->【New】->【Library】
一般我们选择第三个,库名和物理名称设置成work,点击OK。此时【test5】文件夹下就会多一个work的文件夹。
创建项目。Project Name设置为test5,其余默认,OK。
创建新文件。【Create New File】。
此时,我仿真一个加法器。创建一个文件名为add的verilog文件。
同时还要创建一个testbench文件,用来测试,命名为add_tb,同样是verilog文件(有的地方是.vt文件,一样的)。
编写代码:
add.v
module add(
input wire [7:0] a,
input wire [7:0] b,
output reg [8:0] out
);
always@(*)
begin
out = a + b;
end
endmodule
add_tb.v
`timescale 1ns/1ns module add_tb (); reg [7:0] a; reg [7:0] b; wire [8:0] out; add i1( .a(a), .b(b), .out(out) ); initial begin a = 8'd 1; b = 8'd 2; # 10_000; a = 8'd 11; b = 8'd 12; # 10_000; a = 8'd 21; b = 8'd 22; # 10_000; $stop; end endmodule
写完之后记得保存,不然编译会出问题。
选中add和add_tb文件,OK。
仿真完成。如果没有显示,记得把【Layout】选成【Simulate】。
选择【Library】->【work】,选中add_tb文件,【Simulate】
把【Object】里的文件都拖到右边的【Wave】中(如果没有【Object】,则到【View】中勾选即可)。点击Run-All出现波形。
为了方便观察波形,我们可以选择无符号类型的标注
调节上方的放大镜可以放大/缩小波形。可以看到在0,10000ns和20000ns时刻的时刻实现了相加。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。