GEM検出器用DAQ-Middleware 2010年8月4日 素核研エレクトロニクスシステムグループ 安 芳次
大下さんのトラぺ
Architecture of DAQ-Middleware DAQ-Operator System Interface Control Panel Logger ・ Gatherer Dispatcher Monitor Readout modules Online histogram
GEM用Gathererコンポーネント データフォーマット(1フレーム、10バイト) データの流れ unsigned int timeU; unsigned int timeL; unsigned char Xdata; unsigned char Ydata; データの流れ コネクションが確立すると、GEM側からデータが垂れ流しにやってくる
SiTCPとは(復習) SiTCP FPGA 高速データ転送 ユーザ回路 使い方が簡単 TCPサーバに見える 内田さんから FIFOメモリ 理論限界値付近で 安定して転送可能 ユーザ回路 FPGA ソケット プログラミングで通信 メモリ読み書き回路でTCP通信 使い方が簡単
プログラミングの実際(Gatherer) 一回しか呼ばれない 繰り返し呼ばれる configureコマンド時 daq_configure() { システム構成パラメータの設定 ::NVList* paramList; paramList = m_daq_service0.getCompParams(); parse_params(paramList); } startコマンド時 daq_start() { set_condition(); 実験条件パラメータの設定 connect_modules(); SiTCPモジュールへの接続 データは流れ始める stopコマンド時 daq_stop() { disconnect_modules(); SiTCPモジュールの切り離し データの流れは止まる RUNNING state時 daq_run() { stopコマンドが来ているか、 終了条件が成立しているか? チェックする 以前のOutPortへの転送が成功していなかったら 転送を試みる 複数のSiTCPモジュールからのデータを待つ 到着したデータを読み出す 読み出したデータをフォーマットする フォーマットされたデータをOutPortに転送する 転送に成功したら取得イベント数をインクリメントする }
Monitorコンポーネント with ROOT ROOTとはCERNで開発された解析表示用ツール ヒストグラムやGUIばかりでなくTreeと呼ばれるデータコンテナが強力 DAQ-MiddlewareのMonitorコンポーネントで積極的に利用している 下記に英語・日本語のUserGuideがある http://root.cern.ch/drupal/content/users-guide http://www.dw-sapporo.co.jp/technology/root_cint_dw_documents/root_cint_dw_documents
プログラミングの実際(Monitor) 一回しか呼ばれない 繰り返し呼ばれる configureコマンド時 startコマンド時 daq_configure() { システム構成パラメータの設定 ::NVList* paramList; paramList = m_daq_service0.getCompParams(); parse_params(paramList); } startコマンド時 daq_start() {キャンバスとヒストグラムの定義 TCanvas* m_canvas = new TCanvas(“myc”,…); TH2F* m_hist = new TH2F(“h3”, … ); stopコマンド時 daq_stop() { m_hist->Draw(“colz”); m_canvas->Update(); m_canvas->Modified(); RUNNING state時 daq_run() { InPortからデータを読み出す タイムアウトやstopコマンドが来ているかどうかを チェックする また、フェータルエラーかどうかもチェック | if(isEvent) { イベントデータが正しく到着したら、データをFillする m_hist->Fill(x,y); } if((m_loop%100))==0) { 定期的にヒストグラムを表示 m_hist->Draw(“colz”); m_canvas->Update();
まとめ GEM検出器用DAQ-Middlewareを紹介した 特に、GEM用GathererコンポーネントとROOTを用いたMonitorコンポーネントについて詳しく解説した GEM検出器用DAQ-MiddlewareのGatherer, MonitorはすでにJ-PARC, MLFで利用されている