This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Page and block size on NRF52

Hello,

I am a little bit confused when reading in NRF52 spec that a NVM page is 4KB while block size is 512B. Usually an NVM memory is composed of block made of pages, while the opposite is mentioned in the NRF52 spec. And also the BPROT is referring to 4KB block and not page.

Well that should be considered as a simple detail or a name convention, but this also impact a main timing of NRF52 NVM spec, which is the nwrite. This defines that a block is allowed to be written 181 times between erase.

So are we talking about the 512B block of the NVM Spec ? or the 4KB page? And so, does the 8 blocks of a same page can be written individually 181times between erase ?

Thanks for your answer, Regards, Paul.

Parents
  • Hi,

    As seen in the memory layout figure here, a NVM page is 4kB and consist of 8 blocks where each block is 512 bytes:

    image description

    A BPROT-block on the other hand represents 1 flashpage(4kB). This could have been any other number (e.g. a BPROT-block could have been 8kB or 512 bytes).

    When the NVM states that the amount of writes allowed in a block between erase is 181, this refers to the NVM block (512 bytes). A NVM block can be written individually 181 times between erase.

    We provide flash storage modules in the SDK (module fstorage) that is made to make it easier for storing data

Reply
  • Hi,

    As seen in the memory layout figure here, a NVM page is 4kB and consist of 8 blocks where each block is 512 bytes:

    image description

    A BPROT-block on the other hand represents 1 flashpage(4kB). This could have been any other number (e.g. a BPROT-block could have been 8kB or 512 bytes).

    When the NVM states that the amount of writes allowed in a block between erase is 181, this refers to the NVM block (512 bytes). A NVM block can be written individually 181 times between erase.

    We provide flash storage modules in the SDK (module fstorage) that is made to make it easier for storing data

Children
Related