cva6 icon indicating copy to clipboard operation
cva6 copied to clipboard

[BUG] rvfi_instr_t type defined in several files

Open CoralieAllioux opened this issue 1 year ago • 0 comments

Is there an existing CVA6 bug for this?

  • [X] I have searched the existing bug issues

Bug Description

We are currently porting the verification to be compliant with Cadence Xcelium simulator. The objective is to use the current verification flow and adapt it, to add the Cadence simulator.

This issue concerns the rvfi_instr_t type, used for rvfi_agent and cva6_rvfi module.

Currently, rvfi_instr_t type is defined in cva6/verif/tb/uvmt/uvmt_cva6_tb.sv and cva6/verif/tests/uvmt/uvmt_cva6_base_test.sv. It could be cleaner to use only one definition of the typedef and take advantage of parameter types or a common package instead.

The suggested solution is to define one time rvfi_instr_t in cva6/core-v-verif/lib/uvm_agents/uvma_rvfi/uvma_rvfi_utils.sv, since that type is directly linked to the RVFI agent. What is your opinion? Is this the good place for rvfi_instr_t? We are ready to submit a PR if this solution seems good to you.

cva6/core/cva6_rvfi.sv is not included in cva6/core/cva6.sv but in cva6/verif/tb/uvmt/cva6_tb_wrapper.sv, the RTL and UVM border is blurry for RVFI, from our point of view. What is your strategy about RVFI file hierarchy?

CoralieAllioux avatar Feb 15 '24 09:02 CoralieAllioux