What can cause a "system reset" on LPC1517?

This happens sporadically within a tight delay loop about 1 second after code startup. The SYSRST bit is the only bit set in the reset status register. This is on a custom board with three LPC1517s running identical code but only happens with one particular micro on two different boards.

Thank you for the response. I have narrowed down the failure point to a single line of C code which is:

for ( x = 0; x < 5000; x++ ) { ; }

That is just a delay while some LEDs are turned on after power-up or a reset.

My code will run until it hits a breakpoint on that line. If I move the breakpoint to the following line I will get the reset. As I said, the SYSRST bit is the only bit set in the system reset status register (I clear any set bits after reading the register) so it doesn’t appear to be an external reset, watchdog reset, etc. The LPC15xx user’s manual doesn’t have much information on the meaning of the SYSRST other than a vague mention of it being caused by a software reset.

My board has four LPC1517s, three are executing the exact same code and this portion of the code is also executed on the fourth micro. I have tested all four micros on four different boards and have only seen the reset problem on two micros. They were in the same physical location on the board both times so there may be something hardware related (or not). The other odd thing is it usually seems to get in a mode where it consistently works right (not resetting) or consistently gets the reset during this delay loop.

If there isn’t a known problem related to this then I am hoping to get more definition around the meaning of the SYSRST bit and what causes it to be set.