From c9c004a03580a7eff8797539a6b3a6897df7ec36 Mon Sep 17 00:00:00 2001
From: Yaman Umuroglu <maltanar@gmail.com>
Date: Tue, 24 Mar 2020 23:40:39 +0000
Subject: [PATCH] [Test] switch to decoupled weights for cnv-w1a1 hls test

---
 .../fpgadataflow/test_convert_to_hls_layers_cnv.py  | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/tests/fpgadataflow/test_convert_to_hls_layers_cnv.py b/tests/fpgadataflow/test_convert_to_hls_layers_cnv.py
index dcf870d2d..fedea4084 100644
--- a/tests/fpgadataflow/test_convert_to_hls_layers_cnv.py
+++ b/tests/fpgadataflow/test_convert_to_hls_layers_cnv.py
@@ -49,6 +49,7 @@ import finn.transformation.fpgadataflow.convert_to_hls_layers as to_hls
 from finn.transformation.fpgadataflow.codegen_npysim import CodeGen_npysim
 from finn.transformation.fpgadataflow.compile import Compile
 from finn.transformation.fpgadataflow.set_exec_mode import SetExecMode
+from finn.custom_op.registry import getCustomOp
 
 export_onnx_path_cnv = "test_output_cnv.onnx"
 
@@ -82,10 +83,20 @@ def test_convert_to_hls_layers_cnv_w1a1():
     model = model.transform(RoundAndClipThresholds())
     model = model.transform(to_hls.InferBinaryStreamingFCLayer())
 
+    for node in model.graph.node:
+        if node.op_type == "StreamingFCLayer_Batch":
+            inst = getCustomOp(node)
+            inst.set_nodeattr("mem_mode", "decoupled")
+            mw = inst.get_nodeattr("MW")
+            mh = inst.get_nodeattr("MH")
+            inst.set_nodeattr("PE", mh)
+            inst.set_nodeattr("SIMD", mw)
+    model.save("cnv-pre-compile.onnx")
     model = model.transform(CodeGen_npysim())
     model = model.transform(Compile())
     model = model.transform(SetExecMode("npysim"))
-    model.save("cnv-lower.onnx")
+    model.save("cnv-post-compile.onnx")
+
     produced_ctx = oxe.execute_onnx(model, input_dict, True)
     produced = produced_ctx[model.graph.output[0].name]
     assert np.isclose(expected, produced, atol=1e-3).all()
-- 
GitLab