SNL - PowerPoint PPT Presentation

1 / 19
About This Presentation
Title:

SNL

Description:

SNL is currently supported and developed by SLAC ... Configuration file could be memory resident in the SNL executive (streamed in from the SNL exec. ... – PowerPoint PPT presentation

Number of Views:23
Avg rating:3.0/5.0
Slides: 20
Provided by: DESY1
Category:
Tags: snl | streamed

less

Transcript and Presenter's Notes

Title: SNL


1
SNL
  • Current State(in transition state)
  • By
  • Matthias Clausen
  • Ron Chestnut

2
Outline
  • SNLs home
  • Wish list
  • Results of the 1st phase of the design discussion
  • Work breakdown table
  • Points of interest for the next phase

3
SNL Development
  • SNL is currently supported and developed by SLAC
  • The following list will show requirements which
    are driven by
  • The EPICS community
  • New EPICS V4 features
  • Special features for redundant IOCs
  • DESY specific requirements

4
Loading/ UnloadingSNL Programs
  • Configuration utility to take care of the images
    loaded to the IOC during boot
  • startup.SNL configuration
  • Utility program to remotely load new programs
    without logging on to the IOCRemotely
  • Loading programs
  • Starting programs (with configuration file)
  • Stopping programs
  • Unloading programs

5
SNL Startup
  • Coldstart
  • Start programs from startup.SNL
  • Start programs local/ remote without
    configuration file
  • Warmstart
  • Start list of programs with individual
    configuration file
  • Configuration file may only contain
    startup-states
  • Redundant Start
  • Start list of programs with individual
    configuration file
  • Configuration file could be memory resident in
    the SNL executive (streamed in from the SNL exec.
    of the current master of a redundant pair of
    IOCs)
  • Configuration file contains startup-states and
    the values of local variables (incl. timers)

6
Diagnostic
  • Needs a well defined network protocol(TBD)
  • Get list of loaded programs
  • Loaded but not running (how?)
  • Loaded and running (all instances like seqShow)
  • For a selected program instance
  • State of all state sets like seqShow name
  • Values of all variables, timers etc., records
  • Debugging
  • Change value of variables/ timer etc.
  • Change current state to another/ next
    state(choice list introspected from the running
    state set)
  • Single step through the SNL programs

7
SNL Manager
  • Provides remote operation/ activation of SNL
    programs
  • Provides diagnostic information
  • Extracts current runtime status/states from
    SNL-runtime on the Master IOC to the Slave IOC
    (protocol undefined)
  • Accepts configuration data from Master IOC.
  • Can be set to Master/ Slave mode by
    Redundancy-Executive

8
On the wish list
  • Graphical SNL design tool
  • Interactive/ graphical debugger

9
Current State of DiscussionDiagnostic
  • CA might be the right protocol to get diagnostic
    information
  • A local CA-Server in the SNL-runtime manager
    would allow
  • To dynamically add/ delete records which
    represent the running SNL programs
  • Special SNL records could be used to
  • keep all information about an individual state
    set
  • States (and possible transition states)
  • Variables and their values
  • Send commands to state set
  • Change value of variable
  • Goto state (from given list of states)
  • Single step in state program

10
SNL Style Guide (TODO)
  • Whenever possible
  • SNL programs can be started from
    beginning(Runtime flag will indicate whether
    programs must be synchronized between redundant
    IOCs)
  • Special rules for what to avoid in SNL programs
    which need to support redundant requirements

11
SNL Manager (TODO)
  • Remote operations
  • Support for redundant IOCs

12
The SNLSLAC/ DESY ConnectionFirst Design Ideas
  • Results of a first discussion
  • SNL Manager will be the key application to
    provide most of the required functionality

13
SNL Manager
  • Contains extended SEQ Library
  • Provides interface to all internals
  • From command line
  • Through network interface (tbd)
  • Loads programs
  • Start programs with configuration data
  • Set values of internal variables ( from )
  • Stops programs

14
SNL Manager
  • Redundant Links
  • Send updates to Slave processor
  • Load/ start/ stop/ unload programs
  • Change of state
  • Change of variables
  • Receive updates from Master and execute
  • Connector to Executive
  • Set to Master/ Slave

15
SNL Manager
  • Debug Mode Through SEQ Library (can possibly be
    done for 3.14.x)
  • Access to internal variables
  • Read/ Write
  • New pointer pvar_desc-gt array of (name, type,
    offset in pvar)
  • Force state transition
  • Hidden piece in each when clause
  • Only legal transitions are possible
  • Single state stepping
  • Hidden piece in each when clause
  • Single SNL statement stepping
  • TBD

16
SNL Startup
  • Programs written according to SNL Style guide.
  • First state Wait until selected
  • Second state init -gt make sure that all
    variables are updated with most recent values
  • Third state fanout -gtjump to the specified state

17
SNL Manager
Command line Interface
Network Interface Incl. Load/ Start/ Stop
Link Interface
SEQ Library
Executive
SLAC DESY
18
Working Plan
  • SLAC
  • Debugging
  • Variable Read/ Write
  • Add New pointer to p-gtpvar_desc
  • Force state transition
  • Add hidden piece in each when clause
  • Single state stepping
  • Add hidden piece in each when clause
  • SEQ
  • Make new functionality available through command
    line interface
  • SNL Manager
  • Integrate SEQ-Library
  • Participate in Load/ Start/ Stop implementation
  • DESY
  • Design and develop network layer
  • Access to SEQ library likewise the command line
    interface
  • Participate in Load/ Start/ Stop implementation
  • Link Interface for redundant IOCs
  • Exchange Load/ Start/ Stop commands between SNL
    Managers
  • Exchange values and state-set IDs between SNL
    Managers
  • Interface to Redundancy Executive

19
Points of Interest
  • Following closely what EPICS V4 will provide
  • Could all the internal variables be EPICS
    records?
  • All the synchronization would be given once its
    solved for redundant databases
  • Could every SNL program have its own CA-Server?
  • Could all variables be dynamically added to the
    virtual namespace of the IOC they are running
    on?
  • Unresolved issues
  • Dynamically loading new SNL programs is not
    supported on every operating system EPICS is
    currently running on
Write a Comment
User Comments (0)
About PowerShow.com