tlul_pkg
Hold TileLink Uncached Lightweight types, opcodes, and integrity widths.
Define the A/D opcodes, packed channel structs and their default values, integrity and reserved-user widths, and helpers that extract and compute command and data integrity.
Two constants give the data returned on a TL-UL error; responders return each with matching data integrity:
- DATA_WHEN_INSTR_ERROR is returned for an instruction fetch.
- DATA_WHEN_ERROR is returned for any access that is not an instruction fetch.
tl_a_op_e
Enum (logic [2:0])
| Value | Number | Description |
|---|---|---|
PUT_FULL_DATA | 3'h 0 | |
PUT_PARTIAL_DATA | 3'h 1 | |
GET | 3'h 4 |
tl_d_op_e
Enum (logic [2:0])
| Value | Number | Description |
|---|---|---|
ACCESS_ACK | 3'h 0 | |
ACCESS_ACK_DATA | 3'h 1 |
tl_a_user_t
Packed struct
| Field | Type | Description |
|---|---|---|
rsvd | logic [RSVD_WIDTH-1:0] | |
instr_type | prim_mubi_pkg::mubi4_t | |
cmd_intg | logic [H2D_CMD_INTG_WIDTH-1:0] | |
data_intg | logic [DATA_INTG_WIDTH-1:0] |
tl_h2d_cmd_intg_t
Packed struct
| Field | Type | Description |
|---|---|---|
instr_type | prim_mubi_pkg::mubi4_t | |
addr | logic [top_pkg::TL_AW-1:0] | |
opcode | tl_a_op_e | |
mask | logic [top_pkg::TL_DBW-1:0] |
tl_h2d_t
Packed struct
| Field | Type | Description |
|---|---|---|
a_valid | logic | |
a_opcode | tl_a_op_e | |
a_param | logic [2:0] | |
a_size | logic [top_pkg::TL_SZW-1:0] | |
a_source | logic [top_pkg::TL_AIW-1:0] | |
a_address | logic [top_pkg::TL_AW-1:0] | |
a_mask | logic [top_pkg::TL_DBW-1:0] | |
a_data | logic [top_pkg::TL_DW-1:0] | |
a_user | tl_a_user_t | |
d_ready | logic |
tl_d_user_t
Packed struct
| Field | Type | Description |
|---|---|---|
rsp_intg | logic [D2H_RSP_INTG_WIDTH-1:0] | |
data_intg | logic [DATA_INTG_WIDTH-1:0] |
tl_d2h_t
Packed struct
| Field | Type | Description |
|---|---|---|
d_valid | logic | |
d_opcode | tl_d_op_e | |
d_param | logic [2:0] | |
d_size | logic [top_pkg::TL_SZW-1:0] | Bouncing back a_size. |
d_source | logic [top_pkg::TL_AIW-1:0] | |
d_sink | logic [top_pkg::TL_DIW-1:0] | |
d_data | logic [top_pkg::TL_DW-1:0] | |
d_user | tl_d_user_t | |
d_error | logic | |
a_ready | logic |
tl_d2h_rsp_intg_t
Packed struct
| Field | Type | Description |
|---|---|---|
opcode | tl_d_op_e | |
size | logic [top_pkg::TL_SZW-1:0] | |
error | logic |
tl_a_user_chk
Check user for unsupported values
Function returning logic
| Name | Direction | Type | Description |
|---|---|---|---|
user | input | tl_a_user_t |
extract_h2d_cmd_intg
extract variables used for command checking
Function returning tl_h2d_cmd_intg_t
| Name | Direction | Type | Description |
|---|---|---|---|
tl | input | tl_h2d_t |
extract_d2h_rsp_intg
extract variables used for response checking
Function returning tl_d2h_rsp_intg_t
| Name | Direction | Type | Description |
|---|---|---|---|
tl | input | tl_d2h_t |
get_cmd_intg
calculate ecc for command checking
Function returning logic [H2D_CMD_INTG_WIDTH-1:0]
| Name | Direction | Type | Description |
|---|---|---|---|
tl | input | tl_h2d_t |
get_data_intg
calculate ecc for data checking
Function returning logic [DATA_INTG_WIDTH-1:0]
| Name | Direction | Type | Description |
|---|---|---|---|
data | input | logic [top_pkg::TL_DW-1:0] |
get_bad_cmd_intg
return inverted integrity for command payload
Function returning logic [H2D_CMD_INTG_WIDTH-1:0]
| Name | Direction | Type | Description |
|---|---|---|---|
tl | input | tl_h2d_t |
get_bad_data_intg
return inverted integrity for data payload
Function returning logic [H2D_CMD_INTG_WIDTH-1:0]
| Name | Direction | Type | Description |
|---|---|---|---|
data | input | logic [top_pkg::TL_DW-1:0] |