| #!/bin/bash |
| set -ex |
| sed 's/SB_MAC16/SB_MAC16_UUT/; /SB_MAC16_UUT/,/endmodule/ p; d;' < ../cells_sim.v > test_dsp_model_uut.v |
| if [ ! -f "test_dsp_model_ref.v" ]; then |
| cat /opt/lscc/iCEcube2.2017.01/verilog/sb_ice_syn.v > test_dsp_model_ref.v |
| fi |
| for tb in testbench \ |
| testbench_comb_8x8_A testbench_comb_8x8_B testbench_comb_16x16 \ |
| testbench_seq_16x16_A testbench_seq_16x16_B \ |
| testbench_comb_8x8_A_signedA testbench_comb_8x8_A_signedB testbench_comb_8x8_A_signedAB \ |
| testbench_comb_8x8_B_signedA testbench_comb_8x8_B_signedB testbench_comb_8x8_B_signedAB \ |
| testbench_comb_16x16_signedA testbench_comb_16x16_signedB testbench_comb_16x16_signedAB |
| do |
| iverilog -s $tb -o test_dsp_model test_dsp_model.v test_dsp_model_uut.v test_dsp_model_ref.v |
| vvp -N ./test_dsp_model |
| done |