diff --git a/test_benches/verilator/TaigaTracer.cc b/test_benches/verilator/TaigaTracer.cc index 043a9d9..359868e 100644 --- a/test_benches/verilator/TaigaTracer.cc +++ b/test_benches/verilator/TaigaTracer.cc @@ -146,10 +146,13 @@ void TaigaTracer::tick() { if (check_instruction_issued(BENCHMARK_START_COLLECTION_NOP)) { - collect_stats = true; reset_stats(); + collect_stats = true; } - if (check_instruction_issued(BENCHMARK_END_COLLECTION_NOP)) { + else if (check_instruction_issued(BENCHMARK_RESUME_COLLECTION_NOP)) { + collect_stats = true; + } + else if (check_instruction_issued(BENCHMARK_END_COLLECTION_NOP)) { collect_stats = false; } diff --git a/test_benches/verilator/TaigaTracer.h b/test_benches/verilator/TaigaTracer.h index 104d5c3..8f4f537 100644 --- a/test_benches/verilator/TaigaTracer.h +++ b/test_benches/verilator/TaigaTracer.h @@ -32,6 +32,7 @@ #define COMPLIANCE_SIG_PHASE_NOP 0x00B00013U #define BENCHMARK_START_COLLECTION_NOP 0x00C00013U #define BENCHMARK_END_COLLECTION_NOP 0x00D00013U +#define BENCHMARK_RESUME_COLLECTION_NOP 0x00E00013U #define ERROR_TERMINATION_NOP 0x00F00013U #define SUCCESS_TERMINATION_NOP 0x00A00013U