Set tool and script paths project-wide

utils/environment.sh determines its absolute path and then creates
environment variables to each of the prjxray tools.  This allows moving
the tools around in the code base without touching every script.

Signed-off-by: Rick Altherr <kc8apf@kc8apf.net>
Signed-off-by: Tim 'mithro' Ansell <mithro@mithis.com>
This commit is contained in:
Rick Altherr 2017-11-14 16:59:39 -08:00 committed by Tim 'mithro' Ansell
parent 4f74941fcd
commit c815d4b1a5
14 changed files with 71 additions and 31 deletions

View File

@ -1,11 +1,12 @@
#!/bin/bash
. ../../utils/genheader.sh
source ../../utils/environment.sh
source ${XRAY_GENHEADER}
echo '`define SEED 32'"'h$(echo $1 | md5sum | cut -c1-8)" > setseed.vh
vivado -mode batch -source ../generate.tcl
../../../tools/bitread -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
python3 ../generate.py

View File

@ -1,5 +1,7 @@
#!/bin/bash
source ../../utils/environment.sh
set -ex
test $# = 1
test ! -e $1
@ -73,10 +75,10 @@ EOT
rm -rf design design.log
vivado -nojournal -log design.log -mode batch -source design.tcl
#../../../tools/bitread -o design_roi.bits -z -y design_roi_partial.bit
../../../tools/bitread -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
../../../tools/bitread -F $XRAY_ROI_FRAMES -o design.pgm -p design.bit
#${XRAY_BITREAD} -o design_roi.bits -z -y design_roi_partial.bit
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design.pgm -p design.bit
python3 ../segdata.py
#../../../tools/segmatch < segdata.txt > database.txt
#${XRAY_SEGMATCH} < segdata.txt > database.txt

View File

@ -1,13 +1,14 @@
#!/bin/bash
. ../../utils/genheader.sh
source ../../utils/environment.sh
source ${XRAY_GENHEADER}
echo '`define SEED 32'"'h$(echo $1 | md5sum | cut -c1-8)" > setseed.vh
vivado -mode batch -source ../generate.tcl
for x in design*.bit; do
../../../tools/bitread -F $XRAY_ROI_FRAMES -o ${x}s -z -y $x
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o ${x}s -z -y $x
done
python3 ../generate.py

7
fuzzers/005-tilegrid/generate.sh Normal file → Executable file
View File

@ -1,11 +1,12 @@
#!/bin/bash
#!/bin/bash -x
. ../../utils/genheader.sh
source ../../utils/environment.sh
source ${XRAY_GENHEADER}
vivado -mode batch -source ../generate.tcl
for x in design*.bit; do
../../../tools/bitread -F $XRAY_ROI_FRAMES -o ${x}s -z -y $x
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o ${x}s -z -y $x
done
for x in design_*.bits; do

View File

@ -1,13 +1,14 @@
#!/bin/bash
. ../../utils/genheader.sh
source ../../utils/environment.sh
source ${XRAY_GENHEADER}
echo '`define SEED 32'"'h$(echo $1 | md5sum | cut -c1-8)" > setseed.vh
vivado -mode batch -source ../generate.tcl
for i in 0 1 2; do
../../../tools/bitread -F $XRAY_ROI_FRAMES -o design_$i.bits -z -y design_$i.bit
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design_$i.bits -z -y design_$i.bit
done
for i in 0 1 2; do

View File

@ -1,13 +1,14 @@
#!/bin/bash
. ../../utils/genheader.sh
source ../../utils/environment.sh
source ${XRAY_GENHEADER}
echo '`define SEED 32'"'h$(echo $1 | md5sum | cut -c1-8)" > setseed.vh
vivado -mode batch -source ../generate.tcl
for i in {0..9}; do
../../../tools/bitread -F $XRAY_ROI_FRAMES -o design_$i.bits -z -y design_$i.bit
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design_$i.bits -z -y design_$i.bit
done
for i in {0..9}; do

View File

@ -1,13 +1,14 @@
#!/bin/bash
. ../../utils/genheader.sh
source ../../utils/environment.sh
source ${XRAY_GENHEADER}
echo '`define SEED 32'"'h$(echo $1 | md5sum | cut -c1-8)" > setseed.vh
vivado -mode batch -source ../generate.tcl
for x in design*.bit; do
../../../tools/bitread -F $XRAY_ROI_FRAMES -o ${x}s -z -y $x
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o ${x}s -z -y $x
done
python3 ../generate.py

View File

@ -1,11 +1,12 @@
#!/bin/bash
. ../../utils/genheader.sh
source ../../utils/environment.sh
source ${XRAY_GENHEADER}
echo '`define SEED 32'"'h$(echo $1 | md5sum | cut -c1-8)" > setseed.vh
vivado -mode batch -source ../generate.tcl
../../../tools/bitread -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
python3 ../generate.py

