mirror of
https://github.com/openhwgroup/cvw
synced 2025-01-24 13:34:28 +00:00
22 lines
1.4 KiB
Bash
Executable File
22 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
# simulate with Verilator
|
|
|
|
# verilator -CFLAGS -DVL_DEBUG -CFLAGS -D_GLIBCXX_DEBUG -CFLAGS -ggdb -LDFLAGS -ggdb -CFLAGS -fsanitize=address,undefined -LDFLAGS -fsanitize=address,undefined --timescale "1ns/1ns" --timing --binary --top-module testbench "-I../config/shared" "-I../config/rv64gc" ../src/cvw.sv ../testbench/testbench.sv ../testbench/common/*.sv ../src/*/*.sv ../src/*/*/*.sv --relative-includes
|
|
# verilator -GTEST="arch64i" --timescale "1ns/1ns" --timing --binary --top-module testbench "-I../config/shared" "-I../config/rv64gc" ../src/cvw.sv ../testbench/testbench.sv ../testbench/common/*.sv ../src/*/*.sv ../src/*/*/*.sv --relative-includes
|
|
|
|
export PATH=$PATH:/usr/local/bin/
|
|
verilator=`which verilator`
|
|
|
|
basepath=$(dirname $0)/..
|
|
#for config in rv32e rv64gc rv32gc rv32imc rv32i rv64i rv64fpquad; do
|
|
for config in rv64gc; do
|
|
echo "$config simulating..."
|
|
# not working: -GTEST="arch64i"
|
|
if !($verilator --timescale "1ns/1ns" --timing --binary "$@" -GTEST="arch64i" --top-module testbench "-I$basepath/config/shared" "-I$basepath/config/$config" $basepath/src/cvw.sv $basepath/testbench/testbench.sv $basepath/testbench/common/*.sv $basepath/src/*/*.sv $basepath/src/*/*/*.sv --relative-includes ); then
|
|
echo "Exiting after $config lint due to errors or warnings"
|
|
exit 1
|
|
fi
|
|
./obj_dir/Vtestbench
|
|
done
|
|
echo "Verilation complete"
|