999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

CSNS/RCS高頻低電平遠程控制系統樣機

2012-09-23 03:39:52
核技術 2012年11期
關鍵詞:設備系統

王 林 雷 革 馬 力

(中國科學院高能物理研究所 北京 100049)

中國散裂中子源(CSNS)快循環同步加速器(RCS)高頻低電平系統的任務是保證高頻系統嚴格按照電壓、相位、頻率的優化工作曲線運行,同時還要克服束流負載效應造成的系統不穩定性問題。它要完成腔壓幅度控制、同步相位控制和自動調諧等功能[1]。

高頻低電平遠控系統負責將低電平系統接入到EPICS控制系統框架中,使其與中央控制上位機進行實時數據通信。

1 總體結構

1.1 軟硬件結構

EPICS(Experimental Physics and Industrial Control System)是開源的實驗物理和工業控制系統軟件包,已在世界范圍內廣泛應用于粒子加速器、天文望遠鏡等科學裝置。它提供了豐富的控制系統軟件開發工具,可以用來建立分布式的控制系統體系結構,進行系統集成。

EPICS 由操作員接口 OPI(Operator Interface),輸入輸出控制器IOC(Input/Output Controller)和局域網LAN(Local Area Network)三部分組成[2]。

高頻低電平遠控系統采用全數字控制模式,CPU板+cPCI總線+數字I/O板的架構[1],CPU板和數字I/O板放在同一個cPCI機箱內,CPU板通過cPCI總線控制數字 I/O板和網絡與上位機進行通信。CPU板是愛默生的 CPCI-6020,操作系統是vxWorks。高頻低電平遠控系統結構如圖1所示。

RCS高頻系統有8個高頻腔,相應有8塊數字I/O板,每塊板卡控制一個腔。因此,在一個總線機箱內,一個CPU板需要控制8塊數字I/O板。其結構如圖2所示。

圖1 高頻低電平遠控系統結構圖Fig.1 Architecture of LLRF remote control system.

圖2 CPU板與數字I/O板的對應關系圖Fig.2 Correspondence between CPU and digital I/O boards.

1.2 工作過程

RCS的重復周期是40ms,高頻系統在前20ms由數字I/O板采集與高頻腔相關的實時數據,包括腔壓、相位、頻率等。后20ms,CPU板通過cPCI

中國散裂中子源工程建設資金資助

系統的時間分配是,留出2ms的余量,也就是用18ms的時間傳輸數據。由于有8塊數字I/O板同時工作在一個cPCI機箱內,所以平均每塊板卡需要在2.25ms內完成數據的傳輸。

數字I/O板中的FPGA固件程序的功能是以固定時間間隔產生中斷,CPU板接收到中斷后,利用DMA傳輸,讀取 16K個整型數據(即64KB)。中斷周期為 40ms產生 4次中斷,與下一次中斷的間隔分別為 4.5ms、 4.5ms、 4.5ms、 26.5ms。 16K個整型數據由 FPGA 內部 FIFO 產生,在產生中斷之前準備好,為了方便對數據進行校驗,這些數據是定值,分別是1,2,3,…,16384。

數據的傳送過程如圖 3所示。CPU板先通過DMA把FPGA中的數據取出來放到緩沖區中,原始數據需經過標度變換,然后送到EPICS的ai、bi和 waveform等記錄中,再通過網絡把數據送到上位機顯示。

圖3 數據傳送過程Fig.3 Data transfer process.

2 軟件開發

2.1 板卡配置

2.1.1 板卡識別

與VME等標準總線的板卡類似,在cPCI總線上,板卡首先要被識別。cPCI總線和PCI總線使用相同的軟件接口,因此數字I/O板的識別方法與PCI設備相同,下面很多概念也將直接以PCI總線來描述。

PCI設備空間包括配置空間和地址空間,配置空間用于存儲和配置設備的基本信息,地址空間用于訪問設備的內部寄存器。當vxWorks操作系統啟動時,逐個掃描PCI設備,并為設備分配總線號、設備號、功能號,程序中通過總線號、設備號、功能號來訪問PCI設備的配置空間。然后,vxWorks為PCI設備分配基地址,并將其寫入到配置空間的BAR(Base Address Register),程序中通過基地址來訪問PCI設備的內部寄存器。

