diff --git a/b_asic/schedule.py b/b_asic/schedule.py
index c0d998ccad05ab027d78dcb8c99bca91214a489f..58fa572a70b1c80eabe911710b1c81d1156341c8 100644
--- a/b_asic/schedule.py
+++ b/b_asic/schedule.py
@@ -1361,7 +1361,9 @@ class Scheduler:
         for outports in prec_list[2:]:
             # try all remaining operations for one time step
             candidates = []
+            current_time -= 1
             while len(candidates) == 0:
+                current_time += 1
                 for outport in outports:
                     remaining_op = outport.operation
                     op_is_ready_to_be_scheduled = True
@@ -1374,7 +1376,6 @@ class Scheduler:
                     if op_is_ready_to_be_scheduled:
                         candidates.append(remaining_op)
                         # sched._start_times[remaining_op.graph_id] = current_time
-                current_time += 1
             sorted_candidates = sorted(
                 candidates, key=lambda candidate: candidate.latency
             )