Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
C
Conv TTL Blocking - Gateware
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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 - Gateware
Commits
0010011c
Commit
0010011c
authored
Jan 27, 2015
by
Theodor-Adrian Stana
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
doc: Updated gateware test procedure to v1.2
parent
159b9667
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
122 additions
and
6 deletions
+122
-6
cern-title.tex
doc/gw-test-procedure/cern-title.tex
+1
-1
gw-test-procedure.tex
doc/gw-test-procedure/gw-test-procedure.tex
+121
-5
No files found.
doc/gw-test-procedure/cern-title.tex
View file @
0010011c
...
...
@@ -9,7 +9,7 @@
\noindent
\rule
{
\textwidth
}{
.1cm
}
\hfill
September 29, 2014
\hfill
January 27, 2015
\vspace*
{
3cm
}
...
...
doc/gw-test-procedure/gw-test-procedure.tex
View file @
0010011c
...
...
@@ -76,6 +76,7 @@ work, see \\
02-05-2014
&
1.0
&
First version, corrected and added some wording and added Figure~
\ref
{
fig:switches
}
\\
29-09-2014
&
1.1
&
Added Licensing information, made link colors black, removed MultiBoot step from test procedure
and other small text changes
\\
27-01-2015
&
1.2
&
Added steps for testing the reprogramming logic of the gateware
\\
\hline
\end{tabular}
}
...
...
@@ -109,6 +110,7 @@ a new gateware version. The following features are tested:
\item
TTL to TTL-BAR (basic pulse inversion)
\end{itemize}
\item
no pulses generated on power-on
\item
remote reprogramming
\end{itemize}
%==============================================================================
...
...
@@ -267,6 +269,45 @@ by running the following command in a Linux command line:
It is recommended to go through each of the following subsections in sequence
and follow the steps one by one, ticking on completion.
%==============================================================================
\subsection
{
Preparing the bitstream to the flash
}
\label
{
sec:proc-bstream-download
}
%==============================================================================
\begin{enumerate}
\item
Navigate to the gateware releases page and download the binary bundle
(golden+release) for the latest release:
\begin{itemize}
\item
\small
\url
{
http://www.ohwr.org/projects/conv-ttl-blo-gw/wiki/Releases
}
\end{itemize}
\item
Program the bundle to the flash. The steps below show how to download the
\textit
{
.bin
}
binary bundle via
\verb
=
xc3sprog
=
, by downloading a bistream
providing a JTAG-to-SPI bridge, for programming the SPI flash:
\begin{small}
\begin{verbatim}
wget http://www.ohwr.org/attachments/download/3710/flash
_
load.bit
xc3sprog -c xpc flash
_
load.bit
xc3sprog -c xpc -I golden-v0.*.bin:W:0:bin
\end{verbatim}
\end{small}
\item
Once this is done, we can now download the new release file (named here
\verb
=
conv_ttl_blo.bin
=
) to the flash. Note that this bitstream needs to be downloaded
to address
\verb
=
0x170000
=
. Using
\verb
=
xc3sprog
=
:
\begin{small}
\begin{verbatim}
xc3sprog -c xpc flash
_
load.bit
xc3sprog -c xpc -I conv
_
ttl
_
blo.bin:W:1507328:bin
\end{verbatim}
\end{small}
\item
The on-board flash should now contain the following memory map, we are ready for testing:
\begin{itemize}
\item
\verb
=
0x000000
=
-- Header bitstream to jump to release bitstream
\item
\verb
=
0x000044
=
-- Golden bitstream for fallback on error
\item
\verb
=
0x170000
=
-- New release bitstream to be tested
\end{itemize}
\end{enumerate}
%==============================================================================
\subsection
{
TTL to blocking pulse conversion
}
\label
{
sec:proc-ttl-blo
}
...
...
@@ -285,7 +326,7 @@ and follow the steps one by one, ticking on completion.
\item
\label
{
item:ttl-meas-ttl-out
}
Check that the characteristics of the signal
on
\textbf
{
channel 1 of the oscilloscope
}
are as follows (Figure~
\ref
{
fig:ttl-blo
}
):
\begin{itemize}
\item
1.2~
$
\mu
$
s
\item
approx.
1.2~
$
\mu
$
s
\item
approx. 3~V
\item
less than 1.2~
$
\mu
$
s delay from trigger
\end{itemize}
...
...
@@ -343,7 +384,7 @@ and follow the steps one by one, ticking on completion.
\item
\label
{
item:ttlbar-meas-ttl-out
}
Check that the characteristics of the signal
on
\textbf
{
channel 1 of the oscilloscope
}
are as follows (Figure~
\ref
{
fig:ttlbar-blo
}
):
\begin{itemize}
\item
1.2~
$
\mu
$
s
\item
approx.
1.2~
$
\mu
$
s
\item
approx. 3~V
\item
less than 1.2~
$
\mu
$
s delay from trigger
\end{itemize}
...
...
@@ -420,9 +461,7 @@ and follow the steps one by one, ticking on completion.
\item
Turn off ELMA crate
\item
Flip the
\textbf
{
glitch filter switch
}
(Figure~
\ref
{
fig:switches
}
) back to the
\textbf
{
OFF position
}
\end{enumerate}
%==============================================================================
\subsection
{
Power-on tests (TTL)
}
\label
{
sec:proc-power-on-ttl
}
...
...
@@ -472,6 +511,83 @@ and follow the steps one by one, ticking on completion.
\item
Flip the
\textbf
{
glitch filter switch
}
(Figure~
\ref
{
fig:switches
}
) back to the
\textbf
{
OFF position
}
\end{enumerate}
%==============================================================================
\subsection
{
Remote reprogramming test
}
\label
{
sec:proc-multiboot
}
%==============================================================================
We will now use the remote reprogramming logic to download a bitstream
to the flash and test that it works. For this, we will download the
binary file for remote reprogramming for the latest release version of the release
gateware and test that it has been correctly programmed to the flash.
\begin{enumerate}
\item
Turn on power to the ELMA crate.
\item
First, check using the
\verb
=
getsr.py
=
script that the bitstream version
is the one which you are testing. For example, say you are testing bistream version 3.1:
\begin{verbatim}
$
cd software
/
diag
/
$
./getsr.py
[...]
Status register : 0x00118031
===============================
Gateware version : v3.1 (0x31)
[...]
\end{verbatim}
\item
Change directories to the
\verb
=
multiboot
=
folder and download the binary file
for remote reprogramming for the latest release on OHWR to a new
\verb
=
bin/
=
sub-directory.
For example, downloading gateware v3.0 would run like this:
\begin{verbatim}
cd ../multiboot/
mkdir bin
wget http://cern.ch/go/D9G8 -O bin/conv
_
ttl
_
blo-v3.0.bin
\end{verbatim}
\item
Run the
\verb
=
multiboot.py
=
script to download the bitstream to the flash
and issue the reprogramming command at the end (note that downloading will take
a long time):
\begin{verbatim}
$
.
/
multiboot.py
Successfully connected to some
-
elma
SysMon firmware v
2
.
31
Slot no.:
1
CONV
-
TTL
-
BLO found in slot
1
Read config reg?
(
y
/
n
)
n
Read from flash?
(
y
/
n
)
n
Write to flash?
(
y
/
n
)
y
Are you sure?
(
y
/
n
)
y
Which gateware would you like to program?
0
-
> conv
_
ttl
_
blo
-
v
3
.
0
.bin
Enter your choice :
0
Selected gateware: conv
_
ttl
_
blo
-
v
3
.
0
.bin
Is this okay?
(
y
/
n
)
y
Issue IPROG?
(
y
/
n
)
y
MultiBoot bitstream address:
0
x
170000
Writing bitstream to board in slot
1
0
.
81
% (0x172f00)
\end
{
verbatim
}
\item
Once reprogramming is over, the logic will boot to this new bitstream:
\begin
{
verbatim
}
Writing bitstream to board in slot
1
100
.
00
% (0x2daa00)
DONE
!
Issuing IPROG command to board in slot
1
...
IPROG successful
!
\end
{
verbatim
}
\item
To check the programming has indeed succeeded, check the gateware version,
again using
\verb
=
getsr.py
=
:
\begin
{
verbatim
}
$
cd ../diag/
$
.
/
getsr.py
[
...
]
Status register :
0
x
00118030
===============================
Gateware version : v
3
.
0
(
0
x
30
)
[
...
]
\end
{
verbatim
}
\end
{
enumerate
}
%==============================================================================
% APPENDICES
...
...
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