System on Chip (SoC) library

The coexistence of Application and SoftDevice with safe sharing of common System on Chip (SoC) resources is ensured by the SoC library.

The features described in Table 1 are implemented by the SoC library and can be used for accessing the shared hardware resources.

Table 1. System on Chip features
Feature Description
Mutex The SoftDevice implements atomic mutex acquire and release operations that are safe for the application to use. Use this mutex to avoid disabling global interrupts in the application, because disabling global interrupts will interfere with the SoftDevice and may lead to dropped packets or lost connections.
NVIC Wrapper functions for the CMSIS NVIC functions provided by ARM®.
Important: To ensure reliable usage of the SoftDevice you must use the wrapper functions when the SoftDevice is enabled.
Rand Provides random numbers from the hardware random number generator.
Power

Access to POWER block configuration while the SoftDevice is enabled:

  • Access to RESETREAS register
  • Set power modes
  • Configure power fail comparator
  • Control RAM block power
  • Use general purpose retention register
  • Configure DC/DC converter state:
    • DISABLED
    • ENABLED
Clock Access to CLOCK block configuration while the SoftDevice is enabled. Allows the HFCLK Crystal Oscillator source to be requested by the application.
Wait for event Simple power management call for the application to use to enter a sleep or idle state and wait for an application event.
PPI Configuration interface for PPI channels and groups reserved for an application.
Radio Timeslot API Schedule other radio protocol activity, or periods of radio inactivity. For more information, see Concurrent multiprotocol implementation using the Radio Timeslot API.
Radio Notification Configure Radio Notification signals on ACTIVE and/or nACTIVE. See Radio Notification Signals.
Block Encrypt (ECB) Safe use of 128-bit AES encrypt HW accelerator.
Event API Fetch asynchronous events generated by the SoC library.
Flash memory API Application access to flash write, erase, and protect. Can be safely used during all protocol stack states. See Flash memory API.
Temperature Application access to the temperature sensor.

Documentation feedback | Developer Zone | Updated 2016-04-08