Update on Overleaf.

This commit is contained in:
2024-04-26 08:40:44 +00:00
committed by node
commit b0c1af96ea
23 changed files with 163444 additions and 0 deletions

BIN
bathtube.pdf Normal file

Binary file not shown.

View File

@@ -0,0 +1,71 @@
\begin{figure}
\centering
\subcaptionbox{Basic Event}{%
\begin{tikzpicture}
\draw[white](-1.5,0) -- ++(3.0,0);
\draw(0,1) circle(0.5) node(){BE};
\draw(0.5,1.75) node(){$\lambda_\mathrm{BE}$};
\draw[-Triangle](0,1.5) -- ++(0,0.5);
\end{tikzpicture}%
}\quad\quad\quad
\subcaptionbox{Sum}{%
\begin{tikzpicture}
\draw[white](-1.5,0) -- ++(3.0,0);
\draw(0,1) circle(0.5) node(){+};
\draw(0.5,1.75) node(){$\lambda_\mathrm{Sum}$};
\draw[-Triangle](0,1.5) -- ++(0,0.5);
\draw[-Triangle](-0.95,0) -- ++(0,0.26) -- ++( 0.5,0.5);
\draw[-Triangle](+0.95,0) -- ++(0,0.26) -- ++(-0.5,0.5);
\draw(0,0.125) node(){...};
\draw(-0.7,0.15) node(){$\lambda_0$};
\draw( 0.7,0.15) node(){$\lambda_n$};
\end{tikzpicture}%
}
\subcaptionbox{Coverage}{%
\begin{tikzpicture}
\draw (0,0) rectangle ++(3,2);
\draw (1.5,0.5) node(){\textbf{Coverage}};
\draw (0,1) -- ++(3,0);
\draw (1.5,1.5) node(){$c$};
\draw (1.375,-0.25) rectangle ++(0.25,0.25);
\draw (1.5,-0.5) node(){$\lambda_\mathrm{in}$};
\draw[fill=black] (0.75,2.0) rectangle ++(0.25,0.25);
\draw (0.875,2.5) node(){$\lambda_\mathrm{RF}$};
\draw[fill=black] (2.0,2.0) rectangle ++(0.25,0.25);
\draw (2.125,2.5) node(){$\lambda_\mathrm{MPF,L}$};
\end{tikzpicture}%
}\quad\quad\quad
\subcaptionbox{Split}{%
\begin{tikzpicture}
\draw (0,0) rectangle ++(3,2);
\draw (1.5,0.5) node(){\textbf{Split}};
\draw (0,1) -- ++(3,0);
\draw (0.5,1.5) node(){$p_0$};
\draw (1,1) -- ++(0,1);
\draw (1.5,1.5) node(){...};
\draw (2,1) -- ++(0,1);
\draw (2.5,1.5) node(){$p_n$};
\draw (1.375,-0.25) rectangle ++(0.25,0.25);
\draw[fill=black] (0.375,2.0) rectangle ++(0.25,0.25);
\draw[fill=black] (1.375,2.0) rectangle ++(0.25,0.25);
\draw[fill=black] (2.375,2.0) rectangle ++(0.25,0.25);
\draw (1.5,-0.5) node(){$\lambda_\mathrm{in}$};
\draw (0.5,2.5) node(){$\lambda_{0}$};
\draw (2.5,2.5) node(){$\lambda_{n}$};
\end{tikzpicture}%
}\quad\quad\quad
\subcaptionbox{ASIL}{%
\begin{tikzpicture}
\draw (0,0) rectangle ++(2,2);
\draw (1.0,1.5) node(){\textbf{ASIL}};
\draw (0.5,-0.5) node(){\scriptsize $\lambda^\mathrm{RF}_\mathrm{SPF}$};
\draw (1.5,-0.5) node(){\scriptsize $\lambda_\mathrm{MPF,L}$};
\draw (0.375,-0.25) rectangle ++(0.25,0.25);
\draw (1.375,-0.25) rectangle ++(0.25,0.25);
\end{tikzpicture}%
}
\caption{Calculation Blocks for the Safety Methodology}
\label{fig:blocks}
\end{figure}

5357
bst/sn-apacite.bst Normal file

File diff suppressed because it is too large Load Diff

1530
bst/sn-aps.bst Normal file

File diff suppressed because it is too large Load Diff

1798
bst/sn-basic.bst Normal file

File diff suppressed because it is too large Load Diff

1808
bst/sn-chicago.bst Normal file

File diff suppressed because it is too large Load Diff

3161
bst/sn-mathphys.bst Normal file

File diff suppressed because it is too large Load Diff

1709
bst/sn-standardnature.bst Normal file

File diff suppressed because it is too large Load Diff

1990
bst/sn-vancouver.bst Normal file

File diff suppressed because it is too large Load Diff

84
ecc_results.tex Normal file
View File

@@ -0,0 +1,84 @@
\begin{figure}[p]
\centering
\begin{tikzpicture}
\begin{axis}[
width=0.85*\textwidth,
x tick label style={/pgf/number format/1000 sep=},
xlabel={Latency [ns]},
ylabel=Occurences,
xmin=0, xmax=450,
ymin=1, ymax=20000,
%enlargelimits=0.05,
ymode=log,
]
\addplot[hist={bins=150}]
table[col sep=comma, header=true, y index=0]{seq_without_ECC.csv};
\end{axis}
\end{tikzpicture}
\caption{Sequential without ECC}
\label{fig:linear-wo-ecc}
\end{figure}
\begin{figure}[p]
\centering
\begin{tikzpicture}
\begin{axis}[
width=0.85*\textwidth,
x tick label style={/pgf/number format/1000 sep=},
xlabel={Latency [ns]},
ylabel=Occurences,
xmin=0, xmax=450,
ymin=1, ymax=20000,
%enlargelimits=0.05,
ymode=log,
]
\addplot[hist={bins=150}]
table[col sep=comma, header=true, y index=0]{seq_with_ECC.csv};
\end{axis}
\end{tikzpicture}
\caption{Sequential with ECC}
\label{fig:linear-w-ecc}
\end{figure}
\begin{figure}[p]
\centering
\begin{tikzpicture}
\begin{axis}[
width=0.85*\textwidth,
x tick label style={/pgf/number format/1000 sep=},
xlabel={Latency [ns]},
ylabel=Occurences,
xmin=0, xmax=1200,
ymin=1, ymax=20000,
%enlargelimits=0.05,
ymode=log,
]
\addplot[hist={bins=150}]
table[col sep=comma, header=true, y index=0]{random_without_ECC.csv};
%\legend{Random without ECC}
\end{axis}
\end{tikzpicture}
\caption{Random without ECC}
\label{fig:rand-wo-ecc}
\end{figure}
\begin{figure}[p]
\centering
\begin{tikzpicture}
\begin{axis}[
width=0.85*\textwidth,
x tick label style={/pgf/number format/1000 sep=},
xlabel={Latency [ns]},
ylabel=Occurences,
xmin=0, xmax=1200,
ymin=1, ymax=20000,
%enlargelimits=0.05,
ymode=log,
]
\addplot[hist={bins=150}]
table[col sep=comma, header=true, y index=0]{random_with_ECC.csv};
\end{axis}
\end{tikzpicture}
\caption{Random with ECC}
\label{fig:rand-w-ecc}
\end{figure}

1096
main.tex Normal file

File diff suppressed because it is too large Load Diff

759
model-inline-ecc.tex Normal file
View File

