當前位置:首頁 > 測試測量 > 測試測量
[導(dǎo)讀]1 引 言隨著計算機應(yīng)用技術(shù)的發(fā)展,計算機應(yīng)用已經(jīng)早就從單機系統(tǒng)發(fā)展到網(wǎng)絡(luò)系統(tǒng)。但是隨著網(wǎng)絡(luò)系統(tǒng)的擴大,要保證整個大系統(tǒng)的正常運轉(zhuǎn)就遠比保證單機系統(tǒng)的正常運轉(zhuǎn)困難得多,不過只要處理好各個系統(tǒng)的協(xié)調(diào)關(guān)系以

1 引 言

隨著計算機應(yīng)用技術(shù)的發(fā)展,計算機應(yīng)用已經(jīng)早就從單機系統(tǒng)發(fā)展到網(wǎng)絡(luò)系統(tǒng)。但是隨著網(wǎng)絡(luò)系統(tǒng)的擴大,要保證整個大系統(tǒng)的正常運轉(zhuǎn)就遠比保證單機系統(tǒng)的正常運轉(zhuǎn)困難得多,不過只要處理好各個系統(tǒng)的協(xié)調(diào)關(guān)系以及提高關(guān)鍵系統(tǒng)(服務(wù)器系統(tǒng))運行的可靠性,那么網(wǎng)絡(luò)系統(tǒng)在某種程度上就比單機系統(tǒng)更有保障。

如何保證系統(tǒng)的可靠性,是當今科技應(yīng)用研究的熱點?,F(xiàn)在常用的方法是:采用冗余技術(shù)提高系統(tǒng)的可靠性。常用的技術(shù)有:冷備份、溫備份和熱備份。冷備份指后備系統(tǒng)未運行;溫備份指后備系統(tǒng)在工作系統(tǒng)停止之前啟動并同步后才能停止運行系統(tǒng);熱備份指后備系統(tǒng)運行并保持與工作系統(tǒng)時時同步。這些技術(shù)各有優(yōu)缺點。熱備份需要時時保持后援系統(tǒng)與工作系統(tǒng)的狀態(tài)一致,那么后援系統(tǒng)必須時時運行,降低了系統(tǒng)的使用壽命,可冷備份又不能保證后援系統(tǒng)啟動后與工作系統(tǒng)的狀態(tài)一致。

2 實際中遇到問題的描述

該問題是在一個網(wǎng)絡(luò)ERP應(yīng)用系統(tǒng)中遇到的,在該系統(tǒng)中,所有客戶端運行的軟件都需要訪問數(shù)據(jù)庫服務(wù)器上的數(shù)據(jù)庫,而客戶軟件記錄的是每天生產(chǎn)中的實時數(shù)據(jù),這就必須保證數(shù)據(jù)庫服務(wù)器正常工作,否則整個網(wǎng)絡(luò)系統(tǒng)就不能運行,這將導(dǎo)致停止生產(chǎn),給公司造成巨大的損失。如何保證系統(tǒng)的可靠性,就成為問題的關(guān)鍵所在。本文根據(jù)冗余技術(shù)的相關(guān)理論,結(jié)合三種備份技術(shù)的優(yōu)缺點,使用溫備份技術(shù),設(shè)計了一個基于Nios處理器的智能容錯系統(tǒng),在實際應(yīng)用中取得了良好的效果。

3 智能容錯系統(tǒng)的整體規(guī)劃

本文設(shè)計的系統(tǒng)可以在智能仲裁中制定系統(tǒng)的運行計劃,即:可以制定系統(tǒng)中兩個服務(wù)器的運行時間。在該系統(tǒng)中,每天兩臺服務(wù)器以12小時為單位交替運行。具體過程如下:

1)給智能仲裁器上電,然后按下仲裁器上的按鈕啟動一臺服務(wù)器,這臺服務(wù)器啟動后就開始工作。

2)工作服務(wù)器在更新數(shù)據(jù)庫的同時,通過串口通訊把相關(guān)同步信息發(fā)送給仲裁器(這里是操作數(shù)據(jù)庫的SQL語句),仲裁器收到同步信息后就把這些信息存入與仲裁器相連接的IDE硬盤上(在同步信息不多的情況下,最好在仲裁器上使用Flash)。

3)當計劃時間到了后,仲裁器就啟動后援服務(wù)器,然后每隔一定的時間檢測啟動的后援服務(wù)器是否已經(jīng)到了可以工作的狀態(tài)。

4)如果在規(guī)定的檢測次數(shù)中,啟動的后援服務(wù)器還沒有到達可以工作的狀態(tài),那么仲裁器就報警,提示用戶后援服務(wù)器出現(xiàn)故障了,這時就保持原工作服務(wù)器繼續(xù)運行。反之,如果在規(guī)定的檢測次數(shù)中檢測到后援服務(wù)器到達可以工作的狀態(tài),就接著如下步驟運行。

