Title

Article text.

-- Atlasj Silicon - 2019-12-26

Log

prepare and check

26.12.2019

install HSIO2 software into atlaspc14 (CentOS7)

以下を参照

  • ~/work/SiliconMemo/memo/memo_hsio2_CC7.txt
  • ~/work/SiliconMemo/memo/memo_HSIO2_manchesterencode.txt
参照ページ firewallの解除
  • $ emacs -nw /etc/sysconfig/selinux
    • SELINUX=permissive
  • $ echo 0 >> /etc/selinux/enable
  • $ systemctrl disable firewalld
software install apply manchester encode
  • FPGAからHSIO2にコマンドを送る方のsignal clockが40MHzなので,80MHzにして,AC couopleによるsignal heightの減少を抑える.
  • $ emacs -nw ~/work/HSIO2_FEI4/pixelrce/rce/pixelrce/server/CalibGui.cc
    • add [ fw.setEncoding(rce,FWRegiseters::MANCHESTER); ] between [ int rce=it->firsts; ] and [ fw.setTriggermask(rce,0);
    • add [ fw.setEncoding(rce,FWRegiseters::MANCHESTER); ] between [ int rce=it->firsts; ] and [ //Discriminator Delays ]

NOT write firmware

DHCP service ON to apply HSIO2 IP address

  • $ emacs -nw /etc/dhcp/dhcpd.conf
    • host dtm50 { option host-name "dtm10"; hardware ethernet 08:00:56:00:44:EE; fixed-address 192.168.1.10 }
    • (hardware ethernet = MAC address of HSIO2, これで識別している)
  • 設定→ネットワーク(右上の有線設定からでも可)→USB Ethernetの設定→IPv4
  • 手動
  • address:192.168.1.22, net mask:255.255.255.0, gate way:192.168.1.1
  • (この接続はネットワーク上のリソースのためだけに使用にチェックを入れたいが,入れると適用ができないので以下のことを行う)
  • $ nmcli connection modify [eth] ipv4.never-default true(上のところにチェックが入ったことを確認)
  • ON→OFF→ON
  • $ systemctrl restart dhcpd.service
  • $ chkconfig dhcpd on
  • $ systemctrl status dhcpd.service
  • $ ping 192.168.1.10
  • (communicationを簡略化?させるために,HSIO2:192.168.1.10をある名前に紐づける)
  • $ emacs -nw /etc/hosts
    • add [ 192.168.1.10 dtm50 rce0 ]
  • $ ping rce0
HSIO2を動かしてみよう!

HSIO2のFPGAでserverを立ち上げる

  • $ ssh rce0 -l root
  • # source setup.sh
  • # calibserver
GUIで操作
  • 別のTerminalを開く
  • $ source ~/daq/rce/scripts/setup-env.sh
  • $ calibGui
Calibration GUI
  • Load : KEK132_133_134_141_144
  • Config Root Dir : /home/atlasj/work/HSIO2_FEI4/FnalPreAtKEK-20191225/rceconf/
  • Data Dir : /home/atlasj/work/HSIO2_FEI4/FnalPreAtKEK-20191225/data/
  • chose using FrontEnd at Config Halfstave A ( test KEK112 [quad] and KEK134 [double] and KEK141 [double] )

27.12.2019

memo:manchester encodeについて

  • readout側(受け手)はclockが160MHz(6.25ns)
  • command側(送り手)は40MHz(25ns)だとsignal clockにうなりが生じる->80MHz(12.5ns)にすることで改善
  • ※ちなみにcommand側を160MHzにするのは難しい->送り手は丁寧なscriptを作る必要があり、受け手に比べて大変

->KEK141(信号を送る前->送った後:1.79V,0.778->1.79V,1.039A),KEK112(analog:1.5V,0.025A->1.499V,1.062A , didital:1.2V,0.282A->1.2V,0.125A)のFEI4を用いて、

picoscopeでcommand側を確認したところ40MHzだった。

->解決した:新しいsoftwareのGUIにmanchester encodeをON or OFFにするbuttonがあり、それがOFFになっていただけだった。

->picoscopeで確認:80MHzになっているか確認しようとしたが、結果として40MHzのものを区別するのは難しいことがわかった。

          というもの40MHzの場合において25nsより大きいclock(山)があるとき、manchester encode機能させると波形の違いがわかるわけだが、

          今回の場合だと25nsくらいのclock(山)だったので、周期がずれることの確認が出来ただけだった(0->1,1->0に入れ替わる)。

manchester encodeをonにした場合におけるその他のFEI4

  • KEK132(信号を送る前->送った後:1.79V,0.782A->1.79V,1.004A),KEK112(analog:1.5V,0.024A->1.499V,1.062A , didital:1.2V,0.241A->1.2V,0.124A)->config通った
  • KEK134(信号を送る前->送った後:1.79V,0.772A->1.79V,0.998A),KEK112(analog:1.5V,0.023A->1.499V,1.062A , didital:1.2V,0.275A->1.2V,0.124A)->config通った
  • KEK133(信号を送る前->送った後:1.79V,0.856A->1.79V,1.012A),KEK112(analog:1.5V,0.024A->1.499V,1.063A , didital:1.2V,0.278A->1.2V,0.125A)->config通った
  • KEK142(信号を送る前->送った後:1.79V,0.817A->1.79V,1.038A),KEK112(analog:1.5V,0.023A->1.499V,1.061A , didital:1.2V,0.275A->1.2V,0.124A)->config通った
  • KEK144(信号を送る前->送った後:1.79V,0.809A->1.79V,1.061A),KEK112(analog:1.5V,0.024A->1.499V,1.061A , didital:1.2V,0.276A->1.2V,0.124A)->config通った
LV via emulator
  • C2_0 -> KEK144, C2_1 -> KEK142
  • LV : 2.0V / 2.4A
  • pass config of 2 modules.

01/08/2020 - 01/31/2020

FNAL time schedule

  • 01/31までに同期試験を終わらせる
  • 02/10に荷物発送
TLU関係(勝哉)
  • TLU board (Seabas)のfirmwareの書き換え
  • fake triggerを送る
  • signalの送受信のチェック
trigger関係(勝哉)
  • 現在のMPPCの動作チェック
  • new board作成 x5
  • LVDS signalをオシロスコープで確認(100 ohm terminater)
  • threshold levelの変更
Telescope (FEI4)関係(谷野)
  • pcとのcommunication
  • 6 moduleすべての動作確認
  • 各moduleのbump剥がれの位置を探す(source scan)
  • tuning
  • NIMでbusyなどのsignalを受け取れるかチェック
  • event buildのチェック(trigger handling, TLUからfake triggerを送る)
DUT (RD53A, quad version)関係(谷野,望月)
  • event buildのチェック
  • quad versionに関してはHVとか
LGAD関係(植田,大鳴)
  • DRS4 (DAQ for LGAD)とPCのcommunication
  • AMP作成
  • LGAD (PAD)が本当にsignalを受け取ったかどうかわかるようにする.(Pixelのようにcorrelationで確認することができないため)
Frame関係(原田)
  • Frame作成
  • cablingの仕方など
Cooling system関係(大鳴,植田)
  • cooling box作成?
1月末までを目処に

ーーーーMEMO------

trigger : scintillator MPPC x4 (upx2, downx2)

MPPC work check, new board<-- MPPCだけ取り換え x5 (including spare). CHECK BY ocillorscope LVDS (kind of signal, this is high believed, 100Ohm terminator (between positive and negative) )

apply high vol and low vol <-- RJ45 (LVDS) threshold level change

check threshold level.

CBOS : TLU board instead of TLU box. FPGA board. FPGA board : programable. logical calculate. instead of NIM nodule. AND, OR circuit.

VERTEX5, VERTEX4 on CBOS. TLU adapter board is gaven signals and sent CBOS board. now CMOS signal is converted to ...signal by VERTEX

path : DrawRepository /2FKEK%2FFNALtb%2FTLUadaptercard%2FTLUadaptercard_revB%2FProject%20Outputs%20for%20TLUadaptercard_revB#pdfviewer

TLU data : clock timing , scinti signal.

eventsの同期 →busy signalが保証. しかし,たまにずれていることがある.オンラインモニターで常に確認すr必要がある.correlation.

each DAQ system.

FEI4 NIMでbusyやsignalを受け取れるかcheck.

FEI4 x6 module working check, bump剥がれの位置をcheck, FEI4 tuning, test with ALL 6 FEI4.

when auto trigger mode on FPGA, FEI4 sent signal. (trigger handling)

RD53A trigger handling. event counts.

LGAD DAQ : DRS4 flash ADC 200ps charge signal.

1月末までに

Frame / cooling system

frame size : total 2.75m in USA. (in Japan : 3m)

TLU / Seabas関係

atlaspc9:~/work/FNALtestbeam2019/

install ISE to work Seabas

ISE is like vivado (newer one -> FPGA). ISE is old one.

download Xilinx_ISE_DS_Lin_14.7_1015_1.tar at Xilinx. extend it at /opt/Xilinx/Downloads

$ ./xsetup

ISE Design...

NOT checkbox "cable Driver" (?)

$ source /opt/Xilinx/14.7/ISE_DS/setting64.sh

$ ise

how to compile and write firmware

FermilabTestbeamTop -> FermiLab testbeam information -> FermilabTestbeam2018 -> DAQ Software / Trigger Logic Unit (TLU) -> TLUfirmware -> how to use ISE

Lisenceによる問題でcompileできない→解決

firmwareを焼く

  • firmwareを焼く際にcable driverのreinstallによる問題→解決(library?)
  • xcf16pの方はいじらない(cancel)
  • xc5vlx50の方は,TLU_topを選択(pathを合わせること)
TLU_top
  • triggerをclockでTLUから出す場合 (dummy trigger)
    • line248:For emulationの以下3つuncomment
    • line260:For Actual Triggerに含まれるものをすべてcomment out
    • line570辺りで,どのNIMからtriggerを送るか書かれている.
  • NIMCMOSout[0][1]はSeabasのRJ45の隣のLEMO
  • それ以外はadapter boardのLEMOから出る
  • 書き換えたらcomplile & Firmware焼き

Software関係

  • edit
    • $ emacs -nw /PATH TO SOFTWARE/scripts/setup_SeabusTLU.sh
      • SEABUSDIRのpathを修正
    • $ emacs -nw /PATH TO SOFTWARE/bin/startrun
      • DATABASEDIR,XpressK7dir,XpressK7FILE,HSIO2DIRを修正
      • (TLUのrun#,XpressK7のrun#などがわかるようにするだけ)
  • dummy triggerを送る場合
    • $ source /PATH TO SOFTWARE/scripts/setup_SeabusTLU.sh
    • $ ./trigenable
    • NIMCMOS0,1に該当するLEMOからsignalが出ているか確認
MPPC関係

従来のMPPCの生存確認

(去年のLogによると,3と4は死亡,0と2は生存)

setup

  • Low Voltage : 5V(0.068uA) / -5V(0.048uA)
  • High Voltage : -55V(1uA) ; keithley2410
  • check signal from LEMO by ocsilloscope (picosope)
test result
  • MPPC0 : 2.76V(0.1uA) / -5V(0.014uA), -56V(1uA), high LV current
  • MPPC1 : 5V() / -5V(), -56V(1uA), NO signal
  • MPPC2 : 5V(0.068uA) / -5V(0.048uA), -55V(1uA), ALIVE
  • MPPC3 : 1.02V(0.1uA) / -5V(0.009uA), -58V(), high LV current
  • MPPC4 : 1.24V(0.1uA) / -5V(0.009uA), ---V(---), high LV current
make new board and check signal
  • Drawing Repository -> KEK -> SciMPPCtrigger -> MPPCReadOut _v5 -> MPPCReadOut _revC.pdf ( https://cernbox.cern.ch/index.php/s/MiwFjlIDetdQ8BC?path=%2FKEK%2FSciMPPCtrigger%2FMPPCReadOut_v5#pdfviewer)
  • remove MPPC from old board and attach on new board if the board does not work.
  • check raw signals from MPPC at H1&H2 when apply HV(-55V). (attach capacitor and resistor)
    • raw signals : raise with a few mV, they are in same time, reverse signal.
    • base line of raw signal (minus amplitude) should be higher than another. base line is related to DAC/P1 resistance.
  • check signals from comparator (LM360) at H3
    • apply LV(+/- 5V)
    • signal from comp1 and from comp2 rise in same time.
    • pulse hights : ~400mV
  • check signal from AND on pad2 of MV1.
    • if you can not apply LV with +/-5V when attach AND IC, the IC would be broken.
    • pulse hight : ~200mV
  • check TTL signal from MV1 at R30,31
    • pulse hight : ~400mV
    • 0.6 us
  • check LVDS signal at DS1 pad7,8
  • check final signal at LEMO
    • pulse hight : -550mV
    • 0.6 us
    • attach 50 Ohm terminator
  • signal
  • 前回死亡したMPPCは,ANDのところが壊れたことが原因?
    • FermiにICをいくつか持っていく
  • MPPCを5つ作成(予備を含む)

threshold Level

-->see daccontrl at software

同期試験(01/31/2020)

Trigger signal

  • HSIO2 :: Seabas trigger out : CMOSout8(LEMO) -> HSIO2 trigger in : "1, J21"
  • DRS4 :: Seabas trigeer out : NIMout(LEMO) -> DRS4 trigger in : "TR0"
  • YARR :: Seabas trigger out : (RJ45) -> YARR trigger in : "portD"
Busy signal
  • HSIO2
  ※eventを見るためにはGUIの画面にてHSIO Ext 1にcheckする必要がある

Telescope

  • $ ssh rce0 -l root
  • # source setup.sh
  • # calibserver
  • open other terminal
  • $ source ~/daq/rce/scripts/setup-env.sh
  • $ calibGui
  • chose correct configs. analog scan.
  • check Key #
  • close this terminal. open other terminal
  • $ cd /PATH TO HSIO2 CONFIG/ (/home/atlasj/work/FNALtestbeam/HSIO2_FEI4/FnalPreAtKEK-20191225/rceconfig)
  • $ cosmicGui -i 192.168.1.22 (HSIO2 IP)
  • Tab -> config DUT 1-16
    • check box using Front End
  • Tab -> main
    • load config and fill Key #
    • check box of "Use Manchester Encoding"
    • File Format -> "Raw" and "ROOT"
    • Trigger Sources -> "HSIO2 Ext1", Logic -> "AND",
    • Hitbus Chips -> TA Logic -> "OR"
  • Start Run
Calibration GUI
  • Load : KEK132_133_134_141_144
  • Config Root Dir : /home/atlasj/work/HSIO2_FEI4/FnalPreAtKEK-20191225/rceconf/
  • Data Dir : /home/atlasj/work/HSIO2_FEI4/FnalPreAtKEK-20191225/data/
  • chose using FrontEnd at Config Halfstave A ( test KEK112 [quad] and KEK134 [double] and KEK141 [double] )

LGAD

  • $ wavedump -> s -> shift + p
  • TR0 @DRS4 is input signal
  • GP0 @DRS4 is output (busy)?

Comments


Edit | Attach | Watch | Print version | History: r76 | r16 < r15 < r14 < r13 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r14 - 2020-02-05 - AtlasjSilicon
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 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