interface axi_if
|
interface axi_if
|
#(AXI_WID_WIDTH = 8,
|
#(AXI_ID_W = 8,
|
AXI_ADDR_WIDTH = 32,
|
AXI_ADDR_W = 32,
|
AXI_DATA_WIDTH = 32,
|
AXI_DATA_W = 32,
|
AXI_PROT_WIDTH = 3,
|
AXI_PROT_W = 3,
|
AXI_STB_WIDTH = 4,
|
AXI_STB_W = 4,
|
AXI_LEN_W = 4,
|
AXI_LEN_W = 4,
|
AXI_ASIZE_W = 3,
|
AXI_SIZE_W = 3,
|
AXI_ABURST_W = 2,
|
AXI_BURST_W = 2,
|
AXI_ALOCK_W = 2,
|
AXI_LOCK_W = 2,
|
AXI_ACACHE_W = 4,
|
AXI_CACHE_W = 4,
|
AXI_RESP_W = 2
|
AXI_RESP_W = 2
|
)
|
)
|
();
|
();
|
|
|
//Write control channel signals
|
//Write control channel signals
|
logic [AXI_WID_WIDTH - 1:0] AWID ;
|
logic [AXI_ID_W - 1:0] AWID ;
|
logic [AXI_ADDR_WIDTH - 1:0] AWADDR ;
|
logic [AXI_ADDR_W - 1:0] AWADDR ;
|
logic [AXI_LEN_W - 1:0] AWLEN ;
|
logic [AXI_LEN_W - 1:0] AWLEN ;
|
logic [AXI_ASIZE_W - 1:0] AWSIZE ;
|
logic [AXI_SIZE_W - 1:0] AWSIZE ;
|
logic [AXI_ABURST_W - 1:0] AWBURST ;
|
logic [AXI_BURST_W - 1:0] AWBURST ;
|
logic [AXI_ALOCK_W - 1:0] AWLOCK ;
|
logic [AXI_LOCK_W - 1:0] AWLOCK ;
|
logic [AXI_ACACHE_W - 1:0] AWCACHE ;
|
logic [AXI_CACHE_W - 1:0] AWCACHE ;
|
logic [AXI_PROT_WIDTH - 1:0] AWPROT ;
|
logic [AXI_PROT_W - 1:0] AWPROT ;
|
logic AWVALID ;
|
logic AWVALID ;
|
logic AWREADY ;
|
logic AWREADY ;
|
//write data channel signals
|
//write data channel signals
|
logic [AXI_WID_WIDTH - 1:0] WID ;
|
logic [AXI_ID_W - 1:0 ] WID ;
|
logic [AXI_DATA_WIDTH - 1:0] WDATA ;
|
logic [AXI_DATA_W - 1:0] WDATA ;
|
logic [AXI_STB_WIDTH - 1:0] WSTRB ;
|
logic [AXI_STB_W - 1:0] WSTRB ;
|
logic WLAST ;
|
logic WLAST ;
|
logic WVALID ;
|
logic WVALID ;
|
logic WREADY ;
|
logic WREADY ;
|
//write response channel
|
//write response channel
|
logic [AXI_WID_WIDTH - 1:0] BID ;
|
logic [AXI_ID_W - 1:0] BID ;
|
logic [AXI_RESP_W - 1:0] BRESP ;
|
logic [AXI_RESP_W - 1:0] BRESP ;
|
logic BVALID ;
|
logic BVALID ;
|
logic BREADY ;
|
logic BREADY ;
|
//Read control channel signals
|
//Read control channel signals
|
logic [AXI_WID_WIDTH - 1:0] ARID ;
|
logic [AXI_ID_W - 1:0] ARID ;
|
logic [AXI_ADDR_WIDTH - 1:0] ARADDR ;
|
logic [AXI_ADDR_W - 1:0] ARADDR ;
|
logic [AXI_LEN_W - 1:0] ARLEN ;
|
logic [AXI_LEN_W - 1:0] ARLEN ;
|
logic [AXI_ASIZE_W - 1:0] ARSIZE ;
|
logic [AXI_SIZE_W - 1:0] ARSIZE ;
|
logic [AXI_ABURST_W - 1:0] ARBURST ;
|
logic [AXI_BURST_W - 1:0] ARBURST ;
|
logic [AXI_ALOCK_W - 1:0] ARLOCK ;
|
logic [AXI_LOCK_W - 1:0] ARLOCK ;
|
logic [AXI_ACACHE_W - 1:0] ARCACHE ;
|
logic [AXI_CACHE_W - 1:0] ARCACHE ;
|
logic [AXI_PROT_WIDTH - 1:0] ARPROT ;
|
logic [AXI_PROT_W - 1:0] ARPROT ;
|
logic ARVALID ;
|
logic ARVALID ;
|
logic ARREADY ;
|
logic ARREADY ;
|
//Read data channel signals
|
//Read data channel signals
|
logic [AXI_WID_WIDTH - 1:0] RID ;
|
logic [AXI_ID_W - 1:0] RID ;
|
logic [AXI_DATA_WIDTH - 1:0] RDATA ;
|
logic [AXI_DATA_W - 1:0] RDATA ;
|
logic [AXI_RESP_W - 1:0] RRESP ;
|
logic [AXI_RESP_W - 1:0] RRESP ;
|
logic RLAST ;
|
logic RLAST ;
|
logic RVALID ;
|
logic RVALID ;
|
logic RREADY ;
|
logic RREADY ;
|
|
|
modport initiator (
|
modport initiator (
|
//Write control channel signals
|
//Write control channel signals
|
output AWID ,
|
output AWID ,
|
output AWADDR ,
|
output AWADDR ,
|
output AWLEN ,
|
output AWLEN ,
|
output AWSIZE ,
|
output AWSIZE ,
|
output AWBURST ,
|
output AWBURST ,
|
output AWLOCK ,
|
output AWLOCK ,
|
output AWCACHE ,
|
output AWCACHE ,
|
output AWPROT ,
|
output AWPROT ,
|
output AWVALID ,
|
output AWVALID ,
|
input AWREADY ,
|
input AWREADY ,
|
//write data channel signals
|
//write data channel signals
|
output WID ,
|
output WID ,
|
output WDATA ,
|
output WDATA ,
|
output WSTRB ,
|
output WSTRB ,
|
output WLAST ,
|
output WLAST ,
|
output WVALID ,
|
output WVALID ,
|
input WREADY ,
|
input WREADY ,
|
//write response channel
|
//write response channel
|
input BID ,
|
input BID ,
|
input BRESP ,
|
input BRESP ,
|
input BVALID ,
|
input BVALID ,
|
output BREADY ,
|
output BREADY ,
|
//Read control channel signals
|
//Read control channel signals
|
output ARID ,
|
output ARID ,
|
output ARADDR ,
|
output ARADDR ,
|
output ARLEN ,
|
output ARLEN ,
|
output ARSIZE ,
|
output ARSIZE ,
|
output ARBURST ,
|
output ARBURST ,
|
output ARLOCK ,
|
output ARLOCK ,
|
output ARCACHE ,
|
output ARCACHE ,
|
output ARPROT ,
|
output ARPROT ,
|
output ARVALID ,
|
output ARVALID ,
|
input ARREADY ,
|
input ARREADY ,
|
//Read data channel signals
|
//Read data channel signals
|
input RID ,
|
input RID ,
|
input RDATA ,
|
input RDATA ,
|
input RRESP ,
|
input RRESP ,
|
input RLAST ,
|
input RLAST ,
|
input RVALID ,
|
input RVALID ,
|
output RREADY
|
output RREADY
|
);
|
);
|
|
|
modport target (
|
modport target (
|
//Write control channel signals
|
//Write control channel signals
|
input AWID ,
|
input AWID ,
|
input AWADDR ,
|
input AWADDR ,
|
input AWLEN ,
|
input AWLEN ,
|
input AWSIZE ,
|
input AWSIZE ,
|
input AWBURST ,
|
input AWBURST ,
|
input AWLOCK ,
|
input AWLOCK ,
|
input AWCACHE ,
|
input AWCACHE ,
|
input AWPROT ,
|
input AWPROT ,
|
input AWVALID ,
|
input AWVALID ,
|
output AWREADY ,
|
output AWREADY ,
|
//write data channel signals
|
//write data channel signals
|
input WID ,
|
input WID ,
|
input WDATA ,
|
input WDATA ,
|
input WSTRB ,
|
input WSTRB ,
|
input WLAST ,
|
input WLAST ,
|
input WVALID ,
|
input WVALID ,
|
output WREADY ,
|
output WREADY ,
|
//write response channel
|
//write response channel
|
output BID ,
|
output BID ,
|
output BRESP ,
|
output BRESP ,
|
output BVALID ,
|
output BVALID ,
|
input BREADY ,
|
input BREADY ,
|
//Read control channel signals
|
//Read control channel signals
|
input ARID ,
|
input ARID ,
|
input ARADDR ,
|
input ARADDR ,
|
input ARLEN ,
|
input ARLEN ,
|
input ARSIZE ,
|
input ARSIZE ,
|
input ARBURST ,
|
input ARBURST ,
|
input ARLOCK ,
|
input ARLOCK ,
|
input ARCACHE ,
|
input ARCACHE ,
|
input ARPROT ,
|
input ARPROT ,
|
input ARVALID ,
|
input ARVALID ,
|
output ARREADY ,
|
output ARREADY ,
|
//Read data channel signals
|
//Read data channel signals
|
output RID ,
|
output RID ,
|
output RDATA ,
|
output RDATA ,
|
output RRESP ,
|
output RRESP ,
|
output RLAST ,
|
output RLAST ,
|
output RVALID ,
|
output RVALID ,
|
input RREADY
|
input RREADY
|
);
|
);
|
|
|
endinterface
|
endinterface
|
|
|
|
|