《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于WDM的精確定時器及其在冗余技術中的應用
基于WDM的精確定時器及其在冗余技術中的應用
摘要: 現代軍用電子設備和某些控制系統對設備的可靠性要求越來越高。針對此情況利用設備冗余原理,提出一種基于WDM的精確定時器實現設備冗余的方法。利用此方法設計了雙冗余CAN總線板卡及其在WindowsXP系統下的驅動程序,給出了部分驅動實現細節和相關流程。結果表明該方法可成功實現雙CAN接口卡在總線故障情況下的冗余切換,提高了設備可靠性。
關鍵詞: FPGA WDM 定時器 Win32
Abstract:
Key words :

0  引 言

高可靠性是現代軍用電子設備和某些控制系統的首要需求。冗余技術是計算機系統可靠性設計中常采用的一種技術,是提高計算機系統可靠性的最有效方法之一。合理的冗余設計將大大提高系統的可靠性, 但同時也增加了系統的復雜度和設計的難度, 應用冗余配置的系統還增加了用戶投資。因此,如何對冗余設計進行合理有效的設計, 是值得深入研究的課題。

1:1 熱冗余也就是所謂的雙重化, 是其中一種有效的冗余方式, 但它并不是兩個部件簡單的并聯運行,而是需要硬件、軟件、通信等協同工作來實現。將互為冗余的兩個部件構成一個有機的整體,通常包括以下多個技術要點: 信息同步技術、故障檢測技術、故障仲裁技術和切換技術、熱插拔技術和故障隔離技術等。

本文將WDM 定時器功能應用在冗余技術中,為系統的故障檢測和切換技術提供了一種解決方案,并以雙冗余CAN 總線接口板為例測試本設計的可行性。

1  冗余技術

冗余技術有兩種方式: 工作冗余和后備冗余。工作冗余是對關鍵設備以雙重或三重的原則來重復配置,這些設備同時處于工作運行狀態, 工作過程中若某一臺設備出現故障, 它會自動脫離系統, 但并不影響系統的正常工作。后備冗余方式是使一臺設備投入運行, 另一臺冗余設備處于熱備用狀態,但不投入運行, 在線運行設備一旦出現故障, 后備設備立即投入運行。常用的冗余系統按其結構可分為并聯系統、備用系統和表決系統三種。最簡單的冗余設計是并聯裝置, 其他方法還有串并聯或并串聯混合裝置和多數表決裝置等。當某部分可靠性要求很高,但目前的技術水平和方法很難滿足時, 冗余技術可能成為惟一較好的設計方法。但是冗余設計往往使系統的體積、重量、費用和復雜度均相應增加。因此, 除了重要的關鍵設備,對于一般產品不宜采用冗余技術。

冗余配置雖然增加系統的投資, 但它提高了整個用戶系統的平均無故障時間( MTBF) , 縮短了平均故障修復時間( MT TR) 。因此, 在重要場合的控制系統中,冗余技術的采用可有效提高系統的可靠性。

一個冗余系統要工作通常是硬件與軟件的配合完成的。在硬件上需要有幾個相同的, 可獨立工作的設備。在軟件上來說,就是在實現系統功能的同時, 要有錯誤檢測功能和動態切換功能, 并且要在盡可能短的時間內完成切換動作。下面以雙CAN 總線接口卡為例,主要從軟件方面詳述本后備冗余設計的實現細節。

2  硬件設計

CAN 控制器采用Philips 的SJA1000,工作于BasicCAN 模式或PeliCAN 模式下, PeliCAN 模式支持CAN 2. 0B 協議, 采用8 位地址/ 數據復用總線接口。

如圖1 所示, PCI 總線雙CAN 接口卡由2 片SJA1000 提供兩路獨立的CAN 接口, 每片芯片的8 位地址/ 數據總線和讀寫控制信號、鎖存信號直接與PCI9052 相連。SJA1000 輸出信號經過光耦到CAN 收發器PCA82C250, PCA82C250 供電電源為隔離電源,由隔離電源轉換模塊提供。CAN 總線的復位信號由FPGA 提供, CAN 控制器SJA1000 的中斷信號輸出到FPGA。

CAN 冗余模塊系統結構圖

圖1  CAN 冗余模塊系統結構圖。

3  軟件設計

3. 1  WDM 模式驅動程序

在Window s XP 操作系統中,運行于用戶模式的應用程序訪問硬件資源是通過Win32 API 調用內核模式的驅動程序實現的。這種內核模式的驅動程序就是WDM(Window s Driver Model) 驅動程序, 它是微軟在Window s XP 操作系統中提出的新的驅動程序模式, 支持即插即用、電源管理和I/ O 管理等功能。圖2 是Window s XP 的系統結構。

如圖2 所示設備驅動程序是操作系統的一個組成部分,它由I/ O 管理器( I/ O Manager ) 管理和調動。

I/ O管理器每收到一個來自用戶應用程序的請求就創建一個I/ O 請求包( IRP) 的數據結構, 并將其作為參數傳遞給驅動程序。驅動程序通過識別IRP 中的物理設備對象( PDO) 來區別是發送給哪一個設備。IRP 結構中存放請求的類型、用戶緩沖區的首地址、用戶請求數據的長度等信息。驅動程序處理完這個請求后, 在該結構中填入處理結果的有關信息,調用IoCompleteRequest 將其返回給I/ O 管理器,用戶應用程序的請求隨即返回。訪問硬件時, 驅動程序通過調用硬件抽象層的函數實現。

Windows XP 系統結構

圖2 Windows XP 系統結構。

WDM 的開發可采用DDK, DriverWorks 等開發工具。以下重點描述在此WDM 驅動實例中采用定時查詢實現CAN 總線冗余功能。

3. 2  驅動冗余設計

本設計中, CAN 通路采用2 路冗余, 使得當一個CAN 總線接口出現故障時, 可以很方便地切換到另一個CAN 總線接口。

故障檢測在定時器中實現。在DriverWorks 中有兩種定時器對象, 即附屬于設備對象的1 Hz 定時器和KTimedCallback 類定義的定時器, WDM 定時方法是通過它們實現的。KT imedCal lback 是KTimer 的派生類, KTimer 封裝了系統定時器, 構成分發對象定時器類, 可用于同步目的。KT imedCal lback 類包含了系統延時過程調用( DPC) 對象, 當定時器超時后系統就調用DPC。KTimedCallback 的成員函數主要是Set 和SetPeriodic, Set 用于設置一次有效定時器參數, SetPeriodie 設置周期性定時器參數, Set 和SetPeriodic 在設置定時參數時同時啟動定時器并建立與回調函數的關聯,定時器超時后調用回調函數。

具體的切換工作放在DPC 中完成。DPC 為推遲過程調用, 一些操作不適合在ISR 中處理需放入限制較少的DPC 中, 如通知事件置標記等等。DPC 是一個通用機制, 但通常都用在中斷處理中。在最普通的情況下, ISR 決定當前請求的完成并請求一個DPC。之后,內核在DISPATCH_LEVEL 級上調用這個DPC 例程。

因此DPC 中的代碼要比ISR 中的代碼有更少的限制。

特別是, DPC 例程可以調用像IoCompleteRequest 或Io StartNextPacket 這樣的例程,在一個I/ O 操作的結尾處調用這些例程在邏輯上是必要的。圖3 描述了具體DPC 調用處理過程。

DPC 處理過程

圖3 DPC 處理過程。

冗余切換查詢時間可以在設備屬性中添加切換時間周期項, 通過修改設備屬性的方式在線修改,修改后設備管理器自動更新驅動。

在雙CAN 冗余系統中, 較之硬件結構而言,軟件設計相對復雜得多, 其關鍵之處在于CAN 系統故障檢測及CAN 系統自動切換。由于采用兩套完全獨立的傳輸介質、總線驅動器和總線控制器, 因此它們能分別獨立檢測到自己通道的故障, 比如CANH 與CANL 短路, CANH 或CANL 斷開、CANH 與地短路、CANL 與電源短路、總線驅動器損壞等。實際調試中發現, 如果CANH 、CANL 斷開或只有一個發送器在總線上,均會造成發送/ 接收錯誤計數器不斷增加到128, 使節點處于忽略錯誤態; 而CANH 與CANL 短路、CANH 與地短路或CAN L 與電源短路均會造成發送/ 接收錯誤計數器不斷增加到256, 使節點處于總線脫離態。所以,通過節點狀態改變中斷子程序中調用CAN 冗余模塊,可以達到實現上述故障自動檢測及CAN 系統自動切換的目的。

