A program has been written that allows the user to execute each of the tasks described in the preceeding sections. It is called /hponl/usr1/mvdonl/camac/mvd_control. It is based on KUIP, and has the following command tree
mvd /lecroy2366 program the LeCroy 2366 camac module /xilinx program the Heap Manager Xilinx chip /mode /halt put HM in halt mode /run put HM in run mode /pres pipeline reset /trigger issue a level-1 trigger /dac1 /1A <voltage> set DAC 1A on FEE board 1 to <voltage> /1B <voltage> set DAC 1B ... /... ... and so on for all 12 DACs /3D <voltage> Same again for FEE board 2. /dac2 /1A <voltage> /... /3D <voltage> /clear <nwords> clear the first <nwords> locations in the LeCroy 4302, which receives data packets. /hm_serial download the Heap manager serial port /reset nK reset the integrator every nK clocks. n=1,2,4,8 /correlator on/off /enable_mux on/off /mux MxAy on/off x=1,2,3, y=0,1,2,3 /testflash the LEDs in sequence /status show hm serial bit status /sr1 /sr2 /clear_data <nwords> clear the input unit /read_data read what's in the LeCroy 4302 /inhibit clear the camac inhibit /test run auto test (till `stop.dat' exists) /menu show the menu
Currently, a command-line interface is used, though at some time later we might switch to point-and-click menus. Command MENU will bring- up the following:
+------------- MVD CONTROL MENU -----------------------+ | lecroy2366 program the camac module | | xilinx program the FEE chip | | mode mode control: | | /run /halt /trig /pres /null | | dac1, dac2 set voltages on board 1, 2 | | /1A /1B ... /3D <voltage> | | hm_serial heap manager serial port | | /reset /corr /enable /mux /status /test | | clear_data zero the input module <nwords> | | read_data read what's in the LeCroy 4302 | | inhibit clear the camac inhibit | | test run auto test (till 'stop.dat' exists) | | menu show this menu | +------------------------------------------------------+ mvd==>
From a cold start, command LECROY2366 needs to be issued first, in order to configure the camac programmable logic module as a 4-port output register. This command reads from a binary input file, which was retrieved from the LeCroy website (anonymous FTP to www.lecroy.com, cd to pub/software/2366, file T2366OUT.BIT). About 12K bytes need to be transferred, which takes less than a minute. In the future, the module will be programmed to have some lines be input lines (on connector J7, see section 3), rather than have all of them be outputs.
A this point, we can start talking to the boards. The first thing to do is to load the Xilinx chip with command XILINX. About 180K bits are transferred, which takes 15-20 minutes. When the boards are powered up, all the LEDs on the little diagnostic board will light up. When the Xilinx chip is successfully programmed, all those LEDs will go off.
With the Xilinx chip programmed, all other commands can now be exercised. Some
checks that can be done are making the LEDs on the diagnostic board go on and
off with the hm/mux or hm/test commands; issuing a trigger with the mode/trig
command and checking that a data packet arrives; setting a DAC voltage with
the dac2 command and measuring the voltage on the board.