fuzzers: Deploy fabric data to a separate dir

Fabric data should be deployed to a separate directory inside the database
and all devices with the same fabric should access it.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
This commit is contained in:
Daniel Schultz 2021-01-07 19:10:31 +01:00
parent a5ad410875
commit e60b0d5875
7 changed files with 14 additions and 14 deletions

View File

@ -97,7 +97,10 @@ $(DB_FILES_PATH):
${XRAY_FAMILY_DIR}/${XRAY_PART}:
mkdir -p ${XRAY_FAMILY_DIR}/${XRAY_PART}
pushdb: $(DB_FILES_PATH) ${XRAY_FAMILY_DIR}/${XRAY_PART}
${XRAY_FAMILY_DIR}/${XRAY_FABRIC}:
mkdir -p ${XRAY_FAMILY_DIR}/${XRAY_FABRIC}
pushdb: $(DB_FILES_PATH) ${XRAY_FAMILY_DIR}/${XRAY_PART} ${XRAY_FAMILY_DIR}/${XRAY_FABRIC}
@true
run:

View File

@ -44,22 +44,23 @@ else
TILEGRID_TDB_DEPENDENCIES += dsp_int/$(BUILD_FOLDER)/segbits_tilegrid.tdb
endif
BASICDB_TILEGRID=$(BUILD_FOLDER)/basicdb/${XRAY_PART}/tilegrid.json
BASICDB_TILEGRID=$(BUILD_FOLDER)/basicdb/${XRAY_FABRIC}/tilegrid.json
database: $(BUILD_FOLDER)/tilegrid.json
pushdb: $(BUILD_FOLDER)/tilegrid.json
cp $(BUILD_FOLDER)/tilegrid.json ${XRAY_FAMILY_DIR}/${XRAY_PART}/tilegrid.json
cp $(BUILD_FOLDER)/tilegrid.json ${XRAY_FAMILY_DIR}/${XRAY_FABRIC}/tilegrid.json
$(BUILD_FOLDER)/tiles/tiles.txt:
bash generate.sh $(BUILD_FOLDER)/tiles tiles
${BASICDB_TILEGRID}: generate.py $(BUILD_FOLDER)/tiles/tiles.txt
mkdir -p $(BUILD_FOLDER)/basicdb/${XRAY_PART}
mkdir -p $(BUILD_FOLDER)/basicdb/${XRAY_FABRIC}
ln -sf $(XRAY_DATABASE_DIR)/$(XRAY_DATABASE)/mapping $(BUILD_FOLDER)/basicdb/
cd $(BUILD_FOLDER) && python3 ${FUZDIR}/generate.py \
--tiles $(BUILD_DIR)/tiles/tiles.txt \
--pin_func $(BUILD_DIR)/tiles/pin_func.txt \
--out ${BUILD_DIR}/basicdb/${XRAY_PART}/tilegrid.json
--out ${BUILD_DIR}/basicdb/${XRAY_FABRIC}/tilegrid.json
clb/$(BUILD_FOLDER)/segbits_tilegrid.tdb: ${BASICDB_TILEGRID}
cd clb && $(MAKE)

View File

@ -21,8 +21,8 @@ pushdb:
cp $(BUILD_DIR)/output/tile_type_*.json ${XRAY_FAMILY_DIR}/
rm ${XRAY_FAMILY_DIR}/tile_type_*_site_type_*.json
cp $(BUILD_DIR)/output/site_type_*.json ${XRAY_FAMILY_DIR}/
cp $(BUILD_DIR)/output/tileconn.json ${XRAY_FAMILY_DIR}/$(XRAY_PART)/
cp $(BUILD_DIR)/output/node_wires.json ${XRAY_FAMILY_DIR}/$(XRAY_PART)/
cp $(BUILD_DIR)/output/tileconn.json ${XRAY_FAMILY_DIR}/$(XRAY_FABRIC)/
cp $(BUILD_DIR)/output/node_wires.json ${XRAY_FAMILY_DIR}/$(XRAY_FABRIC)/
$(SPECIMENS_OK):
bash generate.sh $(subst /OK,,$@) -p=$(MAX_VIVADO_PROCESS) -t=$(MAX_TILES_INSTANCE) -n=$(MAX_NODES_INSTANCE)

View File

@ -59,7 +59,7 @@ def main():
args = parser.parse_args()
print('{} Reading tilegrid'.format(datetime.datetime.now()))
with open(os.path.join(util.get_db_root(), util.get_part(),
with open(os.path.join(util.get_db_root(), util.get_fabric(),
'tilegrid.json')) as f:
tilegrid = json.load(f)
grid = Grid(db=None, tilegrid=tilegrid)

View File

@ -592,7 +592,7 @@ def main():
wire_map_file = os.path.join(args.output_dir, 'wiremap.pickle')
print('{} Reading tilegrid'.format(datetime.datetime.now()))
with open(os.path.join(util.get_db_root(), util.get_part(),
with open(os.path.join(util.get_db_root(), util.get_fabric(),
'tilegrid.json')) as f:
grid = json.load(f)

View File

@ -56,7 +56,7 @@ def main():
# Read tile grid and raw node data.
print('{} Reading tilegrid'.format(datetime.datetime.now()))
with open(os.path.join(util.get_db_root(), util.get_part(),
with open(os.path.join(util.get_db_root(), util.get_fabric(),
'tilegrid.json')) as f:
grid = Grid(db=None, tilegrid=json.load(f))

View File

@ -169,9 +169,5 @@ quick:
# roi_only runs the fuzzers required for supporting additional parts when building
# a roi harness.
roi_only: 000-init-db/run.${XRAY_PART}.ok 001-part-yaml/run.${XRAY_PART}.ok 075-pins/run.${XRAY_PART}.ok
# Copy tilegrid and tileconn
cp ${XRAY_FAMILY_DIR}/${XRAY_EQUIV_PART}/tilegrid.json ${XRAY_FAMILY_DIR}/${XRAY_PART}/tilegrid.json
cp ${XRAY_FAMILY_DIR}/${XRAY_EQUIV_PART}/tileconn.json ${XRAY_FAMILY_DIR}/${XRAY_PART}/tileconn.json
cp ${XRAY_FAMILY_DIR}/${XRAY_EQUIV_PART}/node_wires.json ${XRAY_FAMILY_DIR}/${XRAY_PART}/node_wires.json
.PHONY: all clean clean_fuzzers clean_logs quick part_only roi_only