読み出し回路のアップグレードに向けた研究 ATLASミューオントリガー検出器用 読み出し回路のアップグレードに向けた研究 東京大学素粒子物理国際研究センター 二ノ宮 陽一 神谷隆之,坂本宏,結束晃平,Katarina Bendtz, 佐々木修A,池野正弘A,内田智久A,菅谷頼仁B, 他ATLAS日本TGCグループ KEK素核研A,阪大理B
概要 LHC-ATLAS実験とPT6について(神谷君) PT6の内部ロジックについて ・TGCのリードアウトライン ・RODのアップグレードに向けて ・Microblazeについて ・SSWエミュレータの開発 ・まとめ 13/09/2010 日本物理学会 13pSL-12 2
TGCエレクトロニクス 13/09/2010 日本物理学会 13pSL-12 3
TGCのリードアウトライン L1A信号を受けたデータは、SSWを経由し、光信号にてRODへ。 SSW(Star Switch)は、複数のデータを収集し、データの圧縮を行う。 RODはリードアウトのデータが最終的に集まるモジュールである。 13/09/2010 日本物理学会 13pSL-12 4
ROD(ReadOut Driver)のアップグレード LHCのアップグレードにより、最大ルミノシティ 1034cm-2s-1 5×1034cm-2s-1 レベル1トリガーレート 75kHz 150kHz これによりデータ量の増加、処理速度の向上が求められる 単位時間当たり約2.5倍のデータの増加が見込まれる 新RODの必要性 13/09/2010 日本物理学会 13pSL-12 5
新ROD開発計画 現RODはすべてをHDLを用いて記述 すべてをハードウェアによって処理している ハードウェアによる処理 高速な処理が可能だが、複雑な処理をさせるのに不向き。 ソフトウェアによる処理 柔軟な対処が可能。HDLに比べ、複雑な処理やそのデバッグなどが容易。 柔軟な対処が可能だが、処理速度は低速。 13/09/2010 日本物理学会 13pSL-12 6
新ROD開発計画 新RODでは、CPUコア(MicroBlaze)を搭載することを検討中。 MicroBlazeとは Xilinx社製FPGAに搭載可能なソフトプロセッサコア 32bit RISC型、OSを搭載可(μITRON、uClinux) ユーザ定義 ・クロック周波数(最大210MHz) ・パイプライン段数 ・周辺インターフェイス ・メモリー管理ユニット 13/09/2010 日本物理学会 13pSL-12 7
新ROD開発計画 組み込みの利点 ・空のfor loopを1000万回処理したときに要する時間 時間 クロック数 1ループあたり 2010年日本物理学会春季大会 組み込みの利点 20aBE-12に発表 ・空のfor loopを1000万回処理したときに要する時間 時間 クロック数 1ループあたり ・ MicroBlaze (50MHz) 2.6s 1億3000万 13 ・ Pentium4 (2.4GHz) 4000万 4 16.8ms ・MicroBlazeによるオンボード上のメモリへのアクセスと、Bit3を介してVMEモジュール上のメモリにアクセスする時間 時間 クロック数 ・ MicroBlaze 0.94us 47 ・ Pentium4 (11,200) 4.97us 13/09/2010 日本物理学会 13pSL-12 8
新ROD開発計画 組み込みの利点 時間 クロック数 ・ MicroBlaze 0.94us 47 ・ Pentium4 (11,200) slave master VME FPGA memory クロック周波数は遅いMicroBlazeだが、オンボード上のメモリの操作などはパソコンから操作するよりも早く処理できる。 さらにマルチコアで並列処理をすることで高速化が可能。後述記載 13/09/2010 日本物理学会 13pSL-12 9
新ROD開発計画 現在新RODの開発研究のためにPT6を開発中 開発目標 ソフトウェアを用いて、少なくとも現状のRODと同じ機能を持たせる SSW[0] ROD SSW[N] RODデータ Frame SSW[0] DATA SSW[N] DATA ATLAS共通の フォーマット 13/09/2010 日本物理学会 13pSL-12 10
新ROD開発環境 Xilinx ISE(Integrated Software Environment) Xilinxが提供する開発ツール。GUI環境下で構築、設定。 Xilinx ISE(Integrated Software Environment) FPGAおよびCPLDデバイスを設計するための総合デザイン開発環境 Xilinx EDK(Embedded Development Kit) 組み込み機器開発環境 VHDL,Verilogで記述 C,C++で記述 13/09/2010 日本物理学会 13pSL-12 11
内部ロジック(PT6) PLB FPGA XC6LX150T Glink mezzanine controller Interrupt Controller Block RAM FIFO memory System Timer Micro Blaze … FIFO memory FSL GTP controller Rocket IO GPIO Ethernet controller Ethernet Memory Controller GPIO SDRAMやFlash LEDなど 13/09/2010 日本物理学会 13pSL-12 12
SSW エミュレータ SSW エミュレータの作成 SSWをソフトウェアで製作 1、PT6のテスト用 2、PT6のデザインの検証 ・マルチコア ・EDKのプロジェクトをISEのサブモジュールとして活用 13/09/2010 日本物理学会 13pSL-12 13
内部ロジック(SSW emu) FPGA XC3S400 PLB1 PLB0 Block RAM Block RAM Micro Blaze 1 Share Block RAM Micro Blaze 0 GPIO Glink FIFO memory … FIFO memory 13/09/2010 日本物理学会 13pSL-12 14
内部ロジック(SSW emu) FPGA XC3S400 PLB1 PLB0 Block RAM Block RAM SLBのデータを担当 Micro Blaze 1 Share Block RAM Micro Blaze 0 GPIO Glink FIFO memory … FIFO memory 13/09/2010 日本物理学会 13pSL-12 15
内部ロジック(SSW emu) FPGA XC3S400 PLB1 PLB0 Block RAM Block RAM Micro Blaze 1 Share Block RAM Micro Blaze 0 共有のメモリに格納 GPIO Glink FIFO memory … FIFO memory 13/09/2010 日本物理学会 13pSL-12 16
内部ロジック(SSW emu) FPGA XC3S400 PLB1 PLB0 Block RAM Block RAM Micro Blaze 1 Share Block RAM Micro Blaze 0 SSWの処理の部分 GPIO Glink FIFO memory … FIFO memory 13/09/2010 日本物理学会 13pSL-12 17
PT5 現在使われている汎用FPGAモジュール FPGA CPLD XC3SLX400 FGG320 XC2C256 PQ208 DPM Mezzanine 13/09/2010 日本物理学会 13pSL-12 18
SSW エミュレータ FPGA XC3S400 SSW EMU Glink FPGA XC3S400 Glink VME経由で 13/09/2010 日本物理学会 13pSL-12 19
SSW エミュレータ ・SSWエミュレータのプログラムを1コアと2コアで処理速度を比較 クロック周波数 66.67MHz 時間 クロック数 ・ one core 22ms 1478万 ・ dual core 1290万 19ms (14%up) 複数のコアを並列で処理させることによって、処理速度の向上が見込まれる 1つのMicroBlazeを生成するのに約1500LUTs Spartan6 LX150Tは92152LUTs 13/09/2010 日本物理学会 13pSL-12 20
まとめ 新RODでは、ソフトプロセッサコアを用いて、ソフトウェアで処理させることを検討中である。 オンボード上のメモリや周辺機器にアクセスする場合は有効 CPUを並列に置くことで高速化が可能 SSWエミュレータを製作し、PT6に使えるデザインの検証を行った これからPT6の試作品が出来次第テストを行う予定である。 13/09/2010 日本物理学会 13pSL-12 21
BACK UP
32*2+32*2+32*2*18 = 1280 bit = 160 byte