|
|
|
|
@ -669,13 +669,16 @@ class Circuit:
@@ -669,13 +669,16 @@ class Circuit:
|
|
|
|
|
ins = '|'.join([f'<i{i}>{i}' for i in range(len(n.ins))]) |
|
|
|
|
outs = '|'.join([f'<o{i}>{i}' for i in range(len(n.outs))]) |
|
|
|
|
io = f' [{s_dict[n]}]' if n in s_dict else '' |
|
|
|
|
s.node(name=str(n.index), label = f'{{{{{ins}}}|{n.index}{io}\n{n.kind}\n{n.name}|{{{outs}}}}}', shape='record') |
|
|
|
|
s.node(name=str(n.index), label = fr'{{{{{ins}}}|{n.index}{io}\n{n.kind}\n{n.name}|{{{outs}}}}}', shape='record') |
|
|
|
|
|
|
|
|
|
for l in self.lines: |
|
|
|
|
driver, reader = f'{l.driver.index}:o{l.driver_pin}', f'{l.reader.index}:i{l.reader_pin}' |
|
|
|
|
if node_level[l.driver] >= node_level[l.reader]: |
|
|
|
|
if node_level[l.driver] == node_level[l.reader]: |
|
|
|
|
s.node(f'_{l.index}_') |
|
|
|
|
dot.edge(driver, f'_{l.index}_', style='dotted', label=str(l.index)) |
|
|
|
|
dot.edge(f'_{l.index}_', reader, style='dotted', label=str(l.index)) |
|
|
|
|
elif node_level[l.driver] > node_level[l.reader]: |
|
|
|
|
dot.edge(driver, reader, style='dotted', label=str(l.index)) |
|
|
|
|
pass |
|
|
|
|
else: |
|
|
|
|
dot.edge(driver, reader, label=str(l.index)) |
|
|
|
|
|
|
|
|
|
|