本發(fā)明涉及核電站儀控系統(tǒng)的技術領域,尤其涉及一種基于fpga的儀控系統(tǒng)參數(shù)整定方法和裝置。
背景技術:
fpga(全稱field-programmablegatearray,即現(xiàn)場可編程門陣列)憑借著快速成品、可編輯性強等優(yōu)點,在各個控制領域得到了廣泛的應用,但是在核電站dcs(全稱distributedcontrolsystem,分布式控制系統(tǒng))中還未得到非廣泛的應用;傳統(tǒng)的核電站dcs大多數(shù)都是基于cpu架構來設計的,基于cpu架構最大的特點是逐條順序執(zhí)行指令,對于多個參數(shù)的整定操作,所以存在執(zhí)行效率較低的技術問題。
雖然現(xiàn)有技術也有一些基于fpga技術的核電站dcs,能夠具備并行處理機制,執(zhí)行效率較高,但與基于cpu架構的控制系統(tǒng)比較,在同等應用條件下,硬件成本較高。具體地,如圖1所示,傳統(tǒng)的參數(shù)整定方法中,上位機(計算機)只需要向控制站發(fā)送整定指令,而控制站的fpga則需要完成整理eeprom數(shù)據(jù)、整定eeprom、整定在線運行等功能,使得控制站的參數(shù)整定功能需要具備復雜的邏輯功能,尤其是整定eeprom數(shù)據(jù)功能需要從eeprom讀取數(shù)據(jù),再用新參數(shù)更新讀取eeprom數(shù)據(jù),最后重新計算crc(英文全稱cyclicredundancycheck,循環(huán)冗余校驗),因此參數(shù)整定過程中,整個控制系統(tǒng)的邏輯復雜,對fpga資源產(chǎn)生很大的開銷。
技術實現(xiàn)要素:
為了解決現(xiàn)有技術中存在的基于fpga技術的核電站儀控系統(tǒng)中存在的對fpga內(nèi)資源產(chǎn)生很大開銷的技術問題,本發(fā)明提供一種能夠降低對fpga資源開銷的基于fpga的儀控系統(tǒng)參數(shù)整定方法和裝置。
為了實現(xiàn)上述目的,本發(fā)明提供的技術方案包括:
一方面,本發(fā)明提供一種基于fpga的儀控系統(tǒng)參數(shù)整定方法,所述fpga與上位機相連,其特征在于,所述方法包括:
所述fpga讀取與fpga相連的存儲器中參數(shù);
如果讀取所述存儲器中參數(shù)成功,則所述fpga逐個整定在線運行參數(shù);
如果所述逐個整定在線運行參數(shù)整定成功,則所述上位機根據(jù)讀取的所述逐個整定在線運行參數(shù),重新整理所述存儲器中對應的參數(shù),并重新向所述存儲器中寫入?yún)?shù)。
優(yōu)選地,重新整理所述存儲器中對應的參數(shù)包括:對逐個整定在線運行參數(shù)整定后的結果進行循環(huán)冗余校驗和基于所述逐個整定在線運行參數(shù)整定后的結果,更新讀取所述存儲器中參數(shù)。
優(yōu)選地,所述方法還包括:通過所述上位機發(fā)送針對重新寫入所述存儲器中的參數(shù)的回讀檢查指令。
優(yōu)選地,所述方法還包括:將上位機讀取到的參數(shù)顯示在上位機的界面上。
優(yōu)選地,所述方法還包括:所述上位機將整定在線運行參數(shù)數(shù)據(jù)包發(fā)送至fpga,然后fpga按照所述整定在線運行參數(shù)數(shù)據(jù)包逐個整定在線運行參數(shù);所述fpga回讀所述存儲器中參數(shù),并將所述存儲器中參數(shù)回傳至所述上位機,所述上位機完成對所述存儲器中對應參數(shù)重新整理后,通過所述fpga重新向所述存儲器中寫入?yún)?shù)。
另一方面,本發(fā)明還提供一種基于fpga的儀控系統(tǒng)參數(shù)整定裝置,其特征在于,包括設置在所述fpga上的用于讀取與fpga相連的存儲器中參數(shù)的讀取單元、設置在所述fpga上的用于逐個整定在線運行參數(shù)的參數(shù)整定單元和設置在與所述fpga相連的上位機內(nèi)的整定在線運行單元、用于重新整理所述存儲器中對應參數(shù)的數(shù)據(jù)整理單元和用于重新向所述存儲器中寫入?yún)?shù)的寫入單元。
優(yōu)選地,重新整理所述存儲器中對應的參數(shù)包括:對逐個整定在線運行參數(shù)整定后的結果進行循環(huán)冗余校驗和基于所述逐個整定在線運行參數(shù)整定后的結果,更新讀取所述存儲器中參數(shù)。
優(yōu)選地,所述裝置還包括:與所述存儲器連接的回讀存儲器數(shù)據(jù)單元,當所述上位機發(fā)送針對重新寫入所述存儲器中參數(shù)的回讀檢查檢查指令時,所述回讀存儲器數(shù)據(jù)單元讀取所述存儲器內(nèi)的參數(shù)。
優(yōu)選地,所述裝置還包括設在所述上位機內(nèi)的顯示單元,并且上位機讀取到的參數(shù)被顯示在所述上位機的界面單元上,使得用戶能夠直接判斷參數(shù)整定結果。
優(yōu)選地,所述裝置包括設置在上位機內(nèi)的以太網(wǎng)端口和設置在所述fpga內(nèi)的命令處理單元;所述上位機將整定在線運行參數(shù)數(shù)據(jù)包通過所述以太網(wǎng)端口發(fā)送至所述命令處理單元,然后通過fpga按照所述整定在線運行參數(shù)數(shù)據(jù)包逐個整定在線運行參數(shù);所述fpga回讀所述存儲器中參數(shù),并通過所述命令處理單元和所述以太網(wǎng)端口,將所述存儲器中參數(shù)回傳至所述上位機,所述上位機完成對所述存儲器中對應參數(shù)重新整理后,通過所述以太網(wǎng)端口和所述fpga內(nèi)的命令處理單元重新向所述存儲器中寫入?yún)?shù)。
采用本發(fā)明提供的上述技術方案,能夠至少獲得以下有益效果中的一種:
1、重新整理所述存儲器中對應的參數(shù)是通過與所述fpga相連的上位機完成,這樣fpga不需要專門對處理存儲器中對應參數(shù)進行整定的硬件,所以能夠降低fpga在參數(shù)整定過程中硬件資源的開銷。
2、整個參數(shù)整定過程中讀取到與fpga相連存儲器對應參數(shù),可以直接展示在上位機的用戶界面上,可以對整個儀控系統(tǒng)中組態(tài)數(shù)據(jù)進行完整的呈現(xiàn)。
本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書變得顯而易見,或者通過實施本發(fā)明的技術方案而了解。本發(fā)明的目的和其他優(yōu)點可通過在說明書、權利要求書以及附圖中所特別指出的結構和/或流程來實現(xiàn)和獲得。
附圖說明
圖1為現(xiàn)有技術中一種基于fpga的儀控系統(tǒng)的結構框圖;
圖2為本發(fā)明實施例提供的一種基于fpga的儀控系統(tǒng)的結構示意圖;
圖3為本發(fā)明實施例提供的一種基于fpga的儀控系統(tǒng)參數(shù)整定方法的流程圖;
圖4為本發(fā)明實施例提供的一種基于fpga的儀控系統(tǒng)參數(shù)整定裝置結構框圖;
圖5為本發(fā)明實施例提供的一種基于fpga的儀控系統(tǒng)參數(shù)整定過程中,命令解析和數(shù)據(jù)處理的狀態(tài)圖。
具體實施方式
以下將結合附圖及實施例來詳細說明本發(fā)明的實施方式,借此對本發(fā)明如何應用技術手段來解決技術問題,并達成技術效果的實現(xiàn)過程能充分理解并據(jù)以實施。需要說明的是,這些具體的說明只是讓本領域普通技術人員更加容易、清晰理解本發(fā)明,而非對本發(fā)明的限定性解釋;并且只要不構成沖突,本發(fā)明中的各個實施例以及各實施例中的各個特征可以相互結合,所形成的技術方案均在本發(fā)明的保護范圍之內(nèi)。
另外,在附圖的流程圖示出的步驟可以在諸如一組控制器可執(zhí)行指令的控制系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
下面通過附圖和具體實施例,對本發(fā)明的技術方案進行詳細描述:
如圖2所示,實施例提供的一種基于fpga的儀控系統(tǒng),該儀控系統(tǒng)包括基于fpga的現(xiàn)場控制站主控板卡210和對該現(xiàn)場控制站主控板卡210進行診斷、維護用的fitrel-mt(fitrel為一種控制平臺的名稱,mt是程序名稱)維護工具200(即上位機),該fitrel-mt維護工具200包括:整定參數(shù)輸入單元201、整定在線運行單元202、以太網(wǎng)協(xié)議端口203、eeprom(英文全稱為electricallyerasableprogrammableread-onlymemory,中文全稱為電可擦可編程只讀存儲器)數(shù)據(jù)整理單元204,eeprom寫入單元205。本實施例提供的現(xiàn)場控制站主控板卡210(即下位機)包括主fpga211、afpga(多個fpga組合起來的邏輯處理單元,afpga內(nèi)部設置有參數(shù)存儲單元216)、eeprom217,其中,主fpga211進一步包括:存儲單元212、指令處理單元213、參數(shù)整定單元(包括在線運行參數(shù)整定模塊215)、eeprom讀寫模塊214。
具體地,fitrel-mt維護工具200中的整定參數(shù)輸入單元201可以是鍵盤或者觸摸屏類的輸入裝置,整定在線運行單元202可以是寫入有固件代碼的集成電路控制器,能夠根據(jù)整定參數(shù)輸入單元201輸入的參數(shù),按照整定在線運行單元202內(nèi)預設的邏輯關系,執(zhí)行參數(shù)的在線整定,并通過以太網(wǎng)協(xié)議端口203與現(xiàn)場控制站主控板卡210進行參數(shù)傳輸;即執(zhí)行整定在線參數(shù)的邏輯單元,主要功能是:一、將正定參數(shù)輸入單元中的數(shù)據(jù)通過維護網(wǎng)絡協(xié)議進行整理,然后發(fā)送下位機;二、對下位機參數(shù)數(shù)據(jù)進行回讀和解析,并傳遞到界面顯示。需要說明的是,fitrel-mt維護工具200中的eeprom數(shù)據(jù)整理單元204不僅可以按照圖2中的連接關系,與整定在線運行單元202連接,還可以直接與整定參數(shù)輸入單元201連接,接收來自整定參數(shù)輸入單元201的參數(shù)。
現(xiàn)場控制站主控板卡210的主fpga211中的存儲單元212可以是ram,用于接收、存儲來自fitrel-mt維護工具200的各種參數(shù);指令處理單元213也可以是寫入有固件代碼的集成電路控制器,在線運行參數(shù)整定模塊215為現(xiàn)場控制站主控板卡(即下位機)210中處理參數(shù)整定數(shù)據(jù)的邏輯單元,主要任務是將從上位機收到的參數(shù)數(shù)據(jù)寫入?yún)?shù)存儲單元中;參數(shù)存儲單元216也可以是ram;eeprom讀寫模塊214用于讀取eeprom217中的參數(shù),也可以向eeprom中存儲參數(shù)。
采用上述技術方案,整定在線運行單元202通過以太網(wǎng)協(xié)議端口203、主fpga中的存儲單元212、主fpga中的指令處理單元213與在線運行參數(shù)整定模塊215連接、配合,能夠在整定在線運行單元202至在線運行參數(shù)整定模塊215整個過程,都實現(xiàn)數(shù)據(jù)雙向傳輸,完成對儀控系統(tǒng)進行參數(shù)在線整定;并且eeprom數(shù)據(jù)整理單元204、eeprom寫入單元205,通過以太網(wǎng)協(xié)議端口203、主fpga中的存儲單元212、主fpga中的指令處理單元213與eeprom讀寫模塊214連接、配合,完成對儀控系統(tǒng)進行整理eeprom數(shù)據(jù)、整定eeprom以及重新向存儲器中寫入?yún)?shù)。
需要說明的是,上述技術方案中,以太網(wǎng)協(xié)議端口203、主fpga中的存儲單元212、主fpga中的指令處理單元213還可以設置成部分或者全部單元/模塊為兩個并列的模塊,分別處理參數(shù)在線整定,整理/整定eeprom數(shù)據(jù)。
如圖3所示,本實施例還提供一種基于fpga的儀控系統(tǒng)參數(shù)整定方法,該方法包括:
s301、開始參數(shù)整理:通過維護工具200的整定參數(shù)輸入單元201輸入開始參數(shù)整理的控制命令;
s302、停止周期上傳:現(xiàn)場控制站主控板卡210停止周期性上傳數(shù)據(jù),進入?yún)?shù)整定狀態(tài);
s303、通訊請求:維護工具200與現(xiàn)場控制站主控板卡210之間建立通訊請求,通訊請求完成后,建立二者之間的數(shù)據(jù)傳輸;
s304、讀取eeprom數(shù)據(jù):fpga的eeprom讀寫模塊214讀取與fpga相連的存儲器(圖2中的eeprom217)中參數(shù);
s305、判斷參數(shù)是否讀取成功:
如果讀取存儲器中參數(shù)成功,則執(zhí)行步驟s306,否則執(zhí)行步驟s314;
s306、通過fpga的在線運行參數(shù)整定模塊逐個整定在線運行參數(shù),然后執(zhí)行步驟s307;
s307、判斷步驟s306中整定在線運行參數(shù)是否成功:
如果逐個整定在線運行參數(shù)整定成功,則執(zhí)行步驟s308;否則,返回步驟s306重新執(zhí)行參數(shù)整定;
s308、更新eeprom數(shù)據(jù):
基于逐個整定在線運行參數(shù)整定后的結果,維護工具200的數(shù)據(jù)整理單元重新整理存儲器中對應的參數(shù),并且維護工具200的eeprom寫入單元重新向存儲器中寫入?yún)?shù);優(yōu)選地,重新整理存儲器中對應的參數(shù)包括:對逐個整定在線運行參數(shù)整定后的結果進行循環(huán)冗余校驗和基于逐個整定在線運行參數(shù)整定后的結果,更新讀取所述存儲器中參數(shù)(即后續(xù)的步驟s310);
s309、判斷整定是否結束:如果所有的參數(shù)都整定完成,則執(zhí)行步驟s310,否則返回步驟s306,執(zhí)行下一個參數(shù)的整定;
s310:計算eeprom的crc,即重新整理存儲器中對應的參數(shù),進一步對逐個整定在線運行參數(shù)整定后的結果進行循環(huán)冗余校驗和基于逐個整定在線運行參數(shù)整定后的結果,更新讀取存儲器中參數(shù);然后執(zhí)行步驟s311;
s311:下裝eeprom中的參數(shù)部分;
s312:判斷下裝是否成功,如果成功,執(zhí)行步驟s313,否則,執(zhí)行步驟s315;
s313:對下裝數(shù)據(jù)進行回復查詢,即通過上位機發(fā)送針對重新寫入存儲器中寫入的參數(shù)的回讀檢查指令;優(yōu)選地,還可以將上位機讀取到的參數(shù)顯示在上位機的界面上,使得用戶能夠直接判斷參數(shù)整定結果。
s314:開始周期上傳:不管參數(shù)整定、整理eeprom數(shù)據(jù)、整定eeprom哪個環(huán)節(jié)是否成功完成,都開始將最后結果上傳至fitrel-mt維護工具200。
s315:結束參數(shù)整定。
優(yōu)選地,上述方法中:上位機將整定在線運行參數(shù)數(shù)據(jù)包發(fā)送至fpga內(nèi)的命令處理單元,然后fpga按照整定在線運行參數(shù)數(shù)據(jù)包逐個整定在線運行參數(shù);fpga回讀存儲器中參數(shù),并將存儲器中參數(shù)回傳至上位機,上位機完成對存儲器中對應參數(shù)重新整理后,通過fpga重新向存儲器中寫入?yún)?shù)。
如圖4所示,本實施例還提供了一種基于fpga的儀控系統(tǒng)參數(shù)整定裝置,該裝置包括:
設置在fpga內(nèi)的參數(shù)讀取單元410(即,用于讀取與fpga相連的存儲器中參數(shù);
設置在fpga內(nèi)的整定在線運行參數(shù)單元420,如果參數(shù)讀取單元410讀取存儲器中參數(shù)成功,則通過整定在線運行參數(shù)單元420逐個整定在線運行參數(shù);
設置在與fpga相連的上位機內(nèi)的參數(shù)整理單元430(包括圖2中所示的數(shù)據(jù)整理單元204,eeprom寫入單元205),如果逐個整定在線運行參數(shù)整定成功,則參數(shù)整理單元基于逐個整定在線運行參數(shù)整定后的結果,重新整理存儲器中對應的參數(shù),并重新向存儲器中寫入?yún)?shù);
因此,重新整理存儲器中對應的參數(shù)實際上是通過與fpga相連的上位機完成的。
優(yōu)選地,重新整理存儲器中對應的參數(shù)包括:對逐個整定在線運行參數(shù)整定后的結果進行循環(huán)冗余校驗和基于逐個整定在線運行參數(shù)整定后的結果,更新讀取存儲器中參數(shù)。
優(yōu)選地,儀控系統(tǒng)參數(shù)整定裝置還包括:與存儲器連接存儲器讀寫模塊(即圖2中的eeprom讀寫模塊214,用于讀取存儲器中的參數(shù),也可以向存儲器中存儲參數(shù)),存儲器讀寫模塊包括寫入存儲器數(shù)據(jù)單元和回讀存儲器數(shù)據(jù)單元,寫入存儲器數(shù)據(jù)單元和回讀存儲器數(shù)據(jù)單元二者并聯(lián)之后構成存儲器讀寫模塊,當上位機對重新向存儲器中寫入?yún)?shù)后的存儲器內(nèi)參數(shù)發(fā)送回讀檢查檢查指令時,回讀存儲器數(shù)據(jù)單元讀取存儲器內(nèi)的參數(shù)。
優(yōu)選地,儀控系統(tǒng)參數(shù)整定裝置還包括設在上位機內(nèi)的顯示單元,并且上位機讀取到的參數(shù)被顯示在上位機的界面單元上,使得用戶能夠直接判斷參數(shù)整定結果。
優(yōu)選地,儀控系統(tǒng)參數(shù)整定裝置包括設置在上位機內(nèi)的以太網(wǎng)端口和設置在fpga內(nèi)的命令處理單元(即圖2中的指令處理單元);上位機將整定在線運行參數(shù)數(shù)據(jù)包通過以太網(wǎng)端口發(fā)送至命令處理單元(即圖2中的指令處理單元),然后通過fpga按照整定在線運行參數(shù)數(shù)據(jù)包逐個整定在線運行參數(shù);fpga回讀存儲器中參數(shù),并通過命令處理單元和以太網(wǎng)端口,將存儲器中參數(shù)回傳至上位機,上位機完成對存儲器中對應參數(shù)重新整理后,通過以太網(wǎng)端口和fpga內(nèi)的命令處理單元重新向存儲器中寫入?yún)?shù)。
下面結合圖5,對基于fpga的儀控系統(tǒng)參數(shù)整定過程中,命令解析和數(shù)據(jù)處理過程進行解釋:本實施例,基于fpga的儀控系統(tǒng)參數(shù)整定過程中:包括命令解析(指令處理單元213)解析參數(shù)整定的參數(shù)對應的指令,然后執(zhí)行啟動通訊請求,啟動周期上傳或者停止周期上傳,然后回復命令處理結果,進一步判斷儀控系統(tǒng)和fitrel-mt維護工具是否處于空閑狀態(tài);同時還對解析后的數(shù)據(jù),啟動下裝eeprom、啟動算法參數(shù)寫入(更新afpga參數(shù))、讀取eeprom參數(shù),然后回復數(shù)據(jù)處理結果,進一步判斷儀控系統(tǒng)和fitrel-mt維護工具是否處于空閑狀態(tài);當處于空閑狀態(tài)時,執(zhí)行裝載包頭信息crc錯誤,然后檢查crc是否正確,如果正確,回到命令解析狀態(tài)。
由此可見,圖3中提供的基于fpga的儀控系統(tǒng)參數(shù)整定方法執(zhí)行步驟,并不限制于圖3中的流程順序,有些步驟是可以同時進行,也并非限制于圖3中的流程的先后順序。
采用本發(fā)明實施例提供的上述技術方案,能夠至少獲得以下有益效果中的一種:
1、重新整理存儲器中對應的參數(shù)是通過與fpga相連的上位機完成,這樣fgpa不需要專門對處理存儲器中對應參數(shù)進行整定的硬件,所以能夠降低fpga在參數(shù)整定過程中硬件資源的開銷。
2、整個參數(shù)整定過程中讀取到與fpga相連存儲器對應參數(shù),可以直接展示在上位機的用戶界面上,可以對整個儀控系統(tǒng)中組態(tài)數(shù)據(jù)進行完整的呈現(xiàn)。
本領域普通技術人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質(zhì)包括:rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
最后需要說明的是,上述說明僅是本發(fā)明的最佳實施例而已,并非對本發(fā)明做任何形式上的限制。任何熟悉本領域的技術人員,在不脫離本發(fā)明技術方案范圍內(nèi),都可利用上述揭示的做法和技術內(nèi)容對本發(fā)明技術方案做出許多可能的變動和簡單的替換等,這些都屬于本發(fā)明技術方案保護的范圍。