ATLAS muon triggerにおける TCPを用いたDAQ 東京大学素粒子物理国際研究センター大谷育生
目次 ATLAS のアップグレードに関する読み出しプロトタイプの開発について o ミューオントリガーシステムのアップグレード o SiTCP および GTX Transceiver の検証 o SL プロトタイプの開発について ATLAS ミューオントリガーにおける TCP の導入例 o 読み出し系における問題 o Raw data taking のスキーム o 開発状況 2012/11/6 2
ATLAS アップグレードに関する 研究開発 2012/11/6 3
ATLAS 実験 地下 100m LHC 陽子 陽子衝突型加速器 周長 26.7km 衝突頻度 40MHz ビームエネルギー 7TeV ルミノシティ 10 34 cm -2 s -1 ATLAS detector 大型汎用検出器 o o o トラッカー (Pixel, SCT,TRT) カロリメータ (EM, Hadronic) ミューオンスペクトロメータ (MDT, CSC, RPC, TGC) ヒッグス粒子や未知の物理の探索 Thin Gap Chamber (TGC) 2012/11/6 4
トリガーシステム 3 段階のトリガー Level 1 (~100kHz) o 2.5μs 以内に発行する必要がある o ゆえに全てハードウェアによるトリガー o TGCやカロリメータが担当 Level 2 (~ 数 khz) Event Filter (~ 数 100Hz) TGC L1 トリガー ミューオンは磁場で曲げられ 3 枚の TGC にヒットを生じさせる 無限運動量のパス ( 直線 ) からのずれで運動量を算出し 高い運動量のミューオンを選び出す 2012/11/6 5
ATLAS のアップグレード 高ルミノシティ LHC(HL-LHC) へ 2020 年代へ向け段階的アップグレード ルミノシティ : 0.8 5 10 34 cm -2 s -1 ATLAS 検出器のアップグレード 放射線損傷した検出器の交換 新トリガーシステムの検討 o o 現行では TGC L1 トリガーの 9 割超がフェイクミューオン ( 衝突点以外からくるミューオン ) でかかってしまっている 2018 年に向けてインナーステーションの情報を用いた新しいトリガーシステムを構築する 関連エレクトロニクスのアップグレードが必要 A が衝突点由来のミューオン B, C は別由来だが衝突点から来るように 見える 2012/11/6 6
SL のアップグレード TGC SL (Sector Logic) R 方向と φ 方向の情報を統合し運動量を割り出すモジュール フェイクを落とすために インナーステーションの情報を入れられる新 SL を作る予定 新 SL 開発に向けたプロトタイプの設計 =my work Inner station Magnetic Field ΔR Δφ 67bit 34bit SL SL board 320bit 2012/11/6 7
新 SL における改善点 インプットの増量 o 従来の入力 :optical 101bit(4Gbps) o インナーステーションからの追加入力 :optical 320bit (12.8Gbps) 4 倍のインプット 新しいリードアウトラインの構築 o 現行ではリードアウトバッファは他モジュールのASICを流用 o ASICの出力に合わせて後段のDAQも他のラインに組み込んでいる バッファをFPGA 内に作り 独立した経路を確立する SL LVDS SSW opt ROD opt 2012/11/6 8
新 SL プロトタイプに必要な技術 入力 : GTX Transceiver Xilinx 社のハイエンド / ミドルクラス FPGA に搭載されたギガビットトランシーバ 少ないリソースで新 SL の入力を再現可能 出力 : SiTCP Bee Beans Technologies 社の提供する FPGA ベースのネットワークプロセッサ TCP を用いることで後段の DAQ が容易に GTX TCP prototype Ethernet Switch これらの技術を実装したプロトタイプを制作し テスト環境を構築する PC 2012/11/6 9
GTX Transceiver 高速シリアル通信用ギガビットトランシーバ o Xilinx 社のKintex7 FPGAなどに搭載されたハードマクロ o 1レーンで最大 12.5Gbps o 全二重通信可 種々のプロトコルに対応 o PCIe, 10GBASE-R, Serial RapidIO o 8b10b を用いた単純なコーディングも可能 serial parallel SER DES encoder decoder FPGA User logic Kintex7 FPGA 2012/11/6 10
GTX Transceiver の検証 1 Kintex7 評価ボード KC705 を用いる GTX Transceiver Wizardでデザインを生成する o 2.5Gbps = 20bit x 125MHz o 送信データは単純なカウンター SMA ケーブルで tx から自身の rx へループバックさせる デバッグツール ChipScope pro を用いて検証 : 次ページ o JTAG 経由で内部信号が見れるツール JTAG SMA RX± SMA TX± 2012/11/6 11
GTX Transceiver の検証 1 TXDATA RXDATA データ ( カウンター ) が正しく転送できている 2012/11/6 12
GTX Transceiver の検証 2 IBERT(Integrated Bit Error Ratio Test) を用いて検証 o JTAG 経由で BER (Bit Error Rate) を計測するツール 2.5Gbps でリンクが取れている BER 1.8E-14 5.5E13bit 送ってエラーなし 2012/11/6 13
SiTCP ハードウェアによるネットワークプロセッサ o KEKの内田さんにより開発された技術 o FPGAに組み込むことで手軽にギガビットイーサネットが使える o FPGA 側からはFIFO PC 側からはサーバーに見える TCPによる高速リードアウト o 最大 1Gbps UDPベースのプロトコルにより外部からのコントロールも可能 PC Readout Control GbE PHY SiTCP FPGA 2012/11/6 14
SiTCP の検証 Kintex7 評価ボードKC705を用いる Kintex7 用 SiTCP(ver50) をデザインに組み込む o 送信データは単純なカウンター Cat5eケーブルでPCとつなぐ Bee Beans Technologiesのデバッグツールを用いて検証 : 次ページ cat5e Full duplex Tx Rx 1000M Link 2012/11/6 15
SiTCP の検証 データ ( カウンター ) が正しく転送できている 2012/11/6 16
新プロトタイプの開発 名称 :ProtoType7(PT7) o 6UサイズのVMEモジュール o 汎用モジュールとしても使用可能 Kintex7 FPGA(XC7K325T) を搭載 GTX Transceiverを8レーン使用 o コネクタはinfiniband 4xを2つ使用 SiTCPによるギガビットイーサネット DDR3-1333 SDRAMを搭載 Mezzanine Cardでインターフェイスの拡張可能 MicroBlaze CPUを組み込むことを想定 PT7 概略図 MC CPLD FPGA GbE GTX SDRAM 2012/11/6 17
部品の選定 :FPGA, SDRAM SDRAM = MT41J64M16JT-15E コンポーネント DDR3 SDRAM o 省スペース 16bit x 8Meg x 8banks = 1Gb バスクロック667MHz (DDR3-1333) o 1333MT/s x 16 = 21Gbps o 新 SL の入力 17Gbps を受けられる FPGA = XC7K325T-2FFG900 デバイス :XC325T o 最大 User IOが500と多い o 評価ボードKC705と同じ パッケージ :-2FFG900 o DDR3: 最大 1333MT/s o GTX: 最大 10.3125Gbps FPGA Logic cell Block RAM GMT CMT DSP User IO 6SLX150T 150,000 5Mb 8GTP 6 180 540 7K160T 160,000 12Mb 8GTX 8 600 400 7K325T 325,000 16Mb 16GTX 10 840 500 7K410T 410,000 29Mb 16GTX 10 1500 500 2012/11/6 18
部品の選定 :GTX コネクタ :Infiniband 4x SMA では tx± と rx± の計 4 本のケーブルが必要になる Infiniband ではこれら 4 本を 1 レーンにまとめて全二重通信を可能にする さらに 4x タイプなら 4 レーンを 1 ケーブルでまかなう DDR (double data rate) 対応のケーブルを用いることで 5Gbps x 4 = 20Gbps 1x-4x タイプのケーブルで PT6 との互換性の確保 4x copper cable 4x receptacle 2012/11/6 19
開発状況 回路図の作成と部品の選定は終了 現在は配線作業中 12 月中旬ごろ試作機が完成予定 できあがり次第年末にかけてテストを行う 2012/11/6 20
ATLAS ミューオントリガーにおける TCP の導入例 2012/11/6 21
TGC readout TGC 読み出し系 TGC のデータは Star Switch (SSW) に集められ 圧縮を受ける SSW10 個分のデータが Read Out Driver (ROD) に集められる ROD (Read Out Driver) SSW からのデータをまとめて ATLAS 共通のフォーマットに変換する よく busy を起こして run がとまる 原因を究明するために SSW からの raw data を見る必要あり 2012/11/6 22
Raw data taking scheme SSW optical ファンアウト ROD PT6 は光入力を受け TCP で PC に送る ROD の前に optical fanout を挿入し raw data を PT6 に渡す TCP スイッチ PT6 2012/11/6 23
PT6 ボード ROD のアップグレードプロトタイプとして開発された VME モジュール Spartan6 FPGA に SiTCP を搭載してギガビットイーサネットを使用可能 Mezzanine Card を載せることで SSW2 つからの光入力を受けられる 16 32 CPLD XC2C256- PQ208 VME bus 8 16 16 FPGA LXT150T- FGG676 Mezzanine 86 8 8 GbE PHY B: data R: address G: config data 2012/11/6 24
PT6 側 DAQ の方法 1:PC にバッファ PT6 は SSW から受けとった ( 中身のある ) データを全て SiTCP に渡す PC 側 PC は複数の PT6 と TCP connection を確立しておく Select システムコールでポーリングし 到着したデータを FIFO に格納する ROD が busy になると SSW からのデータが止まり PT6 もデータを流せなくなる PC はデータが来ない時間をカウントして一定時間経ったらファイルにダンプする timer SSW PT6 PC FIFO file FIFO write file 2012/11/6 25
PT6 側 DAQ の方法 2:PT6 にバッファ PT6 内の Block RAM を用いて SSW からくるデータをバッファする ROD が busy になると SSW からのデータが止まるので ある一定期間データがこないときに busy と判断してトリガ トリガがかかったらバッファにあるすべてのデータを SiTCP に渡す PC 側 PC は複数の PT6 と TCP connection を確立しておく Select システムコールでポーリングし データが到着していたらファイルにダンプ timer SSW PT6 PC file FIFO write file 2012/11/6 26
長所 短所 PT6 にバッファ 利点 帯域を節約できる ( データは止まっているのでゆっくり投げればよい ) 欠点 HDL による記述でデバッグしにくい バッファが限られる PT6 の Block RAM は最大 600kbyte 600k / 400 = 1.5k event = 約 30ms PC にバッファ 利点 バッファの大きさを大きくできる ソフトウェアによる処理なので開発やデバッグが容易 欠点 1 つの PT6 が占める帯域が大きい 2 つの SSW から 400byte x 50kHz 160Mbps( せいぜい PT6 は 5 つまで ) 今回はリソースも限られているため PT6 にバッファする方針で行く私が関連する Software と Firmware の開発を行った 2012/11/6 27
コンフィギュレーション Firmware のテスト SSW の代わりとなる PT6 を 2 台 その間に試験対象の PT6 を配置 中心の PT6 は NIM でクロックの分配と TCP でデータ読み出し 両端の PT6 はカウントデータを光で送る 結果 データが届いていないときに正しくトリガし バッファ内のデータを全てダンプできた しかし読み出したデータに誤りが見受けられ どこで生じているか探している 11 月下旬の LHC machine development までに fix する予定 2012/11/6 28
Software のテスト コンフィギュレーション イーサネットスイッチ経由で 2 台の PT6 を PC とつなぐ 最大限の速さでデータをプッシュする 結果 2 台の PT6 からデータを正しくダンプできた 速度はおよそ 900Mbps 前述の Firmware のデバッグが済み次第 統合試験をする予定 2012/11/6 29
まとめ ATLAS アップグレードに関して ATLAS ミューオン検出器の運動量判定モジュール SL のアップグレードプロトタイプとして VME モジュール PT7 を開発中 Kintex7 に SiTCP を載せる予定で 評価ボードを用いて動作検証した 現在配線作業中で 12 月中に完成予定 TCP の導入例について データ読み出しモジュール ROD の busy の原因追及のため raw data をファンアウトして TCP で読み出すシステムを開発中 PT6 にバッファをおく方法で Firmware と Software が 1 通り完成した 2012/11/6 30