Proceedings of the 8th Annual Meeting of Particle Accelerator Society of Japan (August 1-3, 2011, Tsukuba, Japan)

APPLICATION OF EMBEDDED EPICS TO LLRF CONTROL SYSTEM FOR
SUPERKEKB
Jun-ichi OdagiriA), Kazunori AkaiA), Hisakuni DeguchiB), Kiyokazu EbirharaA), Kazuro FurukawaA),
Kazutaka HayashiB), Atsushi KabeA), Tetsuya KobayashiA), Kota NakanishA), Michiru NishiwakiA), Tomohiro
OkazakiC), Kumiko OoyabuB)
A)
High Energy Accelerator Research Organization (KEK)
1-1 Oho, Tsukuba, Ibaraki, 305-0801
B)
Mitsubishi Electric Tokki Systems Corporation
4-11 Techno Park, Sanda, Hyogo, 669-1339
C)
East Japan Institute of Technology Co., Ltd.
1-4-22 Minatomachi, Tsuchiura, Ibaraki, 300-0034

Abstract
Toward SuperKEKB project, a new digital low-level RF system was implemented and is now under evaluation. Thecontrol system of the new low-level RF system features embedded computers running Experimental Physics andIndustrial Control System for local control on-site as well as remote control from the central control room. The frontend
part of the control system comprises a Programmable Logic Controller and Advanced Mezzanine Cards in a microTCA chassis, which serve as Input / Output Controller of EPICS in place of an existing VME-computer and a CAMAC
interface crate. The user interface for local control also relies on embedded computers serving as Operator Interface ofEPICS-based control system. The adoption of embedded EPICS allowed us to make full use of existing softwaremodules supported by EPICS community. This paper describes the design, implementation and present status ofevaluation of the embedded EPICS-based control of the new low-level RF system.

SuperKEKB のための LLRF 制御システムへの組込み EPICS 技術の応用
1.

はじめに

現在、高エネルギー加速器研究機構では 2014 年
秋の SuperKEKB の運転開始に向け、加速器サブシステムのアップグレードのための多方面の努力が続けられており、その一環として新しい Low Level RFシステム（新 LLRF システム）の開発が進められている[1]。新 LLRF システムでは、より高い精度と安定度を実現するために、従来、アナログ回路で実現されていた RF フィードバック制御などの高速な制御が、高精度 ADC / DAC と FPGA を用いることによりデジタル化された[2]。また、RF の立ち上げシーケンスなどの周辺機能についても NIM モジュールを Programmable Logic Controller (PLC) で代替することによりデジタル化することとなった。これらの変更に伴い、新 LLRF システムのためのリモート制御、ローカル制御の双方について全般的な見直しが必要となった。
SuperKEKB の制御システムは、制御ソフトウェアとして Experimental Physics and Industrial Control
System (EPICS) [3] を採用するという意味においてKEKB 制御システムを踏襲するものである。一方、EPICS を実行するプラットフォームについては、ハードウェア、ソフトウェアの両面で最新の技術を採りいれるべく、多岐に亘る技術について検討と評価が行われている[4]。その一例として PLC などのインテリジェントなコントローラを Input / Output

Controller (IOC) [3]として利用する組込み EPICS がある。組込み EPICS は IOC コア・プログラムを制御システムのフロントエンドで実行することにより、IOC コア・プログラムが持つ豊富な機能を最大限に活用することを意図した技術である。PLC を利用した組込み EPICS は、これまでに KEKB 制御システ
ム、J-PARC 制御システムなどにおいて、様々な用途に応用されている[5]。
新 LLRF システムの制御系は完全な新規開発となるため、Operator Interface (OPI) [3]上で実行される上位ソフトウェアが参照する EPICS レコードについて既存システムとの互換性を求められることを除けば、採用する技術の選択に関して自由度が高い。また、中央制御室からのリモート制御だけではなく、従来、NIM モジュールにより行ってきた現場でのローカル制御についても新規開発が必要となった。
これらの条件を考慮し、新 LLRF システムのラック内に IOC と OPI の両者を組込むことによってリモート制御とローカル制御の双方に対応した制御システムを実現することとし、そのためのソフトウェア開発を行った[6]。
新 LLRF システムのプロトタイプ（図 1 参照）は2010 年度に実装され、現在、KEKB の D8 電源棟において評価作業が進められている。本稿では、組込
み EPICS に基づく新 LLRF システムの制御に用いられるハードウェアの構成、ソフトウェアの設計及びそれらの評価試験の現状について報告する。

- 230 -

Proceedings of the 8th Annual Meeting of Particle Accelerator Society of Japan (August 1-3, 2011, Tsukuba, Japan)

