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

Main differences between 52810 and 52832?

Today I read about the new nrf52810 and I want to know about its main differences with the nrf52832.

I see a lower power consumption for the 52810 vs 52832 and no NFC on the 810, is this correct? Also there are other changes?

Thank you!

Parents
  • The main differences between the nRF52810 and the nRF52832 are the following

    • NFC peripheral has been removed on the nRF52810
    • Flash reduced from 256kB to 192kB and RAM reduced from 32kB to 24kB.
    • Number of SPI/TWI Master peripherals reduced from 3 to 2 ( 1 x SPI Master or Slave + 1 x TWI Master or Slave)
    • Number of PWM channels reduced from 12 to 4.
    • I2S Peripheral has been removed.
    • Low Power Comparator has been removed
    • Number of 32-bit 16MHz Timers reduced from 5 to 3
    • Number of 32.768kHz RTCs reduced from 3 to 2.
    • The number of GPIOTE channels reduced from 8 to 4.
    • FPU (Floating Point Unit) removed.
    • Cache removed
  • Maybe not a "main" difference, but NVMC has no ICACHECNF register.  I can't easily find any discussion.  Does this mean the instruction cache exists but is always enabled, or means something else?  How does that affect performance/timing?

  • @butch: You are correct. The the cache has been removed on the nRF52810. This will affect the performance of the nrf52810 compared to the nRF52832, but the nRF52810 is more efficient in terms of current consumption as it is a smaller IC(i.e. less peripherals, less memory)

    nRF52810
    •144 EEMBC CoreMarkRegistered score running from flash memory
    • 34.4 μA/MHz running from flash memory
    • 32.8 μA/MHz running from RAM

    nRF52832
    • 215 EEMBC CoreMarkRegistered score running from flash memory
    • 58 μA/MHz running from flash memory
    • 51.6 μA/MHz running from RAM

  • Oh.

    So if your code delays using a constant number of instructions (say NOP) then code that works on the nRF52832 might not work on the nRF52810.

    If you test on the NRF52DK and disable the instruction cache, does the CoreMark score match the score on a native nRF52810? A developer must ensure that instruction cache is disabled, if they want the timing to match?  I don't guess that defining DEVELOP_IN_52832 will ensure the instruction cache is disabled. 

    Is this timing issue why S132 does not work on the nRF52810?  That is, does a Softdevice require instruction cache to be in a certain enable state, and using Softdevice disallow modification of that state while Softdevice is enabled?

Reply
  • Oh.

    So if your code delays using a constant number of instructions (say NOP) then code that works on the nRF52832 might not work on the nRF52810.

    If you test on the NRF52DK and disable the instruction cache, does the CoreMark score match the score on a native nRF52810? A developer must ensure that instruction cache is disabled, if they want the timing to match?  I don't guess that defining DEVELOP_IN_52832 will ensure the instruction cache is disabled. 

    Is this timing issue why S132 does not work on the nRF52810?  That is, does a Softdevice require instruction cache to be in a certain enable state, and using Softdevice disallow modification of that state while Softdevice is enabled?

Children
Related