mirror of
https://github.com/openhwgroup/cvw
synced 2025-01-24 21:44:29 +00:00
61 lines
1.8 KiB
Plaintext
61 lines
1.8 KiB
Plaintext
Procedure for Runnning SoftFloat/TestFloat with Wally
|
|
|
|
1.) First, compile SoftFloat and TestFloat by going to the addins
|
|
directory and finding the specific build directory (e.g.,
|
|
Linux_x86_64-GCC. Currently, we are using v3e of
|
|
SoftFloat/TestFloat. I am not sure of the order, but I always compile
|
|
SoftFloat first as I believe TestFloat uses the static library
|
|
SoftFloat creates.
|
|
|
|
2.) Once compiled both, go to the tests/fp directory and run the
|
|
create_vectors.sh Linux script. In the past, we have automated this,
|
|
but I believe this has fallen into more of a manual state lately.
|
|
|
|
3.) Then, run remove_spaces.sh which will remove spaces from the
|
|
output and put underscores between vectors (this helps differentiate
|
|
the vectors that are generated). Again, this can be combined with
|
|
Step 2.
|
|
|
|
4.) TestFloat is run from wally/cvw/sim and sim-testfloat-batch with
|
|
its respective test. The format is ./sim-testfloat-add add. All of
|
|
the tests are listed below. This can be augmented or added to for
|
|
other FP tests given by the great SoftFloat/TestFloat output.
|
|
|
|
cvtint - test integer conversion unit (fcvtint)
|
|
cvtfp - test floating-point conversion unit (fcvtfp)
|
|
cmp - test comparison unit's LT, LE, EQ opperations (fcmp)
|
|
add - test addition
|
|
fma - test fma
|
|
mul - test mult with fma
|
|
sub - test subtraction
|
|
div - test division
|
|
sqrt - test square root
|
|
all - test everything
|
|
|
|
4a.) Each test will test all its vectors - if you want to test a
|
|
subset of the vectors (e.g., only binary16), you should modify the
|
|
cvw/testbench/tests-fp.h and comment out the tests you do not want to
|
|
test. The best way to do this is to comment out each item out with
|
|
the // comment option in SV. For example,
|
|
|
|
string f128div[] = '{
|
|
// "f128_div_rne.tv",
|
|
// "f128_div_rz.tv",
|
|
// "f128_div_ru.tv",
|
|
// "f128_div_rd.tv",
|
|
// "f128_div_rnm.tv"
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|