在數字I/O板中,PCI橋芯片PLX-9656與cPCI總線接口,并通過 Local Bus與 FPGA接口。PLX-9656和FPGA都需要PCI地址空間,這兩個地址由 vxWorks系統分配以后自動存儲在PLX-9656配置空間的BAR0和BAR2中。

2.1.2 板卡配置過程

首先,使用vxWorks函數pciFindDevice(),以PLX-9656的vendor(供應商)和device(設備)ID為參數[3],查找數字 I/O板,為識別出的每塊板卡分配一個結構體,用于存儲板卡基本信息,并通過鏈表連接起來,以便查找。然后,在PCI配置空間中讀取總線號、設備號、功能號、基地址和中斷向量等信息,開辟數據緩沖區、vxWorks信號量,分別將它們存儲在板卡結構體中。最后,連接中斷服務程序,啟動中斷服務任務[4],初始化 PLX-9656橋芯片。板卡配置過程如圖4(a)所示。

2.2 中斷服務程序(ISR)

2.2.1 PCI中斷

PCI總線采用共享的中斷方式,每個PCI設備有 4個中斷引腳 INTA、INTB、INTC、INTD(通常只用INTA)[5]。CPCI-6020的中斷控制器為PCI設備提供了4個中斷請求線,分別編號為28、29、30、31。PCI設備配置空間中的中斷線寄存器用于指示中斷引腳與中斷控制器的連接關系,對于CPCI-6020,即為28、29、30、31中的一個。

在程序中,用中斷線的值作為中斷向量來關聯中斷服務程序,于是,當中斷發生時,中斷服務程序就會被vxWorks執行。由于數字I/O板的數目多于4個,一個中斷向量會對應兩塊數字I/O板,所以當中斷產生時,需要查詢PCI設備的中斷標志位來判斷到底是哪個設備產生的中斷,產生的是哪個中斷。

2.2.2 中斷服務程序工作流程

每個數字I/O板有三種中斷,即FPGA中斷、DMA通道0中斷和DMA通道1中斷。FPGA中斷表明數字I/O板中的數據己經準備好,DMA通道0和DMA通道1的中斷表明本次DMA傳輸完成。DMA通道0用來將數字I/O板中的64KB數據傳到CPU板,DMA通道1用來將CPU板中的波形數據傳到數字I/O板中。

樣機的中斷服務程序查詢每塊板卡的PCI中斷標志位,確定是哪塊板卡產生的哪個中斷。如果是FPGA中斷,則發起一次DMA,從數字I/O板傳輸64KB數據到CPU板。如果是DMA通道0或DMA通道1中斷,則釋放信號量,觸發中斷服務任務進行數據讀寫和處理。中斷服務程序流程如圖4(b)所示。

2.3 中斷服務任務

程序中有兩個中斷服務任務,任務1等待DMA通道0釋放的信號量,然后進行字節序轉換、數據校驗和數據處理。數據準備好后,觸發EPICS記錄來讀取數據。在這里,進行字節序轉換是因為 PCI總線的數據使用小端模式(little-endian),而PowerPC處理器的數據使用大端模式(big-endian)。數據處理是按照高頻低電平系統的需求,把 64KB數據分成8組,每組8KB,并對每組數據進行標度變換。中斷服務任務1的流程如圖4(c)所示。

任務2等待DMA通道1釋放的信號量,輸出運行信息,表明波形數據已經寫入到數字I/O板中。

圖4 主要函數流程圖Fig.4 Flow chart of main functions.

2.4 DMA傳輸

為了提高數據傳輸帶寬,使用 DMA(Direct Memory Access)方式進行數據傳輸。DMA控制器在PLX-9656橋芯片上,橋芯片一邊連接cPCI總線,另一邊連接板卡的內部總線(Local Bus)。發起一次DMA傳輸的過程是:在橋芯片的DMA控制寄存器中,先設置PCI地址、內部總線地址、傳輸的數據量、傳輸方向,然后使能DMA即可。DMA傳輸完成時,橋芯片向PCI總線發出中斷,通知操作系統DMA傳輸完成。

