From f921b928b71aa1d45d3a653620cfebf08c3f33e2 Mon Sep 17 00:00:00 2001 From: Yaman Umuroglu <yamanu@xilinx.com> Date: Wed, 22 Sep 2021 10:41:43 +0200 Subject: [PATCH] [Vitis, Zynq] add option to specify dir for kernel partitions --- .../transformation/fpgadataflow/make_zynq_proj.py | 11 +++++++++-- src/finn/transformation/fpgadataflow/vitis_build.py | 6 +++++- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/finn/transformation/fpgadataflow/make_zynq_proj.py b/src/finn/transformation/fpgadataflow/make_zynq_proj.py index 713045b38..0fce73f8c 100644 --- a/src/finn/transformation/fpgadataflow/make_zynq_proj.py +++ b/src/finn/transformation/fpgadataflow/make_zynq_proj.py @@ -303,12 +303,19 @@ class ZynqBuild(Transformation): """ - def __init__(self, platform, period_ns, enable_debug=False): + def __init__( + self, + platform, + period_ns, + enable_debug=False, + partition_model_dir="dataflow_partition", + ): super().__init__() self.fpga_part = pynq_part_map[platform] self.period_ns = period_ns self.platform = platform self.enable_debug = enable_debug + self.partition_model_dir = partition_model_dir def apply(self, model): # first infer layouts @@ -318,7 +325,7 @@ class ZynqBuild(Transformation): InsertIODMA(64), InsertDWC(), Floorplan(), - CreateDataflowPartition(), + CreateDataflowPartition(partition_model_dir=self.partition_model_dir), ] for trn in prep_transforms: model = model.transform(trn) diff --git a/src/finn/transformation/fpgadataflow/vitis_build.py b/src/finn/transformation/fpgadataflow/vitis_build.py index f47a3ad96..3a29082d6 100644 --- a/src/finn/transformation/fpgadataflow/vitis_build.py +++ b/src/finn/transformation/fpgadataflow/vitis_build.py @@ -378,6 +378,7 @@ class VitisBuild(Transformation): enable_debug=False, floorplan_file=None, enable_link=True, + partition_model_dir="dataflow_partition", ): super().__init__() self.fpga_part = fpga_part @@ -387,6 +388,7 @@ class VitisBuild(Transformation): self.enable_debug = enable_debug self.floorplan_file = floorplan_file self.enable_link = enable_link + self.partition_model_dir = partition_model_dir def apply(self, model): _check_vitis_envvars() @@ -401,7 +403,9 @@ class VitisBuild(Transformation): model = model.transform(Floorplan(floorplan=self.floorplan_file)) - model = model.transform(CreateDataflowPartition()) + model = model.transform( + CreateDataflowPartition(partition_model_dir=self.partition_model_dir) + ) model = model.transform(GiveUniqueNodeNames()) model = model.transform(GiveReadableTensorNames()) -- GitLab