Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add RVFI CSRs tracing #184

Merged

Conversation

MarioOpenHWGroup
Copy link

Implementation of RVFI CSRs.

This supposes that the testbench binds a rvfi_unified_csr_if in the cs_registers.sv module.

@@ -12,6 +12,7 @@

`include "prim_assert.sv"

import cve2_pkg::*;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you move this after the module declaration?


`include "prim_assert.sv"

module cve2_cs_registers #(
  parameter bit               DbgTriggerEn      = 0,
  parameter int unsigned      DbgHwBreakNum     = 1,
  parameter int unsigned      MHPMCounterNum    = 10,
  parameter int unsigned      MHPMCounterWidth  = 40,
  parameter bit               PMPEnable         = 0,
  parameter int unsigned      PMPGranularity    = 0,
  parameter int unsigned      PMPNumRegions     = 4,
  parameter bit               RV32E             = 0,
  parameter cve2_pkg::rv32m_e RV32M             = cve2_pkg::RV32MFast,
  parameter cve2_pkg::rv32b_e RV32B             = cve2_pkg::RV32BNone
) (
  // Clock and Reset
  input  logic                 clk_i,
  input  logic                 rst_ni,
....
 input  logic                 wfi_wait_i,                  // core waiting for interrupt
  input  logic                 div_wait_i                   // core waiting for divide
);

  import cve2_pkg::*;

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure!

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi I am started to use this comit, I a unable to compile the design , It is throwing error in cve2_cs_register
where traces is added
Error found while trying to resolve cross-module reference.
token 'clknrst_if'. Originating module 'cve2_cs_registers' like this

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This has to be used with the new cv32e20-dv repo as this has the bind interfaces

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See #271 for additional discussion on this point.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MarioOpenHWGroup
I am not seeing anything in cv32e20 -dv , I am only seeing coming soon.
could help me out how to compile the design without error , I checked out this version.
I created allfile.txt with the help of cv32e20_manifest.flist and doing compile , do i need to add somthing to resolve the interface signals.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

my initial requirement is to fetch the data and write and read some date from memory,
how we need to provide the address map
I am new to this that why I am asking .

@davideschiavone davideschiavone changed the title RVFI CSRs tracing add RVFI CSRs tracing Feb 26, 2024
@davideschiavone davideschiavone merged commit 1786fbf into openhwgroup:main Feb 26, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants