知識(shí)科普 | “看門狗”也有軟硬
時(shí)間:2023-09-08 來源:工業(yè)無線路由器、工業(yè)級(jí)無線DTU上“看門狗”技術(shù)為何如此受歡迎?今天我們就來搞懂它。
一.什么是“看門狗”
看門狗,又叫 watchdog,從本質(zhì)上來說就是一個(gè)定時(shí)器電路,一般有一個(gè)輸入和一個(gè)輸出,其中輸入叫做“喂狗”,輸出一般連接到另外一個(gè)部分的復(fù)位端,一般是連接到單片機(jī)。“看門狗”的功能是定期的查看芯片內(nèi)部的情況,一旦發(fā)生錯(cuò)誤就向芯片發(fā)出重啟信號(hào)。“看門狗”命令在程序的中斷中擁有最高的優(yōu)先級(jí),防止程序跑飛,也可以防止程序在線運(yùn)行時(shí)候出現(xiàn)死循環(huán)。
二、“看門狗”工作原理
在系統(tǒng)運(yùn)行以后也就啟動(dòng)了看門狗的計(jì)數(shù)器,看門狗就開始自動(dòng)計(jì)數(shù),如果到了一定的時(shí)間還不去清看門狗,那么看門狗計(jì)數(shù)器就會(huì)溢出從而引起看門狗中斷,造成系統(tǒng)復(fù)位。所以在使用有看門狗的芯片時(shí)要注意清看門狗。
三、“看門狗”也有軟硬
1. 硬件看門狗技術(shù)
硬件看門狗也稱為程序監(jiān)視定時(shí)器,可幫助微處理器從故障中恢復(fù),避免程序出錯(cuò)或者內(nèi)存溢出等問題的出現(xiàn)。如果看門狗計(jì)時(shí)器達(dá)到其計(jì)數(shù)周期的末尾,它將重置整個(gè)處理器系統(tǒng)。為了防止這種情況,處理器必須執(zhí)行某種類型的特定操作來重置監(jiān)視程序。因此,可以將看門狗定時(shí)器配置為僅在發(fā)生處理器故障時(shí)才達(dá)到其計(jì)數(shù)周期的末尾,并且通過強(qiáng)制系統(tǒng)復(fù)位,看門狗定時(shí)器可幫助處理器擺脫故障模式并繼續(xù)正常運(yùn)行。
2. 軟件看門狗技術(shù)
軟件“看門狗”技術(shù)的原理和硬件差不多,只不過是用軟件的方法實(shí)現(xiàn)。
不同的使用場景,對(duì)工業(yè)無線路由器、工業(yè)級(jí)無線DTU功能與性能的需求點(diǎn)就完全不一樣,在工業(yè)級(jí)應(yīng)用中,穩(wěn)定可靠,是無線組網(wǎng)的第一需求。
試想一下,在工業(yè)現(xiàn)場,遠(yuǎn)程監(jiān)測應(yīng)用時(shí)無線組網(wǎng)出現(xiàn)中斷,前端采集數(shù)據(jù)無法上傳,遠(yuǎn)程管理中心指令無法下達(dá),對(duì)整個(gè)系統(tǒng)運(yùn)行的影響也是致命的。此種情況下,看門狗技術(shù)的“形象”瞬間高大起來,才茂幾乎所有的工業(yè)無線路由器、工業(yè)級(jí)無線DTU產(chǎn)品都內(nèi)嵌了硬件“看門狗”技術(shù)。當(dāng)發(fā)生異常時(shí),硬件斷電自動(dòng)重啟,實(shí)時(shí)保障無線組網(wǎng)與無線數(shù)據(jù)傳輸暢通無阻。