From da5948f4934fec05d6a301ad597afdc5b44f7402 Mon Sep 17 00:00:00 2001 From: alexmadison Date: Thu, 3 Mar 2022 17:05:56 +0100 Subject: [PATCH] added N=1 cases --- dataflow_neuro/treegates.act | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/dataflow_neuro/treegates.act b/dataflow_neuro/treegates.act index 165939b..bf89863 100644 --- a/dataflow_neuro/treegates.act +++ b/dataflow_neuro/treegates.act @@ -48,6 +48,9 @@ defproc ortree (bool? in[N]; bool! out; power supply) { N > 0 : "What?" }; + [N = 1 -> BUF_X1 b(.vss=supply.vss, .vdd = supply.vdd, .a = in[0], .y = out); + [] N > 1 -> + pint i, end, j; i = 0; end = N-1; @@ -148,6 +151,8 @@ defproc ortree (bool? in[N]; bool! out; power supply) ] out = tmp[end]; + + ] } export template @@ -157,6 +162,11 @@ defproc andtree (bool? in[N]; bool! out; power supply) { N > 0 : "What?" }; + + + [N = 1 -> BUF_X1 b(.vss=supply.vss, .vdd = supply.vdd, .a = in[0], .y = out); + [] N > 1 -> + pint i, end, j; i = 0; end = N-1; @@ -257,6 +267,8 @@ defproc andtree (bool? in[N]; bool! out; power supply) ] out = tmp[end]; + + ] } /* @@ -270,6 +282,10 @@ defproc ctree (bool? in[N]; bool! out; power supply) { N > 0 : "What?" }; + bool meaningless_var; + + [N = 1 -> BUF_X1 b(.vss=supply.vss, .vdd = supply.vdd, .a = in[0], .y = out); + [] N > 1 -> pint i, end, j; i = 0; end = N-1; @@ -373,6 +389,11 @@ defproc ctree (bool? in[N]; bool! out; power supply) ] out = tmp[end]; + + + ] + + }