Commit 54782e9f authored by Manohar Vanga's avatar Manohar Vanga

Restructured documents and added FOSDEM 2012 slides

Signed-off-by: 's avatarManohar Vanga <manohar.vanga@cern.ch>
parent a8a4ddde
all: sdwb2012.pdf
sdwb2012.pdf: sdwb2012.tex
pdflatex sdwb2012.tex
pdflatex sdwb2012.tex
clean:
rm -rf *.aux *.dvi *.log *.pdf *.nav *.out *.snm *.toc
This diff is collapsed.
\documentclass{beamer}
\usepackage[latin1]{inputenc}
\usepackage{graphicx}
\usepackage{subfigure}
\usetheme{Warsaw}
\setbeamertemplate{navigation symbols}{}
\title[SDWB\hspace{2em}\insertframenumber/ \inserttotalframenumber]{The Self-Describing Wishbone Bus (SDWB)}
\author{Manohar Vanga}
\institute{BE-CO-HT, CERN, Geneva}
\date{Jule 13, 2007}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
%\tableofcontents[currentsection,currentsubsection]
%
%\AtBeginSubsection[]
%{
% \begin{frame}<beamer>
% \frametitle{Layout}
% \tableofcontents[currentsection,currentsubsection]
% \end{frame}
%}
\section{Introduction}
\subsection{Introduction}
\begin{frame}{About}
\begin{itemize}
\pause \item Indian\pause, studying in Spain\pause, working in Switzerland (CERN)\pause, living in France
\pause \item Hardware \& Timing section (Beam Controls group) @ CERN
\pause \item Develop timing \& data acquisition hardware for big toys
\begin{itemize}
\item Open Hardware Repository (http://ohwr.org)
\end{itemize}
\pause \item VME and PCI hardware (FPGA based)
\pause \item I work on Linux device drivers
\end{itemize}
\end{frame}
\subsection{The Hardware}
\begin{frame}{FPGAs}
\begin{itemize}
\pause \item Field-Programmable Gate Arrays%: can be programmed 'in the field'
\pause \item Made up of 'logic blocks' %that can behave as simple gates up to complex combinational functions
\pause \item Logic described in a Hardware Description Language (HDL)
\pause \item Synthesized
\pause \item Loaded into FPGA
\pause \item Dynamic hardware logic!
\end{itemize}
\end{frame}
\begin{frame}{FPGA Hardware at CERN}
\begin{figure}
\begin{center}
\subfigure[SPEC Board]
{
\includegraphics[width=0.4\textwidth]{spec.jpg}
}
\hspace{0.3in}
\subfigure[White Rabbit Switch]
{
\includegraphics[width=0.4\textwidth]{wr.jpg}
}
\caption{Open Hardware from OHWR}
\label{fig1}
\end{center}
\end{figure}
\end{frame}
\begin{frame}{Wishbone Bus}
\begin{itemize}
\item Community-developed open bus protocol
\pause \item Great for connecting logic blocks %within FPGA's
\begin{itemize}
\pause \item OpenCores (http://opencores.org)
\end{itemize}
\pause \item Integrator places logic blocks in Wishbone address space
\pause \item Mapped and accessed as usual
\end{itemize}
\end{frame}
\subsection{Device Drivers}
\begin{frame}{Device Driver Model}
\begin{itemize}
\item Monolithic driver? % Firmware
\begin{itemize}
\pause \item Modular Hardware + FPGA = Extremely vast problem space
\end{itemize}
\pause \item Blocks reused in different designs
\begin{itemize}
\pause \item Should be exploited
\end{itemize}
% \pause \item So we can just write drivers for specific blocks and save a lot of effort
\pause \item Clean design: Bus auto-discovery
\begin{itemize}
\pause \item Not defined in the Wishbone specification
\pause \item Let's add one!
\end{itemize}
\end{itemize}
\end{frame}
\subsection{Self-Describing Wishbone Bus (SDWB)}
\begin{frame}{Requirements}
\begin{itemize}
\item So you want to auto-discover a bus?
\pause \item Device identification
\pause \item Firmware metadata if possible
\pause \item Support for device hierarchy
\begin{itemize}
\pause \item eg. 'Router block' controls multiple 'Ethernet port blocks'
\end{itemize}
\pause \item Shouldn't leave proprietary blocks out in the cold
\begin{itemize}
\pause \item Cannot be modified
\pause \item Can contain entire device hierarchy
\end{itemize}
\pause \item Should try not to constrain designers/integrators
\pause \item Should not force the use of external sources for metadata
\end{itemize}
\end{frame}
\begin{frame}{Enabling Auto-Discovery: Part 1}
\begin{itemize}
\item Device identification
\begin{itemize}
\pause \item Each logic block gets vendor/device ID
\pause \item 64-bit Vendor IDs
\pause \item Vendor/Device name strings, Device flags etc.
\end{itemize}
\pause \item Firmware Metadata
\begin{itemize}
\pause \item ID block containing firmware version information
\pause \item Header block holds pointer to ID block and to list of devices
\end{itemize}
\pause \item Only header block location needed
\end{itemize}
\end{frame}
\begin{frame}{Enabling Auto-Discovery: Part 2}
\begin{itemize}
\item Supporting hierarchy description
\begin{itemize}
\pause \item Parents have a variable list of child locations
\pause \item Modification of parent doesn't require modifying children
\end{itemize}
\pause \item Supporting proprietary blocks
\begin{itemize}
\pause \item Relative offsets
\end{itemize}
\pause \item Array of top level devices. Location in header % to 'discover' bus
\end{itemize}
\end{frame}
\begin{frame}{Auto-discovery!}
\includegraphics<1>[width=0.8\textwidth]{wb_1.png}
\pause \includegraphics<2>[width=0.8\textwidth]{wb_2.png}
\pause \includegraphics<3>[width=0.8\textwidth]{wb_3.png}
\pause \includegraphics<4>[width=0.8\textwidth]{wb_4.png}
\pause \includegraphics<5>[width=0.8\textwidth]{wb_5.png}
\pause \includegraphics<6>[width=0.8\textwidth]{wb_6.png}
\pause \includegraphics<7>[width=0.8\textwidth]{wb_7.png}
\pause \includegraphics<8>[width=0.8\textwidth]{wb_8.png}
\pause \includegraphics<9>[width=0.8\textwidth]{wb_9.png}
\pause \includegraphics<10>[width=0.8\textwidth]{wb_10.png}
\pause \includegraphics<11>[width=0.8\textwidth]{wb_11.png}
\pause \includegraphics<12>[width=0.8\textwidth]{wb_12.png}
\pause \includegraphics<13>[width=0.8\textwidth]{wb_13.png}
\pause \includegraphics<14>[width=0.8\textwidth]{wb_14.png}
\end{frame}
\begin{frame}{Examples}
\begin{itemize}
\item Test drivers
\begin{itemize}
\pause \item Wishbone 1-wire and I2C block driver
\pause \item ADC controller driver (SPEC board)
\end{itemize}
\end{itemize}
\end{frame}
\subsection{Future Work}
\begin{frame}{Development Efforts}
\begin{itemize}
\item Test specification with more complex hardware
\pause \item Integrate with Wishbone standard
\pause \item Go upstream
\begin{itemize}
\pause \item Provide support for older kernels
\pause \item Drivers for specific blocks
\end{itemize}
\end{itemize}
\end{frame}
\begin{frame}{Thanks!}
\begin{itemize}
\item OHWR Page: http://www.ohwr.org/projects/fpga-config-space
\end{itemize}
\end{frame}
\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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="990"
height="765"
id="svg2"
version="1.1"
inkscape:version="0.48.1 r9760"
sodipodi:docname="drawing.svg">
<defs
id="defs4">
<marker
inkscape:stockid="Arrow1Send"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Send"
style="overflow:visible;">
<path
id="path4592"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.2) rotate(180) translate(6,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path4586"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path4580"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="551.95636"
inkscape:cy="362.13896"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
width="990px"
inkscape:window-width="1920"
inkscape:window-height="1123"
inkscape:window-x="0"
inkscape:window-y="24"
inkscape:window-maximized="1" />
<metadata
id="metadata7">
<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(0,-287.36218)">
<text
xml:space="preserve"
style="font-size:10.53359985px;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="273.31921"
y="372.91019"
id="text2989"
sodipodi:linespacing="125%"
transform="scale(1.0352824,0.96592003)"><tspan
sodipodi:role="line"
x="273.31921"
y="372.91019"
id="tspan2993"
style="font-size:36.86759949px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold">WB Memory Map</tspan></text>
<rect
style="color:#000000;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1.31669998;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect3716"
width="34.078907"
height="19.077404"
x="868.45483"
y="234.53873" />
<text
xml:space="preserve"
style="font-size:8px;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="520.45575"
y="629.51233"
id="text4528"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="520.45575"
y="629.51233"
style="font-size:10px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold"
id="tspan4532" /></text>
<rect
style="color:#000000;fill:none;stroke:#000000;stroke-width:4.74267817;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect2987"
width="331.73166"
height="602.586"
x="114.63193"
y="379.52798" />
</g>
</svg>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<?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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="990"
height="765"
id="svg2"
version="1.1"
inkscape:version="0.48.1 r9760"
sodipodi:docname="wb_1.svg">
<defs
id="defs4">
<marker
inkscape:stockid="Arrow1Send"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Send"
style="overflow:visible;">
<path
id="path4592"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.2) rotate(180) translate(6,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path4586"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path4580"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="551.95636"
inkscape:cy="362.13896"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
width="990px"
inkscape:window-width="1920"
inkscape:window-height="1123"
inkscape:window-x="0"
inkscape:window-y="24"
inkscape:window-maximized="1" />
<metadata
id="metadata7">
<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(0,-287.36218)">
<text
xml:space="preserve"
style="font-size:10.53359985px;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="273.31921"
y="372.91019"
id="text2989"
sodipodi:linespacing="125%"
transform="scale(1.0352824,0.96592003)"><tspan
sodipodi:role="line"
x="273.31921"
y="372.91019"
id="tspan2993"
style="font-size:36.86759949px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold">WB Memory Map</tspan></text>
<rect
style="color:#000000;fill:none;stroke:#000000;stroke-width:1.58132637;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect2999"
width="331.43542"
height="38.38192"
x="114.97136"
y="924.00513" />
<text
xml:space="preserve"
style="font-size:10.53359985px;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="213.41661"
y="985.99695"
id="text3001"
sodipodi:linespacing="125%"
transform="scale(1.0352824,0.96592003)"><tspan
sodipodi:role="line"
id="tspan3003"
x="213.41661"
y="985.99695"
style="font-size:26.33399963px;font-weight:bold;-inkscape-font-specification:Sans Bold">HEADER</tspan></text>
<rect
style="color:#000000;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1.31669998;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect3716"
width="34.078907"
height="19.077404"
x="868.45483"
y="234.53873" />
<text
xml:space="preserve"
style="font-size:8px;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="520.45575"
y="629.51233"
id="text4528"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="520.45575"
y="629.51233"
style="font-size:10px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold"
id="tspan4532" /></text>
<rect
style="color:#000000;fill:none;stroke:#000000;stroke-width:4.74267817;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect2987"
width="331.73166"
height="602.586"
x="114.63193"
y="379.52798" />
</g>
</svg>
<?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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="990"
height="765"
id="svg2"
version="1.1"
inkscape:version="0.48.1 r9760"
sodipodi:docname="wb_2.svg">
<defs
id="defs4">
<marker
inkscape:stockid="Arrow1Send"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Send"
style="overflow:visible;">
<path
id="path4592"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.2) rotate(180) translate(6,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Mend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Mend"
style="overflow:visible;">
<path
id="path4586"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.4) rotate(180) translate(10,0)" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0.0"
refX="0.0"
id="Arrow1Lend"
style="overflow:visible;">
<path
id="path4580"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
transform="scale(0.8) rotate(180) translate(12.5,0)" />
</marker>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1"
inkscape:cx="551.95636"
inkscape:cy="362.13896"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
width="990px"
inkscape:window-width="1920"
inkscape:window-height="1123"
inkscape:window-x="0"
inkscape:window-y="24"
inkscape:window-maximized="1" />
<metadata
id="metadata7">
<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(0,-287.36218)">
<text
xml:space="preserve"
style="font-size:10.53359985px;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="273.31921"
y="372.91019"
id="text2989"
sodipodi:linespacing="125%"
transform="scale(1.0352824,0.96592003)"><tspan
sodipodi:role="line"
x="273.31921"
y="372.91019"
id="tspan2993"
style="font-size:36.86759949px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold">WB Memory Map</tspan></text>
<rect
style="color:#000000;fill:none;stroke:#000000;stroke-width:1.58132637;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect2999"
width="331.43542"
height="38.38192"
x="114.97136"
y="924.00513" />
<text
xml:space="preserve"
style="font-size:10.53359985px;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="213.41661"
y="985.99695"
id="text3001"
sodipodi:linespacing="125%"
transform="scale(1.0352824,0.96592003)"><tspan
sodipodi:role="line"
id="tspan3003"
x="213.41661"
y="985.99695"
style="font-size:26.33399963px;font-weight:bold;-inkscape-font-specification:Sans Bold">HEADER</tspan></text>
<rect
style="color:#000000;fill:#afe9c6;stroke:#000000;stroke-width:1.58132637;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect3005"
width="331.43542"
height="43.151268"
x="114.97136"
y="836.56702" />
<text
xml:space="preserve"
style="font-size:10.53359985px;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="202.08359"
y="897.58997"
id="text3026"
sodipodi:linespacing="125%"
transform="scale(1.0352824,0.96592003)"><tspan
sodipodi:role="line"
id="tspan3028"
x="202.08359"
y="897.58997"
style="font-size:26.33399963px;font-weight:bold;-inkscape-font-specification:Sans Bold">ID BLOCK</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:4.51101398;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 445.76986,934.9065 c 0,0 29.94076,-8.4031 31.6447,-32.24986 1.70395,-23.84675 -31.40128,-25.20943 -31.40128,-25.20943"
id="path3030"
inkscape:connector-curvature="0" />
<rect
style="color:#000000;fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1.31669998;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect3716"
width="34.078907"
height="19.077404"
x="868.45483"
y="234.53873" />
<path
style="fill:none;stroke:#000000;stroke-width:3.457654;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 446.19528,878.09607 15.06089,-6.63246"
id="path4486"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:3.58932424;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 446.79772,877.98366 10.84384,9.44283"
id="path4490"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:8px;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="520.45575"
y="629.51233"
id="text4528"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="520.45575"
y="629.51233"
style="font-size:10px;font-weight:bold;text-align:center;text-anchor:middle;-inkscape-font-specification:Sans Bold"
id="tspan4532" /></text>
<rect
style="color:#000000;fill:none;stroke:#000000;stroke-width:4.74267817;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
id="rect2987"
width="331.73166"
height="602.586"
x="114.63193"
y="379.52798" />
</g>
</svg>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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