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

Can application code run during radio usage?

I spoke with someone at Nordic who seemed to imply that utilizing the radio does not necessarily tie up the Cortex processor on nRF5X devices. Is this true? It seemed to me that the Nordic libraries (incl SoftDevice) ran on the Cortex.

I see from the radio block diagram in the nRF52 spec that the radio does have its own packetizing and DMA logic. Where can I go to find a more rigorous explanation of what proprietary/BLE radio procedures use the Cortex and which (if any) can be performed concurrently with application code? My goal is to understand how much time I have for application code after radio tasks.

Parents
  • Go to the softdevice specs for the softdevice you're using. You'll find a section there which is called something like "Interrupt Model and Processor Availability". In there is a sub-section which shows the processor usage for various types of use case (broadcaster, connected etc). That tells you when the processor is needed during each cycle of the bluetooth protocol.

    It used to be, way back in the early S110 days, the processor was either tied up or forced not to run throughout fairly large pieces of the transmission/reception window. That was changed with the later versions of nRF51 silicon and is definitely not an issue with the nRF52 series. The softdevice makes the most use of DMA etc as possible to keep the processor free as much as it can.

  • @abc: The proprietary protocols does not use a SoftDevice, but uses the RADIO peripheral directly. THus the processor availability will be determined on how much time that is spent in the RADIO ISR. Of course we have implemented the protocol so that has the lowest current consumption as possible.

Reply Children
No Data
Related