15
10.3.08 J.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 library Jörn Adamczewski , Hans G.Essel, Nikolaus Kurz, Sergey Linev GSI, 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

Work supported by EU RP6 project JRA1 FutureDAQ RII3-CT-2004-506078

  • Upload
    mihaly

  • View
    16

  • Download
    0

Embed Size (px)

DESCRIPTION

A D ata A cquisition B ackbone C ore library Jörn Adamczewski , Hans G.Essel, Nikolaus Kurz, Sergey Linev GSI, Experiment Electronics: Data Processing group. Motivation and use cases Core design: dataflow, modules, manager object Application plug-in mechanism - PowerPoint PPT Presentation

Citation preview

Page 1: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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: Work supported by  EU RP6 project JRA1 FutureDAQ  RII3-CT-2004-506078

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)