Testbench
Testbench
// or browse Examples
module pc_tb();
reg clk;
reg rst;
reg branch_flag;
reg [31:0] instruction_in;
Program_Counter uut (
.clk(clk),
.rst(rst),
.branch_flag(branch_flag),
.instruction_in(instruction_in),
.pc_value(pc_value)
);
initial begin
clk = 0;
rst = 0;
branch_flag = 0;
instruction_in = 32'b0;
rst = 1;
#10;
rst = 0;
#10;
instruction_in = instruction_memory[0];
#20;
branch_flag = 1;
instruction_in = instruction_memory[1];
#10;
branch_flag = 0;
instruction_in = instruction_memory[2];
#10;
instruction_in = instruction_memory[3];
#10;
$finish;
end
initial begin
$monitor("At time %t, PC Value = %h, Instruction = %h", $time, pc_value,
instruction_in);
end
endmodule