summaryrefslogtreecommitdiffstats
path: root/intro.tex
diff options
context:
space:
mode:
authorYann Herklotz <git@yannherklotz.com>2020-09-15 02:27:51 +0100
committerYann Herklotz <git@yannherklotz.com>2020-09-15 02:27:51 +0100
commita5507ce92f57bafa51131386a7e2e0bfe62c26e8 (patch)
treee897821e035acb858187276a6f43e751b4b830bf /intro.tex
parent8922c77f9ba66a9232a106ad5635b7a70c1d9630 (diff)
downloadfccm21_esrhls-a5507ce92f57bafa51131386a7e2e0bfe62c26e8.tar.gz
fccm21_esrhls-a5507ce92f57bafa51131386a7e2e0bfe62c26e8.zip
Add more stuff
Diffstat (limited to 'intro.tex')
-rw-r--r--intro.tex2
1 files changed, 1 insertions, 1 deletions
diff --git a/intro.tex b/intro.tex
index 2569fe9..ae8da19 100644
--- a/intro.tex
+++ b/intro.tex
@@ -65,7 +65,7 @@ This paper reports on our campaign to test HLS tools by fuzzing.
\item Our testing campaign revealed that all three tools could be made to crash while compiling or to generate wrong RTL. In total, we found \ref{XX} bugs across the three tools, all of which have been reported to the respective developers, and \ref{XX} of which have been confirmed at the time of writing.
- \item To investigate whether HLS tools are getting more or less reliable over time, we also tested three different versions of Vivado HLS (2018.3, 2019.1, and 2019.2). \JW{Put a sentence here summarising our findings from this experiment, once we have them.}\YH{Yes, will do that as soon as I have them.}
+ \item To investigate whether HLS tools are getting more or less reliable over time, we also tested three different versions of Vivado HLS (2018.3, 2019.1, and 2019.2). We found that in general there about half as many failures in versions 2019.1 and 2019.2 compared to 2018.3. However, there were also test cases that only failed in versions 2019.1 and 2019.2, meaning bugs were probably introduced due to the addition of new features.
\end{itemize}
% we test, and then augment each program with randomly chosen HLS-specific directives. We synthesise each C program to RTL, and use a Verilog simulator to calculate its return value. If synthesis crashes, or if this return value differs from the return value obtained by executing a binary compiled from the C program by GCC, then we have found a candidate bug. We then use trial-and-error to reduce the C program to a minimal version that still triggers a bug.