420 likes | 540 Views
SLC Aware IOC BSAC* Facility Requirements Review. *Beam Synchronous Acquisition & Control. SLC Aware IOC BSAC Facility Requirements Review. Overall Assumptions BSAC Block Diagram BSAC Use Cases SLC Use Cases EPICS Use Cases BSAC Facility Functionality
E N D
SLC Aware IOCBSAC* FacilityRequirements Review *Beam Synchronous Acquisition & Control
SLC Aware IOCBSAC Facility Requirements Review • Overall Assumptions • BSAC Block Diagram • BSAC Use Cases • SLC Use Cases • EPICS Use Cases • BSAC Facility Functionality • SLC-Aware BPM Facility Requirements • EPICS BSACFacility Requirements • SLC BPM Facility Interfaces • EPICS BSAC Facility Interfaces
Overall Assumptions • There will be no interleaving of straight-ahead beams from the CID injector with LCLS operation. • Straight-ahead beams only run when LCLS is not operating • If straight-ahead beams are sent the BPMS in sectors 20 - 30 will be required to measure beam position using the LCLS processors and the straight-ahead beam code. • LCLS processors are NOT required to read simultaneous electrons and positrons on a single machine pulse • SLC-aware IOCs will be present in the injector and linac parts of the LCLS beam line • The LTU and Undulator may not require SLC-aware IOCs, as the EPICS control may be complete by the time of LTU commissioning. • There will be only one calibration setup at one time • BPM modules will be acquiring and buffering LCLS beam synchronous data continuously • GADCs and TORO modules may do so as well - TBD
SLC Aware IOCBSAC Facility Requirements Review • Overall Assumptions • BSAC Block Diagram • BSAC Use Cases • SLC Use Cases • EPICS Use Cases • BSAC Facility Functionality • SLC-Aware BPM Facility Interfaces • EPICS BSAC Facility Interfaces
BSAC Facility Use Cases • SLC Use Cases • SCP • SLC High Level Software Applications • SLC Diagnostics • SLC Standalone Applications • SLC Hardware Configuration and Status • EPICS Use Cases • Calibration • Fast Feedback • Diagnostics • Hardware Configuration and Status • EPICS Clients • High Level Software Applications – starting this year
SLC Use Cases • Table of High Level Applications Required for LCLS • Refer to document
Table of Application to Function Code • Refer to document
Random Thoughts on SLC Use Cases • High level Apps, Diagnostics, Standalone Apps • All work through an API that uses a small subset of the defined BPMO message function codes • HW Status and Configuration • In the SLC database • SLC Use Cases are well defined • We must try to make new LCLS devices and acquisition “fit in” with minimal changes to the SLC system • Must assure that “ignored” function codes do not cause errors (ex: calibration)
Epics Use Cases • Fast Feedback • IOC to IOC • EDM displays for Configuration and Diagnostics • Calibration • Implemented in EPICS only • Status reported to SLC via HSTA / status bits • SLC “lock out” during calibration (if necessary) • Diagnostics • Displayed in EDM • Includes fault-trip data – possibly dumped to file • BPM Timing diagnostics included here • HW Status • Shared by SLC and EPICS – last one to change wins • Log or indicate via alarms when out-of-synch • New High level Apps. • Can we use any SLC support records for future LCLS High Level Apps? • Other EPICS clients
EPICS Use Cases • Not well defined • Still need to create requirements down to the next level?
SLC Aware IOCBSAC Facility Requirements Review • Overall Assumptions • BSAC Block Diagram • BSAC Use Cases • SLC Use Cases • EPICS Use Cases • BSAC Facility Functionality • SLC-Aware BPM Facility Requirements • EPICS BSAC Facility Requirements • SLC-Aware BPM Facility Interfaces • EPICS BSAC Facility Interfaces
Intro to BSAC Facility Functionality • At a high level, the BSAC Facility is required to: • Accept SLC data requests for beam synchronous data acquisition for all devices listed in this document to support SLC applications • Return beam synchronous data to the SLC Control system in the expected reply structure. • Return beam synchronous data to LCLS EPICS Clients. • Support calibration of hardware • Share calibration status between the SLC control system and the LCLS EPICS system • Share hardware status between the SLC control system and the LCLS EPICS system • Support Fast Feedback functionality, control, and diagnostics • Provide diagnostics from BSAC Facility
BSAC Facility Functionality • The division of labor between the SLC-aware BPM Facility and the EPICS BSAC Facility is a design issue, but some goals for this design are: • The SLC-aware threads should act as a “pass-through” facility as much as possible, placing most of the work into EPICS database records and device support. • Maintain a clean division between SLC-aware-only functionality and functionality that supports the short and long-term EPICS interface. The SLC-aware-only code will eventually be stripped out. • Minimize changes required to SLC interfaces
SLC Aware IOCBSAC Facility Requirements Review • 3) BSAC Facility Functionality • SLC-Aware BPM Facility Requirements • EPICS BSA Facility Requirements • 4) SLC-Aware BPM Facility Interfaces • 5) EPICS BSAC Facility Interfaces * BSA = Beam Synchronous Acquistion & Control
3) BSAC Facility Functionality • 3.1) Data Flow • Timing • SLC Aware BPM Facility Requirements • EPICS BSAC Facility Requirements
3) BSAC Facility Functionality • Data Flow • 3.2) Timing • SLC Aware BPM Facility Requirements • EPICS BSAC Facility Requirements
3) BSAC Facility Functionality • Data Flow • Timing • 3.3) SLC Aware BPM Facility Requirements • EPICS BSAC Facility Requirements
SLC Aware BPM Facility Requirements • Accept subset of message function codes from SCP • Validate message contents (DB inconsistancies…) • send immediate reply “yes/no” • Data Acquisition Request: • Store user criteria (to EPICS BSA Facility) • YY, PP, inclusion/exclusion masks, navg, nrpos, active • Track (@ course level) unsatisfied user request • Package/send Data Acq Reply upon signal “done” from EPICS BSAC Facility • Comply to VMS format • Clear one/all user criteria upon request from SCP • Package/send all user criteria back to SCP upon request • Monitors :State of calibration, shared state of HW • Error Logging
3) BSAC Facility Functionality • Data Flow • Timing • SLC Aware BPM Facility Requirements • 3.4) EPICS BSAC Facility Requirements
EPICS BSAC Facility Requirements • Accept and store user request criteria for up to X users • Determine, <1/360 sec when EB pattern matches any user criteria • Collect matching data into X user collection buffers from all gated devices involved, < 1/120 sec • Acquired data must be associated w TS and pulse id from matching EB pattern (or current EB) • Indicate to BPM Facility when user data collection complete • Provide access to collected data • Indicate errors encountered • Provide HW config/stat/cal state sharable with BPM Facility
EPICS BSAC Facility Requirements • Provide access to any sharable SLC DB fields • EPICS PVs in SLC-Aware IOC must map to the expected PRIM:MICRO:UNIT:SECN names in SLC Database for that SLC-Aware IOC. • Phase II • Provide acquired data to EDM displays via CA • Provide diagnostics data to EDM displays via CA • Support fast feedback functionality • Support data collection for future LCLS high-level applications
SLC Aware IOCBSAC Facility Requirements Review • BSAC Facility Functionality • SLC-Aware BPM Facility Requirements • EPICS BSAC Facility Requirements • 5) SLC-Aware BPM Facility Interfaces • EPICS BSAC Facility Interfaces * BSA = Beam Synchronous Acquistion
SLC-Aware BPM Facility Interfaces • SLC Database Service Interface • SLC Message Service Interface • EPICS BSAC Facility Interface • RT DB Access
SLC Database Service I/F Refer to Document (5.1) for: • Devices (Primaries) supported/ not supported • Secondaries supported/not supported • Any EPICS PVs in SLC-Aware IOC must map to the expected PRIM:MICRO:UNIT:SECN names in SLC Database for that SLC-Aware IOC. • SLC Database configuration work ahead !
Message Service I/F Refer to Document (5.2) for: • Function codes supported / not supported • Message contents supported / not supported • Requests from SCP • Replies to SCP
Runtime DB Access to EPICS BSAC Facility (4.3) I/F Tentative, depending on BPM Facility / EPICS BSAC Facility division of labor: • Provide EPICS DB for X number of user criteria • Signal X number of EPICS user collection buffers of acquired, time stamped, pulse id’ed data • Indicate any error conditions • Indicate state of hardware /calibration • Provide access for any SLC DB fields
SLC Aware IOCBSAC Facility Requirements Review • BSAC Facility Functionality • SLC-Aware BPM Facility Requirements • EPICS BSAC Facility Requirements • SLC-Aware BPM Facility Interfaces • 6) EPICS BSAC Facility Interfaces * BSA = Beam Synchronous Acquistion and Control
EPICS BSAC Facility Interfaces • 5.1) EVR Interface • 5.2) BPM Module Interface • 5.3) GADC Module Interface • and DUGADC (WIRE, ARRY) • 5.4) TORO Module Interface
EVR Interface • Provide data access (RT DB) to EB data • EB must provide all bits of PNET • YY • PP Beamcode • Inclusion/exclusion bits • Pulse id – need 17-bit • EB must include time stamp • EB must be buffered • EB pattern matching user criteria comes (3) 360Hz timing fiducials before beam pulse
BPM Module Interface • Provide data access (RT DB) to • Acquired data • HW status • Cal status? • Data must be stored in circular buffer for consecutive pulse retrieval • User initiated • Fault trip • Data must be time stamped (EPICS)
General Interface with all BSAC Modules • Provide data access to acquired data and status • Data must be EPICS time stamped • GADC: Current Stepper Motor position must be available each step to correlate with acquired data for wire scans
BPM Data Requirements SLC Requires: • x float (x rms) • y float (y rms) • Tmit float (tmit rms) • qraw[4] unsigned short • status (stat) on ea pulse unsigned short • For SCP/LCLS diagnostics • SCP defines certain bits; these can change • HSTA state • goodmeas unsigned short • x, y, tmit RMS values, goodmeas, HSTA state for SCP • BPM or EPICS BSA Facility could do this
WIRE Data Requirements Does LCLS require current (i) data from wire scan? SLC requires, for scanning wire: • Data array [max_wire_chan=3] of float (& RMS) • Status array [3] of unsigned short • For SCP/LCLS diagnostics • SCP defines certain bits; these can change • HSTA state • Position of SMC per step • goodmeas array [3] of unsigned short • RMS, goodmeas, HSTA state values for SCP • BPM or EPICS BSA Facility
ARRY Data Requirements SLC requires: • Data array [max_arry_chan=12] of float (&RMS) • Raw array [12] of unsigned short • Status array [12] of unsigned short • For SCP/LCLS diagnostics • SCP defines certain bits; these can change • HSTA state (BPM Facility could do this) • goodmeas array [12] of unsigned short • Data RMS, goodmeas values for SCP – BPM or EPICS BSA Facility
TORO Data Requirements SLC requires: • tmit float (tmit RMS) • qraw unsigned short • status unsigned short • For SCP/LCLS diagnostics • SCP defines certain bits; these can change • HSTA state qraw unsigned short • goodmeas unsigned short • tmit RMS, goodmeas, HSTA state for SCP • BPM or EPICS BSA Facility
Pulse Id data requirements SCP user can ask for associated pulse id data to accompany the acquired data • Pulse id (retrieved from PNET) • Time stamp (17-bit; from EVR?)