概要
windowsでiverilogやってみた。
cpu見つけたので、テストベンチ書いてみた。
参考にしたページ
サンプルコード
module test;
reg clk,
rst;
wire out_pin;
Simple8bitCPU u(.clk(clk), .rst(rst), .out_pin(out_pin));
always
#1
clk = ~clk;
initial
begin
//$dumpfile("test.vcd");
//$dumpvars(0, test);
$monitor("%d", out_pin);
clk = 0;
rst = 0;
#2
rst = 1;
#2
rst = 0;
#200
$finish;
end
endmodule
実行結果
>vvp a.out
x x x x x
0 0 0 0 0
0 0 0 1 0
0 1 0 1 0
1 1 0 1 0
0 1 0 1 0
0 0 0 1 0
0 0 0 0 0
0 0 1 0 0
255 0 1 0 0
255 0 1 1 0
255 1 1 1 0
1 1 1 1 0
0 1 1 1 0
0 0 1 1 0
0 0 1 0 0
0 0 1 0 1
0 0 0 0 1
255 0 0 0 1
255 0 0 1 1
255 1 0 1 1
1 1 0 1 1
0 1 0 1 1
0 0 0 1 1
0 0 0 0 1
0 0 0 0 0
0 0 1 0 0
255 0 1 0 0
255 0 1 1 0
255 1 1 1 0
1 1 1 1 0
0 1 1 1 0
0 0 1 1 0
0 0 1 0 0
0 0 1 0 1
0 0 0 0 1
255 0 0 0 1
255 0 0 1 1
255 1 0 1 1
1 1 0 1 1
0 1 0 1 1
0 0 0 1 1
0 0 0 0 1
0 0 0 0 0
0 0 1 0 0
255 0 1 0 0
255 0 1 1 0
255 1 1 1 0
1 1 1 1 0
0 1 1 1 0
0 0 1 1 0
0 0 1 0 0
s8.v:189: $finish called at 204 (1s)
以上。