Few additions
This commit is contained in:
parent
f0f62595ff
commit
a89ba72d6d
1 changed files with 23 additions and 6 deletions
|
@ -40,8 +40,6 @@
|
|||
\maketitle
|
||||
|
||||
\begin{abstract}
|
||||
\todo{enhance abstract?}
|
||||
|
||||
The present report describes and summarizes my 1st year of Master's
|
||||
degree's internship at the university of Chalmers, Göteborg, Sweden. I
|
||||
worked under supervision of Carl-Johan Seger and Mary Sheeran.
|
||||
|
@ -755,11 +753,16 @@ code takes a circuit, scrambles it as much as possible
|
|||
by randomly changing the order of the circuits and groups, \ldots The circuit
|
||||
is then matched with its unaltered counterpart.
|
||||
|
||||
For the processor described above, it takes about \textbf{477\,ms} to
|
||||
For the processor described above, it takes about \textbf{313\,ms} to
|
||||
prove it equal to its scrambled version, and then the other way around. Yet,
|
||||
the memoized results (essentially the signatures) are kept for the second one,
|
||||
considerably speeding it up: the same program proving only one way takes about
|
||||
\textbf{475\,ms}. \todo{explain why}
|
||||
\textbf{310\,ms}.
|
||||
|
||||
Some signatures of order higher than two need to be computed, and there is a
|
||||
constant time needed to scramble the circuit, etc., which means that the actual
|
||||
equality match time is ridiculously small compared to the signature computation
|
||||
time.
|
||||
|
||||
\paragraph{Match.} The subcircuit match feature was tested by trying to find
|
||||
every occurrence of a pattern that can be easily found using tools like
|
||||
|
@ -773,7 +776,7 @@ used: two tristate gates and a NOT gate, as in Figure~\ref{fig:mux_of_tri}.
|
|||
\end{figure}
|
||||
|
||||
This group appears 73 times in the processor. To match them all (none are
|
||||
overlapping), it takes \textbf{\qtodo{113}\,ms}.
|
||||
overlapping), it takes \textbf{113\,ms}.
|
||||
|
||||
\subsection{Corner cases}\label{ssec:corner_cases}
|
||||
|
||||
|
@ -838,7 +841,21 @@ the gates marked with a red dot. Thus, those signatures are exactly the same.
|
|||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\section*{Conclusion}
|
||||
|
||||
\todo{}
|
||||
At this point, \textit{isomatch} seems to be fast enough to be plugged into
|
||||
VossII, and is being integrated at the moment. On all the cases tested, it
|
||||
returned a correct result, Even though there are a handful of ways to
|
||||
enhance it, make it faster, etc., it is useable in its current state.
|
||||
|
||||
This internship led me to develop new strategies to bypass corner cases where
|
||||
the heuristics were inefficient. But this project also made me practice again
|
||||
my C++, which I had left behind for some time; and forced me to try to have a
|
||||
code as clean as possible, challenging me on small details that were easy to
|
||||
implement, but hard to implement in an understandable way.
|
||||
|
||||
It also diversified my experience with labs, since my only other experience was
|
||||
from my L3's internship in Cambridge.
|
||||
|
||||
\todo{find better}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
|
|
Loading…
Reference in a new issue