5)仲裁器向后援服務(wù)器發(fā)送啟動同步的命令,后援服務(wù)器收到該命令后就通過串行口向仲裁器發(fā)送同步請求。

6)仲裁器收到后援服務(wù)器的同步請求后,就從硬盤中讀取同步信息并發(fā)送給后援服務(wù)器,后援服務(wù)器收到后就根據(jù)同步信息執(zhí)行同步操作(這里是運行操作數(shù)據(jù)庫的SQL語句)。

7)當同步工作完成后,后援服務(wù)器就給仲裁器發(fā)送同步完成的消息,仲裁器收到該消息后,就分別向兩臺服務(wù)器發(fā)送網(wǎng)絡(luò)配置信息(如:IP地址等),以便命令各個服務(wù)器修改自己的網(wǎng)絡(luò)配置。

8)此時后援服務(wù)器已經(jīng)成為工作服務(wù)器了,仲裁器向原工作服務(wù)器發(fā)送關(guān)機命令,以便關(guān)閉原工作服務(wù)器使之成為后援服務(wù)器。

整個過程到此為止,以后就反復(fù)上述過程運行整個系統(tǒng),該系統(tǒng)的整體框架如圖1所示:

 

 

圖1 系統(tǒng)整體框架圖

圖1是工作服務(wù)器未發(fā)生故障時的流程。實際上,在工作服務(wù)器工作期間,仲裁器會在一定的時間間隔(這個時間間隔可以通過仲裁器設(shè)置,如系統(tǒng)要求的實時性較高,該間隔就要設(shè)置短一些;反之,設(shè)置長一些)內(nèi)查詢服務(wù)器的狀態(tài),從而得知服務(wù)器是否發(fā)生故障,如果發(fā)生故障,仲裁器就報警提示用戶,并且此時仲裁器啟動后援服務(wù)器。當仲裁器檢測到后援服務(wù)器可以工作時,就從硬盤上獲取同步信息進行后援服務(wù)器的同步工作。

4 智能容錯系統(tǒng)具體實現(xiàn)思想

4.1 硬件設(shè)計思想

本文討論的智能容錯系統(tǒng),主要使用FPGA芯片,利用Nios軟核處理器強大的功能定制出一個滿足我們實際需要的SOC(系統(tǒng)級芯片),并使用該芯片與相關(guān)的外圍電路以及配合一定的軟件設(shè)計,實現(xiàn)了一個智能仲裁器,其原理框圖[5]如圖2所示:

 

 

圖2 仲裁器的原理圖

下面對上述原理圖進行簡單的介紹:

1)通用IO口PIO1只是當作輸出口使用,用于控制連接/斷開服務(wù)器電源的兩個繼電器、表示服務(wù)器狀態(tài)的雙色發(fā)光二極管(紅綠兩種顏色)和用于顯示時間間隔(用于決定多長時間檢測服務(wù)器的狀態(tài))等級的一位八段數(shù)碼管。LED1、LED2分別用于指示兩臺服務(wù)器的工作狀態(tài),綠色表示對應(yīng)服務(wù)器正在工作;紅色表示對應(yīng)服務(wù)器停止工作;紅色閃爍表示對應(yīng)服務(wù)器發(fā)生故障,此時蜂鳴器會發(fā)出報警聲音。上圖中沒有畫出相應(yīng)的驅(qū)動電路[7]。PIO1共占16位,高八位用于控制八段數(shù)碼管;0~3位用于控制兩個雙色發(fā)光二極管;4~5位用于控制兩個繼電器;6位用于控制蜂鳴器。

2)通用IO口PIO2只是當作輸入口使用,用于接受仲裁器上的控制按鍵。仲裁器上的SWA、SWB及SWL分別表示開啟A服務(wù)器、開啟B服務(wù)器及設(shè)置時間間隔等級的按鍵。SWA和SWB是開關(guān)型按鍵,即:按一下開,再按一下就關(guān)。SWL按鍵從0~9循環(huán)改變時間間隔的等級,并在八段數(shù)碼管上顯示等級。

3)IDE接口控制器是自定義用戶邏輯,用于訪問與仲裁器連接的IDE硬盤。

4)Timer1定時器用于控制各臺服務(wù)器的工作時間以及定時查詢服務(wù)器的工作狀態(tài)的,該定時器采用中斷方式工作。

5)Flash控制器,這里指的是CFI(Common Flash Interface)控制器,只要支持CFI命令的Flash都可以連接到該系統(tǒng)上。此處用于連接片外的16MB閃存,以便于存儲用戶程序和相關(guān)數(shù)據(jù)。在該仲裁器中,F(xiàn)lash的開始處保存Boot Loader,在系統(tǒng)啟動時,它把用戶程序復(fù)制到SDRAM中運行,這樣可以提高系統(tǒng)效率。

6)SDRAM控制器,用于連接片外64MB同步動態(tài)隨機訪問存儲器,以便于為程序提供運行環(huán)境。

