This module creates and configures chains of MADC32 modules. If these modules are, in turn, run in multi-event mode, a specialized SpecTcl will be needed to unpack the data. It is possible, however to use single event mode with CBLT readout and use 'normal' SpecTcl unpacking.
The create creates a new MADC32 chain. name will be used to refer to this chain during configuration. At any time the cget returns the configuration of the chain as a list of parameter-name parameter-value pairs.
The config configures an MADC32 chain. A set of option name option value argument pairs should follow the chain name on the commandline. OPTIONS below descsribes the options and their legal values.
This section describes the configuration options supported by the cmadcchain command.
-cbltaddress
base-addressDefines the base address to which the CBLT reads will be directed. When the modules in the chain are initialized, this address will be programmed as the CBLT base address. Note that only the top 8 bits of this value are used.
-mcastaddress
base-addressDefines the base address for the chain's multicast address. The multicast address is used to perform synchronous initialization and time-stamp clears. This address will be programmed as the MCAST base address for all modules in the chain. Only the top 8 bits of the base-address have any meaning.
-maxwordspermodule
longword-coun
Defines the maximuim words that can be read from each module.
This should be a number between
1 and 1024.
This value should usually be larger than the
-irqthreshold
option programmed into the
MADC32 modules in the chain. For each block read, the
module will return no more data than the complete event that
causes the number of longwords read from the module to exceed
this value.
-modules
module-name-listDefines the list of MADC32 modules that make up the chain. The value for this option should be a well formulated Tcl list containing names of madc modules. There is a restriction on the order of these names. The first name in the list must be the leftmost module in the crate and the last name must be the right most module in the chain.
For practical purposes, to limit confusion, I generally enumderate the modules from left (low slot number) to right (higher slot number).