Document

PC-LinuxとROOTを用いた
CAMACデータ収集システム開発
Version b 14
筑波大学 第一学群
自然学類
物理学専攻
970330
黒木 善昭
指導教官 三明 康郎
江角 晋一
[目次]
1. 開発目的
2. 開発結果
3. 性能評価・運用
4. まとめ
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
データ収集システム
高エネルギー原子核実験において
イベントは
非同期的に大量に発生
実験の流れは
測定 結果 考察 測定
高速に取り扱うため
効率の良い測定のため
エレクトロニクス
コンピュータ
迅速かつ適切な
フィードバック
KEK 12GeV PS
データ収集性能
作業能率
T479
毎秒測定可能なbyte数
30 event/sec
イベント毎に
目的の量を得るまでの作業量
20 words
既存のシステムでも
1200 byte/sec
十分な性能がある
改良の余地あり
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
本研究の目的
データ収集システムの開発
DAQ
Data Acquisition system
データ収集性能
作業能率
100HzのEvent Rateにおいて
18wordsのデータを
測定可能程度
オンライン測定
オフライン解析 が
数コマンドで可能程度
(1words = 16bits)
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
作業能率の向上のために
エレクトロ
ニクス
CAMAC
Linux
PC・OS
世界標準規格
CAMAC
Computer独立性
デバイス
ドライバ
互換性・保守性
拡張性・柔軟性
バッファ
マルチタスク
メモリ管理
オンライン測定
共有メモリ
豊富な資源・環境
UNIX互換OS
保存
オンライン
ROOT
解析ソフト
C++
Ntuple
(ROOT)
ネットワーク
OS親和性
Network
オブジェクト指向
hix#
hix#
hix#root l.C
1コマンドで可能
より高度な汎用性、拡張性
解析・表示
ROOTマクロ
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
開発結果
クリック
初期設定
TDC・ADC分布
例
マクロの実行
クリック
(18words)
時間分解能
ROOTでの解析
測定開始
$ ステータスが表示
root
macro.C
スタンドアローンでオンライン測定・解析可能
より複雑な解析可能
(カウント数等) もちろんオフラインも可能
Run No
測定Event数
数コマンドで実行可能
Fittingも
クリック
オンライン表示
もちろん可能
このウィンドに
Run No
測定Event数
解析マクロ実行
作業能率の向上
入力
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
性能評価
Interrupt
Register
Crate Controller
メモリ
デバイス
ドライバ バッファ 管理
Pulser
オシロ
Output Register
N
100μs ~ 100ms
2 words
Pulser
100
20μs ~ 20ms
18
100
1000
ドライバの
15ns
割り込み処理性能
400ns
Discriminator
80
20ns
Output Resistor
[byte/sec]
60
40
5000
4000
データ書き込み効率
3000=
Nread /Nwrite
書き込み処理性能
2000
97%の時の
[byte/sec]
Rate
24.0Event
+ 5.6×Words
[μ sec]
1000
00
200
×
ドライバが行うCAMAC操作
ドライバの
この所要時間を
データ収集性能
4
20
2×Words
10
100
1000
10
10 5
割り込み処理時間
Event Rate[Hz]
Ntuple
Nwrite
6000read
割り込み処理時[μsec]
データ書き込み効率[%]
Discriminator
共有 保存
メモリ
400
Rate
600
×
800
1000
Word数
データ書き込み
効率
2×Words
割り込み処理性能
書き込み処理性能
割り込み処理時間
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
データ収集性能
データ収集性能[kbyte/sec]
400
割り込み処理
350
書き込み処理
300
割り込み処理
346.0±3.0kB/s
書き込み処理
96.1±0.7kB/s
250
200
150
データ収集性能
96.1±0.7kB/s
100
50
0
200
400
600
800
1000
Word数
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
運用
KEK 12Gev PS T1
実験 T479
30 event/sec
18 words
2週間
1.2 k byte/sec
データ書き込み効率
Disk Write :100%
Online:98.2±0.7%
(総測定数 2,424,000)
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
まとめ
Linux上で動作しROOTを使用した
高い作業能率を持ったDAQの開発を行え
さらにその測定性能評価を行い
96.1±0.7kB/sのデータ収集性能を
持つことが分かった
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
データ収集システム0
高エネルギー原子核実験において
イベントは
非同期的に大量に発生
実験の流れは
測定 結果 考察 測定
高速に取り扱うため
効率の良い測定のため
エレクトロニクス
コンピュータ
迅速かつ適切な
フィードバック
KEK 12GeV PS
T479
30 event/sec
20 words
1200 byte/sec
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
データ収集システム1
高エネルギー原子核実験において
イベントは
非同期的に大量に発生
実験の流れは
測定 結果 考察 測定
高速に取り扱うため
効率の良い測定のため
エレクトロニクス
コンピュータ
迅速かつ適切な
フィードバック
データ収集性能
作業能率
毎秒測定可能なbyte数
イベント毎に
目的の量を得るまでの作業量
既存のシステムでも
十分な性能がある
改良の余地あり
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
作業能率の向上のために0
エレクトロ
ニクス
CAMAC
Linux
PC・OS
世界標準規格
Computer独立性
互換性・保守性
拡張性・柔軟性
マルチタスク
オンライン測定
UNIX互換OS
豊富な資源・環境
C++
OS親和性
オブジェクト指向
ROOT
解析ソフト
より高度な汎用性、拡張性
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
作業能率の向上のために1
エレクトロ
ニクス
CAMAC
CAMAC
Linux
デバイス
ドライバ
バッファ
PC・OS
メモリ管理
共有メモリ
保存
オンライン
ネットワーク
ROOT
解析ソフト
Ntuple
Network
hix#
hix#
hix#root l.C
1コマンドで可能
ROOTマクロ
解析・表示
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
開発結果0
初期設定
測定開始
Run No
測定Event数
オンライン表示
解析マクロ実行
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
開発結果1
クリック
初期設定
ステータスが表示
(カウント数等)
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
開発結果2
クリック
測定開始
Run No
測定Event数
このウィンドに
Run No
測定Event数
入力
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
開発結果3
TDC・ADC分布
(18words)
より複雑な解析可能
クリック
オンライン表示
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
開発結果4
マクロの実行
$ root macro.C
例
時間分解能
Fittingも
もちろん可能
解析マクロ実行
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
開発結果5
ROOTでの解析
スタンドアローンでオンライン測定・解析可能
もちろんオフラインも可能
数コマンドで実行可能
作業能率の向上
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
性能評価0
Interrupt
Register
Pulser
Discriminator
オシロ
Crate Controller
メモリ
デバイス
ドライバ バッファ 管理
共有 保存
メモリ
Output Register
ドライバの
割り込み処理性能
Ntuple
書き込み処理性能
[byte/sec]
[byte/sec]
データ収集性能
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
性能評価1
Interrupt
Register
Crate Controller
メモリ
デバイス
ドライバ バッファ 管理
Pulser
Discriminator
オシロ
Output Register
100μs ~ 100ms
Discriminator
20ns
Output Resistor
20μs ~ 20ms
15ns
400ns
ドライバが行うCAMAC操作
この所要時間を
割り込み処理時間
Ntuple
6000
割り込み処理時[μsec]
Pulser
共有 保存
メモリ
5000
4000
3000
2000
1000
00
24.0 + 5.6×Words [μ sec]
200
400
600
800
1000
Word数
ドライバの
割り込み処理性能
2×Words
割り込み処理時間
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
性能評価2
Interrupt
Register
Crate Controller
メモリ
デバイス
ドライバ バッファ 管理
Pulser
データ書き込み効率[%]
Discriminator
オシロ
Output Register
2 words
18
100
100
1000
80
Nread
Ntuple
Nwrite
データ書き込み効率
= Nread /Nwrite
97%の時の
Event Rate
60
40
20
共有 保存
メモリ
2×Words
10
100
1000
10
4
10 5
Event Rate[Hz]
×
Rate
×
データ書き込み
効率
書き込み処理性能
Y.Kuroki @ Univ. of Tsukuba
2015/10/1
Timing
100μs ~ 100ms
Pulser
20μs ~ 20ms
Discriminator
20ns
Output Resistor
15ns
400ns
Y.Kuroki @ Univ. of Tsukuba
2015/10/1