Skip to content

Protocol reference

AXI4

Bases: ProtocolDesc

AXI4 protocol class.

Attributes:

Name Type Description
data_width int

Width of the data bus in bits.

addr_width int

Width of the address bus in bits.

id_width int

Width of the ID signals in bits.

user_width Union[int, Dict[str, int]]

Configuration for the AXI User signal. Can be a single integer (total width) or a dictionary mapping field names to bit widths.

type_prefix Optional[str]

Prefix for generated SystemVerilog types. Set to None or an empty string to remove the default "axi" prefix.

render_cfg(name, mgr_axi, sbr_axi) classmethod

Render the configuration of the protocol.

render_params()

Render the parameters of the protocol.

render_typedefs(prefix='', ignored_user_fields=[])

Render the typedefs of the protocol.

type_name(prefix='')

Return the full name of the protocol.

AXI4Bus

Bases: AXI4

AXI4 bus protocol class.

declare()

Declare the protocol.

render_cfg(name, mgr_axi, sbr_axi) classmethod

Render the configuration of the protocol.

render_params()

Render the parameters of the protocol.

render_port(pkg_name='', prefix='')

Render the port of the protocol.

render_typedefs(prefix='', ignored_user_fields=[])

Render the typedefs of the protocol.

req_name(port=False, idx=False)

Return the request name of the protocol.

req_type(prefix='')

Return the request type of the protocol.

rsp_name(port=False, idx=False)

Return the response name of the protocol.

rsp_type(prefix='')

Return the response type of the protocol.

type_name(prefix='')

Return the full name of the protocol.

ProtocolDesc

Bases: BaseModel

Protocol class to describe a protocol.

Attributes:

Name Type Description
name str

Unique identifier for the protocol. Used to reference it in endpoint configurations.

protocol str

The protocol standard. Must be set to "AXI4".

description Optional[str]

Optional description of the protocol.

type Optional[str]

Sub-type classification, useful for heterogeneous networks (e.g., "narrow", "wide").

direction Optional[str]

The direction of the protocol interface.