Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Can someone please explain how windowed watchdog timer is different from the normal watchdog timer? When is windowed watchdog timer prefferred over normal watchdog timer?

Thanks

share|improve this question
    
Where did you read about the windowed watchdog? – jippie Feb 13 at 10:09
    
sorry its window watchdog. I am working on ARM processor which implements window watchddog. But I dont understand the need of implementing window watchdog. I think its enough to select a time period in which watchdog should restart. Then why to implement windows, closed and open in the watchdog. – xyz101 Feb 13 at 10:13
up vote 7 down vote accepted

So, let's start with what a watchdog is :

  1. A watchdog is basically a timer system, like a "tic-tac" bomb which is re-armed periodically during normal operation of your processor/controller. If your processor happens to be stuck during execution, it will fail to re-arm the watchdog, an the "tic-tac" bomb will be triggered. Then, the watchdog's job is to re-initialize the stuck system, or trigger an alarm, or execute specific instructions etc... So basically, a watchdog protects a system from being stuck.

  2. Now, imagine that your system is not absolutely stuck (=not executing anything), but for example, is stuck inside an infinite loop meaning it executes all the instructions inside the loop, one of which should be "re-arm the watchdog". But it is not able to exit the loop like it should be in normal operation. If you use a simple watchdog, it will be able to be re-armed at every iteration and your system will never be re-initialized and will stay stuck in this infinite loop. That's why the window watchdog exists : it protects the system against being stuck by needing periodical refresh like in 1), but it also detects when it is re-armed "too much" compared to what it knows to be the nominal system's operation. It's like a watchdog 2.0.

share|improve this answer
    
Thanks for the reply. But as you said "for example, is stuck inside an infinite loop. If you use a simple watchdog, it will be able to be re-armed at every iteration". I didn't get your this point. If my system get stuck, how come the watchdog gets rearmed at every iteration? My controller cant refresh the watch dog, so ideally system reintialisation should happen. – xyz101 Feb 13 at 10:43
1  
It gets stuck, but in an infinite loop, which means it executes all the instructions inside the loop, one of which should be "re-arm the watchdog". But it is not able to exit the loop like it should be. – MaximGi Feb 13 at 10:45
    
Does this means that if the system gets stuck because of the infinite loop which also implements restarting of the of WDT, then it seems as if no watchdog is impemented? – xyz101 Feb 13 at 10:52
    
Yes, the "simple" watchdog is useless in the case of an infinite loop, that's why the window watchdog exists – MaximGi Feb 13 at 11:14
1  
Yes you are right, BUT, you are assuming that your infinite loop is predicted, therefore you are protecting your system according to. Now, sometimes in can happen that a system is stuck inside an infinite loop which was NOT predicted by the designer. – MaximGi Feb 13 at 11:25

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.