姜群興,胡立生
核級(安全級)數(shù)字化控制系統(tǒng)是核電數(shù)字化儀控系統(tǒng)的重要組成部分。當(dāng)非安全級控制系統(tǒng)失效時,它用于保護(hù)核反應(yīng)堆的安全屏障的完整性,當(dāng)反應(yīng)堆安全重要參數(shù)超過安全極限時,它觸發(fā)反應(yīng)堆緊急停堆系統(tǒng)和/或?qū)TO(shè)安全設(shè)施,因此,核級控制系統(tǒng)的可靠性成為了核電數(shù)字化儀控系統(tǒng)的關(guān)鍵,而其在很大程度上決定于主控制器的可靠性。類似于常規(guī)工業(yè)的數(shù)字化控制系統(tǒng)(DCS),為提高主控制器的可靠性,核級控制系統(tǒng)采用各種冗余機(jī)制來實(shí)現(xiàn)主控制器的可靠性。以目前主流的核級控制系統(tǒng)為例,AREVA核級控制系統(tǒng)(Teleperm XS)采用輸出仲裁的方法來實(shí)現(xiàn)主從控制器的冗余,而西屋的Common Q和三菱的核級控制系統(tǒng),都采用從機(jī)備份主機(jī)寄存器及輸出仲裁的方法,來實(shí)現(xiàn)多主控制器的冗余方式。采用備份主機(jī)寄存器的冗余方式,可以實(shí)現(xiàn)主從機(jī)之間的無擾切換,從而大大提高系統(tǒng)的實(shí)時性及可靠性[1]。
主從控制器之間寄存器備份的關(guān)鍵,是需要提供 CPU之間、CPU與北橋之間的高速數(shù)據(jù)通道。由 Intel公司和AMD公司推出的第三代高速串行通訊總線Hyper transport總線和PCI Express技術(shù),為主控制器CPU與北橋的通訊提供了高速通道。本論文以第三代核級控制系統(tǒng)主控制器技術(shù)為參考,并結(jié)合自主研發(fā)的核級控制系統(tǒng)主控制器的特點(diǎn),研究基于寄存器數(shù)據(jù)備份的新一代核級控制系統(tǒng)主控制器的通訊技術(shù)。
新一代核級控制系統(tǒng)主控制器采用了Hypertransport和PCI Express通訊總線技術(shù),首先我們來介紹下這兩種通訊總線的技術(shù)特點(diǎn)和它們相比普通通訊總線所具有的優(yōu)勢。
Hypertransport總線設(shè)備包括端接口和用戶接口,端接口連接的是點(diǎn)對點(diǎn)的單向傳輸?shù)腍ypertransport鏈路。數(shù)據(jù)鏈路有兩條,分別負(fù)責(zé)接收和發(fā)送。每條鏈路由數(shù)據(jù)路徑、控制信號線和時鐘信號線組成。每條鏈路的數(shù)據(jù)路徑可由2到32的數(shù)據(jù)線組成,但是標(biāo)準(zhǔn)的數(shù)據(jù)線數(shù)量是 2、4、8、16、32。數(shù)據(jù)信息、命令信息和控制信息共用數(shù)據(jù)路徑傳輸[2]。Hypertransport總線的一般工作在400MHZ時鐘頻率下,但是 HyperTransport采用類似 DDR的工作方式,所以在400MHz工作頻率下,相當(dāng)于800MHz的傳輸頻率。又由于Hypertransport采用雙向傳輸,在400MHZ的工作頻率下,32位帶寬的數(shù)據(jù)路徑可達(dá)到6.4G的傳輸速度,計(jì)算方法為:400MHz×2×2×32bit÷8=6.4GB/sec[3]。
PCI Express總線也采用了點(diǎn)對點(diǎn)串行連接的方式,每個設(shè)備都有自己的專用連接,不需要向整個總線請求帶寬,這樣就可以把數(shù)據(jù)傳輸率提高到一個很高的頻率。相對于傳統(tǒng) PCI總線在單一時間周期內(nèi)只能實(shí)現(xiàn)單向傳輸,PCI Express的雙單工連接能提供更高的傳輸速率和質(zhì)量[4]。PCI Express采用串行數(shù)據(jù)包方式傳遞數(shù)據(jù),這樣PCI Express接口每個針腳可以獲得比傳統(tǒng)I/O標(biāo)準(zhǔn)更多的帶寬。由于這些優(yōu)點(diǎn),PCI Express技術(shù)的傳輸速度可達(dá)到5G/s。在兼容性方面,PCI Express在軟件層面上兼容目前的PCI技術(shù)和設(shè)備,支持 PCI設(shè)備和內(nèi)存模組的初始化,也就是說采用了PCI Express技術(shù)后目前的驅(qū)動程序、操作系統(tǒng)無需推倒重來[5]。
Hypertransport和PCI Express通訊總線技術(shù)的數(shù)據(jù)傳輸采用的是差分傳輸?shù)姆绞剑鶸SB等數(shù)據(jù)傳輸類似。傳輸過程使用1.2伏的電壓,傳輸時,當(dāng)A線高于B線電壓時我們認(rèn)為是邏輯‘1’,如果B線電壓高于A線電壓時我們認(rèn)為是邏輯‘0’。采用差分方式傳輸可以提高抗共模噪音能力。
HyperTransport和PCI Express是高速、高性能的通訊總線。它們相比普通的通訊總線(如PCI,PCI_X等)有著更高的傳輸速度,HyperTransport通訊總線的速度可達(dá)到6.4G/s,PCI Express通訊總線也可達(dá)到5G/s左右的速度。有了高速的通訊總線我們才有條件實(shí)現(xiàn)主從CPU之間的寄存器備份,實(shí)現(xiàn)基于寄存器備份的主從熱冗余機(jī)制,通訊總線速度的提高可以提高CPU讀寫內(nèi)存和外設(shè)的速度,可以提高整個控制器的運(yùn)行速度和響應(yīng)速度,這樣就可以從根本上提高整個核級控制系統(tǒng)的響應(yīng)速度。
Hypertransport通訊總線技術(shù)具有故障安全性。Hypertransport通訊總線采用二線制多通道通訊,當(dāng)CPU檢測到任何一個通道的故障,都可以通過自動配置通道數(shù),來實(shí)現(xiàn)原有的通訊功能。Hypertransport的通訊速度遠(yuǎn)遠(yuǎn)高于主控制器冗余對數(shù)據(jù)交互帶寬的需求,那么任何一個通道的故障,剩下的通道仍然能滿足主控制器數(shù)據(jù)交互的需求。
第三代通訊總線是串行傳輸數(shù)據(jù)的,相比普通的通訊總線減少了高速線,降低了PCB布線的難度和硬件設(shè)計(jì)的成本。第三代通訊總線采用了差分傳輸方式,提高了抗共模噪音能力。第三代通訊總線還采用了點(diǎn)對點(diǎn)單向傳輸?shù)姆绞?,提高了抗干擾的能力和傳輸?shù)姆€(wěn)定性。而且在軟件層面上,它們還兼容普通通訊總線的設(shè)備與技術(shù)。
總之,第三代通訊技術(shù)符合核級控制系統(tǒng)主控制器設(shè)計(jì)的要求,是國家實(shí)現(xiàn)自主研發(fā)核級主控制器的關(guān)鍵之一。
核級控制系統(tǒng)主控制器根據(jù)冗余機(jī)制的需要來選擇通訊技術(shù)和總線機(jī)構(gòu),因?yàn)橥ㄓ嵖偩€技術(shù)很大程度上決定了核級控制系統(tǒng)的冗余機(jī)制,下面我們介紹幾種冗余機(jī)制。
常規(guī)的工業(yè)控制系統(tǒng)通常采用基于輸出仲裁的主從熱冗余機(jī)制,當(dāng)仲裁設(shè)備檢測到主控制器輸出數(shù)據(jù)出現(xiàn)異常時,把通訊總線切換到從控制器上。常規(guī)工業(yè)控制系統(tǒng)采用這種方式主要是由于普通通訊總線速度的瓶頸。西門子的冗余機(jī)制就是冗余的從控制器不斷備份主控制器的數(shù)據(jù),并監(jiān)視主控制器的輸出,當(dāng)從控制器發(fā)現(xiàn)主控制器輸出數(shù)據(jù)出現(xiàn)問題時,從控制器把主控制器與整個控制系統(tǒng)隔離,并取代主控制器開始工作。而隨著通訊總線速度和性能的提高,基于寄存器備份的主從熱冗余機(jī)制已經(jīng)成為核級數(shù)字化控制系統(tǒng)主控制器技術(shù)的發(fā)展趨勢。新一代的核級控制系統(tǒng)控制器是采用寄存器備份的方式,我們在主從控制器的CPU之間建立一個高速的通訊通道,從控制器不斷備份主控制器的寄存器的內(nèi)容,一旦發(fā)現(xiàn)主控制器出現(xiàn)問題,從控制器把主控制器與整個控制系統(tǒng)隔離,并取代主控制器開始工作。
因?yàn)樾乱淮暮思壙刂葡到y(tǒng)控制器采用寄存器備份的方式,所以我們在設(shè)計(jì)控制器時,圍繞CPU構(gòu)建的通訊總線結(jié)構(gòu)如圖1所示,CPU與內(nèi)存、CPU與北橋之間的通訊可采用Hypertransport通訊總線技術(shù),北橋與南橋之間的通訊可采用PCI Express通訊總線技術(shù)。因?yàn)槟蠘蚺c外設(shè)之間的通訊不需要很高的通訊速度,南橋與外設(shè)之間的通訊可采用普通的并行總線。主從控制器的CPU之間有一條高速通訊通道,用于備份數(shù)據(jù),采用Hypertransport通訊總線技術(shù)實(shí)現(xiàn)。北橋芯片和南橋芯片我們都用 FPGA芯片設(shè)計(jì),用FPGA來實(shí)現(xiàn)Hypertransport通訊接口設(shè)備和PCI Express通訊接口設(shè)備,并在北橋的FPGA內(nèi)部實(shí)現(xiàn)Hypertransport通訊接口設(shè)備和PCI Express通訊接口設(shè)備的連接,使它們之間能進(jìn)行信息的傳輸[6]。
圖1 核級控制系統(tǒng)主控制器總體架構(gòu)
上面介紹了通訊總線的結(jié)構(gòu),通訊總線接口是實(shí)現(xiàn)通訊總線功能的關(guān)鍵?,F(xiàn)在我們介紹在 FPGA中實(shí)現(xiàn)Hypertransport總線接口和PCI Express總線接口的方案。
Hypertransport體系結(jié)構(gòu)包括三部分:物理接口層(Physical Interface),同步對齊層(Synchronization and Alignment)和協(xié)議接口層(Protocol Interface)。如圖2所示:
圖2 Hypertransport總線設(shè)備的體系結(jié)構(gòu)
物理接口層的功能是把 Hypertransport數(shù)據(jù)鏈路和Hypertransport核連接起來。它包括接收和發(fā)送兩部分。接收模塊從RxCTL_i、RxCAD_i數(shù)據(jù)線上接收串行的數(shù)據(jù),然后把數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)并傳輸給同步對齊模塊。Rx時鐘產(chǎn)生器產(chǎn)生一個兩倍于 RxClk的時鐘信號。接收模塊在該時鐘信號的控制下讀取RxCTL_i、RxCAD_i數(shù)據(jù)。
發(fā)送模塊從同步對齊層得到并行數(shù)據(jù),然后把并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù),再把串行數(shù)據(jù)發(fā)送到Hypertransport數(shù)據(jù)鏈路上。數(shù)據(jù)進(jìn)入這個模塊時已經(jīng)被分到了不同的通道上。Tx時鐘產(chǎn)生器產(chǎn)生一個兩倍于同步對齊層的時鐘信號。發(fā)送模塊在該信號的控制下發(fā)送串行信號 TxCTL_i、TxCAD_i。
同步對齊層負(fù)責(zé)完成鏈路時鐘域與用戶接口時鐘域間的同步,以及實(shí)現(xiàn)數(shù)據(jù)邊界對齊、CRC生成和檢測等處理過程。同步和對齊層采用CRC編碼來確保傳輸數(shù)據(jù)的可靠性。
協(xié)議層的功能是調(diào)度數(shù)據(jù)邊界對齊后的數(shù)據(jù)流,維護(hù)虛通道緩沖區(qū),與用戶接口進(jìn)行交互。協(xié)議層有三個全雙工的虛擬通道來與用戶進(jìn)行交互。分別為:Non_posted Requests(要求回復(fù)的請求,包括讀請求和部分寫請求),Posted Requests(不要求回復(fù)的請求),以及Response(對Non_posted Requests的回復(fù))。Hypertransport協(xié)議層接口,與PCI Express設(shè)備接口配置兼容,這使我們能把Hypertransport接口和PCI Express接口連接起來。
PCI Express體系結(jié)構(gòu)包括四部分:應(yīng)用接口層、傳輸層、數(shù)據(jù)鏈路層和物理層。如圖3所示:
圖3 PCI Express總線的體系結(jié)構(gòu)
物理層的功能是把數(shù)據(jù)打包并發(fā)送到總線上或者從總線上接收并解析收到的包。
數(shù)據(jù)鏈接層采用按序的方式交換信息包,信息包是由傳輸層生成,按CRC校驗(yàn)進(jìn)行數(shù)據(jù)保護(hù)的包。這些信息包的內(nèi)容以及校驗(yàn)信息存儲在數(shù)據(jù)鏈接層的緩存內(nèi)。這樣可以確保信息的傳輸不受電子噪音干擾。
傳輸層位于數(shù)據(jù)鏈路層和應(yīng)用層之間,從應(yīng)用層接收讀寫請求并創(chuàng)建請求包給數(shù)據(jù)鏈路層,所有采用封包形式的請求都會被分別處理。同時,傳輸層也接收來自數(shù)據(jù)鏈路層的響應(yīng)包,并與應(yīng)用層中的原始請求進(jìn)行匹配。所有的包都有唯一的標(biāo)志來匹配相應(yīng)的請求和響應(yīng),這些包中也含有如優(yōu)先級、松散排序等屬性選項(xiàng),系統(tǒng)根據(jù)這些屬性在I/O系統(tǒng)中為這些包找到最佳傳輸路徑。
應(yīng)用層主要用來產(chǎn)生對外設(shè)的讀寫請求。與其他設(shè)備之間的鏈接,例如我們核電控制器中,與Hypertransport設(shè)備連接。
我們選用Altera公司提供的Stratix II GX芯片。它是Altera公司設(shè)計(jì)的大規(guī)模高端 FPGA,適合高端設(shè)計(jì)的應(yīng)用。該芯片為設(shè)計(jì)工程師提供了完善的Hypertransport和PCI Express的開發(fā)平臺。并且使用它的開發(fā)平臺得到的總線接口與業(yè)界標(biāo)準(zhǔn)相一致。
FPGA內(nèi)部主要由三部分組成:Hypertransport總線接口,PCI Express總線接口和連接器。如圖4所示:
圖4 FPGA內(nèi)部的結(jié)構(gòu)
Quartus II 8.1軟件的Magafunction中提供了Hypertransport總線接口和PCI Express總線接口的模塊,而且Magafunction提供的模塊一般在速度和面積上都比我們設(shè)計(jì)的模塊好很多,所以我們只要會使用它提供的Hypertransport總線接口和PCI Express總線接口的模塊就可以了。我們設(shè)計(jì)的方案是首先建立一個頂層文件,把Magafunction提供的Hypertransport接口模塊和PCI Express接口模塊嵌入到我們的頂層模塊中來,然后我們再自己寫一個連接器,把Hypertransport總線接口和PCI Express總線接口的控制總線和數(shù)據(jù)總線連接起來。
Hypertransport總線接口從Hypertransport鏈路上接收串行的信號,然后轉(zhuǎn)換成并行的信號,并對信號進(jìn)行解析,如果是需要傳給PCI Express接口的就把信號通過連接器送給PCI Express總線接口,同時Hypertransport總線接口還可以通過連接器接收PCI Express總線接口傳來的數(shù)據(jù),再把數(shù)據(jù)發(fā)送到Hypertransport總線上去。同樣,PCI Express總線接口既可把Hypertransport接口傳來的數(shù)據(jù)輸出到PCI Express總線上,也可以接收外部PCI Express總線上的數(shù)據(jù),并把它傳給Hypertransport總線接口。
本文對第三代通訊總線Hypertransport和PCI Expres在核級控制系統(tǒng)主控器中的應(yīng)用進(jìn)行了初步的研究,并給出了我們的設(shè)計(jì)方案。Hypertransport和PCI Express通訊總線的應(yīng)用是未來核電保護(hù)系統(tǒng)通訊總線的發(fā)展方向,但是我們對于這些第三代通訊總線的研究使用還處于初步的研究階段,在未來研究的道路上,我們還需要付出更多的努力。
[1]IEC 60880-2006:Nuclear Power Plants-Instrumentation and Control Systems Important to Safety-Software Aspects for Computer-Based Systems Performing Category A Functions[S],International Electro Technical Commission.May-2006.
[2]Anderson Don, Trodden Jay.Hyper Transport system arthitecture[M].Mindshare InK,Addison Wesley,2003.
[3]裘嶸,郭御風(fēng),江泓,等.新型高性能互連技術(shù)Hyper Transport研究[J].計(jì)算機(jī)應(yīng)用研究,2004,21(5):258-260.
[4]David Mayhew and Venkata Krishnan,PCI Experss and Advanced Switching:Evolutionary Path to Building Next Generation Interconnects,StarGen,In c,2 003.
[5]胡鵬,李瓊,郭御風(fēng),徐煒遐,新一代IO互連PCI Express體系結(jié)構(gòu)研究,第九屆全國計(jì)算機(jī)工程與工藝學(xué)術(shù)年會論文集,2005.
[6]Detail Stage 4 of the Process Engineering Description for Safety Instrumentation and Control (Concept Report Level 4).TIANWAN NPP Requirement Specification,PG L52/LYG/2001/48f.July-2005.