Difference between revisions of "NPS DAQ in Hall C"
Jump to navigation
Jump to search
(6 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
+ | Official guide to NPS DAQ at [https://hallcweb.jlab.org/wiki/index.php/Hall_C_DAQ https://hallcweb.jlab.org/wiki/index.php/Hall_C_DAQ] | ||
== Startup == | == Startup == | ||
[[File:NPS_DAQ_startCoda.png|right|VNC window after 'startCoda']] | [[File:NPS_DAQ_startCoda.png|right|VNC window after 'startCoda']] | ||
Line 63: | Line 64: | ||
* readout of TI and fadc250 | * readout of TI and fadc250 | ||
* compiles as | * compiles as | ||
− | nps_vme_master_list.so | + | nps_vme_master_list.so |
− | nps_vme_slave_list.so | + | nps_vme_slave_list.so # Uses fiber 1 for TS connection (HMS) |
+ | nps_vme_slave5_list.so # Uses fiber 5 for TS connection (NPS) | ||
+ | |||
* '''master''' configured for triggers from TSINPUTS: TS#1, TS#2 | * '''master''' configured for triggers from TSINPUTS: TS#1, TS#2 | ||
* fadc250 configuration file read from "User Configuration file" | * fadc250 configuration file read from "User Configuration file" | ||
− | * ti configuration read from "User String" | + | * ti configuration read from "User String" |
− | ** '''vtp''' - | + | ** '''vtp''' - adds VTP as slave ROC |
− | ** ''' | + | ** '''npsvmeN''', N=[2,5] - adds npsvmeN as a slave ROC |
=== ti_list.c === | === ti_list.c === | ||
Line 78: | Line 81: | ||
* '''master''' configured for triggers from TSINPUTS: TS#1, TS#2 | * '''master''' configured for triggers from TSINPUTS: TS#1, TS#2 | ||
* ti configuration read from "User String" | * ti configuration read from "User String" | ||
− | ** '''vtp''' | + | ** '''vtp''' - adds VTP as slave ROC |
− | ** ''' | + | ** '''npsvmeN''', N=[2,5] - adds npsvmeN as a slave ROC |
=== event_list.crl === | === event_list.crl === | ||
Line 119: | Line 122: | ||
=== Readout Lists, User Strings, User Config === | === Readout Lists, User Strings, User Config === | ||
− | + | This section defines the field contents for the ROC components. The '''NPS''' configuration uses the fields as shown below. The '''NPS_5crate''' configuration has the npsvtp{1,2,3,4,5} ROCs removed, with the ''vtp'' parameter removed from the '''ROL1 User String''' | |
− | + | ||
− | + | ==== npsvme1 ==== | |
+ | ROL1: /home/hccoda/nps-vme/rol/nps_vme_master_list.so | ||
+ | ROL1 User String: vtp,npsvme2,npsvme3,npsvme4,npsvme5 | ||
+ | |||
+ | ROL2: /home/hccoda/nps-vme/rol/event_list.so | ||
+ | ROL2 User String: undefined | ||
+ | |||
+ | User Config: /home/hccoda/nps-vme/cfg/nps-vme1.cfg | ||
− | ROL1: | + | ==== npsvme{2,3,4,5} ==== |
− | + | ROL1: /home/hccoda/nps-vme/rol/nps_vme_slave5_list.so | |
− | User | + | ROL1 User String: vtp |
− | + | ROL2: /home/hccoda/nps-vme/rol/event_list.so | |
+ | ROL2 User String: undefined | ||
− | + | User Config: /home/hccoda/nps-vme/cfg/nps-vme{2,3,4,5}.cfg | |
− | |||
− | |||
− | |||
− | + | ==== npsvtp{1,2,3,4,5} ==== | |
− | + | ROL1: /home/hccoda/nps-vtp/rol/nps_vtp_list.so | |
− | + | ROL1 User String: undefined | |
− | + | ||
− | nps- | + | ROL2: |
− | + | ROL2 User String: undefined | |
+ | |||
+ | User Config: /home/hccoda/nps-vtp/cfg/nps-vtp{1,2,3,4,5}.cfg | ||
== VTP uBoot configuration == | == VTP uBoot configuration == |
Latest revision as of 07:41, 7 September 2023
Official guide to NPS DAQ at https://hallcweb.jlab.org/wiki/index.php/Hall_C_DAQ
Startup
- login: coda@cdaql6 vnc: coda@cdaql6 :6
- in fresh xterm:
startCoda
- - xterms (ROCs and PEB) and RCGUI should open
- Restart the components without closing the xterms
restartStuff
- Kill all components and xterms
kcoda
Environment Setup
- The CODA environment is setup using coda_scripts
- User Defined CODA environment variables
- CODA for ROC/VTP
setenv CODA ${HOME}/coda_3.10_devel setenv CODA_SCRIPTS ${CODA}/coda_scripts
- CODA for Platform/PEB
setenv CODA ${HOME}/coda/3.10_devel setenv CODA_SCRIPTS ${HOME}/coda/coda_scripts
- CODA Session and EXPID
setenv SESSION NPS setenv EXPID NPS
- source the coda scripts setup
source ${CODA_SCRIPTS}/setupCODA3.tcsh
VME ROC
- CODA environment loaded from .tcshrc from setup script:
hccoda@nps-vme1:~/setup_nps-vme_3.10
- Other environment settings
- LINUXVME
setenv LINUXVME ${HOME}/nps-vme/linuxvme setenv LINUXVME_INC $LINUXVME/include setenv LINUXVME_LIB $LINUXVME/$MACHINE/lib setenv LINUXVME_BIN $LINUXVME/$MACHINE/bin setenv PATH ${LINUXVME_BIN}:$PATH setenv LD_LIBRARY_PATH ${LINUXVME_LIB}:${LD_LIBRARY_PATH}
VTP ROC
- CODA environment loaded from .tcshrc from setup script:
hccoda@nps-vtp1:~/setup_nps-vtp_3.10
Platform / PEB
- CODA environment loaded from .cshrc from setup script:
coda@cdaql6:~/bin/nps_coda_user_setup
- Other environment settings
setenv JAVA_HOME ${HOME}/coda/jdk1.8.0_152 setenv COOL_HOME ${HOME}/coda/cool
VME Module Configuration
FADC250 Configuration
hccoda@nps-vme2:~/nps-vme/cfg/nps-vme2.cfg
VME Readout Lists
hccoda@nps-vme2:~/nps-vme/rol/
nps_vme_list.c
- readout of TI and fadc250
- compiles as
nps_vme_master_list.so nps_vme_slave_list.so # Uses fiber 1 for TS connection (HMS) nps_vme_slave5_list.so # Uses fiber 5 for TS connection (NPS)
- master configured for triggers from TSINPUTS: TS#1, TS#2
- fadc250 configuration file read from "User Configuration file"
- ti configuration read from "User String"
- vtp - adds VTP as slave ROC
- npsvmeN, N=[2,5] - adds npsvmeN as a slave ROC
ti_list.c
- readout of TI
- compiles as
ti_master_list.so ti_slave_list.so
- master configured for triggers from TSINPUTS: TS#1, TS#2
- ti configuration read from "User String"
- vtp - adds VTP as slave ROC
- npsvmeN, N=[2,5] - adds npsvmeN as a slave ROC
event_list.crl
- Required for user events from VME ROC.
- compiles as
event_list.so
CODA Configurations
Component priorities
These must be set to ensure the correct order of ROCs for the configuration and synchronization of serial links. The pattern: Trigger Supervisor has highest priority, VME are next. VTP have the least priority.
Component | Priority |
---|---|
npsvme1 | 1210 |
npsvme2 | 1110 |
npsvme3 | 1110 |
npsvme4 | 1110 |
npsvme5 | 1110 |
npsvtp1 | 1010 |
npsvtp2 | 1010 |
npsvtp3 | 1010 |
npsvtp4 | 1010 |
npsvtp5 | 1010 |
Readout Lists, User Strings, User Config
This section defines the field contents for the ROC components. The NPS configuration uses the fields as shown below. The NPS_5crate configuration has the npsvtp{1,2,3,4,5} ROCs removed, with the vtp parameter removed from the ROL1 User String
npsvme1
ROL1: /home/hccoda/nps-vme/rol/nps_vme_master_list.so ROL1 User String: vtp,npsvme2,npsvme3,npsvme4,npsvme5
ROL2: /home/hccoda/nps-vme/rol/event_list.so ROL2 User String: undefined
User Config: /home/hccoda/nps-vme/cfg/nps-vme1.cfg
npsvme{2,3,4,5}
ROL1: /home/hccoda/nps-vme/rol/nps_vme_slave5_list.so ROL1 User String: vtp
ROL2: /home/hccoda/nps-vme/rol/event_list.so ROL2 User String: undefined
User Config: /home/hccoda/nps-vme/cfg/nps-vme{2,3,4,5}.cfg
npsvtp{1,2,3,4,5}
ROL1: /home/hccoda/nps-vtp/rol/nps_vtp_list.so ROL1 User String: undefined ROL2: ROL2 User String: undefined User Config: /home/hccoda/nps-vtp/cfg/nps-vtp{1,2,3,4,5}.cfg
VTP uBoot configuration
port | vtp |
---|---|
2001 | nps-vtp1 |
2002 | nps-vtp2 |
2003 | nps-vtp3 |
2004 | nps-vtp4 |
2005 | nps-vtp5 |
- Access to VTP boot parameters is through the NPS portserver.
telnet nps-ps1 <port>