Files
PeakRDL-regblock/test/tb.sv
2021-12-04 17:31:12 -08:00

52 lines
917 B
Systemverilog

module tb;
timeunit 1ns;
timeprecision 1ps;
logic rst = '1;
logic clk = '0;
initial forever begin
#10ns;
clk = ~clk;
end
apb3_intf apb();
apb3_intf_driver driver(
.clk(clk),
.m_apb(apb)
);
test_regblock dut (
.clk(clk),
.rst(rst),
.s_apb(apb),
.hwif_out()
);
initial begin
logic [31:0] rd_data;
repeat(5) @(posedge clk);
rst = '0;
repeat(5) @(posedge clk);
driver.read('h000, rd_data);
driver.write('h000, 'h0);
driver.read('h000, rd_data);
driver.read('h100, rd_data);
driver.write('h100, 'h0);
driver.read('h100, rd_data);
driver.read('h000, rd_data);
driver.write('h000, 'hFFFF_FFFF);
driver.read('h000, rd_data);
repeat(5) @(posedge clk);
$finish();
end
endmodule