?

基于ACEX1K50的HIRFL-CSR同步處理器設計

2011-09-18 05:54李桂花喬衛民
原子能科學技術 2011年7期
關鍵詞:加速器延時時鐘

李桂花,喬衛民,敬 嵐

(中國科學院 近代物理研究所,甘肅 蘭州 730000)

蘭州重離子加速器冷卻儲存環(HIRFLCSR,簡稱CSR)是由主環和實驗環組成的雙儲存環系統,由磁鐵、電子冷卻裝置、高頻加速腔、高頻累積腔、超高真空系統等諸多復雜部件組成[1]。欲成功實現1個加速器運行周期須合理安排各步驟的運行時間,使加速器的各相關設備在相應的時間做出適當的舉動,這需要同步系統的統一指揮。在CSR同步處理系統中,每個步驟均對應1個不同的事例,眾多事例在運行前按照物理實驗的要求,編排成1個事例表,包括1個完整運行周期的事例表及相關參數的數據,稱作1個虛擬加速器,當它被同步系統激活時,成為1個真正的加速器周期[2]。

CSR同步控制系統由同步處理器、數據庫系統和前端處理器組成。同步處理器是整個控制系統的指揮中心,由它用事例形式下達所有指令,指揮所有執行機構。

CSR同步控制系統的時間精度要求在ns級,對穩定性也有非常高的要求,軟件方法很難實現,本系統采用目前控制領域技術領先的現場可編程邏輯器件,以做到定時和運行邏輯完全由硬件實現,保證定時系統的精度要求和運行穩定性。

1 系統設計方案

CSR同步處理器采用PCI接口,板上加載大容量SDRAM存儲事例表數據,FPGA實現SDRAM控制邏輯和事例發送功能。這種方式的優點為:可存儲多個事例表,從而實現虛擬加速器周期切換;事例編碼發送時間精確,可滿足HIRFL-CSR的運行要求,便于時鐘嚴格同步。缺點主要是實現過程復雜。

1.1 CSR周期及運行技術指標

CSR的每一運行周期基本由以下步驟組成:前期設備狀態確認、注入準備、注入、加速、引出準備、引出、恢復初始狀態、診斷測量等。

CSR運行周期17s;外部觸發間隔誤差小于500ns;輸出波形數據速率1MHz;DAC分辨率16bit。

1.2 CSR事例結構

CSR事例即為加速器運行過程中的命令,它是1組32bit的編碼,分別由幀頭、模式位、事例號、功能碼和操作碼組成。

1.3 CSR同步處理器功能模塊結構

CSR同步處理器的功能模塊分為:用于從上層服務器獲取事例表的PCI接口控制模塊、用于存儲多個事例表數據的SDRAM存儲器控制模塊、用于存儲本次發送周期事例表的BUFFER和用于產生和發送當前事例的事例發送模塊。圖1示出同步處理器功能模塊結構。

2 基于ACEX1K50的同步處理器實現

CSR同步處理器在ACEX1K50芯片上采用VHDL語言編寫程序,開發平臺為Altera公司的QuartusⅡ8.1。處理器使用模塊化設計,主要功能模塊分別為PCI控制模塊、SDRAM控制模塊、事例發送模塊。本文重點介紹SDRAM控制模塊和事例發送模塊的實現方法。

圖1 同步服務器FPGA程序結構框圖Fig.1 FPGA structure of synchronization controller

2.1 ACEX1K50芯片簡介

ACEX1K50是Altera公司生產的現場可編程邏輯器件,由邏輯陣列塊LAB、嵌入式陣列塊EAB、快速互聯以及I/O單元構成,每個邏輯陣列塊包含8個邏輯單元LE和1個局部互聯。該芯片總共包含2 880個邏輯單元、40 960bit RAM、1 個 PLL、249 個 用 戶 可 用I/O管腳。

本設計使用1 621個邏輯單元、32 768bit RAM和1個PLL。

2.2 SDRAM 控制

目前市場上雖有一些通用SDRAM控制器,但設置復雜,且無法針對特定的系統,因此性能不能發揮到最好。使用可編程邏輯器件平臺和硬件描述語言,針對系統定制所需的SDRAM控制器,不僅可節省系統資源,且可最大限度地發揮SDRAM的作用,從而提升系統的性能。定制的SDRAM控制器使SDRAM讀寫與PCI接口模塊無縫連接,高效率地實現了同步處理器與PC機內存之間的高可靠性數據交換,滿足事例同步系統對SDRAM訪問的需要,并舍去了對系統無用的功能。不僅減小了開發難度,還節省了系統資源和成本,提升了系統性能。

本模塊針對系統設計的需要定制了以下4種必需的SDRAM功能:模式設置、自動刷新、Burst讀和寫操作。狀態機的運行示于圖2。

狀態機的入口條件為刷新時間到、模式設置、讀、寫。對SDRAM有兩種讀寫模式,分別是PCI外部讀寫和FPGA內部模塊讀寫,他們各自產生讀寫地址,即只要讀寫方給出初始地址,SDRAM控制模塊即能自動生成存儲器的其它地址。

