From 4886b3faa8beb8d688fc53af957e7dc0c6d6129f Mon Sep 17 00:00:00 2001 From: Jan Michel Date: Tue, 10 Sep 2013 10:16:16 +0200 Subject: [PATCH] added temperature compensation for padiwa --- trb3/WasaFrontend.tex | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/trb3/WasaFrontend.tex b/trb3/WasaFrontend.tex index 9db26ab..4afc9cb 100644 --- a/trb3/WasaFrontend.tex +++ b/trb3/WasaFrontend.tex @@ -32,16 +32,23 @@ Note that up to 16 commands can be sent to a board with one trbnet access: Load \begin{table} - \begin{tabularx}{\textwidth}{c|c|X} -\textbf{Value} & \textbf{Name} & \textbf{Description} \\ + \begin{tabularx}{\textwidth}{c|c|c|X} +\textbf{Value} & \textbf{Register} & \textbf{Name} & \textbf{Description} \\ \hline -0x00 & PWM & Write/read settings for PWM channels 0 - 15.\\ -0x10 & UId / Temperature & read unique id. 64 Bit Id is divided in 4 16 Bit words, in registers 0 - 3. Temperature is available in register 4. (r/o)\\ -0x20 & I/O & Register 0 contains one bit per input. 0: enable (default), 1: disable.\newline Register 1 shows the current status of the pin.\newline Register 2 Write: Override LED status. Bit 0-3: LED in alphabetical order. Bit 4: enable override. Read: LED status.\newline Register 3: 4 Bit to select one input to be routed to test output (SPARE\_LINE 5\&6) \\ -0x40 & Memory & Read/Write to/from RAM. 16 registers with 8 Bit each.\\ -0x50 & Flash & Execute Flash command.\\ -0x51 & Flash & Load RAM content to PWM settings. Channel Bit 0 selects upper or lower half of PWM channels. No data payload\\ -0x5C & Flash & Enable access to configuration Flash when a '1' is written to register 0. Be careful!\\ +0x00 & any & PWM & Write/read settings for PWM channels 0 - 15.\\ +0x10 & 0--3 & UId/Temp & read unique id. 64 Bit Id is divided in 4 16 Bit words. (r/o)\\ +0x10 & 4 & UId/Temp & Board Temperature. Units are 1/16 degrees centigrade (r/o)\\ +0x20 & 0 & I/O & Input Enable, one bit per input. 0: enable (default), 1: disable.\\ +0x20 & 1 & I/O & Input Status, one bit per input, represents the current status of the pin.\\ +0x20 & 2 & I/O & LED. Write: Override LED status. Bit 0-3: LED in alphabetical order. Bit 4: disable override. Read: LED status. LEDs are off by default due to influence on PMTs.\\ +0x20 & 3 & I/O & Monitor Select. 4 Bit to select one input to be routed to test output (SPARE\_LINE 5\&6)\\ +0x20 & 4 & I/O & Input Invert, one bit for each input signal\\ +0x20 & 5 & I/O & Input Stretch, one bit for each input signal. The input signal gets stretched to at least two clock cycles (about 16 ns) length. The timing information of the falling edge is lost.\\ +0x26 & 6 & I/O & Temperature Compensation, a 16 Bit value to adjust thresholds when temperature is changing. See below. \\ +0x40 & any & Memory & Read/Write to/from RAM. 16 registers with 8 Bit each.\\ +0x50 & 0 & Flash & Execute Flash command.\\ +0x51 & 0--1 & Flash & Load RAM content to PWM settings. Channel Bit 0 selects upper or lower half of PWM channels. No data payload\\ +0x5C & 0 & Flash & Enable access to configuration Flash when a '1' is written to register 0. Be careful!\\ \end{tabularx} \caption{SPI component selection} \label{tab:spiselect} @@ -64,6 +71,12 @@ A flash command consists of a three Bit operation (Bit 15-13 in SPI register 0x5 \item[0xE erase] Erase either user or configuration Flash, depending on page address. \end{description*} +\subsubsection{Temperature Compensation} +As measured, the thresholds of input LVDS buffers shift by about 0.1 mV/K. For compensation, an offset is +added to the actually set threshold according to \\ +$\mbox{Offset} = \mbox{Temperature} \cdot \mbox{CompensationSetting} / 256$\\ +where the temperature is given in degrees centigrade. Note that the temperature is This feature is not available in all design versions. +If register 0x26 does not exist, it is not present. \subsubsection{Some Hints for Beginners} -- 2.43.0