diff --git a/b_asic/schedule.py b/b_asic/schedule.py index 333e85f06c326712e31abc1d6fe0853d09e9e604..4d267a1e3d9104eb0cb3e7c43de6ae03eeb013ee 100644 --- a/b_asic/schedule.py +++ b/b_asic/schedule.py @@ -15,7 +15,7 @@ import io from b_asic.signal_flow_graph import SFG from b_asic.graph_component import GraphID from b_asic.special_operations import Delay, Output - +from b_asic import OutputPort, Signal class Schedule: """Schedule of an SFG with scheduled Operations.""" @@ -43,14 +43,13 @@ class Schedule: max_end_time = self._get_max_end_time() - if not self._cyclic: - if schedule_time is None: - self._schedule_time = max_end_time - elif schedule_time < max_end_time: - raise ValueError( - "Too short schedule time for non-cyclic Schedule entered.") - else: - self._schedule_time = schedule_time + if schedule_time is None: + self._schedule_time = max_end_time + elif schedule_time < max_end_time: + raise ValueError( + f"Too short schedule time. Minimum is {max_end_time}.") + else: + self._schedule_time = schedule_time def start_time_of_operation(self, op_id: GraphID) -> int: """Get the start time of the operation with the specified by the op_id.""" diff --git a/examples/thirdorderblwdf.py b/examples/thirdorderblwdf.py index e3bd53cff404dd0e3bf52a38d74fa09bcd22cc5f..65dd4b4d1c705e4e6accfb28e9914d4aec240423 100644 --- a/examples/thirdorderblwdf.py +++ b/examples/thirdorderblwdf.py @@ -35,4 +35,4 @@ import numpy as np import matplotlib.pyplot as plt plt.plot(w, 20*np.log10(np.abs(h)/2)) -schedule = Schedule(sfg, cyclic=False) +schedule = Schedule(sfg, cyclic=True) diff --git a/examples/threepointwinograddft.py b/examples/threepointwinograddft.py index 18675f573ef3d2c92d740640418c190a2e84ef76..ea34231bc6020cf2c74d1626d987d421f1e1a5cc 100644 --- a/examples/threepointwinograddft.py +++ b/examples/threepointwinograddft.py @@ -38,4 +38,4 @@ sfg.set_execution_time_of_type(ConstantMultiplication.type_name(), 1) sfg.set_execution_time_of_type(Addition.type_name(), 1) sfg.set_execution_time_of_type(Subtraction.type_name(), 1) -schedule = Schedule(sfg, cyclic=False) +schedule = Schedule(sfg, cyclic=True)