1 / 36

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

D ata A cquisition B ackbone C ore 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

Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Data Acquisition Backbone Core Jö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 Presentation: DABC live demo Work supported by EU RP6 project JRA1 FutureDAQ RII3-CT-2004-506078 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  2. Detector Detector Detector FEE deliver time stamped data ~50000 FEE chips ~1000 collectors CNet collect data into buffers collect ~1000 active buffers data dispatcher TNet time distribution ~1000 links a 1 GB/sec switching network ~10 dispatchers →subfarm BNet sort time stamped data event dispatcher subfarm subfarm subfarm PNet process events level 1&2 selection ~100 subfarms ~100 nodes per subfarm processing HNet high level selection to high level computing and archiving ~1 GB/sec Output CBM data acquisition plan W.F.J.Müller, 2004 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  3. GE switch CBM use case: Frontend components test FE Front end board: sampling ADCs (4*4), clock distribution FE FE: Frontend board DC: Data combiner board ABB: Active Buffer board GE: Gigabit Ethernet IB: InfiniBand MBS: MultiBranchSystem 2.5 GBit/sbi-directional (optical) link: data, clock *8 DCB Data collector boards, clock distribution to FE DC 2.5 GBit/s data links *4 Gigabit Ethernet ABB ABB DABC PCIe support PCIe PCIe PC PC 8-20 PCs dual quad Active Buffer Board*: PCI express card MBS bidirectional event building • A.Kugel, G.Marcus, W.Gao, • Mannheim University Informatics V IB switch DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  4. CBM GSI 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 J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  5. DABC design: functional overview DABC PC datainput sorting tagging filter analysis frontendDataCombinerr frontendReadout scheduler GE frontendother IB PC PC analysis archive scheduler sorting tagging filter analysis datainput archive GE: Gigabit Ethernet IB: InfiniBand • DABC data flow J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  6. separate threads Data flow engine: Software objects and threads (1) A module processes data of one or several data streams. Data streams propagate through ports, which are connected bytransportsand devices DABC Manager DABC Module Bufferqueue port port process Bufferqueue Transport Transport Central data managerMemory pools Device Device PCIboard File J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  7. separate threads Data flow engine: Software objects and threads (2) A module processes data of one or several data streams. Data streams propagate through ports, which are connected bytransportsand devices DABC Manager DABC Module DABC Module port port process process port port Central data managerMemory pools Bufferqueue Bufferqueue locally (by reference) Transport Transport Network Device Device J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  8. create BNet-Plugin Bnet modules connect XDAQ controls monitor Event builder modules Application Plugins user modules.. user commands MBSDevice define configuration set up xml-configuration configuration Object organisation and Plug-in mechanism DABC Manager Controls interface Object registry Memory Pools Plugins Devices Modules Commands Parameters SocketDevice J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  9. DoError DoHalt F X H C E R DoStop DoEnable DoStart DoConfigure DoHalt DoHalt Controls interface: Generic finite state machine • 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) J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  10. Controls with XDAQ runtime environment DABC core decoupled from XDAQ environment! XDAQ Executive (process, addressspace) Web browser Web server (SOAP) SOAP client: Java GUI DIM server DIM client: Java GUI LabView GUI EPICS GUI XDAQ Application State machine Infospace* DABC Core Modules command queue GRIDCC * Infospace: remotely accessible parameters • MBS connection J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  11. 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 • Event building • Programming Interface implementation c't • Configuration DB • Packaging and deployment • Documentation J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  12. DEMO with MBS • MBS upgrade for DABC • DABC plugins • Control standard stand alone MBS with DABC GUI • Control MBS frontends with DABC event builder J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  13. MBS Upgrade for DABC event builder • General upgrades • Large buffers (up to now 32K limit) in MBS. • Large buffers in LMD files. • Remote control of MBS via DIM by DABC Java GUI • DABC specific mode • MBS transport in DABC mode blocks, if no DABC is connected. • MBS transport sends variable sized buffers. • Using large buffers and one buffer per stream: no event spanning. • New LMD file format • No buffer structure. • File header, data elements, index table (random access). • No size limit ( > 2 GB). • Supported by event API. • To do • Event server in DABC • MBS application in DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  14. GUI Demo example: Network event building for MBS Linux PCs lxi013 LynxOS lxi015 TCP MBS frontend input eventbuilder x86-7 sender MBS frontend x86g-4 DIM, Java GE lxg0517 lxi016 lxi014 Event generator sender eventbuilder controller TCP input No commen trigger for demo GE: Gigabit Ethernet • DABC structure J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  15. Demo example: DABC side, MBS plugins MBS Second node Device Transport DABC Module DABC Module port port port port Sender Formatter port Local or over network DABC Module DABC Module port Transport port port port Receiver EventBuilder port Device Second node File J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  16. Demo example: DABC side, MBS plugins DABC Module DABC Device DABC Module MbsFrontend MbsFrontend ()Create commands Register parameters CreateTransport (port) Create MbsRead MbsEventBuilder MbsEventBuilder ()Create commands Register parameters Create ports (1 x input, 1x output) MainLoop () Wait input port 1 Get empty buffer Build event from input list Put event to buffer Put buffer to port (file store) ~MbsEventBuilder () MbsFormatter MbsFormatter ()Create commands Register parameters Create ports (1 x input, 1x output) MainLoop () Wait input port 1 Get empty buffer Loop: Add subevent ref. to buffer Size > max? Put buffer to port Return EndLoop ~MbsFormatter () DABC Transport MbsRead MbsRead (port)Connect MBS transport Register port GetBufferSize () Return buffer size Read (buffer) Read header Read data Return ~MbsRead ()Disconnect MBS Thread Thread Thread J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  17. Emergency Just in case the DEMO does not work! J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  18. Launch MBS J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  19. Startup and configure MBS MBS nodes and tasks MBS rate meters J.Adamczewski, H.G.Essel, N.Kurz, S.Linev MBS DIM servers

  20. Start event generator starts acquisition MBS nodes and tasks running J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  21. Set MBS as DABC client J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  22. DABC Launcher MBS stops and waits for DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  23. Launch DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  24. Configure and enable DABC Rates of DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev DABC DIM servers

  25. Start DABC More rates of DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  26. Stop MBS J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  27. Start MBS Stop DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  28. Configure and enable DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  29. Start DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  30. J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  31. Commands of DABC and MBS Output of DABC and MBS J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  32. Full parameter table of DABC and MBS Parameters can be set here, if not locked J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  33. Shut down DABC J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  34. Shut down MBS J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  35. Shut down MBS servers J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

  36. All down! J.Adamczewski, H.G.Essel, N.Kurz, S.Linev

More Related