Say the Initiator did the read request with 16 beats. Does AXI standard require the response to come in the same response or it can come in 16 separate single transactions?
The question comes from the context of SoC architecture with say AXI4 Initiator is connected through the NOC to AXI-lite. Or another version is when the transaction turns to be a slit one between different Targets. Should the NOC combine all the responses to create the same burst size as Initiator requested or this is not mandatory?
Thanks,
Khach
Referring to my answer above:
Christopher Tory said:For a write, AWADDR, AWLEN and AWSIZE define the maximum number of bytes that could be written. WSTRB defines the bytes that are actually valid to write.
If WSTRB indicates bytes as being valid which are defined as not valid by the above signals, then this is a hardware protocol violation.
As described in A4.2.1 of the AXI.K Spec:
"• Outside of the transaction container all write strobes must be LOW."
So using the example above, WSTRB can never be 4'b1111 for any transfers.
4'b1100, 4'b0011, 4'b1100 and 4'b0011 indicates the maximum number of bytes that can be valid for these AW attributes. Any of the WSTRB bits that are 1 can also be 0 if the manager does not wish to write these bytes.
Thanks for all the responses. This was very helpful!