@@ -0,0 +1,759 @@
\resizebox{0.94\textwidth}{!}{% <------ Don't forget this %
\begin{tikzpicture}%[framed]
%\tikzstyle{help lines}=[blue!50];
%\draw[style=help lines] (0,0) grid (24,36);
\draw[gray, dashed] (0,13) -- ++(23,0);
\draw[gray, dashed] (0,18.5) -- ++(23,0);
\draw[gray, dashed] (0,32.5) -- ++(23,0);
% DRAM Array:
\draw[fill=white]( 5, 0.0) rectangle ++(10,2.0);
\draw( 7, 1.0) circle(0.5) node(){SBE};
\draw( 9, 1.0) circle(0.5) node(){DBE};
\draw(11, 1.0) circle(0.5) node(){MBE};
\draw(13, 1.0) circle(0.5) node(){WD};
\draw[-Triangle]( 7, 1.5) -- ++(0,1.25);
\draw[-Triangle]( 9, 1.5) -- ++(0,1.25);
\draw[-Triangle](11, 1.5) -- ++(0,1.25);
\draw[-Triangle](13, 1.5) -- ++(0,1.25);
\draw[fill=black]( 7-0.125, 2.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 9-0.125, 2.0) rectangle ++(0.25,0.25);
\draw[fill=black](11-0.125, 2.0) rectangle ++(0.25,0.25);
\draw[fill=black](13-0.125, 2.0) rectangle ++(0.25,0.25);
% DRAM SEC:
\draw[fill=white](5, 3.0) rectangle ++(10,4.0);
\draw( 7-0.125, 3.0-0.25) rectangle ++(0.25,0.25);
\draw( 9-0.125, 3.0-0.25) rectangle ++(0.25,0.25);
\draw(11-0.125, 3.0-0.25) rectangle ++(0.25,0.25);
\draw(13-0.125, 3.0-0.25) rectangle ++(0.25,0.25);
\draw[-Triangle, black!30!red]( 6, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!red]( 7, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!red]( 8, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!blue]( 9, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!blue](10, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!red](11, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!red](12, 7.0) -- ++(0,0.75);
\draw[fill=black]( 6-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 7-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 8-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 9-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black](10-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black](11-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black](12-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black](14-0.125, 7.0) rectangle ++(0.25,0.25);
% Coverage:
\draw(5.5, 4.250) rectangle ++(2,1.5);
\draw(5.5, 5.000) -- ++(2,0);
\draw(6.5, 5.375) node(){100\%};
\draw(6.5, 4.625) node(){\textbf{coverage}};
\draw(6.5-0.125, 4.0) rectangle ++(0.25,0.25);
\draw[fill=black](6.0-0.125, 5.75) rectangle ++(0.25,0.25);
\draw[fill=black](7.0-0.125, 5.75) rectangle ++(0.25,0.25);
% Split:
\draw(8.0, 4.250) rectangle ++(2,1.5);
\draw(8.0, 5.000) -- ++(2,0);
\draw(9.0, 5.000) -- ++(0,0.75);
\draw(8.5, 5.375) node(){83\%};
\draw(9.5, 5.375) node(){17\%};
\draw(9.0, 4.625) node(){\textbf{split}};
\draw(9.0-0.125, 4.0) rectangle ++(0.25,0.25);
\draw[fill=black](8.5-0.125, 5.75) rectangle ++(0.25,0.25);
\draw[fill=black](9.5-0.125, 5.75) rectangle ++(0.25,0.25);
%BE SEC Broken
\draw(14, 5.0) circle(0.5) node(){SB};
%Connections:
\draw[-Triangle,black!30!red](7,3) |- ++(-0.5,0.5) -- ++(0,0.5);
\draw[-Triangle,black!30!red](9,3) -- ++(0,1.0);
\draw[-Triangle,black!30!red](6,6) -- ++(0,1.0);
\draw[-Triangle,black!30!blue](7,6) |- ++(2,0.25) -- ++(0,0.75);
\draw[-Triangle,black!30!red](8.5,6) |- ++(-1.5,0.5) -- ++(0,0.5);
\draw[-Triangle,black!30!red](9.5,6) |- ++(-1.5,0.65) -- ++(0,0.35);
\draw[black!30!blue,fill=black!30!blue](9,3.5) circle(0.05);
\draw[-Triangle,black!30!blue](9,3.5) -| ++(1.25,3) -| ++(-0.25,0.5);
\draw[-Triangle,black!30!red](11,3) -- ++(0,4);
\draw[-Triangle,black!30!red](13,3) |- ++(-1,1) -- ++(0,3);
\draw[-Triangle,black!30!blue](14,5.5) -- ++(0,1.5);
% SEC TRIM:
\draw[fill=white](3, 8.0) rectangle ++(14,4.5);
\draw( 6-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw( 7-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw( 8-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw( 9-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw(10-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw(11-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw(12-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
% Split 1:
\draw(4.0, 9.000) rectangle ++(1,1.5);
\draw(4.0, 9.750) -- ++(1,0);
\draw(4.5, 10.175) node(){94\%};
\draw(4.5, 9.375) node(){\textbf{split}};
\draw[fill=black](4.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(4.5-0.125, 8.75) rectangle ++(0.25,0.25);
% Split 2:
\draw(5.5, 9.00) rectangle ++(2,1.5);
\draw(5.5, 9.75) -- ++(2,0);
\draw(6.5, 9.75) -- ++(0,0.75);
\draw(6.0, 10.175) node(){11\%};
\draw(7.0, 10.175) node(){89\%};
\draw(6.5, 9.375) node(){\textbf{split}};
\draw[fill=black](6-0.125, 10.5) rectangle ++(0.25,0.25);
\draw[fill=black](7-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(6.5-0.125, 8.75) rectangle ++(0.25,0.25);
% Split 3:
\draw( 8.0, 9.00) rectangle ++(3,1.5);
\draw( 8.0, 9.75) -- ++(3,0);
\draw( 9.0, 9.75) -- ++(0,0.75);
\draw(10.0, 9.75) -- ++(0,0.75);
\draw( 8.5, 10.175) node(){0.9\%};
\draw( 9.5, 10.175) node(){15\%};
\draw(10.5, 10.175) node(){83\%};
\draw( 9.5, 9.375) node(){\textbf{split}};
\draw[fill=black]( 8.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 9.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw[fill=black](10.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(9.5-0.125, 8.75) rectangle ++(0.25,0.25);
% Split 4:
\draw(11.5, 9.00) rectangle ++(1,1.5);
\draw(11.5, 9.75) -- ++(1,0);
\draw(12.0, 10.175) node(){94\%};
\draw(12.0, 9.375) node(){\textbf{split}};
\draw[fill=black](12.0-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(12.0-0.125, 8.75) rectangle ++(0.25,0.25);
% Split 5:
\draw(13.0, 9.00) rectangle ++(2,1.5);
\draw(13.0, 9.75) -- ++(2,0);
\draw(14.0, 9.75) -- ++(0,0.75);
\draw(13.5, 10.175) node(){11\%};
\draw(14.5, 10.175) node(){89\%};
\draw(14.0, 9.375) node(){\textbf{split}};
\draw[fill=black](13.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw[fill=black](14.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(14.0-0.125, 8.75) rectangle ++(0.25,0.25);
% Adds
\draw( 6.0,11.375) circle(0.25) node(){+};
\draw( 8.5,11.875) circle(0.25) node(){+};
\draw(12.0,11.375) circle(0.25) node(){+};
%Connections:
\draw[-Triangle,black!30!red] ( 6,8) |- ++(-1.5,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 7,8) |- ++(-0.5,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 8,8) |- ++( 1.5,0.50) -- ++(0,0.25);
\draw[-Triangle,black!30!blue] ( 9,8) |- ++( 3.0,0.40) -- (12,8.75);
\draw[-Triangle,black!30!blue] ( 10,8) |- ++( 4.0,0.30) -- (14,8.75);
\draw[-Triangle,black!30!red] ( 11,8) |- ++( 4.5,0.20) -- (15.5,12.5);
\draw[-Triangle,black!30!red] ( 12,8) |- ++( 4.5,0.10) -- (16.5,12.5);
\draw[-Triangle,black!30!red] ( 4.5,10.75) |- ++( 1.25,0.625);
\draw[-Triangle,black!30!red] ( 6.0,10.75) -- ++(0,0.375);
\draw[-Triangle,black!30!red] ( 8.5,10.75) |- ++(-2.25,0.625);
\draw[-Triangle,black!30!red] ( 7.0,10.75) |- ++( 1.25,1.125);
\draw[-Triangle,black!30!red] ( 9.5,10.75) |- ++(-0.75,1.125);
\draw[-Triangle,black!30!red] (10.5,10.75) -- ++(0,1.75);
\draw[-Triangle,black!30!red] (6.0,11.625) -- ++(0,0.875);
\draw[-Triangle,black!30!red] (8.5,12.125) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (12.0,10.75) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (13.5,10.75) |- ++(-1.25,0.625);
\draw[-Triangle,black!30!blue] (12.0,11.625) -- ++(0,0.875);
\draw[-Triangle,black!30!blue] (14.5,10.75) -- ++(0,1.75);
% Output ports
\draw[fill=black]( 6.0-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 8.5-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](10.5-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](12.0-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](14.5-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](15.5-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](16.5-0.125, 12.5) rectangle ++(0.25,0.25);
% BUS and TRIM:
\draw[fill=white](1,13.5) rectangle ++(24.0, 8.0);
\draw( 6.0-0.125, 13.25) rectangle ++(0.25,0.25);
\draw( 8.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(10.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(12.0-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(14.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(15.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(16.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw[-Triangle,black!30!red] ( 6.0,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 8.5,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (10.5,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (12.0,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (14.5,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (15.5,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (16.5,12.75) -- ++(0,0.50);
% Split 1:
\draw(2.0, 14.500) rectangle ++(1,1.5);
\draw(2.0, 15.250) -- ++(1,0);
\draw(2.5, 15.675) node(){43.8\%};
\draw(2.5, 14.875) node(){\textbf{split}};
\draw[fill=black](2.5-0.125, 16.0) rectangle ++(0.25,0.25);
\draw(2.5-0.125, 14.25) rectangle ++(0.25,0.25);
% Split 2:
\draw(3.5, 14.50) rectangle ++(2,1.5);
\draw(3.5, 15.25) -- ++(2,0);
\draw(4.5, 15.25) -- ++(0,0.75);
\draw(4.0, 15.675) node(){49.6\%};
\draw(5.0, 15.675) node(){31.4\%};
\draw(4.5, 14.875) node(){\textbf{split}};
\draw[fill=black](4-0.125, 16.0) rectangle ++(0.25,0.25);
\draw[fill=black](5-0.125, 16.0) rectangle ++(0.25,0.25);
\draw(4.5-0.125, 14.25) rectangle ++(0.25,0.25);
% Split 3:
\draw( 6.0, 14.50) rectangle ++(3,1.5);
\draw( 6.0, 15.25) -- ++(3,0);
\draw( 7.0, 15.25) -- ++(0,0.75);
\draw( 8.0, 15.25) -- ++(0,0.75);
\draw( 6.5, 15.675) node(){32.5\%};
\draw( 7.5, 15.675) node(){41.9\%};
\draw( 8.5, 15.675) node(){17.5\%};
\draw( 7.5, 14.875) node(){\textbf{split}};
\draw[fill=black]( 6.5-0.125, 16) rectangle ++(0.25,0.25);
\draw[fill=black]( 7.5-0.125, 16) rectangle ++(0.25,0.25);
\draw[fill=black]( 8.5-0.125, 16) rectangle ++(0.25,0.25);
\draw(7.5-0.125, 14.25) rectangle ++(0.25,0.25);
% Split 4:
\draw(9.5, 14.50) rectangle ++(1,1.5);
\draw(9.5, 15.25) -- ++(1,0);
\draw(10.0, 15.675) node(){43.8\%};
\draw(10.0, 14.875) node(){\textbf{split}};
\draw[fill=black](10.0-0.125, 16.0) rectangle ++(0.25,0.25);
\draw(10.0-0.125, 14.25) rectangle ++(0.25,0.25);
% Split 5:
\draw(11.0, 14.50) rectangle ++(2,1.5);
\draw(11.0, 15.25) -- ++(2,0);
\draw(12.0, 15.25) -- ++(0,0.75);
\draw(11.5, 15.675) node(){49.6\%};
\draw(12.5, 15.675) node(){31.4\%};
\draw(12.0, 14.875) node(){\textbf{split}};
\draw[fill=black](11.5-0.125, 16) rectangle ++(0.25,0.25);
\draw[fill=black](12.5-0.125, 16) rectangle ++(0.25,0.25);
\draw(12.0-0.125, 14.25) rectangle ++(0.25,0.25);
% Coverage 1:
\draw(14, 16.50) rectangle ++(2,1.5);
\draw(14, 17.250) -- ++(2,0);
\draw(15, 17.625) node(){100\%};
\draw(15, 16.875) node(){\textbf{coverage}};
\draw(15-0.125, 16.25) rectangle ++(0.25,0.25);
\draw[fill=black](14.5-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black](15.5-0.125, 18.0) rectangle ++(0.25,0.25);
% Coverage 2:
\draw(17, 16.50) rectangle ++(2,1.5);
\draw(17, 17.250) -- ++(2,0);
\draw(18, 17.625) node(){100\%};
\draw(18, 16.875) node(){\textbf{coverage}};
\draw(18-0.125, 16.25) rectangle ++(0.25,0.25);
\draw[fill=black](17.5-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black](18.5-0.125, 18.0) rectangle ++(0.25,0.25);
% Coverage 3:
\draw(20, 16.50) rectangle ++(2,1.5);
\draw(20, 17.250) -- ++(2,0);
\draw(21, 17.625) node(){100\%};
\draw(21, 16.875) node(){\textbf{coverage}};
\draw(21-0.125, 16.25) rectangle ++(0.25,0.25);
\draw[fill=black](20.5-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black](21.5-0.125, 18.0) rectangle ++(0.25,0.25);
% BEs and Adds:
\draw(15, 15.25) circle(0.5) node(){SBE};
\draw(18, 15.25) circle(0.5) node(){DBE};
\draw(21, 15.25) circle(0.5) node(){MBE};
\draw(24, 15.25) circle(0.5) node(){AZ};
\draw( 4.0,20.375) circle(0.25) node(){+};
\draw( 6.5,20.875) circle(0.25) node(){+};
\draw(10.0,20.375) circle(0.25) node(){+};
\draw(12.5,20.875) circle(0.25) node(){+};
\draw(15.5,20.375) circle(0.25) node(){+};
% Connections:
\draw[-Triangle,black!30!red] ( 6.0,13.5) |- ++(-3.5,0.10) -- ++(0,0.65);
\draw[-Triangle,black!30!red] ( 8.5,13.5) |- ++(-4.0,0.20) -- ++(0,0.55);
\draw[-Triangle,black!30!red] (10.5,13.5) |- ++(-3.0,0.30) -- ++(0,0.45);
\draw[-Triangle,black!30!blue] (12.0,13.5) |- ++(-2.0,0.40) -- ++(0,0.35);
\draw[-Triangle,black!30!blue] (14.5,13.5) |- ++(-2.5,0.50) -- ++(0,0.25);
\draw[-Triangle,black!30!red] (15.5,13.5) -- ++(0,1.25);
\draw[-Triangle,black!30!red] (14.5,18.5) -- ++(0.75,0);
\draw[-Triangle,black!30!red] (15.5,18.75) -- ++(0,2.75);
\draw[-Triangle,black!30!red] (16.5,13.5) -- ++(0,4.5);
\draw[-Triangle,black!30!red] (18.0,19.0) -- ++(0,2.5);
\draw[-Triangle,black!30!red] (4.0,16.25) -- ++(0,3.875);
\draw[-Triangle,black!30!red] (2.5,16.25) |- ++(1.25,4.125);
\draw[-Triangle,black!30!red] (6.5,16.25) |- ++(-2.25,4.125);
\draw[-Triangle,black!30!red] (5.0,16.25) |- ++(1.25,4.65);
\draw[-Triangle,black!30!red] (7.5,16.25) |- ++(-0.75,4.625);
\draw[-Triangle,black!30!red] (8.5,16.25) -- ++(0,5.25);
\draw[-Triangle,black!30!red] (4.0,20.625) -- ++(0,0.875);
\draw[-Triangle,black!30!red] (6.5,21.125) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (10.0,16.25) -- ++(0,3.875);
\draw[-Triangle,black!30!blue] (11.5,16.25) |- ++(-1.25,4.125);
\draw[-Triangle,black!30!blue] (12.5,16.25) -- ++(0,5.25);
\draw[-Triangle,black!30!blue] (10.0,20.625) -- ++(0,0.875);
%Out Blocks:
\draw[fill=black]( 4.0-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 6.5-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 8.5-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black](10.0-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black](12.5-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black](15.5-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black](16.5-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black](19.0-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black](24.0-0.125, 21.5) rectangle ++(0.25,0.25);
% SECDED:
\draw[fill=white](0,22.5) rectangle ++(20,6.5);
%In Blocks:
\draw( 4.0-0.125, 22.25) rectangle ++(0.25,0.25);
\draw( 6.5-0.125, 22.25) rectangle ++(0.25,0.25);
\draw( 8.5-0.125, 22.25) rectangle ++(0.25,0.25);
\draw(10.0-0.125, 22.25) rectangle ++(0.25,0.25);
\draw(12.5-0.125, 22.25) rectangle ++(0.25,0.25);
\draw(15.5-0.125, 22.25) rectangle ++(0.25,0.25);
\draw(16.5-0.125, 22.25) rectangle ++(0.25,0.25);
\draw(18.0-0.125, 22.25) rectangle ++(0.25,0.25);
% Coverage 1
\draw(2.0, 23.750-0.25) rectangle ++(2,1.5);
\draw(2.0, 24.500-0.25) -- ++(2,0);
\draw(3.0, 24.875-0.25) node(){100\%};
\draw(3.0, 24.125-0.25) node(){\textbf{coverage}};
\draw(3.0-0.125, 23.5-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](2.5-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](3.5-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
% Coverage 2
\draw(4.5, 23.750-0.25) rectangle ++(2,1.5);
\draw(4.5, 24.500-0.25) -- ++(2,0);
\draw(5.5, 24.875-0.25) node(){100\%};
\draw(5.5, 24.125-0.25) node(){\textbf{coverage}};
\draw(5.5-0.125, 23.5-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](5.0-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](6.0-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
% Coverage 3
\draw(6.5, 25.75) rectangle ++(2,1.5);
\draw(6.5, 26.500) -- ++(2,0);
\draw(7.5, 26.875) node(){100\%};
\draw(7.5, 26.125) node(){\textbf{coverage}};
\draw(7.5-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black](7.0-0.125, 27.25) rectangle ++(0.25,0.25);
\draw[fill=black](8.0-0.125, 27.25) rectangle ++(0.25,0.25);
% Split 1:
\draw(7.0, 23.750-0.25) rectangle ++(2,1.5);
\draw(7.0, 24.500-0.25) -- ++(2,0);
\draw(8.0, 24.500-0.25) -- ++(0,0.75);
\draw(7.5, 24.875-0.25) node(){44\%};
\draw(8.5, 24.875-0.25) node(){56\%};
\draw(8.0, 24.125-0.25) node(){\textbf{split}};
\draw(8.0-0.125, 23.5-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](7.5-0.125, 25.0) rectangle ++(0.25,0.25);
\draw[fill=black](8.5-0.125, 25.0) rectangle ++(0.25,0.25);
% Coverage 4
\draw(9.5, 23.750-0.25) rectangle ++(2,1.5);
\draw(9.5, 24.500-0.25) -- ++(2,0);
\draw(10.5, 24.875-0.25) node(){100\%};
\draw(10.5, 24.125-0.25) node(){\textbf{coverage}};
\draw(10.5-0.125, 23.5-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](10.0-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](11.0-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
% Coverage 5
\draw(12.0, 23.750-0.25) rectangle ++(2,1.5);
\draw(12.0, 24.500-0.25) -- ++(2,0);
\draw(13.0, 24.875-0.25) node(){100\%};
\draw(13.0, 24.125-0.25) node(){\textbf{coverage}};
\draw(13.0-0.125, 23.5-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](12.5-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](13.5-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
% Coverage 6
\draw(14.5, 23.750-0.25) rectangle ++(2,1.5);
\draw(14.5, 24.500-0.25) -- ++(2,0);
\draw(15.5, 24.875-0.25) node(){50\%};
\draw(15.5, 24.125-0.25) node(){\textbf{coverage}};
\draw(15.5-0.125, 23.5-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](16.0-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](15.0-0.125, 25.25-0.25) rectangle ++(0.25,0.25);
% Adds
\draw( 9.25,26.5) circle(0.25) node(){+};
\draw( 10.00,27.75) circle(0.25) node(){+};
\draw( 12.50,28.25) circle(0.25) node(){+};
\draw(19, 24.0) circle(0.5) node(){SDB};
%Connections:
\draw[-Triangle,black!30!red] (4.0,21.75) -- ++(0,1.5);
\draw[-Triangle,black!30!red] (6.5,21.75) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (8.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (10.0,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (12.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (15.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (16.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (18.0,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (4.0,22.50) |- ++(-1,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (6.5,22.50) |- ++(-1,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (6.5,22.50) |- ++(-1,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (8.5,22.50) |- ++(-0.5,0.40) -- ++(0,0.35);
\draw[black!30!blue,fill=black!30!blue](8.5,22.9) circle(0.05);
\draw[-Triangle,black!30!blue] (8.5,22.90) -| ++(+8.5,6.10);
\draw[-Triangle,black!30!blue] (10.0,22.50) |- ++(+0.5,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (12.5,22.50) |- ++(+0.5,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (15.5,22.50) -- ++(0,0.75);
\draw[-Triangle,black!30!red] (2.5,25.25) -- ++(0,3.75);
\draw[-Triangle,black!30!blue] (3.5,25.25) |- ++(+6.25,2.5);
\draw[-Triangle,black!30!red] (5.0,25.25) -- ++(0,3.75);
\draw[-Triangle,black!30!blue] (6.0,25.25) |- ++(+6.25,3.00);
\draw[-Triangle,black!30!red] (7.5,25.25) -- ++(0,0.25);
\draw[-Triangle,black!30!red] (8.5,25.25) |- ++(0.75,0.25) -- ++(0,0.75);
\draw[-Triangle,black!30!blue] (10.0,25.25) -- ++(0,2.25);
\draw[-Triangle,black!30!blue] (12.5,25.25) -- ++(0,2.75);
\draw[-Triangle,black!30!red] (15.0,25.25) |- ++(-5.5,1.25);
\draw[-Triangle,black!30!red] (7.00,27.5) -- ++(0,1.50);
\draw[-Triangle,black!30!red] (9.25,26.75) -- ++(0,2.25);
\draw[-Triangle,black!30!blue] (10.0,28.0) -- ++(0,1.00);
\draw[-Triangle,black!30!blue] (12.5,28.5) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (16.0,25.25) -- ++(0,3.75);
\draw[-Triangle,black!30!red] (16.5,22.50) |- ++(1.00,0.25) -- ++(0,6.25);
\draw[-Triangle,black!30!red] (18.0,22.50) -- ++(0,6.5);
\draw[-Triangle,black!30!blue] (19.0,28.00) -- ++(0,1.0);
%Out Blocks:
\draw[fill=black]( 2.5-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 5-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 7-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 9.25-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 10.0-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 12.5-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 16.0-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 17.0-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 17.5-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 18.0-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 19.0-0.125, 29.0) rectangle ++(0.25,0.25);
%SECDED TRIM
\draw[fill=white](0,30.0) rectangle ++(20,4.5);
%In Blocks:
\draw( 2.5-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 5-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 7-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 9.25-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 10.0-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 12.5-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 16.0-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 17.0-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 17.5-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
\draw( 18.0-0.125, 30.0-0.25) rectangle ++(0.25,0.25);
% Split 1:
\draw(1.0, 31.00) rectangle ++(1,1.5);
\draw(1.0, 31.750) -- ++(1,0);
\draw(1.5, 32.175) node(){89\%};
\draw(1.5, 31.375) node(){\textbf{split}};
\draw[fill=black](1.5-0.125, 32.5) rectangle ++(0.25,0.25);
\draw(1.5-0.125, 30.75) rectangle ++(0.25,0.25);
% Split 2:
\draw(2.5, 31.00) rectangle ++(2,1.5);
\draw(2.5, 31.75) -- ++(2,0);
\draw(3.5, 31.75) -- ++(0,0.75);
\draw(3.0, 32.175) node(){20\%};
\draw(4.0, 32.175) node(){79\%};
\draw(3.5, 31.375) node(){\textbf{split}};
\draw[fill=black](3.0-0.125, 32.5) rectangle ++(0.25,0.25);
\draw[fill=black](4.0-0.125, 32.5) rectangle ++(0.25,0.25);
\draw(3.5-0.125, 30.75) rectangle ++(0.25,0.25);
% Split 3:
\draw( 5.0, 31.00) rectangle ++(3,1.5);
\draw( 5.0, 31.75) -- ++(3,0);
\draw( 6.0, 31.75) -- ++(0,0.75);
\draw( 7.0, 31.75) -- ++(0,0.75);
\draw( 5.5, 32.175) node(){3\%};
\draw( 6.5, 32.175) node(){27\%};
\draw( 7.5, 32.175) node(){70\%};
\draw( 6.5, 31.375) node(){\textbf{split}};
\draw[fill=black]( 5.5-0.125, 32.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 6.5-0.125, 32.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 7.5-0.125, 32.5) rectangle ++(0.25,0.25);
\draw(6.5-0.125, 30.75) rectangle ++(0.25,0.25);
% Split 4:
\draw(10.0, 31.00) rectangle ++(1,1.5);
\draw(10.0, 31.750) -- ++(1,0);
\draw(10.5, 32.175) node(){89\%};
\draw(10.5, 31.375) node(){\textbf{split}};
\draw[fill=black](10.5-0.125, 32.5) rectangle ++(0.25,0.25);
\draw(10.5-0.125, 30.75) rectangle ++(0.25,0.25);
% Split 5:
\draw(11.5, 31.00) rectangle ++(2,1.5);
\draw(11.5, 31.75) -- ++(2,0);
\draw(12.5, 31.75) -- ++(0,0.75);
\draw(12.0, 32.175) node(){20\%};
\draw(13.0, 32.175) node(){79\%};
\draw(12.5, 31.375) node(){\textbf{split}};
\draw[fill=black](12.0-0.125, 32.50) rectangle ++(0.25,0.25);
\draw[fill=black](13.0-0.125, 32.50) rectangle ++(0.25,0.25);
\draw(12.5-0.125, 30.75) rectangle ++(0.25,0.25);
% Split 6:
\draw(14.0, 31.00) rectangle ++(3,1.5);
\draw(14.0, 31.75) -- ++(3,0);
\draw(15.0, 31.75) -- ++(0,0.75);
\draw(16.0, 31.75) -- ++(0,0.75);
\draw(14.5, 32.175) node(){3\%};
\draw(15.5, 32.175) node(){27\%};
\draw(16.5, 32.175) node(){70\%};
\draw(15.5, 31.375) node(){\textbf{split}};
\draw[fill=black](14.5-0.125, 32.5) rectangle ++(0.25,0.25);
\draw[fill=black](15.5-0.125, 32.5) rectangle ++(0.25,0.25);
\draw[fill=black](16.5-0.125, 32.5) rectangle ++(0.25,0.25);
\draw(15.5-0.125, 30.75) rectangle ++(0.25,0.25);
% Adds
\draw( 3.0,33.375) circle(0.25) node(){+};
\draw( 5.5,33.875) circle(0.25) node(){+};
\draw(12.0,33.375) circle(0.25) node(){+};
\draw(14.5,33.875) circle(0.25) node(){+};
%Out Blocks:
\draw[fill=black]( 3.0-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 5.5-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 7.5-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 9.25-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black](12.0-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black](14.5-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black](16.5-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black](17.5-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black](18.5-0.125, 34.5) rectangle ++(0.25,0.25);
\draw[fill=black](19.5-0.125, 34.5) rectangle ++(0.25,0.25);
% Connections
\draw[-Triangle,black!30!red] ( 2.50,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 5.00,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 7.00,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 9.25,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (10.00,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (12.50,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (16.00,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (17.00,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (17.50,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (18.00,29.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 9.25,26.5) -- ++(0,4.50);
\draw[-Triangle,black!30!red] ( 2.50,30.0) |- ++(-1.0,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] ( 5.00,30.0) |- ++(-1.5,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] ( 7.00,30.0) |- ++(-0.5,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (10.00,30.0) |- ++(+0.5,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (12.50,30.0) -- ++(0,0.75);
\draw[-Triangle,black!30!blue] (16.00,30.0) |- ++(1.5,0.75) -- ++(0,4.0);
\draw[-Triangle,black!30!blue] (17.00,30.0) |- ++(-1.5,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (17.50,30.0) |- ++(+1.0,0.50) -- ++(0,4.00);
\draw[-Triangle,black!30!red] (18.00,30.0) |- ++(+1.5,0.25) -- ++(0,4.25);
\draw[-Triangle,black!30!red] (1.50,32.75) |- ++(1.25,0.625);
\draw[-Triangle,black!30!red] (3.00,32.75) -- ++(0,0.375);
\draw[-Triangle,black!30!red] (5.50,32.75) |- ++(-2.25,0.625);
\draw[-Triangle,black!30!red] (4.00,32.75) |- ++(1.25,1.125);
\draw[-Triangle,black!30!red] (6.50,32.75) |- ++(-0.75,1.125);
\draw[-Triangle,black!30!red] (7.50,32.75) -- ++(0,1.75);
\draw[-Triangle,black!30!red] (3.00,33.625) -- ++(0,0.875);
\draw[-Triangle,black!30!red] (5.5,34.125) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (1.50+9,32.75) |- ++(1.25,0.625);
\draw[-Triangle,black!30!blue] (3.00+9,32.75) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (5.50+9,32.75) |- ++(-2.25,0.625);
\draw[-Triangle,black!30!blue] (4.00+9,32.75) |- ++(1.25,1.125);
\draw[-Triangle,black!30!blue] (6.50+9,32.75) |- ++(-0.75,1.125);
\draw[-Triangle,black!30!blue] (7.50+9,32.75) -- ++(0,1.75);
\draw[-Triangle,black!30!blue] (3.00+9,33.625) -- ++(0,0.875);
\draw[-Triangle,black!30!blue] (5.50+9,34.125) -- ++(0,0.375);
% Final:
\node[circle,draw, minimum size=1cm] (RES) at (5.5,37.5) {+};
\draw[-Triangle,black!30!red] ( 3.00,34.75) -- ++(0,0.5) -- (RES);
\draw[-Triangle,black!30!red] ( 5.50,34.75) -- ++(0,0.5) -- (RES);
\draw[-Triangle,black!30!red] ( 7.50,34.75) -- ++(0,0.5) -- (RES);
\draw[-Triangle,black!30!red] ( 9.20,34.75) -- ++(0,0.5) -- (RES);
\draw[-Triangle,black!30!red] (18.50,34.75) -- ++(0,0.25) -- ++(-8,0) -- (RES);
\draw[-Triangle,black!30!red] (19.50,34.75) -- ++(0,0.50) -- ++(-8,0) -- (RES);
\node[circle,draw, minimum size=1cm] (LAT) at (14.5,37.5) {+};
\draw[-Triangle,black!30!blue] (12.00,34.75) -- ++(0,1.0) -- (LAT);
\draw[-Triangle,black!30!blue] (14.50,34.75) -- ++(0,1.0) -- (LAT);
\draw[-Triangle,black!30!blue] (16.50,34.75) -- ++(0,1.0) -- (LAT);
\draw[-Triangle,black!30!blue] (17.50,34.75) -- ++(0,1.0) -- (LAT);
% Calculate ASIL:
\draw(3,39.0) rectangle (17,40.0);
\draw(10,39.5) node(){\textbf{Calculate ASIL}};
\draw( 5.5-0.125, 39.0-0.25) rectangle ++(0.25,0.25);
\draw(14.5-0.125, 39.0-0.25) rectangle ++(0.25,0.25);
% Last connections:
\draw[-Triangle,black!30!blue] (14.00,7.25) |- ++(7.5,0.25) -- ++(0,25.5) -- (LAT);
\draw[-Triangle,black!30!blue] (19.00,29.25) |- ++(1.5,0.25) -- ++(0,6.0) -- (LAT);
\draw[-Triangle,black!30!red] (RES) -- ++ (0,1.25);
\draw[-Triangle,black!30!blue] (LAT) -- ++ (0,1.25);
% Descriptions:
% LEVEL 1
\draw[black!30!red] ( 5.5,7.625) node(){\scriptsize SBE};
\draw[black!30!red] ( 5.5,7.375) node(){\tiny 0};
\draw[black!30!red] ( 6.5,7.625) node(){\scriptsize DBE};
\draw[black!30!red] ( 6.5,7.375) node(){\tiny 142.79};
\draw[black!30!red] ( 7.5,7.625) node(){\scriptsize TBE};
\draw[black!30!red] ( 7.5,7.375) node(){\tiny 29.25};
\draw[black!30!blue] ( 8.5,7.625) node(){\scriptsize SBE};
\draw[black!30!blue] ( 8.5,7.375) node(){\tiny 1610};
\draw[black!30!blue] ( 9.5,7.625) node(){\scriptsize DBE};
\draw[black!30!blue] ( 9.5,7.375) node(){\tiny 172};
\draw[black!30!red] (10.5,7.625) node(){\scriptsize MBE};
\draw[black!30!red] (10.5,7.375) node(){\tiny 172};
\draw[black!30!red] (11.5,7.625) node(){\scriptsize WD};
\draw[black!30!red] (11.5,7.375) node(){\tiny 172};
% LEVEL 2
\draw[black!30!red] ( 5.5,12.625+0.5) node(){\scriptsize SBE};
\draw[black!30!red] ( 5.5,12.375+0.5) node(){\tiny 15.97};
\draw[black!30!red] ( 8.0,12.625+0.5) node(){\scriptsize DBE};
\draw[black!30!red] ( 8.0,12.375+0.5) node(){\tiny 131.47};
\draw[black!30!red] (10.0,12.625+0.5) node(){\scriptsize TBE};
\draw[black!30!red] (10.0,12.375+0.5) node(){\tiny 24.27};
\draw[black!30!blue] (11.5,12.625+0.5) node(){\scriptsize SBE};
\draw[black!30!blue] (11.5,12.375+0.5) node(){\tiny 1532.3};
\draw[black!30!blue] (14.0,12.625+0.5) node(){\scriptsize DBE};
\draw[black!30!blue] (14.0,12.375+0.5) node(){\tiny 153.1};
\draw[black!30!red] (15.0,12.625+0.5) node(){\scriptsize MBE};
\draw[black!30!red] (15.0,12.375+0.5) node(){\tiny 172};
\draw[black!30!red] (16.0,12.625+0.5) node(){\scriptsize WD};
\draw[black!30!red] (16.0,12.375+0.5) node(){\tiny 172};
% Level 3:
\draw[black!30!red] ( 3.5,18.625) node(){\scriptsize SBE};
\draw[black!30!red] ( 3.5,18.375) node(){\tiny 80.1 };
\draw[black!30!red] ( 6.0,18.625) node(){\scriptsize DBE};
\draw[black!30!red] ( 6.0,18.375) node(){\tiny 51.5};
\draw[black!30!red] ( 8.0,18.625) node(){\scriptsize TBE};
\draw[black!30!red] ( 8.0,18.375) node(){\tiny 4.25};
\draw[black!30!blue] ( 9.5,18.625) node(){\scriptsize SBE};
\draw[black!30!blue] ( 9.5,18.375) node(){\tiny 747.1 };
\draw[black!30!blue] (12.0,18.625) node(){\scriptsize DBE};
\draw[black!30!blue] (12.0,18.375) node(){\tiny 48.1};
\draw[black!30!red] (15.0,18.625) node(){\scriptsize MBE};
\draw[black!30!red] (15.0,18.375) node(){\tiny 174.3};
\draw[black!30!red] (16.0,18.625) node(){\scriptsize WD};
\draw[black!30!red] (16.0,18.375) node(){\tiny 172};
\draw[black!30!red] (17.5,18.625) node(){\scriptsize AZ};
\draw[black!30!red] (17.5,18.375) node(){\tiny 172};
% Level 3:
\draw[black!30!red] ( 2.0,29.125+0.5) node(){\scriptsize SBE};
\draw[black!30!red] ( 2.0,28.875+0.5) node(){\tiny 0};
\draw[black!30!red] ( 4.5,25.625+0.5) node(){\scriptsize DBE};
\draw[black!30!red] ( 4.5,25.375+0.5) node(){\tiny 0};
\draw[black!30!red] ( 6.5,25.625+0.5) node(){\scriptsize TBE};
\draw[black!30!red] ( 6.5,25.375+0.5) node(){\tiny 0};
\draw[black!30!red] ( 8.5,25.625+0.5) node(){\scriptsize MBE};
\draw[black!30!red] ( 8.5,25.375+0.5) node(){\tiny 89.5};
\draw[black!30!red] (18.5,25.625+0.5) node(){\scriptsize AZ};
\draw[black!30!red] (18.5,25.375+0.5) node(){\tiny 172};
\draw[black!30!blue] (10.5,25.625+0.5) node(){\scriptsize SBE};
\draw[black!30!blue] (10.5,25.375+0.5) node(){\tiny 80.1};
\draw[black!30!blue] (12.0,25.625+0.5) node(){\scriptsize DBE};
\draw[black!30!blue] (12.0,25.375+0.5) node(){\tiny 51.5};
\draw[black!30!blue] (15.5,25.625+0.5) node(){\scriptsize MBE};
\draw[black!30!blue] (15.5,25.375+0.5) node(){\tiny 87.17};
\draw[black!30!blue] (16.5,25.625+0.5) node(){\scriptsize TBE};
\draw[black!30!blue] (16.5,25.375+0.5) node(){\tiny 4.25};
% Level 4:
\draw[black!30!red] ( 2.5,35.125+0.0) node(){\scriptsize SBE};
\draw[black!30!red] ( 2.5,34.875+0.0) node(){\tiny 0};
\draw[black!30!red] ( 5.0,35.125+0.0) node(){\scriptsize DBE};
\draw[black!30!red] ( 5.0,34.875+0.0) node(){\tiny 0};
\draw[black!30!red] ( 7.0,35.125+0.0) node(){\scriptsize TBE};
\draw[black!30!red] ( 7.0,34.875+0.0) node(){\tiny 0};
\draw[black!30!red] ( 8.5,35.125+0.0) node(){\scriptsize MBE};
\draw[black!30!red] ( 8.5,34.875+0.0) node(){\tiny 89.55};
\draw[black!30!red] (19.0,35.125+0.0) node(){\scriptsize WD};
\draw[black!30!red] (19.0,34.875+0.0) node(){\tiny 172};
\draw[black!30!red] (20.0,35.125+0.0) node(){\scriptsize AZ};
\draw[black!30!red] (20.0,34.875+0.0) node(){\tiny 172};
\draw[black!30!blue] (11.5,35.125+0.0) node(){\scriptsize SBE};
\draw[black!30!blue] (11.5,34.875+0.0) node(){\tiny 81.7};
\draw[black!30!blue] (14.0,35.125+0.0) node(){\scriptsize DBE};
\draw[black!30!blue] (14.0,34.875+0.0) node(){\tiny 41.8};
\draw[black!30!blue] (16.0,35.125+0.0) node(){\scriptsize TBE};
\draw[black!30!blue] (16.0,34.875+0.0) node(){\tiny 3};
\draw[black!30!blue] (17.0,35.125+0.0) node(){\scriptsize MBE};
\draw[black!30!blue] (17.0,34.875+0.0) node(){\tiny 87.17};
%Level 5:
\draw[black!30!red] ( 6.75,38.25) node(){$\lambda_\mathrm{RF}=529.6$};
\draw[black!30!blue] (16.00,38.25) node(){$\lambda_\mathrm{MFP,L}=213.8$};
\draw[black!30!red] (19.0,40.0-0.25) node(){$\mathrm{SPFM}=87.45\%$};
\draw[black!30!blue] (19.0,39.5-0.25) node(){$\mathrm{LFM}=94.20\%$};
%SBE Fits:
\draw( 7.0,0.75) node(){\tiny 1610};
\draw( 9.0,0.75) node(){\tiny 172};
\draw(11.0,0.75) node(){\tiny 172};
\draw(13.0,0.75) node(){\tiny 172};
% DQ:
\draw(14.0,14.75) node(){\tiny 2.3};
% AZ:
\draw(18.0,14.75) node(){\tiny 172};
%SB SDB
\draw(14,4.75) node(){\tiny 0.1};
\draw(19,23.75) node(){\tiny 0.1};
\draw(3, 37.5) circle(0.5) node(){Other};
\draw(3,37.25) node(){\tiny 96};
\draw[-Triangle,black!30!red,dashed] (3.5,37.5) -- ++ (1.5,0);
%Legends:
\draw(20,3.5) node(){\Large \textbf{Legend:}};
\draw[black!30!red](20,2.75) node(){\Large $\lambda_\mathrm{RF}$};
\draw[black!30!blue](20,2.0) node(){\Large $\lambda_\mathrm{MPF,L}$};
\draw[gray!50](26.5, 10.0) node(){\Huge \bf DRAM};
\draw[gray!50](26.5, 17.0) node(){\Huge \bf BUS};
\draw[gray!50](26.5, 27.75) node(){\Huge \bf SoC};
\draw(16,1.0) node(){DRAM};
\draw(16,5.0) node(){SEC};
\draw(18.5,10.5) node(){DRAM-TRIM};
\draw(20.5,15.0) node(){BUS-TRIM};
\draw(21.5,22.5) node(){SEC-DED};
\draw(22.5,27.5) node(){SEC-DED-TRIM};
\end{tikzpicture}%
}

742
model.tex Normal file
View File

@@ -0,0 +1,742 @@
\resizebox{0.94\textwidth}{!}{% <------ Don't forget this %
\begin{tikzpicture}%[framed]
%\tikzstyle{help lines}=[blue!50];
%\draw[style=help lines] (0,0) grid (24,36);
\draw[gray, dashed] (0,13) -- ++(23,0);
\draw[gray, dashed] (0,18.5) -- ++(23,0);
\draw[gray, dashed] (0,32.5) -- ++(23,0);
% DRAM Array:
\draw[fill=white]( 5, 0.0) rectangle ++(10,2.0);
\draw( 7, 1.0) circle(0.5) node(){SBE};
\draw( 9, 1.0) circle(0.5) node(){DBE};
\draw(11, 1.0) circle(0.5) node(){MBE};
\draw(13, 1.0) circle(0.5) node(){WD};
\draw[-Triangle]( 7, 1.5) -- ++(0,1.25);
\draw[-Triangle]( 9, 1.5) -- ++(0,1.25);
\draw[-Triangle](11, 1.5) -- ++(0,1.25);
\draw[-Triangle](13, 1.5) -- ++(0,1.25);
\draw[fill=black]( 7-0.125, 2.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 9-0.125, 2.0) rectangle ++(0.25,0.25);
\draw[fill=black](11-0.125, 2.0) rectangle ++(0.25,0.25);
\draw[fill=black](13-0.125, 2.0) rectangle ++(0.25,0.25);
% DRAM SEC:
\draw[fill=white](5, 3.0) rectangle ++(10,4.0);
\draw( 7-0.125, 3.0-0.25) rectangle ++(0.25,0.25);
\draw( 9-0.125, 3.0-0.25) rectangle ++(0.25,0.25);
\draw(11-0.125, 3.0-0.25) rectangle ++(0.25,0.25);
\draw(13-0.125, 3.0-0.25) rectangle ++(0.25,0.25);
\draw[-Triangle, black!30!red]( 6, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!red]( 7, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!red]( 8, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!blue]( 9, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!blue](10, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!red](11, 7.0) -- ++(0,0.75);
\draw[-Triangle, black!30!red](12, 7.0) -- ++(0,0.75);
\draw[fill=black]( 6-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 7-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 8-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 9-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black](10-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black](11-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black](12-0.125, 7.0) rectangle ++(0.25,0.25);
\draw[fill=black](14-0.125, 7.0) rectangle ++(0.25,0.25);
% Coverage:
\draw(5.5, 4.250) rectangle ++(2,1.5);
\draw(5.5, 5.000) -- ++(2,0);
\draw(6.5, 5.375) node(){100\%};
\draw(6.5, 4.625) node(){\textbf{coverage}};
\draw(6.5-0.125, 4.0) rectangle ++(0.25,0.25);
\draw[fill=black](6.0-0.125, 5.75) rectangle ++(0.25,0.25);
\draw[fill=black](7.0-0.125, 5.75) rectangle ++(0.25,0.25);
% Split:
\draw(8.0, 4.250) rectangle ++(2,1.5);
\draw(8.0, 5.000) -- ++(2,0);
\draw(9.0, 5.000) -- ++(0,0.75);
\draw(8.5, 5.375) node(){83\%};
\draw(9.5, 5.375) node(){17\%};
\draw(9.0, 4.625) node(){\textbf{split}};
\draw(9.0-0.125, 4.0) rectangle ++(0.25,0.25);
\draw[fill=black](8.5-0.125, 5.75) rectangle ++(0.25,0.25);
\draw[fill=black](9.5-0.125, 5.75) rectangle ++(0.25,0.25);
%BE SEC Broken
\draw(14, 5.0) circle(0.5) node(){SB};
%Connections:
\draw[-Triangle,black!30!red](7,3) |- ++(-0.5,0.5) -- ++(0,0.5);
\draw[-Triangle,black!30!red](9,3) -- ++(0,1.0);
\draw[-Triangle,black!30!red](6,6) -- ++(0,1.0);
\draw[-Triangle,black!30!blue](7,6) |- ++(2,0.25) -- ++(0,0.75);
\draw[-Triangle,black!30!red](8.5,6) |- ++(-1.5,0.5) -- ++(0,0.5);
\draw[-Triangle,black!30!red](9.5,6) |- ++(-1.5,0.65) -- ++(0,0.35);
\draw[black!30!blue,fill=black!30!blue](9,3.5) circle(0.05);
\draw[-Triangle,black!30!blue](9,3.5) -| ++(1.25,3) -| ++(-0.25,0.5);
\draw[-Triangle,black!30!red](11,3) -- ++(0,4);
\draw[-Triangle,black!30!red](13,3) |- ++(-1,1) -- ++(0,3);
\draw[-Triangle,black!30!blue](14,5.5) -- ++(0,1.5);
% SEC TRIM:
\draw[fill=white](3, 8.0) rectangle ++(14,4.5);
\draw( 6-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw( 7-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw( 8-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw( 9-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw(10-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw(11-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
\draw(12-0.125, 8.0-0.25) rectangle ++(0.25,0.25);
% DEL:
% Split 1:
\draw(4.0, 9.000) rectangle ++(1,1.5);
\draw(4.0, 9.750) -- ++(1,0);
\draw(4.5, 10.175) node(){94\%};
\draw(4.5, 9.375) node(){\textbf{split}};
\draw[fill=black](4.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(4.5-0.125, 8.75) rectangle ++(0.25,0.25);
% Split 2:
\draw(5.5, 9.00) rectangle ++(2,1.5);
\draw(5.5, 9.75) -- ++(2,0);
\draw(6.5, 9.75) -- ++(0,0.75);
\draw(6.0, 10.175) node(){11\%};
\draw(7.0, 10.175) node(){89\%};
\draw(6.5, 9.375) node(){\textbf{split}};
\draw[fill=black](6-0.125, 10.5) rectangle ++(0.25,0.25);
\draw[fill=black](7-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(6.5-0.125, 8.75) rectangle ++(0.25,0.25);
% Split 3:
\draw( 8.0, 9.00) rectangle ++(3,1.5);
\draw( 8.0, 9.75) -- ++(3,0);
\draw( 9.0, 9.75) -- ++(0,0.75);
\draw(10.0, 9.75) -- ++(0,0.75);
\draw( 8.5, 10.175) node(){0.9\%};
\draw( 9.5, 10.175) node(){15\%};
\draw(10.5, 10.175) node(){83\%};
\draw( 9.5, 9.375) node(){\textbf{split}};
\draw[fill=black]( 8.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 9.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw[fill=black](10.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(9.5-0.125, 8.75) rectangle ++(0.25,0.25);
% Split 4:
\draw(11.5, 9.00) rectangle ++(1,1.5);
\draw(11.5, 9.75) -- ++(1,0);
\draw(12.0, 10.175) node(){94\%};
\draw(12.0, 9.375) node(){\textbf{split}};
\draw[fill=black](12.0-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(12.0-0.125, 8.75) rectangle ++(0.25,0.25);
% Split 5:
\draw(13.0, 9.00) rectangle ++(2,1.5);
\draw(13.0, 9.75) -- ++(2,0);
\draw(14.0, 9.75) -- ++(0,0.75);
\draw(13.5, 10.175) node(){11\%};
\draw(14.5, 10.175) node(){89\%};
\draw(14.0, 9.375) node(){\textbf{split}};
\draw[fill=black](13.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw[fill=black](14.5-0.125, 10.5) rectangle ++(0.25,0.25);
\draw(14.0-0.125, 8.75) rectangle ++(0.25,0.25);
% Adds
\draw( 6.0,11.375) circle(0.25) node(){+};
\draw( 8.5,11.875) circle(0.25) node(){+};
\draw(12.0,11.375) circle(0.25) node(){+};
%Connections:
\draw[-Triangle,black!30!red] ( 6,8) |- ++(-1.5,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 7,8) |- ++(-0.5,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 8,8) |- ++( 1.5,0.50) -- ++(0,0.25);
\draw[-Triangle,black!30!blue] ( 9,8) |- ++( 3.0,0.40) -- (12,8.75);
\draw[-Triangle,black!30!blue] ( 10,8) |- ++( 4.0,0.30) -- (14,8.75);
\draw[-Triangle,black!30!red] ( 11,8) |- ++( 4.5,0.20) -- (15.5,12.5);
\draw[-Triangle,black!30!red] ( 12,8) |- ++( 4.5,0.10) -- (16.5,12.5);
\draw[-Triangle,black!30!red] ( 4.5,10.75) |- ++( 1.25,0.625);
\draw[-Triangle,black!30!red] ( 6.0,10.75) -- ++(0,0.375);
\draw[-Triangle,black!30!red] ( 8.5,10.75) |- ++(-2.25,0.625);
\draw[-Triangle,black!30!red] ( 7.0,10.75) |- ++( 1.25,1.125);
\draw[-Triangle,black!30!red] ( 9.5,10.75) |- ++(-0.75,1.125);
\draw[-Triangle,black!30!red] (10.5,10.75) -- ++(0,1.75);
\draw[-Triangle,black!30!red] (6.0,11.625) -- ++(0,0.875);
\draw[-Triangle,black!30!red] (8.5,12.125) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (12.0,10.75) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (13.5,10.75) |- ++(-1.25,0.625);
\draw[-Triangle,black!30!blue] (12.0,11.625) -- ++(0,0.875);
\draw[-Triangle,black!30!blue] (14.5,10.75) -- ++(0,1.75);
% Outports
\draw[fill=black]( 6.0-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 8.5-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](10.5-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](12.0-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](14.5-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](15.5-0.125, 12.5) rectangle ++(0.25,0.25);
\draw[fill=black](16.5-0.125, 12.5) rectangle ++(0.25,0.25);
% BUS and TRIM:
\draw[fill=white](0,13.5) rectangle ++(20,4.5);
\draw( 6.0-0.125, 13.25) rectangle ++(0.25,0.25);
\draw( 8.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(10.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(12.0-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(14.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(15.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw(16.5-0.125, 13.25) rectangle ++(0.25,0.25);
\draw[-Triangle,black!30!red] ( 6.0,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 8.5,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (10.5,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (12.0,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (14.5,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (15.5,12.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (16.5,12.75) -- ++(0,0.50);
% Split 1:
\draw(2.0, 14.500) rectangle ++(1,1.5);
\draw(2.0, 15.250) -- ++(1,0);
\draw(2.5, 15.675) node(){43.8\%};
\draw(2.5, 14.875) node(){\textbf{split}};
\draw[fill=black](2.5-0.125, 16.0) rectangle ++(0.25,0.25);
\draw(2.5-0.125, 14.25) rectangle ++(0.25,0.25);
% Split 2:
\draw(3.5, 14.50) rectangle ++(2,1.5);
\draw(3.5, 15.25) -- ++(2,0);
\draw(4.5, 15.25) -- ++(0,0.75);
\draw(4.0, 15.675) node(){49.6\%};
\draw(5.0, 15.675) node(){31.4\%};
\draw(4.5, 14.875) node(){\textbf{split}};
\draw[fill=black](4-0.125, 16.0) rectangle ++(0.25,0.25);
\draw[fill=black](5-0.125, 16.0) rectangle ++(0.25,0.25);
\draw(4.5-0.125, 14.25) rectangle ++(0.25,0.25);
% Split 3:
\draw( 6.0, 14.50) rectangle ++(3,1.5);
\draw( 6.0, 15.25) -- ++(3,0);
\draw( 7.0, 15.25) -- ++(0,0.75);
\draw( 8.0, 15.25) -- ++(0,0.75);
\draw( 6.5, 15.675) node(){32.5\%};
\draw( 7.5, 15.675) node(){41.9\%};
\draw( 8.5, 15.675) node(){17.5\%};
\draw( 7.5, 14.875) node(){\textbf{split}};
\draw[fill=black]( 6.5-0.125, 16) rectangle ++(0.25,0.25);
\draw[fill=black]( 7.5-0.125, 16) rectangle ++(0.25,0.25);
\draw[fill=black]( 8.5-0.125, 16) rectangle ++(0.25,0.25);
\draw(7.5-0.125, 14.25) rectangle ++(0.25,0.25);
% Split 4:
\draw(9.5, 14.50) rectangle ++(1,1.5);
\draw(9.5, 15.25) -- ++(1,0);
\draw(10.0, 15.675) node(){43.8\%};
\draw(10.0, 14.875) node(){\textbf{split}};
\draw[fill=black](10.0-0.125, 16.0) rectangle ++(0.25,0.25);
\draw(10.0-0.125, 14.25) rectangle ++(0.25,0.25);
% Split 5:
\draw(11.0, 14.50) rectangle ++(2,1.5);
\draw(11.0, 15.25) -- ++(2,0);
\draw(12.0, 15.25) -- ++(0,0.75);
\draw(11.5, 15.675) node(){49.6\%};
\draw(12.5, 15.675) node(){31.4\%};
\draw(12.0, 14.875) node(){\textbf{split}};
\draw[fill=black](11.5-0.125, 16) rectangle ++(0.25,0.25);
\draw[fill=black](12.5-0.125, 16) rectangle ++(0.25,0.25);
\draw(12.0-0.125, 14.25) rectangle ++(0.25,0.25);
% BEs and Adds:
\draw(14.25, 14.75) circle(0.5) node(bussbe){SBE};
\draw(18, 15.0) circle(0.5) node(){AZ};
\draw(12.5,17.0) circle(0.25) node(){+};
\draw(4.0,16.875) circle(0.25) node(){+};
\draw(6.5,17.375) circle(0.25) node(){+};
\draw(10.0,16.875) circle(0.25) node(){+};
% Additional Coverage:
\draw(13.25, 15.750) rectangle ++(2,1.5);
\draw(13.25, 16.500) -- ++(2,0);
\draw(14.25, 16.875) node(){100\%};
\draw(14.25, 16.125) node(){\textbf{coverage}};
\draw(14.25-0.125, 15.5) rectangle ++(0.25,0.25);
\draw[fill=black](13.75-0.125, 17.25) rectangle ++(0.25,0.25);
\draw[fill=black](14.75-0.125, 17.25) rectangle ++(0.25,0.25);
% Connections:
\draw[-Triangle,black!30!red] (14.25,15.25) -- ++(0,0.25);
\draw[-Triangle,black!30!red] (13.75, 17.5) -- ++(0,0.25) -- ++(-8.75,0) -- ++(-0.75,-0.75);
\draw[-Triangle,black!30!blue] (14.75, 17.5) -- ++(0,0.125) -- ++(-4.0,0) -- ++(-0.55,-0.55);
%
\draw[-Triangle,black!30!red] ( 6.0,13.5) |- ++(-3.5,0.10) -- ++(0,0.65);
\draw[-Triangle,black!30!red] ( 8.5,13.5) |- ++(-4.0,0.20) -- ++(0,0.55);
\draw[-Triangle,black!30!red] (10.5,13.5) |- ++(-3.0,0.30) -- ++(0,0.45);
\draw[-Triangle,black!30!blue] (12.0,13.5) |- ++(-2.0,0.40) -- ++(0,0.35);
\draw[-Triangle,black!30!blue] (14.5,13.5) |- ++(-2.5,0.50) -- ++(0,0.25);
\draw[-Triangle,black!30!red] (15.5,13.5) -- ++(0,1.25) -- ++(0,3.25);
\draw[-Triangle,black!30!red] (16.5,13.5) -- ++(0,4.5);
\draw[-Triangle,black!30!red] (18.0,15.5) -- ++(0,2.5);
\draw[-Triangle,black!30!red] (4.0,16.25) -- ++(0,0.375);
\draw[-Triangle,black!30!red] (2.5,16.25) |- ++(1.25,0.625);
\draw[-Triangle,black!30!red] (6.5,16.25) |- ++(-2.25,0.625);
\draw[-Triangle,black!30!red] (5.0,16.25) |- ++(1.25,1.125);
\draw[-Triangle,black!30!red] (7.5,16.25) |- ++(-0.75,1.125);
\draw[-Triangle,black!30!red] (8.5,16.25) -- ++(0,1.75);
\draw[-Triangle,black!30!red] (4.0,17.125) -- ++(0,0.875);
\draw[-Triangle,black!30!red] (6.5,17.625) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (10.0,16.25) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (11.5,16.25) |- ++(-1.25,0.625);
\draw[-Triangle,black!30!blue] (12.5,16.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (12.5,17.25) -- ++(0,0.75);
\draw[-Triangle,black!30!blue] (10.0,17.125) -- ++(0,0.875);
%Out Blocks:
\draw[fill=black]( 4.0-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 6.5-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 8.5-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black](10.0-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black](12.5-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black](15.5-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black](16.5-0.125, 18.0) rectangle ++(0.25,0.25);
\draw[fill=black](18.0-0.125, 18.0) rectangle ++(0.25,0.25);
% SECDED:
\draw[fill=white](0,19.0) rectangle ++(20,6.5);
%In Blocks:
\draw( 4.0-0.125, 18.75) rectangle ++(0.25,0.25);
\draw( 6.5-0.125, 18.75) rectangle ++(0.25,0.25);
\draw( 8.5-0.125, 18.75) rectangle ++(0.25,0.25);
\draw(10.0-0.125, 18.75) rectangle ++(0.25,0.25);
\draw(12.5-0.125, 18.75) rectangle ++(0.25,0.25);
\draw(15.5-0.125, 18.75) rectangle ++(0.25,0.25);
\draw(16.5-0.125, 18.75) rectangle ++(0.25,0.25);
\draw(18.0-0.125, 18.75) rectangle ++(0.25,0.25);
% Coverage 1
\draw(2.0, 20.250-0.25) rectangle ++(2,1.5);
\draw(2.0, 21.000-0.25) -- ++(2,0);
\draw(3.0, 21.375-0.25) node(){100\%};
\draw(3.0, 20.625-0.25) node(){\textbf{coverage}};
\draw(3.0-0.125, 20.0-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](2.5-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](3.5-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
% Coverage 2
\draw(4.5, 20.250-0.25) rectangle ++(2,1.5);
\draw(4.5, 21.000-0.25) -- ++(2,0);
\draw(5.5, 21.375-0.25) node(){100\%};
\draw(5.5, 20.625-0.25) node(){\textbf{coverage}};
\draw(5.5-0.125, 20.0-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](5.0-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](6.0-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
% Coverage 3
\draw(6.5, 22.25) rectangle ++(2,1.5);
\draw(6.5, 23.000) -- ++(2,0);
\draw(7.5, 23.375) node(){100\%};
\draw(7.5, 22.625) node(){\textbf{coverage}};
\draw(7.5-0.125, 22.0) rectangle ++(0.25,0.25);
\draw[fill=black](7.0-0.125, 23.75) rectangle ++(0.25,0.25);
\draw[fill=black](8.0-0.125, 23.75) rectangle ++(0.25,0.25);
% Split 1:
\draw(7.0, 20.250-0.25) rectangle ++(2,1.5);
\draw(7.0, 21.000-0.25) -- ++(2,0);
\draw(8.0, 21.000-0.25) -- ++(0,0.75);
\draw(7.5, 21.375-0.25) node(){44\%};
\draw(8.5, 21.375-0.25) node(){56\%};
\draw(8.0, 20.625-0.25) node(){\textbf{split}};
\draw(8.0-0.125, 20.0-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](7.5-0.125, 21.5) rectangle ++(0.25,0.25);
\draw[fill=black](8.5-0.125, 21.5) rectangle ++(0.25,0.25);
% Coverage 4
\draw(9.5, 20.250-0.25) rectangle ++(2,1.5);
\draw(9.5, 21.000-0.25) -- ++(2,0);
\draw(10.5, 21.375-0.25) node(){100\%};
\draw(10.5, 20.625-0.25) node(){\textbf{coverage}};
\draw(10.5-0.125, 20.0-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](10.0-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](11.0-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
% Coverage 5
\draw(12.0, 20.250-0.25) rectangle ++(2,1.5);
\draw(12.0, 21.000-0.25) -- ++(2,0);
\draw(13.0, 21.375-0.25) node(){100\%};
\draw(13.0, 20.625-0.25) node(){\textbf{coverage}};
\draw(13.0-0.125, 20.0-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](12.5-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](13.5-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
% Coverage 5
\draw(14.5, 20.250-0.25) rectangle ++(2,1.5);
\draw(14.5, 21.000-0.25) -- ++(2,0);
\draw(15.5, 21.375-0.25) node(){50\%};
\draw(15.5, 20.625-0.25) node(){\textbf{coverage}};
\draw(15.5-0.125, 20.0-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](16.0-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
\draw[fill=black](15.0-0.125, 21.75-0.25) rectangle ++(0.25,0.25);
% Adds
\draw( 9.25,23.0) circle(0.25) node(){+};
\draw( 10.00,24.25) circle(0.25) node(){+};
\draw( 12.50,24.75) circle(0.25) node(){+};
\draw(19, 24.0) circle(0.5) node(){SDB};
%Connections:
\draw[-Triangle,black!30!red] (4.0,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (6.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (8.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (10.0,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (12.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (15.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (16.5,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (18.0,18.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (4.0,19.00) |- ++(-1,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (6.5,19.00) |- ++(-1,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (6.5,19.00) |- ++(-1,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (8.5,19.00) |- ++(-0.5,0.40) -- ++(0,0.35);
\draw[black!30!blue,fill=black!30!blue](8.5,19.4) circle(0.05);
\draw[-Triangle,black!30!blue] (8.5,19.40) -| ++(+8.5,6.10);
\draw[-Triangle,black!30!blue] (10.0,19.00) |- ++(+0.5,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (12.5,19.00) |- ++(+0.5,0.25) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (15.5,19.00) -- ++(0,0.75);
\draw[-Triangle,black!30!red] (2.5,21.75) -- ++(0,3.75);
\draw[-Triangle,black!30!blue] (3.5,21.75) |- ++(+6.25,2.5);
\draw[-Triangle,black!30!red] (5.0,21.75) -- ++(0,3.75);
\draw[-Triangle,black!30!blue] (6.0,21.75) |- ++(+6.25,3.00);
\draw[-Triangle,black!30!red] (7.5,21.75) -- ++(0,0.25);
\draw[-Triangle,black!30!red] (8.5,21.75) |- ++(0.75,0.25) -- ++(0,0.75);
\draw[-Triangle,black!30!blue] (10.0,21.75) -- ++(0,2.25);
\draw[-Triangle,black!30!blue] (12.5,21.75) -- ++(0,2.75);
\draw[-Triangle,black!30!red] (15.0,21.75) |- ++(-5.5,1.25);
\draw[-Triangle,black!30!red] (7.00,24.0) -- ++(0,1.50);
\draw[-Triangle,black!30!red] (9.25,23.25) -- ++(0,2.25);
\draw[-Triangle,black!30!blue] (10.0,24.5) -- ++(0,1.00);
\draw[-Triangle,black!30!blue] (12.5,25.0) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (16.0,21.75) -- ++(0,3.75);
\draw[-Triangle,black!30!red] (16.5,19.00) |- ++(1.00,0.25) -- ++(0,6.25);
\draw[-Triangle,black!30!red] (18.0,19.00) -- ++(0,6.5);
\draw[-Triangle,black!30!blue] (19.0,24.50) -- ++(0,1.0);
%Out Blocks:
\draw[fill=black]( 2.5-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 5-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 7-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 9.25-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 10.0-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 12.5-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 16.0-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 17.0-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 17.5-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 18.0-0.125, 25.5) rectangle ++(0.25,0.25);
\draw[fill=black]( 19.0-0.125, 25.5) rectangle ++(0.25,0.25);
%SECDED TRIM
\draw[fill=white](0,26.5) rectangle ++(20,4.5);
%In Blocks:
\draw( 2.5-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 5-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 7-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 9.25-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 10.0-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 12.5-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 16.0-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 17.0-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 17.5-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
\draw( 18.0-0.125, 26.5-0.25) rectangle ++(0.25,0.25);
% Split 1:
\draw(1.0, 27.500) rectangle ++(1,1.5);
\draw(1.0, 28.250) -- ++(1,0);
\draw(1.5, 28.675) node(){89\%};
\draw(1.5, 27.875) node(){\textbf{split}};
\draw[fill=black](1.5-0.125, 29.0) rectangle ++(0.25,0.25);
\draw(1.5-0.125, 27.25) rectangle ++(0.25,0.25);
% Split 2:
\draw(2.5, 27.50) rectangle ++(2,1.5);
\draw(2.5, 28.25) -- ++(2,0);
\draw(3.5, 28.25) -- ++(0,0.75);
\draw(3.0, 28.675) node(){20\%};
\draw(4.0, 28.675) node(){79\%};
\draw(3.5, 27.875) node(){\textbf{split}};
\draw[fill=black](3.0-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black](4.0-0.125, 29.0) rectangle ++(0.25,0.25);
\draw(3.5-0.125, 27.25) rectangle ++(0.25,0.25);
% Split 3:
\draw( 5.0, 27.50) rectangle ++(3,1.5);
\draw( 5.0, 28.25) -- ++(3,0);
\draw( 6.0, 28.25) -- ++(0,0.75);
\draw( 7.0, 28.25) -- ++(0,0.75);
\draw( 5.5, 28.675) node(){3\%};
\draw( 6.5, 28.675) node(){27\%};
\draw( 7.5, 28.675) node(){70\%};
\draw( 6.5, 27.875) node(){\textbf{split}};
\draw[fill=black]( 5.5-0.125, 29) rectangle ++(0.25,0.25);
\draw[fill=black]( 6.5-0.125, 29) rectangle ++(0.25,0.25);
\draw[fill=black]( 7.5-0.125, 29) rectangle ++(0.25,0.25);
\draw(6.5-0.125, 27.25) rectangle ++(0.25,0.25);
% Split 4:
\draw(10.0, 27.500) rectangle ++(1,1.5);
\draw(10.0, 28.250) -- ++(1,0);
\draw(10.5, 28.675) node(){89\%};
\draw(10.5, 27.875) node(){\textbf{split}};
\draw[fill=black](10.5-0.125, 29.0) rectangle ++(0.25,0.25);
\draw(10.5-0.125, 27.25) rectangle ++(0.25,0.25);
% Split 5:
\draw(11.5, 27.50) rectangle ++(2,1.5);
\draw(11.5, 28.25) -- ++(2,0);
\draw(12.5, 28.25) -- ++(0,0.75);
\draw(12.0, 28.675) node(){20\%};
\draw(13.0, 28.675) node(){79\%};
\draw(12.5, 27.875) node(){\textbf{split}};
\draw[fill=black](12.0-0.125, 29.0) rectangle ++(0.25,0.25);
\draw[fill=black](13.0-0.125, 29.0) rectangle ++(0.25,0.25);
\draw(12.5-0.125, 27.25) rectangle ++(0.25,0.25);
% Split 6:
\draw(14.0, 27.50) rectangle ++(3,1.5);
\draw(14.0, 28.25) -- ++(3,0);
\draw(15.0, 28.25) -- ++(0,0.75);
\draw(16.0, 28.25) -- ++(0,0.75);
\draw(14.5, 28.675) node(){3\%};
\draw(15.5, 28.675) node(){27\%};
\draw(16.5, 28.675) node(){70\%};
\draw(15.5, 27.875) node(){\textbf{split}};
\draw[fill=black](14.5-0.125, 29) rectangle ++(0.25,0.25);
\draw[fill=black](15.5-0.125, 29) rectangle ++(0.25,0.25);
\draw[fill=black](16.5-0.125, 29) rectangle ++(0.25,0.25);
\draw(15.5-0.125, 27.25) rectangle ++(0.25,0.25);
% Adds
\draw( 3.0,29.875) circle(0.25) node(){+};
\draw( 5.5,30.375) circle(0.25) node(){+};
\draw(12.0,29.875) circle(0.25) node(){+};
\draw(14.5,30.375) circle(0.25) node(){+};
%Out Blocks:
\draw[fill=black]( 3.0-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 5.5-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 7.5-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black]( 9.25-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black](12.0-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black](14.5-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black](16.5-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black](17.5-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black](18.5-0.125, 31.0) rectangle ++(0.25,0.25);
\draw[fill=black](19.5-0.125, 31.0) rectangle ++(0.25,0.25);
% Connections
\draw[-Triangle,black!30!red] ( 2.50,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 5.00,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 7.00,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 9.25,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (10.00,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (12.50,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (16.00,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!blue] (17.00,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (17.50,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] (18.00,25.75) -- ++(0,0.50);
\draw[-Triangle,black!30!red] ( 9.25,26.5) -- ++(0,4.50);
\draw[-Triangle,black!30!red] ( 2.50,26.5) |- ++(-1.0,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] ( 5.00,26.5) |- ++(-1.5,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] ( 7.00,26.5) |- ++(-0.5,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (10.00,26.5) |- ++(+0.5,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!blue] (12.50,26.5) -- ++(0,0.75);
\draw[-Triangle,black!30!blue] (16.00,26.5) |- ++(1.5,0.75) -- ++(0,4.0);
\draw[-Triangle,black!30!blue] (17.00,26.5) |- ++(-1.5,0.25) -- ++(0,0.5);
\draw[-Triangle,black!30!red] (17.50,26.5) |- ++(+1.0,0.50) -- ++(0,4.00);
\draw[-Triangle,black!30!red] (18.00,26.5) |- ++(+1.5,0.25) -- ++(0,4.25);
\draw[-Triangle,black!30!red] (1.50,29.25) |- ++(1.25,0.625);
\draw[-Triangle,black!30!red] (3.00,29.25) -- ++(0,0.375);
\draw[-Triangle,black!30!red] (5.50,29.25) |- ++(-2.25,0.625);
\draw[-Triangle,black!30!red] (4.00,29.25) |- ++(1.25,1.125);
\draw[-Triangle,black!30!red] (6.50,29.25) |- ++(-0.75,1.125);
\draw[-Triangle,black!30!red] (7.50,29.25) -- ++(0,1.75);
\draw[-Triangle,black!30!red] (3.00,30.125) -- ++(0,0.875);
\draw[-Triangle,black!30!red] (5.5,30.625) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (1.50+9,29.25) |- ++(1.25,0.625);
\draw[-Triangle,black!30!blue] (3.00+9,29.25) -- ++(0,0.375);
\draw[-Triangle,black!30!blue] (5.50+9,29.25) |- ++(-2.25,0.625);
\draw[-Triangle,black!30!blue] (4.00+9,29.25) |- ++(1.25,1.125);
\draw[-Triangle,black!30!blue] (6.50+9,29.25) |- ++(-0.75,1.125);
\draw[-Triangle,black!30!blue] (7.50+9,29.25) -- ++(0,1.75);
\draw[-Triangle,black!30!blue] (3.00+9,30.125) -- ++(0,0.875);
\draw[-Triangle,black!30!blue] (5.50+9,30.625) -- ++(0,0.375);
% Final:
\node[circle,draw, minimum size=1cm] (RES) at (5.5,34) {+};
\draw[-Triangle,black!30!red] ( 3.00,31.25) -- ++(0,0.5) -- (RES);
\draw[-Triangle,black!30!red] ( 5.50,31.25) -- ++(0,0.5) -- (RES);
\draw[-Triangle,black!30!red] ( 7.50,31.25) -- ++(0,0.5) -- (RES);
\draw[-Triangle,black!30!red] ( 9.20,31.25) -- ++(0,0.5) -- (RES);
\draw[-Triangle,black!30!red] (18.50,31.25) -- ++(0,0.25) -- ++(-8,0) -- (RES);
\draw[-Triangle,black!30!red] (19.50,31.25) -- ++(0,0.50) -- ++(-8,0) -- (RES);
\node[circle,draw, minimum size=1cm] (LAT) at (14.5,34) {+};
\draw[-Triangle,black!30!blue] (12.00,31.25) -- ++(0,1.0) -- (LAT);
\draw[-Triangle,black!30!blue] (14.50,31.25) -- ++(0,1.0) -- (LAT);
\draw[-Triangle,black!30!blue] (16.50,31.25) -- ++(0,1.0) -- (LAT);
\draw[-Triangle,black!30!blue] (17.50,31.25) -- ++(0,1.0) -- (LAT);
% Calculate ASIL:
\draw(3,35.5) rectangle (17,36.5);
\draw(10,36.0) node(){\textbf{Calculate ASIL}};
\draw( 5.5-0.125, 35.5-0.25) rectangle ++(0.25,0.25);
\draw(14.5-0.125, 35.5-0.25) rectangle ++(0.25,0.25);
% Last connections:
\draw[-Triangle,black!30!blue] (14.00,7.25) |- ++(7.5,0.25) -- ++(0,25.5) -- (LAT);
\draw[-Triangle,black!30!blue] (19.00,25.75) |- ++(1.5,0.25) -- ++(0,6.0) -- (LAT);
\draw[-Triangle,black!30!red] (RES) -- ++ (0,1.25);
\draw[-Triangle,black!30!blue] (LAT) -- ++ (0,1.25);
% Descriptions:
% LEVEL 1
\draw[black!30!red] ( 5.5,7.625) node(){\scriptsize SBE};
\draw[black!30!red] ( 5.5,7.375) node(){\tiny 0};
\draw[black!30!red] ( 6.5,7.625) node(){\scriptsize DBE};
\draw[black!30!red] ( 6.5,7.375) node(){\tiny 142.79};
\draw[black!30!red] ( 7.5,7.625) node(){\scriptsize TBE};
\draw[black!30!red] ( 7.5,7.375) node(){\tiny 29.25};
\draw[black!30!blue] ( 8.5,7.625) node(){\scriptsize SBE};
\draw[black!30!blue] ( 8.5,7.375) node(){\tiny 1610};
\draw[black!30!blue] ( 9.5,7.625) node(){\scriptsize DBE};
\draw[black!30!blue] ( 9.5,7.375) node(){\tiny 172};
\draw[black!30!red] (10.5,7.625) node(){\scriptsize MBE};
\draw[black!30!red] (10.5,7.375) node(){\tiny 172};
\draw[black!30!red] (11.5,7.625) node(){\scriptsize WD};
\draw[black!30!red] (11.5,7.375) node(){\tiny 172};
% LEVEL 2
\draw[black!30!red] ( 5.5,12.625+0.5) node(){\scriptsize SBE};
\draw[black!30!red] ( 5.5,12.375+0.5) node(){\tiny 15.97};
\draw[black!30!red] ( 8.0,12.625+0.5) node(){\scriptsize DBE};
\draw[black!30!red] ( 8.0,12.375+0.5) node(){\tiny 131.47};
\draw[black!30!red] (10.0,12.625+0.5) node(){\scriptsize TBE};
\draw[black!30!red] (10.0,12.375+0.5) node(){\tiny 24.27};
\draw[black!30!blue] (11.5,12.625+0.5) node(){\scriptsize SBE};
\draw[black!30!blue] (11.5,12.375+0.5) node(){\tiny 1532.3};
\draw[black!30!blue] (14.0,12.625+0.5) node(){\scriptsize DBE};
\draw[black!30!blue] (14.0,12.375+0.5) node(){\tiny 153.1};
\draw[black!30!red] (15.0,12.625+0.5) node(){\scriptsize MBE};
\draw[black!30!red] (15.0,12.375+0.5) node(){\tiny 172};
\draw[black!30!red] (16.0,12.625+0.5) node(){\scriptsize WD};
\draw[black!30!red] (16.0,12.375+0.5) node(){\tiny 172};
% Level 3:
\draw[black!30!red] ( 3.5,18.625) node(){\scriptsize SBE};
\draw[black!30!red] ( 3.5,18.375) node(){\tiny 80.1 };
\draw[black!30!red] ( 6.0,18.625) node(){\scriptsize DBE};
\draw[black!30!red] ( 6.0,18.375) node(){\tiny 51.5};
\draw[black!30!red] ( 8.0,18.625) node(){\scriptsize TBE};
\draw[black!30!red] ( 8.0,18.375) node(){\tiny 4.25};
\draw[black!30!blue] ( 9.5,18.625) node(){\scriptsize SBE};
\draw[black!30!blue] ( 9.5,18.375) node(){\tiny $6\cdot10^8$ };
\draw[black!30!blue] (12.0,18.625) node(){\scriptsize DBE};
\draw[black!30!blue] (12.0,18.375) node(){\tiny 48.1};
\draw[black!30!red] (15.0,18.625) node(){\scriptsize MBE};
\draw[black!30!red] (15.0,18.375) node(){\tiny 172};
\draw[black!30!red] (16.0,18.625) node(){\scriptsize WD};
\draw[black!30!red] (16.0,18.375) node(){\tiny 172};
\draw[black!30!red] (17.5,18.625) node(){\scriptsize AZ};
\draw[black!30!red] (17.5,18.375) node(){\tiny 172};
% Level 3:
\draw[black!30!red] ( 2.0,25.625+0.5) node(){\scriptsize SBE};
\draw[black!30!red] ( 2.0,25.375+0.5) node(){\tiny 0};
\draw[black!30!red] ( 4.5,25.625+0.5) node(){\scriptsize DBE};
\draw[black!30!red] ( 4.5,25.375+0.5) node(){\tiny 0};
\draw[black!30!red] ( 6.5,25.625+0.5) node(){\scriptsize TBE};
\draw[black!30!red] ( 6.5,25.375+0.5) node(){\tiny 0};
\draw[black!30!red] ( 8.5,25.625+0.5) node(){\scriptsize MBE};
\draw[black!30!red] ( 8.5,25.375+0.5) node(){\tiny 88.4};
\draw[black!30!red] (18.5,25.625+0.5) node(){\scriptsize AZ};
\draw[black!30!red] (18.5,25.375+0.5) node(){\tiny 172};
\draw[black!30!blue] (10.5,25.625+0.5) node(){\scriptsize SBE};
\draw[black!30!blue] (10.5,25.375+0.5) node(){\tiny 80.1};
\draw[black!30!blue] (12.0,25.625+0.5) node(){\scriptsize DBE};
\draw[black!30!blue] (12.0,25.375+0.5) node(){\tiny 51.5};
\draw[black!30!blue] (15.5,25.625+0.5) node(){\scriptsize MBE};
\draw[black!30!blue] (15.5,25.375+0.5) node(){\tiny 86.02};
\draw[black!30!blue] (16.5,25.625+0.5) node(){\scriptsize TBE};
\draw[black!30!blue] (16.5,25.375+0.5) node(){\tiny 4.25};
% Level 4:
\draw[black!30!red] ( 2.5,31.625+0.0) node(){\scriptsize SBE};
\draw[black!30!red] ( 2.5,31.375+0.0) node(){\tiny 0};
\draw[black!30!red] ( 5.0,31.625+0.0) node(){\scriptsize DBE};
\draw[black!30!red] ( 5.0,31.375+0.0) node(){\tiny 0};
\draw[black!30!red] ( 7.0,31.625+0.0) node(){\scriptsize TBE};
\draw[black!30!red] ( 7.0,31.375+0.0) node(){\tiny 0};
\draw[black!30!red] ( 8.5,31.625+0.0) node(){\scriptsize MBE};
\draw[black!30!red] ( 8.5,31.375+0.0) node(){\tiny 88.4};
\draw[black!30!red] (19.0,31.625+0.0) node(){\scriptsize WD};
\draw[black!30!red] (19.0,31.375+0.0) node(){\tiny 172};
\draw[black!30!red] (20.0,31.625+0.0) node(){\scriptsize AZ};
\draw[black!30!red] (20.0,31.375+0.0) node(){\tiny 172};
\draw[black!30!blue] (11.5,31.625+0.0) node(){\scriptsize SBE};
\draw[black!30!blue] (11.5,31.375+0.0) node(){\tiny 81.7};
\draw[black!30!blue] (14.0,31.625+0.0) node(){\scriptsize DBE};
\draw[black!30!blue] (14.0,31.375+0.0) node(){\tiny 41.8};
\draw[black!30!blue] (16.0,31.625+0.0) node(){\scriptsize TBE};
\draw[black!30!blue] (16.0,31.375+0.0) node(){\tiny 3};
\draw[black!30!blue] (17.0,31.625+0.0) node(){\scriptsize MBE};
\draw[black!30!blue] (17.0,31.375+0.0) node(){\tiny 86.02};
%Level 5:
\draw[black!30!red] ( 6.75,34.75) node(){$\lambda_\mathrm{RF}=528.4$};
\draw[black!30!blue] (16.00,34.75) node(){$\lambda_\mathrm{MFP,L}=212.7$};
\draw[black!30!red] (19.0,36.5-0.25) node(){$\mathrm{SPFM}=87.45\%$};
\draw[black!30!blue] (19.0,36.0-0.25) node(){$\mathrm{LFM}=94.20\%$};
%SBE Fits:
\draw( 7.0,0.75) node(){\tiny 1610};
\draw( 9.0,0.75) node(){\tiny 172};
\draw(11.0,0.75) node(){\tiny 172};
\draw(13.0,0.75) node(){\tiny 172};
% DQ:
\draw(14.25,14.5) node(){\tiny $6\cdot 10^8$};
\draw(17.5,13.75) node(){\tiny DBE and MBE not drawn for sake of space};
% AZ:
\draw(18.0,14.75) node(){\tiny 172};
%SB SDB
\draw(14,4.75) node(){\tiny 0.1};
\draw(19,23.75) node(){\tiny 0.1};
\draw(3, 34.0) circle(0.5) node(){Other};
\draw(3,33.75) node(){\tiny 96};
\draw[-Triangle,black!30!red,dashed] (3.5,34) -- ++ (1.5,0);
%Legends:
\draw(20,3.5) node(){\Large \textbf{Legend:}};
\draw[black!30!red](20,2.75) node(){\Large $\lambda_\mathrm{RF}$};
\draw[black!30!blue](20,2.0) node(){\Large $\lambda_\mathrm{MPF,L}$};
\draw[gray!50](22,10.0) node(){\Huge \bf DRAM};
\draw[gray!50](22,16.0) node(){\Huge \bf BUS};
\draw[gray!50](22,26.0) node(){\Huge \bf SoC};
\draw(16,1.0) node(){DRAM};
\draw(16,5.0) node(){SEC};
\draw(18.5,10.5) node(){DRAM-TRIM};
\draw(22.0,15.0) node(){BUS-TRIM};
\draw(21.5,22.5) node(){SEC-DED};
\draw(22.5,27.5) node(){SEC-DED-TRIM};
\end{tikzpicture}%
}

20000
random_with_ECC.csv Normal file

File diff suppressed because it is too large Load Diff

20000
random_without_ECC.csv Normal file

File diff suppressed because it is too large Load Diff

58229
references_JR.bib Normal file

File diff suppressed because it is too large Load Diff

74
result1.tex Normal file
View File

@@ -0,0 +1,74 @@
\begin{tikzpicture}
\begin{axis}[
xmode=log,
ymode=log,
xlabel={$\lambda_\mathrm{DRAM}$ [FIT]},
ylabel={$\lambda_\mathrm{out}$ [FIT]},
xmin=1, xmax=2500,
ymin=0.1, ymax=800,
%xtick={0,20,40,60,80,100},
%ytick={0,20,40,60,80,100,120},
legend pos=north west,
ymajorgrids=false,
%grid style=dashed,
width=\linewidth,
height=8.25cm,
]
% LPDDR5 RES
\addplot[smooth,color=red, very thick]
coordinates {
(1, 0.188034)
(2, 0.376069)
(5, 0.940172)
(10, 1.88034)
(25, 4.70086)
(50, 9.40172)
(100, 18.8034)
(500, 94.0172)
(1000, 188.034)
(2000, 376.069)
(2500, 470.086)
};
% LPDDR5 LAT
\addplot[smooth,color=blue, very thick]
coordinates {
(1, 0.292388)
(2, 0.384775)
(5, 0.661939)
(10, 1.12388)
(25, 2.50969)
(50, 4.81939)
(100, 9.43877)
(500, 46.3939)
(1000, 92.5877)
(2000, 184.975)
(2500, 231.169)
};
\addplot[smooth,color=red!30, style=dashed]
coordinates {
(1, 10)
(2500, 10)
};
\addplot[smooth,color=red!30, style=dashed]
coordinates {
(1, 100)
(2500, 100)
};
\node[color=red!30] at (axis cs: 10,15) {ASIL\,D ($\lambda_\mathrm{RF} < 10$)};
\node[color=red!30] at (axis cs: 60,150) {ASIL\,B/C ($\lambda_\mathrm{RF} < 100$)};
\addplot[thick, samples=50, smooth, red!30, dashed] coordinates {(53,0.1)(53,10)};
\legend{
$\lambda_\mathrm{RF}$,
$\lambda_\mathrm{MPF,L}$
}
\end{axis}
\end{tikzpicture}

96
result2.tex Normal file
View File

@@ -0,0 +1,96 @@
\begin{tikzpicture}
\begin{axis}[
xmode=log,
xmin=1, xmax=2500,
ymin=50, ymax=110,
ylabel={SPFM and LFM [\%]},
xlabel={$\lambda_\mathrm{DRAM}$ [FIT]},
width=\linewidth,
height=8.25cm,
]
% LPDDR5 SPFM
\addplot[smooth,color=red, very thick]
coordinates {
(1, 81.1966)
(2, 81.1966)
(5, 81.1966)
(10, 81.1966)
(25, 81.1966)
(50, 81.1966)
(100, 81.1966)
(500, 81.1966)
(1000, 81.1966)
(2000, 81.1966)
(2500, 81.1966)
};
% LPDDR5 LFM
\addplot[smooth,color=blue, very thick]
coordinates {
(1, 63.9901)
(2, 76.3059)
(5, 83.6954)
(10, 86.1586)
(25, 87.6365)
(50, 88.1291)
(100, 88.3754)
(500, 88.5725)
(1000, 88.5971)
(2000, 88.6094)
(2500, 88.6119)
};
\legend{
SPFM,
LFM
}
\addplot[smooth,color=red!30]
coordinates {
(1, 90)
(2500, 90)
};
\addplot[smooth,color=red!30, style=dashed]
coordinates {
(1, 97)
(2500, 97)
};
\addplot[smooth,color=red!30, style=dashed]
coordinates {
(1, 99)
(2500, 99)
};
\addplot[smooth,color=blue!30, style=dashed]
coordinates {
(1, 90)
(2500, 90)
};
\addplot[smooth,color=blue!30, style=dashed]
coordinates {
(1, 80)
(2500, 80)
};
\addplot[smooth,color=blue!30, style=dashed]
coordinates {
(1, 60)
(2500, 60)
};
\node[color=blue!30] at (axis cs: 600,92) {\scriptsize ASIL\,D (LFM $> 90\%$)};
\node[color=blue!30] at (axis cs: 600,82) {\scriptsize ASIL\,C (LFM $> 80\%$)};
\node[color=blue!30] at (axis cs: 600,62) {\scriptsize ASIL\,B (LFM $> 60\%$)};
\node[color=red!30] at (axis cs: 4,92) {\scriptsize ASIL\,B (SPFM $>90\%$)};
\node[color=red!30] at (axis cs: 15.8,102) {\scriptsize ASIL\,C (SPFM $>97\%$), ASIL-D (SPFM $>99\%$)};
\addplot[thick, samples=50, smooth, blue!30, dashed] coordinates {(3,50)(3,80)};
\end{axis}
\end{tikzpicture}

20000
seq_with_ECC.csv Normal file

File diff suppressed because it is too large Load Diff

20000
seq_without_ECC.csv Normal file

File diff suppressed because it is too large Load Diff

1779
sn-jnl.cls Normal file

File diff suppressed because it is too large Load Diff

3161
sn-mathphys.bst Normal file

File diff suppressed because it is too large Load Diff

BIN
user-manual.pdf Normal file

Binary file not shown.