Distributed Virtual Memory (DVM) messages
The QTW/DVM interface supports DVM messages. The MMU-600 supports DVMv8.1.
The interface supports DVM transactions of message types TLB Invalidate and Synchronization. The interface accepts all other DVM transaction message types, and sends a snoop response, but otherwise ignores such transactions.
Tie the sup_btm input signal HIGH when Broadcast TLB Maintenance is supported.
You can use SMMU_CR2 and SMMU_S_CR2 to control how the QTW/DVM interface responds to TLB Invalidate operations:
- If SMMU_CR2.PTM = 1, the interface ignores Non-secure TLB Invalidate operations.
- If SMMU_S_CR2.PTM = 1, the interface ignores Secure TLB Invalidate operations.
NoteAlthough TLB Invalidate operations have no effect on the QTW/DVM interface when PTM = 1, the interface still returns the appropriate response.
The QTW/DVM interface might receive DVM Sync transactions without receiving a DVM TLB Invalidate transaction, or when the PTM bits have masked a TLB Invalidate. If no DVM TLB Invalidate operations have occurred since the most recent DVM Sync transaction, subsequent DVM Sync transactions result in an immediate DVM Complete transaction. This behavior ensures that the TCU does not affect system DVM performance unless TLB Invalidate operations are performed.
The DTI interface allocates the access permissions and shareability of DVM Complete transactions as follows:
- ARPROT =
0b000, indicating Unprivileged, Secure, Data access.
- ARDOMAIN =
0b01, indicating Inner Shareable.
For a DVM Operation or DVM Sync request on the AC channel, the snoop response signal CRRESP[4:0] is always set to