Normally, the interface file “axi_if.sv “ includes a” AxiPortDefines.inc” file , which has lots of `defines with default values, and may mismatch with your real design.
`define DW_VIP_AXI_ADDR_PORT_WIDTH 64
`define DW_VIP_AXI_ALEN_PORT_WIDTH 10
`define DW_VIP_AXI_ASIZE_PORT_WIDTH 3
`define DW_VIP_AXI_ABURST_PORT_WIDTH 2
`define DW_VIP_AXI_ALOCK_PORT_WIDTH 2
`define DW_VIP_AXI_ACACHE_PORT_WIDTH 4
`define DW_VIP_AXI_APROT_PORT_WIDTH 3
`define DW_VIP_AXI_AID_PORT_WIDTH 32
`define DW_VIP_AXI_AVALID_PORT_WIDTH 1
`define DW_VIP_AXI_AREADY_PORT_WIDTH 1
There are several ways to specify your own values:
1) Modify the “AxiPortDefines.inc” file directly;
2) Create a new file(”myAxiPortDefines.inc”) and specify your own values, then tell axi_if.sv to use your user-defined file;
3) Override the macros in your TB.