madcchain

Name

madcchain -- Chain block readout of MADc32, MQDC32 and MTDC32 modules

Synopsis


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

DESCRIPTION

The madcchain provides the ability to:

To be used in a madcchain the modules must occupy a physcically continguous set of backplane slots. This is required because of how the chain block transfer to read out all modules in the chain operates.

OPTIONS

-cbltaddress vme-address

This address is programmed into all chain modules as the transfer address from which the CBLT read will be perfromed.

-mcastaddresss vme-address

The multicast address that will be used to synchonously clear the module timestamps e.g.

-maxwordspermodule nwords

If not programmed, this is 512. This value is used to provide the maximum 32 bit words each module can buffer and to size the block read performed by the CBLT. If not programmed, this defaults to 512

-modules module-name-list

Specifies the names of the modules in the chain. Note, these modules should not be in the event stack, but the chain should be. The modules must exist and be madc, mtdc or mqdc modules. See the EXAMPLE. The only requirements in ordering the list of modules is that the first module in the list be the modules with the lowest slot number, and the last, the module with the highest slot number.

EXAMPLE


madc create adc -base 0x01000000; #  Slot 5 e.g.
mtdc create tdc -base 0x02000000; #  Slot 6 e.g.
mqdc create qdc -base 0x03000000; # Slot 7 e.g.
madc create anotheradc -base 0x040000 ; #slot 8.

madcchain create chain -cbltaddress 0x10000000 -mcastaddresss 0x20000000 
madcchain config chain -module [list adc qdc tdc anotheradc];   # first and last are order important.

stack create event -trigger nim1 -modules [list chain ...]