next up previous
Up: LocalControllerSpec Previous: Bibliography


State transition actions

The following tables give the detailed transition actions for each type of module.

Actions for TileCal Receiver Cratetab:tilerx

Table:
Transition Actions   
Initial $$Loaded   Read database:
  - expected configuration of modules   
  - $E_{t}$corrections   
  Lock crate/modules via Resource Manager?   
Loaded $$Config   Check expected modules are actually present
  Load $E_{t}$corrections into receiver modules via SPACbus. [Assuming not run type dependent]   
  Update module status in L1Calo IS server?   
Config $$Running   None
Running $$Paused   None
Paused $$Running   None
Running $$Config   None
Config $$Loaded   None
Loaded $$Initial   Unlock crate/modules via Resource Manager


Actions for PreProcessor Cratetab:pp

Table:
Transition Actions   
Initial $$Loaded   Read database:
  - expected configuration of modules   
  - default FPGA versions   
  - dead/hot/disabled channel masks   
  - energy calibrations   
  - coarse and fine timing calibrations   
  - BCID pulse shape calibrations   
  - BCID/FIR/saturation settings   
  - readout settings   
  - default rate histogram settings   
  - PPROD settings   
  Lock crate/modules via Resource Manager?   
Loaded $$Config   Check expected modules are actually present
  Check FPGA versions: reload and reset if required   
  Assert BUSY on all PPRODs   
  Update module status in L1Calo IS server?   
  Start rate monitoring program/thread   
Config $$Running   Load all calibrations and settings into PPMs
  Load settings (if any) into the TCM   
  Load readout settings and default monitoring selections into PPRODs   
  Zero rates and/or other statistics for this run   
  Remove BUSY from all PPRODs   
Running $$Paused   Assert BUSY on all PPRODs?
  Calibration/Test: Load value(s) for next calibration step?   
Paused $$Running   Remove BUSY from all PPRODs?
Running $$Config   Assert BUSY on all PPRODs
  Log rates summary and other statistics for this run to database?   
Config $$Loaded   Stop rate monitoring program/thread
Loaded $$Initial   Unlock crate/modules via Resource Manager


Actions for Cluster Processor Cratetab:cp

Table:
Transition Actions   
Initial $$Loaded   Read database:
  - expected configuration of modules   
  - default FPGA versions   
  - dead/hot/disabled channel masks   
  - timing settings   
  - threshold settings   
  - readout settings   
  Lock crate/modules via Resource Manager?   
Loaded $$Config   Check expected modules are actually present
  Check FPGA versions: reload and reset if required   
  Update module status in L1Calo IS server?   
  Start crate monitoring program/thread/callbacks   
Config $$Running   Load thresholds and settings into CPMs
  Load settings into CMMs   
  Load settings (if any) into the TCM   
  Zero module error counts and/or other statistics for this run   
Running $$Paused   Calibration/Test: Load value(s) for next calibration step?
Paused $$Running   None
Running $$Config   Log error counts and other statistics for this run to database?
Config $$Loaded   Stop crate monitoring program/thread/callbacks
Loaded $$Initial   Unlock crate/modules via Resource Manager


Actions for Jet/Energy Processor Cratetab:jep

Table:
Transition Actions   
Initial $$Loaded   Read database:
  - expected configuration of modules   
  - default FPGA versions   
  - dead/hot/disabled channel masks   
  - timing settings   
  - threshold settings   
  - readout settings   
  Lock crate/modules via Resource Manager?   
Loaded $$Config   Check expected modules are actually present
  Check FPGA versions: reload and reset if required   
  Update module status in L1Calo IS server?   
  Start crate monitoring program/thread/callbacks   
Config $$Running   Load thresholds and settings into JEMs
  Load settings into CMMs   
  Load settings (if any) into the TCM   
  Zero module error counts and/or other statistics for this run   
Running $$Paused   Calibration/Test: Load value(s) for next calibration step?
Paused $$Running   None
Running $$Config   Log error counts and other statistics for this run to database?
Config $$Loaded   Stop crate monitoring program/thread/callbacks
Loaded $$Initial   Unlock crate/modules via Resource Manager


Actions for ROD Cratetab:rod

