99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

看門狗功能在MCU中的設(shè)計應(yīng)用

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-01-18 09:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

由于多線程、實(shí)時和多任務(wù)嵌入式系統(tǒng)的情況紛繁復(fù)雜,使我們越來越難以預(yù)料微處理器會在什么時候出現(xiàn)問題。 在某種程度上獨(dú)立運(yùn)行的服務(wù)程序是如此之多,其中一些很有可能會生存下來,而其它的則被鎖定、廢棄或者執(zhí)行無用代碼。

因此,嵌入式系統(tǒng)設(shè)計人員要在一些低級別服務(wù)程序或者內(nèi)核出現(xiàn)偏差時保護(hù)整個系統(tǒng)并防止出現(xiàn)故障,現(xiàn)在已是難上加難。

本文介紹看門狗功能的發(fā)展需要,且技術(shù)工程師們能通過這些功能確保 MCU 可靠工作。 本文將詳細(xì)考察需要在硬件中從外部、在軟件中從內(nèi)部克服的不足之處,并介紹一些看門狗零件樣件。

簡單保護(hù)

從 4 位到至高級的 32 位及以上的機(jī)器都需要有看門狗功能。 在潛在危險情況下工作的簡單處理器不在少數(shù)。 例如,一個節(jié)流閥控制回路僅需一個簡單的 8 位混合信號微控制器,以本地方式實(shí)現(xiàn)穩(wěn)定的閉環(huán)控制。 該控制器能夠在車輛 CAN 總線上接受指令,從遠(yuǎn)程車載電腦卸載全部處理任務(wù)。 然而,如果這個簡單的處理器出現(xiàn)故障,那么整個節(jié)流閥將起不到任何作用。

可以肯定地說,幾乎每一個現(xiàn)代微控制器都具有一些簡單的看門狗功能——專門的看門狗硬件塊或者能夠用來執(zhí)行軟件控制型看門狗功能的定時器。 這些設(shè)備均與處理器中的系統(tǒng)時鐘實(shí)現(xiàn)了同步。

隨著處理器越來越復(fù)雜,處理器內(nèi)部的時鐘結(jié)構(gòu)和時鐘分布也更加復(fù)雜。 振蕩器特別容易遭受 ESD 沖擊,例如,如果時鐘性能下降,同步看門狗將毫無用處。

R/C 振蕩器和時間常數(shù)雖然保守,但能提供獨(dú)立時鐘機(jī)制和復(fù)位機(jī)制,作為應(yīng)急或后備之用。 同樣,冗余型內(nèi)部和外部振蕩器源能實(shí)現(xiàn)某種形式的心跳效果,以確保在嚴(yán)重故障期間監(jiān)視電路。 此外,可選擇的時鐘集成性與結(jié)構(gòu)樹中的時鐘位置同樣重要(圖 1)。

看門狗功能在MCU中的設(shè)計應(yīng)用

圖 1:系統(tǒng)時鐘和后備 R/C 振蕩器組合在一起可節(jié)省功耗,并能在系統(tǒng)時鐘崩潰時提供一個可靠獨(dú)立的后備時鐘,確保看門狗功能正常。 請注意此處兩個 R/C 振蕩器的使用方式。

對于低壓檢測電路來說,也是如此。 雖然采用內(nèi)部電壓基準(zhǔn)、比較器和檢測器能夠?qū)崿F(xiàn)基本精度,但通過外部電路可實(shí)現(xiàn)更高的分辨率和更精確的電壓電平選擇性。 例如,如果您的部分電壓故障模式軟件包括寫入 EEPROM 功能,您可能希望低壓檢測器閾值提早跳變,以使容性電荷存儲器有足夠的時間在按順序關(guān)斷之前執(zhí)行 EEPROM 寫入功能。 現(xiàn)代電壓檢測器能夠達(dá)到低至 0.05 V 的電壓分辨率,以便精確使用所有能量。 通常,這個分辨率要遠(yuǎn)勝于您利用微控制器從內(nèi)部實(shí)現(xiàn)的分辨率。