3. 3  冗余測試

測試時采用一個有兩個通道CAN 分析儀分別連接本CAN 板的A, B 通道上,在從A 通道連續發送數據至分析儀的過程中, 手動斷開此鏈接, 則備用通道B開始工作,切換成功。對冗余切換時間的測試可以通過比較發送端和接收端間數據量的差值來判斷。具體方法是在發送端以10 ms 為周期不停發送數據包,正常情況下發送端的數據包數量與接收端的數據包數量是相等的。在切換動作時, 會有一些數據包被丟棄, 這時通過計算發送端與接收端數據包的差值乘以10 ms, 即為此次切換的切換時間。在本例中, 通過多次這樣的測試, 得出平均切換時間在30 ms 左右, 完全能滿足對計算機系統高可靠性的要求。

4  結 論

提出一種設備冗余的系統設計方法, 為系統的故障檢測和切換技術提供了一種解決方案。利用此方法設計了雙冗余CAN 總線板卡以及在Window s XP 系統下的WDM 驅動。該模塊工作穩定, 數據傳輸可靠, 冗余切換切實可行。并可依據實際使用要求在線修改定時查詢時間。這種冗余實現方法在提高設備可靠性方面具有一定的實用價值。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产欧美一区二区三区在线老狼| 亚洲看片免费| 欧美日韩国产精品自在自线| 久久―日本道色综合久久| 欧美一区二区三区喷汁尤物| 亚洲欧美视频一区二区三区| 亚洲尤物在线| 亚洲综合色网站| 亚洲一区在线观看视频 | 久热精品在线视频| 久久人人看视频| 久久久久亚洲综合| 久久亚洲春色中文字幕| 麻豆av福利av久久av| 麻豆免费精品视频| 欧美第一黄色网| 欧美日韩精品一区二区| 欧美日韩一区三区| 欧美性理论片在线观看片免费| 欧美日韩一级黄| 国产精品乱码妇女bbbb| 国产精品综合| 国内一区二区三区在线视频| 亚洲成在线观看| 亚洲精品中文字| 亚洲少妇中出一区| 午夜国产一区| 亚洲电影天堂av| 一二三区精品| 午夜精品免费在线| 久久久国产午夜精品| 麻豆91精品| 欧美日韩视频专区在线播放 | 性欧美超级视频| 久久久久国产精品人| 蜜桃av一区二区在线观看| 欧美国产一区二区在线观看 | 午夜精品婷婷| 久久久久国产精品一区三寸| 美女精品国产| 欧美午夜精品一区| 国产午夜精品理论片a级探花| 精品成人免费| 99香蕉国产精品偷在线观看| 亚洲综合首页| 亚洲高清网站| 一区二区三区欧美日韩| 欧美在线黄色| 欧美高清不卡在线| 国产精品免费区二区三区观看| 国产自产精品| 亚洲靠逼com| 性18欧美另类| 夜夜嗨av一区二区三区四区 | 欧美人妖在线观看| 欧美午夜片在线观看| 国语自产精品视频在线看一大j8| 亚洲区在线播放| 香蕉精品999视频一区二区| 亚洲国产精品一区二区www| 亚洲婷婷在线| 久久综合九色九九| 国产精品magnet| 狠狠色狠狠色综合| 亚洲视频你懂的| 亚洲日本电影| 久久国产精品72免费观看| 欧美精品久久一区二区| 国产麻豆精品在线观看| 最新日韩中文字幕| 亚洲欧美成人在线| 亚洲免费观看高清完整版在线观看熊 | 亚洲国产精品美女| 午夜免费日韩视频| 国产精品99久久99久久久二8| 久久久久www| 国产精品高潮视频| 亚洲国产一区二区三区高清| 欧美一级专区免费大片| 亚洲一区在线免费观看| 欧美好骚综合网| 狠狠入ady亚洲精品| 亚洲一区二区三区精品在线观看| 亚洲麻豆视频| 久久综合给合久久狠狠色| 国产精品夜夜夜| 亚洲精品美女91| 亚洲国产精品小视频| 久久成人免费日本黄色| 欧美午夜理伦三级在线观看| 91久久久亚洲精品| 久久精品亚洲一区二区| 欧美一二三视频| 国产精品国产三级国产普通话99| 亚洲精品国偷自产在线99热| 亚洲国产高潮在线观看| 久久成人免费日本黄色| 国产精品区二区三区日本| 日韩视频久久| 亚洲精品欧美日韩专区| 久久久亚洲国产美女国产盗摄| 国产精品专区h在线观看| 亚洲深夜福利网站| 中文精品视频| 欧美日韩在线观看一区二区| 亚洲精品影院| 夜夜嗨av一区二区三区四季av| 欧美电影免费观看| 亚洲国产精品传媒在线观看| 最新中文字幕亚洲| 欧美fxxxxxx另类| 在线日韩日本国产亚洲| 亚洲丰满在线| 另类人畜视频在线| 在线电影国产精品| 91久久精品美女| 欧美福利网址| 亚洲精品国产系列| 一本一道久久综合狠狠老精东影业| 欧美黑人在线播放| 91久久黄色| 一区二区国产精品| 欧美日韩视频在线一区二区观看视频| 亚洲精品免费在线观看| 一区二区欧美日韩| 欧美午夜不卡| 亚洲一区二区三| 欧美一区二区三区播放老司机 | 久久精品欧洲| 狠狠干成人综合网| 亚洲国产婷婷综合在线精品| 麻豆成人在线| 亚洲国产专区校园欧美| 9久re热视频在线精品| 欧美日韩亚洲系列| 亚洲网站在线| 欧美在线国产| 激情久久久久久| 亚洲精品国产品国语在线app| 欧美高清hd18日本| 日韩图片一区| 午夜久久久久久| 国产欧美日韩亚洲精品| 亚洲第一黄色网| 欧美激情视频一区二区三区在线播放 | 国产精品你懂的在线欣赏| 亚洲欧美日韩中文在线制服| 久久香蕉国产线看观看av| 影音先锋亚洲一区| 一本一本久久| 国产日韩欧美在线观看| 亚洲国产一区二区三区青草影视| 欧美精品18videos性欧美| 亚洲特色特黄| 久久女同互慰一区二区三区| 亚洲精品永久免费| 欧美一区二区三区播放老司机| 激情视频一区二区| 一区二区三区四区国产精品| 国产日本欧美在线观看| 亚洲国产婷婷香蕉久久久久久| 欧美日韩在线精品一区二区三区| 亚洲欧美日韩国产中文| 欧美成年人视频网站欧美| 在线午夜精品| 久久伊人精品天天| 夜久久久久久| 久久综合网色—综合色88| 日韩亚洲欧美一区二区三区| 久久国产精品毛片| 亚洲日本成人网| 久久精品中文字幕一区二区三区| 亚洲精品国精品久久99热| 欧美一区二区三区婷婷月色| 亚洲国产精品va在看黑人| 午夜精品一区二区三区在线播放 | 亚洲影院免费| 在线观看欧美视频| 亚洲在线观看| 亚洲电影在线| 欧美亚洲三区| 最新日韩在线| 久久精品一区四区| 99视频+国产日韩欧美| 久久综合影音| 亚洲欧美影音先锋| 欧美日韩情趣电影| 亚洲激情六月丁香| 国产乱码精品一区二区三| 99在线热播精品免费| 黄色精品网站| 性久久久久久久久久久久| 亚洲精选在线观看| 美女脱光内衣内裤视频久久影院 | 欧美在线一二三四区| 国产精品国产成人国产三级| 亚洲精品久久久久久久久久久久久 | 欧美精品电影在线| 久久精品国产69国产精品亚洲 | 国产一区日韩一区|