modified run_phase -> main_phase #2458
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As per issue #1933 , I have modified
run_phasetomain_phaseto be in consistent with the use of other run time phases (reset_phase,confgure_phase) in the base test, firmware test and firmware riscof test.Now the problem with line 154 in uvmt_cv32e40p_firmware_test.sv is statements below are waiting on posedge of resetn. If we use
run_phaseit works fine becauserun_phasestarts at time 0 in parallel withreset_phaseand senses the posedge of resetn whenever it happens. But when I usemain_phaseinstead, I observed the line 154 waits on for resetn posedge and it never happens because thereset_phasehas already completed. Due to this the test hangs and never finishes. So, to run ci_check, I have commented the line 154, and checks passed as expected. The question : is it okay if we do not wait for posedge of resetn? if we were to wait on reset, then it is better to fork off the current reset, configure and run phase tasks in only one run_phase so the reset posedge in one thread can be detected correctly by other forked thread.On the other hand, if we would like to add on-the-fly reset feature as @MikeOpenHWGroup explained, then it is better to use reset, configure and main phases instead of
run_phase.