Transcript ppt - KEK

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開発計画
2010年日本物理学会春季大会
20aBE-12に発表
組み込みの利点
・空のfor loopを1000万回処理したときに要する時間
・ MicroBlaze (50MHz)
・ Pentium4
(2.4GHz)
時間
クロック数
2.6s
1億3000万
13
4000万
4
16.8ms
1ループあたり
・MicroBlazeによるオンボード上のメモリへのアクセスと、Bit3を介してVMEモ
ジュール上のメモリにアクセスする時間
時間
13/09/2010
・ MicroBlaze
0.94us
クロック数
47
・ Pentium4
4.97us
(11,200)
日本物理学会
13pSL-12
8
新ROD開発計画
組み込みの利点
時間
・ MicroBlaze
0.94us
クロック数
47
・ Pentium4
4.97us
(11,200)
slave
master
FPGA
VME
memory
クロック周波数は遅いMicroBlazeだが、オンボード上のメモリの操作などは
パソコンから操作するよりも早く処理できる。
さらにマルチコアで並列処理をすることで高速化が可能。後述記載
13/09/2010
日本物理学会
13pSL-12
9
新ROD開発計画
現在新RODの開発研究のためにPT6を開発中
開発目標
ソフトウェアを用いて、少なくとも現状のRODと同じ機能を持たせる
RODの機能
SSW[0]
ROD
SSW[N]
RODデータ
Frame
SSW[0] DATA
ATLAS共通の
フォーマット
SSW[N] DATA
Frame
13/09/2010
日本物理学会
13pSL-12
10
新ROD開発環境
Xilinxが提供する開発ツール。GUI環境下で構築、設定。
Xilinx ISE(Integrated Software Environment)
FPGAおよびCPLDデバイスを設計するための総合デザイン開発環境
Xilinx EDK(Embedded Development Kit)
組み込み機器開発環境
VHDL,Verilogで記述
13/09/2010
日本物理学会
C,C++で記述
13pSL-12
11
内部ロジック(PT6)
PLB
FPGA XC6LX150T
Interrupt
Controller
Glink mezzanine
controller
Block RAM
FIFO memory
…
System Timer
Micro Blaze
FIFO memory
FSL
Rocket IO
GTP controller
Ethernet
Ethernet
controller
SDRAMやFlash
Memory
Controller
GPIO
GPIO
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
Micro Blaze 1
Block RAM
Share Block
RAM
Micro Blaze 0
GPIO
FIFO memory
…
Glink
FIFO memory
13/09/2010
日本物理学会
13pSL-12
14
内部ロジック(SSW emu)
FPGA XC3S400
Block RAM
Micro Blaze 1
PLB1
PLB0
Block RAM
SLBのデータを担当
(SSWに送られてくるデータ)
Share Block
RAM
Micro Blaze 0
GPIO
FIFO memory
…
Glink
FIFO memory
13/09/2010
日本物理学会
13pSL-12
15
内部ロジック(SSW emu)
FPGA XC3S400
PLB1
PLB0
Block RAM
Micro Blaze 1
Block RAM
Share Block
RAM
共有のメモリに格納
Micro Blaze 0
GPIO
FIFO memory
…
Glink
FIFO memory
13/09/2010
日本物理学会
13pSL-12
16
内部ロジック(SSW emu)
FPGA XC3S400
PLB1
PLB0
Block RAM
Micro Blaze 1
Block RAM
Share Block
RAM
Micro Blaze 0
SSWの処理の部分
GPIO
FIFO memory
…
Glink
FIFO memory
13/09/2010
日本物理学会
13pSL-12
17
PT5
現在使われている汎用FPGAモジュール
FPGA
XC3SLX400 FGG320
CPLD
XC2C256 PQ208
DPM
13/09/2010
Mezzanine
日本物理学会
13pSL-12
18
SSW エミュレータ
FPGA XC3S400
SSW EMU
Glink
FPGAXC3S400
Glink
VME経由で
13/09/2010
日本物理学会
13pSL-12
19
SSW エミュレータ
・SSWエミュレータのプログラムを1コアと2コアで処理速度を比較
クロック周波数 66.67MHz
時間
クロック数
1478万
・ one core
22ms
・ dual core
19ms (14%up)
1290万
複数のコアを並列で処理させることによって、処理速度の向上が見込まれる
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