Tags:
view all tags
ELPH Testbeam Log 2021
ELPH Testbeam Log 2021
2021.5.12 北、中村
作業内容
メモ
2021.5.13 北、中村
作業内容
2021.5.19 中村、植田、熊倉、北
作業内容
メモなど
2021.6.2 五屋
作業内容
困ったこと
2021.6.13
2021.6.16~17
作業内容
2021.6.23
作業内容
2021.5.12 北、中村
作業内容
atlaspc24を定盤のテーブルの方に移設
B4からatlaspc10を持ってきて、もともとatlaspc24のあったところに設置
シンチとTLUのセットアップ
Texioの電源を準備 (シンチ+5V, -5V用 と Seabas 3.3V用)
HV電源を準備
Picoで信号を確認 >> 1個信号確認済(ノイジ―、信号の幅が大きい、最適化必要)、残り2個
ISEをインストール
メモ
シンチ動作のしくみ
中2本(上下信号)�2を内蔵
上下の信号がたちあがる/さがるANDを信号1としてNIM信号を作成
立ち下がる方の信号のOffsetを電圧(Vcc)を変えることで上にあげるとノイズがのりづらくなる
上下信号で作られたNIM信号同士のANDを取ってシンチの信号ができる
NIM信号幅は可変抵抗で調節可能
シンチとSEABASはイーサで接続、ソフトISEでファームウエアを焼く
シンチ回路:https://cernbox.cern.ch/index.php/s/MiwFjlIDetdQ8BC?path=%2FKEK%2FSciMPPCtrigger%2FMPPCReadOut_v5
2021.5.13 北、中村
作業内容
TLUの動作確認
ISEをpc24にインストール(場所:/opt/Xilinx/14,7/ISE-DS/ISE)
起動
source /opt/Xilinx/14.7/ISE-DS/settings64.sh
ise
ウィンドウ開いたらopen project→~/atlasj/work/ELPHtestbeam202107/SeabasTLU/FirmwareSeabasTLU-FNAL/SeabasTLU-FNAL2020_01/FirmwareSeabasTLU-trunk.xise
コンパイル~Firmwareに焼く作業
左のツールボックス、HierarchyのTLU_topを選択した状態でその下のボックス、Generate Programming...を右クリック。runallを選択。
runが終了後、.bitファイルができたことを確認
Generate Programming...下のManage Configuration...をダブルクリック。ISE impactを起動する。
ISE impact内Boundary Scanをダブルクリック。
青字Right Click to Add...部分を右クリック、Initialize chainクリック。その後はとりあえずキャンセル押し続ける。
回路図っぽいもののうち、焼きたい方(右サイド)をダブルクリック。
さっき作ったbitファイルを選択。
(メモリーに書き込むかきかれたらNoを選択)
Programをダブルクリックすることで焼ける。
trigger信号をだす
~/work/ELPHtestbeam202107/SeabasTLU/SoftwareSeabasTLU-FNAL/SoftwareSeabasTLU-trunk/bin/trinenableを実行
実際に動かす
TriggerEmulator
を使ってtriggerが出ているか確認
TLU_trigmaker290周辺:4MPPC Scintiの部分をコメントアウト、For Emulation部分のコメントアウトを消した
TLU_trigmaker227:225をコメントアウト。227のコメントアウトを消した→busyin、GlobalbusyinのORを取るようにした
TLU_top250周辺:ForEmulation部分のコメントアウト削除。ForActualTriggerをコメントアウト。
走らせたら信号が確認できた。TLU_trigemulaterの周波数を変更すると周波数も変わるのが確認できた。
400Hzを走らせると200Hzで出てきたのでコード要確認�
シンチ1枚の信号でtriggerが出ているか確認
TLU_trigmaker254周辺:For EmulatorをFor 1MPPCのバージョンに変更(コメントアウト)
Emubusy&scinti[0]でトリガーを作っていたため、信号が正常に出なかった→Emubusyを消した
EmubusyはEmutrigと同タイミングで出るため、偶然シンチとEmutrigが重なったところでしかトリガーされていなかった
コメントアウトではなくそのまま削除してしまったため、どの行だったか明確に覚えていませんすいません
おそらくtrigmaker227のORにGlobalBusyを入れた?
trigmaker45周辺でGBusywidthを変えて走らせたところ、幅の異なるトリガーを確認した
GBusyが働いている時間はシンチのトリガーを取らないことを確認
たとえば3nsの幅だったら3nsごとにシンチのトリガーがきている
シンチの最適化
シンチはdaccontrol(ソフト)で動かす
/home/atlasj/work/ELPHtestbeam202107/SeabasTLU/SoftwareSeabasTLU-FNAL/SoftwareSeabasTLU-trunk/bin/daccontrol
26、27行目の最後を変数($3)に変更
シンチのスレッショルドを変更
cd /home/atlasj/work/ELPHtestbeam202107/SeabasTLU/SoftwareSeabasTLU-FNAL/SoftwareSeabasTLU-trunk/
./bin/daccontrol config 0 [0~4095任意の数字]
4095にするとoffsetが上昇、コインシデンスが少なくなる。数字を小さくすると上シンチとしたシンチのANDがたくさん取れる。ノイズもひろう。
添付ファイル:TLUの中のイメージ図
2021.5.19 中村、植田、熊倉、北
作業内容
HSIO2とROI(KEK114)の動作確認
FPGA(HSIO2の上に乗っているZYNQ)を動かすソフトをインストール
atlaspc24上~/work/ELPHtestbeam202107/memo_hsio2_cc7.txtを参照
セキュリティをOFF
pc24上にZYNQと会話するためのディレクトリを作成(/opt/AtlasRceSdk)
sdkのソフトをwget
rceのソフトをgit clone(
AtlasRceSdk
下にV1.11ができる)
上二つは古いverだったため、yum installができるようにレポジトリを持ってきてinstall(
AtlasRceSdk
下にpixelrceができる)
シンボリックリンクをhomeディレクトリにdaqとして貼る
build rce(ZYNQ側) && build host(PC側)→rceの方のbuildがうまく動かなかった。もともと焼いてあるもので動くと信じてrceのbuildはスキップ。
ZYNQにログイン
イーサで配線。(192.198.10.1)
pc24をDHCPサーバに設定。
DHCPサーバーをインストール
atlaspc10から/etc/dhcp/dhcp.confをコピー
dhcp.conf内のhost dtm50, dtm56が設定したものと同じ
system ctl start dhcpd.service
いつでもON設定になるように、systemcontrol
nmcil ... を入力、これでローカル用に使うことを認識してもらう。詳しくはcc7.txt参照
/etc/hostsファイルを書き換える。(192.168.10.1をrce0に名前変更)
pingを通したら通ったのが確認できた
ログイン:root@rce0 パスワード:root
無事ログインができた
source setup.sh
calibserver
これでpc24と会話するための準備が整った
KEK114(ROI)起動
イーサでHSIO2とKEK114を接続
VDDA(アナログ回路用):1.5V, VDDD(デジタル回路用):1.2Vに設定
コマンドはpc24→HSIO2→KEK114で送られていくしくみ
GUIを動かす
pc24homeディレクトリ上でsource daq/rce/scripts/setup-env.sh
~/work/ELPHtestbeam202107/HSIO2/に移動
cailbGuiでGUIが立ち上がる
GUIの使い方
Load→KEK114.cfgを選択
configファイルはその都度できあがるので適切なものを選択
Config Root DirはAbs Pathを押せばよかったは
Data Dirはデータを入れたいディレクトリをBrowseから指定
今回は/home/atlasj/work/ELPHtestbeam202107/HSIO2/KEK114/data
タブでconfig
HalfstaveA
を選択、読み込むポートのincludeにチェックをつける
Scan typeプルタブから好きなTESTを選択
RunStart
からはしらせよう
primlistを読み込む方法
走らせるものを事前に設定して連続ではしらせられる方法
Load Primlistから走らせたいものを選択
startrun
一通りrunすることを確認
primlistを読み込んでスキャンすることができた
theresholdは3000e, tot=8に設定するprimlistでチューニングをした
最終的にできたファイルはrunNo25のもの
メモなど
GUIの機能一覧
tdac tune
各pixelごとにスレッショルドの値を調節
常に3000eをinjectionして反応を見る→スレッショルドを調節→�(横軸threshold縦軸pixel数の分布がだんだん細くなるはず)
tot-test (= analog scan)
50発injectionしたときのtotの平均を算出する
(横軸tot, 縦軸pixel数)
if tune
Globalなtotを決める
フィードバックによりpreampVbfを最適化す
fdac tune
pixel by pixelでtotを調節する
横軸tot, 縦軸pixel数の分布が指定したtotに向かって細くなる
thereshold scan
injection値は変えずにスレッショルドを変えたときになんpixelなるかを見る
だんだん下げていくので最初のほうはなるピクセルがゼロ→最後はほとんど全部なる
noise scan
CLKでトリガーを送る→ヒットがあるかどうか見る
あまりにもうるさいpixelはmaskする必要がある
勝手にmaskしてくれる仕様
走らせた後でConfig
HalfstaveA
タブのEditボタンからmaskの様子が確認できる
注意
rce0のcalibserverを立ち上げてないとguiはstartrunできない
guiはhomeディレクトリでsourceをしないと立ち上がらない
走らせてから追加で走らせる場合、必ずUpdateボタンを押さないと新しいconfigが適用されないので注意
なんのconfigファイルが最終的にいいやつなのか覚えておくべし
2021.6.2 五屋
作業内容
シンチ最適化(3枚でefficiency測定)の準備
iseを立ち上げる
source /opt/Xilinx/14.7/ISE-DS/settings64.sh
ise
seabasTLUプロジェクトを選択
Firmwareを書き換える
TLU_top : dout[0], dout[0], dout[0], dout[0]をdout[0], dout[1], dout[2], dout[2]に
逆でしたdout[2], dout[1], dout[0], dout[0]
trigmaker : For 4MPPC testモードのコメントアウトを外した
trigmaker : For 4MPPC testモードのROIFIREDを消した
TLU_top : 248周辺のdebugmodeをONにした
iseimpactで焼く(TLUtop.bitを焼く)
シンチのセットアップ
3枚stack
HVの電流を3倍にした
シンチのdaqcontrol
cd ~/work/ELPHtestbeam202107/SeabasTLU/SoftwareSeabasTLU-FNAL/SoftwareSeabasTLU-trunk
source /scripts/setup_SeabasTLU.sh
cd ~/work/ELPHtestbeam202107/SeabasTLU/SoftwareSeabasTLU-FNAL/SoftwareSeabasTLU-trunk
./bin/daccontrol command [channnel] [dacval] [dacval]
dacvalは0~4095まで
最初はゼロに設定
ほしいイベント数とる
cd bin
binにいないとstartrunできないバグ
./startrun [走らせたいイベント数]
今回は1万走らせた
データ解析ソフトを使えるようにする
困ったらREADME.mdを参照のこと
cd ~/work/ELPHtestbeam202107/SiliconTBSoftware-20210601
source /opt/rh/devtoolset-7/enable
cd config
./configure.sh
source setup_local.sh
make
cd
OnlineMonitar
/src
./mkconfig.sh : config.txt
../bin/onlinemon config.txt
データ解析ソフトにはバグがありそう、、、
回すたびに結果が違くなる
シンチ3枚では貫通しなかったため2枚に変更
efficiencyはかりたいものを上、トラック通ったのを確認するものを下に
dout[1], dout[1], dout[1], dout[0]に変更
[1]をトリガー(下側)にして測定、efficiency30%ほど(2層目のdac1000)
[1]をトリガー(下側)にして測定、efficiency30%ほど(2層目のdac2000)
結構時間かかる。。。
efficiencyがよくはならなかった、なぜ?
困ったこと
シンチの信号が見えない
3つ接続したことによって電流が不足?、currentmaxを3倍にした。
プローブはそのオシロ専用のものを使わないと見えない。
シンチのイベントが全然来ない
ノイズのANDのせいでイベントが取れない。
ベータ線では貫通しにくいため10万イベントで3,4個しか来てない
1番下がうるさいのでdacをあげたりしたがあまり効果なし
ソフトのバグ?
doutの入力順が違かった、後ろからでした(
詳細は上の斜文字
)
1番下/真ん中だけをトリガーにしてデータをとった
doutの入力順が正しいことを確認できた
貫通するイベントは少ないのかもしれない…というかない。。。
どのdac値でもだいたいefficiency30%…3分の2は偽物のイベント(ノイズ)では:一晩走らせてとれるかどうかを確認する
線源を直置きすると信号が見えない
いっぱいイベントが来すぎるとキャパオーバーして信号を出さない
適度にシンチと線源を離すとうまくいく
2021.6.13
Lecroyオシロの動作確認
TLUからtrigを出してデータをとる
2021.6.16~17
作業内容
TLUとSeabasを繋げた全体の動作確認
全体を設置
テレスコープの順番
案A KEK144→141→センサー→132→ROI(114)→シンチ→シンチ
案B KEK144→141→センサー→142→132→シンチ→シンチ
裏面パッチパネルとテレスコープ対応表
作成中(2021.6.24)
LV分配パネルに4pinmolexを接続
テレスコープ用の電源はここからもらうことにした
赤molexと黒molexが逆についていたため、LV分配ボードのC2-2とC3-0に
ー1.8Vを印加
LVの電源をつけてcurrentが流れていることを確認
HVを接続
HVをHVprotection基板を通した先でTlemoでそれぞれ分配
HVprotection基板はもともとかかっている1MOhmかけた
(後日)lemoだと不安定なため、BNCで分岐させてlemoで接続する方法に変更
DAQシステム起動、接続など
HSIO2
一度抜いて違うUSB-Ethaをさしてしまったため認識してもらえなくなった
新しいUSB-Ethaを使って以下の手順で再度DHCPサーバーで名前を付けてもらった
pc24ネットワークの設定を開く
IPアドレスを192.168.1.70に設定
ネットマスク:255.255.255.0
ゲートウェイ:192.168.10.1
ルートをOFF
適用
DHCPサーバーを立ち上げなおす
現在の動きを確認:systemctl status dhcpd.service
再起動:systemctl restart dhcpd.service
動いたか確認:systemctl status dhcpd.service
ネットワークの設定からEtha接続をいったんOFF→再度ON
ping 192.168.1.70とrce0が通るようになった
calibGuiを立ち上げ(方法は前述)
calibgui中ですべてのテレスコープを認識してくれない
plimlist.cfg中でchipシリアルNoがかぶっているものがあったので書き換えた
以下与えたシリアルNo
作成中(2021.6.24)
シリアルNoを変えたら認識してもらえた→解決
なかなかdigitalscanが通らない。
テレスコープについては設定部分でinlinkを同じ数に設定。outlinkはそれぞれで設定。→解決
時々KEK144の下側のコマンドが通らなくなったりした。ポート22
ケーブルを抜き差ししたら治ったのでよくわからない
無事scanとtuningができた
digital scanを通すとcurrentは2.4→3.2uAくらいまで上がった
SeabasとHSIO2を接続する
HSIO2に向かって左側にLemoコネクターがいっぱい並んでるように見ると上から4番目にTLUのCMOSin0(=Busy)
一番上にCMOSout4を繋げた(逆かもわすれました)
CosmicGui
の立ち上げ
rce0にsshしてcalibguiを立ち上げる(前述)
sourceいるか忘れました
cosmicGui -i [rceのアドレス=192.168.1.70]
Guiが立ち上がったらloadからファイルを全部選択
dataformat root->rawに変更
CMOSが出てることを確認→出てない
calibguiを再起動、rce0をreboot
runは始まるがトリガーを受け取っていない
下の画像のように設定→解決
Latencyを先人のメモより230に設定
DAQをしてみる
スケーラーを接続、
メモ
厚みなど
ROI:厚み0.5mmのアルミが裏についている
テレスコープ:表面にフレキ。2層基板12umの銅+50umのかぷとん+緑のレジスト
テレスコープの設定
inlink : コマンドを送信する方。テレスコープは同じものを指定しないとダメ
outlink : コマンドを受け取るほう。それぞれのRJ45に1個ずつついている
HSIO2とLVのGNDは同じにしないとダメ。
今回つなげてない時に測定したら120mV程度の電位差があった。
つなぐと20mV以下に
ELPHは電源がやばいらしいのでトランスを持っていくか?
cosmicgui
困ったらcosmicGui -hでヘルプ表示
2021.6.23
作業内容
SeabasTLU
をKC705にしたい
アダプターボードを実装した
LPC
NIMin[0]、NIMout[0]
LVCMOSin[0]、LVCMOSout[0]
電源まわり(±5V、3.3V)も実装、いくつかのパスをジャンパーピンでつなげられるようにした
+5V
LPCpinから出ている12Vを+5Vに変換:12Vが出ていなかったため使用不可
4pinmolexから取ってくる
ADCpinから直接取ってくる
−5V
元々基板の中のものをマイナス5Vに変換:コンパレーターが電流が流れると十分なVoltageに変換されないので使用不可(
LTC1046CS8
はもう使わない!次にボード作るときはこれ使わない!!!)
4pinmolexから取ってくる
3.3V
LPCpinから出ているものを使う
4pinmolexから取ってくる
Emutrigを入れて動作確認
LVCMOS[0]とNIMin[0]からの信号が確認できた
結局電源まわりは3.3VをLPCから、±5Vを4pimolexから取ってきた、本番もそうなる気がする
--
Koji Nakamura - 2021-05-12
Comments
Attachments
Attachments
Topic attachments
I
Attachment
History
Action
Size
Date
Who
Comment
jpeg
Skype_Picture_2021_05_13T10_34_00_138Z.jpeg
r1
manage
177.4 K
2021-05-13 - 10:34
SayukaKita
Edit
|
Attach
|
Watch
|
P
rint version
|
H
istory
:
r28
|
r15
<
r14
<
r13
<
r12
|
B
acklinks
|
R
aw View
|
Raw edit
|
More topic actions...
Topic revision: r13 - 2021-06-25
-
SayukaKita
Home
Site map
Main web
Sandbox web
TWiki web
Main Web
Users
Groups
Index
Search
Changes
Notifications
RSS Feed
Statistics
Preferences
P
View
Raw View
Print version
Find backlinks
History
More topic actions
Edit
Raw edit
Attach file or image
Edit topic preference settings
Set new parent
More topic actions
Account
Log In
Edit
Attach
Copyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback