1.2.2. Altera® AXI4 Memory-Mapped Subordinate BFM Architecture
The Altera® AXI4 Memory-Mapped Subordinate BFM provides APIs that you can use to create response transactions to any manager transaction that is then driven by Subordinate BFM methods.
The Subordinate BFM uses a host memory model. The Subordinate BFM writes to and reads back data from the host memory model. The method drive_transaction() contains a mailbox that can receive the Altera® AXI4 transaction objects. Once the transaction is put into the mailbox, the subordinate retrieves the transaction from the mailbox and consumes the transaction according to the control signals.
The Altera® AXI4 Memory Mapped Subordinate BFM supports the following features of AXI4:
- Automatic calculation of addresses for all types of bursts from the start address provided by manager.
- Consuming the correct bytes from the byte lanes signaled by WSTRB.
- Asserting and deasserting the *VALID and *READY signals based on internal buffering capacity for outstanding transactions.
- Application of API-provided delays for *VALID and *READY signals.
- Waits for corresponding handshake *VALID and *READY signals from subordinate before driving transactions.
- Applying API provided delays for *VALID and *READY signals.
- Exclusive transactions, tracking that the transfer ID responds with EXOKAY correctly.
The Altera® AXI4 Memory Mapped Subordinate BFM does not currently support the following features of AXI4:
- Out-of-order behavior
- AxCACHE processing
- AxREGION processing
- QoS processing
- AxPROT processing
- xxUSER processing