ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/TIBTIDNotes/TIBTIDIntNote/IntegrationTests.tex
Revision: 1.1
Committed: Tue Jan 20 11:13:35 2009 UTC (16 years, 3 months ago) by sguazz
Content type: application/x-tex
Branch: MAIN
Log Message:
First commit of TIB TID Integration Note

File Contents

# User Rev Content
1 sguazz 1.1 \section{Integration Tests}
2     \label{sec:Tests}
3    
4     The CMS tracker has been designed to survive at ten years of LHC operation, with little or no chance
5     for maintenance. Its various components have been tested during the production
6     to meet stringent quality requirements. Few important problems have been spotted and
7     solved.\\
8     During the TIB integration all the operations have been monitored step by step by a chain of tests
9     aimed at a final control of the components just after the installation and at a verification of the
10     shell overall quality and functionality. The step by step tests are of particular importance
11     because in most cases it is very difficult and in some cases even dangerous
12     to replace a single faulty component when it is embedded in a fully equipped shell.
13    
14     \subsection{Test Setup}
15     \label{sec:TestSetup}
16     The integration activities started well before the tracker
17     final data acquisition hardware and software
18     were available to the Collaboration, and thus had to rely on prototype peripherals
19     and a developing software freezing at the integration start up time.
20     Several further upgrades were actually implemented in time, but they all relied on the
21     same version of the underlying framework.
22    
23     \subsubsection{Hardware}
24     Here a brief account of the hardware used in DAQ for the integration
25     is given (see Fig.~\ref{fig:integration daq}).
26     \begin{figure}
27     \centering
28     \includegraphics[width=\textwidth]{Figs/integrationDAQ.pdf}
29     \caption{Hardware used for the integration DAQ.
30     \textbf{On the left:}
31     \textbf{1:} The analog opto-electrical converter.
32     \textbf{2:} Optical lines from the AOHs inside the (yellow) ribbon.
33     \textbf{3:} The signal is converted to electric.
34     \textbf{On the right:}
35     \textbf{1:} The signal converted to electric goes to FEDs through 2-poles LEMOs.
36     \textbf{2:} TSC provides trigger and clock to FEC through an (orange) optical fibre and
37     \textbf{3:} to FEDs though 4-poles LEMOs.
38     \textbf{4:} FEC also implements the 2-way communication towards CCUs and modules through a
39     (yellow) fibre ribbon.}
40     \label{fig:integration daq}
41     \end{figure}
42    
43     The A/D conversion is managed by FEDs~\cite{bib:fedpci},
44     with electrical differential analog input, mounted on
45     PCI carrier boards and installed in an industrial PC.
46     The opto-electrical conversion of the analog signals is done externally by a 24-channel unit.
47     A setup containing 3 FEDs, with the electro-opical converter, is able
48     to readout 48 APV; this is equivalent to 12 single sided modules (4 complete strings)
49     or 4 double sided modules (1 string plus 1 module). This is more than what is needed to
50     test the strings during the module installation.\\
51     The trigger and clock signals
52     were provided by the Trigger Sequencer Card (or TSC,~\cite{bib:specs:tsc}). It has up to four
53     electrical clock/trigger outputs, which were enough to drive the FEDs, and an optical clock/trigger
54     output for the FEC.
55     This card is used to generate a 40~MHz clock and provide it to the system and also to generate
56     triggers, either internally via software or by accepting external inputs.
57     The TSC may also generate the RESET and CALIBRATION signal, by coding them properly on the
58     clock/trigger line.\\
59     The FEC mezzanine used during the integration
60     was laid on a PCI carrier, supporting trigger/clock optical input as fed by the TSC. Its
61     output was also optical, and could be directly connected to DOHs on the DOHM. \\
62     The peculiarity of a PCI FED with respect to a final VME FED, other than having electrical inputs
63     instead of optical ones, is its timing system: a final FED is able to recognise which
64     conversion count
65     corresponds to a frame header coming from a module on each input channel separately,
66     while a PCI FED has this capability (\textit{header finding}) implemented only on the first channel
67     out of the eight available and assumes that the signals coming from the modules are synchronised.
68     This makes the PLL-based time alignment procedure even more important in a setup with PCI FEDs.
69     Furthermore, PCI FEDs are not able to insert a programmable delay on their inputs and thus
70     it is important that the clock/trigger connections from the TSC to FEDs have all the same delay.
71     Last, PCI FEDs cannot perform an online pedestal subtraction and zero suppression (they cannot
72     run in Processed Raw data nor in Zero Suppression mode).
73    
74     \subsubsection{Software}
75     The software used to carry out integration tests was essentially the CMS
76     tracker implementation of a more general software, named xDAQ, which is the official CMS
77     DAQ framework. This implementation is known as TrackerOnline.\\
78     The present version of TrackerOnline makes use of a set of
79     xml files which store the parameters needed by all the devices present on the structure
80     to be tested. In the final implementation of the software the use of a database is foreseen.
81    
82     \begin{figure}[bth!]
83     \centering
84     \includegraphics[width=\textwidth]{Figs/fecmodulexml_2.pdf}
85     \caption{An example of data contained in fec.xml and module.xml files for one module.
86     Part of the data is not shown for simplicity.}
87     \label{fig:fecmodulexml}
88     \end{figure}
89     The information on a given setup can be divided in two sections: one describing the
90     readout hardware (and corresponding software) setup and another describing which part of
91     the tracker is going to be connected to the Control System and to FEDs.\\
92     The hardware/software setup is written in a single xml file, which was prepared once
93     and for all at the start of the integration.
94     The information regarding the readout tracker section
95     is stored in two more files, commonly named fec.xml and module.xml. The first
96     contains all data which the FEC will need to download to modules before starting the data
97     taking, that is all the values to be written in devices' $I^2C$ registers.
98     The second contains all other
99     information needed by the DAQ setup to rearrange data coming from the FEDs: from an input channel
100     based indexing to a module based one (see Fig.~\ref{fig:fecmodulexml}).\\
101     The module.xml file contains two tables: the first joins FEDs input channel indexes
102     with the respective modules' ring, CCU and $I^2C$ address (i.e.\ readout coordinates
103     with Control System coordinates). Each row corresponds to an APV
104     pair, an AOH laser, an optical fibre and a FED input.\\
105     The second table of module.xml reassembles the information on a module basis.
106     Here all the active modules are listed, with a row for every module.
107     The Control System coordinates are repeated both in module.xml and fec.xml,
108     so that they can be used as a pivot between the 3 tables.\\
109     It is clear that these files have to be archived along with raw data taken during a run, and
110     to do it automatically is the first task of an integration validation software.
111     Another required task is an automatic run logging; a fast data analysis is also
112     desirable.
113     Last, but not least, this software should easily allow the user to perform all preliminary
114     (commissioning) runs, adjusting modules' parameters accordingly.
115    
116     \begin{figure}
117     \centering
118     \includegraphics[width=.9\textwidth]{Figs/integration_package.pdf}
119     \caption{Scheme of the integration software.
120     \textit{Arrows}: a relation.
121     \textit{Gears}: an application.
122     \textit{Mouse:} an interactive application.
123     \textit{Sheet}: a file.}
124     \label{fig:integration_package}
125     \end{figure}
126    
127     Figure~\ref{fig:integration_package} shows a scheme of the relations between all the software
128     components that will be described, the local files and the remote database.
129     \paragraph*{FecTool}
130     FecTool is a front-end Graphics User Interface (GUI) aimed to ease the creation of the device
131     description, i.e.\ fec.xml. This program is used to launch
132     two standalone applications deployed along with TrackerOnline: ProgramTest and FecProfiler.
133     The first application can test the ring functionality, the connection to all devices reporting
134     a list of detected hardware. Also the second application is able to retrieve a
135     list of hardware connected to CCUs, but its output is the fec.xml file needed by TrackerOnline.\\
136     By accessing the output of these two programs, the FecTool GUI enables the user to
137     test the functionality of a string, or of a whole ring. FecTool also checks that the found hardware
138     corresponds to what one expects to find in tracker's modules: for every $I^2C$ address
139     there should be either 4 or 6 APVs, one PLL, one AOH, and so on.\\
140     The user can also input the GeoId(s) of tested string(s) before starting the test. In this case
141     FecTool also checks that the DCU Hardware Id read from each module matches the one declared
142     in the construction database performing an important consistency check between what is
143     registered on the integration database and what is really present on the structure spotting
144     possible module registration error.\\
145     Only if this last test is passed, the user is allowed to create the fec.xml description file
146     needed to go forth with integration tests. Hence tests proceed with the data readout from
147     modules, which rely on TrackerOnline.
148     \paragraph*{The integration package}
149     The xDAQ version installed on the integration setups is very user-unfriendly, and requires
150     an expert user: many run-specific parameters are set manually and there is no
151     input validation.
152    
153     \begin{figure}
154     \centering
155     \includegraphics[width=0.35\textwidth]{Figs/FedGuiMain.png}
156     \caption{Main GUI window.}
157     \label{fig:fedgui}
158     \end{figure}
159    
160     A package interacting with TrackerOnline, capable
161     of automatically setting all relevant parameters and performing all data collection at the end
162     of a run has been written. This is a
163     finite state machine which cycle through the needed states setting run-specific parameters
164     in the xDAQ software.
165    
166     The state machine cycles through the following states:
167     \begin{enumerate}
168     \item TrackerOnline initialisation (only once)
169     \item Ask for the desired run
170     \item Launch run in TrackerOnline
171     \item Wait for run completion (polling the number of acquired events)
172     \item Stop data taking
173     \item Launch fast data analysis package
174     \item Ask user for data validation
175     \item If acknowledged, pack all the data and log the run with proper data quality flag. If the run
176     was a commissioning run, update fec.xml and module.xml
177     \end{enumerate}
178    
179     For every required run, the integration package shows the proper TrackerOnline output
180     through some GUIs, so that the user can acknowledge the outcome of the run and give the approval
181     for archiving the run data or, in case of a commissioning run, for updating the parameter set.\\
182     The TrackerOnline software computes the new parameter set for each commissioning run
183     (except for the ``find connection'' run, as we'll see below) and writes
184     it locally as a fec.xml file, which is retrieved by the integration package at need.\\
185     A main integration database, for centralized archiving purposes,
186     was also installed. Software implementing data analysis runs automatically on the
187     archived files producing validation outputs, accessible througth a web interface,
188     for every tested module.
189    
190     \subsection{Test Description}
191     \label{ref:test-description}
192     \paragraph*{Find connections:}
193     This commissioning run is used to know which module is connected to which FED input channel.
194     This procedure consists of switching on all the lasers of all AOH one by one, while checking the
195     signal on all the FED inputs. If the difference of the signal seen on a FED channel is above
196     a given threshold, the connection between that laser and input channel is tagged and registered
197     in the module.xml as a connection table.
198    
199     \begin{figure}
200     \centering
201     \includegraphics[width=0.27\textwidth]{Figs/FedGuiChannels.png}
202     \caption{Connections displayed during the run}
203     \label{fig:fedguichan}
204     \end{figure}
205    
206     At this point of the commissioning procedures both the descriptions for FECs
207     (i.e. tracker hardware connected to the FECs) and for FEDs are present.
208    
209     \paragraph*{Time alignment:}
210     This step is used to compensate the different delays in the control and readout chain,
211     i.e. the connections between FECs and FEEs.
212     This also makes the APVs' sampling time synchronous provided that AOH
213     fibres and ribbons are the same length. The latter is not important during integration
214     quality checks, as no external signal is ever measured, but it becomes so when
215     one tries to detect ionising particles.\\
216     This run type is relevant because, if FEDs are to sample properly
217     the APV signal, the clock must go to the modules synchronously, with a skew of the order of a few ns.
218     Also the clock coming to the three FEDs must be synchronous but this is guaranteed
219     by using cables of the same length between the clock-generating
220     board (TSC) and the FEDs themselves.\\
221     The time allignment run
222     makes use of the periodic tick mark signal sent by the APVs when it is clocked:
223     after these devices receive a reset, they produce a tick mark signal every 70 clock cycles.
224     During this run the FEDs continously sample the signals at the full clock frequency.
225     This means that for every DAQ cycle the output of all APVs is measured as with a 40~MSample scope.
226     After every cycle is completed all the PLLs' delays are icreased by (25/24)~ns
227     (the minimum delay step), and the signal readout is performed again. After 24 such cycles the full
228     tick mark signal is measured as with a 960~MSample scope.
229    
230     \begin{figure}
231     \centering
232     \includegraphics[width=.6\textwidth]{Figs/tickmark.pdf}
233     \caption{A tick mark sampled during a time alignment. The raising edge and the sampling point
234     are marked. In the picture are reported only those samplings around the tick mark, while
235     during the time alignment an interval of $1\,\mu\mathrm{s}$ is scanned.}
236     \label{fig:tick}
237     \end{figure}
238     The DAQ takes the time delay between tick marks as a measurement of the difference in delays in the
239     FEC-FEE connections and computes what delay must be set on each PLL in order to compensate this.
240     The tick mark raising edge $t_R$ time is measured by taking the time corresponding to the highest
241     signal derivative (see Fig.~\ref{fig:tick}).
242     The best sampling point is considered $t_R+15\,\mathrm{ns}$, to avoid
243     the possible overshoot. This is important also later, when measuring the analogue data frame, as
244     it allows measuring the signal coming from each strip after transient effects due to the signal
245     switching between strips are over.\\
246     At the end of this procedure, the user is shown all proposed adjustments to PLL delay values.
247     Then he can accept the outcome of the first time alignment run and, possibly,
248     repeat it. If the time allignment has been done correctly maximum variation of two or less
249     nanoseconds will be found. The delays are written in the correspoding xml file.
250    
251     \paragraph*{Laser Scan:}
252     This run makes a scan of all AOH bias values for the four possible gain settings
253     to determine the optimal gain and the corresponding optimal bias (see Fig.~\ref{fig:laserscan}).
254     In this run the APV generated tick marks are sampled (a correctly done
255     time allignment has to be done before) for all gain and bias values.
256    
257     \begin{figure}[t!]
258     \begin{center}
259     \subfigure[A pictorial representation of a tick mark as produced by the APVs (dotted)
260     and as transmitted by the lasers (solid) when the laser driver's bias is too
261     low (left), correct (centre) or too high (right), with the subsequent signal saturation.]
262     {
263     \label{fig:laserscan}
264     \includegraphics[width=.9\textwidth]{Figs/laserscan.pdf}
265     }
266     \\
267     \subfigure[The sampled tick mark top and baseline as a function of the laser driver's bias.]
268     {
269     \label{fig:gainscan_basetop}
270     \includegraphics[width=.45\textwidth]{Figs/gainscan_basetop.pdf}
271     }
272     \hspace{5mm}
273     \subfigure[The corresponding tick mark height for a given gain.]
274     {
275     \label{fig:gainscan_range}
276     \includegraphics[width=.45\textwidth]{Figs/gainscan_range.pdf}
277     }
278     \caption{Plots computed during a gain scan run.}
279     \end{center}
280     \end{figure}
281     For each trigger sent to FEDs, the tick mark's top is sampled twice and all other samplings fall
282     on the baseline. The highest samples are used to estimate the higher limit of the signal
283     for a given gain/bias pair and the lower values provide an estimate of the lower limit.
284     For each gain value three plots are computed: in the first two the high and low edges of
285     the tick mark are represented as a function of bias (Fig.~\ref{fig:gainscan_basetop})
286     and the third, being the difference between the former, represent the dynamic range
287     as a function of bias (Fig.~\ref{fig:gainscan_range}).\\
288     For each laser these plots are created 4 times: one for each possible gain value. The best laser
289     gain is computed as that providing an overall gain as close as possible to a given optimal value,
290     the overall gain being estimated as the slope of the first two curves in their central section.
291     The best bias value is taken as the one maximising the tick mark height keeping
292     the maximum and minimum not saturated.\\
293     After the run is completed, values proposed by TrackerOnline are shown to the user, who
294     intervenes if there is any abnormal proposed gain, which may indicate a problem either on the
295     AOH or on the fibre.
296    
297     \paragraph*{VPSP Scan:}
298     This is the first run with FEDs with the header finding function active. In this run the
299     trigger is dispatched also to modules, which send their data frames.
300     During this run a scan of VPSP parameter is performed on the modules, and for each value
301     their frames are acquired several times. As there is no physics
302     signal on the detectors, the sampled signal is a measurement of the pedestal of the analog channels.
303     The average strip pedestal is computed for every APV as a function of the VPSP parameter and
304     at the end of the run the best VPSP pedestal is computed as that which moves the baseline
305     to 1/3 of the dynamic range. This choice avoids setting a baseline too near the
306     lower saturation value leaving anyway enough range for possible signals from particles
307     ($\sim 6$ MIP equivalent).
308     At the end of the run computed values are proposed to the user for approval and written
309     to the xml file.
310    
311     \begin{figure}
312     \begin{center}
313     \subfigure[Strip pedestals of a module in ADC counts vs.\ strip number.]
314     {
315     \label{fig:saturationpedestal}
316     \includegraphics[width=.45\textwidth]{Figs/saturation_pedestal.pdf}
317     }
318     \hspace{5mm}
319     \subfigure[Strip noise of a module in ADC counts vs.\ strip number.]
320     {
321     \label{fig:saturationnoise}
322     \includegraphics[width=.45\textwidth]{Figs/saturation_noise.pdf}
323     }
324     \caption{The pedestal of strips after \#{}640 is low, approaching to the bottom of the
325     dynamic range, and their noise is therefore lower.}
326     \label{fig:saturation}
327     \end{center}
328     \end{figure}
329     This run is not normally performed during the integration, as a default value was set on
330     all the APVs after a measurement on a sample. Anyway it is sometimes needed because the optimal
331     VPSP value may change from APV to APV and is also strongly dependent on temperature.
332     An example of this is shown in Fig.~\ref{fig:saturation}, where
333     only a few readout channels suffer from a signal saturation, while most of the strips of a module
334     are placed correctly inside the dynamic range.
335     This usually happens because the pedestal values of the channels of an APV are different one
336     from another and may have a dependency on the strip index like that shown in
337     Fig.~\ref{fig:saturationpedestal}.
338     In these cases when the pedestal of a strip approaches to the edge of dynamic range the
339     APV-AOH output is no more linear and the channel's RMS is lower, (see Fig.~\ref{fig:saturationnoise}).
340     This is one of the most frequent problems with the pedestals and it is solved
341     by a VPSP scan.
342    
343     \paragraph*{Pedestal and Noise:}
344     This is the main run for qualifying the detector performances during
345     the integration. The 400V bias are applied to the module under test which are
346     also checked for any possible overcurrent or breakdown.\\
347     Triggers are sent to the modules and FEDs are placed in header recognition mode.
348     All the analogue frames from the modules are acquired and for each channel both the average value
349     and the RMS are computed.
350     Two analyses are performed on these data: one is done online by the TrackerOnline software, and
351     another one is performed offline through procedures taken from the ORCA package (ORCA was the
352     official reconstruction package of CMS at the time, now substituted by CMSSW) and run
353     on the files containing the raw data as acquired by FEDs in just the same way as it would
354     do with data coming to a Filter Farm.\\
355     The average value of the signal read on each strip is an estimate of
356     its pedestal, while the RMS is a good estimate of its noise, provided that the noise itself
357     is Gaussian, which is true to a first approximation. This value is often referred to as
358     \textit{raw noise}, as opposed to the \textit{common-mode subtracted noise} (or CMN). The latter
359     can be computed after pedestals are measured, which happens after the first hundreds of frames
360     are acquired.
361     The common mode noise subtraction performed by ORCA and TrackerOnline is similar to that
362     performed by the final FEDs.
363     This subtraction
364     eliminates the Common Mode Noise contribution to a specific event. After the Common
365     Mode Noise subtraction the noise can be computed again as the RMS of the remaining signal on strips
366     and this new noise measurement is called Common Mode Subtracted Noise (or just CMN).\\
367     Because of the difference in gain between the various optical links to compare the noise
368     on different APV pairs a renormalization is needed.
369     To implement this a gain measuring procedure to correct
370     noise measurements has been done. When FEDs acquire analogue frames, they store all acquired
371     raw data, comprising the samplings on the digital header. As the digital header has
372     the same amplitude on every APV, its measurement in terms of FED ADC counts
373     was used as an estimate of the relative gain of optical links.
374     This method allows a contextual measurement of noise and gain, and it is accurate,
375     provided that there is no signal saturation both on low and high values.\\
376     The normalisation factor was chosen so as to bring the normalised header height to 220 ADC counts,
377     which was the value of header's height as it was read out in the module test setup
378     of the module production line. This allowed the scaled measurements to be easily
379     compared with those done during module production tests. Both normalised CMN noise and raw noise
380     are shown to the user, while only uncalibrated CMN noise is plotted as a reference.
381     Also the distribution of normalised CMN and raw strip noise is computed and shown to
382     complete the information.
383    
384     \begin{figure}[t!]
385     \centering
386     \includegraphics[width=0.6\textwidth]{Figs/noiseprofile.pdf}
387     \caption{Noise profile of a TIB Layer 3 module. X axis represent the strip index
388     and y axis represent the noise in ADC counts (or ADC count equivalent for the
389     normalised noise).}
390     \label{fig:noiseprofile}
391     \end{figure}
392     Figure~\ref{fig:noiseprofile} shows an example of the output
393     at the end of a noise measurement run: the normalised raw noise and CMN and the uncalibrated CMN
394     for each strip are plotted against the strip index. The first 256 strips belong to the
395     first APV pair and are multiplexed to a single optical line and the strips from 257 to 512
396     belong to the second APV pair. It can be noted here that the
397     raw noise without normalisation suffers from a different gain of optical links
398     and that after the normalisation procedures the noise level is the same
399     for the two APV pairs.\\
400     At the end of this run, once the outcomes are showed to the user, he can decide whether to
401     store these data or to cancel the procedure. In the first case data are packed along with
402     possible comments and sent to the central archive system, where they are processed
403     again and made available on a web page. The system also automatically recognises where
404     the modules where mounted by checking their DCU Hardware Id (which is written in the fec.xml file)
405     in the construction database, this information is stored in the test table of
406     the integration database and allows to build a geographical table of mounted modules with
407     a link to a page containing all the tests performed for each module.\\
408    
409     %%%%%%% aggiunta C.G.
410     \subsubsection{Single Module}
411     After a module of a string was mounted, its basic functionalities were tested.
412     A fast test on the I$^2$C communication permitted to spot possible electrical problems
413     in the module front-end electronics in the AOH or in the mother cable. Since the safe removal of a MC
414     from the shell requires the dismounting of al the modules of a string, it is very important
415     to perform this test of as soon as the first module of a string is integrated. After the
416     I$^2$C test FecTool checks the identity of the components against the construction database.
417     The results of the tests can then be monitored through a web page.
418    
419     \subsubsection{String}
420     When the third and last module of a string is mounted the commissioning runs described in section~\ref{ref:test-description} are performed after the I$^2$C communication tests. The first run, ``Find connections'' permitted to check the full functionality of the AOH. Since the AOHs can be tested only after the modules are mounted this is the first test which can spot possibly broken fibres. It was necessary to perform this test after the integration of each string, because the subtitution of an AOH implies the dismounting of all the modules of the string mounted between the AOH and the front flange.\\
421     After this test a ``Time Alignement'' run, a ``Laser scan'' run and finally a ``Pedestal and Noise'' run with HV on were performed. The ``Laser scan'' run was done limiting the laser gain to the lower value which was found to be optimal for all the AOHs in the integration setup.
422    
423     \subsubsection{Control Ring and Redundancy}
424     The control electronics can be fully tested only after complete assembly of a shell. This last test forsees a check of the correct operation of the ring and of the redundancy circuitry. A failure on a CCU or a control cable can be immediatly spotted as it causes the interruption of the ring; the communication with the other components is then checked using ProgramTest.\\
425     Finally the test of redundancy circuitry is performed by-passing each CCU one by one and verifying the correct response of the ring. The test is successful only if both the primary and secondary circuits of the DOHM are working correctly and if the CCUs are connected in the right order to the DOHM ports.
426     %%%%%%%% fine aggiunta C.G.
427    
428     \section{Safety of operations}
429     The integration procedure posed many possible problems in the safety of operations,
430     from the routing of optical fibres to the handling of modules and each of these items
431     were addressed to minimise the risk of an accident. \\
432     For example
433     as the integration setup could not make use of the shell cooling system,
434     temperature measurements on the most sensible devices were done
435     to be sure not to damage any components when the system is powered up.\\
436     The component with the most stringent requirement on temperature is the AOH
437     and in particular the optical coupling of the pig-tail fibres to lasers.
438    
439     \begin{figure}[t!]
440     \centering
441     \includegraphics[width=.5\textwidth]{Figs/ir.pdf}
442     \caption{IR picture of and AOH seen from below (laser side)
443     taken after a laser scan when bias and gain are maximum. The lasers reach a temperature
444     of $40^\circ \mathrm{C}$, while the highest recorded temperature $48^\circ \mathrm{C}$,
445     on the hybrid.}
446     \label{fig:ir}
447     \end{figure}
448    
449     An infrared camera has been used to monitor the temperature during the integration
450     tests. Figure~\ref{fig:ir} show a shot taken just
451     after a laser scan performed on one string of double-sided modules.
452     This run proved to be the most thermal
453     stressing among the commissioning run performed, because at its end
454     all laser drivers have the maximum gain and the highest bias possible with a complete
455     signal saturation.\\
456     For this test a double-sided layer has been used. In this case the modules have
457     two back-to-back hybrids
458     and thus a higher power dissipation density with respect to the single-sided ones;
459     furthermore the AOH are equipped with three lasers.\\
460     Even in the most stressing condition and after a few minutes of settling,
461     the highest measured temperature on the lasers was $\sim 40^\circ \mathrm{C}$
462     (while it was $48^\circ \mathrm{C}$ on the hybrid).
463     These are safe temperatures
464     thus the integration tests could be performed without problems.