一方、インターロックについては、そのロジックが単純な AND と OR の組合せで表現されるため、ラダー図による表現が適していること、また、IOCをリブートした場合にもインターロックの処理が独立して継続できることが望ましいこと、の二点を考慮して従来型の CPU 上で実行されるラダー・プログラムにより実装した。
これら二つの CPU は同一のメイン・ユニット上の隣り合う最初の二つのスロットに配置され、各々に専用に割り当てられた I/O モジュールを介して制御 を 行 う 。 IOC コ ア ・ プ ロ グ ラ ム を 実 行 す る
F3RP61 は、ラダー・プログラムを実行する CPU と共有メモリを介してインターロック状態の読出しとラッチの解除を行い、OPI とラダー・プログラムを仲介する役割を担う。

図１：D8 電源棟に設置された新 LLRF システム。

2.

制御システム各部の構成

2.1 PLC 上の組込み EPICS による制御
従来の LLRF システムの制御では、RF の立ち上げシーケンス、真空度、機器温度によるインターロックは NIM モジュール内のロジック回路により実装されている。NIM モジュールへのパラメータの設定、実行指示、及び状態の読み返しは、IOC として機能する VME 計算機が CAMAC を介して行う。
こ れ ら の 機 能 の 多 く は PLC を 利 用 し た 組 込 み
図２：PLC を利用した組込み EPICS。最上段左側
EPICS を採用することにより、柔軟性と拡張性のあに位置するイーサネット・ケーブルが接続されたるソフトウェアで代替することができる。このための PLC として横河電機社製 FA-M3 PLC を採用した。 CPU モジュールが F3RP61。その左隣はラダー・プログラムを実行する従来型の CPU。
同 PLC には、Linux を OS として採用した CPU モジュール（F3RP61）があり、この CPU 上で IOC コア・プログラムを実行することにより、FA-M3 PLC 2.2 FPGA と EPICS とのインタフェース自体を IOC として利用することができる。
デジタル LLRF システムの開発は cERL、STF で新 LLRF システムのラック内に組込まれた PLC も進められている。これらのプロジェクトとの間では、CPU を実装したメイン・ユニットと I/O モ 技術を共有することを意図し、RF フィードバックジュールのみを実装したサブ・ユニットから構成さ などの高速な処理を実装するための FPGA としてれる（図 2 参照）。メイン・ユニットは IOC コ Xilinx 社の Virtex5 が選択された[8]。FPGA による処ア・プログラムを実行する F3RP61 と、ラダー・プ 理回路は、RF フィードバック、チューナー制御、ログラムを実行する従来型の CPU の二つを装着し、 及び RF のモニタと高速インターロックといった各以下のように目的に応じて使い分ける。
機能に分割され、各々の Advanced Mezzanine Card
RF の立ち上げシーケンスは処理内容が複雑であ (AMC) の 上 に 実 装 さ れ る 。 こ れ ら の カ ー ド はるため、PLC (F3RP61) 上の可読性の高いプログラ Micro-TCA 筺体内でバックプレーンにより相互に接ムにより代替することが望ましい。EPICS の拡張機 続され、また、Micro-TCA Carrier Hub (MCH) を介能である Sequencer は State Notation Language (SNL) して外部と繋がる（図 3 参照）。と呼ばれる独自の言語で記述される[7]。SNL は、そこれらの FPGA と EPICS をインタフェースするの名が示す通り、状態の定義と状態間の遷移に基づ 方法については様々な方法が考えられるが、Virtex5
く処理を分かり易く記述する構文を備えている。特 が搭載する CPU 上で Linux が実行可能であること、に状態間の遷移の契機となるイベント待ちが容易で Micor-TCA のバックプレーンとして Gigabit Ethernetある点が優れている。以上の理由から、RF の立ち が選択可能であること、の二点を考慮し、以下のソ上げシーケンスは F3RP61 の上で EPICS Sequencer フトウェアの構成を採ることとした。
を用いて実装することとした。

- 231 -

Proceedings of the 8th Annual Meeting of Particle Accelerator Society of Japan (August 1-3, 2011, Tsukuba, Japan)

性、将来への継続性の面で一長一短あるが、新LLRF システムの制御ではチューナー制御のためのアップ・ダウン・ボタンなどを簡易に実現する機能が求められたため、特に機能性を重視する必要があった。この観点から、新 LLRF システムの制御系の開発に着手した当時、最も機能性に優れると判断した Extensible Display Manager (EDM) [9]を選択した。

