Closed lee30sonia closed 1 year ago
Hi! I just looked at it quickly, and I think the condition on line 300 is indeed wrong.
When writing latches, I use the flag "skip_feedthrough" to toggle the following:
ri_name -> ro_name (skip_feedthrough = false)
ri_name -> li<id> -> ro_name (skip_feedthrough = true)
The condition does not apply to POs. I kept it because it was in the previous version.
Please let me know if it works after removing this line. I can also add some test cases to catch this issue.
You changed the conditioning logic from ||
to &&
in #573, why?
This parameter was first added in #245, but its purpose was not really documented and I've never seen it being used anywhere. I am prompted to remove it. If you need a flag like that for some purpose related to sequential interfaces, I suggest to use a more descriptive name and/or add clear documentation (is it really a choice a user can/should make?). In any case, we should carefully examine the code.
I see. I changed it because with ||
we cannot achieve the desired format in this test case
Fixed by #603
Describe the bug PO is not written out in BLIF when it is connected to a PI of the same index.
To Reproduce
mig.v:
output mig.blif:
The second PO (index 1) is dangling in BLIF because its printing is prevented by line 300 of
write_blif.hpp
. @Nozidoali, you were the last one who updated this file. Any idea why it is written like this? I don't understand why the condition( topo_ntk.get_node( f ) != index )
should exist.Additional context Minimize the problem reported in #595.
Check list