OpenFPGA/.travis/fpga_verilog_reg_test.sh

91 lines
4.6 KiB
Bash
Raw Normal View History

2019-04-10 02:24:37 -05:00
#!/bin/bash
set -e
start_section "OpenFPGA.TaskTun" "${GREEN}..Running_Regression..${NC}"
cd ${TRAVIS_BUILD_DIR}
2020-04-12 13:57:13 -05:00
###############################################
# OpenFPGA Shell with VPR8
##############################################
echo -e "FPGA-Verilog Feature Tests";
2020-05-04 13:36:06 -05:00
echo -e "Testing Verilog generation for LUTs: a single mode LUT6 FPGA using micro benchmarks";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py lut_design/single_mode --debug --show_thread_logs
2020-04-20 14:16:52 -05:00
echo -e "Testing Verilog generation for LUTs: simple fracturable LUT6 ";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py lut_design/frac_lut --debug --show_thread_logs
echo -e "Testing Verilog generation for LUTs: LUT6 with intermediate buffers";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py lut_design/intermediate_buffer --debug --show_thread_logs
2020-04-12 13:57:13 -05:00
2020-04-12 15:08:24 -05:00
echo -e "Testing Verilog generation with VPR's untileable routing architecture ";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py untileable --debug --show_thread_logs
2020-04-12 15:08:24 -05:00
2020-04-12 15:27:05 -05:00
echo -e "Testing Verilog generation with hard adder chain in CLBs ";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py hard_adder --debug --show_thread_logs
2020-04-12 15:27:05 -05:00
echo -e "Testing Verilog generation with 16k block RAMs ";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py bram/dpram16k --debug --show_thread_logs
2020-04-12 15:27:05 -05:00
echo -e "Testing Verilog generation with 16k block RAMs spanning two columns ";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py 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 ";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py io/multi_io_capacity --debug --show_thread_logs
2020-04-12 16:01:47 -05:00
echo -e "Testing Verilog generation with I/Os only on left and right sides of an FPGA ";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py io/reduced_io --debug --show_thread_logs
2020-04-12 16:01:47 -05:00
2020-04-12 16:43:19 -05:00
echo -e "Testing Verilog generation with adder chain across an FPGA";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py fabric_chain/adder_chain --debug --show_thread_logs
2020-04-12 16:43:19 -05:00
echo -e "Testing Verilog generation with shift register chain across an FPGA";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py fabric_chain/register_chain --debug --show_thread_logs
echo -e "Testing Verilog generation with scan chain across an FPGA";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py fabric_chain/scan_chain --debug --show_thread_logs
echo -e "Testing Verilog generation with routing multiplexers implemented by tree structure";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py mux_design/tree_structure --debug --show_thread_logs
echo -e "Testing Verilog generation with routing multiplexers implemented by standard cell MUX2";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py mux_design/stdcell_mux2 --debug --show_thread_logs
echo -e "Testing Verilog generation with routing multiplexers implemented by local encoders";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py mux_design/local_encoder --debug --show_thread_logs
2020-05-01 15:56:07 -05:00
echo -e "Testing Verilog generation with behavioral description";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py behavioral_verilog --debug --show_thread_logs
echo -e "Testing implicit Verilog generation";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py implicit_verilog --debug --show_thread_logs
echo -e "Testing Verilog generation with flatten routing modules";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py flatten_routing --debug --show_thread_logs
echo -e "Testing Verilog generation with duplicated grid output pins";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py duplicated_grid_pin --debug --show_thread_logs
2020-04-22 15:42:30 -05:00
echo -e "Testing Verilog generation with spy output pads";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py spypad --debug --show_thread_logs
2020-04-22 15:42:30 -05:00
2020-06-12 12:38:05 -05:00
echo -e "Testing Secured FPGA fabrics";
2020-07-04 20:06:41 -05:00
python3 openfpga_flow/scripts/run_fpga_task.py fabric_key/generate_vanilla_key --debug --show_thread_logs
python3 openfpga_flow/scripts/run_fpga_task.py fabric_key/generate_random_key --debug --show_thread_logs
python3 openfpga_flow/scripts/run_fpga_task.py fabric_key/load_external_key --debug --show_thread_logs
2020-06-12 12:38:05 -05:00
2020-07-22 21:22:59 -05:00
echo -e "Testing Power-gating designs";
python3 openfpga_flow/scripts/run_fpga_task.py power_gated_design/power_gated_inverter --show_thread_logs --debug
echo -e "Testing Depopulated crossbar in local routing";
python3 openfpga_flow/scripts/run_fpga_task.py depopulate_crossbar --debug --show_thread_logs
# Verify MCNC big20 benchmark suite with ModelSim
# Please make sure you have ModelSim installed in the environment
# Otherwise, it will fail
2020-07-04 20:06:41 -05:00
#python3 openfpga_flow/scripts/run_fpga_task.py mcnc_big20 --debug --show_thread_logs --maxthreads 20
#python3 openfpga_flow/scripts/run_modelsim.py mcnc_big20 --run_sim
end_section "OpenFPGA.TaskTun"