]> jspc29.x-matter.uni-frankfurt.de Git - daqdocu.git/commitdiff
*** empty log message ***
authorhadeshyp <hadeshyp>
Mon, 18 Jun 2012 11:03:33 +0000 (11:03 +0000)
committerhadeshyp <hadeshyp>
Mon, 18 Jun 2012 11:03:33 +0000 (11:03 +0000)
trb3/DacProgramming.tex

index d8142d2ffd811d3187b792fe2a1673b8d7e1ce5f..583520b5cf37b4275e8d2ec5d17c5053fb3e57d6 100644 (file)
@@ -1,7 +1,7 @@
 
 Programming the DAC for threshold generation is simple: A standard SPI interface takes 32 Bit of data, the device is chainable. A Perl software module cares about the data content, a simple VHDL core outputs the data and controls the CS signal.
 
-The slow-control interface:
+\paragraph*{Slow Control Interface}
 \begin{itemize*}
  \item 32 Bit Data Memory: 0xd400 - 0xd40f, Chain select mask 0xd410, Length register 0xd411 
  \item Transfer is started when the length register (counting 32 Bit words) is written. 
@@ -11,6 +11,7 @@ The slow-control interface:
  \item Interface speed: e.g. 6.25 MHz -> max. 80us for 16 chips
 \end{itemize*}
 
+\paragraph*{Configuration File}
 The software takes a text file as input and generates the correct SPI sequence to load and activate the DAC.
 The ASCII format is shown below, the commands can be found in table~\ref{ltc2600cmd}.
 \begin{verbatim}
@@ -18,7 +19,8 @@ The ASCII format is shown below, the commands can be found in table~\ref{ltc2600
   f333    1         4          0       0             3             0x3450
   f333    1         4          0       1             3             0x1230
   f333    1         4          1       0             3             0x6780
-  f333    1         4          2       0             3             0x3450
+!Reference 2500
+  f333    1         4          2       0             3             1250
 \end{verbatim}
 
 \begin{itemize*}
@@ -28,6 +30,7 @@ The ASCII format is shown below, the commands can be found in table~\ref{ltc2600
  \item DAC: The DAC number in the chain, counting from 0 to 15
  \item Channel: The Channel of the DAC (0..7)
  \item Value: The value to load. 16 Bit value. Note that we are using LTC2620 which are 12 Bit only, the lower 4 Bit are "don't care" in this case and should be 0
+ \item The "!Reference" keyword is used to set a reference for all following values. E.g. one can set the reference voltage used on the DAC and give all subsequent values in plain voltages. The format can be (almost) any number: integer, float or hex. The use is optional, if no reference is given, the upper limit is assumed to be 65536.
 \end{itemize*}
 
 \begin{table}
@@ -44,4 +47,13 @@ The ASCII format is shown below, the commands can be found in table~\ref{ltc2600
 \label{ltc2600cmd}
 \end{table}
 
+\paragraph*{Files}
+\begin{itemize*}
+ \item Implementation: trbnet/special/spi\_ltc2600.vhd
+ \item Testbench: trbnet/testbenches/tb\_ltc2600.vhd
+ \item Software: trbsoft/trb3/dac\_program.pl
+ \item Example Configuration: trbsoft/trb3/dac\_configuration.txt
+\end{itemize*}
+
+
     
\ No newline at end of file