2.3.7. Cyclic Dependency Avoidance Schemes (CDAS)

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

Each ASIB 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

This ensures that at an ASIB:

  • 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 than to the current destination for that transaction type, the network stalls the new transactions until all the outstanding transactions of that type are completed.

Single slave per ID

This ensures that at an ASIB:

  • All outstanding read transactions with the same ID go the same destination.

  • All outstanding write transactions with the same ID go the same destination.

When the ASIB receives a transaction:

  • If it has an ID that does not match any outstanding transactions, it passes the CDAS.

  • If it has an ID that matches the ID of an outstanding transaction, and the destinations also match, it passes the CDAS.

  • If it has an ID that matches the ID of an outstanding transaction, and the destinations do not match, it fails the CDAS check and is stalled.

A stalled transaction remains stalled until one of the rules passes.

The AMBA Designer tool automatically detects when this is required. See Additional reading.

Depending on the configured topology and ASIB CDAS scheme, there is still a possibility for a cyclic dependency deadlock because of the AW and W channel ordering rules. This is detected by AMBA Designer and indicated by a loop error.

You can resolve this by either changing:

  • The configuration topology.

  • All but one of the ASIB CDAS schemes that feed into the loop to a single slave.

  • A single switch slave interface on the loop to a Single Active Slave (SAS).

Copyright © 2012-2014 ARM. All rights reserved.ARM DDI 0475E
Non-ConfidentialID110314