diff --git a/src/kyupy/sim.py b/src/kyupy/sim.py index 32b7459..765a394 100644 --- a/src/kyupy/sim.py +++ b/src/kyupy/sim.py @@ -233,6 +233,7 @@ class SimOps: self.levels = [np.asarray(lv, dtype=np.int32) for lv in levels[::-1]] level_sums = np.cumsum([0]+[len(lv) for lv in self.levels], dtype=np.int32) self.level_starts, self.level_stops = level_sums[:-1], level_sums[1:] + # op format: [kind, out0, in0, in1, in2, in3, wsa_acc_pos, wsa_rise, wsa_fall] self.ops = np.vstack(self.levels) # create a map from fanout lines to stem lines for fork stripping diff --git a/tests/test_circuit.py b/tests/test_circuit.py index d4edcd3..834c53f 100644 --- a/tests/test_circuit.py +++ b/tests/test_circuit.py @@ -131,7 +131,14 @@ def test_pickle(mydir): cs = pickle.dumps(c) assert cs is not None c2 = pickle.loads(cs) - assert c == c2 + assert len(c.nodes) == len(c2.nodes) + +def test_equivalency(): + c1 = bench.parse('input(a) output(z) z=not(a)') + c2 = bench.parse('input(a) output(z) z=not(a)') + assert c1 != c2 + assert c1.lines[0] != c2.lines[0] + assert c1.nodes[0] != c2.nodes[0] def test_substitute():