図３：Micor-TCA を利用した組込み EPICS。右側の白い RF ケーブルが多数接続された 3 枚の AMCの各々が IOC コア・プログラムを実行する。
 各々の AMC 上で完全な形で IOC コア・プログラムを実行する。
 バックプレーン (Gigabit Ethernet) 上での通信に EPICS の標準通信プロトコルである ChannelAccess[3]を利用する。
上記の構成を採ることにより AMC とラック内のPLC と OPI、及び中央制御室の OPI との通信のために非同期式の複雑なドライバを実装することを避けることができた。また、IOC コア・プログラムと、それを前提とする EPICS Sequencer などの各種拡張機能を必要に応じて自在に利用することが可能になった。これらの実績あるソフトウェアを活用することにより、無用な開発を抑えてアプリケーションの開発に注力することができた。
IOC コア・プログラムを実行するための OS としては WindRiver Linux 2.0 を選択した。まず、Xilinx社が提供する ML507 評価ボードの上で組込み Linuxシステムを構築し、EPICS の動作確認まで行い、その後、実機への移植を行った。
FPGA と IOC コア・プログラムとのインタフェー
スには Linux の mmap メソッドを使用し、FPGA のレジスタ領域を IOC プロセスのメモリ空間にマップする方法を採った。これにより、EPICS のデバイス・サポートは C 言語のポインタを通じて FPGAのレジスタ領域にアクセスすることが可能になる。
この方法には EPICS のデバイス・サポートの実装が単純になり、また、点数の多い波形データを効率よく読み書きできる、という利点がある。
2.3

オペレータ・インタフェース

GUI は不安定性を持ち込みやすいため、OPI は機器制御を担う IOC と分離し、GUI の不安定性により機器制御に支障を生ずる事態を招くことのないようにした。ローカル制御のための EPICS の OPI として Linux を OS として搭載した組込み PC を採用した（図 4 参照）。
EPICS コミュニティによりサポートされている
GUI 作成ツールは各種ある。それぞれ安定性、機能

図４：EDM を実行する OPI。

3.

ソフトウェア設計上の留意点

3.1

ソフトウェア化に伴う問題点

新 LLRF システムではローカル制御についても組込み EPICS を採用し、また、ハードウェアのソフトウェア化を推し進めた。これに伴い、信頼性の確保と運用上の利便性のために対処すべき幾つかの課題が生じた。以下では、その具体的な項目と解決策について述べる。
3.2

例外処理

例外処理の重要性は制御ソフトウェア全般に共通する一般的な事項であるが、組込み EPICS を採用したシステムでは、ハードウェアに近い処理にChannel Access, Sequencer といった比較的、上位寄りのソフトウェアを使用するため、例外処理の設計の重要性が増す。常にユーザに意識される上位のソフトウェアの場合、不具合が容易に人の目に触れるのに対し、ハードウェアに密着した下位に位置するソフトウェアの場合、不具合の発生をオペレータやシステム設計者が容易に認識できない場合が多いためである。
新 LLRF システムの制御では、複数の IOC が使用され、それらに跨ったランタイム・データベースの上で EPICS Sequencer プログラムが実行される。特に、RF 立ち上げシーケンスでは、出力電力レベルをランプ・アップする際に PLC ベースの IOC からAMC ベースの IOC に対して Channel Access 経由で繰り返し目標値の設定を行う。このようなループ処
理では、各ステップで必ず通信の結果を確認し、通- 232 -Proceedings of the 8th Annual Meeting of Particle Accelerator Society of Japan (August 1-3, 2011, Tsukuba, Japan)

信が失敗した場合は適切な例外処理に移るよう、Sequencer プログラムを実装した[6]。Channel Accessによる通信が失敗した場合の処理を Channel Accessに頼ることは意味をなさないため、PLC バックプレーンを介してインターロックを掛けるなど、必要に応じて例外発生時の処理をハードウェアにより担保するよう設計した。
3.3

アクセス制御4.

評価試験の進捗状況

従来、ハードウェアで実現されていた機能の多くをソフトウェアで代替した新 LLRF システムの制御における最大の評価項目は安定性と信頼性である。
IOC に関しては、PLC ベースの IOC、AMC ベースの IOC の何れについても評価試験中の Linux のカー
ネル・パニック、IOC プロセスのコア・ダンプなどの深刻な問題は一度も経験していない。組込み PCを用いた OPI については、同時に多数の EDM プロ
セスを立ち上げた場合でも予想以上に安定して動作している。これまでのところ、X-Window System がマウス、キー・ボードからの入力を受け付けなくなるという症状を一度経験したのみである。最終的な結論は今後の運用実績を待たねばならないが、本稿執筆時においては新 LLRF システムに求められる安定性と信頼性を確保できたと判断している。

