Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
C
Conv TTL Blocking
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
5
Issues
5
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
Conv TTL Blocking
Commits
fab59cbd
Commit
fab59cbd
authored
Aug 22, 2014
by
Theodor-Adrian Stana
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
doc: Add new memory map and dedicated timestamp registers
parent
9b312b0a
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
989 additions
and
40 deletions
+989
-40
cern-title.tex
doc/ug/cern-title.tex
+1
-1
conv-regs.tex
doc/ug/conv-regs.tex
+835
-10
timetag-arch.svg
doc/ug/fig/timetag-arch.svg
+122
-17
ug-conv-ttl-blo.bib
doc/ug/ug-conv-ttl-blo.bib
+5
-0
ug-conv-ttl-blo.tex
doc/ug/ug-conv-ttl-blo.tex
+26
-12
No files found.
doc/ug/cern-title.tex
View file @
fab59cbd
...
...
@@ -9,7 +9,7 @@
\noindent
\rule
{
\textwidth
}{
.1cm
}
\hfill
August
1
2, 2014
\hfill
August
2
2, 2014
\vspace*
{
3cm
}
...
...
doc/ug/conv-regs.tex
View file @
fab59cbd
This diff is collapsed.
Click to expand it.
doc/ug/fig/timetag-arch.svg
View file @
fab59cbd
This diff is collapsed.
Click to expand it.
doc/ug/ug-conv-ttl-blo.bib
View file @
fab59cbd
...
...
@@ -119,3 +119,8 @@
title = {{DS18B20 -- Programmable Resolution 1-Wire Digital Thermometer}},
note = {\url{http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf}}
}
@misc{sdb,
title = {{SDB specification v1.1}},
howpublished = {\url{http://www.ohwr.org/documents/256}}
}
doc/ug/ug-conv-ttl-blo.tex
View file @
fab59cbd
...
...
@@ -9,8 +9,8 @@
% Hyperrefs
\usepackage
[
colorlinks = true,
linkcolor =
Mahogany
,
citecolor =
Mahogany
,
linkcolor =
black
,
citecolor =
black
,
urlcolor = blue,
]
{
hyperref
}
...
...
@@ -78,6 +78,7 @@
12-08-2014
&
2.21
&
Small error corrections (
\textit
{
writereg
}
instead of
\textit
{
readreg
}
in Section~
\ref
{
sec:diag-remote-reset
}
,
and typo in Section~
\ref
{
sec:reprog-bitstreams
}
), and addition of how to read gateware version in
Section~
\ref
{
sec:reprog-bitstreams
}
\\
22-08-2014
&
3.00
&
Changed memory map, adding latest per-channel timestamp readout and line status registers
\\
\hline
\end{tabular}
}
...
...
@@ -1035,7 +1036,9 @@ The architecture of the time-tagging mechanism is shown in Figure~\ref{fig:timet
Every time a pulse arrives on a channel, a timetag sample is stored to a
128
-
deep
ring buffer. While this ring buffer is not entirely accessible in the addressing
space of the FPGA, it can be read sample by sample by reading the TBCYR, TBL
/
HR and
TBMR registers
(
see Appendix~
\ref
{
app:conv
-
regs
}
)
.
TBMR registers
(
see Appendix~
\ref
{
app:conv
-
regs
}
)
. At the same time the timestamp is
stored into the time
-
tag buffer, it is also stored to the latest timestamp registers
(
CHxLTS
*
R
--
see Appendix~
\ref
{
app:conv
-
regs
}
)
.
%------------------------------------------------------------------------------
\subsubsection
{
Pulse timetags
}
...
...
@@ -1045,10 +1048,8 @@ Two timetags are available on the CONV-TTL-BLO. These timetags are listed in
Table~
\ref
{
tbl:timetags
}
. When White
-
Rabbit
(
WR
)
is present, the precise centralized
and synchronized timing from the WR network is used. When WR is not present, the local
time tag is used. Note that due to the fact that this timetag is unsynchronized,
it will differ slightly between two different boards in a crate.
Each timetag sample consists of a cycles value, which counts
8
~ns cycles, and a TAI seconds
value.
it will differ slightly between two different boards in a crate. Each timetag sample
consists of a cycles value, which counts
8
~ns cycles, and a TAI seconds value.
\begin
{
table
}
[
h
]
\caption
{
Timetag types
}
...
...
@@ -1088,7 +1089,7 @@ a timetag is stored to the ring buffer. This delay is shown in Figure~\ref{fig:t
\end
{
figure
}
%------------------------------------------------------------------------------
\subsubsection
{
Reading the timetags
}
\subsubsection
{
Reading the timetags
from the ring buffer
}
%------------------------------------------------------------------------------
The TBCYR, TBTLR and TBTHR
(
see Appendix~
\ref
{
app:conv
-
regs
}
)
contain the actual
...
...
@@ -1166,6 +1167,18 @@ of samples written to the buffer. When the buffer is full, the USEDW field is 0
FULL bit is set. Setting the CLR bit of the TBCSR will bring the read and write pointers
to
0
and set the USEDW field to
0
.
%------------------------------------------------------------------------------
\subsubsection
{
Latest timestamp registers
}
%------------------------------------------------------------------------------
There are three registers per channel dedicated to the storage of the latest timestamp.
These registers always store the latest time at which a pulse arrived on a channel and
can be useful when other channels fill up the ring buffer before a relevant timestamp
is read.
The memory map~
\ref
{
app:conv
-
regs
}
contains further details about the implementation of
each register.
%------------------------------------------------------------------------------
% SUBSEC: Remote reset
%------------------------------------------------------------------------------
...
...
@@ -1255,7 +1268,7 @@ number is not in the range 1..6, no pulse is generated on any channel and no
error is reported.
\begin
{
figure
}
[
h
]
\centerline
{
\includegraphics
[
width
=
.
4
6
\textwidth
]
{
fig
/
man
-
trig
-
fsm
}}
\centerline
{
\includegraphics
[
width
=
.
6
\textwidth
]
{
fig
/
man
-
trig
-
fsm
}}
\caption
{
Manual pulse triggering logic
}
\label
{
fig:man
-
trig
-
fsm
}
\end
{
figure
}
...
...
@@ -1682,9 +1695,10 @@ $reg. index = \frac{addr}{4} + 1$
\hline
\multicolumn
{
1
}{
c
}{
\textbf
{
Peripheral
}}
&
\multicolumn
{
2
}{
c
}{
\textbf
{
Address range
}}
&
\multicolumn
{
1
}{
c
}{
\textbf
{
Description
}}
\\
\hline
Board registers
&
0
x
000
&
0
x
020
&
Coverter board registers
\\
MultiBoot
&
0
x
040
&
0
x
050
&
MultiBoot module
\\
Thermometer
&
0
x
080
&
0
x
084
&
Thermometer chip
\\
Board registers
&
0
x
000
&
0
x
0
ff
&
Converter board registers
\\
MultiBoot
&
0
x
100
&
0
x
01
f
&
MultiBoot module
\\
Thermometer
&
0
x
200
&
0
x
2
ff
&
Thermometer chip
\\
SDB descriptor
&
0
xf
00
&
0
xfff
&
SDB descriptor table
(
see~
\cite
{
sdb
}
)
\\
\hline
\end
{
tabular
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment