In the description of the modifiable transaction in section A4.3.1 of the AXI4 protocol, there is a paragraph that reads as follows:
"The memory attribute, AxCACHE, can be modified, but any modification must ensure that the visibility of transactions by other components is not reduced, either by preventing propagation of transactions to the required point, or by changing the need to look up a transaction in a cache. Any modification to the memory attributes must be consistent for all transactions to the same address range."
Regarding this paragraph, I have three questions:1. Does delaying the propagation of a transaction in a cache in an intermediate component for a long time reduce the visibility of that transaction to subsequent components?2. If a transaction that originally required a cache lookup is modified after passing through an intermediate component to no longer require a cache lookup, does this reduce the visibility of that transaction at the system-level cache?3. In terms of design, is a FIFO commonly used for handling bufferable transactions?
Thank you for your reply, it was very helpful to me.