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

NVMC timing

I'm currently designing a system that requires Nonvolatile memory. Whilst I can accept the 43uS delay to write a word to flash memory. My concern is that it is entirely possible in the operation of the device to erase a flash page. This will take 21ms.

How does this affect the operation of the Soft Device (nominally s130). What concerns should I have with timing? I'm assuming I would have to use the soft device scheduler to ensure the flash erase doesn't coincide with the radio. What precautions should I take as I program the firmware for this operation.

I'm assuming the nonvolatile and the active operation of the Soft Device is incompatible.

Setup: nrf51822 SDK 6.1 S130

Parents
  • As long as you use the functions sd_flash_page_erase and sd_flash_write the bluetooth stack will not be affected by it. It will register with the soft device that an event requiring 21ms is required. The soft device will eventually be able to block out enough time to do this operation(might be a long time depending on the traffic you're putting through your radio)

    Before you start another operation, be sure to wait for a flash success event as it will not be a guaranteed time before it writes the flash.

Reply
  • As long as you use the functions sd_flash_page_erase and sd_flash_write the bluetooth stack will not be affected by it. It will register with the soft device that an event requiring 21ms is required. The soft device will eventually be able to block out enough time to do this operation(might be a long time depending on the traffic you're putting through your radio)

    Before you start another operation, be sure to wait for a flash success event as it will not be a guaranteed time before it writes the flash.

Children
No Data
Related