Commit a3fa84be authored by Maciej Lipinski's avatar Maciej Lipinski

Presentation on PPSi presented at ISPCS2014 in Austin

parent 1e6bcc75
all : WhiteRabbit.pdf
.PHONY : all clean
WhiteRabbit.pdf : WhiteRabbit.tex
pdflatex $^
pdflatex $^
clean :
rm -f *.eps *.pdf *.dat *.log *.out *.aux *.dvi *.ps *.nav *.snm *.toc
\documentclass[compress,red]{beamer}
\mode<presentation>
\setbeamertemplate{navigation symbols}{}
\usepackage{pgfpages}
\usepackage{color}
\usepackage{transparent}
% \setbeameroption{show notes}
% \setbeameroption{show notes on second screen=right}
\usetheme{Warsaw}
\setbeamercolor{uppercolgreen}{fg=white,bg=green!35}
\setbeamercolor{lowercolgreen}{fg=black,bg=green!10}
%\hypersetup{pdfpagemode=FullScreen} % makes your presentation go automatically to full screen
% define your own colors:
\definecolor{Red}{rgb}{1,0,0}
\definecolor{Blue}{rgb}{0,0,1}
\definecolor{Green}{rgb}{0,1,0}
\definecolor{magenta}{rgb}{1,0,.6}
\definecolor{lightblue}{rgb}{0,.5,1}
\definecolor{lightpurple}{rgb}{.6,.4,1}
\definecolor{gold}{rgb}{.6,.5,0}
\definecolor{orange}{rgb}{1,0.4,0}
\definecolor{hotpink}{rgb}{1,0,0.5}
\definecolor{newcolor2}{rgb}{.5,.3,.5}
\definecolor{newcolor}{rgb}{0,.3,1}
\definecolor{newcolor3}{rgb}{1,0,.35}
\definecolor{darkgreen1}{rgb}{0, .35, 0}
\definecolor{darkgreen}{rgb}{0, .6, 0}
\definecolor{darkred}{rgb}{.75,0,0}
\xdefinecolor{olive}{cmyk}{0.64,0,0.95,0.4}
\xdefinecolor{purpleish}{cmyk}{0.75,0.75,0,0}
\useoutertheme[subsection=false]{smoothbars}
% include packages
\usepackage{subfigure}
\usepackage{multicol}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage[all,knot]{xy}
\xyoption{arc}
\usepackage{url}
\usepackage{multimedia}
\usepackage{hyperref}
\usepackage{helvet}
\usepackage[polish,english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{multirow}
\usepackage{amsmath}
\graphicspath{ {../../figures/} }
\newcommand{\backupbegin}{
\newcounter{framenumberappendix}
\setcounter{framenumberappendix}{\value{framenumber}}
}
\newcommand{\backupend}{
\addtocounter{framenumberappendix}{-\value{framenumber}}
\addtocounter{framenumber}{\value{framenumberappendix}}
}
\title[PPSi \hspace{2em}\insertframenumber/\inserttotalframenumber]
{PPSi -- A Free Software PTP Implementation }
\institute{
% \begin{center}
% Hardware and Timing Section / ~~~ Institute of Electronic Systems \\
% ~~~~~~~~~~~~~~~~~~~~~CERN ~~~~~~~~~~~~~~~~ / ~~ Warsaw University of Technology \\
% \end{center}
\begin{center}
% CERN $\backslash$ Warsaw University of Technology $\backslash$ Universit\`{a} degli Studi di
% Pavia
CERN $|$ Warsaw University of Technology $|$ Universit\`{a} degli Studi di Pavia
\end{center}
}
\author[M. Lipi\'{n}ski]{P. Fezzardi, \and \underline{M. Lipi\'{n}ski}, \and A. Rubini, \and
A. Colosimo}
% \author{
% Maciej Lipi\'{n}ski
% % on behalf of Maciej Lipi\'{n}ski
% % Tomasz Wlostowski,
% % Javier Serrano,
% % Pablo Alvarez,
% % Juan David Gonzalez Cobas,
% % Alessandro Rubini and
% % Pedro Moreira
% }
\date{ISPCS2014 \\ 25th September 2014 \\ Austin, Texas}
\pgfdeclareimage[height=0.6cm]{wr-logo}{logo/WRlogo.pdf}
\logo{\pgfuseimage{wr-logo}}
\AtBeginSection[]
\begin{document}
\frame{\titlepage}
\begin{frame}<beamer>{Outline}
\tableofcontents %[currentsection]
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Introduction}
\subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}<beamer>{Outline}
\tableofcontents [currentsection]
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{White Rabbit extension to PTP}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{columns}[c]
\column{0.8\textwidth}
\begin{itemize}
\item<1-> Next-generation CERN control and timing
\item<2-> Open Hardware and Open Software
\item<3-> PTP extension defined as a Profile
\item<4-> Synchronization:
\begin{itemize}
\item {\bf sub-nanosecond accuracy}
\item {\bf tens of picoseconds precision}
\end{itemize}
\end{itemize}
\column{0.3\textwidth}
\begin{center}
% \includegraphics[width=0.9\textwidth]{logo/WRlogo.pdf}
\end{center}
\end{columns}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{White Rabbit extension to PTP}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\vspace{-0.3cm}
\begin{center}
\includegraphics<1>[width=0.9\textwidth]{PPSi/WRPTPd-1.jpg}
\includegraphics<2>[width=0.9\textwidth]{PPSi/WRPTPd-2.jpg}
\includegraphics<3>[width=0.9\textwidth]{PPSi/WRPTPd-3.jpg}
\includegraphics<4>[width=0.9\textwidth]{PPSi/WRPTPd-4.jpg}
\includegraphics<5>[width=0.9\textwidth]{PPSi/WRPTPd-5.jpg}
\end{center}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{PTP Ported To Silicon (PPSi)}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{columns}[c]
\column{0.5\textwidth}
\begin{itemize}
\item<1-> Portable
\item<1-> Modular
\item<1-> Extensible
\item<1-> Free software
\item<2-> Maintainable
% \item<5-> Self-contained
\item<2-> Beautiful code
\item<2-> Easy to debug
%explicite: any application should be like that
\end{itemize}
\column{0.51\textwidth}
\only<2>{
\begin{block}{In short ...}
% \begin{center}
A well-designed and well-coded application that we are proud of.
% \end{center}
\end{block}
}
% \begin{center}
%
% \end{center}
\end{columns}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{PPSi design}
\subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}<beamer>{Outline}
\tableofcontents [currentsection]
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{PPSi design}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{PPSi design overview}
\begin{columns}[c]
\column{0.45\textwidth}
\begin{itemize}
% \item Common code for all systems
\item<1-> Arch-independent \vspace{0.1cm}
\begin{itemize}
\setlength{\itemindent}{-1em}
\item<2-> self-containment \vspace{0.1cm}
\item<2-> single entry point \vspace{0.1cm}
\item<2-> non-blocking execution \vspace{0.1cm}
\item<2-> library-like properties \vspace{0.1cm}
\end{itemize}
\item<1-> Arch-dependent \vspace{0.1cm}
\begin{itemize}
\setlength{\itemindent}{-1em}
\item<3-> network \& time I/F \vspace{0.1cm}
\item<5-> main function or\\
\hspace{-0.35cm}real-time loop
\end{itemize}
% \item<5->
\end{itemize}
\column{0.85\textwidth}
\begin{center}
\hspace{-1.0cm}
\includegraphics<1>[width=0.85\textwidth]{PPSi/PPSi-arch-0.jpg}
\includegraphics<2>[width=0.85\textwidth]{PPSi/PPSi-arch-1.jpg}
\includegraphics<3>[width=0.85\textwidth]{PPSi/PPSi-arch-2.jpg}
\includegraphics<4>[width=0.85\textwidth]{PPSi/PPSi-arch-3.jpg}
\includegraphics<5-6>[width=0.85\textwidth]{PPSi/PPSi-arch-4.jpg}
\end{center}
\end{columns}
\only<6>{
\begin{center}
Reflect the PTP layered approach
\end{center}
}
\only<1-5>{
\begin{center}
\textcolor{white}{Reflect the upcoming PTP layered approach}
\end{center}
}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Architecture}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Default protocol code - shared by all architectures}
\begin{itemize}
% \setlength{\itemindent}{-2em}
\item \textbf{Implements}: BMCA, message handling, state machine
\item \textbf{Executes}: immediately, message-- or timeout--triggered
\item \textbf{Returns}: re-entry delay
\end{itemize}
% \vspace{-0.3cm}
% \begin{center}
% \includegraphics[width=1.1\textwidth]{WRdaemon/PPSi-arch-defaultProto.jpg}
% \end{center}
\vspace{-0.8cm}
\begin{columns}[c]
\column{1.\textwidth}
\begin{center}
\includegraphics[width=1.1\textwidth]{PPSi/PPSi-arch-defaultProto.jpg}
\end{center}
\column{0.05\textwidth}
\end{columns}
\end{frame}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % \section{Architecture}
% % \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Default protocol code}
%
% \begin{columns}[c]
% \column{0.3\textwidth}
%
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item<1-> Shared by all archs \vspace{0.1cm}
% \item<2-> Implements: \vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item BMCA\vspace{0.1cm}
% \item Message handling \vspace{0.1cm}
% \item State Machine \vspace{0.1cm}
% % \begin{itemize}
% % \setlength{\itemindent}{-1em}
% % \item<3-> A function per state \vspace{0.1cm}
% % \item<3-> Table of states \vspace{0.1cm}
% % \end{itemize}
% \end{itemize}
% \item<4-> Message/timeout--triggered \vspace{0.1cm}
% \item<5-> Executes \vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item synchronously \vspace{0.1cm}
% \item immediately \vspace{0.1cm}
% \end{itemize}
% \item<6-> Returns re-entry delay \vspace{0.1cm}
% \end{itemize}
% \column{0.8\textwidth}
% \begin{center}
% \hspace{-0.7cm}
% \includegraphics[width=0.9\textwidth]{WRdaemon/PPSi-arch-defaultProto.jpg}
% \end{center}
% \end{columns}
%
%
% \end{frame}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % \section{Architecture}
% % \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Default protocol code}
%
% \begin{columns}[c]
% \column{0.55\textwidth}
%
% \begin{itemize}
% \item<1-> Shared by all architectures \vspace{0.1cm}
% \item<2-> Implements: \vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item Best Master Clock Algorithm\vspace{0.1cm}
% \item PTP Message handling \vspace{0.1cm}
% \item PTP State Machine \vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item<3-> A function per state \vspace{0.1cm}
% \item<3-> Table of states \vspace{0.1cm}
% \end{itemize}
% \end{itemize}
% \item<4-> Message/timeout--triggered \vspace{0.1cm}
% \item<5-> Executes \vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item synchronously \vspace{0.1cm}
% \item immediately \vspace{0.1cm}
% \end{itemize}
% \item<6-> Returns re-entry delay \vspace{0.1cm}
% \end{itemize}
% \column{0.7\textwidth}
% \begin{center}
% \hspace{-0.7cm}
% \includegraphics[width=0.9\textwidth]{WRdaemon/PPSi-arch-defaultProto.jpg}
% \end{center}
% \end{columns}
%
%
% \end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Architecture}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{System architecture specific code}
\begin{itemize}
\setlength{\itemindent}{-2.5em}
\item \textbf{PPSi instance ppi}: per-port config \& runtime data
\item \textbf{Network operations}: arch-- \& mapping--specific functions
\item \textbf{Time operations}: arch-- \& hardware--specific functions
\end{itemize}
% \begin{center}
% \hspace{-0.3cm}
% \includegraphics[width=1.1\textwidth]{WRdaemon/PPSi-arch-archSpecific.jpg}
% \end{center}
\vspace{-0.8cm}
\begin{columns}[c]
\column{1.\textwidth}
\begin{center}
\includegraphics[width=1.1\textwidth]{PPSi/PPSi-arch-archSpecific.jpg}
\end{center}
\column{0.05\textwidth}
\end{columns}
\end{frame}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % \section{Architecture}
% % \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{System architecture specific code}
%
% \begin{columns}[c]
% \column{0.55\textwidth}
% % Arch-specific
% \begin{itemize}
% \item PPSi instance \textbf{ppi} -- per port%\vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item configuration \vspace{0.1cm}
% \item runtime data \vspace{0.1cm}
% \end{itemize}
% \item Network operations
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item hardware-specific interface \vspace{0.1cm}
% \item mapping-specific protocol \vspace{0.1cm}
% \end{itemize}
% \item Time operations
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item current time provision \vspace{0.1cm}
% \item offset or freq adjustment \vspace{0.1cm}
% \item timestamps retrieval \vspace{0.1cm}
% \end{itemize}
% \end{itemize}
% \column{0.7\textwidth}
% \begin{center}
% \hspace{-0.7cm}
% \includegraphics[width=0.9\textwidth]{WRdaemon/PPSi-arch-archSpecific.jpg}
% \end{center}
% \end{columns}
% \end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Architecture}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Runtime environment specific code}
\begin{itemize}
\setlength{\itemindent}{-2.5em}
\item \textbf{Hosted environment}: main loop of daemon, library access
\item \textbf{Freestanding environment}: no main function \& no library, \\real-time loop, library-like usage
\end{itemize}
% % \begin{center}
% % \hspace{-0.3cm}
% % \includegraphics[width=1.1\textwidth]{WRdaemon/PPSi-arch-archEnviron.jpg}
% % \end{center}
\vspace{-0.8cm}
\begin{columns}[c]
\column{1.\textwidth}
\begin{center}
\includegraphics[width=1.1\textwidth]{PPSi/PPSi-arch-archEnviron.jpg}
\end{center}
\column{0.05\textwidth}
\end{columns}
\end{frame}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % \section{Architecture}
% % \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Runtime environment specific code}
%
% \begin{columns}[c]
% \column{0.55\textwidth}
% % Arch-specific
% \begin{itemize}
% \item Hosted environment \vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item main loop of PTP daemon \vspace{0.1cm}
% \item interprocess communication\vspace{0.1cm}
% \item library access
% \end{itemize}
% \item Freestanding environment \vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item no main function \& library \vspace{0.1cm}
% \item real-time loop with PPSi \vspace{0.1cm}
% \item library-like usage of PPSi \vspace{0.1cm}
% \end{itemize}
%
% \end{itemize}
% \column{0.7\textwidth}
% \begin{center}
% \hspace{-0.7cm}
% \includegraphics[width=0.9\textwidth]{WRdaemon/PPSi-arch-archEnviron.jpg}
% \end{center}
% \end{columns}
% \end{frame}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % \section{Introduction}
% % \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Extension specific code}
%
% \begin{columns}[c]
% \column{0.55\textwidth}
% \begin{itemize}
% % \setlength{\itemindent}{-1em}
% \item Definition of custom states \vspace{0.1cm}
% \item Redefined table with calls to \vspace{0.1cm}
% \begin{itemize}
% \setlength{\itemindent}{-1em}
% \item Default states \vspace{0.1cm}
% \item Custom states \vspace{0.1cm}
% \end{itemize}
% \item Hooks in default protocol code\vspace{0.1cm}
% \item Interaction with network and time operations \vspace{0.1cm}
% % \begin{itemize}
% % \item
% % \item
% % \end{itemize}
%
% \end{itemize}
% \column{0.7\textwidth}
% \begin{center}
% \hspace{-0.7cm}
% \includegraphics[width=0.9\textwidth]{WRdaemon/PPSi-arch-extension.jpg}
% \end{center}
% \end{columns}
%
% \end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Introduction}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Extension specific code}
\begin{itemize}
\setlength{\itemindent}{-2.5em}
\item \textbf{Defines} custom states
\item \textbf{Redefines} table with calls to default \& custom states
\item \textbf{Defines} hooks in default protocol code
% \item Interaction with network and time operations \vspace{0.1cm}
% \begin{itemize}
% \item
% \item
% \end{itemize}
\end{itemize}
\vspace{-0.8cm}
\begin{columns}[c]
\column{1.\textwidth}
\begin{center}
\includegraphics[width=1.1\textwidth]{PPSi/PPSi-arch-extension.jpg}
\end{center}
\column{0.05\textwidth}
\end{columns}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Introduction}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Portability: supported ``arch"}
\begin{columns}[c]
\column{0.5\textwidth}
\begin{itemize}
\item<1-> arch--unix
\begin{itemize}
\setlength{\itemindent}{-1em}
\footnotesize
% \item hosted environment
\item Linux with GNU libraries
\end{itemize}
\item<2-> arch--wrs
\begin{itemize}
\setlength{\itemindent}{-1em}
\footnotesize
\item embedded Linux
\item hardware timestamping
% \item inter-process communication
\end{itemize}
\item<3-> arch--wrpc
\begin{itemize}
\setlength{\itemindent}{-1em}
\footnotesize
\item soft--core CPU in FPGA
\item no libraries, Real-Time loop
\end{itemize}
\item<4-> arch-bare--\{i386, x86\_64\}
\begin{itemize}
\setlength{\itemindent}{-1em}
\footnotesize
\item Linux build
\item no dependency on libraries
\end{itemize}
% \item arch--stm32
% \begin{itemize}
% \item external port
% \item ARM microprocessor
% \end{itemize}
\item<5-> arch ongoing/independent
\item<6-> arch-sim
\begin{itemize}
\setlength{\itemindent}{-1em}
\footnotesize
\item hosted on single Unix PC
\item simulation of two nodes
\end{itemize}
\end{itemize}
\column{0.85\textwidth}
\begin{center}
\hspace{-2.0cm}
\includegraphics[width=0.8\textwidth]{PPSi/PPSi-arch-overview-bare.jpg}
\end{center}
\end{columns}
\end{frame}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % \section{Introduction}
% % \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Portability: choice of architecture and startup-parameters}
%
% \begin{itemize}
% \item
% \item
% \item
% \end{itemize}
%
% \end{frame}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % \section{Introduction}
% % \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Debugging}
%
% \begin{itemize}
% \item
% \item
% \item
% \end{itemize}
%
% \end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Unexpected \& useful benefits}
\subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}<beamer>{Outline}
\tableofcontents [currentsection]
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Example architecture: simulation}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Overview of simulation ``arch"}
\begin{center}
% \includegraphics<1>[width=0.9\textwidth]{WRdaemon/PPSi-arch-sim-empty.jpg}
\includegraphics[width=0.9\textwidth]{PPSi/PPSi-arch-sim.jpg}
\end{center}
\begin{itemize}
\item<1-> Developed by Pietro Fezzardi to test non-WR servo % Pietro
\item<2-> Provides time fast-forward benefiting
\begin{itemize}
\item<3-> network-- \& timeout--driven protocol core
\item<3-> synchronous \& immediate execution of state machine
\end{itemize}
\item<4-> Simulates thousands of PTP iterations per second
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Introduction}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Simulation to tune and debug non-WR servo}
\begin{center}
Simulation parameters:
\begin{itemize}
\item Range of packet delay variation
\item Initial frequency offset
\end{itemize}
\end{center}
% \begin{itemize}
% \item Random jitter
% \item Fault injection
% \item Performance tuning
% \end{itemize}
\pause
\begin{center}
\includegraphics<1>[width=1.0\textwidth]{PPSi/PPSi-sim-results-1.jpg}
\includegraphics<2>[width=1.0\textwidth]{PPSi/PPSi-sim-results-2.jpg}
\includegraphics<3>[width=1.0\textwidth]{PPSi/PPSi-sim-results-3.jpg}
\end{center}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Introduction}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Random fault injection}
\begin{itemize}
\item Bug report:
\begin{itemize}
\item problem on freestanding node
\item WR PLL not locking when messages lost
\end{itemize}
\item Debugging: random message drop implementation
\item PPSi design benefit:
\begin{itemize}
\item available in all architectures
\item useful for non-WR servo simulation-testing
\end{itemize}
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Introduction}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Results}
%
%
% \end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Conclusions}
\subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}<beamer>{Outline}
\tableofcontents [currentsection]
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Summary}
\begin{itemize}
\item<1-> Clean and well-coded PTP implementation
\item<2-> Unmatched in Free Software world
\begin{itemize}
\item portability
\item extensibility
\end{itemize}
\item<3-> Layered design
\item<4-> Abstracted interactions between layers
\item<5-> Active and ever-growing users community
\end{itemize}
\end{frame}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Q\&A}
% \subsection{}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{frame}{Questions and answers}
\begin{center}
\includegraphics[height=3.5cm]{logo/WRlogo.pdf}
\end{center}
\begin{center}
Thank you
\end{center}
\begin{center}
\url{www.ohwr.org/projects/ppsi}
\end{center}
\end{frame}
% \appendix
% \backupbegin
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %\section{extras}
% % \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Extras}
%
% \begin{center}
% Extras
% \end{center}
%
% \end{frame}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \section{Empty}
% \subsection{}
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \begin{frame}{Empty}
%
%
% \end{frame}
%
% \backupend
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\end{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
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