From eef847761b650194d5a05ee979c144c6e735f3e1 Mon Sep 17 00:00:00 2001 From: Yaman Umuroglu <maltanar@gmail.com> Date: Fri, 25 Sep 2020 12:20:15 +0200 Subject: [PATCH] [Driver] grab driver deps from finn-base --- .../fpgadataflow/make_pynq_driver.py | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/src/finn/transformation/fpgadataflow/make_pynq_driver.py b/src/finn/transformation/fpgadataflow/make_pynq_driver.py index 813b40698..2f4bee159 100644 --- a/src/finn/transformation/fpgadataflow/make_pynq_driver.py +++ b/src/finn/transformation/fpgadataflow/make_pynq_driver.py @@ -29,8 +29,9 @@ import shutil from finn.transformation import Transformation -from finn.util.basic import gen_finn_dt_tensor, get_finn_root, make_build_dir -from finn.util.data_packing import finnpy_to_packed_bytearray +from finn.util.basic import gen_finn_dt_tensor, make_build_dir +import finn.util.data_packing as dpk +import finn.core.datatype as dtp from . import templates @@ -77,10 +78,10 @@ class MakePYNQDriver(Transformation): # generate dummy folded i/o tensors and their packed versions i_tensor_dummy_folded = gen_finn_dt_tensor(i_tensor_dt, i_tensor_shape_folded) o_tensor_dummy_folded = gen_finn_dt_tensor(o_tensor_dt, o_tensor_shape_folded) - i_tensor_dummy_packed = finnpy_to_packed_bytearray( + i_tensor_dummy_packed = dpk.finnpy_to_packed_bytearray( i_tensor_dummy_folded, i_tensor_dt ) - o_tensor_dummy_packed = finnpy_to_packed_bytearray( + o_tensor_dummy_packed = dpk.finnpy_to_packed_bytearray( o_tensor_dummy_folded, o_tensor_dt ) i_tensor_shape_packed = i_tensor_dummy_packed.shape @@ -132,11 +133,17 @@ class MakePYNQDriver(Transformation): f.write(validate_src) # copy all the dependencies into the driver folder - shutil.copytree( - get_finn_root() + "/src/finn/util", pynq_driver_dir + "/finn/util" - ) - shutil.copytree( - get_finn_root() + "/src/finn/core", pynq_driver_dir + "/finn/core" - ) + # driver imports utils/data_packing and core/datatype + # both of which are in finn-base + # e.g. /workspace/finn-base/src/finn/util/data_packing.py + dpk_root = dpk.__file__ + # e.g. /workspace/finn-base/src/finn/util + dpk_root = dpk_root.replace("data_packing.py", "") + # e.g. /workspace/finn-base/src/finn/core/datatype.py + dtp_root = dtp.__file__ + # e.g. /workspace/finn-base/src/finn/core + dtp_root = dtp_root.replace("datatype.py", "") + shutil.copytree(dpk_root, pynq_driver_dir + "/finn/util") + shutil.copytree(dtp_root, pynq_driver_dir + "/finn/core") return (model, False) -- GitLab