還需要了解的一點(diǎn)是單獨(dú)的最大超時并非始終有效。 大多數(shù)看門狗解決方案基本上在執(zhí)行一個可再觸發(fā)式單穩(wěn)態(tài)多諧振蕩器(可再觸發(fā)式單觸發(fā))的功能。 如果軟件或者硬件周期時鐘不能在最大允許時間幀內(nèi)使定時器復(fù)位,看門狗跳變并會使處理器復(fù)位(或者啟動故障恢復(fù)服務(wù)程序)。

最小時間要求也應(yīng)考慮。 例如,如果一個服務(wù)程序與 60 Hz 電源線的過零點(diǎn)同步,那么脈沖間隔應(yīng)是 8.33 ms。 如果這些脈沖過早達(dá)到,則必須克服通常會影響安全的噪聲或者故障條件。

多處理器和多核設(shè)計的情況特殊。 應(yīng)對單獨(dú)的看門狗進(jìn)行設(shè)置,以利用當(dāng)時在每個理器中運(yùn)行的唯一代碼條件來監(jiān)視這些處理器或內(nèi)核。 也就是說,針對多核環(huán)境中某個內(nèi)核的部分軟件開發(fā)應(yīng)帶有能指示特定代碼塊故障的看門狗條件。

此外,看門狗報告應(yīng)采用層級結(jié)構(gòu)。 每個內(nèi)核應(yīng)向更高層級的看門狗報告,該看門狗把由所有子核和流程報告的全部故障模式聯(lián)系在一起。 作為一個高層級系統(tǒng)功能,看門狗執(zhí)行程序與為特定內(nèi)核分配代碼塊的主任務(wù)執(zhí)行程序同步工作。 另外,也與外部看門狗系統(tǒng)密切合作。

線或類型多看門狗模功能塊能很容易地進(jìn)行擴(kuò)展,以使用特定于某個內(nèi)核的 I/O 進(jìn)行報告(圖 2)。 該功能塊可以是 FPGA 或者 CPLD 中的獨(dú)立邏輯塊,且易于擴(kuò)展,能應(yīng)對多個處理器和功能塊。 寄存器能夠累加所有報告功能塊的獨(dú)立狀態(tài),以試圖單獨(dú)恢復(fù)那個內(nèi)核。 如您所想,這個層級的恢復(fù)程序會變得更復(fù)雜,就像在保持系統(tǒng)其余部分運(yùn)行的同時重新啟動內(nèi)核那樣。

看門狗功能在MCU中的設(shè)計應(yīng)用

圖 2:看門狗層級結(jié)構(gòu)的頂層能使用可擴(kuò)展線或功能,以使所有微處理器或內(nèi)核能按照各自的速率進(jìn)行報告。 每個“單觸發(fā)”都應(yīng)允許受其監(jiān)視的進(jìn)程按持續(xù)間隔進(jìn)行編程。 每個代碼塊均攜帶看門狗參數(shù)。

具有特殊看門狗功能的零件

在涉及到如何實(shí)現(xiàn)看門狗功能時,有多種微處理器具有唯一或不同的功能。 以 16 位 Maxim MaxQ 系列微控制器為例,為提升有用性,該系列將類型豐富而靈活地定時器和設(shè)計巧妙的電路組合在一起。 象 Maxim MAXQ2000-RBX+ 這樣的零件具有次級報警。 如果沒有報警且 MAXQ2000 的看門狗 (WTD) 發(fā)生溢出,那么,再次經(jīng)過另外 512 個系統(tǒng)時鐘周期計數(shù)后該微控制器會觸發(fā)一個中斷。 然后,如果未被禁用或覆蓋,它會使全部定時器復(fù)位。

這種中斷為保存調(diào)試信息提供了“最后的機(jī)會”——一個得到了大多數(shù)設(shè)計人員的一致認(rèn)可、在電路開發(fā)、故障清除期間非常有用的機(jī)會。 而且,該中斷可用于將看門狗從錯誤中恢復(fù)并將其清空,而不是保存調(diào)試信息。 然而,后一種方法在系統(tǒng)發(fā)生故障時會削弱系統(tǒng)可靠性。

與其它內(nèi)部 WDT 類似,MAXQ2000 的看門狗可通過軟件禁用。 不過應(yīng)當(dāng)注意,這種功能就像一把雙刃劍:失控代碼禁用看門狗后仍處于失控狀態(tài)。

