217 lines
8.4 KiB
TeX
217 lines
8.4 KiB
TeX
\documentclass[a4paper,11pt,hidelinks]{report}
|
|
% {{{ Packages
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage[english]{babel}
|
|
\usepackage[pdftex]{graphicx}
|
|
\usepackage{multirow}
|
|
\usepackage{color}
|
|
\usepackage[pdftex,
|
|
pdfauthor={Felix Martin},
|
|
colorlinks=false]{hyperref}
|
|
\usepackage{units}
|
|
\usepackage{csquotes}
|
|
\usepackage{amssymb}
|
|
\usepackage{amsmath}
|
|
\usepackage{ntheorem}
|
|
\newtheorem{hyp}{Hypothesis}
|
|
\usepackage{tikz}
|
|
\usetikzlibrary{mindmap}
|
|
\usepackage[font={small}]{caption}
|
|
% }}}
|
|
% {{{ Glossary
|
|
\usepackage{glossaries}
|
|
\makeglossaries
|
|
\newglossaryentry{osek}{name=OSEK/VDX, description={Offene Systeme und deren
|
|
Schnittstellen für die Elektronik in Kraftfahrzeugen}}
|
|
\newglossaryentry{osekos}{name={OSEK OS}, description={OSEK Operating System}}
|
|
\newglossaryentry{orti}{name=ORTI, description={OSEK Run Time Interface}}
|
|
\newglossaryentry{os}{name=OS, description={Operating System}}
|
|
\newglossaryentry{ta}{name=TA, description={Timing-Architects Embedded Systems GmbH}}
|
|
\newglossaryentry{ecu}{name=ECU, description={Engine Control Unit}}
|
|
\newglossaryentry{autosar}{name=AUTOSAR, description={AUTomotive Open System ARchitecture}}
|
|
\newglossaryentry{autosaros}{name={AUTOSAR OS}, description={AUTOSAR Operating System}}
|
|
\newglossaryentry{api}{name=API, description={Application Programming Interface}}
|
|
\newglossaryentry{io}{name=I/O, description={Input/Output}}
|
|
\newglossaryentry{mcal}{name=MCAL, description={Microcontroller Abstraction Layer}}
|
|
\newglossaryentry{isr}{name=ISR, description={Interrupt Service Routine}}
|
|
\newglossaryentry{osekcc}{name=CC, description={OSEK Conformance Class}}
|
|
\newglossaryentry{mta}{name=MTA, description={Multiple Task Activation}}
|
|
\newglossaryentry{vfb}{name=VFB, description={Virtual Function Bus}}
|
|
\newglossaryentry{id}{name=ID, description={Identifier}}
|
|
\newglossaryentry{oil}{name=OIL, description={OSEK Implementation Language}}
|
|
\newglossaryentry{koil}{name=KOIL, description={Kernel Object Interface Language}}
|
|
\newglossaryentry{pob}{name=POB, description={Processor Observation Block}}
|
|
\newglossaryentry{bob}{name=BOB, description={Bus Observation Block}}
|
|
\newglossaryentry{etm}{name=ETM, description={Embedded Trace Macrocell}}
|
|
\newglossaryentry{dma}{name=DMA, description={Direct Memory Access}}
|
|
\newglossaryentry{agbt}{name=AGBT, description={Aurora Gigabit Interface}}
|
|
\newglossaryentry{imds}{name=IMDS, description={Infineon Multicore Debug Solution}}
|
|
\newglossaryentry{jtag}{name=JTAG, description={Joint Test Action Group}}
|
|
\newglossaryentry{daq}{name=DAQ, description={Data AcQuisition}}
|
|
\newglossaryentry{elf}{name=ELF, description={Executable and Linkable Format}}
|
|
\newglossaryentry{btf}{name=BTF, description={Best Trace Format}}
|
|
\newglossaryentry{oem}{name=OEM, description={Original equipment manufacturer}}
|
|
\newglossaryentry{rte}{name=RTE, description={Real Time Evaluation}}
|
|
\newglossaryentry{ipa}{name=IPA, description={Inter-Process Activation}}
|
|
\newglossaryentry{ee}{name=EE, description={ERIKA Enterprise Operating System}}
|
|
\newglossaryentry{rpc}{name=RPC, description={Remote Procedure Call}}
|
|
% }}}
|
|
% {{{ Get nice chapter titles
|
|
\usepackage{titlesec}
|
|
\titleformat{\chapter}[hang]{\bf\huge}{\thechapter}{2pc}{}
|
|
% }}}
|
|
% {{{ Package for adding todo comments to pdf
|
|
\usepackage[colorinlistoftodos]{todonotes}
|
|
\newcommand\todoin[2][]{\todo[inline, caption={2do}, #1]{
|
|
\begin{minipage}
|
|
{\textwidth-4pt}#2
|
|
\end{minipage}}
|
|
}
|
|
% }}}
|
|
% {{{ Listing Configuration
|
|
\usepackage{listings}
|
|
\usepackage{listing}
|
|
\usepackage{float}
|
|
|
|
\floatstyle{plaintop}
|
|
\newfloat{code}{tb}{lop}[chapter]
|
|
\floatname{code}{Code}
|
|
|
|
\lstset{%
|
|
basicstyle=\footnotesize, % the size of the fonts that are used for the code
|
|
breakatwhitespace=false, % sets if automatic breaks should only happen at whitespace
|
|
breaklines=true, % sets automatic line breaking
|
|
captionpos=b, % sets the caption-position to bottom
|
|
escapeinside={\%*}{*)}, % if you want to add LaTeX within your code
|
|
extendedchars=true, % lets you use non-ASCII characters; for 8-bits encodings only, does not work with UTF-8
|
|
keepspaces=true, % keeps spaces in text, useful for keeping indentation of code (possibly needs columns=flexible)
|
|
language=C, % the language of the code
|
|
numbers=left,
|
|
keywords={},
|
|
frame=leftline,
|
|
numbersep=10pt, % how far the line-numbers are from the code
|
|
numberstyle=\tiny,
|
|
showspaces=false, % show spaces everywhere adding particular underscores; it overrides 'showstringspaces'
|
|
showstringspaces=false, % underline spaces within strings only
|
|
showtabs=false, % show tabs within strings adding particular underscores
|
|
stepnumber=5, % the step between two line-numbers. If it's 1, each line will be numbered
|
|
tabsize=2, % sets default tabsize to 2 spaces
|
|
% aboveskip=20pt, % increase space between text and top of listing
|
|
% belowskip=20pt, % increase space between bottom of listing and text
|
|
}
|
|
% }}}
|
|
% {{{ Set page heading design
|
|
\input{./config/pageheading.tex}
|
|
% }}}
|
|
% {{{ Provide meta info
|
|
\author{Felix Martin}
|
|
\title{Recording of an Operating System Aware Hardware Trace}
|
|
\date{\today}
|
|
% }}}
|
|
|
|
\begin{document}
|
|
% {{{ Title
|
|
\input{./config/title.tex}
|
|
|
|
%empty page - only needed for twoside
|
|
%\clearpage\mbox{}\thispagestyle{empty}\clearpage
|
|
% }}}
|
|
% {{{ Abstract and List of contents
|
|
\setcounter{page}{1}
|
|
\pagestyle{fancy}
|
|
\pagenumbering{roman}
|
|
|
|
\newpage
|
|
\input{./content/abstract.tex}
|
|
\addcontentsline{toc}{section}{Abstract}
|
|
|
|
\newpage
|
|
\tableofcontents
|
|
\addcontentsline{toc}{section}{Contents}
|
|
|
|
\newpage
|
|
|
|
\parskip = 0pt %avoid empty lines
|
|
|
|
%empty page - only needed for twoside
|
|
%\clearpage\mbox{}\thispagestyle{empty}\clearpage
|
|
% }}}
|
|
% {{{ Content
|
|
\setcounter{page}{1}
|
|
\pagenumbering{arabic}
|
|
|
|
\input{./content/introduction.tex}
|
|
% * Show what related tools cannot do
|
|
% * AUTOSAR OS measures task execution times
|
|
% * http://www.eetimes.com/document.asp?doc_id=1278315
|
|
% * Figure out how they do it and why we are better
|
|
% * http://www.bmw-carit.com/downloads/publications/RealtimeSystemDesignUtilizingAUTOSARMethodology.pdf
|
|
% * https://en.wikipedia.org/wiki/Tracing_(software)
|
|
% * Paper von Andreas von den Typen in Muenchen vom Tuev/Frauenhofer
|
|
% * System level performance analysis for real-time automotive multicore and network architectures
|
|
% * http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=5075823&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D5075823
|
|
% * MultiCore Benefits & Challenges for Automotive Applications
|
|
% * http://papers.sae.org/2008-01-0989/
|
|
|
|
\input{./content/fundamentals.tex}
|
|
\input{./content/osek.tex}
|
|
\input{./content/system_trace.tex}
|
|
|
|
\input{./content/hardware_tracing.tex}
|
|
|
|
\input{./content/mapping.tex}
|
|
|
|
\chapter{Validation}
|
|
\label{chapter:validation}
|
|
\input{./content/validation_intro.tex}
|
|
\input{./content/testbench.tex}
|
|
\input{./content/tests.tex}
|
|
|
|
\input{./content/conclusion.tex}
|
|
|
|
\input{./content/future.tex}
|
|
|
|
% }}}
|
|
% {{{ Appendix
|
|
|
|
% Some work is necessary to get the appendix as we want it. At first we
|
|
% change chapter numbers to letters (Alph). Then we reset the counter. This
|
|
% confuses hyperref which is why we have to renew theHchapter.
|
|
\renewcommand\thechapter{\Alph{chapter}}
|
|
\setcounter{chapter}{0}
|
|
\renewcommand*{\theHchapter}{chX.\the\value{chapter}}
|
|
\chapter{Appendix}
|
|
|
|
\listoffigures
|
|
\addcontentsline{toc}{section}{\protect\numberline{\thesection}List of Figures}
|
|
\stepcounter{section}
|
|
|
|
\newpage
|
|
\listoftables
|
|
\addcontentsline{toc}{section}{\protect\numberline{\thesection}List of Tables}
|
|
\stepcounter{section}
|
|
|
|
\newpage
|
|
\listoflistings
|
|
\addcontentsline{toc}{section}{\protect\numberline{\thesection}List of Listings}
|
|
\stepcounter{section}
|
|
|
|
\newpage
|
|
\printglossary[title={Keywords}]
|
|
\addcontentsline{toc}{section}{\protect\numberline{\thesection}Keywords}
|
|
\stepcounter{section}
|
|
|
|
% Bibliographie
|
|
% see http://en.wikibooks.org/wiki/LaTeX/Bibliography_Management for help
|
|
% this helps to get bibtex entries http://literatur-generator.de/
|
|
\bibliographystyle{plain}
|
|
\bibliography{./bib/main}
|
|
\addcontentsline{toc}{section}{\protect\numberline{\thesection}Bibliography}
|
|
\stepcounter{section}
|
|
|
|
% Verzichtserklärung
|
|
\newpage
|
|
\input{./content/erkl.tex}
|
|
% }}}
|
|
\end{document}
|