You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 29 Next »

Document status
DRAFT
Document owner
Designer
DevelopersAlessandro Stecchi 
QA

Description

This key contains the timing status 

Source

General Timing WindowKeys

Key nameSource

Write freq. [Hz]

Data size [byte]

Throughput
[kbyte/s]

FomatNotes
DAFNESTATE_JDAT

General Timing Window: it fetches from the DEVIL387 the GTIMDyn global and combines some of its data with information obtained from the Timing Status Word register. The result (GTIMStatusData) is translated as a Json document and written to Memcached on:
- "Apply Sequence" command;
- "BTF RUN" command.


~0~250~0

The key content is a Json document with the following format.
{
  "bunch_seq_1_32":0,
  "bunch_seq_33_64":0,
  "bunch_seq_65_96":0,
  "bunch_seq_97_120":0,
  "accumulator_pulses":0,
  "linac_freq":0,
  "extraction_freq":0.0,
  "equidistant":0,
  "mode":0,
  "execution":0,
  "standby_state":0,
  "run":0
}


Values for the various fiedls are as consistent as possible with the "Timing Status Word" corresponding bitfields. In some cases the representation is modified in order to make it more intuitive (e.g. mode: -1=electrons, 1=positrons) or even directly usable (e.g. linac_freq: 25 Hz, 50 Hz). In other cases (execution, stand_by_state) the value is equal to that of the corresponding bitfield in the Timing Status Word register (see table below).

  • bunch_seq_1_32, _33_64, _65_96: number in the range (0-4294967295)
  • bunch_seq_97-120: number in the range (0-16777215)
  • "accumulator_pulses": integer number
  • linac_freq: 25.0, 50.0 [Hz] floating point
  • extraction_freq: 0.2, 0.5, 1.0, 2.0 [Hz] floating point
  • equidistant: 0=contiguous, 1=equidistant
  • mode: -1=electrons, 1=positrons
  • execution: 1, 2, 4, 8, 16 (see table below)
  • standby_state: 1, 2, 4 (see table below)
  • run: 0=standby ,1=run

The Json key is worked out by a SubVI of the General Timing window: /u2/dcs/source_solaris/0_classes/TIM/console/timing_2/General_Timing_3.3.3.vi - build 20230125-1145.

The SubVI is:

/u2/dcs/source_solaris/0_classes/TIM/console/timing_2/TimingStatusDecode.vi
(There is also another version named "TimingStatusDecode2.vi" that represents the DAFNE fill pattern as a unique sring of 120 "0" or "1" characters).

The key is updated any time a user issues "Apply Sequence"or "BTF RUN" from the General Timing window.

Total throughput

kbyte/sMbit/s
~0~0

Timing Status Word register

bit [0-31]Variablebit valuescorresponding
value
bit valuescorresponding
value
bit valuescorresponding
value
bit valuescorresponding
value
bit valuescorresponding
value
0LINAC freq. [Hz]1

25

050





101





2extraction freq. [Hz]10.200.50102

30100

40010

50001

6contiguous/equidistant0contiguous1equidistant





7mode -/+0e-1e+





8execution1Single cycle first bunch0Single cycle same bunch0Single cycle next bunch0Single sequence0Go forever
901000
1000100
1101010
1200001
13standby state (*)1

All Off LINAC standby

(Non spara niente?)

0

Spectrometer only 1Hz

(spara 1Hz allo spettrometro)

0

Disable gun

(disable gun e poi?)





14010



15001



16run/standby1run0standby





1701





18...31










  (*) "standby state" is the condition which is reached when a "standby" command is issued

DAFNE STATELinac Freqextraction freqcontiguous/equidistantmode -/+executionstandby state (*)run/standbyDESCRIPTIONEXTERNAL INPUTS

Antonio's comment


STDBY(0)




1??
No beam ? Global off?

E- INJECT (1)>0>0*0

Go forever(8)/

Single sequence(16)

0?? (codifica esistente?)1I

Dafne KCK ON

Accumulator 

Se stdby =0 non esiste questo stato non ha un'unica soluzione
E+ INJECT (2)>0>0*1

Go forever(8)/

Single sequence(16)

0?? (codifica esistente?)1IDafne KCK ONSe stdby =0 non esiste questo stato non ha un'unica soluzione
E- (3) STORED*******ONLY Electrons in dafneI ele >0 I pos =0
E+ (4) STORED*******ONLY Positrons in dafneI pos >0 I ele =0
FILLED(5)*******Nell'assunzione che significhi fascio che non collideI pos >0 && ele > 0 & Lum=0
COLLIDING(6)*******
 pos >0 && ele > 0 & Lum>0
BTF DELIVERING









BTF DELIVERING & COLLIDING































[10:10 AM] Alessandro D'Uffizi
switch (status)
    {
        case 0: return "DAFNE: STDBY";
        case 1: return "DAFNE: E- INJECT";
        case 2: return "DAFNE: E+ INJECT";
        case 3: return "DAFNE: E- STORED";
        case 4: return "DAFNE: E+ STORED";
        case 5: return "DAFNE: FILLED";
        case 6: return "DAFNE: COLLIDING";
        case 7: return "DAFNE: BTF DELIVERING";
        case 8: return "DAFNE: BTF DELIVERING & COLLIDING";
        default: return "DAFNE: UNKNOWN";
    }




  • No labels