Commit 456634b1 authored by Theodor-Adrian Stana's avatar Theodor-Adrian Stana

Updated documentation file, set pulse status LED lighting length to 125 ms.

parent f32467a1
This source diff could not be displayed because it is too large. You can view the blob instead.
\relax
\ifx\hyper@anchor\@undefined
\global \let \oldcontentsline\contentsline
\gdef \contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}}
\global \let \oldnewlabel\newlabel
\gdef \newlabel#1#2{\newlabelxx{#1}#2}
\gdef \newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}}
\AtEndDocument{\let \contentsline\oldcontentsline
\let \newlabel\oldnewlabel}
\else
\global \let \hyper@last\relax
\fi
\citation{StandardBlocking}
\@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{1}{section.1}}
\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Pulse Repetition system}}{1}{figure.1}}
\newlabel{prs}{{1}{1}{Pulse Repetition system\relax }{figure.1}{}}
\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Boards for Blocking repetition}}{2}{table.1}}
\newlabel{boards}{{1}{2}{Boards for Blocking repetition\relax }{table.1}{}}
\@writefile{toc}{\contentsline {section}{\numberline {2}Board Ports}{3}{section.2}}
\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}TTL-triggers}{3}{subsection.2.1}}
\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces TTL-triggers Front Panel inputs}}{3}{table.2}}
\newlabel{trigFP}{{2}{3}{TTL-triggers Front Panel inputs\relax }{table.2}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}TTL-level Blocking pulses replica}{3}{subsection.2.2}}
\@writefile{toc}{\contentsline {subsection}{\numberline {2.3}SFP connector}{3}{subsection.2.3}}
\@writefile{lot}{\contentsline {table}{\numberline {3}{\ignorespaces TTL-level Blocking pulses Front Panel output}}{4}{table.3}}
\newlabel{replicaFP}{{3}{4}{TTL-level Blocking pulses Front Panel output\relax }{table.3}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {2.4}General pupose}{4}{subsection.2.4}}
\@writefile{lot}{\contentsline {table}{\numberline {4}{\ignorespaces General pupose Front Panel IOs}}{4}{table.4}}
\newlabel{gpFP}{{4}{4}{General pupose Front Panel IOs\relax }{table.4}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {2.5}Front Panel}{5}{subsection.2.5}}
\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces CONV-TTL-BLO Front Panel}}{5}{figure.2}}
\newlabel{fp}{{2}{5}{CONV-TTL-BLO Front Panel\relax }{figure.2}{}}
\@writefile{toc}{\contentsline {section}{\numberline {3}Board Addressing}{6}{section.3}}
\@writefile{toc}{\contentsline {section}{\numberline {4}Functional Description}{7}{section.4}}
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Trigger sources}{7}{subsection.4.1}}
\@writefile{lot}{\contentsline {table}{\numberline {5}{\ignorespaces Trigger sources}}{7}{table.5}}
\newlabel{ts}{{5}{7}{Trigger sources\relax }{table.5}{}}
\@writefile{toc}{\contentsline {section}{\numberline {5}Memory Map}{8}{section.5}}
\@writefile{lot}{\contentsline {table}{\numberline {6}{\ignorespaces CONV-TTL-BLO Memory map I/II}}{8}{table.6}}
\newlabel{mmap1}{{6}{8}{CONV-TTL-BLO Memory map I/II\relax }{table.6}{}}
\@writefile{lot}{\contentsline {table}{\numberline {7}{\ignorespaces CONV-TTL-BLO Memory map II/II}}{9}{table.7}}
\newlabel{mmap2}{{7}{9}{CONV-TTL-BLO Memory map II/II\relax }{table.7}{}}
\@writefile{toc}{\contentsline {section}{\numberline {6}Register Description}{10}{section.6}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}Access Registers}{10}{subsection.6.1}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.1.1}CTR0\_ACCESS}{10}{subsubsection.6.1.1}}
\@writefile{lot}{\contentsline {table}{\numberline {8}{\ignorespaces CTR0\_ACCESS Register}}{10}{table.8}}
\newlabel{ctr0access}{{8}{10}{CTR0\_ACCESS Register\relax }{table.8}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.1.2}CTR1\_ACCESS}{10}{subsubsection.6.1.2}}
\@writefile{lot}{\contentsline {table}{\numberline {9}{\ignorespaces CTR1\_ACCESS Register}}{11}{table.9}}
\newlabel{ctr1access}{{9}{11}{CTR1\_ACCESS Register\relax }{table.9}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.2}I2C Registers}{12}{subsection.6.2}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.1}CTR0\_I2C}{12}{subsubsection.6.2.1}}
\@writefile{lot}{\contentsline {table}{\numberline {10}{\ignorespaces CTR0\_I2C Register}}{12}{table.10}}
\newlabel{ctr0I2C}{{10}{12}{CTR0\_I2C Register\relax }{table.10}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.2.2}CTR1\_I2C}{12}{subsubsection.6.2.2}}
\@writefile{lot}{\contentsline {table}{\numberline {11}{\ignorespaces CTR1\_I2C Register}}{12}{table.11}}
\newlabel{ctr1I2C}{{11}{12}{CTR1\_I2C Register\relax }{table.11}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.3}Channel Registers}{13}{subsection.6.3}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.1}CTR0\_CH[x]}{13}{subsubsection.6.3.1}}
\@writefile{lot}{\contentsline {table}{\numberline {12}{\ignorespaces CTR0\_CH[x] Register}}{13}{table.12}}
\newlabel{ctr0ch}{{12}{13}{CTR0\_CH[x] Register\relax }{table.12}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.2}CTR1\_CH[x]}{13}{subsubsection.6.3.2}}
\@writefile{lot}{\contentsline {table}{\numberline {13}{\ignorespaces CTR1\_CH[x] Register}}{13}{table.13}}
\newlabel{ctr1ch}{{13}{13}{CTR1\_CH[x] Register\relax }{table.13}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.3}RAM0\_CH[x]}{13}{subsubsection.6.3.3}}
\@writefile{lot}{\contentsline {table}{\numberline {14}{\ignorespaces RAM0\_CH[x] Register}}{14}{table.14}}
\newlabel{ram0ch}{{14}{14}{RAM0\_CH[x] Register\relax }{table.14}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.4}RAM1\_CH[x]}{14}{subsubsection.6.3.4}}
\@writefile{lot}{\contentsline {table}{\numberline {15}{\ignorespaces RAM1\_CH[x] Register}}{14}{table.15}}
\newlabel{ram1ch}{{15}{14}{RAM1\_CH[x] Register\relax }{table.15}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.3.5}RAM2\_CH[x]}{14}{subsubsection.6.3.5}}
\@writefile{lot}{\contentsline {table}{\numberline {16}{\ignorespaces RAM2\_CH[x] Register}}{14}{table.16}}
\newlabel{ram2ch}{{16}{14}{RAM2\_CH[x] Register\relax }{table.16}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.4}Multiboot Registers}{15}{subsection.6.4}}
\@writefile{toc}{\contentsline {subsection}{\numberline {6.5}White Rabbit Registers}{15}{subsection.6.5}}
\bibstyle{unsrt}
\bibdata{userGuide}
\bibcite{StandardBlocking}{1}
\@writefile{toc}{\contentsline {section}{\numberline {7}Installation}{16}{section.7}}
@misc{StandardBlocking,
author= "C. Gil Soriano",
title= {{Standard Blocking Output Signal Definition for CTDAH board}},
month= sep,
year= 2011,
note = "{\url{http://www.ohwr.org/documents/109}}"
}
@TECHREPORT{UG380,
institution= "Xilinx Inc.",
title= {{Spartan-6 FPGA Configuration User Guide}},
month= jul,
year= 2011,
number = "UG380 v2.3",
note = "{\url{http://www.xilinx.com/support/documentation/user_guides/ug380.pdf}}"
}
\ No newline at end of file
%%This is a very basic article template.
%%There is just one section and two subsections.
\documentclass[a4paper,11pt]{article}
\usepackage[pdfborder= 0 0 0 1]{hyperref}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{rotating}
\usepackage{multirow}
\usepackage{draftwatermark}
\SetWatermarkLightness{0.90}
\SetWatermarkScale{5}
\begin{document}
\title{\textbf{CONV-TTL-BLO \\ User Guide}}
\author{Carlos Gil Soriano\\BE-CO-HT\\
\href{mailto:carlos.gil.soriano@cern.ch}{\textbf{\textit{carlos.gil.soriano@cern.ch}}}}
\date{\today}
\maketitle
\thispagestyle{empty}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=0.25, keepaspectratio]{Figures/CERN-Logo.png}
\end{center}
\end{figure}
\begin{abstract}
This document describes the CONV-TTL-BLO board, a Blocking pulse repetitor
board in double height VME format. It replaces all the following boards:
\begin{itemize}
\item 8 channel repeater
\item 16 channel repeater
\item CTDAC
\item LA-BLO-TTL
\item LAF-BLO-TTL
\item LASB-TTL-BLO
\item LA-GATE
\item LA-TTL-BLO
\item LAPF-TTL-BLO\footnote{For replacing this board a pulse width of 4us
must be set.}
\end{itemize}
\end{abstract}
\maketitle{}
\pagebreak
\pagenumbering{roman}
\setcounter{page}{1}
\tableofcontents
\pagebreak
\listoffigures
\listoftables
\pagebreak
\pagenumbering{arabic}
\setcounter{page}{1}
\pagebreak
\section{Introduction}
CONV-TTL-BLO is a board intended for replicating Blocking Pulses, offering six
totally independent replication channels. The shape of the pulses is defined in
\cite{StandardBlocking}. CONV-TTL-BLO works together with two more boards:
CONV-TTL-RTM and CONV-TTL-RTM-BLO.\\
CONV-TTL-BLO holds all the active circuitry
and it is connected as a Front Module to a VME64 backplane. The ports offered
in the Front Panel are explained in the next section.\\
\begin{figure}[!htdp]
\begin{center}
\includegraphics[scale=0.55, keepaspectratio]{Figures/BLOschema.png}
\caption{Pulse Repetition system}
\label{prs}
\end{center}
\end{figure}
CONV-TTL-RTM and CONV-TTL-RTM-BLO are both connected to the rear part of the
crate and provide, in the rear panel, the connectivity of the I/O Blocking
lines.
Every channel offers, in the Rear Panel, three Blocking Pulse outputs and one
Blocking Pulse input.\\
CONV-TTL-RTM is a motherboard attached to the Rear Transition Module of the P2
VME64 connector. It connects CONV-TTL-BLO to CONV-TTL-RTM-BLO and
provides overvoltage protection for all the I/Os of all the channels.\\
CONV-TTL-RTM-BLO is a piggyback board mounted on CONV-TTL-RTM. It holds all the
LEMO 00 connectors and channel LEDs that are offered in the Rear Panel.
\begin{table}[htdp]
\begin{center}
%\begin{turn}{90}
\begin{tabular}{|l|l|l|}
\hline
\textbf{Board} & \textbf{Connection}& \textbf{Ports}\\
\hline
\hline
\textit{CONV-TTL-BLO} & Front & SFP\\
& & TTL Blocking triggers\\
& & TTL Blocking output replica\\
& & inverters \\
\hline
\textit{CONV-TTL-RTM} & Back & - \\
\hline
\textit{CONV-TTL-RTM-BLO} & Back & Blocking Pulse input\\
&& Blocking Pulse outputs\\
\hline
\end{tabular}
\caption{Boards for Blocking repetition}
\label{boards}
%\end{turn}
\end{center}
\end{table}
\pagebreak
\section{Board Ports}
CONV-TTL-BLO consist of several ports, divided in three sections (from top to
bottom as shown in Figure~\ref{fp}):
\begin{itemize}
\item SFP connector: \textbf{[A]}.
\item Blocking connectors: \textbf{[B]} and \textbf{[C]}.
\item General Purpose connectors: \textbf{[D]} and \textbf{[E]}.
\end{itemize}
\subsection{TTL-triggers}
They correspond to the block \textbf{[B]} in Figure~\ref{fp}. The connectors are
LEMO 00.
By connecting an external trigger source to one of the connectors a pulse can be
replicated, either in a Blocking Pulse level in the Rear Panel or in a TTL panel
in the Front Panel.
\begin{table}[htdp]
\begin{center}
\begin{tabular}{|l|l|l|c|c|}
\hline
\textbf{Name} & \textbf{Type} & \textbf{Level} & \textbf{Internal} &
\textbf{Location}\\
&&&\textbf{Termination} &\\
\hline
\hline
CH1 IN & Pulsed & TTL or $\overline{TTL}$ & 50$\Omega$ Parallel & [B] \\
\hline
CH2 IN & Pulsed & TTL or $\overline{TTL}$ & 50$\Omega$ Parallel & [B]\\
\hline
CH3 IN & Pulsed & TTL or $\overline{TTL}$ & 50$\Omega$ Parallel & [B]\\
\hline
CH4 IN & Pulsed & TTL or $\overline{TTL}$ & 50$\Omega$ Parallel & [B]\\
\hline
CH5 IN & Pulsed & TTL or $\overline{TTL}$ & 50$\Omega$ Parallel & [B]\\
\hline
CH6 IN & Pulsed & TTL or $\overline{TTL}$ & 50$\Omega$ Parallel & [B]\\
\hline
\end{tabular}
\caption{TTL-triggers Front Panel inputs}
\label{trigFP}
\end{center}
\end{table}
\subsection{TTL-level Blocking pulses replica}
They correspond to the block \textbf{[C]} in Figure~\ref{fp}. The connectors are
LEMO 00.
From these connectors a TTL-level Blocking Pulse replica of the Rear Panel
outputs if offered to the Front Panel. The pulse width of this output is
similar to the pulse outputted in the Rear Panel; however, the rise time and top
pulse level are obviously different from the Blocking output.\\
Once pulse is outputted, the LED of the corresponding channel blinks for 500
ms.\\
A summary of all the connector of this kind is found in Figure~\ref{replicaFP}.
\begin{table}[htdp]
\begin{center}
\begin{tabular}{|l|l|l|c|c|}
\hline
\textbf{Name} & \textbf{Type} & \textbf{Level} & \textbf{Internal} &
\textbf{Location}\\
&&&\textbf{Termination} &\\
\hline
\hline
CH1 OUT & Pulsed & TTL & No & [C]\\
\hline
CH2 OUT & Pulsed & TTL & No & [C]\\
\hline
CH3 OUT & Pulsed & TTL & No & [C]\\
\hline
CH4 OUT & Pulsed & TTL & No & [C]\\
\hline
CH5 OUT & Pulsed & TTL & No & [C]\\
\hline
CH6 OUT & Pulsed & TTL & No & [C]\\
\hline
\end{tabular}
\caption{TTL-level Blocking pulses Front Panel output}
\label{replicaFP}
\end{center}
\end{table}
\subsection{SFP connector}
It is marked in Figure~\ref{fp} as \textbf{[A]}. If the cable is plugged-in the
socket, \textit{White Rabbit} precise time-stamping can be obtained in
CONV-TTL-BLO. Three LEDs above the connector show the status of the
\textit{White Rabbit} link.
\subsection{General pupose}
In the lower part of the Front Panel (\textbf{[D]} and \textbf{[E]} in
Figure~\ref{fp}) can be found four dedicated inverters. The output is a TTL inverted version of
the TTL input.
\begin{table}[htdp]
\begin{center}
\begin{tabular}{|l|l|l|c|c|}
\hline
\textbf{Name} & \textbf{Type} & \textbf{Level} & \textbf{Internal} &
\textbf{Location}\\
&&&\textbf{Termination} &\\
\hline
\hline
\multicolumn{5}{|c|}{\textbf{General Purpose Inputs}}\\
\hline
INV A IN & Pulsed & TTL or $\overline{TTL}$ & No & [D]\\
\hline
INV B IN & Pulsed & TTL or $\overline{TTL}$ & No & [D]\\
\hline
INV C IN & Pulsed & TTL or $\overline{TTL}$ & No & [D]\\
\hline
INV D IN & Pulsed & TTL or $\overline{TTL}$ & No & [D]\\
\hline
\hline
\multicolumn{5}{|c|}{\textbf{General Purpose Inverted Outputs}}\\
\hline
INV A OUT & Pulsed & $\overline{TTL}$ or TTL & No & [E]\\
\hline
INV B OUT & Pulsed & $\overline{TTL}$ or TTL & No & [E]\\
\hline
INV C OUT & Pulsed & $\overline{TTL}$ or TTL & No & [E]\\
\hline
INV D OUT & Pulsed & $\overline{TTL}$ or TTL & No & [E]\\
\hline
\end{tabular}
\caption{General pupose Front Panel IOs}
\label{gpFP}
\end{center}
\end{table}
\pagebreak
\subsection{Front Panel}
\begin{figure}[!htdp]
\begin{center}
\includegraphics[scale=0.75, keepaspectratio]{Figures/FrontPanel.png}
\caption{CONV-TTL-BLO Front Panel}
\label{fp}
\end{center}
\end{figure}
\pagebreak
\section{Board Addressing}
Communication with the FPGA is done via I2C interface through SERA and SERB pins
in P1 VME64x connectors. In order to access one card inside a certain crate, it
is necessary to set:
\begin{itemize}
\item An \textbf{I2C address}. Every CONV-TTL-BLO has an I2C address that
equals the Geographical Address of the slot according to VME64x specifications. It is
7 bits width.
\item An \textbf{internal CONV-TTL-BLO address}. It is a short integer (16
bits) in big endian format.
\end{itemize}
%\subsection{Write command}
%\begin{table}[htdp]
%\begin{tabular}{|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|}
%\hline
%7 & 6 & 5 & 4 & 3 & 2 & 1 & 0\\
%\hline
%\multicolumn{7}{|c|}{I2C ADDRESS} & RD\textbackslash\\
%\multicolumn{7}{|c|}{} & WRN\\
%\hline
%\end{tabular}
%\vspace{12pt}
%\begin{tabular}{|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|}
%\hline
%7 & 6 & 5 & 4 & 3 & 2 & 1 & 0\\
%\hline
%\multicolumn{7}{|c|}{I2C ADDRESS} & RD\textbackslash\\
%\multicolumn{7}{|c|}{} & WRN\\
%\hline
%\end{tabular}
%\vspace{12pt}
%\begin{tabular}{|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|}
%\hline
%7 & 6 & 5 & 4 & 3 & 2 & 1 & 0\\
%\hline
%\multicolumn{7}{|c|}{I2C ADDRESS} & RD\textbackslash\\
%\multicolumn{7}{|c|}{} & WRN\\
%\hline
%\end{tabular}
%\caption{General pupose Front Panel IOs}
%\label{gpFP}
%\end{table}
\pagebreak
\section{Functional Description}
The task of CONV-TTL-BLO is to output a Blocking Pulse upon a reception of a
trigger is received.
As stated before, CONV-TTL-BLO works together with
CONV-TTL-RTM and CONV-TTL-RTM-BLO which are both in the rear part of the crate.
The system formed by this three boards offers three independent channels for
outputting Blocking Pulses. Refer to Figure~\ref{prs} for a visual,
whole-system, description.
CONV-TTL-BLO allows the user to set propierties for the pulse replication
and receive information above the latest events logged in the board.
\subsection{Trigger sources}
There are two sources for triggering in every channel: one coming from the
Front Panel (CONV-TTL-BLO) and other coming from the Rear Panel
(CONV-TTL-RTM through CONV-TTL-RTM-BLO).
The trigger policy is that \emph{a Blocking pulse will be outputted whenever
either a trigger in the Front Panel or the Rear Panel is detected}:\\
\begin{table}[htdp]
\begin{center}
\begin{tabular}{|c|c|c|}
\hline
\textbf{Trigger} & \textbf{Board} & \textbf{Connection}\\
\hline
\hline
TTL & CONV-TTL-BLO & Front Panel\\
\hline
Blocking & CONV-TTL-RTM-BLO & Rear Panel\\
\hline
\end{tabular}
\vspace{0.5cm}
\begin{tabular}{|c|}
\hline
\textbf{Global trigger is OR function of the two sources above}\\
\hline
\end{tabular}
\caption{Trigger sources}
\label{ts}
\end{center}
\end{table}
\pagebreak
\section{Memory Map}
\begin{table}[!htpd]
\begin{center}
\begin{turn}{90}
\begin{tabular}{|p{2cm}|p{2cm}|p{2cm}|p{3cm}|p{6cm}|}
\hline
\textbf{Channel} & \textbf{Address} & \textbf{Data type} & \textbf{Name} &
\textbf{Comment}\\
\hline
\hline
\multirow{2}{*}{Access} & 0x0101 & Bit pattern & CTR0\_ACCESS & Control device
access 0\\\cline{2-5}
&0x0102 & Bit pattern & ACTR1 & Control device access 1 \\
\hline
\hline
\multirow{2}{*}{I2C} & 0x0202 & Bit pattern & CTR0\_I2C & I2C control
0\\\cline{2-5} & 0x0203 & Bit pattern & I2C\_CTR1 & I2C control 1\\
\hline
\hline
\multirow{5}{*}{Ch 1} & 0x0301 & Bit pattern & CTR0\_CH1 & Channel 1
control\\\cline{2-5}
& 0x0302 & Integers & CTR1\_CH1 & Channel 1 min/max Pulse
length\\\cline{2-5}
& 0x0305 & Bit pattern & RAM0\_CH1 & RAM control Channel 1\\\cline{2-5}
& 0x0306 & Bit pattern & RAM1\_CH1 & Current read/write Address
pointers\\\cline{2-5}
& 0x0307 & Bit pattern & RAM2\_CH1 & Start/end read address\\
\hline
\hline
\multirow{5}{*}{Ch 2} & 0x0401 & Bit pattern & CTR0\_CH2 & Channel
control\\\cline{2-5}
& 0x0402 & Integers & CTR1\_CH2 & Channel 2 min/max Pulse
length\\\cline{2-5}
& 0x0405 & Bit pattern & RAM0\_CH2 & RAM control Channel 2\\\cline{2-5}
& 0x0406 & Bit pattern & RAM1\_CH2 & Current read/write Address
pointers\\\cline{2-5}
& 0x0407 & Bit pattern & RAM2\_CH2 & Start/end read address\\
\hline
\hline
\multirow{5}{*}{Ch 3} & 0x0501 & Bit pattern & CTR0\_CH3 & Channel 3
control\\\cline{2-5}
& 0x0502 & Integers & CTR1\_CH3 & Channel 3 min/max Pulse
length\\\cline{2-5}
& 0x0505 & Bit pattern & RAM0\_CH3 & RAM control Channel 3\\\cline{2-5}
& 0x0506 & Bit pattern & RAM1\_CH3 & Current read/write Address
pointers\\\cline{2-5}
& 0x0507 & Bit pattern & RAM2\_CH3 & Start/end read address\\
\hline
\end{tabular}
\end{turn}
\end{center}
\caption{CONV-TTL-BLO Memory map I/II}
\label{mmap1}
\end{table}
\begin{table}[!htpd]
\begin{center}
\begin{turn}{-90}
\begin{tabular}{|p{2.25cm}|p{2cm}|p{2cm}|p{3cm}|p{6cm}|}
\hline
\textbf{Channel} & \textbf{Address} & \textbf{Data type} & \textbf{Name} &
\textbf{Comment}\\
\hline
\hline
\multirow{5}{*}{Ch 4} & 0x0601 & Bit pattern & CTR0\_CH4 & Channel 4
control\\\cline{2-5}
& 0x0602 & Integers & CTR1\_CH4 & Channel 4 min/max Pulse
length\\\cline{2-5}
& 0x0605 & Bit pattern & RAM0\_CH4 & RAM control Channel 4\\\cline{2-5}
& 0x0606 & Bit pattern & RAM1\_CH4 & Current read/write Address
pointers\\\cline{2-5}
& 0x0607 & Bit pattern & RAM2\_CH4 & Start/end read address\\
\hline
\hline
\multirow{5}{*}{Ch 5} & 0x0701 & Bit pattern & CTR0\_CH5 & Channel 5
control\\\cline{2-5}
& 0x0702 & Integers & CTR1\_CH5 & Channel 5 min/max Pulse
length\\\cline{2-5}
& 0x0705 & Bit pattern & RAM0\_CH5 & RAM control Channel 5\\\cline{2-5}
& 0x0706 & Bit pattern & RAM1\_CH5 & Current read/write Address
pointers\\\cline{2-5}
& 0x0707 & Bit pattern & RAM2\_CH5 & Start/end read address\\
\hline
\hline
\multirow{5}{*}{Ch 6} & 0x0801 & Bit pattern & CTR0\_CH6 & Channel 6
control\\\cline{2-5}
& 0x0802 & Integers & CTR1\_CH6 & Channel 6 min/max Pulse
length\\\cline{2-5}
& 0x0805 & Bit pattern & RAM0\_CH6 & RAM control Channel 6\\\cline{2-5}
& 0x0806 & Bit pattern & RAM1\_CH6 & Current read/write Address
pointers\\\cline{2-5}
& 0x0807 & Bit pattern & RAM2\_CH6 & Start/end read address\\
\hline
\hline
\multirow{5}{*}{Multiboot} & 0x0901 & Bit pattern & CTRL0 & Multiboot operation
control\\\cline{2-5}
& 0x0904 & Integer & GENERAL1 & Lower bits 1$^{st}$ bitstream
address\\\cline{2-5} & 0x0905 & Bit pattern & GENERAL2 & Lower bits 1$^{st}$
bitstream address\\\cline{2-5}
& 0x0906 & Integer & GENERAL3 & Higher bits 2$^{nd}$ bitstream
address\\\cline{2-5}
& 0x0907 & Bit pattern & GENERAL4 & Higher bits 2$^{nd}$ bitstream
address\\\cline{2-5}
\hline
\hline
\multirow{2}{*}{EEPROM} &&&&\\\cline{2-5}
&&&&\\
\hline
\multirow{2}{*}{White Rabbit} &&&&\\\cline{2-5}
&&&&\\
\hline
\end{tabular}
\end{turn}
\end{center}
\caption{CONV-TTL-BLO Memory map II/II}
\label{mmap2}
\end{table}
\pagebreak
\section{Register Description}
\subsection{Access Registers}
\subsubsection{CTR0\_ACCESS}
The \textit{CTR0} register is a read-write register that enable and disable
access to Wishbone devices in the memory map.\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | l |}
\hline
\multicolumn{3}{|c|}{\textbf{CTR0\_ACCESS}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
0 & EN0 & ENable access to device 0 in memory map\\
\hline
1 & EN1 & ENable access to device 1 in memory map\\
\hline
2 & EN2 & ENable access to device 2 in memory map\\
\hline
3 & EN3 & ENable access to device 3 in memory map\\
\hline
4 & EN4 & ENable access to device 4 in memory map\\
\hline
5 & EN5 & ENable access to device 5 in memory map\\
\hline
6 & EN6 & ENable access to device 6 in memory map\\
\hline
7 & EN7 & ENable access to device 7 in memory map\\
\hline
8 & EN8 & ENable access to device 8 in memory map\\
\hline
9 & EN9 & ENable access to device 9 in memory map\\
\hline
10 & EN10 & ENable access to device 10 in memory map\\
\hline
11 & EN11 & ENable access to device 11 in memory map\\
\hline
31-13 & x & Reserved \\
\hline
\end{tabular}\\
\caption{CTR0\_ACCESS Register}
\label{ctr0access}
\end{center}
\end{table}
\subsubsection{CTR1\_ACCESS}
The \textit{CTR1} register is a read-write register that enable and disable
read and write permissions to Wishbone devices in the memory map.\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | l |}
\hline
\multicolumn{3}{|c|}{\textbf{CTR1\_ACCESS}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
0 & GWR & General write permissions\\
\hline
1 & GRD & General read permissions\\
\hline
2 & WR0 & WRite permissions in memory map 0\\
\hline
3 & RD0 & ReaD permissions in memory map 0\\
\hline
4 & WR1 & WRite permissions in memory map 1\\
\hline
5 & RD1 & ReaD permissions in memory map 1\\
\hline
6 & WR2 & WRite permissions in memory map 2\\
\hline
7 & RD2 & ReaD permissions in memory map 2\\
\hline
8 & WR3 & WRite permissions in memory map 3\\
\hline
9 & RD3 & ReaD permissions in memory map 3\\
\hline
10 & WR4 & WRite permissions in memory map 4\\
\hline
11 & RD4 & ReaD permissions in memory map 4\\
\hline
12 & WR5 & WRite permissions in memory map 5\\
\hline
13 & RD5 & ReaD permissions in memory map 5\\
\hline
14 & WR6 & WRite permissions in memory map 6\\
\hline
15 & RD6 & ReaD permissions in memory map 6\\
\hline
16 & WR7 & WRite permissions in memory map 7\\
\hline
17 & RD7 & ReaD permissions in memory map 7\\
\hline
18 & WR8 & WRite permissions in memory map 8\\
\hline
19 & RD8 & ReaD permissions in memory map 8\\
\hline
20 & WR9 & WRite permissions in memory map 9\\
\hline
21 & RD9 & ReaD permissions in memory map 9\\
\hline
22 & WR10 & WRite permissions in memory map 10\\
\hline
23 & RD10 & ReaD permissions in memory map 10\\
\hline
24 & WR11 & WRite permissions in memory map 11\\
\hline
25 & RD11 & ReaD permissions in memory map 11\\
\hline
31-26 & x & Reserved\\
\hline
\end{tabular}
\caption{CTR1\_ACCESS Register}
\label{ctr1access}
\end{center}
\end{table}
\pagebreak
\subsection{I2C Registers}
\subsubsection{CTR0\_I2C}
The CTR0 register is a write-read register. It controls the indirect addres
and holds the I2C address (which in the case of \textit{CONV-TTL-BLO} will be
connected to VME64x geographical address pins).\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | c |}
\hline
\multicolumn{3}{|c|}{\textbf{CTR0\_I2C}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
0 & EN & general ENable\\
\hline
1 & RST & general ReSeT\\
\hline
2 & PEN & Prescaler ENable\\
\hline
5-3 & x & Reserved\\
\hline
7-6 & BIA & Bytes Indirect Addressing\\
\hline
14-8 & A[6:0] & I2C address\\
\hline
15 & x & Reserved\\
\hline
31-16 & - & Not used\\
\hline
\end{tabular}
\caption{CTR0\_I2C Register}
\label{ctr0I2C}
\end{center}
\end{table}
\subsubsection{CTR1\_I2C}
The CTR1 register is a write-read register. It shows the fsm of the separate
\textit{read} and \textit{write} fsms.\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | c |}
\hline
\multicolumn{3}{|c|}{\textbf{CTR1\_I2C}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
7-0 & RDS & fsm status: ReaD Status\\
\hline
15-8 & WDS & fsm status: WRite Status\\
\hline
31-16 & - & Not used\\
\hline
\end{tabular}
\caption{CTR1\_I2C Register}
\label{ctr1I2C}
\end{center}
\end{table}
\pagebreak
\subsection{Channel Registers}
\subsubsection{CTR0\_CH[x]}
The CTR0\_CH[x] register is a read-write register. It allows setting up the
basic configuration of the trigger HDL core, its RAM blocks and both the deglitching
mask and output pulse length to be used.\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | c |}
\hline
\multicolumn{3}{|c|}{\textbf{CTR0\_CH[x]}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
0 & EN & General ENable\\
\hline
1 & CLR & General CLeaR\\
\hline
3-2 & x & Reserved\\
\hline
4 & EN\_TT & Enable Time-Tagging\\
\hline
5 & CLR\_TT & Clear Time-Tagging\\
\hline
7-6 & RDM & time-tagging ReaD Mode\\
\hline
15-8 & CGM & Current Glitch Mask\\
\hline
31-16 & CPL & Current Pulse Length\\
\hline
\end{tabular}
\caption{CTR0\_CH[x] Register}
\label{ctr0ch}
\end{center}
\end{table}
\subsubsection{CTR1\_CH[x]}
The CTR1\_CH[x] register is a read-write register. It allows setting up the
boundaries that override invalid values of CPL field in CTR0.\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | c |}
\hline
\multicolumn{3}{|c|}{\textbf{CTR1\_CH[x]}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
15-0 & MinPL & Minimum Pulse Length\\
\hline
31-16 & MaxPL & Maximum Pulse Length\\
\hline
\end{tabular}
\caption{CTR1\_CH[x] Register}
\label{ctr1ch}
\end{center}
\end{table}
\subsubsection{RAM0\_CH[x]}
The RAM0 register is a read-write register. It allows setting up the RAM
and the read request to it.\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | c |}
\hline
\multicolumn{3}{|c|}{\textbf{RAM0\_CH[x]}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
0 & EN\_TT & Enable Time-Tagging \\
\hline
1 & CLR\_TT & Clear Time-Tagging \\
\hline
3-2 & RDM & time-tagging ReaD mode\\
\hline
4 & EMPTY & RAM empty\\
\hline
5 & FULL & RAM full\\
\hline
6 & WA & RAM Wrapped Around\\
\hline
7 & RQT & ReQuesT read\\
\hline
31-8 & x & Reserved\\
\hline
\end{tabular}
\caption{RAM0\_CH[x] Register}
\label{ram0ch}
\end{center}
\end{table}
\subsubsection{RAM1\_CH[x]}
The RAM1 register is a read-only register. It shows the current read and write
address configured to be accessed.\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | c |}
\hline
\multicolumn{3}{|c|}{\textbf{RAM1\_CH[x]}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
15-0 & CRA & Current Read Address\\
\hline
31-16& CWA & Current Write Address\\
\hline
\end{tabular}
\caption{RAM1\_CH[x] Register}
\label{ram1ch}
\end{center}
\end{table}
\subsubsection{RAM2\_CH[x]}
The RAM2 register is a read-write register. It allows setting up the RAM adress
range to be read.\\
\begin{table}[!htpd]
\begin{center}
\begin{tabular}{| l | c | c |}
\hline
\multicolumn{3}{|c|}{\textbf{RAM2\_CH[x]}}\\
\hline
\textbf{Bits} & \textbf{Field} & \textbf{Meaning}\\
\hline
\hline
15-0 & SA & Starting read Address\\
\hline
31-16 & EA & Ending read Address\\
\hline
\end{tabular}
\caption{RAM2\_CH[x] Register}
\label{ram2ch}
\end{center}
\end{table}
\subsection{Multiboot Registers}
\subsection{White Rabbit Registers}
\pagebreak
\section{Installation}
\bibliographystyle{unsrt}
\bibliography{userGuide}
\end{document}
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="543.56464"
height="1008"
id="svg5146"
version="1.1"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="EDA-02446-V1-0_fp.svg">
<defs
id="defs5148" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.7"
inkscape:cx="605.36464"
inkscape:cy="488.67189"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:window-width="1855"
inkscape:window-height="1176"
inkscape:window-x="65"
inkscape:window-y="24"
inkscape:window-maximized="1"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0" />
<metadata
id="metadata5151">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-76.789139,-31.21929)">
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="547.73383"
y="241.57036"
id="text20731"
sodipodi:linespacing="125%"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
id="tspan20733"
x="547.73383"
y="241.57036"
style="font-size:16px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold">SFP connector</tspan><tspan
sodipodi:role="line"
x="547.73383"
y="261.57037"
id="tspan20735"
style="font-size:16px;text-align:center;text-anchor:middle">for White Rabbit</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="548.6897"
y="522.74042"
id="text20731-9"
sodipodi:linespacing="125%"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
x="548.6897"
y="522.74042"
id="tspan20735-0"
style="font-size:16px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold">OUTPUTS</tspan><tspan
sodipodi:role="line"
x="548.6897"
y="542.74042"
style="font-size:16px;text-align:center;text-anchor:middle"
id="tspan21602">TTL-level replica</tspan><tspan
sodipodi:role="line"
x="548.6897"
y="562.74042"
style="font-size:16px;text-align:center;text-anchor:middle"
id="tspan21608">of Blocking pulses</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="150.5157"
y="520.45709"
id="text20731-9-4"
sodipodi:linespacing="125%"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
x="150.5157"
y="520.45709"
style="font-size:16px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold"
id="tspan21612">INPUTS</tspan><tspan
sodipodi:role="line"
x="150.5157"
y="540.45709"
style="font-size:16px;text-align:center;text-anchor:middle"
id="tspan21600">TTL-triggers for</tspan><tspan
sodipodi:role="line"
x="150.5157"
y="560.45709"
style="font-size:16px;text-align:center;text-anchor:middle"
id="tspan21618">Blocking repetition</tspan></text>
<text
xml:space="preserve"
style="font-size:104.93813324px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:none;stroke:#000000;stroke-width:1.17282104;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;font-family:Sans"
x="488.87698"
y="461.42328"
id="text20786"
sodipodi:linespacing="125%"
transform="scale(0.73577913,1.3591035)"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
id="tspan20788"
x="488.87698"
y="461.42328"
style="font-size:317.19317627px;fill:none;stroke:#000000;stroke-width:1.17282104;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">}</tspan></text>
<text
xml:space="preserve"
style="font-size:89.47497559px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;font-family:Sans"
x="569.42139"
y="199.90863"
id="text20786-5"
sodipodi:linespacing="125%"
transform="scale(0.73577913,1.3591035)"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
id="tspan20788-9"
x="569.42139"
y="199.90863"
style="font-size:64px;fill:none;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">}</tspan></text>
<text
xml:space="preserve"
style="font-size:104.93813324px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:none;stroke:#000000;stroke-width:1.17282104;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;font-family:Sans"
x="-474.21793"
y="-272.16052"
id="text20786-3"
sodipodi:linespacing="125%"
transform="scale(-0.73577913,-1.3591035)"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
id="tspan20788-5"
x="-474.21793"
y="-272.16052"
style="font-size:317.19317627px;fill:none;stroke:#000000;stroke-width:1.17282104;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">}</tspan></text>
<text
xml:space="preserve"
style="font-size:87.52331543px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:none;stroke:#000000;stroke-width:0.97818768;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;font-family:Sans"
x="538.88245"
y="673.55035"
id="text20786-7"
sodipodi:linespacing="125%"
transform="scale(0.73577913,1.3591035)"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
id="tspan20788-1"
x="538.88245"
y="673.55035"
style="font-size:160px;fill:none;stroke:#000000;stroke-width:0.97818768;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">}</tspan></text>
<text
xml:space="preserve"
style="font-size:87.52331543px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:none;stroke:#000000;stroke-width:0.97818768;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;font-family:Sans"
x="-424.21243"
y="-578.0816"
id="text20786-7-4"
sodipodi:linespacing="125%"
transform="scale(-0.73577913,-1.3591035)"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
id="tspan20788-1-1"
x="-424.21243"
y="-578.0816"
style="font-size:160px;fill:none;stroke:#000000;stroke-width:0.97818768;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none">}</tspan></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="520.35376"
y="824.71674"
id="text20731-9-6"
sodipodi:linespacing="125%"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
x="520.35376"
y="824.71674"
id="tspan20735-0-1"
style="font-size:16px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold">INVERTED</tspan><tspan
sodipodi:role="line"
x="520.35376"
y="844.71674"
style="font-size:16px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold"
id="tspan21608-3">OUTPUTS</tspan><tspan
id="tspan28659"
sodipodi:role="line"
x="520.35376"
y="864.71674"
style="font-size:16px;font-weight:normal;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans">General</tspan><tspan
id="tspan28661"
sodipodi:role="line"
x="520.35376"
y="884.71674"
style="font-size:16px;font-weight:normal;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans">purpose</tspan><tspan
id="tspan28657"
sodipodi:role="line"
x="520.35376"
y="904.71674"
style="font-size:16px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold" /></text>
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="192.35164"
y="834.82208"
id="text20731-9-4-3"
sodipodi:linespacing="125%"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
inkscape:export-xdpi="270"
inkscape:export-ydpi="270"><tspan
sodipodi:role="line"
x="192.35164"
y="834.82208"
style="font-size:16px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold"
id="tspan21618-4">INPUTS</tspan><tspan
id="tspan28653"
sodipodi:role="line"
x="192.35164"
y="854.82208"
style="font-size:16px;font-weight:normal;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans">General</tspan><tspan
id="tspan28655"
sodipodi:role="line"
x="192.35164"
y="874.82208"
style="font-size:16px;font-weight:normal;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans">purpose</tspan></text>
<text
inkscape:export-ydpi="270"
inkscape:export-xdpi="270"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="530.91742"
y="200.82341"
id="text21742"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan21744"
x="530.91742"
y="200.82341"
style="font-size:20px;font-weight:bold;-inkscape-font-specification:Sans Bold">[A]</tspan></text>
<text
inkscape:export-ydpi="270"
inkscape:export-xdpi="270"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="133.85555"
y="473.59973"
id="text21742-0"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan21744-6"
x="133.85555"
y="473.59973"
style="font-size:20px;font-weight:bold;-inkscape-font-specification:Sans Bold">[B]</tspan></text>
<text
inkscape:export-ydpi="270"
inkscape:export-xdpi="270"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="532.2522"
y="475.88306"
id="text21742-2"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan21744-3"
x="532.2522"
y="475.88306"
style="font-size:20px;font-weight:bold;-inkscape-font-specification:Sans Bold">[C]</tspan></text>
<text
inkscape:export-ydpi="270"
inkscape:export-xdpi="270"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="175.05476"
y="781.68945"
id="text21742-5"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan21744-2"
x="175.05476"
y="781.68945"
style="font-size:20px;font-weight:bold;-inkscape-font-specification:Sans Bold">[D]</tspan></text>
<text
inkscape:export-ydpi="270"
inkscape:export-xdpi="270"
inkscape:export-filename="/media/BACKUP/CERN/contrib/ohwr/conv-ttl-blo/doc/UsersGuide/Figures/FrontPanel.png"
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
x="504.6936"
y="781.68945"
id="text21742-9"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan21744-20"
x="504.6936"
y="781.68945"
style="font-size:20px;font-weight:bold;-inkscape-font-specification:Sans Bold">[E]</tspan></text>
<image
width="96"
height="1008"
xlink:href="data:image/png;base64,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 "
id="image8503"
x="310.48663"
y="31.21929" />
</g>
</svg>
FILE=ug-conv-ttl-blo
all:
pdflatex -synctex=1 -interaction=nonstopmode *.tex
bibtex *.aux
pdflatex -synctex=1 -interaction=nonstopmode *.tex
pdflatex -synctex=1 -interaction=nonstopmode *.tex
evince $(FILE).pdf &
clean:
rm -rf *.aux *.dvi *.log $(FILE).pdf *.lof *.lot *.out *.toc *.bbl *.blg *.gz
@misc{StandardBlocking,
author = "C. Gil Soriano",
title = {{Standard Blocking Output Signal Definition for CTDAH board}},
month = sep,
year = 2011,
note = "{\url{http://www.ohwr.org/documents/109}}"
}
@misc{sysmon-i2c,
author = "{ELMA}",
title = {{Access to board data using SNMP and I2C}},
howpublished = {\url{http://www.ohwr.org/documents/227}}
}
@TECHREPORT{UG380,
institution = "Xilinx Inc.",
title = {{Spartan-6 FPGA Configuration User Guide}},
month = jul,
year = 2011,
number = "UG380 v2.3",
note = "{\url{http://www.xilinx.com/support/documentation/user_guides/ug380.pdf}}"
}
@misc{rtm-ident,
title = {{RTM detection}},
howpublished = {\url{http://www.ohwr.org/projects/conv-ttl-blo/wiki/RTM_board_detection}}
}
%%This is a very basic article template.
%%There is just one section and two subsections.
\documentclass[a4paper,11pt]{article}
\usepackage[pdfborder= 0 0 0 1]{hyperref}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{rotating}
\usepackage{multirow}
% \usepackage{draftwatermark}
% \SetWatermarkLightness{0.90}
% \SetWatermarkScale{5}
\usepackage{float}
\restylefloat{table}
\begin{document}
\title{\textbf{CONV-TTL-BLO \\ User Guide}}
\author{Theodor-Adrian Stana\\
% \href{mailto:t.stana@cern.ch}{\textbf{\textit{t.stana@cern.ch}}}\\
Carlos Gil Soriano\\
% \href{mailto:carlos.gil.soriano@cern.ch}{\textbf{\textit{carlos.gil.soriano@cern.ch}}}
BE-CO-HT\\
}
\date{\today}
\maketitle
\thispagestyle{empty}
\begin{figure}[htb]
\begin{center}
\includegraphics[scale=0.25, keepaspectratio]{Figures/CERN-Logo.png}
\end{center}
\end{figure}
\begin{abstract}
This document describes the CONV-TTL-BLO board, a Blocking pulse repeater
board in double height VME format. It replaces all the following boards:
\begin{itemize}
\item 8 channel repeater
\item 16 channel repeater
\item CTDAC
\item LA-BLO-TTL
\item LAF-BLO-TTL
\item LASB-TTL-BLO
\item LA-GATE
\item LA-TTL-BLO
\item LAPF-TTL-BLO\footnote{For replacing this board a pulse width of 4us
must be set.}
\end{itemize}
\end{abstract}
\maketitle{}
\pagebreak
\pagenumbering{roman}
\setcounter{page}{1}
\tableofcontents
\pagebreak
\listoffigures
\listoftables
\pagebreak
\section*{List of abbreviations}
\begin{itemize}
\item RTM -- Rear Transition Module
\item RTMM -- RTM Motherboard
\item RTMP -- RTM Piggiback
\end{itemize}
\pagenumbering{arabic}
\setcounter{page}{1}
\pagebreak
\section{Introduction}
\label{sec:intro}
CONV-TTL-BLO is a board intended for replicating Blocking Pulses, offering six
totally independent replication channels. The shape of the pulses is defined in
\cite{StandardBlocking}. CONV-TTL-BLO works together with two more boards:
CONV-TTL-RTM and CONV-TTL-RTM-BLO.\\
\begin{figure}[!htdp]
\begin{center}
\includegraphics[scale=0.55, keepaspectratio]{Figures/BLOschema.png}
\caption{Pulse Repetition system}
\label{prs}
\end{center}
\end{figure}
CONV-TTL-BLO contains all the active circuitry and it is connected as a Front Module
to a VME64 backplane. CONV-TTL-RTM and CONV-TTL-RTM-BLO are both connected to the rear
part of the crate and provide, in the rear panel, the connectivity of the I/O Blocking
lines. Every channel offers, in the rear panel, three Blocking Pulse outputs and one
Blocking Pulse input.
CONV-TTL-RTM is a motherboard attached to the Rear Transition Module (RTM) of the P2
VME64 connector. It connects CONV-TTL-BLO to CONV-TTL-RTM-BLO and
provides overvoltage protection for all the I/Os of all the channels.\\
CONV-TTL-RTM-BLO is a piggyback board mounted on CONV-TTL-RTM. It contains all the
LEMO 00 connectors and channel LEDs that are offered in the rear panel.
\begin{table}[htdp]
\caption{Boards for Blocking repetition}
\label{boards}
\centerline
{
%\begin{turn}{90}
\begin{tabular}{l l l}
\hline
\multicolumn{1}{c}{\textbf{Board}} & \multicolumn{1}{c}{\textbf{Connection}} & \multicolumn{1}{c}{\textbf{Ports}} \\
\hline
\textit{CONV-TTL-BLO} & Front & SFP \\
& & TTL Blocking triggers \\
& & TTL Blocking output replica \\
& & inverters \\
\textit{CONV-TTL-RTM} & Back & - \\
\textit{CONV-TTL-RTM-BLO} & Back & Blocking Pulse input \\
&& Blocking Pulse outputs\\
\hline
\end{tabular}
}
%\end{turn}
\end{table}
\pagebreak
\section{Main Board Front Panel}
\label{sec:mainboard-front-panel}
The front panel of CONV-TTL-BLO boards is shown in Figure~\ref{fp}. It consists
of status LEDs and several ports, divided in three sections from top to bottom:
\begin{itemize}
\item SFP connector: \textbf{[A]}.
\item Blocking connectors: \textbf{[B]} and \textbf{[C]}.
\item General Purpose connectors: \textbf{[D]} and \textbf{[E]}.
\end{itemize}
\begin{figure}[!htdp]
\begin{center}
\includegraphics[scale=.5, keepaspectratio]{Figures/FrontPanel.png}
\caption{CONV-TTL-BLO Front Panel}
\label{fp}
\end{center}
\end{figure}
\subsection{Status LEDs}
In the current version of the CONV-TTL-BLO boards, only several of the status LEDs
present on the board are used, due to limited firmware support in the FPGA.
The implemented status LEDs are presented in Table \ref{tbl:status-leds}. Unimplemented
status LEDs are off by default.
\begin{table}
\caption{Status LEDs on CONV-TTL-BLO front panels}
\label{tbl:status-leds}
\centerline
{
\begin{tabular}{l p{.75\textwidth}}
\hline
\multicolumn{1}{c}{\textbf{LED}} & \multicolumn{1}{c}{\textbf{Description}} \\
\hline
\textit{PW} & Power LED. Lights \textit{green} when a valid CONV-TTL-BLO firmware is loaded
to the FPGA. \\
\textit{ERR} & Error LED. Lights \textit{red} when no rear transition module board is present. \\
\textit{TTL\_N} & Negated-TTL status LED. Lights \textit{green} when negated TTL logic is selected
via the 8$^{th}$ position of the on-board selection switch. \\
\textit{I2C} & I$^2$C status LED. Lights \textit{red} until an I$^2$C transfer has taken place. Once
either a read or a write is successfully completed, the I$^2$C status LED lights \textit{green}
to signal the communication is up. \\
\hline
\end{tabular}
}
\end{table}
\subsection{SFP connector}
This connector is used to add White Rabbit support to the CONV-TTL-BLO boards.
If an optic fibre cable is connected to this socket, White Rabbit precise
time-stamping can be added to CONV-TTL-BLO. Three LEDs above the connector are provisioned to
show the status of the White Rabbit link.
White Rabbit is currently not supported in the CONV-TTL-BLO firmware.
\subsection{TTL triggers}
The TTL triggers correspond to block \textbf{[B]} in Figure~\ref{fp}. The connectors are
LEMO 00 (type EPY). By connecting an external trigger source to one of the connectors a pulse
is replicated in a Blocking Pulse level in the Rear Panel and in a TTL panel
in the Front Panel. All input channels are 50$\Omega$-terminated.
\subsection{Repeated TTL pulses}
These correspond to block \textbf{[C]} in Figure~\ref{fp}. The connectors are
LEMO 00 (type EPA). From these connectors a TTL level Blocking Pulse replica of the Rear Panel
outputs if offered to the Front Panel. The pulse width of this output is
similar to the pulse outputted in the Rear Panel; the rise time and top
pulse level are however different from the Blocking output.
When the pulse is output, the LED of the corresponding channel blinks for 125 ms.
The TTL output lines are not internally terminated.
\subsection{General pupose}
Four dedicated inverters can be found in the lower part of the Front Panel (\textbf{[D]} and \textbf{[E]} in
Figure~\ref{fp}). The output is a TTL inverted version of the TTL input. The inverted-TTL outputs are not internally
terminated.
\pagebreak
\section{Getting Started}
\label{sec:getting-started}
This section provides a reference to testing the CONV-TTL-BLO boards for basic functionality. The steps
listed below were run on a Linux Ubuntu 12.04 unit connected to the wired Ethernet interface on the
CERN network. The steps to follow should be similar on any Linux or Windows machine; some details
such as ELMA crate IP or TELNET client escape characters may differ in the reader's case.
The following steps should be performed for testing board functionality:
\begin{enumerate}
\item Plug in a front module card to the ELMA crate. Turn on power to the crate and program
the Spartan-6 FPGA.
\item Check that the \textit{PW} LED lights \textit{green} and the \textit{ERR} and \textit{I2C} LEDs light \textit{red}.
The \textit{TTL\_N} LED may also be lit. If it is and the LED is \textit{green}, this is not an issue.
\item Connect to an ELMA crate via TELNET, using the following command on the command line:
\begin{verbatim}
$ telnet 137.138.192.90
Trying 137.138.192.90...
Connected to 137.138.192.90.
Escape character is '^]'.
login:user
password USER
%>
\end{verbatim}
\item If the TELNET access is successful, the user should now be presented with a command line
to the SysMon board. To test basic SysMon functionality, run a \verb=voltage= command on the
SysMon, which should output the following:
\begin{verbatim}
%>voltage
----------------------------Sensor List---------------------------
--no--Name-------------Type----Value--Unit---State------------------
* 2 +3.3V Thr 3.31 V Ok
* 3 +5V Thr 5.01 V Ok
* 4 +12V Thr 12.09 V Ok
* 5 -12V Thr -12.38 V Ok
\end{verbatim}
\item It can now be proceeded to reading a register from the CONV-TTL-BLO boards. The \verb=readreg=
command can be used for this purpose. Assuming a CONV-TTL-BLO board in VME slot 1, reading register
I2C\_CTR0 at address 0x40 (see Sec. \ref{sec:internal-regs}) is done as follows:
\begin{verbatim}
%>readreg 1 17
Read Data: 004042BC
\end{verbatim}
\item The output of the command should be as above, yielding the default value of the I2C\_CTR0 register.
The \textit{I2C} LED on the front panel should also be lit \textit{green} now. It can now be proceeded to checking
the pulse repetition mechanisms.
\item First, connect one end of a cable with LEMO 00 connectors at both ends to the front module front panel
TTL input ports.
\item Configure a pulse generator to output TTL level pulses (\textit{max. 5V}) at a frequency of about 3~Hz
with a pulse length of $\geq$1~$\mu$s.
\item Connect the other end of the cable to the pulse generator. The LED of the corresponding channel should
light for 125~ms when a pulse arrives.
\item Connect the corresponding channel output port to an oscilloscope and measure the signal level of the pulse
and that the pulse width is 1~${\mu}$s long.
\item Repeat the operation with the other front channels.
\item Connect a rear transition module (RTM) board to the back-plane of the ELMA, on the same VME slot as the front module.
The \textit{ERR} LED should turn off.
\item Connect the LEMO cable to each channel on the front module front panel in turn to each of the channels.
As with the front module front panel, the LED corresponding to the connected channel on the rear transition module piggyback
(RTMP) front panel should be lit for about 125~ms when a pulse arrives. Measure that the output pulse on the blocking
channels is 1~${\mu}$s long and 24~V in amplitude.
\item Disconnect the LEMO cable from the front module front panel and configure the pulse generator for 15~V pulse amplitude.
\item Connect the LEMO cable to channel 1 the front panel of the RTMP board. Measure the output pulse on the corresponding channel of the
RTMP front panel; it should be 1~${\mu}$s long and 24~V in amplitude.
\item Finally, measure on the front panel of the front module that on channel 1 the output pulse is 1~${\mu}$s long and 3.3~V.
\item Repeat for all other channels.
\end{enumerate}
\pagebreak
\section{Functional Description}
The task of CONV-TTL-BLO is to output a Blocking Pulse upon a reception of a
trigger is received. As stated before, CONV-TTL-BLO works together with
CONV-TTL-RTM and CONV-TTL-RTM-BLO in the rear part of the crate.
The system formed by these three boards offers three independent channels for
outputting Blocking Pulses. Refer to Figure~\ref{prs} for a visual,
whole-system, description.
There are two sources for triggering in every channel: one coming from the
Front Panel (CONV-TTL-BLO) and other coming from the Rear Panel
(CONV-TTL-RTM through CONV-TTL-RTM-BLO).
The trigger policy is that a Blocking pulse will be outputted whenever
either a trigger in the Front Panel or the Rear Panel is detected.
\begin{table}[htdp]
\caption{Trigger sources}
\begin{center}
\begin{tabular}{c c c}
\hline
\textbf{Trigger} & \textbf{Board} & \textbf{Connection} \\
\hline
TTL & CONV-TTL-BLO & Front Panel\\
Blocking & CONV-TTL-RTM-BLO & Rear Panel\\
\hline
\end{tabular}
\vspace{0.5cm}
\begin{tabular}{|c|}
\hline
\textbf{Global trigger is OR function of the two sources above} \\
\hline
\end{tabular}
\end{center}
\end{table}
All the control logic of the system is implemented in a Xilinx Spartan-6 FPGA. Apart from
pulse repetition, an I$^2$C to Wishbone bridge is also implemented. This module translates I$^2$C
accesses as presented in accesses to internal memory-mapped registers. The status of the various
components in the system can in this way be checked and controlled.
%CONV-TTL-BLO allows the user to set properties for the pulse replication
%and receive information above the latest events logged in the board.
\pagebreak
\section{Accessing internal registers}
\label{sec:internal-regs}
\subsection{ELMA crates}
CONV-TTL-BLO boards have been designed to operate in ELMA crates. These crates provide a
back plane with VME64x connectors which boards can be plugged into. A dedicated board inside the
ELMA crates called the SysMon (System Monitor) monitors overall system status and provides access
to boards plugged into the VME back plane.
The user can connect to SysMon boards either through a simple RS-232 interface, or through Telnet.
In order to send commands to a board plugged into an ELMA crate, the user would connect to the SysMon
over one of these two interfaces and send \verb=readreg= and \verb=writereg= commands to
board-specific registers, as exemplified in Section \ref{sec:getting-started} to control their functioning.
%Since it is the interface most experimented with up to the point of writing of this document,
%only the Telnet interface is used throughout this document.
\subsection{Board Addressing}
\label{sec:brd-addressing}
Communication with the CONV-TTL-BLO FPGA is done via I$^2$C interface through the SERA and SERB pins
in P1 VME64x connectors. In order to access a CONV-TTL-BLO board, it is necessary to send:
\begin{itemize}
\item The board's 7-bit I$^2$C address. Every CONV-TTL-BLO has an address that prepends two bits
of value \textit{10} to the Geographical Address of the slot according to VME64x specifications.
\item An internal CONV-TTL-BLO register address. It is a 16-bit integer in \textit{little endian} format
(most significant byte is sent first).
\end{itemize}
After this, four bytes of data are read/written from/to the internal CONV-TTL-BLO register. These
four bytes of data are written in \textit{big endian} format (least significant byte is sent first).
The addressing protocol is thoroughly described in \cite{sysmon-i2c}. The SysMon acts as a master on the
I$^2$C interface and has the protocol implemented as software on the on-board processor. The FPGAs on
CONV-TTL-BLO boards implement an I$^2$C slave and decode the data streams sent by the SysMon.
\subsection{CONV-TTL-BLO memory map}
\label{sec:memmap}
Table \ref{tbl:memmap} summarizes the registers mapping in the current version of the CONV-TTL-BLO firmware.
The first column represents the Wishbone address internal to the FPGA firmware and the second column represents
the ELMA register address (in \verb=readreg= and \verb=writereg= commands).
\begin{table}[!hbtp]
\caption{Memory map of the CONV-TTL-BLO design}
\label{tbl:memmap}
\centerline
{
\begin{tabular}{ r r l c p{.5\textwidth} }
\hline
\multicolumn{1}{c}{Address} & \multicolumn{1}{c}{ELMA} & \multicolumn{1}{c}{Name} & \multicolumn{1}{c}{Access} & \multicolumn{1}{c}{Description} \\
\hline
0x00 & 1 & STAT\_L & R & Lower 32 bits of system status register \\
0x04 & 2 & STAT\_H & R & Upper 32 bits of system status register \\
0x40 & 17 & I2C\_CTR0 & R & I$^2$C control register \\
0x44 & 18 & I2C\_LT & R & I$^2$C line timing register, provides the current I$^2$C line speed \\
0x48 & 19 & I2C\_DTX & R/W & Data to transmit through the I$^2$C interface \\
0x4C & 20 & I2C\_DRXA & R & Lower 32 bits of data received through the I$^2$C interface \\
0x50 & 21 & I2C\_DRXB & R & Upper 32 bits of data received through the I$^2$C interface \\
\hline
\end{tabular}
}
\end{table}
\subsection{Register description}
\subsubsection{STAT\_L}
\begin{table}[H]
%\caption{STAT\_L register}
%\label{tbl:reg-statl}
\centerline
{
\begin{tabular}{r c c p{.6\textwidth}}
\hline
\multicolumn{1}{c}{Bit} & \multicolumn{1}{c}{Field} & \multicolumn{1}{c}{Reset} & \multicolumn{1}{c}{Description} \\
\hline
31..0 & IDENT\_L & 0x00000000 & Lower 32 bits of board identity, as provided by Maxim DS18B20U+ thermometer \\
\hline
\end{tabular}
}
\end{table}
\subsubsection{STAT\_H}
\begin{table}[H]
%\caption{STAT\_H register}
%\label{tbl:reg-stath}
\centerline
{
\begin{tabular}{r c c p{.6\textwidth}}
\hline
\multicolumn{1}{c}{Bit} & \multicolumn{1}{c}{Field} & \multicolumn{1}{c}{Reset} & \multicolumn{1}{c}{Description} \\
\hline
15..0 & IDENT\_H & 0x0000 & Upper 32 bits of board identity, as provided by Maxim DS18B20U+ thermometer \\
18..16 & RTMM & "000" & Rear transition module mainboard (RTMM) identification \cite{rtm-ident} \\
21..19 & RTMP & "000" & Rear transition module piggyback (RTMP) identification \cite{rtm-ident} \\
31..22 & \textit{unimplemented} & -- & Unimplemented bits, read undefined, write as '0' \\
\hline
\end{tabular}
}
\end{table}
\subsubsection{I2C\_CTR0}
\begin{table}[H]
%\caption{I2C\_CTR0 register}
%\label{tbl:reg-i2c-ctr0}
\centerline
{
\begin{tabular}{r c c p{.5\textwidth}}
\hline
\multicolumn{1}{c}{Bit} & \multicolumn{1}{c}{Field} & \multicolumn{1}{c}{Default} & \multicolumn{1}{c}{Description} \\
\hline
0 & I2C\_OP & '0' & I$^2$C operation, unused bit \\
7..1 & I2C\_ADDR & see Sec. \ref{sec:brd-addressing} & I$^2$C address of the CONV-TTL-BLO board \\
11..8 & BIA & 0x2 & Bytes of Indirect Addressing \\
19..12 & BRD & 0x4 & Bytes to be read from FPGA \\
27..20 & BWR & 0x4 & Bytes to be written to FPGA \\
31..28 & \textit{unimplemented} & -- & Unimplemented bits, read undefined, write as '0' \\
\hline
\end{tabular}
}
\end{table}
\subsubsection{I2C\_LT}
\begin{table}[H]
%\caption{I2C\_LT register}
%\label{tbl:reg-i2c-ctr0}
\centerline
{
\begin{tabular}{r c c p{.5\textwidth}}
\hline
\multicolumn{1}{c}{Bit} & \multicolumn{1}{c}{Field} & \multicolumn{1}{c}{Default} & \multicolumn{1}{c}{Description} \\
\hline
7..0 & WBCP & 20 & WishBone Clock Period, in ns \\
31..8 & SCLP & 0x000000 & SCL Period \\
\hline
\end{tabular}
}
\end{table}
\subsubsection{I2C\_DTX}
\begin{table}[H]
\centerline
{
\begin{tabular}{r c c p{.5\textwidth}}
\hline
\multicolumn{1}{c}{Bit} & \multicolumn{1}{c}{Field} & \multicolumn{1}{c}{Default} & \multicolumn{1}{c}{Description} \\
\hline
31..0 & DTX & 0x00000000 & DTX register bits \\
\hline
\end{tabular}
}
\end{table}
\subsubsection{I2C\_DRXA}
\begin{table}[H]
\centerline
{
\begin{tabular}{r c c p{.5\textwidth}}
\hline
\multicolumn{1}{c}{Bit} & \multicolumn{1}{c}{Field} & \multicolumn{1}{c}{Default} & \multicolumn{1}{c}{Description} \\
\hline
31..0 & DRXA & 0x00000000 & DRXA register bits \\
\hline
\end{tabular}
}
\end{table}
\subsubsection{I2C\_DRXB}
\begin{table}[H]
\centerline
{
\begin{tabular}{r c c p{.5\textwidth}}
\hline
\multicolumn{1}{c}{Bit} & \multicolumn{1}{c}{Field} & \multicolumn{1}{c}{Default} & \multicolumn{1}{c}{Description} \\
\hline
31..0 & DRXB & 0x00000000 & DRXB register bits \\
\hline
\end{tabular}
}
\end{table}
\pagebreak
\bibliographystyle{ieeetr}
\bibliography{ug-conv-ttl-blo}
\end{document}
......@@ -413,9 +413,9 @@ begin
generic map
(
g_number_of_channels => g_number_of_channels,
g_clk_period => c_CLKB_PERIOD,
g_pulse_length => c_OUTPUT_PULSE_LENGTH,
g_led_blinking_length => c_LED_BLINKING_LENGTH
g_clk_period => 5 ns,
g_pulse_length => 1000 ns,
g_led_blinking_length => (10**6)*125 ns
)
port map
(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment