MVD DCIM test procedure
This document is based on notes I made 15-Oct-1999 when Miljko Bobrek explained the Data Collection Interface Module (DCIM) test procedure to me. This first version of the document is a transcription of notes I wrote in the logbook while talking to Miljko. Therefore it is not always in the most logical order.
The program to do the test is called chaintest\dcim_ctrl\IM_tester.vi.
To use the program, the "VME-chzy" card (made by SangYeol Kim)
and the Timing and Control Interface module (TCIM) must be
removed from the interface module crate. Test card 3/4 (TC34) must
be in the interface module crate.
To start the program, click on the arrow button in the top left
corner of the program's panel.
We should have the following schematics:
To start test, plug the board in and make sure the 2 red lights on the front come on. Check that every regulator has +5V:
If they are not all OK, check the 6.5V input. If there is no 5V, there is either a short in the 5V line(s) or no 6.5V input.
Oscillator section: take the beam clock from TC34. The 4X clock is generated from the beam clock. Jumpers are undes to set the output frequency. The approximate clock location is shown in the sketch (above) of the DCIM board with more details in the following sketch:.
The clock needs to be tested at the oscillator (1X --> 4X). Also check the beam clock at the input to the FPGAs:
The address of each board must be set using jumpers (J11).
The address must be different for each board. The jumper
is a set of 6 pairs of pins near the back (VME connectors)
of the board. It seems that no connection corresponds to
"1" and the top pair of pins corresponds to the lowest
order bit. The address is used to read back done bits.
You need to go through all 6 values of the done mux (DMUX in
labview) because there is a single done output line.
The done bits correspond to the 6 FPGA numbers (see figure above),
not to the MCM number.
DMUX value in program | FPGA number, counting as in sketch above |
1 | 6 |
2 | 5 |
3 | 2 |
4 | 1 |
5 | 4 |
6 | 3 |
Check Glinxs with Glink MUXs. The translation of MUX value
to Glink value is shown in the table below. The same MUXs are
used for the Glink reset command.
GMUX value in program | Glinx number, counting top to bottom |
1 | 5 |
2 | 6 |
3 | 1 |
4 | 2 |
5 | 3 |
6 | 4 |
When the FPGAs are programmed correctly, the 6 green lights on the fromt panel should come on, the counting is 1,2,3,4,5,6 (reeading left to right and top to bottom -- as you would read page of text). Again, these are FPGA numbers, not MCM numbers. These lights are the same as the done bits you read back.
The FPGA download is in parallel to all FPGAs. Only the done bits are multiplexed. One the FPGAs are programmed, they should send the 20 MHz clock to the Glinks. The STROBE inputs should get the 20MHz clock from the FPGAs. DV0 and DV1 should be set for 20 MHz mode. Miljko thought it was DV0=high, DV1=low, but said it might be vice-versa. These signals come from the FPGAs. That's about all there is to check on the Glinks.
Jumper JMP1 needs to be set with M20SEL to +5V (jumper pins 3-4) --> 16 bit mode. Therefore it seems that it is really M20SEL-bar.
One problem Miljko saw was a stuck bit -- in this case the problem was the Glink transmitter chip (parallel to serial converter).
Send packets and look at them to make sure they are OK.