1. Introduction. GANIL proposal for software architecture of the GET system. Authors : Frédéric Saillant, Bruno Raine, GANIL

Similar documents
Development. Igor Sheviakov Manfred Zimmer Peter Göttlicher Qingqing Xia. AGIPD Meeting April, 2014

Trigger & DAQ. Ryan Rivera 8/03/2015. Mu2e

COMP5426 Parallel and Distributed Computing. Distributed Systems: Client/Server and Clusters

What is LOG Storm and what is it useful for?

How To Improve The Ganil Control System

Event Logging and Distribution for the BaBar Online System

A General Framework for Tracking Objects in a Multi-Camera Environment

The new frontier of the DATA acquisition using 1 and 10 Gb/s Ethernet links. Filippo Costa on behalf of the ALICE DAQ group

Architectural Overview

AutoMate BPA Server 10 Installation Guide

SCADA Questions and Answers

TestManager Administration Guide

SPPA-T3000 Control System The Benchmark in Controls

Using Integrated Lights-Out in a VMware ESX environment

BarTender Integration Methods. Integrating BarTender s Printing and Design Functionality with Your Custom Application WHITE PAPER

How To Develop An Iterio Data Acquisition System For A Frustreo (Farc) (Iterio) (Fcfc) (For Aterio (Fpc) (Orterio).Org) (Ater

Your remote sites at your fingertips?

Rotorcraft Health Management System (RHMS)

Off-the-shelf Packaged Software Systems And Custom Software Analysis By Gamal Balady MASS Group, Inc.

Synergy Controller Cloud Storage Features and Benefits

WHAT IS SCADA? A. Daneels, CERN, Geneva, Switzerland W.Salter, CERN, Geneva, Switzerland. Abstract 2 ARCHITECTURE. 2.1 Hardware Architecture

Printer Management Software

Base One's Rich Client Architecture

LLRF. Digital RF Stabilization System

Cloud-based Data Logging, Monitoring and Analysis

Software INTERACT. MachineLogic. The Shortest Distance Between Man and Machine

Lesson 6: 6 EXAMPLES OF EMBEDDED SYSTEMS. Chapter-1L06: "Embedded Systems - ", Raj Kamal, Publs.: McGraw-Hill Education

Installing and Configuring Windows 7 Client

CONDIS. IT Service Management and CMDB

11.1. Performance Monitoring

Software Development Kit (SDK) Technical Overview and Specifications

Running a Program on an AVD

HP Operations Agent for NonStop Software Improves the Management of Large and Cross-platform Enterprise Solutions

NETWORK ENABLED EQUIPMENT MONITOR

RATIONALIZING THE MULTI-TOOL ENVIRONMENT

AdminToys Suite. Installation & Setup Guide

Core Solutions of Microsoft Lync Server 2013

SIPAC. Signals and Data Identification, Processing, Analysis, and Classification

OpenScape Voice V8 Application Developers Manual. Programming Guide A31003-H8080-R

Web based monitoring in the CMS experiment at CERN

1 Download & Installation Usernames and... Passwords

Product Development Flow Including Model- Based Design and System-Level Functional Verification

Course Outline. Course 20336B: Core Solutions of Microsoft Lync Server Duration: 5 Days

Premium Server Client Software

Course Outline. Core Solutions of Microsoft Lync Server 2013 Course 20336B: 5 days Instructor Led. About this Course.

ING TECHNICAL SPECIFICATION DATA ACQUISITION SYSTEM INTERFACE VERSION DATE AUTHOR

Enhanced Diagnostics Improve Performance, Configurability, and Usability

F2F Storage Facility Monitoring System and Software Integration

Synergy Controller Cloud Storage Features and Benefits

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service

Implementing and Managing Microsoft Exchange Server 2003

EUROPEAN ORGANIZATION FOR NUCLEAR RESEARCH CERN ACCELERATORS AND TECHNOLOGY SECTOR A REMOTE TRACING FACILITY FOR DISTRIBUTED SYSTEMS

How To Install Linux Titan

UNLOCK YOUR IEC TESTING EXCELLENCE

Web Analytics Understand your web visitors without web logs or page tags and keep all your data inside your firewall.

Maruleng Local Municipality

The Automatic HTTP Requests Logging and Replaying Subsystem for CMS Plone

Horst Görtz Institute for IT-Security

IR-PRO IR-PRO. Operation Guide. Professional Infrared Code Capture System

Technical White Paper BlackBerry Enterprise Server

Integrated Building Management and Security System. Building Automation & Security.

7a. System-on-chip design and prototyping platforms

CARRIOTS TECHNICAL PRESENTATION

CA ARCserve and CA XOsoft r12.5 Best Practices for protecting Microsoft SQL Server

Mellanox Academy Online Training (E-learning)

TABLE OF CONTENT. Page 2 of 9 INTERNET FIREWALL POLICY

TotalChrom. Chromatography Data Systems. Streamlining your laboratory workflow

Course Syllabus. Microsoft Dynamics GP Installation & Configuration. Key Data. Introduction. Audience. At Course Completion

SICAM PAS - the Key to Success Power Automation compliant with IEC and your existing system

Remote control of CAN-based industrial equipment using Internet technologies

Implementing Microsoft Windows 2000 Clustering

Echtzeittesten mit MathWorks leicht gemacht Simulink Real-Time Tobias Kuschmider Applikationsingenieur

Data Validation and Data Management Solutions

Example - Barracuda Network Access Client Configuration

Automated Data Acquisition & Analysis. Revolutionize Validation Testing & Launch With Confidence

zenterprise The Ideal Platform For Smarter Computing Eliminating Redundant Software

Core Solutions of Microsoft Lync Server 2013

Package Contents. D-Link DSN-3200/3400 Installation Guide. DSN-3200/3400 xstack Storage Area Network (SAN) Array. CD-ROM with User Guide.

Siemens and National Instruments Deliver Integrated Automation and Measurement Solutions

SCADA/HMI MOVICON TRAINING COURSE PROGRAM

Solar energy e-learning laboratory - Remote experimentation over the Internet

Configuring PROFINET

HP OpenView Storage Data Protector

Cisco ROSA Video Service Manager (VSM) Version 05.03

CMS Tracker module / hybrid tests and DAQ development for the HL-LHC

How To Understand The Architecture Of An Ulteo Virtual Desktop Server Farm

Configuring and Troubleshooting Internet Information Services in Windows Server 2008

Operating system Dr. Shroouq J.

Highly Available Mobile Services Infrastructure Using Oracle Berkeley DB

Run Control and Monitor System for the CMS Experiment

Plant automation and telecontrol in one system. SIMATIC PCS 7 TeleControl SIMATIC PCS 7. Answers for industry.

Cisco Application Networking Manager Version 2.0

Connecting to the network

A J2EE based server for Muon Spectrometer Alignment monitoring in the ATLAS detector Journal of Physics: Conference Series

S7 for Windows S7-300/400

SNMP-1000 Intelligent SNMP/HTTP System Manager Features Introduction Web-enabled, No Driver Needed Powerful yet Easy to Use

SAN Conceptual and Design Basics

Course Syllabus. Implementing and Managing Microsoft Exchange Server Key Data. Audience. Prerequisites

Design and Development of SMS Based Wireless Home Appliance Control and Security System

Transcription:

GANIL proposal for software architecture of the GET system Authors : Frédéric Saillant, Bruno Raine, GANIL 1. Introduction The aim of this document is to describe the general architecture of the software of the data acquisition system for the GET project and to define the different components of the system. The objective of the task is to provide a data acquisition software, composed of tools usable from the debugging of boards by hardware engineers to the whole data acquisition system. It is important that the same tools be used during the development phase and to build the final system. As the different boards of the system will be developed in different laboratories, the software delivered will have to be easily configurable to be adapted by the different teams. As this electronic will have to be used in different laboratories, a particular attention will be taken in defining the frontier and interfaces between the GET system and local data acquisition systems of different laboratories (GANIL, MSU, GSI, ). The GET software DAQ system has basically 4 main components : Slow which is in charge of setting up and monitoring the front end electronics (FEE) : AGET ASICs, ASAD boards, boards, INBO, MUTANT and BEM. Run whose the main purpose is to control and monitor the software DAQ components. It coordinates the several activities necessary to put the GET system and its data acquisition software into operational state and to monitor it. Data Flow which concerns all the elements to process the data flow which is coming from the detectors up to the data storage or to DAQ systems of different accelerator laboratories. Experiment data base which contains all the description of the system MUTA NT Slow Ethernet switch Data base PC Farm Run Data Flow Figure 1 : General architecture

2. Slow Slow is in charge of setting up and monitoring the electronics : AGET ASICs, ASAD boards, boards, INBO, MUTANT and BEM. The Slow system will be designed with a client/server approach. It will mainly consist in a Slow Core (SCC) communicating on one side with the different boards and on the other side with a graphical user interface which will behave as a client of the Slow Core. 2.1.Slow Core The main functionalities Slow has to provide are : define which electronic boards are present in the system initialize the different boards with correct values save all the setup parameters of the whole electronics or a part of the electronics restore a previously saved setup monitor some key parameters of the boards (temperatures ) handle error/alarm events and pass them to the Run accept some basic commands from the Run (setup, go, stop, get state ) From the GANIL point of view, the communications between the Slow Core and its different interlocutors (external graphical interface, embedded software, run control, ) could be implemented with the SOAP/XML network protocol and a WSDL (Web Service Description Language) interface. The architecture of the Slow Core could be designed in such a way that it will be reusable in other projects. 2.2.User interface A graphical user interface will be provided to access the functionalities of the slow control core. Several levels of interface have to be provided: A basic level which gives access to registers of the boards. This is very useful during the development phase of electronic boards and for debugging during exploitation of the system. An expert level, for access to some parameters which have to be accessed only by specialists. A user level giving access only to needed parameters to configure an experiment. 2.3.Embedded software Having in mind to put as much intelligence as possible inside the electronics, boards containing a Xilinx Virtex FPGA with a PowerPC core will embed a network command server which provides advanced network services (TCP/IP, HTTP, SOAP ). This command server will have to provide very basic accesses to the individual registers of the hardware to enable easy debugging of the boards. More sophisticated functionalities will be implemented to allow an object approach of the application. GANIL team proposes to use the ENX command server designed for the AGATA project (see http://enx.in2p3.fr). This server provides basic access to registers with a well defined interface using

SOAP protocol. The interface with hardware is made by an intermediate driver level, which can be dynamically loaded by using shared libraries. The "special function" enables to enlarge functionalities as needed for high level access. This software has been written in ADA. The drivers can be developed in ADA or C++. 3. Run The Run has the main purpose to control and monitor the software DAQ components. It coordinates the several activities necessary to put the GET system and its data acquisition software into operational state. Actions like initialization, setup, start and stop of the data acquisition are performed by the operator through the Run system. It interacts with the Slow system in order to assure the correct configuration and setup of the electronic devices, before data taking is started. It also provides the monitoring of the acquisition, error report and logging capabilities. The main tasks are outlined here : configure the DAQ software system for a run by selecting data flow active components save/restore a configuration basic commands to control all the active components (setup, start, stop ) monitor the DAQ (status, data rates ) handle error/info messages log book As the Slow, the Run system will be designed with a client/server approach. It will also consist in a Run Core (RCC) communicating on one side with the data flow active components and the Slow Core, on the other side with a client graphical user interface. Whenever it will be possible the communications will be implemented with the SOAP/XML protocol and WSDL interface. It is proposed that the RCC will be designed on the schematic of the current one being developed at GANIL in a general purpose way. Msg logger Main manager IM Slow Core S O A P Topology Save/Load IM Narval Subsyste m XML Figure 2 : Run general view

This Run is designed to associate and control parts of DAQ which have been designed by different partners and do not support the same set of commands, communication protocols, etc For this purpose, it is designed around the concept of "Instrument Managers". The Instrument Managers allow to remote control and monitor the DAQ elements called the instruments. Each Instrument Manager controls a unique instrument. The Instrument Manager performs the actual communication with an instrument, thus acting as a protocol adapter that implements the instrument specific protocol to access its functions and read its status. A top Manager coordinates the whole system. As the DAQ elements are linked together by data flow links, the Instrument Managers must be organized in the same way. The identification of the instruments and the data flow relationships between them constitutes the topology of the DAQ system. This topology can be described thanks to a set of Web services and an available graphical user interface which uses these Web services. The topology can also be saved on disk in order to be reloaded at any time. For this purpose a description language based on the XML standard has been developed by GANIL. The Instrument Managers identified in the GET project are : Slow Core A Narval subsystem The Message Logger also receives all the information/error messages generated by the instruments or by the Run Core itself. It allows to log them on a disk file with an XML format. The Log4cxx package is used to handle these messages. All the messages generated by RCC are logged with Log4cxx. 4. Data flow The goal is to process the data flow which is coming from the detectors up to the data storage. Data sources are the detectors after their front-end electronics (ASAD boards). The ASAD outputs are collected by the boards. Then all data coming out from the boards are merged together thanks to an Event Builder taking into account the physics correlations provided by the MUTANT board. Considering the large data rate, the event builder can provide a level 3 trigger to reduce data. In this case, it can be implemented in a computer farm, depending on the power needed for filtering. The distribution of parts of event from Cobo boards will be made by using time slice principle, so that a computer will receive all parts of a same event. At the end of the chain, data have to be provided to the physicists in an understandable and userfriendly way thanks to a Data Format library, and to be stored on a large disk array or to be sent to specific DAQ of different accelerator rooms. The data flow can be based on the Narval data acquisition system currently used at GANIL. It is a distributed and entirely configurable software which can be easily adapted to the different configurations, especially for the event builder (data merger, data filtering) of the GET system. Narval is composed of a set of processes (actors) handling the acquisition s data flow. In order to control and coordinate the system, all information about topology, configuration, state machine, are stored in a process named coordinator. An actor is mainly a process that takes part of handling the acquisition s data flow. There are four kind of actors : : injects data in a Narval system Intermediary : acts like a NxM switch or data filter Consumer : end of line actor, typically used for storage Standalone : exception to the rule, this actor don t handle data but is aware of the system state machine.

Data transfert between actors is handled through TCP/IP or Infiniband. Narval has been written in ADA. It is easily linkable with C++ to implement specific algorithms in actors. Switch Run Core Web server Event merger (Time stamp) Event merger (Time stamp) Coordinator Filtering Filtering Message loggerr Merger NARVAL Storage Figure 3 : Example of Narval topology for GET The different items to be developed are : Embedded readout process in Cobo Narval actors Data mergers Data filtering (level 3 trigger) Data format 5. Data base The description of the configuration has to be saved in files or in data base..