From 7d9c0de76879777e298ed09984f19560c041a07c Mon Sep 17 00:00:00 2001 From: Arvid Westerlund <arvwe160@student.liu.se> Date: Tue, 12 May 2020 15:44:12 +0200 Subject: [PATCH] Added fixtures for testing of unfolding. Fixed unused output in fixture precedence_sfg_registers_and_constants --- test/fixtures/signal_flow_graph.py | 41 +++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/test/fixtures/signal_flow_graph.py b/test/fixtures/signal_flow_graph.py index 08d9e8aa..1d691c40 100644 --- a/test/fixtures/signal_flow_graph.py +++ b/test/fixtures/signal_flow_graph.py @@ -88,6 +88,45 @@ def sfg_delay(): out1 = Output(reg1) return SFG(inputs=[in1], outputs=[out1]) +@pytest.fixture +def sfg_simple_accumulator(): + """Valid SFG with one input and one output. With feedback. Explained in lecture 5. + in>--->add>-------o--->out + ^ | + | | + |--<T<----- + """ + data_in = Input() + reg = Register() + add = data_in + reg + reg.input(0).connect(add) + data_out = Output(add) + return SFG(inputs=[data_in], outputs=[data_out], name="simple_accumulator") + +@pytest.fixture +def sfg_unfolded_simple_accumulator(): + """Valid unfolded simple accumulator SFG with two inputs and two outputs. With feedback. Explained in lecture 5. + in(2n)>----->add>---o------->out(2n) + ^ | + | | + ^ | + T<----|---- + | | + |------ | + v ^ + in(2n+1)>--->add> ------o--->out(2n+1) + """ + in_2n = Input() + in_2n1 = Input() + + add_upper = Addition() + add_lower = in_2n1 + add_upper + reg = Register(add_lower) + add_upper.input(0).connect(in_2n) + add_upper.input(1).connect(reg) + out_2n = Output(add_upper) + out_2n1 = Output(add_lower) + return SFG(inputs=[in_2n, in_2n1], outputs=[out_2n, out_2n1], name="unfolded_simple_accumulator") @pytest.fixture def sfg_accumulator(): @@ -177,4 +216,4 @@ def precedence_sfg_registers_and_constants(): out1 = Output(bfly1.output(0), "OUT1") out2 = Output(bfly1.output(1), "OUT2") - return SFG(inputs=[in1], outputs=[out1], name="SFG") + return SFG(inputs=[in1], outputs=[out1, out2], name="SFG") -- GitLab