I am trying to assign values to local BRAM memory locations and reading it back. I am using the basic microcontroller preset given in Vivado. I assigned a value "0x758F" to the base address defined in the "xparameters.h". And then I tried to read back the content of the base memory and its giving the correct value. But I am not able to understand that when I check the content of the next memory location (i.e. BASEADDR + 1), it also shows the same value, but I didn't assign any value to this location. It can be seen in the terminal. Why is this happening? Does this mean that if I assign a value to a particular memory location, then the same value will get assigned to all the consecutive locations?
When I tried to assign values to the (HIGHADDR - 1) address (value - 0xa894) and to (HIGHADDR) address (value - 0x8a46) and then tried to read these locations, it showed same value (i.e. 8A46) in both the locations. Again, I am not able to understand why is this happening?
If my approach to write to BRAM and read it is wrong then is there any better way to do so because the project I am trying to build requires writing to and reading from memory?