Advanced Settings Parameters - 2.1 English

AXI Register Slice LogiCORE IP Product Guide (PG373)

Document ID
PG373
Release Date
2022-11-02
Version
2.1 English

The parameters in the following table represent the metadata on the SI and MI AXI interfaces of the AXI Register Slice IP. By default, all parameters are in the Auto mode.

When in the Auto mode, each parameter value is set automatically during BD Validation, according to propagation of AXI metadata from connected IP; then the GUI indicates the resulting values. Typically, metadata values originate at a master or slave endpoint AXI interface, propagate through the register slice, and are consumed by the opposite slave or master endpoint interface at the other end of the pathway. The original metadata values are typically determined during the packaging of the endpoint IP, where they can be set to constants, derived, user-customized, or unspecified (default).

When set in Manual mode, you can force the metadata values to be applied to both the SI and MI interfaces of the AXI Register Slice IP, and potentially propagated to the endpoint IP interface consuming the metadata. This can be useful when the original packaging of the source endpoint IP does not set the metadata to a value suitable for the system design.

Table 1. Advanced Settings Parameters
Vivado IDE Parameter Name User Parameter Name Range Description
WUSER BITS PER BYTE,

RUSER BITS PER BYTE

WUSER_BITS_PER_BYTE,

RUSER_BITS_PER_BYTE

0-32 0: W/RUSER signal does not scale with DATA_WIDTH (not suitable for width conversion);

>0: During width conversion, each field of n bits within W/RUSER travels with corresponding W/RDATA byte lane.

SUPPORTS NARROW BURST SUPPORTS_NARROW_BURST 0 = No,

1 = Yes

0: For bursts of 2 or more data beats, the AW/ARSIZE value is expected to be the maximum value supported by the DATA_WIDTH, which is the default interpretation when the AW/ARSIZE signal is absent on the AXI interface; for example, AWSIZE = 6 for DATA_WIDTH = 512 (64 bytes); otherwise such a transaction is considered to be an error. But AW/ARSIZE can be any smaller value when AW/ARLEN = 0, to indicate a single transfer with footprint smaller than DATA_WIDTH (narrow singles are okay).

1: AW/ARSIZE can be any protocol-compliant value, which can result in shortened address strides for multi-beat bursts. This might, in turn, incur additional burst-packing logic cost in interconnect IP (such as SmartConnect) and/or endpoint slave IP.

Some endpoint master IP might be packaged with SUPPORTS_NARROW_BURST = 1 (default) if there is any risk or uncertainty whether the master produces narrow multi-beat bursts. Override this value only when certain that narrow bursts will never occur in a given system design, to avoid unnecessary burst processing logic.

HAS BURST HAS_BURST 0 = No,

1 = Yes

0: The endpoint master is expected to only produce INCR type bursts (AW/ARBURST = 1, or AW/ARBURST signal not present); otherwise such a transaction is considered to be an error.

1: The endpoint master might produce INCR or WRAP bursts (Xilinx does not support FIXED bursts). This might, in turn, incur additional logic cost in interconnect IP (such as SmartConnect) and/or endpoint slave IP.

Some endpoint master IP can be packaged with HAS_BURST = 1 (default) if there is any risk or uncertainty whether the master produces WRAP bursts, such as when the master contains a processor that can issue a target-word-first burst. Override this value only when certain that WRAP bursts will never occur in a given system design, to avoid unnecessary burst processing logic.

HAS LOCK,

HAS CACHE,

HAS REGION,

HAS QOS,

HAS PROT,

HAS WSTRB,

HAS BRESP,

HAS RRESP

HAS_LOCK,

HAS_CACHE,

HAS_REGION,

HAS_QOS,

HAS_PROT,

HAS_WSTRB,

HAS_BRESP,

HAS_RRESP

0 = No,

1 = Yes

These parameters indicate whether the corresponding AXI signal pin is present on the endpoint master interface and/or whether the signal needs to be propagated to the slave. There is generally no logic costs associated with these signals other than the width of the payload.
MAX BURST LENGTH MAX_BURST_LENGTH 1-256 Indicates the maximum AW/ARLEN value expected to be produced by the endpoint master. This metadata can be used by some IP to reduce burst processing logic. There is no error-checking performed by interconnect IP (such as SmartConnect) regarding this metadata value. The results of issuing a transaction with AW/ARLEN exceeding MAX_BURST_LENGTH is unpredictable.
NUM READ THREADS,

NUM WRITE THREADS

NUM_READ_THREADS,

NUM_WRITE_THREADS

0-16 0: Applies only to a WRITE_ONLY or READ_ONLY endpoint master.

1: Referred to as "single-ordering", all read transactions or all write transactions, respectively, are handled as if they belong to the same thread, regardless of their ARID/AWID value, with no opportunity for out-of-order responses. In general, a sequence of transactions is only allowed to be issued to one endpoint slave at a time. Any transaction targeting a different slave gets stalled at the interconnect until all outstanding transactions complete, as part of the interconnect's "single-slave-per-ID" deadlock avoidance policy. (The AXI Register Slice IP does not stall AXI transfers for any reason.)

>1: Referred to as "multi-threading", the set limit determines how many different ARID or AWID values, respectively, can be outstanding concurrently (even if ID_WIDTH provides for more values). In general, each thread is allowed to independently access one endpoint slave at a time, and there is opportunity for out-of-order responses among the different outstanding threads. Any transaction presenting a different ARID or AWID after the set limit is reached gets stalled at the interconnect until all outstanding transactions complete for any one thread, as part of the interconnect's thread-tracking logic. In general, increasing NUM_*THREADS increases the interconnect's thread-tracking logic cost. (The AXI Register Slice IP does not keep track of ID threads.)

NUM READ OUTSTANDING,

NUM WRITE OUTSTANDING

NUM_READ_OUTSTANDING,

NUM_WRITE_OUTSTANDING

0-256 Indicates the maximum number of read transactions or write transactions, respectively, expected to be produced by the endpoint master. (0 applies only to a WRITE_ONLY or READ_ONLY endpoint master.) This metadata can be used by some IP to reduce transaction processing logic. In general, reducing this metadata value does not actually prevent a master from issuing more transactions, nor does it prevent an interconnect IP from accepting or propagating more transactions. (NUM_*OUTSTANDING is not the same as ACCEPTANCE or ISSUING limits.)