• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于FPGA的多任務(wù)硬看門(mén)狗容錯(cuò)技術(shù)

    2012-09-21 10:43:44包明磊姚艷松
    關(guān)鍵詞:看門(mén)狗監(jiān)視系統(tǒng)多任務(wù)

    包明磊,姚艷松

    (國(guó)電南京自動(dòng)化股份有限公司,南京 210061)

    引 言

    電力系統(tǒng)微機(jī)繼電保護(hù)裝置作為保證電力系統(tǒng)設(shè)備安全運(yùn)行的自動(dòng)裝置,對(duì)于嵌入式系統(tǒng)自身的可靠性有著很高的要求。多年來(lái),圍繞著保護(hù)裝置嵌入式系統(tǒng)的抗干擾技術(shù),以及其受干擾后的自我恢復(fù),在硬件和軟件等方面積累了多種方法。這些方法相互結(jié)合,配合使用,有效地提高了系統(tǒng)的可靠性與抗干擾能力[1-2]。

    看門(mén)狗技術(shù)是最常見(jiàn)的抗干擾技術(shù)??撮T(mén)狗分為硬看門(mén)狗和軟看門(mén)狗;硬看門(mén)狗采用“看門(mén)狗”電路,即通過(guò)定時(shí)器對(duì)任務(wù)在運(yùn)行時(shí)間上加以約束;軟看門(mén)狗采用處理器內(nèi)部定時(shí)器,把任務(wù)的最大理論運(yùn)行時(shí)間作為時(shí)間約束[2-4]。

    以往,在多任務(wù)系統(tǒng)中一般設(shè)置一個(gè)優(yōu)先級(jí)最高的任務(wù)作為監(jiān)視器,對(duì)系統(tǒng)中運(yùn)行的所有任務(wù)進(jìn)行監(jiān)控,只要有一個(gè)任務(wù)出現(xiàn)故障,該監(jiān)視任務(wù)就延遲喂狗,使硬看門(mén)狗溢出,重啟系統(tǒng)。使用這種方法需要額外消耗嵌入式系統(tǒng)的信號(hào)量資源和任務(wù)運(yùn)行時(shí)間,減少保護(hù)算法的運(yùn)行時(shí)間,且對(duì)監(jiān)視任務(wù)要求較高。當(dāng)中斷運(yùn)行時(shí)間過(guò)長(zhǎng)時(shí),無(wú)法及時(shí)恢復(fù)[3]。

    本文介紹一種多任務(wù)硬看門(mén)狗容錯(cuò)技術(shù),通過(guò)這種技術(shù),保護(hù)裝置嵌入式軟件的所有任務(wù)(包括中斷)都可以互相無(wú)干擾地對(duì)硬看門(mén)狗喂狗,可以在確保嵌入式系統(tǒng)運(yùn)行效率的基礎(chǔ)上,保證系統(tǒng)的安全可靠。

    1 多任務(wù)硬看門(mén)狗容錯(cuò)技術(shù)設(shè)計(jì)

    多任務(wù)硬看門(mén)狗容錯(cuò)技術(shù)是以硬看門(mén)狗芯片為基礎(chǔ),以FPGA為核心,以外圍電路為輔助,充分考慮保護(hù)裝置的需求,共同構(gòu)成一個(gè)可實(shí)現(xiàn)監(jiān)視、告警、自恢復(fù)等功能的抗干擾系統(tǒng),具體原理如圖1所示。保護(hù)裝置一般需要運(yùn)行7~10個(gè)任務(wù)和2~3個(gè)定時(shí)中斷,每個(gè)任務(wù)和中斷均需要確保硬看門(mén)狗喂狗可靠,F(xiàn)PGA中的“多任務(wù)喂狗監(jiān)視系統(tǒng)”監(jiān)視這些任務(wù)的喂狗信號(hào),實(shí)時(shí)統(tǒng)計(jì)每個(gè)喂狗信號(hào)的狀態(tài),只有當(dāng)所有喂狗信號(hào)均有效時(shí),該系統(tǒng)才對(duì)硬看門(mén)狗發(fā)出實(shí)際的喂狗信號(hào)。若某個(gè)任務(wù)或者中斷出現(xiàn)故障,該系統(tǒng)會(huì)自動(dòng)停止對(duì)硬看門(mén)狗的喂狗;如果硬看門(mén)狗在設(shè)定時(shí)間內(nèi)沒(méi)有被喂狗,則發(fā)出RESET信號(hào)重啟嵌入式系統(tǒng)。此外,本技術(shù)包含一個(gè)計(jì)數(shù)器系統(tǒng),負(fù)責(zé)統(tǒng)計(jì)復(fù)位信號(hào)的次數(shù),當(dāng)連續(xù)多次出現(xiàn)復(fù)位信號(hào),則說(shuō)明嵌入式軟件發(fā)生嚴(yán)重故障,該系統(tǒng)發(fā)出告警信號(hào)通知維修和更換,確保保護(hù)裝置的可靠性。

    圖1 多任務(wù)硬看門(mén)狗容錯(cuò)技術(shù)原理框圖

    在實(shí)際應(yīng)用中,主CPU和FPGA之間可以通過(guò)總線相連,各任務(wù)和中斷的喂狗信號(hào)可以以命令的形式對(duì)“多任務(wù)喂狗監(jiān)視系統(tǒng)”進(jìn)行喂狗。在整個(gè)系統(tǒng)的硬件設(shè)計(jì)中,計(jì)數(shù)器告警電路是個(gè)難點(diǎn),本文給出了具體的硬件原理圖,如圖2所示。

    圖2 計(jì)數(shù)器告警電路原理圖

    硬看門(mén)狗MAX823S是Maxim公司推出的小體積、低功耗的看門(mén)狗芯片。該芯片若在1.6s內(nèi)沒(méi)有被觸發(fā)WDI,則引 腳 發(fā) 出 200ms的 低 電 平 信 號(hào)[4]。SN74HC393DT為計(jì)數(shù)器,SN74HC32D為或門(mén)。MAX823S的WDI引腳接收“多任務(wù)喂狗監(jiān)視系統(tǒng)”的喂狗信號(hào)引腳產(chǎn)生的復(fù)位信號(hào)不僅重啟系統(tǒng),同時(shí)接入SN74HC32D的輸入端。SN74HC32D的輸出接計(jì)數(shù)器SN74HC393DT的CLK引腳,SN74HC393DT的Q2引腳可以發(fā)出告警信號(hào),同時(shí)接入SN74HC32D的輸入端作為閉鎖信號(hào)。SN74HC393DT的MR引腳可以接入CPU的PIO引腳,由CPU對(duì)其定時(shí)初始化。

    當(dāng)嵌入式系統(tǒng)正常工作的時(shí)候,CPU可以不停地發(fā)送計(jì)數(shù)器清零信號(hào)、復(fù)位告警信號(hào);當(dāng)嵌入式系統(tǒng)發(fā)生故障時(shí),硬看門(mén)狗在設(shè)定時(shí)間內(nèi)沒(méi)有收到“多任務(wù)喂狗監(jiān)視系統(tǒng)”的喂狗信號(hào) WDI,發(fā)出的復(fù)位信號(hào)產(chǎn)生脈沖,計(jì)數(shù)器對(duì)這個(gè)脈沖進(jìn)行計(jì)數(shù);當(dāng)嵌入式系統(tǒng)連續(xù)發(fā)生故障無(wú)法恢復(fù)時(shí),一方面無(wú)法發(fā)出清零信號(hào)對(duì)計(jì)數(shù)器清零,另一方面硬看門(mén)狗持續(xù)發(fā)出復(fù)位信號(hào),當(dāng)復(fù)位信號(hào)的次數(shù)超過(guò)4次時(shí)計(jì)數(shù)器SN74HC393DT的Q2引腳有效,發(fā)出告警信號(hào),同時(shí)該信號(hào)將閉鎖CLK的輸入信號(hào),防止計(jì)數(shù)器溢出。

    2 多任務(wù)喂狗監(jiān)視系統(tǒng)的設(shè)計(jì)

    多任務(wù)喂狗監(jiān)視系統(tǒng)是整個(gè)容錯(cuò)技術(shù)的核心,考慮到保護(hù)裝置的需求,要求該系統(tǒng)運(yùn)算速度快、延時(shí)小、支持多任務(wù)并行處理。由于FPGA兼容了PLD和通用門(mén)陣列的優(yōu)點(diǎn),除了具有體系結(jié)構(gòu)和邏輯單元靈活、集成度高,以及電壓適用范圍寬等特點(diǎn)外,還具有設(shè)計(jì)開(kāi)發(fā)周期短、設(shè)計(jì)制造成本低、移植方便等優(yōu)點(diǎn)。為了保證監(jiān)視系統(tǒng)的實(shí)時(shí)性和可移植性,本設(shè)計(jì)選用FPGA實(shí)現(xiàn)該系統(tǒng)[5]。

    在對(duì)FPGA芯片進(jìn)行開(kāi)發(fā)編程時(shí),由于Verilog HDL語(yǔ)言且具有設(shè)計(jì)技術(shù)齊全、方法靈活、支持廣泛、硬件描述能力強(qiáng)、易于共享和復(fù)用等優(yōu)點(diǎn),因此多任務(wù)喂狗監(jiān)視系統(tǒng)使用Verilog HDL語(yǔ)言進(jìn)行開(kāi)發(fā)[6]。

    根據(jù)容錯(cuò)技術(shù)的設(shè)計(jì)思路,考慮到實(shí)用性、可靠性和拓展性,監(jiān)視系統(tǒng)的設(shè)計(jì)重點(diǎn)解決以下問(wèn)題:

    ① 該系統(tǒng)可以靈活設(shè)置需要監(jiān)視的喂狗命令接點(diǎn)(一個(gè)命令接點(diǎn)受一個(gè)任務(wù)或者中斷控制),并確保禁止的喂狗命令接點(diǎn)不會(huì)影響WDI信號(hào)的輸出;

    ② 該系統(tǒng)要具有自喂狗功能,即在配置不需要監(jiān)視任何喂狗命令接點(diǎn)時(shí),還能夠自行喂狗,防止系統(tǒng)崩潰;

    ③ 該系統(tǒng)應(yīng)能夠方便可靠地增減可配置的喂狗命令接點(diǎn)的數(shù)量。

    針對(duì)上述問(wèn)題,本設(shè)計(jì)采用模塊化設(shè)計(jì)的思路,將系統(tǒng)設(shè)計(jì)分成兩個(gè)部分:命令接點(diǎn)監(jiān)視模塊和WDI產(chǎn)生模塊。

    2.1 命令接點(diǎn)監(jiān)視模塊

    命令接點(diǎn)監(jiān)視模塊可以使能和監(jiān)視指定的喂狗命令接點(diǎn)。它是一個(gè)公共模塊,輸入量為初始化信號(hào)rst、清零信號(hào)clr、喂狗命令接點(diǎn)地址等等,輸出量是使能狀態(tài)enable和喂狗狀態(tài)status。

    當(dāng)嵌入式軟件需要使能或者禁止某個(gè)喂狗命令接點(diǎn)時(shí),該模塊可以通過(guò)命令解析改變使能狀態(tài)enable;當(dāng)嵌入式軟件通過(guò)命令對(duì)某個(gè)喂狗命令接點(diǎn)喂狗時(shí),該模塊改變喂狗狀態(tài)status;此外該模塊還可以接收clr信號(hào)對(duì)喂狗狀態(tài)進(jìn)行復(fù)位。其核心代碼如下所示:

    由最后一條代碼可見(jiàn),由于喂狗狀態(tài)受使能狀態(tài)的控制,因此當(dāng)禁止某個(gè)喂狗命令接點(diǎn)時(shí),該命令接點(diǎn)的喂狗狀態(tài)可以保持有效,從而確保禁止的喂狗命令接點(diǎn)不會(huì)影響到WDI信號(hào)的輸出。

    2.2 WDI產(chǎn)生模塊

    WDI產(chǎn)生模塊負(fù)責(zé)調(diào)用命令接點(diǎn)監(jiān)視模塊,監(jiān)視每一個(gè)喂狗命令接點(diǎn),統(tǒng)計(jì)所有喂狗命令接點(diǎn)的喂狗狀態(tài),并決定是否發(fā)出WDI信號(hào),軟件流程如圖3所示。

    圖3 WDI產(chǎn)生模塊的軟件流程

    其中,如何識(shí)別喂狗狀態(tài)并發(fā)出WDI信號(hào)是個(gè)技術(shù)關(guān)鍵點(diǎn),本系統(tǒng)定義一個(gè)喂狗信號(hào)總狀態(tài)TotalStatus,它是由各個(gè)喂狗命令接點(diǎn)的喂狗狀態(tài)“與”門(mén)組合而成。當(dāng)判斷該狀態(tài)有效時(shí),則發(fā)出一段時(shí)間的WDI信號(hào),并清除所有喂狗命令接點(diǎn)的喂狗狀態(tài),啟動(dòng)下一輪的監(jiān)視;當(dāng)禁止監(jiān)視所有的喂狗命令接點(diǎn)時(shí),該狀態(tài)恒定有效,一直發(fā)出WDI信號(hào)。

    為了實(shí)現(xiàn)上述功能,本系統(tǒng)事先產(chǎn)生一個(gè)固定周期的脈沖波形WDIPulse,并設(shè)計(jì)一個(gè)由TotalStatus觸發(fā)的單穩(wěn)信號(hào) WDIGate,由 WDIGate閉鎖和使能 WDIPulse的輸出達(dá)到控制WDI信號(hào)的目的。具體的核心代碼如下所示:

    可見(jiàn),TotalStatus的上升沿可以觸發(fā)至少8個(gè)clock的單穩(wěn)信號(hào)。在這段時(shí)間內(nèi)系統(tǒng)可以輸出WDI信號(hào)對(duì)硬看門(mén)狗喂狗,在TotalStatus有效后的第7個(gè)clock時(shí),模塊清除各個(gè)喂狗命令接點(diǎn)的喂狗狀態(tài),確保可以監(jiān)視下一輪喂狗信號(hào)。當(dāng)禁止了所有的喂狗命令接點(diǎn)時(shí),由于TotalStatus不受clr信號(hào)控制,使得 WDIGate一直有效,系統(tǒng)自行喂狗,防止系統(tǒng)崩潰。當(dāng)要增加或者刪減喂狗命令接點(diǎn)數(shù)量(目前為20個(gè))的時(shí)候,只需要修改程序,增加或者刪減相應(yīng)的寄存器和調(diào)用代碼即可,方便且安全可靠。由于FPGA的并行處理能力,增加監(jiān)視的接點(diǎn)數(shù)量,系統(tǒng)延時(shí)不變。

    2.3 算法仿真及分析

    為了驗(yàn)證算法中監(jiān)視和喂狗的效果,我們使用仿真工具對(duì)多任務(wù)喂狗監(jiān)視系統(tǒng)進(jìn)行了驗(yàn)證仿真,其仿真結(jié)果如圖4所示。

    圖4 多任務(wù)喂狗監(jiān)視系統(tǒng)的仿真結(jié)果

    圖4中,監(jiān)視了4個(gè)喂狗命令接點(diǎn)。其中,WDI0為定時(shí)中斷的喂狗信號(hào),WDI1~WDI3為普通任務(wù)的喂狗信號(hào)。在這輪監(jiān)視中,WDI0的喂狗狀態(tài)在t1時(shí)有效,WDI1的喂狗狀態(tài)在t2時(shí)有效,則喂狗信號(hào)總狀態(tài)TotalStatus在t2時(shí)有效,并觸發(fā)單穩(wěn)信號(hào)WDIGate。在單穩(wěn)信號(hào)有效期間,WDI輸出;同時(shí),TotalStatus信號(hào)在t3時(shí)清除了各個(gè)喂狗命令接點(diǎn)的喂狗狀態(tài),啟動(dòng)下一輪監(jiān)視。

    仿真結(jié)果表明,多任務(wù)喂狗監(jiān)視系統(tǒng)可以有效監(jiān)視各任務(wù)發(fā)出的喂狗信號(hào),并根據(jù)喂狗信號(hào)的狀態(tài)發(fā)出正確的WDI信號(hào),能夠滿足嵌入式系統(tǒng)對(duì)可靠性的要求。

    結(jié) 語(yǔ)

    本文介紹了一種應(yīng)用于電力系統(tǒng)繼電保護(hù)裝置內(nèi)的基于FPGA的多任務(wù)硬看門(mén)狗容錯(cuò)技術(shù),實(shí)現(xiàn)了對(duì)嵌入式系統(tǒng)多任務(wù)的硬看門(mén)狗監(jiān)視。文章在闡述了該技術(shù)的設(shè)計(jì)原理基礎(chǔ)上,給出了具體的軟硬件實(shí)現(xiàn)方案。該技術(shù)與傳統(tǒng)的硬看門(mén)狗和多任務(wù)軟看門(mén)狗技術(shù)相比,有以下優(yōu)點(diǎn):

    ① 可直接監(jiān)視定時(shí)中斷和所有任務(wù),監(jiān)視范圍廣;

    ② 無(wú)需消耗嵌入式軟件額外的信號(hào)量資源和任務(wù)運(yùn)行時(shí)間,且每個(gè)任務(wù)的最大喂狗間隔時(shí)間相同;

    ③ 配置靈活,可方便增加監(jiān)視的任務(wù)數(shù)量,理論上無(wú)上限,且系統(tǒng)延時(shí)不變;

    ④ 對(duì)嚴(yán)重故障的嵌入式軟件,系統(tǒng)可以發(fā)出告警信號(hào),便于維修和更換;

    ⑤ 可以自監(jiān)視,可靠性高。

    多任務(wù)硬看門(mén)狗容錯(cuò)技術(shù)已被應(yīng)用于最新的繼電保護(hù)裝置中,測(cè)試結(jié)果表明,該技術(shù)可以大大提高保護(hù)裝置嵌入式系統(tǒng)的可靠性,具有較高的應(yīng)用參考價(jià)值。

    [1] 何立民.單片機(jī)高級(jí)教程[M].北京:北京航空航天大學(xué)出版社,2000.

    [2] 易麗華.“看門(mén)狗”技術(shù)的實(shí)現(xiàn)[J].儀表技術(shù),2011(7):55-57.

    [3] 戴積發(fā),胡玉霞,李緒勇,等.基于uC/OS-II操作系統(tǒng)的多任務(wù)看門(mén)狗設(shè)計(jì)[J].衡水學(xué)院學(xué)報(bào),2009,11(4):31-33.

    [4] 王璐,王楠.軟硬件結(jié)合實(shí)現(xiàn)的“看門(mén)狗”技術(shù)[J].現(xiàn)代電子技術(shù),2002(3):43-45.

    [5] 田耕,徐文波.Xilinx FPGA開(kāi)發(fā)實(shí)用教程[M].北京:清華大學(xué)出版社,2008.

    [6] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計(jì)教程[M].北京:北京航空航天大學(xué)出版社,2008.

    猜你喜歡
    看門(mén)狗監(jiān)視系統(tǒng)多任務(wù)
    北極監(jiān)視系統(tǒng)
    把他叫醒
    基于中心化自動(dòng)加權(quán)多任務(wù)學(xué)習(xí)的早期輕度認(rèn)知障礙診斷
    關(guān)于集中監(jiān)視系統(tǒng)在調(diào)控中心的應(yīng)用
    基于判別性局部聯(lián)合稀疏模型的多任務(wù)跟蹤
    電測(cè)與儀表(2016年5期)2016-04-22 01:13:46
    一種采用FPGA實(shí)現(xiàn)的通用看門(mén)狗電路
    大眾科技(2015年11期)2015-11-24 01:57:16
    創(chuàng)新的攝像監(jiān)視系統(tǒng)取代車(chē)外和車(chē)內(nèi)后視鏡
    把它叫醒
    把它叫醒
    通许县| 江津市| 临高县| 高淳县| 云龙县| 筠连县| 汤原县| 茌平县| 宜兰县| 绥中县| 六安市| 曲沃县| 安岳县| 蓬莱市| 繁昌县| 句容市| 东乌| 江城| 云霄县| 长岛县| 定结县| 应城市| 沙洋县| 启东市| 横峰县| 明光市| 梅河口市| 崇左市| 咸阳市| 乐清市| 淳化县| 南丹县| 石棉县| 张家口市| 宽城| 封开县| 郴州市| 彩票| 英山县| 商城县| 淮滨县|