A problem we once had with a Super-8 MCU and a watchdogtimer:
We were developing a product based on a Zilog
Super-8 MCU and the hardware designer had added
a hardware watchdogtimer that was triggered by one
of the lower address lines, probably a0, assuming
that even by executing code alone it would be triggered
all of the time when the system was functioning properly.
I was the programmer for the system and after
a while we noticed that the system constantly reset
some time after booting up (but only after some
compilations of the software).
What was the case as we found out months (!) later:
Some time after booting a loop was executed and
some times this loop executed all it's instructions
from a small hidden cache (as we assume) and the
data used was such that the address line was never
changed and therefore didn't toggle the watchdogtimer that promptly reset the system after a while.
And if only I had known that there was a watchdogtimer in the system I could easily have put a scope
on it, but it was added at the last moment and it
wasn't in the schematic that I had...