output_remap

Remap AXI transactions onto target addresses selected by a per-region offset table.

remap_ctrl_i carries per-region PeakRDL outs. REGION_BASE is subtracted from every AW and AR address, and bits [IDX_START +: RemapIndexW] of the result select a region. If that region is valid, the address becomes its offset bits [55:IDX_START] above the base-relative bits below IDX_START; otherwise the original address passes through unchanged. The module is combinational. When USER_OVERRIDE_EN is set, USER_OVERRIDE_VAL replaces the AW, AR and W user fields of every transaction.

Parameters

Table 1. Parameters
NameTypeDefaultDescription
NUM_REGIONSint unsigned8Number of remap regions.
REGION_BASEint unsigned0Byte address subtracted from AW and AR addresses before indexing.
IDX_STARTint unsigned20Address bit where the region index begins; each region spans 2**IDX_START bytes.
USER_OVERRIDE_ENbit1'b1Replace the AW, AR and W user fields on every transaction.
USER_OVERRIDE_VALuser_ovrd_t'0AxUSER value when overriding.
RemapIndexWint unsigned$clog2(NUM_REGIONS)Region-index width.

Ports

Table 2. Ports
NameDirectionTypeDescription
clk_iinputlogicSystem clock; unused.
rst_niinputlogicAsync reset, active-low; unused.
test_en_iinputlogicDFT test enable; unused.
remap_ctrl_iinputoutput_remap_reg_pkg::output_remap__out_tPer-region PeakRDL configuration; only REGION.region_attrs.offset and .valid are used.
axi_req_iinputaxi_req_tPre-remap AXI request.
axi_resp_ooutputaxi_resp_tPre-remap AXI response.
axi_remapped_req_ooutputaxi_req_tPost-remap AXI request.
axi_remapped_resp_iinputaxi_resp_tPost-remap AXI response.