一些微處理器的 WDT 會與獨(dú)立于系統(tǒng)時鐘的內(nèi)部振蕩器連接。 還有一些微處理器使用內(nèi)部或外部 R/C 振蕩器,有的同時使用這些振蕩器。 Maxim MAXQ2000 的 WDT 上有一個令人感興趣的功能:雖然從系統(tǒng)時鐘驅(qū)動看門狗定時功能,但能在主振蕩器故障時切換至備用振蕩器。

另一種讓人關(guān)注并具有獨(dú)特看門狗功能的 MCU 便是采用兩個看門狗定時器的 STM32F100 系列(由 STMicroelectronics 提供)。 象 STM32F100CBT6B 這樣的零件均針對要求高可靠性的智能電網(wǎng)智能健康應(yīng)用。 同大多數(shù)微處理器一樣,該器件也采用了多個定時器(此處為六個),且另外有兩個 16 位定時器專用于看門狗功能。

每個看門狗都具有一個為看門狗定時器提供時鐘的可選擇預(yù)分頻器 (1 - 64 K),同時還能觸發(fā) DMA 請求并捕獲比較通道。 另一種獨(dú)立的看門狗基于一個 112 位下變頻器和 8 位預(yù)分頻器,并采用獨(dú)立的 40 kHz 內(nèi)部 R/C 振蕩器提供時鐘。 注意這兩種零件如何依賴 R/C 元件,將其作為超可靠的后備技術(shù)。

STMicroelectronics 零件吸引人的一個特性就是模擬看門狗功能。 對經(jīng)過 A/D 轉(zhuǎn)換的一個或兩個電壓電平進(jìn)行精確監(jiān)視,能在模擬電平超過預(yù)設(shè)閾值時使復(fù)位跳變。 對于那些通過傳感器與人體局域網(wǎng)連接且用于健康監(jiān)視或主動給藥的醫(yī)療應(yīng)用,該功能會非常有用(圖 3)。 為方便設(shè)計,STMicroelectronics 向工程師們提供有關(guān)健康和醫(yī)療保健設(shè)計的產(chǎn)品培訓(xùn)模塊。

看門狗功能在MCU中的設(shè)計應(yīng)用

圖 3:隨著醫(yī)療設(shè)備越來越積極地與我們的人體局域網(wǎng)集成在一起,一些設(shè)備(心臟起搏器、除顫器、胰島素泵等)在維持人的生命中可能會發(fā)揮至關(guān)重要的作用。 需要在這些系統(tǒng)中集成可靠的看門狗。

由外向內(nèi)看

許多好的構(gòu)造塊外部解決方案包括簡單的 R/C 閾值發(fā)生器、偏置晶體管、低功耗定時器,以及專用上電復(fù)位和看門狗協(xié)處理器。 此外,現(xiàn)在已有可用的開發(fā)環(huán)境,鼓勵人們進(jìn)行實(shí)驗和簡化測試。Texas Instruments 利用其 TPL5000 毫微功耗可編程定時器提供了一種令人感興趣的解決方案,該方案在 1.8 - 5 VCC 寬電壓范圍內(nèi)的電流消耗僅 30 nA。 TPL5000EVM 評估套件能讓您在一個小而精致的自足式模塊中測試、優(yōu)化該功能。

目前,已有多種分立式看門狗可與其它有用的功能組合在一起,如實(shí)時時鐘 和 監(jiān)視功能。 Lattice Semiconductor 提供了一個值得關(guān)注的組合品,帶有其 ISPPAC-POWR607-01SN32I 電源監(jiān)控器、看門狗和復(fù)位發(fā)生器(圖 4)。 請注意 1% 的模擬跳變點(diǎn)步長值以及用于狀態(tài)機(jī)和組合式定制的在系統(tǒng)編程宏單元。

看門狗功能在MCU中的設(shè)計應(yīng)用

圖 4:利用在系統(tǒng)用戶可編程參數(shù),可通過使用組合式和基于狀態(tài)機(jī)的用戶可配置邏輯,實(shí)現(xiàn)看門狗功能的動態(tài)確定。

總結(jié)

謹(jǐn)記有時候做何事情都無助于系統(tǒng)恢復(fù)。 有些故障是不可恢復(fù)的。 例如,如果系統(tǒng)存儲器崩潰,那么就再沒有什么可值得信任了。

