放射線環境下に耐えうるVMEコントローラと PCIインタ

放射線環境下に耐えうるVMEコントローラと
PCIインターフェースの開発
東京大学素粒子センター
神谷隆之
二ノ宮陽一, 越前谷陽佑, 坂本宏
佐々木修A, 池野正弘A, 福永力B
KEK A, 首都大理工B
他ATLAS日本TGCグループ
2010/3/20
東京大学素粒子センター 神谷隆之
1
ATLAS 実験で用いられているコントロールシステム
24krad/10year
VME クレート
HSC
slave
放射線環境の
実験ホール
光ファイバー
~100m
VME クレート
CCI
HPT SSW Controller
VMEバス上のスレーヴモジュールを
コントロールし、実験装置の制御を行う
VMEマスターモジュール
Control Configuration Interface
SBCの命令を受けHSCの制御を行う
VMEスレーヴモジュール
Single Board Computer
SBC
オンボード・コンピュータ
VMEマスターモジュール
カウンティングルーム
から遠隔操作
2010/3/20
端末からSBCにログイン
東京大学素粒子センター 神谷隆之
2
現在開発中の新システム
VME クレート
RTC
slave
RTC
Radiation-Tolerant Controller
HSCとほぼ同じだが
基本的なVMEバスの機能を残して
ATLASに特化した機能を削除
広く用いられている6Uサイズに変更
光ファイバー ~100m
PCI-CCI
PCI-CCI
CCI
PCIバスに変更することで
PCに直接接続でき、ショートカット
端末から直接操作できる
他の実験でも使える汎用性の高いコントロールシステムに
2010/3/20
東京大学素粒子センター 神谷隆之
3
ATLAS で用いられている HSC の放射線耐性
• TID (Total Ionizing Doze)・・・蓄積効果
• SEE (Single Event Effect)・・・確率的現象
• SEL (Single Event Latch-up), SEB (Single Event Burn-out)
• SEU (Single Event Upset)
半導体が放射線に曝されると稀にレジスタの値が反転してしまうことがある
• 放射線対策
• Anti Fuse FPGA の採用
• 多数決論理回路の採用
陽子ビームを用いての照射試験 (2004年 東北大 CYRIC)
HSC 上の各素子に対して照射試験を実施
結果
2010/3/20
100 krad までOK SEL や SEB も見られなかった
*予測されている放射線量・・・24 krad /10 year
東京大学素粒子センター 神谷隆之
4
RTC (Radiation-Tolerant Controller)
HSC
RTC
一般的な VME バス
アーキテクチャ部分は保持
ATLAS 実験に特化した
拡張部分を削除
CERN で動作確認済み
• IC は HSC と同じ放射線テスト済みの物を使用 →放射線耐性は保たれている
• FPGAのロジックはHSC と同じ物を使用 →開発期間の短縮
• 余分な機能を削除し9Uから6Uサイズに変更 →汎用的なモジュールに
2010/3/20
東京大学素粒子センター 神谷隆之
5
PCI-CCI
PCI-CCI
CCI
VME バスから PCI バスへ
• FPGA とバス以外は従来のものとほぼ同じ構造
• PCI バスとのインターフェース部分は Xilinx 社の IP Core を使用
• PCI バスに直接挿せるので VME クレートが不要に
光ファイバー通信と PCI バスのプロトコルに則り
従来の CCI ロジックに準拠したロジックを独自に開発
2010/3/20
東京大学素粒子センター 神谷隆之
6
通信のプロトコル
• 連続した 3クロックでひとまとまりのデータをやりとりする
• 16 bit ごとのデータ転送で 32 bit 転送を行うため
通信中の信号線をロジックアナライザで見たときの様子
Control Word
Data Word上位 16 bit
データや命令の種類を表す
RTC
2010/3/20
Data Word下位 16 bit
命令
応答
東京大学素粒子センター 神谷隆之
CCI
7
データの書き込み
F9600018
12345678
F9600018 というアドレスを持つ
スレーヴモジュールに
12345678 というデータを書き込む
CCI
VME クレート
RTC
Slave
F9600018
2010/3/20
東京大学素粒子センター 神谷隆之
8
データの書き込み (1)
12345678
F9600018 というアドレスを持つ
スレーヴモジュールに
12345678 というデータを書き込む
CCI
ADDRESS
F9600018
VME クレート
RTC
Slave
F9600018
2010/3/20
東京大学素粒子センター 神谷隆之
9
データの書き込み (1)
12345678
F9600018 というアドレスを持つ
スレーヴモジュールに
12345678 というデータを書き込む
CCI
VME クレート
2010/3/20
RTC
Slave
F9600018
F9600018
東京大学素粒子センター 神谷隆之
10
データの書き込み (2)
F9600018 というアドレスを持つ
スレーヴモジュールに
12345678 というデータを書き込む
CCI
DATA
12345678
VME クレート
2010/3/20
RTC
Slave
F9600018
F9600018
東京大学素粒子センター 神谷隆之
11
データの書き込み (2)
F9600018 というアドレスを持つ
スレーヴモジュールに
12345678 というデータを書き込む
CCI
VME クレート
2010/3/20
RTC
Slave
F9600018
12345678
F9600018
東京大学素粒子センター 神谷隆之
12
データの書き込み (3)
F9600018 というアドレスを持つ
スレーヴモジュールに
12345678 というデータを書き込む
CCI
WRITE
VME クレート
2010/3/20
RTC
Slave
F9600018
12345678
F9600018
東京大学素粒子センター 神谷隆之
13
データの書き込み (3)
F9600018 というアドレスを持つ
スレーヴモジュールに
12345678 というデータを書き込む
CCI
VME クレート
RTC
F9600018
2010/3/20
WRITE
12345678
東京大学素粒子センター 神谷隆之
Slave
F9600018
14
データの書き込み
完了
CCI
VME クレート
2010/3/20
RTC
Slave
F9600018
F9600018
12345678
東京大学素粒子センター 神谷隆之
15
データの読み出し
F9600018
F9600018 というアドレスを持つ
スレーヴモジュールに
書いてあるデータを読み出す
CCI
VME クレート
RTC
Slave
F9600018
12345678
2010/3/20
東京大学素粒子センター 神谷隆之
16
データの読み出し (1)
F9600018 というアドレスを持つ
スレーヴモジュールに
書いてあるデータを読み出す
CCI
ADDRESS
F9600018
VME クレート
RTC
Slave
F9600018
12345678
2010/3/20
東京大学素粒子センター 神谷隆之
17
データの読み出し (1)
F9600018 というアドレスを持つ
スレーヴモジュールに
書いてあるデータを読み出す
CCI
VME クレート
2010/3/20
RTC
Slave
F9600018
F9600018
12345678
東京大学素粒子センター 神谷隆之
18
データの読み出し (2)
F9600018 というアドレスを持つ
スレーヴモジュールに
書いてあるデータを読み出す
CCI
READ
VME クレート
2010/3/20
RTC
Slave
F9600018
F9600018
12345678
東京大学素粒子センター 神谷隆之
19
データの読み出し (2)
F9600018 というアドレスを持つ
スレーヴモジュールに
書いてあるデータを読み出す
CCI
VME クレート
RTC
F9600018
2010/3/20
READ
12345678
東京大学素粒子センター 神谷隆之
Slave
F9600018
12345678
20
データの読み出し (2)
F9600018 というアドレスを持つ
スレーヴモジュールに
書いてあるデータを読み出す
CCI
VME クレート
2010/3/20
RTC
Slave
F9600018
12345678
F9600018
12345678
東京大学素粒子センター 神谷隆之
21
データの読み出し (2)
F9600018 というアドレスを持つ
スレーヴモジュールに
書いてあるデータを読み出す
CCI
12345678
VME クレート
2010/3/20
RTC
Slave
F9600018
F9600018
12345678
東京大学素粒子センター 神谷隆之
22
データの読み出し
完了
12345678
CCI
VME クレート
2010/3/20
RTC
Slave
F9600018
F9600018
12345678
東京大学素粒子センター 神谷隆之
23
ドライバ・ソフトウェアの作成
Win Driver を用いてPCIカードのドライバと
ソフトウェアのソースコードを自動生成
PCI カード上のレジスタに
アクセスするサンプルプログラム
VME スレーヴモジュールのレジスタに
100万回読み書きのチェックをするテストを行ったが
一度もエラーは起こらなかった
2010/3/20
東京大学素粒子センター 神谷隆之
24
まとめ
• 放射線耐性を持ち、光ファイバーと PCI カードを用いた遠隔操作で
VME クレート上のモジュールをコントロールするシステムを開発している
• 汎用的なシステムなので様々な実験で使用することができる
• 現在は試作品ができあがり、骨組みとなる機能は完成した
• WinDriver を用いてドライバはすぐに出来るので使い始めるのは簡単
• 放射線環境下で VME クレートを使用したい場合に最適
2010/3/20
東京大学素粒子センター 神谷隆之
25
最後に
• 様々な実験に用可能な VME コントロールシステム
• A16, A24, A32, D16, D32 の各モードに対応
• ブロック転送や割り込み機能も実装可能
• 放射線環境下で使用可能
• Bit3 と違って光ファイバーなので長距離での遠隔操作に最適
• Bit3 に代わる新 VME コントロールシステムとしてぜひご検討ください
2010/3/20
東京大学素粒子センター 神谷隆之
26
Back Up
2010/3/20
東京大学素粒子センター 神谷隆之
27
How to operate
Word
Ctrl
Word
15 14 13 12 11 10 9
NU
7
6
opecode
5
4
3
2
1
0
operand
15 14 13 12 11 10 9
Data
Word
8
8
7
6
5
4
3
2
1
0
6
5
4
3
2
1
0
Data [15:0]
15 14 13 12 11 10 9
Data
8
7
Data [31:16]
order
RTC
CCI
response
Word
Ctrl
15 14 13 12 11 10 9
NU
code
8
7
6
5
4
3
State of RTC
2
1
0
Radiation Level at Atlas Muon (TGC) System
• Neutron (1Mev equivalent neutron/cm2/10yr)
– 1.4x1011 (CMOS), 2.2x1011(Bipolar)
– Neutron from reactor
• Dose (Dose/10yr)
– CMOS :110 Gy (ASIC), 210Gy (COTS)
– Bipolar : 5 times larger
– Gamma source : 60Co
• SEE (h/cm2/10yr, no safety factor, h>21MeV)
– 2.1x1010 h/cm2/10yr
– SEE
• Single Event Upset, Single Event Latch-Up, Single Event Burnout
– Proton beam with 70MeV < E < 1GeV
DUTs (Device Under Test)
• Anti-Fuse FPGAs (Actel A54SX and AX family)
– Data Read/Write/Verify of Memories and Registers
• Serial Links
– G-Link (HDMP-1032A/1034A),
OE/EO converter (V23818-K305-L57)
– LVDS Link
• Tx : SN65LV1023,
DS65LV1023
• Rx : SN65LV1224,
DS65LV1224
– Data Tx/Rx/Verify
• Link status signals and
Current are monitored.
Setup
• Proton 70MeV beam (0.5 – 4 nA) at 31 beam
course
• Broaden beam size to around 20 mmf
• A 100 – 200 mm thick Cu foil on the DUT for
dosimetry
60Cu(1332keV)
61Cu(1185keV)
63Zn(962keV)
60Cu(826keV)
56Co(847keV)
61Cu(656keV)
511keV
62Zn(548keV)
61Cu(373keV)
61Cu(283keV)
61Cu(67keV)
Dosimetry
• Gamma-ray spectrum from activated radioisotopes of
the Cu foil was measured for 1,000 sec with a Ge
detector, after 1 hour cooling from the irradiation.
• Intensity distribution of the each Cu foil is measured
with Imaging Plate. The intensitl is relatively flat in
central 20 mmf area.
Anti-Fuse FPGA (A54SX and AX Family)
• A54SX: Ring Oscillator (101 NAND gates with two loads
each) and 4x256 shift registers
– Register SEU < 1.5x10-15 cm2/bit
– No SEE was observed.
• AX Family: Ring Oscillator (101 NAND gates with two loads
each), 4-bit x 345 shift registers and memories (12 x 9-bit x
512 depth)
– Register SEU = 1.6x10-14 cm2/bit
(32 upsets observed)
– Memory SEU = 4.9x10-14 cm2/bit
(3869 upsets observed)
– No significant difference of the SEUs between 0-to-1 and 1-to-0
upsets.
– Any other SEE was not observed.
• Voting logics are used for all the registers.
G-Link and OE/EO converter (SEE)
• G-Link Tx
– Data Error = 2.2x10-8 cm2, Link Error = 3.3x10-10 cm2
• The recovery time is approximately 8 ms mean, less than 10 ms at the longest.
• G-Link Rx
– Data Error = 1.2x10-8 cm2 ,Link Error = 6.7x10-10 cm2
• The recovery time is approximately 8 ms mean, less than 10 ms at the longest.
• OE/EO converter (Sum of OE and EO)
– Data Error = 8.6x10-11 cm2 ,Link Error < 3.0x10-12 cm2
• Trigger signal (from experimental hall to control room, 1k links)
– 0.19 data errors/min. in the system
– 0.17 link errors/hr in the system
• Read-out signal (from experimental hall to control room, 200 links x
10% [duty])
– 0.23 errors/hr. in the system
– 0.1 link errors/day in the system
• Control signal (28 bi-directional links x 1% [duty])
– 0.1 errors/day in the system
LVDS Link (SEE cross sections)
• Tx
– NS
– TI
SEU = 1.3x10-13
SEU = 2.5x10-12
Link Error = 1.2x10-12 cm2
Link Error = 1.5x10-12 cm2
– NS
SEU = 2.0x10-11
Link Error = 1.2x10-11 cm2
– TI
SEU = 8.0x10-13
Link Error = 6.3x10-13 cm2
• Rx
• 0.6 SEUs/day and 0.4 Link Errors/day in 10k links.