システム概要
Back / Up / Next
BabarlDAQでは複数台のパーソナルコンピュータ(PC)とオペレーティングシステム(OS)にRTLinux、CAMAC Create ControllerにはKinetic 3922 + 2915 PCIInterface to 3922もしくは東陽テクニカCC/7700 + CC/PCIを採用している。
RTLinuxはLinuxのリアルタイムOS版であり、GNU General Public Licenseに基づいて配布されており、無償で利用することができる。
BabarlDAQは各イベントをACCではなくPCで処理する。イベント処理にRTLinuxを使用することで、BabarlDAQのパフォーマンスは以前のシステムと同程度に達することができた。
BabarlDAQにはLinux上で動作する使いやすいオンライン解析ソフトウェアのAnapawを含んでいる。
AnapawはCERN Program Libraryを使用したPAWベースのソフトウェアで、以前のシステムで使用されていたAnalysと互換性を持っている。
Anapawは同じユーザーインターフェイスでオンライン、オフライン解析を行なうことができる。
オンライン解析時、AnapawはBabarlDAQの構成要素の1つであるAnalyzerからデータを受け取り、オフライン解析時はファイルからデータを読み出すことができる。
このように、BabarlDAQはとても費用効率が良く、また利用者は以前のシステムから容易に移行が可能である。
BabarlDAQの主な構成要素はCollector, Driver, Transfer,Database, Controller, Recorder, Analyzerである。
CollectoとDriver, Transferを除いて、それぞれの構成要素は複数台のPC上に分散可能で、それぞれはお互いにイーサネットを通じて通信する。
Databaseはステータスデータ(ラン情報、ブロックデータ、スケーラデータなど)を管理し、他の構成要素にこれらを提供する。
Controllerは唯一ユーザーインターフェイスを持つ構成要素で、利用者はこのControllerを通じてBabarlDAQを制御する。
RecorderはTransferからローデータを受け取り、ハードディスクもしくは磁気テープに保存する。
AnalyzerはAnapawやステータスモニタなどのオンラインソフトウェアのフロントエンドで、Databaseからブロックデータを受け取る。
Collectorはデータ収集開始時にDriverを組み込み、Transferを実行させる。
DriverはCAMACからデータを収集し、共有メモリ領域のバッファに貯める。
Transferは共有メモリを監視しており、バッファがフルになった時にデータをRecorderとDatabaseに転送する。このようにDriverとTransferはお互いに共有メモリを通じて交信し、CollectorはDriverとTransferのフロントエンドであるため、これらの構成要素は同一のコンピュータ内に存在する必要がある。
DriverはRTLinuxの周期的タスクを使用してCAMAC LAM信号を50μs間隔でチェックする。
標準のLinuxの周期的タスクにおいて、タスクを始動させるのに600μs以上必要で、それは簡単に20ms以上の遅延が生じるが、RTLinux周期的タスクでの遅延は35μs以内である。
また、共有メモリに2つのバッファを用意しているため、Transferがバッファデータにアクセスしている間でもDriverはCAMACからデータを得ることができる。
RTLinux上で動作するKinetic 2915 PCI Interface to 3922のデバイスドライバも開発した。
RTLinuxを使用しているので、CAMAC制御のパフォーマンスは他のプロセスの影響を受けない。
single-actionにおいてno-data-transferモードの反応時間は8.5μsで、read-actionとwrite-actionモードでは11.0μsであった。
Kinetic 3922 + 2915のactionモードの1つであるBlock-read-actionモードでは、1度crate address, station number, subaddress, function, transfer-countを2915 CNAFレジスタにセットすれば、2915 FIFOレジスタを読み出す度に自動的に新しいデータがtransfer-countだけセットされる。
このモードはLeCroy FERAやFERA互換、メモリー、Phillipsのなどのシーケンシャルに読み出しができるモジュールに有効である。
16ワード読み出すのにsingle-actionモードでは175μs$必要だが、このモードでは58.4μsですむ。
BabarlDAQはすでにRIKEN projectile fragment separator (RIPS)における原子核物理学実験に導入されている。
1イベントサイズが80〜90ワードで、イベントレートが0.2kcps〜1.8kcpsの典型的なRIPSにおける実験で、以前のシステムと同定度のパフォーマンスを得られた。
特筆すべき点は、高いレートで長期間の実験にもかかわず保存されたデータに1つもエラーがなかったことである。
June 1, 2001
Hidetada Baba <baba@daq.rikkyo.ac.jp>