Download presentation
Presentation is loading. Please wait.
Published bySabrina Goodman Modified over 8 years ago
1
FESA Overview Leandro Fernandez On behalf of the FESA Team 6/22/2010FESA Overview1
2
CERN Context Chain of many accelerators linked all together A large number of Front-end computers (>800) A huge equipment diversity (>500) An enormous number of physical devices to control (45000) Multiplexed accelerators More than 80 active software developers 6/22/2010FESA Overview2
3
Equipment Software Role Equipment Software On-demand update s Control Room Timing Card Connected to the timing network Accelerator Events CERN Accelerator complex Software Device model > 6/22/2010FESA Overview Hardware access Hardware Interface Module 3
4
FESA Objectives Homogenize equipment software across all accelerators Speed-up and simplify the task of developing and maintenance software To spare the programmer of defining the architecture of each new application Abstract common layer to hide some accelerator discrepancies Captures the structure and the program’s flow of control Defines the application domain’s design pattern: main classes, their relationships and responsibilities 6/22/2010FESA Overview4
5
FESA Equipment Class FESA Framework 6/22/2010FESA Overview The Framework is the application Equipment Specialist provides application-specific behaviour by specializing basically: Device, RTAction, ServerAction 5
6
Remote Device Access (RDA) 6/22/2010FESA Overview6 Hide the communication technology Client/Server model Device/Property model Device belongs to a Device Class Device Class defines the properties Properties define the Device Class interface Properties data can be complex Narrow API opposite to Wide API A few well known calls: get, set and subscribe Device and property passed as parameters DeviceHandle bpmDevice = rda.getDeviceHandle(“BPM1”); Data result = bpmDevice.get(“Position”); Data object is a container of self-defining data
7
FESA Overview XML-Centric software Design Driven by the FESA Design Schema that encodes the meta-model. XML is used as a high level modelling Language Equipment specialist thinks equipment’s design in terms of: Public interface: properties Device-model: software abstraction of the hardware Server actions Real-time actions Logical events Scheduling: triggering rules 6/22/20107
8
FESA Overview Code Generation Thanks to the formal language used to design equipment software the framework is refined by automatic code generation rather than hand-coding XSLT Generated Code: entirely handled by FESA Custom Code: Action skeletons are generated by FESA FESA Equipment Class FESA Framework 6/22/20108
9
FESA Development Workflow 6/22/2010FESA Overview9
10
FESA version 3.0 Major extensions: Making FESA exportable to other labs. GSI. IDE based on Eclipse : design, instantiate, coding… Relationships : inheritance, association, composition Massive deployment in LHC : lessons learned FESA Ongoing Activities CERN GSI 6/22/2010FESA Overview10
11
FESA Overview Conclusions In spite of the huge diversity of devices, FESA has successfully standardized a high level language and an object oriented framework FESA reduces the time spent developing and maintaining equipment software and brings a strong consistency across all equipment software. The FESA development environment is based on a modelling tool, and keeps model and implementation synchronized New version of FESA brings an exportable framework and opens the door to external collaboration 6/22/2010 11
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.