1 / 13

How To Set Up for the Event System on an IOC with an EVR(s)

How To Set Up for the Event System on an IOC with an EVR(s). Assumes you already know what the event system provides and how it works. epics/modules/event/<version>/README. configure/RELEASE and xxxApp/src/Makefile ErConfigure and other st.cmd commands Hardware Setup

dyani
Download Presentation

How To Set Up for the Event System on an IOC with an EVR(s)

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. How To Set Up for the EventSystem on an IOC with an EVR(s) • Assumes you already know what the event system provides and how it works.

  2. epics/modules/event/<version>/README • configure/RELEASE and xxxApp/src/Makefile • ErConfigure and other st.cmd commands • Hardware Setup • Correcting IDs on PMC EVRs • Database, ChannelWatcher, and Archiver Setup • Nothing on Display Setup though • Nothing on VME EVR vs PMC EVR

  3. Hardware Block Diagram 2007 Commissioning Modulator Triggers Existing Control System Beam Path Acq and Calibration Triggers PADs and PACs BPM FEE Acc and Standby Triggers Timing Crate E V G F A N 1 F A N 2 P N E T I O C EVR EVR 1 EVR 2 EVR 3 I O C I O C 360Hz Fiducial RF Timing BPM Crates LLRF Crate 119MHz Clock Future MPS Beam Rate, Beam Path Fiber Distribution: Timing Pattern, Timestamp, Event Codes Triggers Triggers TORO FEE Trigger EVR 1 C A M 1 C A M 2 I O C 1 … EVR 4 C A M 7 C A M 8 I O C 4 F A N 3 EVR 1 C A M 1 I O C 1 ... EVR 8 C A M 8 I O C 8 EVR F A N 4 I O C Profile Monitor Crate Laser Steering Crate Toro Farc Crate … …

  4. EVG Event Time Line – 4 Fiducials 360Hz Fiducial F3 (n=3) F1 (n=1) F2 (n=2) F0 (n=0) 2.8 5.6 Time (msec) 0 9.3 8.3 1.0 R3 HW starts sending event codes, starting with fiducial event code R2 R1 R0 Receive Fn+3 PNET, determine Fn+3 LCLS pattern, and advance pipeline (n-2->n-1->n) P3 P0 P2 P1 L2 L3 L0 L1 Send LCLS pattern Set Event Codes in Other RAM based on the last patterns for Fn+1 E3 E4 E1 E2 B-3 120Hz BEAM B0

  5. Trigger Event Time Line – 1 Beam Pulse (B0) Record processing (event, interrupt) Hardware Triggers Receive pattern for 3 pulses ahead Triggering Event Codes Start Beam Kly Standby Event Timestamp, pattern records, and BSA ready Acq Trigger Kly Accel Fiducial Event Received Fiducial B0 F3 18 500 0 1023 Time (usec) 100 0.3

  6. Event System Requirements • Event Generator IOC: • Send out proper event codes at 360Hz based on: • PNET pattern input (beam code and bits that define beam path and other conditions) • Add LCLS conditions such as BPM calibration on off-beam pulses , diagnostic pulse etc. • Future – event codes also based on new MPS and user input • Send out system timestamp with encoded pulse ID from PNET • Send out PNET pattern to be used by SLC-aware IOCs • Manage user-defined beam-synchronous acquisition measurement definitions (event definition or EDEF) • Check for match between user EDEFs and input PNET pattern at 360Hz and tag matches in outgoing pattern

  7. Event System Requirements, cont • Event Receiver IOC: • Set trigger delays, pulse widths, and enable/disable via user requests (not yet done on a pulse-by-pulse basis) • Set event code per trigger (triggering done in HW when event code received) • Receive event pattern 8.3 msec before corresponding pulse • Perform beam-synchronous acquisition based on tags set by EVG in the event pattern • Perform beam-synchronous acquisition for the SLC-aware IOC based on the PNET part of the event pattern • Process pre-defined records when specific event codes are received

  8. Databases and Displays • Each IOC has its own substitutions files using databases/cwConfig files provided by the event module. • Each IOC has its own displays for triggered and beam-synchronous devices. Other event-related diagnostics displays provided by the event module and currently accessible from the “Event” tab on lclshome. • Databases divided into 4 categories: • EVR Databases • Pattern Databases • Trigger Database • BSA Databases

  9. EVR Databases • One evr record per EVR. • Use evr.db (most apps) from event module. • Apps that don’t use the trigger database or don’t save/restore delays, polarities, or pulse widths will use evrWithDelays.db or evrWithExtendedDelays.db from the event module instead. • Matching display = tools/edm/display/event/evrDiags.edl • Record Reference: http://www.slac.stanford.edu/grp/lcls/controls/global/subsystems/timing/globalEventV3.htm

  10. EVR Databases - cont • One erevent record per triggering event per EVR: • Use evrEventCtrl.db from event module. • Always instantiate <evr>:EVENT1 to 14 – you want the spares. • See timing block diagram in sharepoint to find mapping between triggered device and TTB/front panel ports. • See EVG event display to find event code numbers once you know how devices are to be triggered. One device can be triggered by multiple event codes (ie, BPMs) though not event codes on the same time slot. • Enable IRQ if you want records processed on event. • Matching display = tools/edm/display/event/evrTriggerDiags.edl • Record Reference: http://www.slac.stanford.edu/grp/lcls/controls/global/subsystems/timing/globalEventV3.htm

  11. Pattern Databases • One Pattern Record Group per IOC: • Provides beam/BSA/destination/timeslot information on the current time slot + next 3 timeslots. They also provide generalTime records. All apps (including EVG IOC) should load this one. • Use evrPatternAll.db from the event module. • Matching displays = tools/edm/display/event/evrPatternDiags.edl and tools/edm/display/event/generalTime.edl

  12. Pattern Databases - cont • One Pattern Event Record Group per IOC: • Provides event records that will fire if IRQ is enabled on an event code. Also provides delay from the fiducial for each event code (used by the trigger database). Must be loaded with evrPatternAll.db. • Use evrEventAll.db from the event module. • Matching display = tools/edm/display/event/evrEventDiags.edl

  13. Trigger Database • One Trigger Record Group per triggered device: • Provides more user-friendly interface for setting delays, pulse widths, polarities than comes with evr.db. Comes with matching CW configuration. • Use evrDevTrig.db, evrDevTrig.cwConfig, and evrIocTrig.cwConfig from the event module. • Must be consistent with event codes selected in the EVR databases. • See timing block diagram in sharepoint to find mapping between triggered device and TTB/front panel ports: https://slacspace.slac.stanford.edu/sites/LCLS%20Document%20Storage/01%20-%20LCLS%20Systems/electronbeamsys/controls/Shared%20Documents/Timing/TIMING%20System%20BD.pdf • Matching display = tools/edm/display/event/evr_dev_diags.edl

More Related