4 arbitration, 5 cyclic dependency avoidance schemes (cdas) – ARM AMBA NIC-301 User Manual

Page 32

Advertising
background image

Functional Description

ARM DDI 0397G

Copyright © 2006-2010 ARM. All rights reserved.

2-17

ID031010

Non-Confidential

Data release mechanism

When you configure a write data FIFO of at least 4, you can also set an additional write tidemark
function, named

wr_tidemark

. This is a tidemark level that stalls the release of the transaction

until:

The network receives the WLAST beat.

The write FIFO becomes full.

The number of occupied slots in the write data FIFO exceeds the write tidemark. See
Chapter 3 Programmers Model.

2.3.4

Arbitration

You can program the arbitration algorithm for all arbitration nodes within the infrastructure.

At the entry point to the infrastructure, all transactions are allocated a local QoS that you can
configure to be:

static

programmable

received from the attached master, for AXI only.

The arbitration of the transaction throughout the infrastructure uses this QoS. See Chapter 3
Programmers Model
.

At any arbitration node, a fixed priority exists for transactions with a different QoS. The highest
value has the highest priority. If there are coincident transactions at an arbitration node with the
same QoS that require arbitration, then the Network uses a Least Recently Used (LRU)
algorithm.

2.3.5

Cyclic Dependency Avoidance Schemes (CDAS)

Because the AXI protocol permits re-ordering of transactions, it might be necessary for the
AMBA Network Interconnect to enforce rules to prevent deadlock when routing multiple
transactions concurrently to multiple slaves from a single point of divergence, that is, at a switch
slave interface.

Each slave interface of a switch can have a different CDAS configured. The same CDAS
scheme is configured for both read and write transactions, but they operate independently.

This section describes:

Single slave

Single slave per ID.

Single slave

This ensures that at a slave interface of a switch:

all outstanding read transactions are to a single end destination

all outstanding write transactions are to a single end destination.

If the slave interface receives a transaction to a different destination to the current destination
for that transaction type, the network stalls the transactions until all the outstanding transactions
of that type have been completed.

Single slave per ID

This ensures that at a slave interface of a switch:

all outstanding read transactions with the same ID go the same destination

Advertising