Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


chr_sue last won the day on May 14

chr_sue had the most liked content!

About chr_sue

  • Rank

Recent Profile Visitors

140 profile views
  1. You do not say anything about a relationship between interface A and B, i.e. can you do a few transactions on the cmd interface without needing the data from the data interface or vice versa. Please elaborate.
  2. Make it easy. Do a type cast to string. See below the code: module top; typedef enum {alpha, beta, gamma, delta, epsilon} my_enum; string my_string; my_enum state; initial begin state = beta; my_string = string'(state.name); $display("string = %s", my_string); end endmodule
  3. Please look here at Using UVM_LOG in https://verificationacademy.com/cookbook/messaging/usingmessaging
  4. You dot need a reference to the covergroup class. You can omit this line of code: cg_fsm_state cg_fsm_state_inst; In the constructor you are calling new directly on the coverage class name: cg_fsm_state = new();
  5. If you do not know from which piece of code this message comes set a reasonable timeout in the toplevel module of your UVM testbench.
  6. I believe the problem comes from here. The UVM Reference Manual says: If unmapped is True, the register does not occupy any physical addresses and the base address is ignored. Unmapped registers require a user-defined front door to be specified. The default value of unmapped shall be 0, which is FALSE. Because there is no physical address for this type of registers it will not be updated.
  7. I found an example on the Doulos webpage. The code is in the EDAPlayground: https://www.edaplayground.com/x/4vf Hope this helps.
  8. I believe you have a wrong understanding of the UVM RAL. A few aspects only: (1) the frontdoor sequence you are mentioning is not frontdoor/backdoor. It is a specific class to define a complex sequence related behavior. See the UVM Ref.Manual for the details. (2) the OSPI sequence does not go through the adapter using reg2bus and bus2reg. (3) The adapter is used to convert a generic UVM RAL sequence into a OSPI sequence. (4) Each register sequences has to have a specific access type like RO, RW etc. This might be a few ideas to work on your issue.
  9. The register adapter contains 2 functions: (1) bus2reg (2) reg2bus bus2reg implements the path from the pinlevel interface to the register layer. This is the path which returns the rD-data (ahb_hrdata). reg2bus implements the path from the register layer to the pimlevel interface. This is the path which is used to send the WR-data ahb_hwdata) from the register layer to the DUT.
  10. Unfortunately you do not show a piece of code. But the 3rd argument has to be a bit type (1'b1 for replacing).
  • Create New...