1.安装需要的工具
sudo apt-get install iverilog
sudo apt-get install gtkwave
2./home/nh/icarus/shishi路径下有两个文件simple.v和simple_tb.v;
simple.v文件的内容如下:
module simple(A, B);
input [3:0] A;
output [3:0] B;
// mix up the input bits
assign B = { A[0], A[2], A[1], A[3] };
endmodule
simple_tb.v文件的内容如下:
module simple_tb;
reg [3:0] A = 4'b1010;
wire [3:0] B;
initial
begin
$dumpfile("simple.vcd");
$dumpvars(0, s);
$monitor("A is %b, B is %b.", A, B);
#50 A = 4'b1100;
#50 $finish;
end
simple s(A, B);
endmodule
3.进入/home/nh/icarus/shishi路径下
执行下面命令进行编译:
iverilog -o simple.vvp simple.v simple_tb.v
输入下列命令进行仿真:
vvp simple.vvp
会得到下列输出:
执行下列命令查看波形:
gtkwave simple.vcd
得到输出波形如下:
如果没有显示上述波形,请点击窗口左上角simple_tb左侧的‘+’号,会出现‘S’,然后点击'S',在Type Signals中会出现wire A[3:0]和wire B[3:0];然后分别点击wire A[3:0],然后点击'Insert'按钮;最后分别点击wire B[3:0],然后点击'Insert'按钮;就会得到相应的波形。