diff --git a/src/kyupy/sim.py b/src/kyupy/sim.py index 3df8019..c1dfcae 100644 --- a/src/kyupy/sim.py +++ b/src/kyupy/sim.py @@ -272,10 +272,10 @@ class SimOps: # allocate and keep memory for PI/PPI, keep memory for PO/PPO (allocated later) for i, n in enumerate(circuit.s_nodes): - if len(n.outs) > 0: + if 'dff' in n.kind.lower() or len(n.ins) == 0: # PPI or PI self.c_locs[self.ppi_offset + i], self.c_caps[self.ppi_offset + i] = h.alloc(c_caps_min), c_caps_min ref_count[self.ppi_offset + i] += 1 - if len(n.ins) > 0: + if len(n.ins) > 0: # PO i0_idx = stems[n.ins[0]] if stems[n.ins[0]] >= 0 else n.ins[0] ref_count[i0_idx] += 1