1 Introduction to UniDAQ Makoto Yoshida (Osaka Univ.) MICE DAQ 2005/9/1
2 UniDAQ Unix-based DAQ system Unix-based DAQ system developed by KEK, TIT, U. Michigan, U. Minnesota in 1990s developed by KEK, TIT, U. Michigan, U. Minnesota in 1990s initiated for SSC project initiated for SSC project A lot of experience at KEK A lot of experience at KEK well documented, experts in Osaka-U and KEK well documented, experts in Osaka-U and KEK references references (Genaral) (Genaral) (for Linux) (for Linux)
3 UniDAQ (Cont.) code in C code in C High scalability; work on VxWorks, Linux, LynxOS, Sun, Dec, HP … High scalability; work on VxWorks, Linux, LynxOS, Sun, Dec, HP … Network distributed system Network distributed system Transport data via buffer manager process (NOVA daemon) Transport data via buffer manager process (NOVA daemon) Processes can be distributed among PCs on the network. Processes can be distributed among PCs on the network. An Event Builder An Event Builder Collectors for CAMAC readout (TOF etc.) and VME readout (VLPC) Collectors for CAMAC readout (TOF etc.) and VME readout (VLPC) CPUOSBus VME interface LinuxPCLinuxPCIBIT3 SunSPARCSolarisSBus SFVME-100, etc. DEC DEC station ULTRIXTURBOchannel DEC PMABV/T6000 HPHP9000HP-UXEISABIT3 HPHP9000HP-RTVMEbusonboard SGIIRISIRIXVMEbusonboard
4 NOVA buffer manager New Online VME-based data Acquisition system
5 Processes NOVA NOVA New Online VME-based data Acquisition system New Online VME-based data Acquisition system Manage event buffer (across the network) Manage event buffer (across the network) Should be running on every hosts as daemon Should be running on every hosts as daemon collector collector Readout event data from electronics Readout event data from electronics recorder recorder Record event data on disks Record event data on disks xpc xpc eXperimental Process Control eXperimental Process Control Monitor processes to be alive Monitor processes to be alive Restart the dead process automatically Restart the dead process automatically xpc checker xpc checker Monitor xpc process, and restart if dead Monitor xpc process, and restart if dead run controller run controller Generate commands to processes Generate commands to processes operator operator User interface to control data taking User interface to control data taking logbook logbook Record log Record log analyzer analyzer Fetch data from buffer, analyze and put the resultant histograms in PAW global memory Fetch data from buffer, analyze and put the resultant histograms in PAW global memory dataview dataview Display data records Display data records
6 Interaction of the processes
7 Status toolkit monitor the status of processes distributed on the network monitor the status of processes distributed on the network
8 Example of a script to start UniDAQ
9 Operator Window GUI to control data taking based on Tcl/Tk GUI to control data taking based on Tcl/Tk If Tcl/Tk is unavailable, 4 separated windows based on vanilla X is available If Tcl/Tk is unavailable, 4 separated windows based on vanilla X is available
10 Record Type Event Data Record Event Data Record Event data for each data-taking cycle Event data for each data-taking cycle Begin, Pause, Resume and End Record Begin, Pause, Resume and End Record Record only when the run state changes Record only when the run state changes Information about run parameter, time, etc. Information about run parameter, time, etc.
11 Distributed Environment
12 Summary UniDAQ is unix-based data acquisition system UniDAQ is unix-based data acquisition system Linux and the other UNIX OS are supported Linux and the other UNIX OS are supported Processes can distribute on the network Processes can distribute on the network Event data buffer managed by NOVA Event data buffer managed by NOVA Multiple collector processes can be implemented Multiple collector processes can be implemented The user should prepare the Event Builder The user should prepare the Event Builder