組込み EPICS を全面的に採用した新 LLRF システ
ムの制御では、以下の二つの理由により、アクセス制限が重要となる第一に、既存システムではハードウェア（回路）の内部信号線に相当する I/O チャネルが EPICS レコードで代替されたことにより、本来はオペレータが直に操作すべきではない EPICS レコードに誤って書込みを行う可能性が生じた。このような EPICSレコードをオペレータの書込みから保護するための5. 結論アクセス制御が必要となる。
アクセス制限が重要になる第二の理由は、リモー
新 LLRF システムのための制御システムを開発しト制御とローカル制御の排他制御のためである。新 た。同制御システムは、新 LLRF システムのラック
LLRF システムでは、リモート制御とローカル制御 内に組み込まれた IOC（PLC および Micor-TCA 筺の違いは、文字通り、操作者の位置が現場から遠い 体内の AMC）、GUI の実行に特化した OPI（組込か、現場に近いか、のみであり、その手段（EPICS み PC）から構成される。中央制御室からのリモーによる制御）においては何ら違いがない。このため、 ト制御のみならず、ローカル制御にも EPICS の現場と中央制御室の間で起こり得る意図しない綱引 アーキテクチャを採用した。これにより、既存の実きを防ぐ仕組みを EPICS で実現することが必要と 績あるソフトウェア資源を十分に活用することが可なる。
能となった。アプリケーション開発に注力することこれらのアクセス制御を実現するために、EPICS によって開発工程を最小化し、また、ソフトウェアのランタイム・データベースには Access Security の信頼性を高めることができた。開発された組込みGroup (ASG) [3] という機能が用意されている。ASG EPICS ベースの制御ソフトウェアは新 LLRF システ
により、EPICS の各レコードについて、ユーザ名と ムの高周波特性の評価試験に供されており、実用にホスト名の組合せによるアクセス制御が可能になる 耐えうる信頼性を持つことが確認された。
が、新 LLRF システムの制御では、ホスト名のみを参考文献参照して上記のアクセス制御を実現している。

[1] K.Akai, et al., “RF System for SuperKEKB”, Proceedingsof the 7th Annual Meeting of Particle Accelerator Society
ハードウェアで実現されていた機能をソフトウェ
of Japan, Himeji, Aug. 4-6, 2010.
アで代替した結果として、IOC を再起動する際の運 [2] T.Kobayashi, et al., “Prototype Performance of Digital
LLRF Control System for SuperKEKB”, in this meeting.
転パラメータの復旧方法も課題の一つとなった。従[3] http://www.aps.anl.gov/epics/
来はノブなどの位置で保持されていた情報の多くがEpicsDocumentation/AppDevManuals/AppDevGuide/
EPICS レコードに置き換えられたため、IOC のリ
AppDevGuide3.13.0b12.pdf.
ブートによりオペレータが設定した各種のパラメー [4] K.Furukawa, et al., “Development of Control System
towards SuperKEKB”, in this meeting.
タが消失し、再起動時に新たに設定をやり直す必要が生じる。この問題に対処するための EPICS の拡 [5] J.Odagiri, et al., “Application of EPICS on F3RP61 toAccelerator Control”, Proceedings of the 6th Annual
張機能として autosave[10]と呼ばれるライブラリがあMeeting of Particle Accelerator Society of Japan, Tokai,る。
Aug. 5-7, 2009.
新 LLRF システムの制御に使用する IOC では、こ [6] H.Deguchi, et al., “EPICS Embedding for SuperKEKB
LLRF System”, in this meeting.のライブラリを利用して設定パラメータの定期的な保存とリブート時の値の復旧を行っている。設定パ [7] http://www-csr.bessy.de/control/SoftDist/sequencer/Reference.html.
ラメータの保存先については、現状では外部サーバ [8] M.Ryoshi, et al., “LLRF Board in Micro-TCA Platform”,の フ ァ イ ル シ ス テ ム を 利 用 し て い る が 、 PLC のProceedings of the 7th Annual Meeting of Particle
CPU (F3RP61) が備える不揮発性メモリ上のファイ
Accelerator Society of Japan, Himeji, Aug. 4-6, 2010.
ルシステムを利用することも可能である。加速器の [9] http://icsweb.sns.ornl.gov/edm/edmUserManual/index.html.
運転時の運用方法については、今後の経験に基づき、[10] http://www.aps.anl.gov/bcda/synApps/autosave/
確実性と利便性のバランスを見て判断する必要があ
autosave.html.

3.4

IOC 再起動時の状態回復

る。

- 233 -