Programmatically Rebooting the Device#

In both the XVF3800-UA and XVF3800-INT devices, the function reboot_xvf3800(unsigned delay) is provided in tile_common.h to facilitate rebooting the device from within the application. It is declared as

/// @brief reboot the package that called this function after delay ms
/// @param delay a count in ms that will wait until the reboot happens
void reboot_xvf3800(unsigned delay);

This will enable the watchdog timer and instruct it to operate after delay milliseconds. The function will return when complete, but the reboot will have been scheduled as requested. For more information on the operation of the watchdog timer, see the datasheet for the relevant xcore.ai package.

The device may also be rebooted by use of the RST_N pin. Pulling this pin low externally will force a hardware reboot of the device. For more information, including the pin number of the RST_N pin on the relevant package, see the Device Datasheet included in the XVF3800 documentation set.