2019-04-10 02:24:37 -05:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
source .travis/common.sh
|
|
|
|
set -e
|
|
|
|
|
|
|
|
start_section "OpenFPGA.build" "${GREEN}Building..${NC}"
|
2019-08-31 22:42:31 -05:00
|
|
|
mkdir build
|
|
|
|
cd build
|
|
|
|
|
2019-04-10 02:24:37 -05:00
|
|
|
if [[ $TRAVIS_OS_NAME == 'osx' ]]; then
|
2019-08-25 02:28:21 -05:00
|
|
|
cmake .. -DCMAKE_BUILD_TYPE=debug -DENABLE_VPR_GRAPHICS=off
|
2019-08-21 12:08:13 -05:00
|
|
|
else
|
2019-06-03 16:34:26 -05:00
|
|
|
cmake .. -DCMAKE_BUILD_TYPE=debug
|
2019-04-10 02:24:37 -05:00
|
|
|
fi
|
2019-08-31 22:42:31 -05:00
|
|
|
make -j16
|
2019-05-15 17:55:18 -05:00
|
|
|
end_section "OpenFPGA.build"
|
2019-08-31 23:53:42 -05:00
|
|
|
|
2019-05-16 15:30:16 -05:00
|
|
|
|
2019-08-31 23:36:18 -05:00
|
|
|
start_section "OpenFPGA.TaskTun" "${GREEN}..Running_Regression..${NC}"
|
2019-05-16 16:05:34 -05:00
|
|
|
cd -
|
2020-04-12 13:57:13 -05:00
|
|
|
|
|
|
|
###############################################
|
|
|
|
# OpenFPGA with VPR7
|
|
|
|
# TO BE DEPRECATED
|
|
|
|
##############################################
|
2019-11-01 12:09:35 -05:00
|
|
|
echo -e "Testing single-mode architectures";
|
2019-11-02 00:26:08 -05:00
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py single_mode --debug --show_thread_logs
|
2019-11-01 12:09:35 -05:00
|
|
|
#python3 openfpga_flow/scripts/run_fpga_task.py s298
|
|
|
|
|
|
|
|
echo -e "Testing multi-mode architectures";
|
2019-11-05 17:31:42 -06:00
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py multi_mode --maxthreads 4 --debug --show_thread_logs
|
2019-11-05 17:24:39 -06:00
|
|
|
|
2019-11-01 12:09:35 -05:00
|
|
|
echo -e "Testing compact routing techniques";
|
2019-11-02 00:26:08 -05:00
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py compact_routing --debug --show_thread_logs
|
2019-11-01 12:09:35 -05:00
|
|
|
|
|
|
|
echo -e "Testing tileable architectures";
|
2019-11-02 00:26:08 -05:00
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py tileable_routing --debug --show_thread_logs
|
2019-11-01 12:09:35 -05:00
|
|
|
|
|
|
|
echo -e "Testing Verilog generation with explicit port mapping ";
|
2019-11-02 00:26:08 -05:00
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py explicit_verilog --debug --show_thread_logs
|
2019-11-01 12:09:35 -05:00
|
|
|
|
2019-12-30 15:06:20 -06:00
|
|
|
echo -e "Testing Verilog generation with grid pin duplication ";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py duplicate_grid_pin --debug --show_thread_logs
|
|
|
|
|
2020-04-12 13:57:13 -05:00
|
|
|
###############################################
|
|
|
|
# OpenFPGA Shell with VPR8
|
|
|
|
# (Will replace all the old tests)
|
|
|
|
##############################################
|
|
|
|
echo -e "Testing OpenFPGA Shell";
|
|
|
|
|
2020-04-15 16:48:33 -05:00
|
|
|
echo -e "Testing configuration chain of a K4N4 FPGA";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/configuration_chain --debug --show_thread_logs
|
|
|
|
|
2020-04-20 14:16:52 -05:00
|
|
|
echo -e "Testing Verilog generation for a single mode LUT6 FPGA using micro benchmarks";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/single_mode --debug --show_thread_logs
|
|
|
|
|
2020-04-12 13:57:13 -05:00
|
|
|
echo -e "Testing Verilog generation with simple fracturable LUT6 ";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/frac_lut --debug --show_thread_logs
|
|
|
|
|
2020-04-12 15:08:24 -05:00
|
|
|
echo -e "Testing Verilog generation with VPR's untileable routing architecture ";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/untileable --debug --show_thread_logs
|
|
|
|
|
2020-04-12 15:27:05 -05:00
|
|
|
echo -e "Testing Verilog generation with hard adder chain in CLBs ";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/hard_adder --debug --show_thread_logs
|
|
|
|
|
|
|
|
echo -e "Testing Verilog generation with 16k block RAMs ";
|
2020-04-12 15:32:09 -05:00
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/bram/dpram16k --debug --show_thread_logs
|
2020-04-12 15:27:05 -05:00
|
|
|
|
2020-04-12 15:37:08 -05:00
|
|
|
echo -e "Testing Verilog generation with 16k block RAMs spanning two columns ";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/bram/wide_dpram16k --debug --show_thread_logs
|
|
|
|
|
2020-04-12 16:01:47 -05:00
|
|
|
echo -e "Testing Verilog generation with different I/O capacities on each side of an FPGA ";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/io/multi_io_capacity --debug --show_thread_logs
|
|
|
|
|
|
|
|
echo -e "Testing Verilog generation with I/Os only on left and right sides of an FPGA ";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/io/reduced_io --debug --show_thread_logs
|
|
|
|
|
2020-04-12 16:43:19 -05:00
|
|
|
echo -e "Testing Verilog generation with adder chain across an FPGA";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/fabric_chain/adder_chain --debug --show_thread_logs
|
|
|
|
|
2020-04-12 16:28:22 -05:00
|
|
|
echo -e "Testing Verilog generation with shift register chain across an FPGA";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/fabric_chain/register_chain --debug --show_thread_logs
|
|
|
|
|
|
|
|
echo -e "Testing Verilog generation with scan chain across an FPGA";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/fabric_chain/scan_chain --debug --show_thread_logs
|
|
|
|
|
2020-04-12 16:39:45 -05:00
|
|
|
echo -e "Testing Verilog generation with routing mutliplexers implemented by tree structure";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/mux_design/tree_structure --debug --show_thread_logs
|
|
|
|
|
|
|
|
echo -e "Testing Verilog generation with routing mutliplexers implemented by standard cell MUX2";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/mux_design/stdcell_mux2 --debug --show_thread_logs
|
|
|
|
|
2020-04-12 20:55:47 -05:00
|
|
|
echo -e "Testing Verilog generation with behavioral description";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/behavioral_verilog --debug --show_thread_logs
|
|
|
|
|
2020-04-12 21:00:20 -05:00
|
|
|
echo -e "Testing implicit Verilog generation";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/implicit_verilog --debug --show_thread_logs
|
|
|
|
|
2020-04-12 21:06:40 -05:00
|
|
|
echo -e "Testing Verilog generation with flatten routing modules";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/flatten_routing --debug --show_thread_logs
|
|
|
|
|
2020-04-12 21:10:51 -05:00
|
|
|
echo -e "Testing Verilog generation with duplicated grid output pins";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/duplicated_grid_pin --debug --show_thread_logs
|
|
|
|
|
2020-04-22 15:42:30 -05:00
|
|
|
echo -e "Testing Verilog generation with spy output pads";
|
|
|
|
python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/spypad --debug --show_thread_logs
|
|
|
|
|
2020-04-28 19:16:52 -05:00
|
|
|
# Verify MCNC big20 benchmark suite with ModelSim
|
|
|
|
# Please make sure you have ModelSim installed in the environment
|
|
|
|
# Otherwise, it will fail
|
|
|
|
#python3 openfpga_flow/scripts/run_fpga_task.py openfpga_shell/mcnc_big20 --debug --show_thread_logs --maxthreads 20
|
|
|
|
#python3 openfpga_flow/scripts/run_modelsim.py openfpga_shell/mcnc_big20 --run_sim
|
|
|
|
|
2019-08-31 23:36:18 -05:00
|
|
|
end_section "OpenFPGA.TaskTun"
|