mirror of
https://github.com/retroSoC/retroSoC.git
synced 2026-11-06 14:55:14 +00:00
feat: add test status handling to sysctrl and integrate with simulation framework
- Introduced test status signals (test_done_o, test_pass_o, test_code_o) in sysctrl interface and module. - Updated memory map to include TEST_STATUS offset. - Enhanced retrosoc_tb to monitor test completion and report results. - Modified Emulator to handle test status and return appropriate exit codes. - Updated formal verification to include assertions for test status. - Added CoreMark log parsing script and integrated it into the regression tests. - Implemented tests for test status handling in sysctrl_fault_tb. - Adjusted simulation success and failure markers in various scripts and tests. - Ensured compatibility with existing performance logging and regression testing frameworks.
This commit is contained in:
45 files changed
+1209
-81
No files matched your search
@@ -143,6 +143,26 @@ module sysctrl_fault_tb;
|
||||
$fatal(1, "user core stop state was not recorded");
|
||||
end
|
||||
|
||||
read_register(32'h1000_B084, read_data);
|
||||
if (read_data !== 32'h0000_0000) begin
|
||||
$fatal(1, "test status did not reset");
|
||||
end
|
||||
write_register(32'h1000_B084, 32'h0000_5A01);
|
||||
read_register(32'h1000_B084, read_data);
|
||||
if (read_data !== 32'h0000_0000) begin
|
||||
$fatal(1, "invalid test status write was accepted");
|
||||
end
|
||||
write_register(32'h1000_B084, 32'h8000_5A01);
|
||||
read_register(32'h1000_B084, read_data);
|
||||
if (read_data !== 32'h8000_5A01) begin
|
||||
$fatal(1, "test pass status was not recorded");
|
||||
end
|
||||
write_register(32'h1000_B084, 32'h8000_0B00);
|
||||
read_register(32'h1000_B084, read_data);
|
||||
if (read_data !== 32'h8000_5A01) begin
|
||||
$fatal(1, "terminal test status was overwritten");
|
||||
end
|
||||
|
||||
$display("sysctrl fault and user core control test passed");
|
||||
$finish;
|
||||
end
|
||||
|
||||
Reference in new issue
Block a user