From 936a6bd28935f214e239fa7a93b3aca39a2c34cd Mon Sep 17 00:00:00 2001 From: Jan Michel Date: Thu, 18 Sep 2014 17:41:07 +0200 Subject: [PATCH] added new document including the ROC header structure --- .kateproject | 4 ++ dataformat/DataFileStructure.tex | 72 ++++++++++++++++++++ dataformat/biblio.bib | 6 ++ dataformat/main.pdf | Bin 0 -> 48635 bytes dataformat/main.tex | 111 +++++++++++++++++++++++++++++++ 5 files changed, 193 insertions(+) create mode 100644 .kateproject create mode 100644 dataformat/DataFileStructure.tex create mode 100644 dataformat/biblio.bib create mode 100644 dataformat/main.pdf create mode 100644 dataformat/main.tex diff --git a/.kateproject b/.kateproject new file mode 100644 index 0000000..a1a0734 --- /dev/null +++ b/.kateproject @@ -0,0 +1,4 @@ +{ + "name": "mvd_docu" +, "files": [ { "git": 1 } ] +} diff --git a/dataformat/DataFileStructure.tex b/dataformat/DataFileStructure.tex new file mode 100644 index 0000000..44951d8 --- /dev/null +++ b/dataformat/DataFileStructure.tex @@ -0,0 +1,72 @@ +\section{Data File Structure} +The overall file structure is the Hades hld format, described in \cite{jmichel12}. +Each sub-sub-event in the data structure contains the data from one read-out controller. +Currently, there can be up to four sensors connected to each read-out controller. +The data stream starts with a header, marking the data version number and an arbitrary +number of additional words, such as information about external trigger signals. +This section is followed by the individual sensor data. + + +\subsection{Header Structure} + + + +\begin{table}[htbp] +\begin{center} +\begin{tabularx}{\textwidth}{|c|C|} +\hline +\textbf{Bits} & \textbf{Description} \\ +\hline\hline +31 -- 24 & Version Number. Defines how the following data is to be unpacked. \\ +7 -- 0 & Header Size. Number of additional 32 Bit words inside the header before the first frame header is sent\\ +\hline +\end{tabularx} +\caption{The ROC header.} +\label{rocheader} +\end{center} +\end{table} + + + +\begin{table}[htbp] +\begin{center} +\begin{tabularx}{\textwidth}{|c|c|C|} +\hline +\textbf{Word} & \textbf{Bits} & \textbf{Description} \\ +\hline\hline +1 & 31 & Frame Marked. If this bit is set, the ROC got an external trigger / +marker signal during reception of this frame on the first spare input (J6, 1) on the first converter board.\\ +1 & 23 -- 0 & Timestamp. Clock Cycles (100 MHz) since the last rising edge on the trigger / marker signal input.\\ +\hline +\end{tabularx} +\caption{The ROC header words} +\label{rocheaderwords} +\end{center} +\end{table} + + + +\subsection{Frame Structure} +The content of the frame header may change with different roc data format versions as indicated in the ROC header. + +\begin{table}[htbp] +\begin{center} +\begin{tabularx}{\textwidth}{|c|c|C|} +\hline +\textbf{Word} & \textbf{Bits} & \textbf{Description} \\ +\hline\hline +1 & 31 -- 0 & Frame Header. Should always read 0xFFFFFFFF\\ +2 & 31 -- 0 & Sensor ID. The 16 Bit sensor ID, repeated twice. The sensor id is an integer marking the position of the sensor +on the respective ROC. The first sensor ont he first converter board as ID 0\\ +3 & 31 -- 0 & Status \\ +4 & 31 -- 0 & Debug 1 \\ +5 & 31 -- 0 & Debug 2 \\ +6 & 31 -- 0 & Timestamp, LSB \\ +7 & 31 -- 0 & Timestamp, MSB \\ + +\hline +\end{tabularx} +\caption{The frame header words, data format version 1.} +\label{frameheaderwords} +\end{center} +\end{table} \ No newline at end of file diff --git a/dataformat/biblio.bib b/dataformat/biblio.bib new file mode 100644 index 0000000..cb6f4b7 --- /dev/null +++ b/dataformat/biblio.bib @@ -0,0 +1,6 @@ +@Misc{jmichel12, + author = {Michel, Jan}, + title = {Development and Implementation of a New Trigger and Data Acquisition System for the HADES Detector}, + howpublished = {PhD Thesis, Univ. Frankfurt}, + year = 2012, +} \ No newline at end of file diff --git a/dataformat/main.pdf b/dataformat/main.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b9e652feece52bd3dd2d7118a70fc367d3d765f1 GIT binary patch literal 48635 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 literal 0 HcmV?d00001 diff --git a/dataformat/main.tex b/dataformat/main.tex new file mode 100644 index 0000000..6cce3f3 --- /dev/null +++ b/dataformat/main.tex @@ -0,0 +1,111 @@ +\documentclass[11pt,a4paper,twoside]{scrartcl} +\usepackage[left=3.5cm,right=3cm,top=2.5cm,bottom=2.5cm,includeheadfoot]{geometry} + + +\usepackage[utf8]{inputenc} +\usepackage{amsfonts} +\usepackage[american]{babel} +\usepackage[T1]{fontenc} +\usepackage[pdftex]{graphicx} +\usepackage{pslatex} +\usepackage{xcolor} +\usepackage{array} +\usepackage{rotating} +\usepackage{multirow} +\usepackage{tabularx} +\usepackage{url} +\usepackage{booktabs} +\usepackage{longtable} +\usepackage{ltxtable} +\usepackage{upgreek} +\usepackage{listings} +\usepackage{scrtime} +\usepackage{lscape} +\usepackage{enumerate} +\usepackage{textcomp} +\usepackage{wrapfig} +\usepackage[caption=false]{subfig} +\usepackage{amsmath} +\usepackage{setspace} +\usepackage[update,prepend]{epstopdf} + +\linespread{1.15} +\definecolor{darkblue}{rgb}{.1,.1,.6} +\definecolor{darkgray}{rgb}{.5,.5,.5} +\usepackage[linkbordercolor={0 0 0}, + pdfborder={0 0 0}, + bookmarks, + citecolor=blue, + linkcolor=darkblue, + colorlinks=true, + urlcolor=darkblue]{hyperref} +\usepackage{cite} + +\newcolumntype{W}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}} +\newcolumntype{L}{>{\arraybackslash}X} +\newcolumntype{C}{>{\centering\arraybackslash}X} + +\usepackage{fancyhdr} +\pagestyle{headings}%{fancy} +\fancyhf{} +\fancyhead[R]{\nouppercase{\leftmark}} +\renewcommand{\headrulewidth}{0.5pt} +\fancyfoot[C]{\thepage} + +\newenvironment{itemize*}% + {\begin{itemize}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}% + \setlength{\topsep}{1pt}% + \setlength{\partopsep}{1pt}}% + {\end{itemize}} + +\newenvironment{description*}% + {\begin{description}% + \setlength{\itemsep}{0pt}% + \setlength{\parskip}{0pt}% + \setlength{\topsep}{1pt}% + \setlength{\partopsep}{1pt}}% + {\end{description}} + +\title{MAPS Read-out Data Formats} +\date{\today ~-~\thistime} +\author{Jan Michel} + + +\newcommand{\files}[1]{\texttt{#1}} +\newcommand{\signal}[1]{\textsc{#1}} +\newcommand{\genericname}[1]{\textsc{#1}} +\newcommand{\constname}[1]{\textsc{#1}} +\newcommand{\netname}[1]{\textsc{#1}} +\newcommand{\cmdname}[1]{\texttt{#1}} +\newcommand{\addr}[1]{\texttt{#1}} +\bibliographystyle{alpha} + +\usepackage{remreset} +\makeatletter\@removefromreset{footnote}{chapter}\makeatother + + +\lstset { language = bash, numbers = none, breaklines=true, stringstyle=\color{black}\ttfamily } + +\begin{document} +\newcounter{line} +\newcounter{ct} + +\maketitle + +\clearpage +\tableofcontents +\clearpage +\input{DataFileStructure} + +\cleardoublepage + + +\bibliography{biblio} +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: -- 2.43.0