SystemC Simulation *** trigger each driver in individual delta cycles dut.p1: 1 ns @ 1: writing dut.sig = 1 dut.run: 1 ns @ 2: reading dut.sig = 1 dut.p2: 1 ns @ 2: writing dut.sig = 2 dut.run: 1 ns @ 3: reading dut.sig = 2 dut.p3: 1 ns @ 3: writing dut.sig = 3 dut.run: 1 ns @ 4: reading dut.sig = 3 dut.p4: 1 ns @ 4: writing dut.sig = 1 dut.run: 1 ns @ 5: reading dut.sig = 1 *** trigger 1-2-3 in the same delta cycle dut.p1: 2 ns @ 6: writing dut.sig = 1 dut.p2: 2 ns @ 6: writing dut.sig = 2 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p1' (sc_method_process) second driver `dut.p2' (sc_method_process) conflicting write in delta cycle 6 In file: In process: dut.p2 @ 2 ns dut.p3: 2 ns @ 6: writing dut.sig = 3 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p1' (sc_method_process) second driver `dut.p3' (sc_method_process) conflicting write in delta cycle 6 In file: In process: dut.p3 @ 2 ns dut.run: 2 ns @ 7: reading dut.sig = 1 *** trigger 2-3-1 in the same delta cycle dut.p2: 3 ns @ 8: writing dut.sig = 2 dut.p3: 3 ns @ 8: writing dut.sig = 3 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p2' (sc_method_process) second driver `dut.p3' (sc_method_process) conflicting write in delta cycle 8 In file: In process: dut.p3 @ 3 ns dut.p1: 3 ns @ 8: writing dut.sig = 1 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p2' (sc_method_process) second driver `dut.p1' (sc_method_process) conflicting write in delta cycle 8 In file: In process: dut.p1 @ 3 ns dut.run: 3 ns @ 9: reading dut.sig = 2 *** trigger 3-1-2 in the same delta cycle dut.p3: 4 ns @ 10: writing dut.sig = 3 dut.p1: 4 ns @ 10: writing dut.sig = 1 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p3' (sc_method_process) second driver `dut.p1' (sc_method_process) conflicting write in delta cycle 10 In file: In process: dut.p1 @ 4 ns dut.p2: 4 ns @ 10: writing dut.sig = 2 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p3' (sc_method_process) second driver `dut.p2' (sc_method_process) conflicting write in delta cycle 10 In file: In process: dut.p2 @ 4 ns dut.run: 4 ns @ 11: reading dut.sig = 3 *** trigger 1-2-1-2 in the same delta cycle dut.p1: 5 ns @ 12: writing dut.sig = 1 dut.p2: 5 ns @ 12: writing dut.sig = 2 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p1' (sc_method_process) second driver `dut.p2' (sc_method_process) conflicting write in delta cycle 12 In file: In process: dut.p2 @ 5 ns dut.p1: 5 ns @ 12: writing dut.sig = 1 dut.p2: 5 ns @ 12: writing dut.sig = 2 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p1' (sc_method_process) second driver `dut.p2' (sc_method_process) conflicting write in delta cycle 12 In file: In process: dut.p2 @ 5 ns dut.run: 5 ns @ 13: reading dut.sig = 1 *** trigger 2-1 in the same delta cycle dut.p2: 6 ns @ 14: writing dut.sig = 2 dut.p1: 6 ns @ 14: writing dut.sig = 1 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p2' (sc_method_process) second driver `dut.p1' (sc_method_process) conflicting write in delta cycle 14 In file: In process: dut.p1 @ 6 ns dut.run: 6 ns @ 15: reading dut.sig = 2 *** trigger 1-3 in the same delta cycle dut.p1: 7 ns @ 16: writing dut.sig = 1 dut.p3: 7 ns @ 16: writing dut.sig = 3 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p1' (sc_method_process) second driver `dut.p3' (sc_method_process) conflicting write in delta cycle 16 In file: In process: dut.p3 @ 7 ns dut.run: 7 ns @ 17: reading dut.sig = 1 *** trigger 1-4-1 in the same delta cycle dut.p1: 8 ns @ 18: writing dut.sig = 1 dut.p4: 8 ns @ 18: writing dut.sig = 1 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p1' (sc_method_process) second driver `dut.p4' (sc_method_process) conflicting write in delta cycle 18 In file: In process: dut.p4 @ 8 ns dut.p1: 8 ns @ 18: writing dut.sig = 1 dut.run: 8 ns @ 19: reading dut.sig = 1 *** trigger 4-1 in the same delta cycle dut.p4: 9 ns @ 20: writing dut.sig = 1 dut.p1: 9 ns @ 20: writing dut.sig = 1 Error: (E115) sc_signal cannot have more than one driver: signal `dut.sig' (sc_signal) first driver `dut.p4' (sc_method_process) second driver `dut.p1' (sc_method_process) conflicting write in delta cycle 20 In file: In process: dut.p1 @ 9 ns dut.run: 9 ns @ 21: reading dut.sig = 1 Program completed