8-bit PIC® MCU Reset Software Instruction
The Reset Software instruction allows the designer to implement a Master Clear External style reset but from within the application code running on the device. It will briefly hold the PIC MCU in reset when executed and place the Program Counter back to the beginning of the program software (org 0).
The Reset Software instruction is really a way for the software designer to implement a Master Clear (MCLR) reset at any point in the application code. Care should be taken with this instruction as placement within the main loop of code will create a continuous reset loop. It should be placed in a fail-safe location of the software that is executed only at a specific time as needed. A Watchdog Timer Reset (WDT) reset is typically a better choice for protecting the application from outside interference that may cause the device software to not operate as expected.
When the Reset instruction is executed, the RI = 0 bit in the PCON register will be cleared. This persistent bit allows the software designer to check at the beginning of the application to see if a software reset was the cause of the device reset.