How do Reset, Reload and Restart differ?
The three IDDE options "Reset, "Reload" and "Restart", although similar, perform subtly different actions to one another. The descriptions should clarify the behavior of each.
Reset - The 'Reset' command restores the target to a known startup state. This involves clearing processor memory, configuring registers to startup values, and setting PC to Reset address.
Reload - The 'Reload' command reloads the current program and, by default, Resets the target (configurable in properties - "Reset on Reload"). Note: if a Reset is not also performed, only the program's image is reloaded. Memory that is not overwritten by the program will not be changed.
Restart (Removed in 4.5) - The 'Restart' command sets the PC to the Reset address. Unlike a Reset, you do not need to reload the program. The 'Restart' command has different behavior depending on whether you are using it within a Simulator Session, or working on hardware. The behavior is as follows:
Simulator Sessions - In simulation, Restart works like Reset in that all registers are reset to their reset values, however unlike a reset the processor memory is not cleared. Thus, C and assembly global variables are not reset to their original values, which in turn means that your program may behave differently after a restart. To reinitialize these values, you should use a 'Reload' to reload the .DXE file.
Hardware Sessions - In EZ-KIT or Emulator sessions, Restart works exactly like Reset, except that only registers with default reset values are affected. All other registers remain unchanged.
This FAQ was generated from the following thread: How do Reset, Reload and Restart differ?