スライド 1

CYRIC Hyperball2
technical memo
FERA関連
FERAとは
• First Encoding Readout ADCの略
• CAMACモジュールを高速で読み出すためにLeCroyが開発
– CAMAC読み出しではCAMACサイクルというものがあり、1chの読み
出しに~10 msかかるため(Block readなしで)dead timeが多大
⇒FERAで読めばモジュールのconversion timeのみでdead timeが決ま
るので、高速conversionモジュールの特性を最大限に生かせる
• CAMAC busはモジュールのイニシャライズにのみ使用し、
FERAbusを通してデータを転送する
• 専用のドライバーモジュールにFERA対応のモジュールを接続
する
– ドライバーさえ接続し、triggerやクリア、各種応答信号を正しく入れれ
ば、自動的にデータサイクルを繰り返す
4301 FERA driver
Ctrl bus
input,
output
色々
Data出力
port
Data bus
• LeCroy社製
• Control bus、Data busをFERA対応のモー
ジュールにデイジーチェーンで接続する
• Data出力portからメモリにdataを送る
• 主なinput、output
– GAI : ADC gate
– CLI : FERA clear ⇒ passを入れる
– REO : read enable out ⇒ FERA対応モジュー
ルのREN (read enable)に入力
– WAI⇒WSOを接続(輪っかにする)
Hyperball2で使用するモジュール
• AD413a Pulse height ADC
– 13 bit ch resolution, 6 ms conversion time/ch, good
linearity, dynamic range 10 V
– ADC input 4 ch, Pileup rejection input 4 ch
• 3377 TDC
– 8 ns-32 ms range, 1-16 hits, 1.8 ms+0.2 ms/hit
conversion time for double word mode (2 ms-8.4 ms)
– 32 ch input
• 4300B QDC
– 11 bit ch resolution, 50-500 ns gate range, 8.5 ms
conversion time+2.5 ms encoding time
– Pedestal subtraction (0-255 ch)
– 16 ch input
Connection
TDC common stop
4301
FERA
ADC ADC
ADC TDC TDC
TDC
Control bus
ADC gate
Pass ⇒ Clear
Pass
・・・・
・・・・
data
メモリへ
•
•
•
Data bus
WSO
配線には細心の注意を払う
べし
特にREN-PASS接続が間
違いやすい
2 pinの接続は極性に注意
4301
FERA
RQO
ADC
TDC
REN
REN
PASS
PASS
次へ
基本的な流れ
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
各モジュールがready
Trigger発生 ⇒ ADC gate, TDC common stop発生
Data収集
各モジュールのconversion
Conversion終了後、各モジュールがREQ (read request)信号を出す
FERA driverがモジュールからのREQ信号を受付け、REO (read enable out)信号を
出す (同時に出るRQO信号はREOに対応する)
FERA driverに一番近いモジュールがREO信号をRENで受け、dataをFERA driver
に送る。(一番目よりも後のモジュールは先にREQを出していても待ち続けることにな
る)この時、data転送しているモジュールはWSO (write strobe out)信号をFERA
driverのWSI (write strobe input)に送る。WSOのやり取りが行われている間は、
dataを転送しているモジュール以外はdata転送が禁止されていることになる
最初のモジュールのdata転送が終わると、FEAR driverはWAK (write
acknowledge)信号をモジュールに返し、そのモジュールはpass信号を出し、次のモ
ジュールがRENでpass信号を受け取るとdata転送を開始する。この時も7.と同様に
WSO信号が出る
以下、最後のモジュールまでdata転送とpass信号のやり取りが行われる
最後のモジュールから出たpass信号をFERA driverのclearに入れることで、全体が
resetされ、1.の状態に戻る (ちなみに3377 TDCはresetという概念が存在せず、
circular bufferの一部を切り出して、FEAR driverからの信号に合わせて延々と送り続
けている)
信号のタイミング 1
•
Trigger
ADC gate
Conversion
•
•
RQO
•
WSO
Pass
•
*以後、信号の幅とタイミングはスケールしてありません
FERAにAD413a一台をつなげた
一番シンプルな場合でADCが1
hitのとき
AD413aのdata構造はHeader +
dataの2 wordなのでWSOが2つ
出て、conversion time分遅くなる
2 chにhitがあるとWSOは3つに
なる (Header + 1ch data+ 2ch
data)。もちろん3 ch hitだと4つで、
conversion time分遅れる
AD413aは複数hitではRQO信号
が出るタイミングもconversion
time分遅くなり、転送時間だけ幅
が長くなる
AD413aの数が増えてると、上記
の信号のタイミングや幅が変動
する
信号のタイミング 2
Trigger
ADC gate
•
•
TDC stop
ADC
Conversion
•
TDC
Conversion
•
ADC RQO
•
TDC RQO
•
FERAにAD413aと3377 TDCを
一台ずつつなげた場合
ADCとTDCのconversionの終了
を考えると、実際の場合でも図の
ようにRQOがADCとTDCで別々
に出る
このRQOのタイミングに合わせ
て、適切にRENに信号を入れな
ければならない
この状態でRENをADC→TDCの
順で入れると、ADCのRQOが無
いのでFERAでADCにdataがな
いと見なされ、TDCのみのdata
が転送されることになる
ADCのconversion(もしくは
gate?)中にTDCのRQOが来ると
ダメ
TDC→ADCの順だとdataが適切
に送られる
信号のタイミング 3
Trigger
•
ADC gate
TDC stop
•
ADC
Conversion
TDC
Conversion
ADC RQO
TDC RQO
Delay
3377 TDCにはdelay timeという
のが設定でき、RQOがでるタイミ
ングを2 msずつ遅らせることが出
来る(最大32 ms)
例えば図のようにTDCを待たせ
てやると、RQOはADCの後につ
ながり、ADC→TDCの順にREN
に信号を入れても適切にdataが
送られる
*ADC→TDCの読み出し順は
First clearのためには必須
信号のタイミング 4
ADC RQO
TDC RQO
RQO①
W/o delay
WSO①
•
•
•
ADCとTDCともに1 hitの場合
ADC : 2 words (Header + data)
TDC : 3 words
(Header + data-up + data-down)
•
①の場合、TDC→ADCの順でRENに
信号を入れると、TDC→ADCの順で
dataが送られる
②の場合、ADC→TDCの順でRENの
信号を送りかつTDCのRQOをdelay
timeでADCの後になるようにすると、
ADC→TDCの順でdataが送られる
•
TDC
ADC
RQO②
W/ delay
•
WSO②
ADC
TDC
このように、RQOとWSOを見ながら
FERAのdata転送のタイミングを調節
する
信号のタイミング 5
Trigger
•
ADC gate
TDC stop
•
•
QDC gate
ADC
Conversion
TDC
Conversion
QDC
Conversion
•
FERAにAD413aと3377 TDC、
4300B QDCを一台ずつつなげた
場合
3つ使用するとややこしくなる
QDCにdelay timeの機能がない
ので、3377 TDCのdelay を使っ
て上手く合わせる必要がある
TDCが最も早くconversionが終
わり、QDCのconversion timeが
一定時間、ADCが最も時間がか
かり、そしてQDCとTDCの
conversion timeの差が微妙なの
で QDC→TDC(delayed)→ADC
で、読むことにする
信号のタイミング 6
TDC RQO
•
•
•
QDC RQO
•
RQO
W/ delay
•
•
QDC→TDC (delayed)→ADCで読む
実際にWSOを見てみたところ、図のよ
うにQ→T→Aが並んで見える
•
モジュールを複数にしてどう見えるか検
証していないので、今後も調節は必要
ADC RQO
QDC、ADC、TDCが1 hitの場合
ADC : 2 words (Header + data)
TDC : 3 words
(Header + data-up + data-down)
QDC : 2 words (Header + data)
WSO
QDC
TDC
ADC
*WSOはRQOの間にくるので、絵ではみ出ているのは
気にしないで下さい
3377 TDCの癖
• Q→T→Aと読み出すときにdelay timeを調節しても、
RQOのタイミングに関係なくTDCのheaderだけが
QDCのdataの直後に送られる
• その他、読み出し方を問わずheaderの移動がある
– おそらく悪さはしないとは思われる
• メモリモジュールとの相性があり、メモリモジュール
からTDCに渡される信号幅が適切でないと、pass
の出るタイミング等がおかしくなる場合がある
– 新規モジュールの使用の際はテストしてみる必要あり
• TDCにはFERAのclearはない。よって、trigger
(TDC stop)をvetoしないと、FERAのサイクルが崩
れ、data takingが停止してしまう
注意点
• どのFERAモジュールも型番が違う系統(製
作時期が異なる)どうしは一緒にしないほうが
良い(らしい)
– 例:3377 TDCで型番B5~~~~とB3~~~~で同じ
initializeプログラムで異なる動作になる
– B5~~~~はdelay timeが”0”設定で2 msなのに対
し、B3~~~~は”0”設定で0 msのような感じである
(offsetが異なる)
– 4300Bも太字と細字は、一緒にしないほうが良い
らしい(全部確認したがFERAの挙動は同じようで
ある)
ADC Register設定
Registerは2つ。一つ目は全体の設定。二つ目は各チャンネルのgate設定
ADC413aは”0”でon、”1”でoffになり、CAMAC関連は逆でon/off
Register 1
• B16 :overflow-suppression
• B15 :CAMAC LAM
• B14 :CAMAC random access
• B13 :Coincidence gate
• B12 :なし
• B11 :なし
• B10 :ECL port enable
• B9 :Zero-suppression
• B1~8:VSN設定(0~255)
「0x0000+VSN」で使用
Register 2
• B16~B6:なし
• B5 :Enable Mater gate
• B4 :Enable ch4 gate
• B3 :Enable ch3 gate
• B2 :Enable ch2 gate
• B1 :Enable ch1 gate
「0x0000」で使用
Register 2はRegister 1で
coincidence gateを選択している
場合はmaster gateのみがenable
Registerの他にADCでdiscriがかけられる⇒F(17)・A(0~3)で設定値を書き込み
QDC Register設定
Registerは2つ。一つ目は全体の設定。二つ目は各チャンネルのpedestal設定
4300B QDCは”1”でon、”0”でoffになる
Register 1
• B16 :overflow-suppression
• B15 :CAMAC LAM
• B14 :CAMAC random access
• B13 :Date compression for CAMAC
• B12 :CAMAC pedestal subtraction
• B11 :ECL port enable
• B10 :ECL pedestal subtraction
• B9 :Date compression for ECL
• B1~8:VSN設定(0~255)
Register 2
Pedestal subtractionの設定
→0~255 chまでpedestalを引ける
• 各chの値を0x00XXで書き込む
→F(17)・A(0~15)で書き込み
→F(1)・A(0~15)で読み込み
「0x8700+VSN」で使用
4300Bはjumper pinの変更で8~11 bit(256~2048 ch)でrangeが変更できる
通常は11 bitモードで480 pC @ MAX
TDC Register設定 1
Registerの数と使用法はCommon start/stopモードで異なる。
読み出しもSingle wordとdouble wordモードがあり、rangeが異なる
• Common stop、Double wordモードで使用
• Common stopモードの時
1. 全体の設定
2. Clockやtrigger outputの設定(使用していない)
3. Multi-hit数とtime rangeの設定
4. Requestのdelay timeの設定
• Common startモードの時
1. 全体の設定
2. MPIモードの設定(良く分からない)
3. Multi-hit数の設定
4. Time rangeとRequestのdelay timeの設定
5. Clockやtrigger outputの設定
TDC Register設定 2
Common stop、double wordモードでの設定
com-stop-single、com-start-single、com-stop-double、com-start-doubleで
それぞれ0(00)、1(01)、2(10)、3(11)とRegister 1のB16とB15で設定する
Register 1
• B16 :Common start/stop設定
• B15 :Common start/stop設定
• B14 :W/ (0) or W/o (1) header
• B13 :Buffer mode, Multi(1), single(0)
• B12 :ECL port (1) or CAMAC (0)
• B11 :Reading edge select, Both(1), Rise(0)
• B10 :なし
• B9 :なし
• B1~8:VSN設定(0~255)
「0x8800+VSN」で使用
Register 2
• Clockやtrigger output
は使用しないので、す
べてoffにする
「0x0000」で使用
TDC Register設定 3
3と4は実験や接続するFERAのモジュールの応じて設定を変更する必要がある
計算例を載せる
Register 3
• B16 ~5 :Time scale設定
– 8 nsごとに設定できる
– N bitが2N-5に対応し例のように
計算される
例:B16、B9、B6がonのとき
(211+24+21)×8 ns = 16.53 ms
• B4~1 : Multi-hit数 (1~16 hit)
• 0設定で16 hitになる
• 2.0 ms、4 hitだとすると「0x1004」と
なる
Register 4
• TDCのRequest delay timeを決め
る
• B4~1のみを使用
• 0設定でも0 msにはならずに2 ms
(1設定で2 ms)
• 計算は「Bit数×2 ms」
• 10 msとすると「0x0005」
Register設定まとめ
• ADC
– Reg1 :0x0000+VSN
– Reg2 :0x0000
• QDC
– Reg1 :0x8700+VSN
– Reg2 :0x00XX (XXは0~255)
• TDC
–
–
–
–
Reg1 :0x8800+VSN
Reg2 :0x0000
Reg3 :0x1004 (2.0 ms, 4 hits)
Reg4 :0x0005 (10 ms request delay)
Data format
• ADC
• TDC
• QDC