For testing I use the program "mpi_p_ab.c" which is a modified version (it can test both sides of the board) of the former "mpi_p_g2.c". For crosschecking I use "mpi_tes2.c". I use exactly the same software for testing with the two different testers!
The problem occurs during test no. 2, so called "Crosstalk/...". I think it is related to the former seen problems which led us to the decision to send the tester to Berkeley for repair. There are several problems but they seem to be related:
In contrast the Berkely tester showed different current flows (especially for U = -10 V and U = +5 V). During the crosstalk test these currents changed dramatically!
I checked for a wrong bypass capacitor by measuring the resistance between ground and the voltage supply (-10 V) but the values were the same for both testers (0.463 Ohm). Also I checked for any loose material or electronics.
Then I decided to look where (in mpi_p_ab.c) this high current flow occurs. It is in the function "StartNewEvent" exactly when the value of PORT_11 is set to 0x80 (the SCA trigger is set to high)! But it only occurs if StartNewEvent() is called from SCA_DataAcq() which is called within RunCrossTalkFee()! Unfortunately in "mpi_tes2.c" the code for doing this test looks like in "mpi_p_ab.c" (PORT_11 is set to 0x80, too) but the current flow does not change as dramatically as seen in "mpi_p_ab.c". In fact the changes are as high as they are seen with the Muncih tester (about 0.005 A; see above).
This shows the clocking for the Munich tester (sorry for the poor quality). It's about 50 ADC counts high.
These are the pulses for the Munich tester. They are about 200 ADC count high.
If I substract these values from each other I end up with a real puls height of about 150. This is in good agreement
with the performed test in "mpi_p_ab.c" which calculates the sum of two bins of the pedestal substracted
crosstalk pulse:
These are the accumulated values of one board (side B) tested 10 times
(32 channels times 10 tests result in 320 entries).
Now I will show the same plots for the Berkeley tester (the same board is tested):
The clocking is more or less unvisible except for some wiggling.
The pulses are much higher (about 400 ADC counts).
So the sum below two pulsed bins (pedestal substracted) should
be something about 800. And it is:
Unfortunately these values (sum below the crosstalk pulse) are crucial because they have to be within some limits (in "mpi_p_ab.c"). In order to pass the test for one board on both testers I have to spread the limits dramatically (e.g. 200-1000). But this would mean that I would loose more or less all my sensitivity for this crosstalk test.
There are some aftereffects due to these high resp. low values (all occuring during the crosstalk test) but I think the problem is obvious. All other tests which are performed in mpi_p_ab.c look the same for both testers (I've plottetd all the values which are compared to some limits and they agree within the errors. Again I did this by testing the same card(s) in both testers with the same software.).
Do you have any idea what to do?