DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1...
-
Upload
eugene-hicks -
Category
Documents
-
view
216 -
download
0
Transcript of DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1...
![Page 1: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/1.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
1
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Work supported by EU RP6 project JRA1 FutureDAQ RII3-CT-2004-506078
A Data Acquisition Backbone Core libraryJörn Adamczewski, Hans G.Essel, Nikolaus Kurz, Sergey LinevGSI, Experiment Electronics: Data Processing group
Motivation and use cases
Core design: dataflow, modules, manager object
Application plug-in mechanism
Controls and configuration interface
Status and Outlook
![Page 2: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/2.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
2
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
CBM data acquisition plan
data dispatcher
FEEdeliver time stamped
data
CNetcollect data into buffers
Detector Detector Detector
collect
~50000 FEE chips
event dispatcher
switching networkBNetsort time stamped data
~1000 links a 1 GB/sec
HNethigh level selection
to high level computing
and archiving~1 GB/sec Output
processing
PNetprocess events
level 1&2 selection
subfarm subfarm subfarm ~100 subfarms
~100 nodes per subfarm
~10 dispatchers → subfarm
~1000 collectors
~1000 active buffers
TNettime distribution
W.F.J.Müller, 2004
![Page 3: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/3.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
4
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Use case: DAQ m x n topology
Tri
gg
er
Rea
do
ut
A
DC
A
DC
A
DC
A
DC
Tri
gg
er
Rea
do
ut
A
DC
A
DC
A
DC
A
DC
Tri
gg
er
Rea
do
ut
A
DC
A
DC
A
DC
A
DC
Tri
gg
er
Rea
do
ut
A
DC
A
DC
A
DC
A
DC
Network
Eventbuilder Eventbuilder
Detector Detector Detector Detector
MBS Crates
MultiBranchSystemGSI Standard DAQ(~100 installations)
Triggerbus
DABC DABC DABC DABC
DABC Eventbuilder DABC Eventbuilder
non MBS FE
![Page 4: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/4.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
5
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Motivation for DABC
Use cases:• Detector tests• FE equipment tests• Data transport tests• Time distribution tests• Switched event building• MBS event builder
Requirements:• build events over fast networks• triggered or self-triggered front-ends• time stamped data streams• data flow control (to front-ends)• connect (nearly) any front-ends• interface for application plug-in code• connect MBS readout or collector nodes• interface for several controls frameworks
=> DABC for CBM DAQ testing and as future „general purpose“ DAQ system
CBM
GSI
![Page 5: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/5.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
6
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
datainput
sortingtaggingfilteranalysis
datainput
sortingtaggingfilteranalysis
IB
PC
PC
GE
analysisarchive
archive
PC
GE: Gigabit EthernetIB: InfiniBand
frontendDataCombinerr
frontendother
frontendReadout scheduler
scheduler
DABC
DABC design: functional overview
DABC data flow
![Page 6: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/6.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
7
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
inputeventbuilder
input
eventbuilder
GE
GE: Gigabit Ethernet
MBS frontend
MBS frontendsender
sender
TCP
DABC structure
Example: Network event building for MBS
Eve
nt g
ener
ato
r
TCP
No common trigger for demo
LynxOS
Linux PCs
x86-7
x86g-4
lxi013
lxi014
lxi015
lxi016
controller
lxg0517GUI
DIM, Java
![Page 7: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/7.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
8
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Device
Transport
DABC Module
portFormatter
File
Transport
Device
MBS
port
Example: DABC with MBS plugins
DABC Moduleport
Senderport
DABC Module
portReceiverport
DABC Module
portEventBuilderport
port
port
Second node
Second node
Local or over network
![Page 8: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/8.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
9
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Data flow engine: Software objects and threads
DABC Module
port
port
DABC Module
port
port
process process
Device
Transport
Device
Transport
Network
DABC Manager
locally (by reference)
A module processes data of one or several data streams.Data streams propagate through ports, which are connected by transports and devices
Central data managerMemory pools BufferqueueBufferqueue
separate threads
![Page 9: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/9.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
10
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Object organisation and Plug-in mechanism
DABC ManagerObject registryControls
interface
SocketDevice
Commands ParametersModulesDevices Plugins
Memory Pools
XDAQ controlsmonitor
xml-configurationset up
Event builder modules
user modules..
Bnet modules
MBSDevice
connect
createBNet-Plugin
configuration
Application Plugins
configuration
usercommands define
![Page 10: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/10.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
11
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Controls interface: Generic finite state machine
DoConfigureDoEnable DoStart
DoStop
DoHaltDoHalt
DoHaltF X
H C E R
DoError
• State machine is defined by controls interface of DABC core
• ApplicationPlugins implement state transition actions („user code“)
• Nodes in B-net may set up state machine hierarchy:(e.g. 1 master node, n worker nodes)
![Page 11: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/11.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
13
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Controls with XDAQ runtime environment
XDAQ Executive (process, addressspace)
Web server (SOAP)
SOAP client:Java GUI
Infospace*
XDAQ Application
Modules command queue
DABC Core
DIM server
State machine
Web browser
GRIDCC
* Infospace: remotely accessible parameters
DABC core is not depending on XDAQ environment!
framework for CMS, see http://xdaqwiki.cern.ch
DIM client:Java GUILabView GUIEPICS GUI
following screenshots of first implementation
![Page 12: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/12.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
14
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Stop DABC
Start MBS
![Page 13: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/13.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
15
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Full parameter table of DABC and MBSParameters can be set here, if not locked
![Page 14: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/14.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
16
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Commands of DABC and MBS
Output of DABC and MBS
![Page 15: DABCDABC D ata A cquisition B ackbone C ore 10.3.08 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev 1 Work supported by EU RP6 project.](https://reader036.fdocuments.in/reader036/viewer/2022062518/5697bf911a28abf838c8e894/html5/thumbnails/15.jpg)
10.3.08J.Adamczewski, H.G.Essel, N.Kurz, S.Linev
17
DABC
Data Acquisition Backbone Core http://wiki.gsi.de/DABC
Summary and Outlook
Achieved
• Core infrastructure
• Data flow engine
• XDAQ runtime environment
• Generic Java GUI
• PCI(e) support
• MBS event building
• Programming Interface definitions
Todo
• Controls, GUI c't
• Data formats
• Combiner / time sort
• Programming Interface implementation c't
• Configuration DB
• Packaging and deployment
• Documentation
DABC is a new „general purpose“ DAQ system
Network performance tests: see next talk (S.Linev)