@@ -100,9 +100,20 @@ The two major differences are:
\subsubsection{FIJI Setup Tool}
\texttt{Tk::FIJISettingsViewer} makes up for the majority of the visible UI of \texttt{fiji\_setup.pl}.
Apart from the widgets on the top it shows several tabs containing controls for most of the \ac{FIJI} Settings.
Apart from the widgets specifying things like the save location of the settings file on the top it shows several tabs containing controls for most of the \ac{FIJI} Settings.
The tabs are filled automatically according to the constants described in \Cref{sec:settings_usage} (cf., \texttt{Tk::FIJISettingsViewer::\_populate\_widget}).
Additionally there is a graphical representation of the \ac{FIJI} system that is implemented by \texttt{Tk::FIJISettingsCanvas}.
The dependency graph of \texttt{Tk::FIJISettingsViewer} is depicted in \Cref{fig:FIJISettingsViewer_8pm__incl}.
\caption{Dependency graph of \texttt{Tk::FIJISettingsViewer}}
\label{fig:FIJISettingsViewer_8pm__incl}
\end{figure}
All settings of type \texttt{net} (representing a net in the Verilog netlist) can be set by a distinct dialog that is represented by \texttt{Tk::FIJINetSelection}.
Another dialog that is not exclusive to \texttt{fiji\_setup.pl} is \texttt{Tk::FIJIModalDialog} that is a simple implementation of a modal dialog that conveniencetly handles buttons and supports images and markup text (used in the about dialog) as well.
...
...
@@ -163,6 +174,17 @@ All run-time communication with the \ac{DUT} works via the \ac{UART} protocol sp
The Perl implementation is split into several files.
The part filling a buffer representing the payload as preparation for sending as well as parsing the messages from the \ac{FIC} resides in \texttt{FIJI::Connection} and relies on \texttt{FIJI::AnySerialPort} to be compatible across platforms.
Its \texttt{send\_config} method allows \texttt{FIJI::Downloader} to offer various \texttt{download\_*} methods to classes further up the stack in the \ac{FIJIEE}.
Its dependency graph is depicted in \Cref{fig:Downloader_8pm__incl}.
\begin{figure}[ht]
\centering
\resizebox{\textwidth}{!}{
\input{content/Downloader_8pm__incl.dot.tex}
}
\caption{Dependency graph of \texttt{FIJI::Downloader}}
\label{fig:Downloader_8pm__incl}
\end{figure}
The two available user interfaces of \texttt{fiji\_ee.pl} and \texttt{fiji\_ee\_gui.pl} merely prepare data structures representing test patterns and pass them to the classes mentioned above.
The GUI application is the only truely\footnote{As far as Perl threads are \textit{real} anyway,\\cf.\ \url{http://perldoc.perl.org/perlthrtut.html\#What-kind-of-threads-are-Perl-threads\%3f}} multithreaded application in the framework.