Table:
Transition Actions   
Initial $$Loaded   Read database:
  - expected configuration of modules   
  - default FPGA versions in each CPROD   
  - monitoring sampling settings   
  Lock crate/modules via Resource Manager?   
Loaded $$Config   Check expected modules are actually present
  Check FPGA versions: reload and reset if required   
  Configure crate BUSY module (if in this crate)   
  Assert BUSY on all CPRODs   
  Update module status in L1Calo IS server?   
  Start crate event monitoring program(s)   
Config $$Running   Load settings into CPRODs
  Load settings (if any) into the TCM (if present??)   
  Zero statistics for this run   
  Remove BUSY from all CPRODs   
Running $$Paused   Assert BUSY on all CPRODs?
Paused $$Running   Remove BUSY from all CPRODs?
Running $$Config   Assert BUSY on all CPRODs
  Log statistics for this run to database?   
  Save local monitoring histograms for this run to database?   
Config $$Loaded   Stop (or pause?) crate monitoring program(s)
Loaded $$Initial   Unlock crate/modules via Resource Manager


Actions for TTC Cratetab:ttc

Table:
Transition Actions   
Initial $$Loaded   Read database:
  - expected configuration of modules (TTCvi, BUSY, CORBO, etc?)   
  - expected configuration of PPr and ROD crates   
  - TTCvi settings   
  Lock crate/modules via Resource Manager?   
Loaded $$Config   Check expected modules are actually present
  Assert overall BUSY   
  Load settings into TTCvi   
  Send TTC broadcast to start/stop LVDS synchronisation?   
  Configure PPr BUSY module to enable PPRODs in PPr crates   
  Configure CP/JEP BUSY modules (if located in TTC crate) to enable CPRODs in ROD crates   
  Configure system BUSY module to enable the other BUSY modules (if enabled in the configuration)   
  Update module status in L1Calo IS server?   
  Start crate monitoring program/thread/callbacks   
Config $$Running   (Re)load settings into TTCvi?
  Calibration/Test: Send TTC broadcast to start synchronous playback   
  Remove overall BUSY   
  Calibration/Test: Enable local triggers   
Running $$Paused   Calibration/Test: Disable local triggers
Paused $$Running   Calibration/Test: Enable local triggers
Running $$Config   Calibration/Test: Disable local triggers
  Assert overall BUSY   
Config $$Loaded   Stop crate monitoring program/thread/callbacks
Loaded $$Initial   Unlock crate/modules via Resource Manager


Actions for DSS Cratetab:dss

Table:
Transition Actions   
Initial $$Loaded   Read database:
  - expected configuration of modules and their daughtercards   
  - sets of test vectors to be loaded   
  Locking crate/modules via Resource Manager probably not required for test systems?   
Loaded $$Config   Check expected modules are actually present
  Load test vectors into DSS modules   
  Update module status in L1Calo IS server?   
  Start crate monitoring program/thread/callbacks (if any)   
Config $$Running   Load test vectors into DSS modules
  NB start of playback initiated by TTC broadcast from TTC crate   
Running $$Paused   None
Paused $$Running   None
Running $$Config   None (stop of playback signalled by TTC broadcast?)
Config $$Loaded   Stop crate monitoring program/thread/callbacks (if any)
Loaded $$Initial   Unlock crate/modules via Resource Manager (if locked)


Actions for Overall Controllertab:overall

Table:
Transition Actions   
Initial $$Loaded   Read database:
  - expected configuration of crates   
  - default run parameters?   
  Lock L1Calo system via Resource Manager?   
Loaded $$Config   Set synchronous transition order: TTC before others
  Update system status in L1Calo IS server?   
  Start overall monitoring program/thread/callbacks?   
Config $$Running   Set synchronous transition order: others before TTC
  Zero systemwide statistics/histograms/etc?   
  Calibration/Test: Start calibration sequence process?   
Running $$Paused   None
Paused $$Running   None
Running $$Config   Set synchronous transition order: TTC before others
  Save systemwide statistics/histograms/etc to database?   
Config $$Loaded   Stop overall monitoring program/thread/callbacks?
Loaded $$Initial   Unlock L1Calo system via Resource Manager



next up previous
Up: LocalControllerSpec Previous: Bibliography
M.P.J.Landon 2003-05-15