The AXI protocol description states for modifiable transactions (ARCACHE[1] is asserted):
"a read transaction can fetch more data than required"
To me, this can be interpreted in two ways:
Which of the two is correct?
Definitely NOT option 1. RVALID must always be asserted for the exact ARLEN indicated number of transfers.
It is option 2. An intermediate component (perhaps a cache controller or an upsizer) can perform a wider or longer transaction to fetch in the originally requested data, with the "modifiable" indication meaning that this altered transaction type can be allowed. ARLEN and RVALID would still need to be correctly signalled for this wider or longer transaction downstream of the intermediate component.
Thanks a lot!