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

Real-time hardware capabilities of 5340 and 52833

Hi

Evaluating nRF5340 and 52833 devices for our product prototype. Besides of BT functions we need to support certain real-time hardware capabilities such as very narrow duty-cycle PWM and counting time between events triggered externally (by IOs).

In terms of PWM the performance required can be as tight as 0.1% duty cycle with about 1kHz frequency while time counting means counters running from the external OSC (or after some internal pre-scaler).

Bearing in mind the BT-related real-time protocol maintenance, can the single-core 52833 also support the such PWM operation on IOs (outputting pulses with such PWM) and also operating counters between events triggered by IO ? Or this kind of application would be better supported by 5340 thanks to dual-core ?

Thanks in advance

Alex

Parents
  • Thank you Elnar

    Just to make sure I get your points as intended, when you say CPU do you mean an external CPU to the nRF52 device to configure the nRF52 device for the operation (counter mode as you mentioned)? If so, would the 5340's application core be useful for that?

    Same about the PWM case, when you say using CPU - would the 5340 app core serve this?

    I'm just trying to get the idea whether our application can be served by a single-core nRF chip bearing in mind the regular BT stack operation and that PWM or time-between-events counting features, or this is not something that can be handled in hardware due to BT protocol real-time workload and we need either a separate controller on board or nRF5340 utilizing its app core..

  • Hi Alex,

    Pret said:

    Just to make sure I get your points as intended, when you say CPU do you mean an external CPU to the nRF52 device to configure the nRF52 device for the operation (counter mode as you mentioned)? If so, would the 5340's application core be useful for that?

    Same about the PWM case, when you say using CPU - would the 5340 app core serve this?

    When I say CPU I refer to the CPU core(s) in the nRF. The key here is that the programable peripheral interconnect (PPI) can be used to connect HW peripherals within the nRF so that events in one peripheral can trigger tasks in the other. See Peripheral interface and PPI for more information. There are some minor differences between the nRF52 and nRF53 here, but the fundamentals remain the same. In a nutshell you can think of PPI as a very simple variant of the programmable interconnect you have in FPGAs, but without the programmable logic.

    And when I referred to the PWM peripheral, that is a dedicated peripheral that generates a PWM signal without need for CPU intervention other than for chancing configuration. See WPM chapter in PS (or for 53 here).

    Pret said:
    I'm just trying to get the idea whether our application can be served by a single-core nRF chip bearing in mind the regular BT stack operation and that PWM or time-between-events counting features, or this is not something that can be handled in hardware due to BT protocol real-time workload and we need either a separate controller on board or nRF5340 utilizing its app core..

    I understand. I still do not know enough about your use case to say if the nRF52840 will do, but if you do not have strict timing requirements for when you change PWM duty cycle or when you actually process the times you have measured using GPIOTE and PPI (if you do as suggested), but if that has a bit of slack, then using a single core device might work (and often does). If not, then the nRF53 could be a good option.

Reply
  • Hi Alex,

    Pret said:

    Just to make sure I get your points as intended, when you say CPU do you mean an external CPU to the nRF52 device to configure the nRF52 device for the operation (counter mode as you mentioned)? If so, would the 5340's application core be useful for that?

    Same about the PWM case, when you say using CPU - would the 5340 app core serve this?

    When I say CPU I refer to the CPU core(s) in the nRF. The key here is that the programable peripheral interconnect (PPI) can be used to connect HW peripherals within the nRF so that events in one peripheral can trigger tasks in the other. See Peripheral interface and PPI for more information. There are some minor differences between the nRF52 and nRF53 here, but the fundamentals remain the same. In a nutshell you can think of PPI as a very simple variant of the programmable interconnect you have in FPGAs, but without the programmable logic.

    And when I referred to the PWM peripheral, that is a dedicated peripheral that generates a PWM signal without need for CPU intervention other than for chancing configuration. See WPM chapter in PS (or for 53 here).

    Pret said:
    I'm just trying to get the idea whether our application can be served by a single-core nRF chip bearing in mind the regular BT stack operation and that PWM or time-between-events counting features, or this is not something that can be handled in hardware due to BT protocol real-time workload and we need either a separate controller on board or nRF5340 utilizing its app core..

    I understand. I still do not know enough about your use case to say if the nRF52840 will do, but if you do not have strict timing requirements for when you change PWM duty cycle or when you actually process the times you have measured using GPIOTE and PPI (if you do as suggested), but if that has a bit of slack, then using a single core device might work (and often does). If not, then the nRF53 could be a good option.

Children
No Data
Related