FIFO on MPU6050

Hello All:

I am trying to read the MPU6050 with burst read, so I can get two bytes of data, and avoid the change in data while reading. I found out that the internal register address doesn’t do any increment by itself. so I had my focus onto the FIFO. I have a couple questions about FIFO…

I set the accelerometer data to load up into the FIFO buffer by setting the Bit3 in the register 0x23 (FIFO_EN). Then I used burst read to get 2 bytes at a time. from my understanding, the data loading into the buffer are in the sequential order of the internal register address (from low to high). So from 0x3B to 0x40 are loaded up to the FIFO buffer… once I enabled the FIFO, I start to read from the “FIFO read write” register (0x74). I can get the data coming out, but it seems like the data are not correct,

So after reading 6 bytes of data, the new data coming back to the buffer is restarted from 0x3B? and go on until it reaches 0x40 again? is that how it works? I wasn’t using any data ready to flag the micro controller, do I need to do that??

The following part of the manual confuses a little bit too…

The data within the accelerometer sensors’ internal register set is always updated at the Sample Rate. Meanwhile, the user-facing read register set duplicates the internal register set’s data values whenever the serial interface is idle.

What is the “user-facing read register set”???

I apologize if I am not making my question clear enough, any help would be greatly appreciated.