Hello,
can some one please explain the addresses generation in case of wrapping burst with unaligned addresses?
Thanks in advance.
Simple answer for this one, the protocol requires the address is always aligned.
Thank you for the reply. You mean to say, wrapping with unaligned never happens?
Thank you for the reply. I continue with my previous reply.
I mean to say is, when address is unaligned , the aligned address is calculated. But the data storage takes place from the start address itself(unaligned address). So in case of wrapping, how the data storage takes place -this one i wanted to know. It will be helpful for me if explanation is with example. Please clear my doubts.
As I said before the protocol states that the address MUST be aligned when using a WRAP type burst. Therefore the problems you are describing don't arise in correctly designed systems with protocol compliant components.
If a master does illegally generate an unaligned address for a wrapping burst, the system behaviour is undefined.
If I had to guess I would think that slaves would simply assume the address would be aligned, and so would ignore the relevant LSBs of the unaligned address when calculating address increments, knowing that they must be 0. But that then means that the slave hasn't done exactly what the master illegally requested, and the master doesn't know for sure what the slave WILL do. So the requirement MUST be that the master fully observes all the protocol requirements.
OK thank you so much. I got it.