2.5 EPICS接口

程序中,EPICS記錄使用中斷的掃描方式,當CPU板緩沖區中的數據準備好時,觸發EPICS記錄進行處理,從而EPICS記錄將數據從緩沖區中讀取到自己的value域。具體過程是,數字I/O板配置時,使用 EPICS函數 scanIoInit()初始化一個IOSCANPVT型的變量。然后在記錄的設備支持函數的 get_ioint_info()中,將記錄與相應的IOSCANPVT型變量進行捆綁。當緩沖區中的數據準備好時,使用EPICS函數scanIoRequest(),以這個變量為參數,即可觸發相應的 EPICS記錄進行處理。

樣機的實時控制部分用到了EPICS的ai、bi、waveform等記錄類型,使用EPICS base中自帶的記錄支持,然后單獨開發了設備支持和設備驅動。bi用于讀取板卡工作模式,bo用于設置板卡工作模式、發送“板卡開始工作”等控制信息;longin和longout分別用于讀取和設置測試時FPGA的中斷次數;ai和ao用于讀取和設置標度變換的系數;8個waveform分別用于讀取 8組 8KB的數據;1個waveform用于向數字I/O板寫入波形數據,這個波形數據是電壓、相位或頻率的優化工作曲線,保證高頻系統嚴格按照這個曲線運行。波形數據先用EPICS工具caput寫入到waveform記錄,再由記錄的設備支持直接發起一次 DMA,傳輸到數字 I/O板中。

2.6 時間測試

CPCI-6020的CPU是MPC7410,這個CPU里面自帶了時間計數器,以 25MHz的頻率遞增,時間精度是 40ns??梢允褂?CPCI-6020 BSP中的sysTimeBaseLGet()函數獲取時間計數器的當前值,將這個函數穿插在程序中,就可以計算出程序的執行時間。

表1列出了FPGA發出6個中斷的時間測試。在一個重復周期,每個數字I/O板消耗的時間主要是DMA傳輸、字節序轉換、數據校驗和數據處理。在后續的應用中,字節序轉換的時間可以通過FPGA中數據反寫而省掉,而且也不再需要數據校驗。DMA傳輸時間和數據處理時間的總和遠遠小于2.25ms,因此,數據傳輸和處理的時間滿足高頻低電平系統的要求。

表1 時間測式結果 (ms)Table 1 Time measurement (ms)

3 人機界面

人機界面使用EDM開發。如圖5所示,上面四個X-Y Graph控件以曲線的形式分別顯示8組數據,下面的文本框分別用于讀取和設置8組數據標度變換的系數,右下角的 intNum文件框用于讀取和設置 FPGA產生中斷的次數。AutoStop和NeverStop顯示當前板卡的工作模式。系統有兩種工作模式:N 次停止模式(AutoStop)和連續工作模式(NeverStop)。AutoStop是用 intNum文本框來設置一定的中斷次數,當FPGA已經發出了intNum次中斷時,就停止工作;NeverStop是讓系統持續工作下去,只有切換成AutoStop模式才能停止。系統處于AutoStop模式時,按鈕顯示NeverStop,系統處于NeverStop模式時,按鈕顯示AutoStop,點擊按鈕進行模式切換。Reset按鈕用于重置8組數據標度變換的系數。Start按鈕用于使能數字 I/O板的FIFO、時鐘和中斷,使數字I/O板開始工作。

圖5 人機界面Fig.5 Operator interface.

4 結論

在EPICS和cPCI的軟硬件架構下,作者通過中斷服務和DMA傳輸,實現了將數字I/O板中的數據傳到上位機顯示,以及從上位機向數字I/O板發控制信息和波形數據的功能。通過傳輸固定數據的方式,對數據進行了校驗,同時也對時間進行了測試,測試結果表明遠控系統樣機的功能和性能滿足高頻低電平系統的要求。

樣機模擬了高頻低電平遠控系統的實際工作方式,這樣為后面的帶腔聯調做好了鋪墊。

1 中國散裂中子源(CSNS)初步設計[R]. 中國科學院高能物理研究所, 2011 Preliminary design of the China Spallation Neutron Source (CSNS)[R]. Institute of High Energy Physics,CAS. 2011

