★北京廣利核系統工程有限公司程康,李明鋼
關(guān)鍵詞:FPGA;點(diǎn)對點(diǎn)通信;安全級DCS
反應堆保護系統(RPS)作為核電安全級離散式控制系統(DCS)的組成部分,是公認的核電站最重要的安全保障系統,其作用為運行參數達到核安全保護屏障閾值時(shí),緊急停閉反應堆,可以避免核安全事故發(fā)生。由于對停堆響應的處理涉及到核電站人員、設備和環(huán)境的安全,因此,安全級DCS系統指標對停堆響應時(shí)間有著(zhù)非常嚴格的要求。無(wú)論是美國核管會(huì )標準評審大綱(NUREG-0800)還是環(huán)保部的相關(guān)標準(HAD102/16)都對停堆響應時(shí)間做出了指導性的說(shuō)明,停堆響應時(shí)間通常應小于0.2s[1][2]。因此,如何減小停堆響應時(shí)間,是安全級DCS系統設計中必須要考慮的一個(gè)重要因素。
在安全級DCS系統中,停堆響應時(shí)間是指從傳感器采集到信號到反應堆保護系統輸出信號再到停堆用電路器所需要的時(shí)間,其經(jīng)過(guò)模擬量輸入(AI)、I/O總線(xiàn)處理、點(diǎn)對點(diǎn)網(wǎng)絡(luò )通信、主處理器中央處理器(CPU)運算、數字量輸出(DO)等過(guò)程。目前,絕大多數研究機構和DCS生產(chǎn)廠(chǎng)商通過(guò)優(yōu)化AI、DO模塊選型、I/O總線(xiàn)端口、CPU應用程序算法等方式減少停堆響應時(shí)間[3],但是鮮有通過(guò)提高網(wǎng)絡(luò )通信的效率來(lái)優(yōu)化停堆響應時(shí)間的研究。本研究提出了一種利用可靠性高、速度快、并行處理等優(yōu)勢的FPGA技術(shù)來(lái)改進(jìn)當前通信系統,極大地提高了多通道、大數據容量的點(diǎn)對點(diǎn)通信處理效率,從而對停堆響應時(shí)間進(jìn)行了優(yōu)化。本文首先介紹了數字化反應堆保護系統的架構及停堆響應時(shí)間的計算方法;其次,進(jìn)一步分析了影響停堆響應時(shí)間的因素并且提出了通過(guò)點(diǎn)對點(diǎn)通信優(yōu)化停堆響應時(shí)間的可能性;最后,利用FPGA技術(shù)優(yōu)化實(shí)現點(diǎn)對點(diǎn)通信并且進(jìn)行了實(shí)驗驗證,證明了此方法對優(yōu)化保護系統停堆響應時(shí)間有著(zhù)積極貢獻。
1 反應堆保護系統的停堆響應時(shí)間
1.1 數字化反應堆保護系統架構
一個(gè)典型的數字化反應堆保護系統如圖1所示,從最高級別的安全性考慮,反應堆保護系統采用4通道(CH I、CH II、CH III、CH IV)冗余設計,每個(gè)通道相對于其他通道獨立工作且均對應一組測量過(guò)程參數傳感器(如溫度、流量、液位、壓力等),在每個(gè)通道上進(jìn)行閾值比較,得出一個(gè)“是否超限”的結果,并將此結果發(fā)送到其他的通道。每個(gè)通道對本通道的閾值比較結果和其他三個(gè)通道的閾值比較結果進(jìn)行“四取二”的邏輯表決,并將結果輸出至該通道斷路器的失電停堆線(xiàn)圈[4]。
圖1 反應堆保護系統示意圖
1.2 反應堆保護系統信號處理過(guò)程
反應堆保護系統信號處理過(guò)程如圖2所示,在DCS系統中,AI模塊通過(guò)傳感器采集現場(chǎng)的工況信號,經(jīng)過(guò)總線(xiàn)管理模塊后,信號被送至CPU模塊,CPU模塊進(jìn)行運算處理后將輸出結果通過(guò)點(diǎn)對點(diǎn)通信模塊,并且在接收到其他通道通過(guò)點(diǎn)對點(diǎn)通信傳來(lái)的信息后進(jìn)行再次處理。最后,通過(guò)總線(xiàn)管理模塊將CPU處理后的結果發(fā)給DO模塊,最后由DO實(shí)現輸出[4]。
圖2 反應堆保護系統信號處理示意圖
1.3 停堆響應時(shí)間的計算
圖3 反應堆保護系統響應時(shí)間的計算
根據上述介紹,停堆響應時(shí)間的計算可以分為三部分,如圖3所示,系統響應時(shí)間TRT為T(mén)RT=TRPC(輸入1)+T點(diǎn)對點(diǎn)+TRPC(開(kāi)關(guān)量輸入)。
1.4 停堆響應時(shí)間分析
以中國首套擁有自主知識產(chǎn)權的核電安全級DCS和睦系統FirmSys為例,其組成部分與計算,如圖4所示[5]。
圖4 典型反應堆保護系統響應時(shí)間計算
在典型的FirmSys系統應用的實(shí)例中,主處理模塊周期(tMPU)、I/O通信模塊周期(tSCU)、網(wǎng)絡(luò )通信模塊周期(tNCU)和I/O周期(tIO)通常分別設置為15ms、8ms和8ms。因此,按照上述算法,停堆響應時(shí)間計算如下:
TRT=TRPCi+1.7TMPU1+2TNCU1+TTrans+1.7TMPU2+2TNCU2+TRPCo
=32+1.7×15+2×8+1.7×15+2×8+32=149(ms)
2 點(diǎn)對點(diǎn)通信對停堆響應時(shí)間的影響
2.1 對停堆響應時(shí)間影響分析
根據前一章節的描述,我們知道影響停堆響應時(shí)間的主要因素為CPU中各模塊的處理時(shí)間。CPU模塊所承擔的功能比較復雜,需要從接收AI模塊的信號、進(jìn)行閾值比較、將比較結果通過(guò)點(diǎn)對點(diǎn)通信發(fā)送到其他通道、接收其他通道通過(guò)點(diǎn)對點(diǎn)通信傳送的數據,到再次進(jìn)行閾值比較、產(chǎn)生DO模塊輸出信號。換句話(huà)說(shuō),CPU模塊的處理可以劃分為三個(gè)具體的模塊:主控制器模塊、IO數據與總線(xiàn)處理模塊、點(diǎn)對點(diǎn)通信模塊。因此,如果對上述的三個(gè)具體模塊進(jìn)行優(yōu)化,便可以減小停堆響應時(shí)間以提高保護系統的效率。由于在其他研究中對主控制器和IO數據與總線(xiàn)處理部分的研究已經(jīng)較為成熟,在本研究中我們僅討論目前研究較少的點(diǎn)對點(diǎn)通信模塊部分的優(yōu)化。
2.2 點(diǎn)對點(diǎn)通信的處理機制
點(diǎn)對點(diǎn)通信模塊為控制站的主處理模塊提供網(wǎng)絡(luò )數據的收發(fā),實(shí)現框圖如圖5所示。在發(fā)送時(shí),主處理模塊將待發(fā)送的數據放置在雙口RAM中,點(diǎn)對點(diǎn)通信模塊讀取到雙口RAM的信息后進(jìn)行數據有效性校驗,通過(guò)校驗后的數據通過(guò)網(wǎng)卡發(fā)出;在接收時(shí),點(diǎn)對點(diǎn)通信模塊通過(guò)網(wǎng)卡接收到信息后進(jìn)行數據有效性校驗,通過(guò)校驗后將數據存入到雙口RAM中待主處理模塊讀取。
圖5 點(diǎn)對點(diǎn)通信的數據處理流程
同時(shí),為了核電站的安全性考慮,網(wǎng)絡(luò )通信模塊除了與主處理模塊通過(guò)雙口RAM交換數據和與其他站點(diǎn)的網(wǎng)絡(luò )設備通信模塊進(jìn)行通信外,根據CEI/IEC60880等規范,它還要實(shí)現模塊自診斷、狀態(tài)顯示接口、熱備冗余處理、周期性維護等功能[6]。
2.3 點(diǎn)對點(diǎn)通信對停堆響應時(shí)間的影響
圖6 點(diǎn)對點(diǎn)通信模塊流程圖
基于微處理器的特點(diǎn),點(diǎn)對點(diǎn)通信模塊各項功能是周期運行的,每一個(gè)微處理器在執行周期中所執行的任務(wù)如圖6所示,每一項子任務(wù)均按順序執行,因此網(wǎng)絡(luò )通信模塊的最小執行周期為每項子任務(wù)的周期之和。
3 利用FPGA技術(shù)優(yōu)化實(shí)現站間點(diǎn)對點(diǎn)通信
在原來(lái)微處理器的方案基礎上,對點(diǎn)對點(diǎn)通信模塊做出最小的改動(dòng),使用FPGA+雙口RAM的解決方案,可以極大地改善點(diǎn)對點(diǎn)通信的處理周期。
3.1 任務(wù)的并行處理
由于FPGA的并行處理能力[7],每一個(gè)子任務(wù)在FPGA中均可以同時(shí)執行?;贔PGA架構的點(diǎn)對點(diǎn)通信模塊的處理框圖如圖7所示。
圖7 基于FPGA技術(shù)的點(diǎn)對點(diǎn)通信模塊流程圖
3.2 對網(wǎng)絡(luò )數據收發(fā)的優(yōu)化
對于微處理器的從網(wǎng)絡(luò )端口1到端口6輪詢(xún)的數據收發(fā)模式,FPGA的并行處理能力允許系統同時(shí)對6個(gè)端口的數據進(jìn)行發(fā)送,并且隨時(shí)對任一端口的網(wǎng)絡(luò )進(jìn)行接收并且緩存,極大地提高了網(wǎng)絡(luò )數據收發(fā)的執行速度,縮短了6個(gè)端口網(wǎng)絡(luò )的收發(fā)總體時(shí)間。
圖8 點(diǎn)對點(diǎn)通信網(wǎng)絡(luò )收發(fā)功能框圖
基于FPGA的6端口的點(diǎn)對點(diǎn)網(wǎng)絡(luò )通信模塊的網(wǎng)絡(luò )數據收發(fā)功能框圖如圖8所示。由于雙口RAM不能對同一個(gè)地址進(jìn)行操作,在FPGA中利用狀態(tài)控制雙口RAM的讀寫(xiě)順序,可以避免同時(shí)對同一地址的雙口RAM進(jìn)行操作。
在發(fā)送網(wǎng)絡(luò )數據的處理中,通信模塊從主處理模塊讀取到待發(fā)送數據之后同步進(jìn)行位寬轉換(32-bit到8-bit)后存入到相應的SRAM中,數據讀取完成并且通過(guò)校驗后,會(huì )通過(guò)網(wǎng)卡立即將6個(gè)端口的網(wǎng)絡(luò )數據同步發(fā)出。
在接收網(wǎng)絡(luò )數據的處理中,當檢測到某個(gè)或多個(gè)網(wǎng)卡有數據接收后,FPGA邏輯會(huì )立即對數據進(jìn)行處理,并存儲到相應的SRAM中,同時(shí)進(jìn)行數據有效性校驗,如果不通過(guò)則立即報錯。在系統執行寫(xiě)雙口RAM操作時(shí),將數據進(jìn)行位寬轉換(8-bit到32-bit)后存入到相應的雙口RAM中。
因此,在發(fā)送數據時(shí),由于FPGA處理可以完成數據有效性校驗、將數據存儲到SRAM、6個(gè)端口同時(shí)發(fā)送,因此較微處理器的執行方式至少節省了數據存儲器間轉移復制、位寬轉換和5倍同一網(wǎng)卡發(fā)送的時(shí)間。同理,在接收數據時(shí),FPGA處理的方式節省了5倍SRAM復制、存儲期間數據復制和位寬轉換的時(shí)間。
3.3 對雙口RAM處理的優(yōu)化
圖9 從雙口RAM讀取數據的并行處理FPGA
對主處理模塊交互的雙口RAM的處理如圖9所示,FPGA在讀取雙口RAM中的數據的同時(shí),還進(jìn)行數據緩存、數據拼接、數據校驗和數據狀態(tài)解析等處理。
在讀取雙口RAM數據時(shí),FPGA直接輸出信號訪(fǎng)問(wèn)雙口RAM的相關(guān)引腳,并直接從雙口RAM獲取數據到FPGA內部寄存器,得到的數據同時(shí)讀取到SRAM、相關(guān)狀態(tài)寄存器和數據有效性校驗模塊中,相當于完成了微處理器的三個(gè)順序執行任務(wù)的工作量。
3.4 基于FPGA實(shí)現點(diǎn)對點(diǎn)通信方案的測試
在線(xiàn)邏輯分析儀的使用,如Altera的SignalTap或Xilinx公司的ChipScope對FPGA內部的信號進(jìn)行抓取,為我們提供了測試基于FPGA的點(diǎn)對點(diǎn)通信模塊的手段[8]。在周期計數器中加入測試點(diǎn),測試每一個(gè)狀態(tài)完成后的周期計數器時(shí)間,就可以測出通信模塊周期運行時(shí)每個(gè)狀態(tài)所需要的時(shí)間,如圖10所示。在狀態(tài)機發(fā)送網(wǎng)絡(luò )數據執行完成后,SingnalTap抓取周期計數器的值為0x286A,時(shí)鐘周期為50M,因此狀態(tài)機執行讀取SN2數據和發(fā)送網(wǎng)絡(luò )數據所用的時(shí)間為206.92us。表1中列舉了經(jīng)過(guò)換算后的每一個(gè)狀態(tài)所需要的時(shí)間。
圖10 SingnalTap抓取發(fā)送網(wǎng)絡(luò )數據后周期計數器的值
表1 狀態(tài)機各狀態(tài)需時(shí)間
將接收網(wǎng)絡(luò )等待時(shí)間設為500us,由表1數據可以計算出網(wǎng)絡(luò )接收數據所需要的時(shí)間大約為122+85+0.08+123+500=830us,粗略記為1ms。將此數據代入計算公式,重新計算系統響應時(shí)間約為:
TRT=TRPCi+1.7TMPU1+TPPC+1.7TMPU2+2TNCU2+TRPCo
=32+1.7×15+0.8+1.7×15+32=117.8(ms)
由此可知,采用FPGA技術(shù)點(diǎn)對點(diǎn)通信在原系統中可使響應時(shí)間縮短31.2ms。
4 結論
本文分析了基于FPGA技術(shù)點(diǎn)對點(diǎn)通信對核電安全級DCS停堆保護響應時(shí)間的影響,提出了設計和解決方案,進(jìn)行了理論計算,并利用在線(xiàn)邏輯分析儀對方案進(jìn)行了測試和驗證。結果表明,由于FPGA具有速度快、并行執行等特點(diǎn),利用FPGA技術(shù)實(shí)現點(diǎn)對點(diǎn)通信,可以極大優(yōu)化停堆保護的響應時(shí)間。
FPGA技術(shù)的應用是未來(lái)核電安全級通信發(fā)展的方向,目前對于FPGA技術(shù)在核電安全級DCS設備上并沒(méi)有得到廣泛的應用。在以后的研發(fā)過(guò)程中,利用FGPA實(shí)現安全級DCS的其他設備和功能是未來(lái)核安全級保護系統的研究方向。
作者簡(jiǎn)介:
程 康(1983-),男,高級工程師,碩士,現就職于北京廣利核系統工程有限公司,主要從事核安全級儀控系統設計方面的研究。
李明鋼(1977-),男,河南平頂山人,高級工程師,學(xué)士,現任北京廣利核系統工程有限公司副總經(jīng)理,主要從事核電儀控系統設計制造生產(chǎn)管理相關(guān)工作。
參考文獻:
[1] NUREG-0800,Guidance on Digital Computer Real-Time Performance[S].
[2] HAD102/16, 核動(dòng)力廠(chǎng)基于計算機的安全重要系統軟件[S].
[3] 鄭偉智, 李相建, 朱毅明. 核電站數字化反應堆保護系統停堆響應時(shí)間分析[J]. 自動(dòng)化博覽, 2010, 8 : 74 - 76.
[4] 汪績(jì)寧, 周愛(ài)平, 郄永學(xué), 等. 核電廠(chǎng)反應堆保護系統緊急停堆響應時(shí)間分析及測試[J]. 核動(dòng)力工程, 2012, 33 (2) : 5 - 10.
[5] 張冬冬, 蒙海軍. 紅沿河核電站安全級DCS 控制系統[J]. 電力建設, 2009, 6 : 66 - 68.
[6] CEI/IEC 60880, Nuclear power plants-Instrumentation and control systems important to safety-Software aspects for computer-Based systems performing category a functions[S].
[7] McNelles P, Lu L. A review of the current state of FPGA systems in nuclear instrumentation and control[C]. //AMSE, Proceedings of the 2013 21st International Conference on Nuclear Engineering, Chengdu : ICONE21.
[8] Intel. Intel Quartus Prime Pro Edition User Guide[R]. USA : Intel Corporation. 2018.
摘自《自動(dòng)化博覽》2023年10月刊