From 7c8c002dd0c49131985a3f25e1d920dece044ef6 Mon Sep 17 00:00:00 2001 From: Oscar Gustafsson <oscar.gustafsson@gmail.com> Date: Wed, 3 May 2023 11:43:45 +0200 Subject: [PATCH] Add SFG for scheduling example in lab --- examples/schedulingexample.py | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 examples/schedulingexample.py diff --git a/examples/schedulingexample.py b/examples/schedulingexample.py new file mode 100644 index 00000000..e3e170a3 --- /dev/null +++ b/examples/schedulingexample.py @@ -0,0 +1,28 @@ +""" +Example SFG used for scheduling in the TSTE87 course. + +Node numbering from the original SFG used with the Matlab toolbox.:: + + sfg=addoperand([],'in',1,1); + sfg=addoperand(sfg,'constmult',1,1,2,0.25); + sfg=addoperand(sfg,'constmult',2,4,5,0.75); + sfg=addoperand(sfg,'add',1,[2 1],6); + sfg=addoperand(sfg,'add',2,[2 5],3); + sfg=addoperand(sfg,'add',3,[6 4],7); + sfg=addoperand(sfg,'delay',1,3,4); + sfg=addoperand(sfg,'out',1,7); +""" +from b_asic.signal_flow_graph import SFG +from b_asic.special_operations import Delay, Input, Output + +node1 = Input() +node2 = node1 * 0.25 +node6 = node2 + node1 +node4 = Delay() +node7 = node6 + node4 +out = Output(node7) +node5 = 0.75 * node4 +node3 = node2 + node5 +node4 << node3 + +sfg = SFG([node1], [out], name="Scheduling example") -- GitLab