| ??? 11/06/07 22:56 Read: times Msg Score: +1 +1 Informative |
#146705 - Latched-up CMOS! Responding to: ???'s previous message |
a BADLY WRITTEN runaway code may kick an external dog as easily as a BADLY WRITTEN runaway code may kick the internal dog.
I use a triple check mechanism to trig the WD circuit continuously so if any of those conditions are missing the WD will bite the CPU. What is the duration of the reset pulse, then? And, have you verified that the clock is running? (on ALE, perhaps, or, with sufficient care (high impedance probe) directly on the crystal pins) The pulse width is very longer than normal, something around 5ms. The CPU is given enough recovery time after the reset pulse. Well, I did check the clock input and it seemed to function normally. While I don't claim there is no internal flaw in the logic in the said mcu, there are certainly also mechanisms how to kick a modern CMOS to - temporary or permanent - death. If, as a consequence of some strong pulse, some of the internal CMOS gates latches up (do you know this effect, Farshad?), that gate cannot perform its logic function anymore, and stays dead - either until power cycle, or permanently. That's the possibility that I was thinking about. Apparently, some gates go to an irrecoverable latched-up state. However it is a matter of interpretation to consider it as a design flaw or a natural behaviour of MCU. Ask me and I'll tell that it is a design bug because RESET is your last resort when things go wrong and what else can I do? Force the watchdog circuit to unplug/plug the power cord? :) Though I'm not an expert in the field I believe that a good MCU design can overcome "the latched-up gate problem" by providing external mechanisms that either use non-CMOS gates or implement some sort of a backup circuit that can reactivate/bypass the reset mechanism. The lesson I've learned is that you shouldn't only rely on RESET functionality when you design a device which must function in a 7/24 manner. The first step must be eliminating the EMI if possible. The second stop is to protect your MCU against EMI as much as you can. The 3rd step is using a well designed external WD circuit. |



