isa_cmp: added cmp table and changed bit of style
[calu.git] / 1_isacmp / cmp.tex
1 \section{Vergleich}
2 %``Hier vergleichen wir die verschiedene ISA's'' copyright <anonymus>\footnote{Markus Hofst\"atter}
3 Bis auf die MCS-51 Architektur sind alle Architekturen RISC und Registermaschinen, MCS-51 ist CISC und Akkumulator.
4 Die L\"ange der Instruktionen ist bei ARM\footnote{Mit Ausnahme des Thumb-Modes, bei diesem sind es 16-Bit pro Instruktion} und PowerPC auf 32-Bit L\"ange fixiert, SPEAR2 auf 16-Bit, bei AVR und MCS-51 koennen die Instruktionen unterschiedliche L\"angen aufwei\ss en.
5 Bei AVR und SPEAR2 sind die meisten Instruktionen darauf ausgelegt in einem Zyklus abgearbeitet zu werden. Bei SPEAR2 ist es aber nicht garantiert das auch die Instruktionen ohne Verz\"ogerung ausgef\"uhrt werden (zum Beispiel dauert eine Instruktion nach einem Jump zwei Zyklen).
6 Bei Conditional Operations reicht die Auswahl von sehr beschr\"ankt (MCS-51) bis zu fast alle Instruktionen (ARM).
7 Als Anwendungsgebiete kann man f\"ur alle Architekturen auf jedenfall Embedded Systems angeben. ARM und PowerPC sind auch im Desktop- und Serverbereich anzutreffen.
8 Die Instruktionsetgr\"o\ss e ist bei AVR und MCS-51, durch die 8-Bit bedingt, eher klein. SPEAR2 ist auch eher klein weil die urspr\"ungliche Architektur ebenfalls nur 8-Bit war. ARM und PowerPC haben, auch durch die 32-Bit L\"ange bedingt, ein gro\ss es Instruktionset.
9 Das Sichern der R\"ucksprungadresse wird unterschiedlich gehandelt, AVR und MCS-51 sichern die Adresse automatisch auf den Stack. PowerPC, SPEAR2 und ARM sichern die R\"ucksprungadresse in ein Register.
10 Codesize und Ausf\"uhrungszeit des Codest\"ucks \texttt{sum} sind in Tabelle \ref{cmp_tab} ersichtlich. Es ist ersichtlich das die Prozessoren mit h\"oherer Instruktionsl\"ange besser abschneiden wenn es um Codesize und Anzahl der Zyklen geht, was aber auch nicht verwundert. \\
11
12         
13 \begin{table}[h]
14 \begin{center}
15         \begin{tabular}{|l|c|c|c|c|c|}\hline
16                 Anzahl        & AVR   & ARM & PowerPC & MCS-51 & SPEAR2 \\ \hline
17                 Instruktionen & 9     & 6   & 3       & 21     & 6      \\ \hline
18                 Zyklen        & 13/14 & 8   & 3       & 30     & 7      \\ \hline
19                 Bytes         & 18    &     & 12      & 32     & 12     \\ \hline
20         \end{tabular}
21         \caption{Vergleich der ISAs anhand der erfassten Kennwerte}
22         \label{cmp_tab}
23 \end{center}
24 \end{table}
25
26
27
28 \huge{ARM CODESIZE FEHLT!!!}