- \subsection{Low power usage}
-% \begin{frame}{PDA}
-% \begin{center}
-% \includegraphics[scale=.44]{images/pda3}
-% \end{center}
-% \end{frame}
-% \begin{frame}{SoC}
-% %Picture of SoC
-% \end{frame}
-% \begin{frame}{Annabelle \ac{SoC}}
-% \begin{center}
-% \includegraphics[scale=0.52]{images/reconfigurable_fabric}
-% \end{center}
-% \end{frame}
-% \begin{frame}{CRISP \ac{SoC}}
-% \begin{center}
-% \includegraphics[scale=.76]{images/CRISP}%TODO fix blue too black
-% \end{center}
-% \end{frame}
-\section{Problem description}
- %Problem description
-\section{Architecture}
- \begin{frame}
- \begin{center}
- \tikzstyle{help lines}=[black!10,thin]
- \begin{tikzpicture}[>=stealth,scale=.7]
- \foreach \x in {1,6,11}
- \foreach \y in {5,0}{
- \draw (\x,\y) +(-1,-1) rectangle ++(1,1)[draw=black!50,fill=black!20,thick];
- \draw (\x,\y) node{Router};
- \draw (\x,\y) +(.4,1.2) rectangle ++(1.4,1.8)[draw=black!50,fill=black!20,thick];
- \draw (\x,\y) +(.9,1.5)node{Tile};
- \foreach \z in {0,.1,.2,.3} \draw (\x,\y) ++(\z,0) ++(0.5,1) -- ++(0,0.2);
- }
- \foreach \x in {1,6}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(1,\z) -- ++(4,\z);
- \foreach \x in {1,6,11}\foreach \y in {0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,1) -- ++(\z,4);
- \foreach \x in {11}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(1,\z) -- ++(1.5,\z);
- \foreach \x in {1,6,11}\foreach \y in {5}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,1) -- ++(\z,1.5);
- \foreach \x in {1}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(-1,\z) -- ++(-1.5,\z);
- \foreach \x in {1,6,11}\foreach \y in {0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,-1) -- ++(\z,-1.5);
- \draw (4,5) circle (0.4) +(0,-0.4) -- (3,3.5) +(0,-0.2) node{Link};
- \draw (2,0) circle (0.4) +(0,0.4) -- (4,1.5) +(0,0.2) node{Port};
- \draw (9,4.9) circle (0.1) +(0,-0.1) -- (8,3.5) +(0,-0.2) node{Lane};
- \end{tikzpicture}
- \end{center}
- \end{frame}
- \begin{frame}{Circuit switched}
- \begin{center}
- \tikzstyle{help lines}=[black!10,thin]
- \begin{tikzpicture}[>=stealth,scale=.6]
- \foreach \x in {1,6,11}
- \foreach \y in {5,0}{
- \draw (\x,\y) +(-1,-1) rectangle ++(1,1)[draw=black!50,fill=black!20,thick];
- \draw (\x,\y) node{Router};
- \draw (\x,\y) +(.4,1.2) rectangle ++(1.4,1.8)[draw=black!50,fill=black!20,thick];
- \draw (\x,\y) +(.9,1.5)node{Tile};
- \foreach \z in {0,.1,.2,.3} \draw (\x,\y) ++(\z,0) ++(0.5,1) -- ++(0,0.2);
- }
- \foreach \x in {1,6}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(1,\z) -- ++(4,\z);
- \foreach \x in {1,6,11}\foreach \y in {0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,1) -- ++(\z,4);
- \foreach \x in {11}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(1,\z) -- ++(1.5,\z);
- \foreach \x in {1,6,11}\foreach \y in {5}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,1) -- ++(\z,1.5);
- \foreach \x in {1}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(-1,\z) -- ++(-1.5,\z);
- \foreach \x in {1,6,11}\foreach \y in {0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,-1) -- ++(\z,-1.5);
- \draw [very thick,->] (-1,0.2) -- (11.2,0.2) -- (11.2,4.9) -- (13,4.9);
- \end{tikzpicture}
- \end{center}
- \end{frame}
- \begin{frame}{Packet switched}
- \begin{center}
- \tikzstyle{help lines}=[black!10,thin]
- \begin{tikzpicture}[>=stealth,scale=.6]
- \foreach \x in {1,6,11}
- \foreach \y in {5,0}{
- \draw (\x,\y) +(-1,-1) rectangle ++(1,1)[draw=black!50,fill=black!20,thick];
- \draw (\x,\y) node{Router};
- \draw (\x,\y) +(.4,1.2) rectangle ++(1.4,1.8)[draw=black!50,fill=black!20,thick];
- \draw (\x,\y) +(.9,1.5)node{Tile};
- \foreach \z in {0,.1,.2,.3} \draw (\x,\y) ++(\z,0) ++(0.5,1) -- ++(0,0.2);
- }
- \foreach \x in {1,6}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(1,\z) -- ++(4,\z);
- \foreach \x in {1,6,11}\foreach \y in {0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,1) -- ++(\z,4);
- \foreach \x in {11}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(1,\z) -- ++(1.5,\z);
- \foreach \x in {1,6,11}\foreach \y in {5}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,1) -- ++(\z,1.5);
- \foreach \x in {1}\foreach \y in {5,0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(-1,\z) -- ++(-1.5,\z);
- \foreach \x in {1,6,11}\foreach \y in {0}\foreach \z in {-0.1,0,0.1,0.2}\draw (\x,\y) +(\z,-1) -- ++(\z,-1.5);
- \draw [very thick,->] (-1,0.2) -- (.8,0.2);
- \draw [very thick,->] (1.2,0.2) -- (5.8,0.2);
- \draw [very thick,->] (6.2,0.2) -- (10.8,0.2);
- \draw [very thick,->] (11.2,0.5)-- (11.2,4.5);
- \draw [very thick,->] (11.5,4.9)-- (13,4.9);
- \end{tikzpicture}
- \end{center}
- \end{frame}
- \begin{frame}{Router components}
- \begin{center}
- \tikzstyle{help lines}=[black!10,thin]
- \begin{tikzpicture}[>=stealth,scale=.84]
- \draw (-2.8,-1) rectangle ++(7.5,5);
- \draw (1,3.75) node{Generic router};
- \draw (.1,.1) rectangle ++(1.8,3);
- \draw (1,2.75) node{Crossbar};
- \foreach \x in {.1,2.6,2.0,1.4}{
- \draw (2.1,\x) rectangle ++(2.5,.5);
- \draw (2.1,\x) +(1.25,.25) node{Output buffer};
- }
- \foreach \x in {.8,1,1.2}{
- \draw (2.1,\x) +(1.25,0) circle (0.05);
- }
- \foreach \x in {.1,2.6,2.0,1.4}{
- \draw (-.1,\x) rectangle ++(-2.5,.5);
- \draw (-.1,\x) +(-1.25,.25) node{Input buffer};
- }
- \foreach \x in {.8,1,1.2}{
- \draw (-.1,\x) +(-1.25,0) circle (0.05);
- }
- \draw (.9,.1) -- (.9,-.1);
- \draw (1.1,.1) -- (1.1,-.1);
- \draw (0,-.1) rectangle (2,-.9);
- \draw (1,-.5) node {Arbiter};
- \foreach \x in {0.2,0.3,...,2.2}{
- \draw (0.2,\x) -- (.1,\x);
- \draw (1.9,\x) -- (1.8,\x);
- }
- \draw (.1,2.1) -- (.5,2.1);
- \draw (.1,0.2) -- (.5,0.2);
-
- \draw (1.5,2.1) -- (1.9,2.1);
- \draw (1.5,0.2) -- (1.9,0.2);
-
- \draw (-4.2,1.5) node {N inputs};
- \draw (6.5,1.5) node {N outputs};
-
- \draw (0.5,2.1) -- (1.5,0.2);
- \draw (0.5,0.2) -- (1.5,2.1);
- \draw (1.9,0.2) -- (2.1,.35);
- \draw (1.9,2.1) -- (2.1,2.85);
- \draw (1.9,2.0) -- (2.1,2.25);
- \draw (1.9,1.9) -- (2.1,1.65);
-
- \draw (.1,0.2) -- (-.1,.35);
- \draw (.1,2.1) -- (-.1,2.85);
- \draw (.1,2.0) -- (-.1,2.25);
- \draw (.1,1.9) -- (-.1,1.65);
-
-
- \draw [->] (4.5,0.35) -- (4.9,.35);
- \draw [->] (4.5,2.85) -- (4.9,2.85);
- \draw [->] (4.5,2.25) -- (4.9,2.25);
- \draw [->] (4.5,1.65) -- (4.9,1.65);
-
- \draw [<-] (-2.5,0.35) -- (-3,.35);
- \draw [<-] (-2.5,2.85) -- (-3,2.85);
- \draw [<-] (-2.5,2.25) -- (-3,2.25);
- \draw [<-] (-2.5,1.65) -- (-3,1.65);
- \end{tikzpicture}
- \end{center}
- \end{frame}
- \begin{frame}{Flow control}
- \begin{center}
- \tikzstyle{help lines}=[black!10,thin]
- \begin{tikzpicture}[>=stealth,scale=.5]
- \draw[->] (.5,1) -- (9.5,1)node[above,midway]{Data valid};
- \draw[<-] (.5,2) -- (9.5,2)node[above,midway]{Acknowledge};
- \draw[->][very thick] (.5,3.5) -- (9.5,3.5) node[above,midway]{Data};
- \end{tikzpicture}
- \end{center}
- \end{frame}
-\section{Results}
- \subsection{Flow control}
- \begin{frame}{Flow control}
- \begin{itemize}
- \item Different types of flow control:
- \begin{itemize}
- \item Direct flow control
- \item Single register flow control
- \item Double register flow control
- \item Windowed transmission
- \end{itemize}
- \end{itemize}
- \end{frame}
- \subsection{Configuration network}
-% \begin{frame}{Configuration network}
-% \begin{center}
-% \includegraphics[trim = 10mm 200mm 100mm 20mm, clip, scale=.8]{images/d+c_router}
-% \end{center}
-% \end{frame}
- \begin{frame}{Configuration network}
- \begin{columns}
- \column{.8\textwidth}
- \begin{itemize}
- \item The configuration network \ac{CSDCnet}:
- \begin{itemize}
- \item Pros:
- \begin{itemize}
- \item Easy configuration
- \item Optimal config route
- \item Small area needed on chip ($0.002 mm^2$)
- \item High clock speed possible (1GHz)
- \end{itemize}
- \item Cons:
- \begin{itemize}
- \item Only configuration data.
- \item Central control needed.
- \item Long configuration times.
- \end{itemize}
- \end{itemize}
- \end{itemize}
- \column{.2\textwidth}
- \begin{center}
- \tikzstyle{place}=[circle,draw=blue!50,fill=blue!20,thick]
- \tikzstyle{transition}=[rectangle,draw=black!50,fill=black!20,thick]
- \begin{tikzpicture}[>=stealth,scale=.5,transform shape]
- \node[place] (1) {};
- \node[place] (2) [right of=1] {};
- \node[place] (3) [right of=2] {};
- \node[place] (4) [below of=1] {};
- \node[place] (5) [right of=4] {};
- \node[place] (6) [right of=5] {};
- \node[place] (7) [below of=4] {};
- \node[place] (8) [right of=7] {};
- \node[place] (9) [right of=8] {};
-
- \draw (1.east) -- (2.west);
- \draw (2.east) -- (3.west);
- \draw (4.east) -- (5.west);
- \draw (5.east) -- (6.west);
- \draw (7.east) -- (8.west);
- \draw (8.east) -- (9.west);
- \draw (1.south)-- (4.north);
- \draw (2.south)-- (5.north);
- \draw (3.south)-- (6.north);
- \draw (4.south)-- (7.north);
- \draw (5.south)-- (8.north);
- \draw (6.south)-- (9.north);
- \end{tikzpicture}
- \end{center}
- \end{columns}
- \end{frame}
- \begin{frame}{Configuring a NoC with CSDCnet}
- \begin{itemize}
- \item Configuration using relative addressing
- \item Configuration using commands
- \item Two states for CSDCrouters:
- \begin{itemize}
- \item \emph{passthrough mode}
- \item \emph{execute command mode}
- \end{itemize}
- \end{itemize}
- \end{frame}
- \begin{frame}[shrink=33]{Commands of CSDCnet}
- \vspace{2cm}
- \begin{table}
- \centering
- \begin{tabular}{lll} \toprule
- Command name & Command description & Parameters (Length in bits)\\
- \midrule
- CONFIG & Configure current data router & configuration data (11)\\
- DESTROY & Destroy complete configuration path & -\\
- EXTEND & Extend configuration path & direction to extend to (3)\\
- REMOVE & Remove the last router from path & -\\
- RESET\_ALL & Reset complete \acs{NoC} and all tiles & -\\
- RESET\_TILE & Reset current tile & -\\
- \bottomrule
- \end{tabular}
- \caption{Commands}
- \label{tab:commandsLimited}
- \end{table}
- \end{frame}
-
-
- \begin{frame}{Ring network}
- \begin{columns}
- \column{.8\textwidth}
- \begin{itemize}
- \item The ring network, from the University of Twente, can be used for configuration too:
- \begin{itemize}
- \item Pros:
- \begin{itemize}
- \item No setting up paths.
- \item Not only configuration data.
- \item Needs small area on chip ($0.003 mm^2$).
- \item High clock speed possible (1GHz).
- \item No central control of the network.
- \end{itemize}
- \item Cons:
- \begin{itemize}
- \item Routes not optimal.
- \end{itemize}
- \end{itemize}
- \end{itemize}
- \column{.2\textwidth}
- \begin{center}
- \tikzstyle{place}=[circle,draw=blue!50,fill=blue!20,thick]
- \tikzstyle{transition}=[rectangle,draw=black!50,fill=black!20,thick]
- \begin{tikzpicture}[>=stealth,scale=.4,transform shape]
- \node[place] (1) at (-1,-2) {};
- \node[place] (2) at ( 1,-2) {};
- \node[place] (3) at ( 2,-1) {};
- \node[place] (4) at ( 2, 1) {};
- \node[place] (5) at ( 1, 2) {};
- \node[place] (6) at (-1, 2) {};
- \node[place] (7) at (-2, 1) {};
- \node[place] (8) at (-2,-1) {};
- \foreach \from/\to in {1/2,2/3,3/4,4/5,5/6,6/7,7/8,8/1}
- \draw (\from) -- (\to);
- \end{tikzpicture}
- \end{center}
- \end{columns}
- \end{frame}
- \begin{frame}
- \only<1>{\begin{center}
- \begin{tikzpicture}[>=stealth,scale=0.5,transform shape]
- \foreach \x in {0,1,...,7}
- \foreach \y in {0,1,...,7}
- \draw (\y,\x) circle (0.3)[draw=blue!50,fill=blue!20,thick];
- \draw (0,-1) circle (0.3)[draw=blue!50,fill=blue!20,thick];
- \draw (0,-1) node {CU};
- \draw (0,7) node {A};
- \draw (7,0) node {B};
- %\draw[->,color=red,dashed,very thick] (0,0) -- (0,7);
- \draw[color=black!0] (0,-.5) -- (1,-.5);
- \foreach \x in {0,...,6}
- \foreach \y in {0,...,7}
- \draw (\y,\x)+(0,0.3) -- +(0,0.7);
- \foreach \x in {0,...,7}
- \foreach \y in {0,...,6}
- \draw (\y,\x)+(0.3,0) -- +(0.7,0);
-
- %\draw[very thick,->] (0,7) -- (7,7) -- (7,0);
-
- \end{tikzpicture}
- \begin{tikzpicture}[>=stealth,scale=0.5,transform shape]
- \foreach \x in {0,1,...,7}
- \foreach \y in {0,1,...,7}
- \draw (\y,\x) circle (0.3)[draw=blue!50,fill=blue!20,thick];
- \draw (0,-1) circle (0.3)[draw=blue!50,fill=blue!20,thick];
- \draw (0,-1) node {CU};
- \draw (0,7) node {A};
- \draw (7,0) node {B};
- %\draw[very thick,->] (0,7) -- (0,0) -- (7,0);
- %ring-net lines
- \foreach \x in {0,...,5}
- \foreach \y in {0,...,7}
- \draw (\y,\x)+(0,0.3) -- +(0,0.7);
- \draw (0,6)+(0,0.3) -- +(0,0.7);
- \draw (7,6)+(0,0.3) -- +(0,0.7);
- \foreach \x in {0,2,4,6} \draw (\x,0)+(0.3,0) -- +(0.7,0);
- \foreach \x in {1,3,5} \draw (\x,6)+(0.3,0) -- +(0.7,0);
- \foreach \x in {0,...,6} \draw (\x,7)+(0.3,0) -- +(0.7,0);
-
- \draw[color=black!0] (0,-.5) -- (1,-.5);
- \end{tikzpicture}
- \end{center}}
- \only<2>{\begin{center}
- \begin{tikzpicture}[>=stealth,scale=0.5,transform shape]
- \foreach \x in {0,1,...,7}
- \foreach \y in {0,1,...,7}
- \draw (\y,\x) circle (0.3)[draw=blue!50,fill=blue!20,thick];
- \draw (0,-1) circle (0.3)[draw=blue!50,fill=blue!20,thick];
- \draw (0,-1) node {CU};
- \draw (0,7) node {A};
- \draw (7,0) node {B};
- \draw[->,color=red,dashed,very thick] (0,0) -- (0,7);
- \draw[color=black!0] (0,-.5) -- (1,-.5);
- \foreach \x in {0,...,6}
- \foreach \y in {0,...,7}
- \draw (\y,\x)+(0,0.3) -- +(0,0.7);
- \foreach \x in {0,...,7}
- \foreach \y in {0,...,6}
- \draw (\y,\x)+(0.3,0) -- +(0.7,0);
-
- \draw[very thick,->] (0,7) -- (7,7) -- (7,0);
-
- \end{tikzpicture}
- \begin{tikzpicture}[>=stealth,scale=0.5,transform shape]
- \foreach \x in {0,1,...,7}
- \foreach \y in {0,1,...,7}
- \draw (\y,\x) circle (0.3)[draw=blue!50,fill=blue!20,thick];
- \draw (0,-1) circle (0.3)[draw=blue!50,fill=blue!20,thick];
- \draw (0,-1) node {CU};
- \draw (0,7) node {A};
- \draw (7,0) node {B};
- \draw[very thick,->] (0,7) -- (0,0) -- (7,0);
- %ring-net lines
- \foreach \x in {0,...,5}
- \foreach \y in {0,...,7}
- \draw (\y,\x)+(0,0.3) -- +(0,0.7);
- \draw (0,6)+(0,0.3) -- +(0,0.7);
- \draw (7,6)+(0,0.3) -- +(0,0.7);
- \foreach \x in {0,2,4,6} \draw (\x,0)+(0.3,0) -- +(0.7,0);
- \foreach \x in {1,3,5} \draw (\x,6)+(0.3,0) -- +(0.7,0);
- \foreach \x in {0,...,6} \draw (\x,7)+(0.3,0) -- +(0.7,0);
-
- \draw[color=black!0] (0,-.5) -- (1,-.5);
- \end{tikzpicture}
- \end{center}}
- \end{frame}
- \begin{frame}
- \begin{center}
- %\includegraphics[scale=.7]{results/conftimes2}
- \end{center}
- \end{frame}
- \small
- \begin{frame}{Synthesis results at 500MHz}
- \begin{table} [ht]
- \centering
- \begin{tabular}{lll}
- \toprule
- Component & Slack (ns) & Area ($mm^2$)\\
- \midrule
- Packet switched (Kavaldjiev) & 0.00 & 0.2133\\
- Small packet switched (Kavaldjiev) & 0.00 & 0.0769\\
- Circuit switched (Annabelle) & 0.42 & 0.0254\\
- Circuit switched SingleReg (thesis) & 0.35 & 0.0393\\
- Circuit switched DoubleReg (thesis) & 0.03 & 0.0681\\
- \midrule
- Ring configuration & 0.96 & 0.0030\\
- \acs{CSDCrouter} & 0.85 & 0.0021\\
- %\acs{CSDCrouter} with TTL & 0.26 & 0.0090\\
-
-
- \bottomrule
- \end{tabular}
- \caption{Results of 90nm ASIC technology from TSMC at 500MHz}
- \end{table}
- \end{frame}
- \begin{frame}{Synthesis results at 1000MHz}
- \begin{table} [ht]
- \centering
- \begin{tabular}{lll}
- \toprule
- Component & Slack (ns) & Area ($mm^2$)\\
- \midrule
- Packet switched (Kavaldjiev) & -0.66 & 0.2174 \\
- Small packet switched (Kavaldjiev) & -0.67 & 0.0812\\
- Circuit switched (Annabelle) & 0.00 & 0.0265\\
- Circuit switched SingleReg (thesis) & 0.00 & 0.0423\\
- Circuit switched DoubleReg (thesis) & 0.00 & 0.0837\\
- \midrule
- Ring configuration & 0.02 & 0.0030\\
- \acs{CSDCrouter} & 0.01 & 0.0022\\
- %\acs{CSDCrouter} with TTL & -0.17 & 0.0098\\
- \bottomrule
- \end{tabular}
- \caption{Results of 90nm ASIC technology from TSMC at 1000MHz}
- \label{tabASIC1000}
- \end{table}
- \end{frame}
- \normalsize
-
-\section{Conclusion}
- \begin{frame}{Flow control}
- \begin{itemize}
- \item DirectAck is not scalable, but good for very small \acp{NoC}.\onslide<2->
- \item Single register is slower, but usable for any size of \ac{NoC}.\onslide<3->
- \item Double register requires twice as much area, but is fast and usable for any size of \ac{NoC}.\onslide<4->
- \item Windowed transmission requires very much buffer area in the tiles, and is therefore not recommended.\onslide<5->
- \end{itemize}
- Scalable flow control always requires two buffers or two clock cycles.
- \end{frame}
- \begin{frame}{Choosing a NoC}
- \begin{itemize}
- \item Best Effort (BE) traffic:
- \begin{itemize}
- \item Much BE traffic: use Packet Switched.\onslide<2->
- \item Some control BE traffic: use SAnet with ring network.\onslide<3->
- \item No BE traffic: use SAnet with CSDCnet.\onslide<4->
- \item Some BE traffic can also be routed efficiently using circuits in the circuit switched network, bursts for example.\onslide<5->
- \item CSDCnet does not support connections initiated from the tiles.\onslide<6->
- \end{itemize}
- \item Guaranteed Service (GS) traffic:
- \begin{itemize}
- \item High bandwidth streams: use circuit switched;
- \begin{itemize}
- \item Circuit switched has 4 outputs per port.
- \item Circuit switched can be clocked at 1GHz.\onslide<7->
- \end{itemize}
- \item Low bandwidth streams: use packet switched;
- \begin{itemize}
- \item Streams can be multiplexed.
- \end{itemize}
-
- \end{itemize}
- \end{itemize}
- \end{frame}
- %tiny
- \begin{frame}[shrink=33]{CSDCnet vs Ring}
- \vspace{2cm}
- \begin{table}
- \centering
- \begin{tabular}{ll}\toprule
- \acs{CSDCnet} & Ring network\\
- \midrule
- Circuit switched & Packet switched\\%\onslide<2-> \\
- Full \acs{NoC} configuration in 1.3ms (for N=8) & Full \acs{NoC} configuration in 0.8ms (for N=8)\\%\onslide<3-> \\
- No BE traffic support & Tiles can send BE data over the ring\\%\onslide<4-> \\
- Topology the same as data \acs{NoC} & Topology differs from data \acs{NoC}\\%\onslide<5-> \\
- Worst case config time increases linearly & Worst case config time increases quadratically\\%\onslide<6-> \\
- Central coordination for avoiding deadlocks & No deadlocks possible\\%\onslide<7-> \\
- Area on chip is $2166 \mu m^2$ (one router) & Area on chip is $3026 \mu m^2$ (one router)\\%\onslide<1->\\
- \bottomrule
- \end{tabular}
- \caption{Configuration networks: Serial VS Ring}
- \label{tab:SerialVSRing}
- \end{table}
- \end{frame}
- %\normalsize
- \begin{frame}{Future research}
- \begin{itemize}
- \item Recommendations for future research:
- \begin{itemize}
- \item Configuration using data lanes
- \item Optimisations for \ac{CSDCnet}
- \item Optimisations for ring network
- \item Packet switched mesh configuration network
- \end{itemize}
- \end{itemize}
- \end{frame}
-% \begin{frame}
-% \begin{center}
-% \includegraphics[scale=.16]{images/qmark2}
-% \end{center}
-% \end{frame}
-\appendix
-
-%\begin{frame}{Synthesis settings}
-% To compare size and maximum clock frequency of various \acp{NoC}, we synthesised them using the 90nm TSMC library with the following settings:
-% \begin{itemize}
-% \item Operating Condition Name: WCCOM.
-% \item Library: tcbn90gthpwc.
-% \item Process: 1.00.
-% \item Temperature: 125.00.
-% \item Voltage: 1.08.
-% \item Interconnect Model: balanced\_tree.
-% \end{itemize}
-%\end{frame}
-%\tiny
-%\begin{frame}{Commands}
-% \begin{table} [ht]
-% \centering
-% \begin{tabular}{lll} \toprule
-% Command name & Command description & Parameters (Length in bits)\\
-% \midrule
-% CONFIG & Configure current data router & configuration data (11)\\
-% CONFIG\_TTL & Configure current data router & configuration data and TTL (13)\\
-% DESTROY & Destroy complete configuration path & -\\
-% EXTEND & Extend configuration path & direction to extend to (3)\\
-% REMOVE & Remove the last router from path & -\\
-% RESET\_ALL & Reset complete \acs{NoC} and all tiles & -\\
-% RESET\_TILE & Reset current tile & -\\
-% SET\_TTL & Set TTL value & TTL, destination and timeout (14)\\
-% STATUS & Returns the TTL status & no data while status is returned (20)\\
-% \bottomrule
-% \end{tabular}
-% \caption{Commands}
-% \label{tab:commands}
-% \end{table}
-%\end{frame}
-%\normalsize