2 Martin R. Kraimer, Janet Anderson, Andrew Johnson,EPICS Application Developer’s Guide, Release 3.14.10,2009, http://www.aps.anl.gov/epics/base/R3-14/10-docs/AppDevGuide.pdf [OL]

3 季宇. VxWorks 操作系統下CompactPCI總線驅動程序設計[J]. 電子設計工程, 2009, 17(6): 99–101 JI Yu. Design of the CompactPCI bus driver program under VxWorks[J]. Electronic Design Engineering, 2009,17(6): 99–101

4 程敬原. VxWorks軟件開發項目實例完全解析[M]. 北京:中國電力出版社, 2005 CHENG Jingyuan. VxWorks software development project instance fully resolved [M]. Beijing: China Electric Power Press, 2005

5 PCISIG, PCI Local Bus Specification, Revision 2.2, 1998,http://www.ece.mtu.edu/faculty/btdavis/courses/mtu_ee31 73_f04/papers/PCI_22.pdf [OL]

猜你喜歡
設備系統
諧響應分析在設備減振中的應用
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
基于VB6.0+Access2010開發的設備管理信息系統
基于MPU6050簡單控制設備
電子制作(2018年11期)2018-08-04 03:26:08
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
500kV輸變電設備運行維護探討
工業設計(2016年12期)2016-04-16 02:52:00
主站蜘蛛池模板: 亚洲欧美日本国产综合在线| 最新午夜男女福利片视频| 精品国产自| AV不卡无码免费一区二区三区| 婷婷成人综合| 久久久久无码精品| 亚洲无码高清视频在线观看| 日韩色图在线观看| 久久天天躁夜夜躁狠狠| 亚洲视频a| 国产精女同一区二区三区久| 午夜精品一区二区蜜桃| 久久精品中文无码资源站| 老司机午夜精品视频你懂的| 亚洲视频免费在线看| 九色视频最新网址 | 97精品久久久大香线焦| 三上悠亚精品二区在线观看| 欧美成人精品在线| 国产毛片久久国产| 一级毛片免费观看不卡视频| 夜夜高潮夜夜爽国产伦精品| 91系列在线观看| 国产欧美精品一区aⅴ影院| 欧美一级在线播放| 欧美日韩精品在线播放| 在线观看热码亚洲av每日更新| 无码丝袜人妻| 国产精品刺激对白在线| 青草午夜精品视频在线观看| 二级特黄绝大片免费视频大片| 91免费国产高清观看| 中文天堂在线视频| 国产精品免费入口视频| 日本欧美午夜| 在线视频亚洲欧美| 亚洲最大福利视频网| 婷婷色狠狠干| 成年午夜精品久久精品| 亚洲黄网在线| 久久77777| 国产精品九九视频| 久久综合婷婷| 人妻91无码色偷偷色噜噜噜| 98超碰在线观看| 无码中文字幕精品推荐| 亚洲欧洲日韩久久狠狠爱| 综合色在线| 午夜爽爽视频| 久久夜色精品国产嚕嚕亚洲av| 免费欧美一级| 欧美精品亚洲二区| 玩两个丰满老熟女久久网| 亚洲欧洲自拍拍偷午夜色无码| 欧美成人免费| 国模沟沟一区二区三区| 国产精品久久久久久久伊一| 亚洲va视频| 国内精品一区二区在线观看| 日韩亚洲高清一区二区| 国产va在线观看免费| www.av男人.com| 免费激情网址| 国产精品极品美女自在线网站| 22sihu国产精品视频影视资讯| 国产精品吹潮在线观看中文| 国产一区二区三区在线精品专区| 成人亚洲天堂| 四虎在线观看视频高清无码| 欧美激情视频一区| 亚洲国产精品久久久久秋霞影院| 国产激爽大片高清在线观看| 青青草久久伊人| 高h视频在线| 综合亚洲色图| 波多野结衣亚洲一区| 99re在线观看视频| 欧美h在线观看| 亚洲一区第一页| AV不卡在线永久免费观看| 欧美国产三级| 狠狠色丁香婷婷|