Difference between revisions of "HCAL DAQ Software Setup"
m (→= mpv904) |
m (→readout lists) |
||
(10 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
|+ Network and ROC configuration | |+ Network and ROC configuration | ||
|- | |- | ||
− | ! Location !! | + | ! |
+ | !colspan="2"|VME | ||
+ | !colspan="4"|VTP | ||
+ | |- | ||
+ | ! Location !! Hostname !! ROC Name !! Hostname !! ROC Name !! 10G Hostname !! Serial Console(currently at .224) | ||
|- | |- | ||
− | | Bottom || intelsbshcal1 || hcalROC16 || hcalvtp1 || | + | | Bottom || intelsbshcal1 || hcalROC16 || hcalvtp1 || hcalvtp1ROC28 || hcalvtp1-s1 || 2003 |
|- | |- | ||
− | | Top || intelsbshcal2 || hcalROC17 || hcalvtp2 || | + | | Top || intelsbshcal2 || hcalROC17 || hcalvtp2 || hcalvtp2ROC29 || hcalvtp2-s2 || 2004 |
|} | |} | ||
Line 62: | Line 66: | ||
Or forced build (like '''make clean;make''', but shorter) | Or forced build (like '''make clean;make''', but shorter) | ||
make -B | make -B | ||
+ | |||
+ | The repo for these is [https://github.com/JeffersonLab/sbsrols/tree/hcal hosted at github]. | ||
=== aux libraries/programs === | === aux libraries/programs === | ||
Some libraries and programs specific to the HCAL DAQ are found in here | Some libraries and programs specific to the HCAL DAQ are found in here | ||
${HOME}/linuxvme/ | ${HOME}/linuxvme/ | ||
+ | If you make updates, please remember to install the library in order for it to be used with the readout list or other external programs using $LINUXVME | ||
+ | make install | ||
==== f1tdc-v1 ==== | ==== f1tdc-v1 ==== | ||
Library to support the configuration and readout of the JLAB V1 F1TDC module. | Library to support the configuration and readout of the JLAB V1 F1TDC module. | ||
f1tdc-v1/ | f1tdc-v1/ | ||
+ | |||
+ | test/f1tdcLibTest # program to test initialization of f1tdcs in crate. | ||
==== hcal ==== | ==== hcal ==== | ||
Line 78: | Line 88: | ||
Library to Configure and set DAC output levels to control detector thresholds. | Library to Configure and set DAC output levels to control detector thresholds. | ||
mpv904/ | mpv904/ | ||
+ | |||
+ | ==== other helpful programs ==== | ||
+ | |||
+ | ===== fadc250 ===== | ||
+ | ${HOME}/linuxvme/fadc-HallB-utils | ||
+ | faConfigTest # Test if specified config file will pass correctly through the configuration library | ||
+ | fadc250peds # Sample the channel inputs randomly and output stats for pedestal calibration | ||
+ | |||
+ | firmware/ | ||
+ | fadcFirmwareUpdate # update firmware for a single FADC | ||
+ | fadcGFirmwareUpdate # update firmware for all FADC in crate | ||
== VTP == | == VTP == | ||
+ | All libraries and programs relevant for the VTP are in | ||
+ | ${HOME}/vtp | ||
+ | You should expect to find binaries that are compiled for ARCH=armv7l. When logged in as sbs-onl | ||
+ | LINUXVME=${HOME}/vtp | ||
+ | i.e. | ||
+ | LINUXVME_INC=${HOME}/vtp/include | ||
+ | LINUXVME_LIB=${HOME}/vtp/Linux-armv7l/lib | ||
− | === | + | |
+ | === configuration files === | ||
+ | |||
+ | vtp/cfg/ | ||
+ | hcalvtp1.cnf | ||
+ | hcalvtp2.cnf | ||
+ | |||
+ | Example config | ||
+ | |||
+ | VTP_CRATE hcalvtp2 | ||
+ | VTP_FIRMWARE_Z7 fe_vtp_vxs_readout_z7_nov16.bin | ||
+ | VTP_FIRMWARE_V7 fe_vtp_vxs_readout_v7_aug8.bin | ||
+ | |||
+ | # slot: 10 13 9 14 8 15 7 16 6 17 5 18 4 19 3 20 | ||
+ | # payload: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | ||
+ | VTP_PAYLOAD_EN 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 | ||
+ | |||
+ | # 10GB connection info (hcalvtp2-s2) | ||
+ | VTP_ROC_IPADDR 129 57 192 120 | ||
+ | VTP_ROC_SUBNET 255 255 255 0 | ||
+ | VTP_ROC_GATEWAY 129 57 192 1 | ||
+ | VTP_ROC_MAC 0xCE 0xBA 0xF0 0x03 0x00 0xB9 | ||
+ | |||
+ | # PEB Connection info (will be overwritten in readout list) | ||
+ | VTP_ROC_ROCID 29 | ||
+ | VTP_ROC_DEST_IP 8139C066 | ||
+ | VTP_ROC_DEST_PORT 46200 | ||
+ | |||
+ | VTP_CRATE end | ||
=== readout lists === | === readout lists === | ||
+ | |||
+ | vtp/rol/ | ||
+ | vtp_faro.c # VTP Hardware ROC for fa250 readout | ||
=== aux libraries === | === aux libraries === | ||
+ | |||
+ | vtp/vtp # Library to support configuration of VTP and its hardware ROC | ||
+ | vtp/dalma # Library to convert standard output to daLogMsg for remote monitorring. |
Latest revision as of 11:34, 2 June 2022
VME | VTP | |||||
---|---|---|---|---|---|---|
Location | Hostname | ROC Name | Hostname | ROC Name | 10G Hostname | Serial Console(currently at .224) |
Bottom | intelsbshcal1 | hcalROC16 | hcalvtp1 | hcalvtp1ROC28 | hcalvtp1-s1 | 2003 |
Top | intelsbshcal2 | hcalROC17 | hcalvtp2 | hcalvtp2ROC29 | hcalvtp2-s2 | 2004 |
Contents
login / ROC environment
The login environment (bash) for sbs-onl is shared for intelsbshcal1, intelsbshcal2. hcalvtp1, hcalvtp2.
Home directory
The home directory is linked to the hcal subdirectory of the sbs-onl home directory on adaqfs. That is:
/home/sbs-onl -> /adaqfs/home/sbs-onl/hcal
Environment
Below we show the main variables that are critical to run the DAQ. Others important ones will to be derived from these.
CODA = /adaqfs/home/sbs-onl/coda/3.10_devel CODA_SCRIPTS = /home/sbs-onl/coda_scripts LINUXVME = /home/sbs-onl/linuxvme SESSION = hcal EXPID = SBSDAQ FADC250_PARAMS = ${HOME}/cfg
VME
Configuration for the VME modules, readout lists for the CODA ROC, and auxiliary libraries specific to the modules in these crates.
configuration files
Configuration files used by the DAQ (ROC, or other programs) are in here
${HOME}/cfg/
f1tdc
Configuration for the f1tdc modules in hcal2
f1tdc/hcal_f1tdc_3125.cfg
fadc250
Configuration for the fadc250 modules in hcal1 and hcal2 (with and without Trigger supervisor)
fadc250/hcal_ts.cnf fadc250/hcal.cnf
mpv904
Configuration for the mpv904 DAC for threshold control
mpv904/mpv904_DAC_Voltage_Set_Values.txt
readout lists
Readout lists used for standalone (hcal1 + hcal2) or in trigger supervisor mode. There are located in
${HOME}/rol
hcal1_list.c hcal2_list.c
They are built using the Makefile
make
Or forced build (like make clean;make, but shorter)
make -B
The repo for these is hosted at github.
aux libraries/programs
Some libraries and programs specific to the HCAL DAQ are found in here
${HOME}/linuxvme/
If you make updates, please remember to install the library in order for it to be used with the readout list or other external programs using $LINUXVME
make install
f1tdc-v1
Library to support the configuration and readout of the JLAB V1 F1TDC module.
f1tdc-v1/ test/f1tdcLibTest # program to test initialization of f1tdcs in crate.
hcal
Library to set output levels on the TI output ports. I think this is used for an LED pulser?
hcal_pulser/
mpv904
Library to Configure and set DAC output levels to control detector thresholds.
mpv904/
other helpful programs
fadc250
${HOME}/linuxvme/fadc-HallB-utils faConfigTest # Test if specified config file will pass correctly through the configuration library fadc250peds # Sample the channel inputs randomly and output stats for pedestal calibration
firmware/ fadcFirmwareUpdate # update firmware for a single FADC fadcGFirmwareUpdate # update firmware for all FADC in crate
VTP
All libraries and programs relevant for the VTP are in
${HOME}/vtp
You should expect to find binaries that are compiled for ARCH=armv7l. When logged in as sbs-onl
LINUXVME=${HOME}/vtp
i.e.
LINUXVME_INC=${HOME}/vtp/include LINUXVME_LIB=${HOME}/vtp/Linux-armv7l/lib
configuration files
vtp/cfg/ hcalvtp1.cnf hcalvtp2.cnf
Example config
VTP_CRATE hcalvtp2 VTP_FIRMWARE_Z7 fe_vtp_vxs_readout_z7_nov16.bin VTP_FIRMWARE_V7 fe_vtp_vxs_readout_v7_aug8.bin # slot: 10 13 9 14 8 15 7 16 6 17 5 18 4 19 3 20 # payload: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 VTP_PAYLOAD_EN 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 # 10GB connection info (hcalvtp2-s2) VTP_ROC_IPADDR 129 57 192 120 VTP_ROC_SUBNET 255 255 255 0 VTP_ROC_GATEWAY 129 57 192 1 VTP_ROC_MAC 0xCE 0xBA 0xF0 0x03 0x00 0xB9 # PEB Connection info (will be overwritten in readout list) VTP_ROC_ROCID 29 VTP_ROC_DEST_IP 8139C066 VTP_ROC_DEST_PORT 46200 VTP_CRATE end
readout lists
vtp/rol/ vtp_faro.c # VTP Hardware ROC for fa250 readout
aux libraries
vtp/vtp # Library to support configuration of VTP and its hardware ROC vtp/dalma # Library to convert standard output to daLogMsg for remote monitorring.