diff --git a/fuzzers/010-lutinit/.gitignore b/fuzzers/010-lutinit/.gitignore index e424f3ae..9482bcd3 100644 --- a/fuzzers/010-lutinit/.gitignore +++ b/fuzzers/010-lutinit/.gitignore @@ -1,3 +1,2 @@ -/specimen_[0-9][0-9][0-9]/ -/seg_clbl[lm].segbits -/run.ok +build +run.ok diff --git a/fuzzers/010-lutinit/Makefile b/fuzzers/010-lutinit/Makefile index 50a31ddf..e58c4954 100644 --- a/fuzzers/010-lutinit/Makefile +++ b/fuzzers/010-lutinit/Makefile @@ -1,21 +1,22 @@ -# NOt using clb.mk: 0-2 segmatch +# Not using clb.mk: 0-2 segmatch # Could probably change segmatch to re though N := 1 -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} -o seg_clbll.db $(addsuffix /segdata_clbll_[lr]_[012].txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -o seg_clblm.db $(addsuffix /segdata_clblm_[lr]_[012].txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -o build/segbits_clbll.db $(addsuffix /segdata_clbll_[lr]_[012].txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -o build/segbits_clblm.db $(addsuffix /segdata_clblm_[lr]_[012].txt,$(SPECIMENS)) pushdb: - ${XRAY_MERGEDB} clbll_l seg_clbll.db - ${XRAY_MERGEDB} clbll_r seg_clbll.db - ${XRAY_MERGEDB} clblm_l seg_clblm.db - ${XRAY_MERGEDB} clblm_r seg_clblm.db + ${XRAY_MERGEDB} clbll_l build/segbits_clbll.db + ${XRAY_MERGEDB} clbll_r build/segbits_clbll.db + ${XRAY_MERGEDB} clblm_l build/segbits_clblm.db + ${XRAY_MERGEDB} clblm_r build/segbits_clblm.db $(SPECIMENS_OK): + mkdir -p build bash generate.sh $(subst /OK,,$@) touch $@ @@ -26,7 +27,7 @@ run: touch run.ok clean: - rm -rf specimen_[0-9][0-9][0-9]/ seg_clbll.db seg_clblm.segbits run.ok + rm -rf build run.ok .PHONY: database pushdb run clean diff --git a/fuzzers/010-lutinit/generate.sh b/fuzzers/010-lutinit/generate.sh index 3d1fb5b6..846dd1ec 100644 --- a/fuzzers/010-lutinit/generate.sh +++ b/fuzzers/010-lutinit/generate.sh @@ -1,16 +1,17 @@ #!/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 for i in 0 1 2; do ${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design_$i.bits -z -y design_$i.bit done for i in 0 1 2; do - python3 ../generate.py $i + python3 $FUZDIR/generate.py $i done diff --git a/fuzzers/010-lutinit/generate.tcl b/fuzzers/010-lutinit/generate.tcl index 8c5490b5..6273b3f1 100644 --- a/fuzzers/010-lutinit/generate.tcl +++ b/fuzzers/010-lutinit/generate.tcl @@ -1,6 +1,6 @@ create_project -force -part $::env(XRAY_PART) design design -read_verilog ../top.v +read_verilog ../../top.v synth_design -top top set_property -dict "PACKAGE_PIN $::env(XRAY_PIN_00) IOSTANDARD LVCMOS33" [get_ports clk] diff --git a/fuzzers/051-imuxlout/Makefile b/fuzzers/051-imuxlout/Makefile index ee548806..1053082b 100644 --- a/fuzzers/051-imuxlout/Makefile +++ b/fuzzers/051-imuxlout/Makefile @@ -4,13 +4,13 @@ SPECIMENS := $(addprefix 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.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -m 5 -M 15 -o seg_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_l.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) pushdb: ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} int_l seg_int_l.db - ${XRAY_MERGEDB} int_r seg_int_r.db + ${XRAY_MERGEDB} int_l segbits_int_l.db + ${XRAY_MERGEDB} int_r segbits_int_r.db $(SPECIMENS_OK): todo.txt bash generate.sh $(subst /OK,,$@) @@ -25,9 +25,9 @@ run: touch run.ok clean: - rm -rf .Xil/ .cache/ filtered_seg_int_[lr].db run.ok + rm -rf .Xil/ .cache/ run.ok rm -rf todo.txt vivado* piplist/ piplist.dcp pattern_[lr].txt pips_int_[lr].txt - rm -rf specimen_[0-9][0-9][0-9]/ seg_int_[lr].db mask_clbl[lm]_[lr].segbits + rm -rf specimen_[0-9][0-9][0-9]/ segbits_int_[lr].db mask_clbl[lm]_[lr].segbits .PHONY: database pushdb run clean diff --git a/fuzzers/052-clkin/Makefile b/fuzzers/052-clkin/Makefile index 19ef4671..fec8a87a 100644 --- a/fuzzers/052-clkin/Makefile +++ b/fuzzers/052-clkin/Makefile @@ -4,13 +4,13 @@ SPECIMENS := $(addprefix 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.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -m 5 -M 15 -o seg_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_l.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) pushdb: ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} int_l seg_int_l.db - ${XRAY_MERGEDB} int_r seg_int_r.db + ${XRAY_MERGEDB} int_l segbits_int_l.db + ${XRAY_MERGEDB} int_r segbits_int_r.db $(SPECIMENS_OK): todo.txt bash generate.sh $(subst /OK,,$@) @@ -27,7 +27,7 @@ run: clean: rm -rf .Xil/ .cache/ filtered_seg_int_[lr].db run.ok rm -rf todo.txt vivado* piplist/ piplist.dcp pattern_[lr].txt pips_int_[lr].txt - rm -rf specimen_[0-9][0-9][0-9]/ seg_int_[lr].db mask_clbl[lm]_[lr].segbits + rm -rf specimen_[0-9][0-9][0-9]/ segbits_int_[lr].db mask_clbl[lm]_[lr].segbits .PHONY: database pushdb run clean diff --git a/fuzzers/053-ctrlin/Makefile b/fuzzers/053-ctrlin/Makefile index 19ef4671..fec8a87a 100644 --- a/fuzzers/053-ctrlin/Makefile +++ b/fuzzers/053-ctrlin/Makefile @@ -4,13 +4,13 @@ SPECIMENS := $(addprefix 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.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -m 5 -M 15 -o seg_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_l.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) pushdb: ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} int_l seg_int_l.db - ${XRAY_MERGEDB} int_r seg_int_r.db + ${XRAY_MERGEDB} int_l segbits_int_l.db + ${XRAY_MERGEDB} int_r segbits_int_r.db $(SPECIMENS_OK): todo.txt bash generate.sh $(subst /OK,,$@) @@ -27,7 +27,7 @@ run: clean: rm -rf .Xil/ .cache/ filtered_seg_int_[lr].db run.ok rm -rf todo.txt vivado* piplist/ piplist.dcp pattern_[lr].txt pips_int_[lr].txt - rm -rf specimen_[0-9][0-9][0-9]/ seg_int_[lr].db mask_clbl[lm]_[lr].segbits + rm -rf specimen_[0-9][0-9][0-9]/ segbits_int_[lr].db mask_clbl[lm]_[lr].segbits .PHONY: database pushdb run clean diff --git a/fuzzers/054-gfan/Makefile b/fuzzers/054-gfan/Makefile index 19ef4671..fec8a87a 100644 --- a/fuzzers/054-gfan/Makefile +++ b/fuzzers/054-gfan/Makefile @@ -4,13 +4,13 @@ SPECIMENS := $(addprefix 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.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -m 5 -M 15 -o seg_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_l.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) pushdb: ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} int_l seg_int_l.db - ${XRAY_MERGEDB} int_r seg_int_r.db + ${XRAY_MERGEDB} int_l segbits_int_l.db + ${XRAY_MERGEDB} int_r segbits_int_r.db $(SPECIMENS_OK): todo.txt bash generate.sh $(subst /OK,,$@) @@ -27,7 +27,7 @@ run: clean: rm -rf .Xil/ .cache/ filtered_seg_int_[lr].db run.ok rm -rf todo.txt vivado* piplist/ piplist.dcp pattern_[lr].txt pips_int_[lr].txt - rm -rf specimen_[0-9][0-9][0-9]/ seg_int_[lr].db mask_clbl[lm]_[lr].segbits + rm -rf specimen_[0-9][0-9][0-9]/ segbits_int_[lr].db mask_clbl[lm]_[lr].segbits .PHONY: database pushdb run clean diff --git a/fuzzers/055-gnd/Makefile b/fuzzers/055-gnd/Makefile index 9d29343f..0216e069 100644 --- a/fuzzers/055-gnd/Makefile +++ b/fuzzers/055-gnd/Makefile @@ -4,13 +4,13 @@ SPECIMENS := $(addprefix 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.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -m 5 -M 15 -o seg_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_l.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) pushdb: ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} int_l seg_int_l.db - ${XRAY_MERGEDB} int_r seg_int_r.db + ${XRAY_MERGEDB} int_l segbits_int_l.db + ${XRAY_MERGEDB} int_r segbits_int_r.db $(SPECIMENS_OK): todo.txt bash generate.sh $(subst /OK,,$@) @@ -31,7 +31,7 @@ run: clean: rm -rf .Xil/ .cache/ filtered_seg_int_[lr].db run.ok rm -rf todo.txt vivado* piplist/ piplist.dcp pattern_[lr].txt pips_int_[lr].txt - rm -rf specimen_[0-9][0-9][0-9]/ seg_int_[lr].db mask_clbl[lm]_[lr].segbits + rm -rf specimen_[0-9][0-9][0-9]/ segbits_int_[lr].db mask_clbl[lm]_[lr].segbits .PHONY: database pushdb run clean diff --git a/fuzzers/056-rempips/generate.py b/fuzzers/056-rempips/generate.py index ad7f4584..589c18b6 100644 --- a/fuzzers/056-rempips/generate.py +++ b/fuzzers/056-rempips/generate.py @@ -2,6 +2,8 @@ from prjxray.segmaker import Segmaker +verbose = 1 + segmk = Segmaker("design.bits") tiledata = dict() @@ -13,6 +15,7 @@ print("Loading todo from ../todo.txt.") with open("../todo.txt", "r") as f: for line in f: line = tuple(line.strip().split(".")) + verbose and print('todo', line) todo.add(line) print("Loading tags from design.txt.") @@ -42,9 +45,12 @@ with open("design.txt", "r") as f: tiledata[tile]["dsts"].add(src) if pnum == 1 or pdir == 0: + verbose and print('ignore pnum == 1 or pdir == 0: ', pip) ignpip.add(pip) - if ("_".join(tile.split("_")[0:2]), dst, src) not in todo: + t = ("_".join(tile.split("_")[0:2]), dst, src) + if t not in todo: + verbose and print('ignore not todo: ', t) ignpip.add(pip) for tile, pips_srcs_dsts in tiledata.items(): diff --git a/fuzzers/057-bipips/Makefile b/fuzzers/057-bipips/Makefile index d78da794..cc31ab23 100644 --- a/fuzzers/057-bipips/Makefile +++ b/fuzzers/057-bipips/Makefile @@ -4,13 +4,13 @@ SPECIMENS := $(addprefix 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.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -m 5 -M 15 -o seg_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_l.db $(addsuffix /segdata_int_l.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -m 5 -M 15 -o segbits_int_r.db $(addsuffix /segdata_int_r.txt,$(SPECIMENS)) pushdb: ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} int_l seg_int_l.db - ${XRAY_MERGEDB} int_r seg_int_r.db + ${XRAY_MERGEDB} int_l segbits_int_l.db + ${XRAY_MERGEDB} int_r segbits_int_r.db $(SPECIMENS_OK): todo.txt bash generate.sh $(subst /OK,,$@) @@ -27,7 +27,7 @@ run: clean: rm -rf .Xil/ .cache/ vivado* todo.txt run.ok rm -rf bipiplist/ bipiplist.dcp bipips_int_[lr].txt - rm -rf specimen_[0-9][0-9][0-9]/ seg_int_[lr].db + rm -rf specimen_[0-9][0-9][0-9]/ segbits_int_[lr].db .PHONY: database pushdb run clean diff --git a/fuzzers/058-hclkpips/Makefile b/fuzzers/058-hclkpips/Makefile index aab5f4c8..9586990a 100644 --- a/fuzzers/058-hclkpips/Makefile +++ b/fuzzers/058-hclkpips/Makefile @@ -4,17 +4,17 @@ SPECIMENS := $(addprefix specimen_,$(shell seq -f '%03.0f' $(N))) SPECIMENS_OK := $(addsuffix /OK,$(SPECIMENS)) database: $(SPECIMENS_OK) - ${XRAY_SEGMATCH} -o seg_hclk_l.db $(addsuffix /segdata_hclk_l_design_*.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -o seg_hclk_r.db $(addsuffix /segdata_hclk_r_design_*.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -o segbits_hclk_l.db $(addsuffix /segdata_hclk_l_design_*.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -o segbits_hclk_r.db $(addsuffix /segdata_hclk_r_design_*.txt,$(SPECIMENS)) ${XRAY_MASKMERGE} mask_hclk_l.db $(addsuffix /segdata_hclk_l_design_*.txt,$(SPECIMENS)) ${XRAY_MASKMERGE} mask_hclk_r.db $(addsuffix /segdata_hclk_r_design_*.txt,$(SPECIMENS)) - grep CK_INOUT seg_hclk_l.db | sed 's, .*, always,' > ppips_hclk_l.txt - grep CK_INOUT seg_hclk_r.db | sed 's, .*, always,' > ppips_hclk_r.txt + grep CK_INOUT segbits_hclk_l.db | sed 's, .*, always,' > ppips_hclk_l.txt + grep CK_INOUT segbits_hclk_r.db | sed 's, .*, always,' > ppips_hclk_r.txt pushdb: ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} hclk_l seg_hclk_l.db - ${XRAY_MERGEDB} hclk_r seg_hclk_r.db + ${XRAY_MERGEDB} hclk_l segbits_hclk_l.db + ${XRAY_MERGEDB} hclk_r segbits_hclk_r.db ${XRAY_MERGEDB} mask_hclk_l mask_hclk_l.db ${XRAY_MERGEDB} mask_hclk_r mask_hclk_r.db cp ppips_hclk_l.txt ${XRAY_DATABASE_DIR}/$(XRAY_DATABASE)/ppips_hclk_l.db diff --git a/fuzzers/100-dsp-mskpat/Makefile b/fuzzers/100-dsp-mskpat/Makefile index 616c14db..c0e919b6 100644 --- a/fuzzers/100-dsp-mskpat/Makefile +++ b/fuzzers/100-dsp-mskpat/Makefile @@ -4,13 +4,13 @@ SPECIMENS := $(addprefix specimen_,$(shell seq -f '%03.0f' $(N))) SPECIMENS_OK := $(addsuffix /OK,$(SPECIMENS)) database: $(SPECIMENS_OK) - ${XRAY_SEGMATCH} -o seg_dsp_l.db $(addsuffix /segdata_dsp_l_*.txt,$(SPECIMENS)) - ${XRAY_SEGMATCH} -o seg_dsp_r.db $(addsuffix /segdata_dsp_r_*.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -o segbits_dsp_l.db $(addsuffix /segdata_dsp_l_*.txt,$(SPECIMENS)) + ${XRAY_SEGMATCH} -o segbits_dsp_r.db $(addsuffix /segdata_dsp_r_*.txt,$(SPECIMENS)) pushdb: ${XRAY_DBFIXUP} --db-root . --clb-int - ${XRAY_MERGEDB} dsp_l seg_dsp_l.db - ${XRAY_MERGEDB} dsp_r seg_dsp_r.db + ${XRAY_MERGEDB} dsp_l segbits_dsp_l.db + ${XRAY_MERGEDB} dsp_r segbits_dsp_r.db $(SPECIMENS_OK): bash generate.sh $(subst /OK,,$@) @@ -23,7 +23,7 @@ run: touch run.ok clean: - rm -rf specimen_[0-9][0-9][0-9]/ seg_dsp_l.db seg_dsp_r.segbits run.ok + rm -rf specimen_[0-9][0-9][0-9]/ segbits_dsp_l.db segbits_dsp_r.db run.ok .PHONY: database pushdb run clean