Package axi_pkg

Contains all necessary type definitions, constants and generally useful functions.

Parameters

BURST_FIXED

In a fixed burst:

BURST_INCR

In an incrementing burst, the address for each transfer in the burst is an increment of the address for the previous transfer. The increment value depends on the size of the transfer. For example, the address for each transfer in a burst with a size of 4 bytes is the previous address plus four. This burst type is used for accesses to normal sequential memory.

BURST_WRAP

A wrapping burst is similar to an incrementing burst, except that the address wraps around to a lower address if an upper address limit is reached. The following restrictions apply to wrapping bursts:

RESP_OKAY

Normal access success. Indicates that a normal access has been successful. Can also indicate that an exclusive access has failed.

RESP_EXOKAY

Exclusive access okay. Indicates that either the read or write portion of an exclusive access has been successful.

RESP_SLVERR

Slave error. Used when the access has reached the slave successfully, but the slave wishes to return an error condition to the originating master.

RESP_DECERR

Decode error. Generated, typically by an interconnect component, to indicate that there is no slave at the transaction address.

CACHE_BUFFERABLE

When this bit is asserted, the interconnect, or any component, can delay the transaction reaching its final destination for any number of cycles.

CACHE_MODIFIABLE

When HIGH, Modifiable indicates that the characteristics of the transaction can be modified. When Modifiable is LOW, the transaction is Non-modifiable.

CACHE_RD_ALLOC

When this bit is asserted, read allocation of the transaction is recommended but is not mandatory.

CACHE_WR_ALLOC

When this bit is asserted, write allocation of the transaction is recommended but is not mandatory.

ATOP_ATOMICSWAP

ATOP_ATOMICCMP

ATOP_NONE

Perform no atomic operation.

ATOP_ATOMICSTORE

ATOP_ATOMICLOAD

Sends a single data value with an address and the atomic operation to be performed.

ATOP_LITTLE_END

For AtomicStore and AtomicLoad transactions AWATOP[3] indicates the endianness that is required for the atomic operation. The value of AWATOP[3] applies to arithmetic operations only and is ignored for bitwise logical operations. When deasserted, this bit indicates that the operation is little-endian.

ATOP_BIG_END

When asserted, this bit indicates that the operation is big-endian.

ATOP_ADD

The value in memory is added to the sent data and the result stored in memory.

ATOP_CLR

Every set bit in the sent data clears the corresponding bit of the data in memory.

ATOP_EOR

Bitwise exclusive OR of the sent data and value in memory.

ATOP_SET

Every set bit in the sent data sets the corresponding bit of the data in memory.

ATOP_SMAX

The value stored in memory is the maximum of the existing value and sent data. This operation assumes signed data.

ATOP_SMIN

The value stored in memory is the minimum of the existing value and sent data. This operation assumes signed data.

ATOP_UMAX

The value stored in memory is the maximum of the existing value and sent data. This operation assumes unsigned data.

ATOP_UMIN

The value stored in memory is the minimum of the existing value and sent data. This operation assumes unsigned data.

DemuxAw

Slice on Demux AW channel.

DemuxW

Slice on Demux W channel.

DemuxB

Slice on Demux B channel.

DemuxAr

Slice on Demux AR channel.

DemuxR

Slice on Demux R channel.

MuxAw

Slice on Mux AW channel.

MuxW

Slice on Mux W channel.

MuxB

Slice on Mux B channel.

MuxAr

Slice on Mux AR channel.

MuxR

Slice on Mux R channel.

Types

burst_t

AXI Transaction Burst Type.

resp_t

AXI Transaction Response Type.

cache_t

AXI Transaction Cacheability Type.

prot_t

AXI Transaction Protection Type.

qos_t

AXI Transaction Quality of Service Type.

region_t

AXI Transaction Region Type.

len_t

AXI Transaction Length Type.

size_t

AXI Transaction Size Type.

atop_t

AXI5 Atomic Operation Type.

nsaid_t

AXI5 Non-Secure Address Identifier.

largest_addr_t

An overly long address type.

mem_type_t

Memory Type.

xbar_latency_e

Latency configuration for axi_xbar.

xbar_cfg_t

Configuration for axi_xbar.

xbar_rule_64_t

Commonly used rule types for axi_xbar (64-bit addresses).

xbar_rule_32_t

Commonly used rule types for axi_xbar (32-bit addresses).