apb: Add user sideband signals to APB interface

Signed-off-by: Alex Forencich <alex@alexforencich.com>
This commit is contained in:
Alex Forencich
2025-09-30 15:19:07 -07:00
parent e836357c33
commit f4f473afeb

View File

@@ -14,19 +14,39 @@ interface taxi_apb_if #(
// Width of address bus in bits // Width of address bus in bits
parameter ADDR_W = 32, parameter ADDR_W = 32,
// Width of pstrb (width of data bus in words) // Width of pstrb (width of data bus in words)
parameter STRB_W = (DATA_W/8) parameter STRB_W = (DATA_W/8),
// Use pauser signal
parameter logic PAUSER_EN = 1'b0,
// Width of pauser signal
parameter PAUSER_W = 1,
// Use pwuser signal
parameter logic PWUSER_EN = 1'b0,
// Width of pwuser signal
parameter PWUSER_W = 1,
// Use pruser signal
parameter logic PRUSER_EN = 1'b0,
// Width of pruser signal
parameter PRUSER_W = 1,
// Use pbuser signal
parameter logic PBUSER_EN = 1'b0,
// Width of pbuser signal
parameter PBUSER_W = 1
) )
(); ();
logic [ADDR_W-1:0] paddr; logic [ADDR_W-1:0] paddr;
logic [2:0] pprot; logic [2:0] pprot;
logic psel; logic psel;
logic penable; logic penable;
logic pwrite; logic pwrite;
logic [DATA_W-1:0] pwdata; logic [DATA_W-1:0] pwdata;
logic [STRB_W-1:0] pstrb; logic [STRB_W-1:0] pstrb;
logic pready; logic pready;
logic [DATA_W-1:0] prdata; logic [DATA_W-1:0] prdata;
logic pslverr; logic pslverr;
logic [PAUSER_W-1:0] pauser;
logic [PWUSER_W-1:0] pwuser;
logic [PRUSER_W-1:0] pruser;
logic [PBUSER_W-1:0] pbuser;
modport mst ( modport mst (
output paddr, output paddr,
@@ -38,7 +58,11 @@ interface taxi_apb_if #(
output pstrb, output pstrb,
input pready, input pready,
input prdata, input prdata,
input pslverr input pslverr,
output pauser,
output pwuser,
input pruser,
input pbuser
); );
modport slv ( modport slv (
@@ -51,7 +75,11 @@ interface taxi_apb_if #(
input pstrb, input pstrb,
output pready, output pready,
output prdata, output prdata,
output pslverr output pslverr,
input pauser,
input pwuser,
output pruser,
output pbuser
); );
endinterface endinterface