...

Commits (3)
 \chapter{DUT signals}\label{ch:DUTsignals} In the old versions of the \gls{tlu} the direction of the signals on the \verb|HDMI*| connectors were pre-defined. The new hardware has separate lines for signals going into the \gls{tlu} and signals out of the \gls{tlu}. See section~\ref{ch:hwDUT} for further details. \\ \ No newline at end of file \chapter{DUT Signals}\label{ch:DUTsignals} In the older, EUDET, version of the \gls{tlu} the direction of the signals on the \verb|HDMI*| connectors were pre-defined. The new hardware has the ability to switch each LVDS pair between input and output. The function and direction of each LVDS pair depends on the interface mode chosen. Table \ref{tab:DUTInterfaceModes} lists the different interface modes and section~\ref{sec:InterfaceModes} describes them in more detail. See chapter~\ref{ch:hwDUT} for details of how LVDS pairs are mapped onto physical \gls{hdmi} pins. %separate lines for signals going into the \gls{tlu} and signals out of the \gls{tlu}. See section~\ref{ch:hw\gls{dut}} for further details. \\ \section{Interface Modes}\label{sec:InterfaceModes} There are four different handshake modes, described below: \subsection{Trigger/Busy (EUDET) Mode} This mode is designed to allow the \gls{tlu} and \gls{dut} clocks to be asynchronous and to have any frequency relationship. After the \gls{tlu} detects an input trigger the TRIGGER signal to the \gls{dut} is asserted and the \gls{tlu} vetoes further triggers. The \gls{dut} responds by asserting the BUSY line to the \gls{tlu}. The \gls{tlu} detects that the BUSY line has been asserted and responds by de-asserting the trigger line. Finally the \gls{dut} responds by de-asserting the BUSY line. When the \gls{tlu} detects that the BUSY has been de-asserted it re-enables triggers. Figure \ref{fig:eudet-trigger-busy} shows signal timing for this interface mode. \begin{figure} \centering \includegraphics[width=0.95\linewidth]{./Images/aida-tlu-eudet-trigger-busy_01.pdf} \caption{Trigger/Busy Interface Mode Timing} \label{fig:eudet-trigger-busy} \end{figure} \subsection{Trigger/Busy Handshake With Trigger Number} This interface mode is an extension of the Trigger/Busy handshake. After the \gls{dut} detects that the \gls{tlu} has de-asserted the TRIGGER line it can cause the \gls{tlu} to clock out the current trigger number by toggling the DUT-Clock line. Figure ~\ref{fig:eudet-trigger-busy-trignumber} shows the signal timing for this interface mode. \begin{figure} \centering \includegraphics[width=0.95\linewidth]{./Images/aida-tlu-eudet-trigger-busy_trignumber_01.pdf} \caption{Trigger/Busy Interface Mode With Trigger Number } \label{fig:eudet-trigger-busy-trignumber} \end{figure} \subsection{Synchronous (AIDA) Mode} In synchronous mode (also known as AIDA mode) the \gls{tlu} sends a clock (by default 40MHz) to the \gls{dut}. When the \gls{tlu} produces a trigger the trigger line from \gls{tlu} to \gls{dut} is asserted for one cycle of the clock. In order to synchronize time-stamps between \gls{tlu} to \gls{dut} a single cycle timestamp reset signal is issued at the start of each run. The \gls{dut} can veto triggers at any point by asserting the BUSY line. Figure~\ref{fig:aida-handshake} shows the signal timing for this interface mode. \begin{figure} \centering \includegraphics[width=0.95\linewidth]{./Images/aida-tlu-aida-interface_01.pdf} \caption{Synchronous (AIDA) Interface Mode } \label{fig:aida-handshake} \end{figure} \subsection{Synchronous Mode With Trigger Number} This is a modification of the synchronous/AIDA mode. Immediately after the TLU issues a trigger it clocks out the trigger number (least significant bit first) on the Sync/T0 line. Figure~\ref{fig:aida-handshake-with-trigger} shows the signal timing for this interface mode. \begin{figure} \centering \includegraphics[width=0.95\linewidth]{./Images/aida-tlu-aida-with-trigger-timing_01.pdf} \caption{Synchronous (AIDA) Interface Mode With Trigger Number } \label{fig:aida-handshake-with-trigger} \end{figure} \ No newline at end of file
 {signal: [ {name: 'clk', wave: 'p..|..|..|..|..|.|.'}, {name: 'Scintillator signals', wave: '1..|.01............', node: '.....a..',phase:0.3}, {name: 'Trigger', wave: '0..|..|10|..|..|.|..',node: '.......0.......'}, {name: 'sync/T0', wave: '010|..|..|..|..|.|..'}, {name: 'Busy' , wave: '0..|..|..|.1|..|0|..',node: '...........1.......'}, {name: 'TLU State', wave: '=3.|..|=3|..|=.|.|3.', data : ["busy","idle","busy","idle","busy"],node: '.............2....'} ], edge: [ 'a<~>0 t1' , '1<~>2 t2' ] }
 \section{Shutter}\label{ch:shutter} \chapter{Shutter}\label{ch:shutter} An optional shutter'' can be enabled to synchronize the acquisition window to a signal, such as the spill signal from a beam line.\\ When the shutter is closed'' triggers are vetoed and no triggers are sent. When the shutter is open'' triggers can be generated and sent to active \gls{dut}s.\\ ... ... @@ -11,6 +11,7 @@ When the shutter is open, the \gls{tlu} will assert the \verb|CONT| line (see ta Behaviour of the shutter is controlled by the IPBus registers described in table~\ref{tab:shutter_registers}. If using EUDAQ, the registers can be written by including the corresponding steering parameters. In this case, the easiest way to avoid potential conflict between the shutter signal and the trigger input is to connect the shutter input to LEMO 6 and then setting \verb|trigMaskHi= 0x0|. This means that the corresponding input is never involved in a valid active word. See section~\ref{ch:triggerLogic} for details.\\ The parameters should be included in the config file described in section~\ref{ch:configFile}. >>>>>>> c7846bc11e8e9e621b1c031e28f70eb3380ed01a \begin{figure} \centering \includegraphics[width=.99\textwidth]{./Images/aida-tlu-sitra-shutter-timing_02.pdf} ... ...
 \chapter{Trigger inputs}\label{ch:triggerinputs} The six inputs on the \gls{tlu} can be used to generate a global trigger that is then issued to all the \gls{dut}s.\\ Each input has a programmable voltage discriminator that can be configured in the range [-1.3 : 1.3]~V.\\ All the inputs are protected by clamping diodes that limit the input voltage in the range [-5 : +5]~V. All the inputs are protected by clamping diodes that limit the input voltage in the range [-5 : +5]~V. The discriminators are followed by edge-finding and TDC logic. The output of the edge finding logic is fed into logic to stretch and delay the pulses by a controllable amount. The stretched and delayed trigger pulses are fed into a look-up table that generates the triggers. Figure~\ref{fig:aida-tlu-trigger-path} illustrates the path of the trigger signals through the TLU. \begin{figure} \centering \includegraphics[width=\linewidth]{./Images/aida-tlu-trigger-path.pdf} \caption{Trigger Path in TLU} \label{fig:aida-tlu-trigger-path} \end{figure} \section{Trigger logic}\label{ch:triggerLogic} The TLU has six trigger inputs than can be used to generate a valid trigger event. The number of possible different trigger combinations is $2^6= 64$ so a 64-bit word can be used to decide the valid combinations. In the hardware the 64-bit word is split into two 32-bit words (indicated as \gls{msb} and \gls{lsb} word) and the rules to generate the trigger can be specified by the user by writing in the two 32-bit registers \verb|TriggerPattern_highW| and \verb|TriggerPattern_lowW|: the first stores the 32 most significative bits of the trigger word, the latter stores the least significative bits.\\ ... ...