fix in WA fo Aldec Riviera rand cannot be defined in packed struct
@@ -1046,9 +1046,17 @@ package riscv_instr_pkg;
// TODO (udinator) allow a full 34 bit address for rv32?
`ifdef _VCP //GRK958
typedef struct packed {
+ bit l;
+ bit [1:0] zero;
+ pmp_addr_mode_t a;
+ bit x;
+ bit w;
+ bit r;
+ // RV32: the pmpaddr is the top 32 bits of a 34 bit PMP address
+ // RV64: the pmpaddr is the top 54 bits of a 56 bit PMP address
+ bit [XLEN - 1 : 0] offset;
`else
typedef struct{
-`endif
rand bit l;
bit [1:0] zero;
rand pmp_addr_mode_t a;
@@ -1058,6 +1066,7 @@ package riscv_instr_pkg;
// RV32: the pmpaddr is the top 32 bits of a 34 bit PMP address
// RV64: the pmpaddr is the top 54 bits of a 56 bit PMP address
rand bit [XLEN - 1 : 0] offset;
+`endif
} pmp_cfg_reg_t;
function automatic string hart_prefix(int hart = 0);
