From 826c985169a00442ab35163d459b64bbb23e6ba8 Mon Sep 17 00:00:00 2001
From: Yaman Umuroglu <maltanar@gmail.com>
Date: Wed, 25 Mar 2020 20:52:28 +0000
Subject: [PATCH] [SWG] fix get_number_output_values

---
 .../fpgadataflow/convolutioninputgenerator.py          | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/src/finn/custom_op/fpgadataflow/convolutioninputgenerator.py b/src/finn/custom_op/fpgadataflow/convolutioninputgenerator.py
index 39fa40d40..dd57c7465 100644
--- a/src/finn/custom_op/fpgadataflow/convolutioninputgenerator.py
+++ b/src/finn/custom_op/fpgadataflow/convolutioninputgenerator.py
@@ -148,13 +148,9 @@ class ConvolutionInputGenerator(HLSCustomOp):
         return simd * ibits
 
     def get_number_output_values(self):
-        # TODO this seems incorrect -- double check
-        k = self.get_nodeattr("ConvKernelDim")
-        ifm_ch = self.get_nodeattr("IFMChannels")
-        ofm_dim = self.get_nodeattr("OFMDim")
-        out_pix = ofm_dim * ofm_dim
-
-        return out_pix * k * k * ifm_ch
+        folded_oshape = self.get_folded_output_shape()
+        num_output_elems = np.prod(folded_oshape[:-1])
+        return num_output_elems
 
     def execute_node(self, context, graph):
         mode = self.get_nodeattr("exec_mode")
-- 
GitLab