2.3 事例發送

事例的組織由物理人員根據實驗要求組織產生,同時產生的還有通過實際測量得出的事例延時,即事例間隔時間。一旦1個周期或多個周期的事例數據編排好后,即可通過PCI接口將其裝載到同步處理器板上的SDRAM中,等待啟動發送。發送過程的控制時鐘為25MHz,圖3所示為事例發送程序流程圖。

圖3 事例發送程序流程圖Fig.3 Work flow chart of events sending

1)發送準備

在啟動事例發送前,必須做的一項準備工作是本次周期事例表獲取,即將本次周期的事例表從SDRAM中讀出,放入FPGA內部64bit×256BUFFER中,時間不超過70μs。事例表寬度64bit,第1個數據存儲本周期事例表長度。從第2個數據開始,每條為1個事例編碼,低32bit存儲事例代碼,高32bit存儲事例延時。當獲取完成,則事例表長度自動加載到長度計數器中,等待發送啟動。圖4所示為發送準備程序的數據流向。

圖4 發送準備程序數據流向Fig.4 Data flow of events sending preparation program

2)發送過程

事例發送機構由1個移位寄存器、1個延時計數器和1個控制狀態機構成。移位寄存器負責將事例編碼按發送時鐘逐位發出,延時計數器負責計算兩個事例之間的時間間隔,計時時鐘1MHz。同步系統的延時調整,主要根據物理實驗計算提供的延時值,并參考被控設備及相關板卡的固有延時來決定,它在事例表中明確定義。

由于啟動發送時刻與發送時鐘獨立,因此,若直接發送,每個事例發出時間相對于發送命令的位置偏差最大可達1個發送時鐘周期,CSR事例發送時鐘為390kHz,將表示兩個事例有可能被發出的時刻間隔誤差為2.56μs,而CSR運行要求事例觸發間隔誤差小于500ns。為嚴格控制事例編碼第1bit的輸出相對于發送命令的位置固定,用控制狀態機校正發送時鐘上升沿到來時刻,從而保證每個事例發出時間與發送時鐘上升沿的相對位置誤差小于40ns。圖5所示為時鐘調整示意圖。

3 測試結果和使用情況

圖6所示為測試中當發送事例編碼為C05A0001時的輸出波形。

C05A0001事例編碼含義為:幀頭(31~30bit)為固定識別碼“11”,模式位(29~24bit)為 “000000”,事 例 號 (23 ~ 16bit)為“01011010”,功能碼(15~8bit)為“00000000”,操作碼(7~0bit)為“00000001”。

圖5 事例發送時鐘調整示意圖Fig.5 Adjusting of events sending clock

圖6 C05A0001事例編碼輸出波形Fig.6 Wave of events code C05A0001

由于事例編碼由光口輸出,因此圖中電平反向??煽闯?,從第1個下降沿開始,分別輸出了“11000000010110100000000000000001”,即C05A0001。每1個bit寬度為2.56μs。

1個完整的事例編碼需81.92μs(2.56μs×32),為顯示清晰,此圖時間分辨率設為10μs,可看出,事例編碼發送正確、發送時鐘無誤、無延遲、無變形。若單獨比較兩個事例的首位下降沿,能看到事例觸發間隔誤差小于40ns,符合CSR運行對事例觸發間隔誤差小于500ns的要求。

本處理器2007年實際應用到CSR同步控制系統中,開始試運行,運行過程中定時精確、運行穩定,能完成對CSR的同步控制,并于2008年7月30日通過國家驗收且正式投入運行。

4 結束語

本文實現的CSR同步處理器采用了FPGA主流技術,在加速器控制領域技術較為領先。此插件已使用在HIRFL-CSR的控制系統中。實際運行情況證明,該處理器結構完整、技術先進、運行穩定、定時準確、成本低廉,在一次獨立加速器運行周期內,能控制各分系統的同步運行,實現給束團增能、加速,引出等,且能實現快速、穩定的虛擬加速器周期切換,實際應用效果好,值得進一步研究和推廣。

[1]魏寶文,詹文龍.跨世紀的核科學研究重大工程——從重離子加速器到冷卻儲存環的研制[J].中國科學院院刊,1999(4):310-313.

[2]DONG Jinmei,YUAN Youjin,QIAO Weimin,et al.Timing system of HIRFL-CSR[J].Chinese Physics C,2009,33(5):393-396.

猜你喜歡
加速器延時時鐘
莫比斯加速器眾創辦公空間
知識快餐店 科學加速器
全民小康路上的“加速器”
課后延時中如何優化不同年級學生活動效果
古代的時鐘
這個時鐘一根針
基于數據選擇的引信測試回波信號高精度延時
有趣的時鐘
一種“死時間”少和自動校準容易的Wave Union TDC
時鐘會開“花”
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合