7)UART0和UART1通過電平轉(zhuǎn)換芯片(MAX3232)轉(zhuǎn)換成RS-232電平以便與服務(wù)器通過串口通信。

8)WD Timer定時器,在這里作為看門狗定時器使用,以便提高仲裁器的可靠性,在仲裁器中運行的程序出現(xiàn)故障時,它給系統(tǒng)提供復(fù)位信號。

該系統(tǒng)是使用Quartus II進行硬件設(shè)計的,用其中的SOPC Builder工具[4]進行Avalon架構(gòu)設(shè)計,圖3是仲裁器的Avalon架構(gòu)的設(shè)計最終界面。由于篇幅有限,此處僅提供UART0、UART1和IDE硬盤相關(guān)的部分原理圖,如圖4所示。

 

 

圖3 SOPC Builder設(shè)計界面

 

 

圖4 部分原理圖

4.2 軟件設(shè)計思想

以上主要介紹了硬件部分的設(shè)計思想,下面簡單描述一下軟件開發(fā)的相關(guān)思想。該仲裁器的軟件開發(fā)使用Nios IDE[6](Nios集成開發(fā)環(huán)境),主要包括如下模塊:

1)狀態(tài)獲取模塊:該模塊被Timer1定時器中斷例程定期調(diào)用,主要用于獲取服務(wù)器的當前狀態(tài),其設(shè)計流程如圖5所示:

 

 

圖5 狀態(tài)獲取模塊流程

2)顯示模塊:用于輸出用戶關(guān)心的信息,如根據(jù)服務(wù)器的狀態(tài)用不同顏色點亮雙色發(fā)光二極管、顯示當前時間間隔等級以及控制蜂鳴器報警。

3)通訊模塊:主要用于與服務(wù)器進行通訊,以便給服務(wù)器發(fā)送命令以及獲得工作服務(wù)器的同步信息并把同步信息寫入硬盤中。

4)按鍵處理模塊:用于處理用戶按鍵,根據(jù)不同的按鍵進行不同的控制,如:開/關(guān)繼電器以及設(shè)置時間間隔等級。

5)硬盤訪問模塊:用于提供對硬盤進行讀寫操作的函數(shù),以便需要操作硬盤的模塊調(diào)用。

6)讀寫Flash的模塊:用于讀取/修改仲裁器的相關(guān)參數(shù),如:各服務(wù)器運行時間,檢測服務(wù)器狀態(tài)的時間間隔等。

5 結(jié) 論

本文提出的軟硬件設(shè)計思想經(jīng)實踐證明是可行的,并且在實際的系統(tǒng)中工作良好。該思想可以進一步推廣到多機容錯系統(tǒng)中。在多機系統(tǒng)中,我們在定制好各臺機器的工作計劃后,就可以利用本文提到的給每臺服務(wù)器一個計劃運行時間這一思想來解決實際問題。另外,使用Nios軟核處理器,可以定制很多的UART口,這一點就遠遠優(yōu)于需要擴展串口電路的普通單片機,從而在硬件設(shè)計和軟件設(shè)計上大大降低了難度。

本文作者創(chuàng)新點:1) 采用SOC(系統(tǒng)級芯片)設(shè)計出溫備份高速仲裁器。2) 將同步信息放到了仲裁器中。這樣,所有同步信息就不依賴于工作設(shè)備(如PC機),所以即使工作設(shè)備出現(xiàn)故障也無妨,這樣就大大提高了系統(tǒng)的可靠性。3) 能夠?qū)ぷ髟O(shè)備進行計劃定制,傳統(tǒng)的溫備份仲裁器沒有這一功能。

參考文獻

[1] 王仲生.智能故障診斷與容錯控制[M].西安:西北工業(yè)大學(xué)出版社,2005。

[2] 潘松,黃繼業(yè),曾毓.SOPC技術(shù)實用教程[M].北京:清華大學(xué)出版社,2005。

[3] 宋保維,系統(tǒng)可靠性設(shè)計與分析.西安:西北工業(yè)大學(xué)出版社,2000。

[4] Sylvain Poussier, Hassan Rabah, Serge Weber.SOPC-based Embedded Smart Strain Gage Sensor. Lecture Notes in Computer Science[J],2002,2438:1131-1132。

[5] 徐光輝,程東旭等.基于FPGA的嵌入式開發(fā)與應(yīng)用[M].北京:電子工業(yè)出版社,2006。

[6] 郭書軍,王玉花, 葛紉秋.嵌入式處理器原理及應(yīng)用——Nios系統(tǒng)設(shè)計和C語言編程[M].北京:清華大學(xué)出版社,2004。

[7] 沙占友,孟志永,王彥朋.單片機外圍電路設(shè)計(第2版)[M].北京:電子工業(yè)出版社,2006。

[8] 王俊卿,楊揚,劉慶文.基于NIOS軟核處理器的uClinux的移植[J].微計算機信息,2005,21-1:123-124。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