View File

@ -1,5 +1,8 @@
#!/bin/bash
source ../../utils/environment.sh
set -ex
vivado -mode batch -source runme.tcl
../../tools/bitread -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
python3 ../../utils/segprint.py design.bits SLICE_X16Y100 SLICE_X16Y101 SLICE_X16Y102 SLICE_X16Y103
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
${XRAY_SEGPRINT} design.bits SLICE_X16Y100 SLICE_X16Y101 SLICE_X16Y102 SLICE_X16Y103

View File

@ -1,5 +1,8 @@
#!/bin/bash
source ../../utils/environment.sh
set -ex
vivado -mode batch -source runme.tcl
../../tools/bitread -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
python3 ../../utils/segprint.py design.bits SLICE_X16Y100 SLICE_X16Y101 SLICE_X16Y102 SLICE_X16Y103
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
${XRAY_SEGPRINT} design.bits SLICE_X16Y100 SLICE_X16Y101 SLICE_X16Y102 SLICE_X16Y103

View File

@ -1,7 +1,10 @@
#!/bin/bash
source ../../utils/environment.sh
set -ex
vivado -mode batch -source runme.tcl
../../tools/bitread -F $XRAY_ROI_FRAMES -o design_a.bits -z -y design_a.bit
../../tools/bitread -F $XRAY_ROI_FRAMES -o design_b.bits -z -y design_b.bit
python3 ../../utils/segprint.py design_a.bits INT_L_X12Y132 INT_L_X14Y132 INT_L_X16Y132
python3 ../../utils/segprint.py design_b.bits INT_L_X12Y132 INT_L_X14Y132 INT_L_X16Y132
${XRAY_BITREAD}-F $XRAY_ROI_FRAMES -o design_a.bits -z -y design_a.bit
${XRAY_BITREAD}-F $XRAY_ROI_FRAMES -o design_b.bits -z -y design_b.bit
${XRAY_SEGPRINT} design_a.bits INT_L_X12Y132 INT_L_X14Y132 INT_L_X16Y132
${XRAY_SEGPRINT} design_b.bits INT_L_X12Y132 INT_L_X14Y132 INT_L_X16Y132

View File

@ -1,6 +1,9 @@
#!/bin/bash
source ../../utils/environment.sh
vivado -mode batch -source runme.tcl
../../tools/bitread -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
../../tools/bitread -F $XRAY_ROI_FRAMES -o routes.bits -z -y routes.bit
python3 ../../utils/segprint.py routes.bits INT_L_X12Y119 INT_L_X12Y117 INT_L_X12Y115
python3 ../../utils/segprint.py routes.bits INT_R_X13Y118 INT_R_X13Y116 INT_R_X13Y114
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o design.bits -z -y design.bit
${XRAY_BITREAD} -F $XRAY_ROI_FRAMES -o routes.bits -z -y routes.bit
${XRAY_SEGPRINT} routes.bits INT_L_X12Y119 INT_L_X12Y117 INT_L_X12Y115
${XRAY_SEGPRINT} routes.bits INT_R_X13Y118 INT_R_X13Y116 INT_R_X13Y114

16
utils/environment.sh Normal file
View File

@ -0,0 +1,16 @@
XRAY_ENV_PATH="${BASH_SOURCE[0]}"
while [ -h "$XRAY_ENV_PATH" ]; do # resolve $XRAY_ENV_PATH until the file is no longer a symlink
XRAY_UTILS_DIR="$( cd -P "$( dirname "$XRAY_ENV_PATH" )" && pwd )"
XRAY_ENV_PATH="$(readlink "$XRAY_ENV_PATH")"
[[ $XRAY_ENV_PATH != /* ]] && XRAY_ENV_PATH="$XRAY_UTILS_DIR/$XRAY_ENV_PATH" # if $XRAY_ENV_PATH was a relative symlink, we need to resolve it relative to the path where the symlink file was located
done
XRAY_UTILS_DIR="$( cd -P "$( dirname "$XRAY_ENV_PATH" )" && pwd )"
XRAY_DIR="$( dirname "$XRAY_UTILS_DIR" )"
XRAY_DATABASE_DIR="${XRAY_DIR}/database"
XRAY_TOOLS_DIR="${XRAY_DIR}/tools"
XRAY_GENHEADER="${XRAY_UTILS_DIR}/genheader.sh"
XRAY_BITREAD="${XRAY_TOOLS_DIR}/bitread"
XRAY_SEGMATCH="${XRAY_TOOLS_DIR}/segmatch"
XRAY_SEGPRINT="python2 ${XRAY_UTILS_DIR}/segprint.py"

View File

@ -1,4 +1,7 @@
#!/bin/bash
source environment.sh
set -ex
test $# = 2
test -e "$2"