prim_axi_id_converter

Adapt AXI IDs between an upstream and a downstream port of different ID widths.

When AXI_ID_WIDTH_IN exceeds AXI_ID_WIDTH_OUT, remap IDs through axi_id_remap within the MAX_INFLIGHT_IDS and MAX_TXNS_PER_ID limits. When AXI_ID_WIDTH_IN is less than AXI_ID_WIDTH_OUT, zero-extend IDs combinationally through prim_axi_id_prepend_wrap. When the widths are equal, pass requests and responses straight through. test_en_i is not used.

Parameters

Table 1. Parameters
NameTypeDefaultDescription
AXI_ADDR_WIDTHint unsigned64Address width of both AXI ports; forwarded to the ID-padding path.
AXI_DATA_WIDTHint unsigned64Data-channel width of both AXI ports; forwarded to the ID-padding path.
AXI_USER_WIDTHint unsigned1User-signal width of both AXI ports; forwarded to the ID-padding path.
AXI_ID_WIDTH_INint unsigned16Upstream AXI ID width.
AXI_ID_WIDTH_OUTint unsigned8Downstream AXI ID width.
MAX_INFLIGHT_IDSint unsigned4Max distinct upstream IDs in flight; used only by the remap path.
MAX_TXNS_PER_IDint unsigned4Max outstanding transactions per upstream ID; used only by the remap path.

Ports

Table 2. Ports
NameDirectionTypeDescription
clk_iinputlogicAXI clock; used only by the remap path.
rst_niinputlogicAsync reset, active-low; used only by the remap path.
test_en_iinputlogicNot used.
axi_in_req_iinputinput_axi_req_tUpstream AXI request.
axi_in_resp_ooutputinput_axi_resp_tUpstream AXI response.
axi_out_req_ooutputoutput_axi_req_tDownstream AXI request.
axi_out_resp_iinputoutput_axi_resp_tDownstream AXI response.