diff --git a/img/cloud.tikz b/img/cloud.tikz new file mode 100644 index 0000000..f667b5a --- /dev/null +++ b/img/cloud.tikz @@ -0,0 +1,39 @@ +\begin{tikzpicture} + \begin{pgfonlayer}{nodelayer} + \node [style=none] (0) at (0.5, 0) {}; + \node [style=none] (1) at (-2.25, 4) {}; + \node [style=none] (2) at (-1.75, 8.5) {}; + \node [style=none] (3) at (3, 11.75) {}; + \node [style=none] (4) at (9.25, 12.25) {}; + \node [style=none] (5) at (15.75, 11) {}; + \node [style=none] (6) at (17.75, 2.25) {}; + \node [style=none] (7) at (13.75, -0.5) {}; + \node [style=none] (8) at (6.75, -0.75) {}; + \node [style=wrap text] (10) at (6.25, 11.25) {Scheduling\\Policy}; + \node [style=wrap text] (11) at (11.25, 8) {Number\\of\\Devices}; + \node [style=wrap text] (13) at (0, 5.75) {Refresh\\Policy}; + \node [style=wrap text] (14) at (7, 1.5) {Number\\of\\Channels}; + \node [style=wrap text] (16) at (16.25, 8.5) {Powerdown\\Policy}; + \node [style=wrap text] (17) at (9, 4.75) {DRAM\\Speed}; + \node [style=wrap text] (18) at (4.25, 5.25) {Page\\Policy}; + \node [style=wrap text] (19) at (1.5, 2) {Command\\Multiplexer\\Policy}; + \node [style=wrap text] (20) at (12.5, 1.75) {Response\\Queue\\Policy}; + \node [style=wrap text] (21) at (5.75, 8.25) {Address\\Mapping}; + \node [style=wrap text] (22) at (1, 9.5) {DRAM\\Standard}; + \node [style=wrap text] (23) at (12.25, 11) {DRAM\\Capacity}; + \node [style=wrap text] (24) at (16.25, 4.75) {Timing\\Parameters}; + \node [style=none] (25) at (18.75, 6.75) {}; + \end{pgfonlayer} + \begin{pgfonlayer}{edgelayer} + \draw [style=very thick line, bend right=285, looseness=1.25] (0.center) to (1.center); + \draw [style=very thick line, bend left=75] (1.center) to (2.center); + \draw [style=very thick line, bend left=60, looseness=1.25] (2.center) to (3.center); + \draw [style=very thick line, bend left=60] (3.center) to (4.center); + \draw [style=very thick line, bend left=60] (4.center) to (5.center); + \draw [style=very thick line, bend left=60, looseness=1.25] (6.center) to (7.center); + \draw [style=very thick line, bend left=60] (7.center) to (8.center); + \draw [style=very thick line, bend right=300] (8.center) to (0.center); + \draw [style=very thick line, bend right=60, looseness=1.25] (6.center) to (25.center); + \draw [style=very thick line, bend right=60, looseness=1.25] (25.center) to (5.center); + \end{pgfonlayer} +\end{tikzpicture} diff --git a/inc/1.introduction.tex b/inc/1.introduction.tex index 29ac82b..68e7c48 100644 --- a/inc/1.introduction.tex +++ b/inc/1.introduction.tex @@ -6,6 +6,15 @@ With the increasing performance requirements on these devices, not only faster p While these storage systems are very complex and offer a lot of room for configuration, as the used DRAM standard, the memory controller configuration or the address mapping, there are different requirements for the very different applications\cite{Gomony2012}. Consequently, system designers are commissioned with the complex task of finding the most effective configurations that match the performance and power contraints with good optimizations applied for the specific use case. +\input{img/thesis.tikzstyles} +\begin{figure}[!ht] +\begin{center} +\tikzfig{img/cloud} +\caption{Exemplary DRAM configuration parameters to consider when designing a system.} +\label{fig:cloud} +\end{center} +\end{figure} + For the exploration of the design space for these configurations it is impractical to use real systems as they expensive and are not suitable for rapid prototyping. To overcome this limitation, it is important to simulate the memory system using a simulation framework with sufficient accuracy.