smu_axi_xbar_pkg
Hold SMU AXI crossbar types, fabric widths, configuration, and connectivity matrix.
Declare the 56/64 slave and expanded-ID master channel types used by smu_axi_xbar, the address rule type whose end address is one bit wider than the address, the axi_xbar configuration, and the input-to-output connectivity matrix. The runtime address rule values live in the crossbar module itself.
axi_56_64_addr_t
Protocol: axi_56_64 (AXI4, 56-bit addr, 64-bit data)
Alias for logic [55:0]
axi_56_64_data_t
Alias for logic [63:0]
axi_56_64_strb_t
Alias for logic [7:0]
axi_56_64_id_t
Alias for logic [7:0]
axi_56_64_user_t
Alias for logic [11:0]
axi_56_64_aw_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | axi_56_64_id_t | |
addr | axi_56_64_addr_t | |
len | axi_pkg::len_t | |
size | axi_pkg::size_t | |
burst | axi_pkg::burst_t | |
lock | logic | |
cache | axi_pkg::cache_t | |
prot | axi_pkg::prot_t | |
qos | axi_pkg::qos_t | |
region | axi_pkg::region_t | |
atop | axi_pkg::atop_t | |
user | axi_56_64_user_t |
axi_56_64_w_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
data | axi_56_64_data_t | |
strb | axi_56_64_strb_t | |
last | logic | |
user | axi_56_64_user_t |
axi_56_64_b_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | axi_56_64_id_t | |
resp | axi_pkg::resp_t | |
user | axi_56_64_user_t |
axi_56_64_ar_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | axi_56_64_id_t | |
addr | axi_56_64_addr_t | |
len | axi_pkg::len_t | |
size | axi_pkg::size_t | |
burst | axi_pkg::burst_t | |
lock | logic | |
cache | axi_pkg::cache_t | |
prot | axi_pkg::prot_t | |
qos | axi_pkg::qos_t | |
region | axi_pkg::region_t | |
user | axi_56_64_user_t |
axi_56_64_r_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | axi_56_64_id_t | |
data | axi_56_64_data_t | |
resp | axi_pkg::resp_t | |
last | logic | |
user | axi_56_64_user_t |
axi_56_64_req_t
Packed struct
| Field | Type | Description |
|---|---|---|
aw | axi_56_64_aw_chan_t | |
aw_valid | logic | |
w | axi_56_64_w_chan_t | |
w_valid | logic | |
b_ready | logic | |
ar | axi_56_64_ar_chan_t | |
ar_valid | logic | |
r_ready | logic |
axi_56_64_resp_t
Packed struct
| Field | Type | Description |
|---|---|---|
aw_ready | logic | |
ar_ready | logic | |
w_ready | logic | |
b_valid | logic | |
b | axi_56_64_b_chan_t | |
r_valid | logic | |
r | axi_56_64_r_chan_t |
axi_out_addr_t
=========================================================================
Alias for logic [XbarAddrWidth-1:0]
axi_out_data_t
Alias for logic [XbarDataWidth-1:0]
axi_out_strb_t
Alias for logic [XbarStrbWidth-1:0]
axi_out_id_t
Alias for logic [XbarOutputIdW-1:0]
axi_out_user_t
Alias for logic [XbarUserWidth-1:0]
axi_out_aw_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | axi_out_id_t | |
addr | axi_out_addr_t | |
len | axi_pkg::len_t | |
size | axi_pkg::size_t | |
burst | axi_pkg::burst_t | |
lock | logic | |
cache | axi_pkg::cache_t | |
prot | axi_pkg::prot_t | |
qos | axi_pkg::qos_t | |
region | axi_pkg::region_t | |
atop | axi_pkg::atop_t | |
user | axi_out_user_t |
axi_out_w_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
data | axi_out_data_t | |
strb | axi_out_strb_t | |
last | logic | |
user | axi_out_user_t |
axi_out_b_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | axi_out_id_t | |
resp | axi_pkg::resp_t | |
user | axi_out_user_t |
axi_out_ar_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | axi_out_id_t | |
addr | axi_out_addr_t | |
len | axi_pkg::len_t | |
size | axi_pkg::size_t | |
burst | axi_pkg::burst_t | |
lock | logic | |
cache | axi_pkg::cache_t | |
prot | axi_pkg::prot_t | |
qos | axi_pkg::qos_t | |
region | axi_pkg::region_t | |
user | axi_out_user_t |
axi_out_r_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | axi_out_id_t | |
data | axi_out_data_t | |
resp | axi_pkg::resp_t | |
last | logic | |
user | axi_out_user_t |
axi_out_req_t
Packed struct
| Field | Type | Description |
|---|---|---|
aw | axi_out_aw_chan_t | |
aw_valid | logic | |
w | axi_out_w_chan_t | |
w_valid | logic | |
b_ready | logic | |
ar | axi_out_ar_chan_t | |
ar_valid | logic | |
r_ready | logic |
axi_out_resp_t
Packed struct
| Field | Type | Description |
|---|---|---|
aw_ready | logic | |
ar_ready | logic | |
w_ready | logic | |
b_valid | logic | |
b | axi_out_b_chan_t | |
r_valid | logic | |
r | axi_out_r_chan_t |
xbar_addr_t
Alias for logic [XbarAddrWidth-1:0]
xbar_data_t
Alias for logic [XbarDataWidth-1:0]
xbar_strb_t
Alias for logic [XbarStrbWidth-1:0]
xbar_slv_id_t
Alias for logic [MaxInputIdW-1:0]
xbar_mst_id_t
Alias for logic [XbarOutputIdW-1:0]
xbar_user_t
Alias for logic [XbarUserWidth-1:0]
xbar_slv_aw_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | xbar_slv_id_t | |
addr | xbar_addr_t | |
len | axi_pkg::len_t | |
size | axi_pkg::size_t | |
burst | axi_pkg::burst_t | |
lock | logic | |
cache | axi_pkg::cache_t | |
prot | axi_pkg::prot_t | |
qos | axi_pkg::qos_t | |
region | axi_pkg::region_t | |
atop | axi_pkg::atop_t | |
user | xbar_user_t |
xbar_slv_w_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
data | xbar_data_t | |
strb | xbar_strb_t | |
last | logic | |
user | xbar_user_t |
xbar_slv_b_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | xbar_slv_id_t | |
resp | axi_pkg::resp_t | |
user | xbar_user_t |
xbar_slv_ar_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | xbar_slv_id_t | |
addr | xbar_addr_t | |
len | axi_pkg::len_t | |
size | axi_pkg::size_t | |
burst | axi_pkg::burst_t | |
lock | logic | |
cache | axi_pkg::cache_t | |
prot | axi_pkg::prot_t | |
qos | axi_pkg::qos_t | |
region | axi_pkg::region_t | |
user | xbar_user_t |
xbar_slv_r_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | xbar_slv_id_t | |
data | xbar_data_t | |
resp | axi_pkg::resp_t | |
last | logic | |
user | xbar_user_t |
xbar_slv_req_t
Packed struct
| Field | Type | Description |
|---|---|---|
aw | xbar_slv_aw_chan_t | |
aw_valid | logic | |
w | xbar_slv_w_chan_t | |
w_valid | logic | |
b_ready | logic | |
ar | xbar_slv_ar_chan_t | |
ar_valid | logic | |
r_ready | logic |
xbar_slv_resp_t
Packed struct
| Field | Type | Description |
|---|---|---|
aw_ready | logic | |
ar_ready | logic | |
w_ready | logic | |
b_valid | logic | |
b | xbar_slv_b_chan_t | |
r_valid | logic | |
r | xbar_slv_r_chan_t |
xbar_mst_aw_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | xbar_mst_id_t | |
addr | xbar_addr_t | |
len | axi_pkg::len_t | |
size | axi_pkg::size_t | |
burst | axi_pkg::burst_t | |
lock | logic | |
cache | axi_pkg::cache_t | |
prot | axi_pkg::prot_t | |
qos | axi_pkg::qos_t | |
region | axi_pkg::region_t | |
atop | axi_pkg::atop_t | |
user | xbar_user_t |
xbar_mst_b_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | xbar_mst_id_t | |
resp | axi_pkg::resp_t | |
user | xbar_user_t |
xbar_mst_ar_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | xbar_mst_id_t | |
addr | xbar_addr_t | |
len | axi_pkg::len_t | |
size | axi_pkg::size_t | |
burst | axi_pkg::burst_t | |
lock | logic | |
cache | axi_pkg::cache_t | |
prot | axi_pkg::prot_t | |
qos | axi_pkg::qos_t | |
region | axi_pkg::region_t | |
user | xbar_user_t |
xbar_mst_r_chan_t
Packed struct
| Field | Type | Description |
|---|---|---|
id | xbar_mst_id_t | |
data | xbar_data_t | |
resp | axi_pkg::resp_t | |
last | logic | |
user | xbar_user_t |
xbar_mst_req_t
Packed struct
| Field | Type | Description |
|---|---|---|
aw | xbar_mst_aw_chan_t | |
aw_valid | logic | |
w | xbar_slv_w_chan_t | |
w_valid | logic | |
b_ready | logic | |
ar | xbar_mst_ar_chan_t | |
ar_valid | logic | |
r_ready | logic |
xbar_mst_resp_t
Packed struct
| Field | Type | Description |
|---|---|---|
aw_ready | logic | |
ar_ready | logic | |
w_ready | logic | |
b_valid | logic | |
b | xbar_mst_b_chan_t | |
r_valid | logic | |
r | xbar_mst_r_chan_t |
addr_rule_t
Custom address rule type with end_addr 1 bit wider to handle overflow
Packed struct
| Field | Type | Description |
|---|---|---|
idx | int unsigned | |
start_addr | logic [55:0] | |
end_addr | logic [56:0] |