stack

Name

stack -- Group modules into readout 'stacks'.

Synopsis


stack create name ?option value...?
stack config  name option value?..?
stack cget  name ?option?         
        

DESCRIPTION

Just creating a module does not allow it to be readout. Data acquisition with the MVLC, as with the VMUSB, requires the creation of lists of modules or stacks. the fribdaq-readout program allows for two stacks, one triggered by NIM I/O 1 and one triggered periodically. In FRIB use, normally scaler modules are in the periodic stack. The event modules normally go in the NIM triggered stack.

While all of the configuration options for the VMUSB stack are provided not all of them do anything yet. As support for using the mvlc is fleshed out, so will the support for options in the stack.

See EXAMPLES for examples of stacks and how to build them.

OPTIONS

-trigger nim1 | scaler | interrupt

Specifies what triggers stack execution. For mvlcgenerate only nim1 and scaler are supported and the default is nim1

-period seconds

This is not yet used. When it becomes usuable, it will be the period of the scaler stack. At present this is hard-coded to 2 seconds.

-stack> stack-no

For interrupt driven stacks (not supported) this will be the number of the stack. Defaulting to 2 valid values are 2-7. Default is 2.

>-delay

Number of microsseconds to delay stack execution after the trigger. At present this only applies to the event stack. Value defaults to 0

-vector -ipl interrupt-parameters

For interrupt driven stacks (not yet supported), this is the status-id and interrupt priority level to recognize as the stack trigger.

-modules module-name-list

Contains the list of modules that will be initialized, read out and finalized by this stack.

-incremental true | false

For now ignored. If true (the default) scalers are marekd as incremental. fribdaq-readout currently marks all scaler items as incremental.

EXAMPLES

The example below shows how to build an event stack that consists of several Mesytec MADC32 modules that are minimally configured:


madc create adc1 -base 0x01000000
madc create adc2 -base 0x02000000
madc create adc3 -base 0x03000000

stack create event -trigger nim1 -modules [list adc1 adc2 adc3]
        

The example below shows how to build a scaler stack that consists of several SIS 3820 scaler modules.


sis3820 create scaler1 -base 0x10000000
sis3820 create scaler2 -base 0x20000000
sis3820 create scaler3 -base 0x30000000

stack create scaler -trigger scaler -modules [ list scaler1 scaler2 scaler3]