madcscaler create name ?option value...?
madcscaler config name option value?..?
madcScaler cget name ?option?
This allows for statistics from MADC32, MQDC32, and MTDC32 modules to be read as scalers.
See the CTRB block in the manuals for these devices e.g.
The
MADC32 manual.
This device adds read and reset of the busy times and the bottom two 16 bit words of the
time. This allows the module deadtime to be computed.
The only configuration parameter is -base which must be the
base address confgiured into an existing madc, mqdc or mtdc device.
The example below creates three devices, adc, qdc, tdc, that are eread out during event triggers. It also creates adcscaler, qdcscaler and tdcscaler which periodically read, in order the busy time and total times of these same physical modules in the scaler stack.
set adcbase 0x01000000
set qdcbase 0x02000000
set tdcbase 0x03000000
madc create adc -base $adcbase
mqdc create qdc -base $qdcbase
mtdc create tdc -base $tdcbase
stack create event -trigger nim1 -modules [list adc qdc tdc]; # Event readout of digitizers.
madcscaler create adcscaler -base $adcbase
madcscaler create qdcscaler -base $qdcbase
madcscaler create tdcscaler -base $tdcbase
stack create scalers -trigger scaler -period 2 -modules [list adcscler qdcscaler tdcscaler]