diff --git a/fuzzers/050-intpips/Makefile b/fuzzers/050-intpips/Makefile index a28db924..b1d98018 100644 --- a/fuzzers/050-intpips/Makefile +++ b/fuzzers/050-intpips/Makefile @@ -1,26 +1,27 @@ N := 200 -SPECIMENS := $(addprefix specimen_,$(shell seq -f '%03.0f' $(N))) +SPECIMENS := $(addprefix build/specimen_,$(shell seq -f '%03.0f' $(N))) SPECIMENS_OK := $(addsuffix /OK,$(SPECIMENS)) database: $(SPECIMENS_OK) - ${XRAY_SEGMATCH} -m 5 -M 15 -o seg_int_l.segbits $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -m 5 -M 15 -o seg_int_r.segbits $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) - ${XRAY_MASKMERGE} mask_clbll_l.segbits $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_MASKMERGE} mask_clbll_r.segbits $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) - ${XRAY_MASKMERGE} mask_clblm_l.segbits $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_MASKMERGE} mask_clblm_r.segbits $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o build/seg_int_l.segbits $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o build/seg_int_r.segbits $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_MASKMERGE} build/mask_clbll_l.segbits $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_MASKMERGE} build/mask_clbll_r.segbits $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_MASKMERGE} build/mask_clblm_l.segbits $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_MASKMERGE} build/mask_clblm_r.segbits $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) pushdb: - ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} int_l seg_int_l.segbits - ${XRAY_MERGEDB} int_r seg_int_r.segbits - ${XRAY_MERGEDB} mask_clbll_l mask_clbll_l.segbits - ${XRAY_MERGEDB} mask_clbll_r mask_clbll_r.segbits - ${XRAY_MERGEDB} mask_clblm_l mask_clblm_l.segbits - ${XRAY_MERGEDB} mask_clblm_r mask_clblm_r.segbits + ${XRAY_DBFIXUP} --db-root build --clb-int + ${XRAY_MERGEDB} int_l build/seg_int_l.segbits + ${XRAY_MERGEDB} int_r build/seg_int_r.segbits + ${XRAY_MERGEDB} mask_clbll_l build/mask_clbll_l.segbits + ${XRAY_MERGEDB} mask_clbll_r build/mask_clbll_r.segbits + ${XRAY_MERGEDB} mask_clblm_l build/mask_clblm_l.segbits + ${XRAY_MERGEDB} mask_clblm_r build/mask_clblm_r.segbits $(SPECIMENS_OK): + mkdir -p build bash generate.sh $(subst /OK,,$@) touch $@ @@ -31,7 +32,7 @@ run: touch run.ok clean: - rm -rf specimen_[0-9][0-9][0-9]/ seg_int_[lr].segbits mask_clbl[lm]_[lr].segbits run.ok + rm -rf build run.ok .PHONY: database pushdb run clean diff --git a/fuzzers/050-intpips/generate.sh b/fuzzers/050-intpips/generate.sh index 2ed94e31..a51b54f3 100644 --- a/fuzzers/050-intpips/generate.sh +++ b/fuzzers/050-intpips/generate.sh @@ -1,11 +1,12 @@ #!/bin/bash +FUZDIR=$PWD source ${XRAY_GENHEADER} echo '`define SEED 32'"'h$(echo $1 | md5sum | cut -c1-8)" > setseed.vh -vivado -mode batch -source ../generate.tcl +vivado -mode batch -source $FUZDIR/generate.tcl ${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit -python3 ../generate.py +python3 $FUZDIR/generate.py diff --git a/fuzzers/050-intpips/generate.tcl b/fuzzers/050-intpips/generate.tcl index ee52458f..56eb3297 100644 --- a/fuzzers/050-intpips/generate.tcl +++ b/fuzzers/050-intpips/generate.tcl @@ -1,7 +1,7 @@ create_project -force -part $::env(XRAY_PART) design design -read_verilog ../top.v -read_verilog ../picorv32.v +read_verilog ../../top.v +read_verilog ../../picorv32.v synth_design -top top set_property -dict "PACKAGE_PIN $::env(XRAY_PIN_00) IOSTANDARD LVCMOS33" [get_ports clk] @@ -20,7 +20,7 @@ set_property BITSTREAM.GENERAL.PERFRAMECRC YES [current_design] set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets clk_IBUF] set_param tcl.collectionResultDisplayLimit 0 -source ../../../utils/utils.tcl +source "$::env(XRAY_DIR)/utils/utils.tcl" randplace_pblock 100 roi place_design