RVSCC/test/test_single_cycle_core.sv

38 lines
762 B
Systemverilog
Raw Normal View History

`include "timescale.sv"
2023-02-26 23:26:11 +00:00
module test_single_cycle_core ();
logic clk, rst;
always #1 clk = ~clk;
instr_memory_if instr_mem_if ();
instr_memory #(
.FILE_PATH("../fw/test/test-core.mem")
) instr_mem (
.instr_mem_if(instr_mem_if.mem)
);
2023-02-26 23:26:11 +00:00
data_memory_if data_mem_if (
2023-02-26 23:26:11 +00:00
.clk(clk),
.rst(rst)
);
data_memory #(.NUM_BLOCKS(128)) data_mem (.data_mem_if(data_mem_if.ram));
2023-02-26 23:26:11 +00:00
single_cycle_datapath dut (
.clk(clk),
.rst(rst),
.instr_mem_if(instr_mem_if.datapath),
.data_mem_if(data_mem_if.datapath)
);
always @(posedge clk) data_mem_if.check_fw_test_core_assertions();
2023-02-26 23:26:11 +00:00
initial begin
clk = 0;
rst = 1;
#4;
rst = 0;
#1000;
$error("Program execution timeout");
2023-02-26 23:26:11 +00:00
end
endmodule