1 #ifndef ENV_PERIOD_REGISTERS_H
2 #define ENV_PERIOD_REGISTERS_H
60 static const unsigned RVETO = 0x40080;
62 static const unsigned RVFIFO = (1 << 0);
63 static const unsigned RVSMP = (1 << 1);
64 static const unsigned RVINT = (1 << 2);
66 static const unsigned RVTS2P = (1 << 4);
68 static const unsigned RVHZ50 = (1 << 6);
69 static const unsigned RVMSM = (1 << 7);
71 static const unsigned RVEXT0 = (1 << 12);
72 static const unsigned RVEXT1 = (1 << 13);
73 static const unsigned RVEXT2 = (1 << 14);
74 static const unsigned RVEXT3 = (1 << 15);
94 static const unsigned RCRESET = (1 << 15);
129 static const unsigned MPCNT = 0x300;
130 static const unsigned MPLIM = 0x304;
131 static const unsigned PSCNT = 0x308;
132 static const unsigned PSLR = 0x30C;
140 static const unsigned PCREG = 0x40088;
189 static const unsigned PCMSM = (1 << 11);
static const unsigned RCFSSMP
1
static const unsigned RCPCLEAR
clear proton counters
static const unsigned PCMULENAB
single/multi period sequence control mode enable (RW)
static const unsigned GPCNT1START
good proton counters(16k x 32 bit, RW) in counts1 (warning - only 16 bits usable) ...
static const unsigned GPCNT0START
good proton counters(16k x 32 bit, RW) in counts0
static const unsigned SMPVETFRM
static const unsigned RVETO
veto enable register
static const unsigned FRAMETIME0
low 32 bits
static const unsigned FC2WINDLY
window delay
static const unsigned EXT0VETFRM
static const unsigned PCENAB
normal/period mode enable (RW)
static const unsigned SPARE1SIZE
static const unsigned RVFIFO
static const unsigned RCFSTOF1P
5 first isis ts1 pulse after ts2 gap (so 10hz)
static const unsigned SPARE0START
spare counters(16k x 32 bit, RW) (warning - only 16 bits usable)
static const unsigned RVHZ50
isis not at 50 Hz
static const unsigned OUTLUTSIZE
static const unsigned PERLUTSIZE
static const unsigned FC1WINDLY
window delay
static const unsigned TAROUTLUT
access OUTLUT enable bit, RW
static const unsigned GFCNT0START
good frame counters(16k x 32 bit, RW) in counts0
static const unsigned PCRESET
period card reset control bit(RW) need to assert & deassert
static const unsigned MPLIM
main period (DAQ + Dwell) limit register (14 bit, RW)
static const unsigned PERLUTSTART
period lookup table (16k x 32 bit RW)
static const unsigned INTVETFRM
Internal veto frame count (RO, 32 bit) period card only.
static const std::string env_period_policy_name
static const unsigned PCCLRPC
clear period counters (RW) need to assert & deassert
static const unsigned FC3WINDLY
window delay
static const unsigned LOOKTAR
lookup table access register (4bit, RW) - see below
static const unsigned RVEXT1
external veto 1
static const unsigned RCRESET
reset run controller
static const unsigned RVFCHOP0
fast chopper 0, also bit 20
static const unsigned FC2VETFRM
veto count
static const unsigned RCFSMUONCK
3 muon cerenkov
static const unsigned FC3VETFRM
veto count
static const unsigned RCFSSEL2
frame sync select bit 2
static const unsigned FSDELAY
frame syn lower 18 bits 1us increments
static const unsigned PCSEQCOMP
period sequence complete monitor bit (RO)
static const unsigned OUTLUTSTART
period switching output lookup table (16k x 16 bit RW)
static const unsigned FC1WINWTH
window width
static const unsigned MSMVETFRM
ms mode vetoed frames
static const unsigned RVEXT2
external veto 2
static const unsigned PERLUTTYPE
bit of perlut used to decide if dwell or daq period
static const unsigned TS2PVETFRM
TS2 pulse veto.
static const unsigned RPCNT0START
raw proton counters(16k x 32 bit, RW) in counts0
static const unsigned SPARE0SIZE
static const unsigned RCPERSZEQZERO
0=external/harware periods, 1 = normal (start straight away)
static const unsigned FC0WINWTH
window width
static const unsigned RVMSM
ms mode
static const unsigned RCFSINT
0
static const unsigned SCHPULSE
muon cerenkov pulses recived (only ion MS mode)
static const unsigned GFCNT0SIZE
static const unsigned MAX_NUM_PERIODS
should be same of OUTLUT and PERLUT sizes
static const unsigned MPCNT
Period card functionality.
static const unsigned RVFCHOP1
fast chopper 1
static const unsigned RCFSSCH2
frame sync schenchoff pulse (0=use first, 1=use second)
static const unsigned RPCNT1SIZE
static const unsigned GPCNT0SIZE
static const unsigned ALT1SFV
Alt1 Sub Firmware version register (8bit, RO)
static const unsigned OUTLUTEND
static const unsigned RCFSTOF
2
static const unsigned RCFSMUONMS
4 muon MS mode
static const unsigned EXT2VETFRM
static const unsigned RVSMP
static const unsigned RCEVENTMODE
enable event mode - send environment information to detector cards
static const unsigned FC0WINDLY
window delay
static const unsigned RVFCHOP2
fast chopper 2
static const unsigned EXTPEROVFVC
external period overflow veto counter (RO)
static const unsigned TARPERLUT
access PERLUT enable bit, RW
static const unsigned FC3WINWTH
window width
static const unsigned RCDELFSFIFORS
delay frame sync fifo reset out (assert and deassert)
static const unsigned PERLUTEND
static const unsigned RFCNT0START
raw frame counters(16k x 32 bit, RW) in counts0
static const unsigned PCOUNTR0
raw proton count low 32 bits
static const unsigned EXT3VETFRM
static const unsigned FCOUNTG
good frame count 32 bits
static const unsigned RCFSSEL1
frame sync select bit 1
static const unsigned FC1VETFRM
veto count
static const unsigned PCEXTENAB
internal/external periods control mode enable (RW)
static const unsigned FIFOVETFRM
FIFO veto, number of frames vetoo.
static const unsigned PSLR
period sequence limit register (32 bit, RW)
static const unsigned GPCNT1SIZE
static const unsigned OUTLUTMASK
outlut is 16 bit
static const unsigned RPCNT0SIZE
static const unsigned PCREG
period control register (16 bit, RW) - see below
static const unsigned PCMULCOMP
multiple period sequence completed monitor bit (RO)
static const unsigned PCENDSEQCOMP
run ended and period sequence complete monitor bit (RO)
static const unsigned RVINT
static const unsigned SPARE1START
spare counters(16k x 32 bit, RW) (warning - only 16 bits usable)
static const unsigned PCOUNTR1
raw proton count high 16 bits
static const unsigned PCOUNTG1
good proton count high 16 bits
static const unsigned EXT1VETFRM
static const unsigned HZ50VETFRM
ISIS not at 50 Hz.
static const unsigned RCFSENABLEOUT
frame sync enable out
static const unsigned RVFCHOP3
fast chopper 3
static const unsigned FC2WINWTH
window width
static const unsigned PSCNT
period sequence counter (32 bit, RO)
static const unsigned PEROUTDEL
period output delay in us (18 bit, RW)
static const unsigned RCFCLEAR
clear frame and veto counters
static const unsigned RCFSSEL0
frame sync select bit 0
static const unsigned FRAMETIME1
high 32 bits
static const unsigned RCFSSEL
static const unsigned RVTS2P
ts2 pulse veto
static const unsigned PCMSM
enable Muon MS mode
static const unsigned PCENDAFTER
end run after period sequence completes control bit (RW)
static const unsigned FC0VETFRM
veto count, mirriored at 0x150
static const unsigned RFCNT0SIZE
static const unsigned PCOUNTG0
good proton count low 32 bits
static const unsigned PERINCTOT
total number of period increments (RO)
static const unsigned RVEXT0
external veto 0
static const unsigned RVEXT3
external veto 3
static const unsigned RCSTART
start data acquisition
static const veto_detail veto_details[]
static const unsigned RCONTROL
run control
static const unsigned FCOUNTR
raw frame count 32 bits
static const unsigned RPCNT1START
raw proton counters(16k x 32 bit, RW) in counts1 (warning - only 16 bits usable)