另一種情況是如果存在很高級別的噪音。 即使看門狗使處理器復(fù)位,這種噪聲仍能影響處理器的看門狗級初始化。 如果看門狗功能未被初始化,看門狗就如形同虛設(shè)。

任何人都不能指望任何 MCU 在任何時候都能百分之百無故障運(yùn)行。 微處理器也可能出錯。 然而,是僅出現(xiàn)輕微故障,還是災(zāi)難性財產(chǎn)損壞或者甚至死亡,關(guān)鍵在于能否合理使用內(nèi)外資源。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17985

    瀏覽量

    367346
  • 嵌入式
    +關(guān)注

    關(guān)注

    5152

    文章

    19678

    瀏覽量

    317788
  • 微處理器
    +關(guān)注

    關(guān)注

    11

    文章

    2383

    瀏覽量

    84217
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    STM32的獨(dú)立看門狗和窗口看門狗是什么

    在早期的MCU是沒有看門狗這種東西的,所以產(chǎn)品就很容易出現(xiàn)死機(jī),跑飛的情況。為了避免這種情況的出現(xiàn),后期的MCU都集成了看門狗
    的頭像 發(fā)表于 02-20 17:47 ?3454次閱讀
    STM32<b class='flag-5'>中</b>的獨(dú)立<b class='flag-5'>看門狗</b>和窗口<b class='flag-5'>看門狗</b>是什么

    MCU獨(dú)立看門狗和窗口看門狗的區(qū)別

    早期的MCU沒有看門狗,就容易引起有些產(chǎn)品死機(jī)了不能重啟工作。為了避免這個問題,后期的MCU在內(nèi)部集成了看門狗功能
    發(fā)表于 03-03 09:18 ?1141次閱讀

    單片機(jī)獨(dú)立看門狗和窗口看門狗的區(qū)別

    早期的MCU沒有看門狗,就容易引起有些產(chǎn)品死機(jī)了不能重啟工作。為了避免這個問題,后期的MCU在內(nèi)部集成了看門狗功能
    發(fā)表于 06-06 09:40 ?902次閱讀
    單片機(jī)獨(dú)立<b class='flag-5'>看門狗</b>和窗口<b class='flag-5'>看門狗</b>的區(qū)別

    stm32看門狗時間計算 獨(dú)立看門狗和窗口看門狗的特性是什么

    本文為您講解STM看門狗時間計算(時限)與頻率計算,獨(dú)立看門狗和窗口看門狗的特性、區(qū)別與聯(lián)系。
    發(fā)表于 10-10 10:41 ?9013次閱讀

    什么是stm32看門狗?獨(dú)立看門狗和窗口看門狗工作原理解析

    stm32有兩個看門狗,獨(dú)立看門狗和窗口看門狗,其實(shí)兩者的功能是類似的,只是喂狗的限制時間不同。 獨(dú)立看門狗
    的頭像 發(fā)表于 11-06 11:48 ?2.8w次閱讀
    什么是stm32<b class='flag-5'>看門狗</b>?獨(dú)立<b class='flag-5'>看門狗</b>和窗口<b class='flag-5'>看門狗</b>工作原理解析

    STM32看門狗配置(獨(dú)立看門狗IWDG和窗口看門狗WWDG)

    stm32自帶兩個看門狗模塊,獨(dú)立看門狗IWDG和窗口看門狗WWDG。看門狗主要作用是可用來檢測和解決由軟件錯誤引起的故障;當(dāng)計數(shù)器達(dá)到給定的超時值時,觸發(fā)一個中斷(僅適用于窗口型
    發(fā)表于 11-09 17:17 ?8592次閱讀
    STM32<b class='flag-5'>看門狗</b>配置(獨(dú)立<b class='flag-5'>看門狗</b>IWDG和窗口<b class='flag-5'>看門狗</b>WWDG)

    對于MCU看門狗IIWDG WWDG喂狗時間的配置參考

    對于MCU看門狗IIWDG WWDG喂狗時間的配置參考可以參考MCU的datasheet;在每個MCU的datasheet中都有這樣的表格:6.3.25 Timer
    發(fā)表于 10-28 12:06 ?13次下載
    對于<b class='flag-5'>MCU</b><b class='flag-5'>看門狗</b>IIWDG WWDG喂狗時間的配置參考

    MCU獨(dú)立看門狗與窗口看門狗的區(qū)別

    早期的MCU沒有看門狗,就容易引起有些產(chǎn)品死機(jī)了不能重啟工作。為了避免這個問題,后期的MCU在內(nèi)部集成了看門狗功能。為了滿足更多使用場景,
    發(fā)表于 10-28 20:06 ?8次下載
    <b class='flag-5'>MCU</b>獨(dú)立<b class='flag-5'>看門狗</b>與窗口<b class='flag-5'>看門狗</b>的區(qū)別

    MCU獨(dú)立看門狗與窗口看門狗的區(qū)別

    關(guān)注+星標(biāo)公眾號,不錯過精彩內(nèi)容素材來源 | STM32早期的MCU沒有看門狗,就容易引起有些產(chǎn)品死機(jī)了不能重啟工作。為了避免這個問題,后期的MCU在內(nèi)部集成了看門狗
    發(fā)表于 10-29 10:51 ?2次下載
    <b class='flag-5'>MCU</b>獨(dú)立<b class='flag-5'>看門狗</b>與窗口<b class='flag-5'>看門狗</b>的區(qū)別

    MCU】基于STM32CubeMX 實(shí)現(xiàn)窗口看門狗 WWDG

    ”表示看門狗遞減計數(shù)器只能在一個窗口時間內(nèi)完成刷新,否則MCU將復(fù)位。(2)窗口看門狗一般用來監(jiān)測由外部干擾或不可預(yù)見的邏輯條件造成的應(yīng)用背離正常運(yùn)行序列而產(chǎn)生的軟件故障。(3)要求
    發(fā)表于 11-01 16:24 ?10次下載
    【<b class='flag-5'>MCU</b>】基于STM32CubeMX 實(shí)現(xiàn)窗口<b class='flag-5'>看門狗</b> WWDG

    STM32的獨(dú)立看門狗和窗口看門狗

    一、前言 在早期的MCU是沒有看門狗這種東西的,所以產(chǎn)品就很容易出現(xiàn)死機(jī),跑飛的情況。為了避免這種情況的出現(xiàn),后期的MCU都集成了看門狗
    的頭像 發(fā)表于 12-22 16:58 ?2571次閱讀

    STM32的獨(dú)立看門狗和窗口看門狗

    在早期的MCU是沒有看門狗這種東西的,所以產(chǎn)品就很容易出現(xiàn)死機(jī),跑飛的情況。為了避免這種情況的出現(xiàn),后期的MCU都集成了看門狗
    的頭像 發(fā)表于 01-30 14:38 ?1771次閱讀
    STM32<b class='flag-5'>中</b>的獨(dú)立<b class='flag-5'>看門狗</b>和窗口<b class='flag-5'>看門狗</b>

    MCU如何集成看門狗功能

    一、前言 在早期的MCU是沒有看門狗這種東西的,所以產(chǎn)品就很容易出現(xiàn)死機(jī),跑飛的情況。為了避免這種情況的出現(xiàn),后期的MCU都集成了看門狗
    的頭像 發(fā)表于 06-22 09:09 ?2340次閱讀
    <b class='flag-5'>MCU</b>如何集成<b class='flag-5'>看門狗</b>的<b class='flag-5'>功能</b>

    什么是看門狗,工業(yè)路由器看門狗技術(shù)的功能優(yōu)勢

    工業(yè)路由器大多都會配備看門狗技術(shù),它是保證工業(yè)路由器傳輸過程連續(xù)24小時不宕機(jī)的重要保護(hù)技術(shù),那么,什么是看門狗呢?▍看門狗功能看門狗,又
    的頭像 發(fā)表于 03-27 10:16 ?2449次閱讀
    什么是<b class='flag-5'>看門狗</b>,工業(yè)路由器<b class='flag-5'>看門狗</b>技術(shù)的<b class='flag-5'>功能</b>優(yōu)勢

    MCU硬件看門狗+軟件看門狗監(jiān)測多任務(wù)的思路

    MCU硬件看門狗+軟件看門狗監(jiān)測多任務(wù)的思路
    的頭像 發(fā)表于 10-24 15:25 ?2156次閱讀
    <b class='flag-5'>MCU</b>硬件<b class='flag-5'>看門狗</b>+軟件<b class='flag-5'>看門狗</b>監(jiān)測多任務(wù)的思路