Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Combinational sensitivity detection is excessively pessimistic #233

Closed
mkorbel1 opened this issue Dec 20, 2022 · 0 comments · Fixed by #240
Closed

Combinational sensitivity detection is excessively pessimistic #233

mkorbel1 opened this issue Dec 20, 2022 · 0 comments · Fixed by #240
Assignees
Labels
bug Something isn't working

Comments

@mkorbel1
Copy link
Contributor

mkorbel1 commented Dec 20, 2022

Describe the bug

The current implementation that searches for expanded sensitivity lists in Combinational will not look "inside" other Modules along the path from its outputs to inputs. If a Sequential is inside of another Module along the path, it will skip over it assuming that any input may have a combinational path to any output. This is excessively pessimistic, and can lead to detection of non-existent combinational loops in Logic reentrance checking.

To Reproduce

Connections like shown below will reproduce this issue:

  ______________________
  | Module             |
--|<-- [Sequential] <--|--
| |____________________| |
|                        |
---->[Combinational]----->

If the combinational in the diagram is also responsible for driving some other input to the module, it can cause a false combinational loop detection.

Expected behavior

No invalid detection of combinational loops.

Actual behavior

X generation due to reentrance detection in Logic.put

Additional: Dart SDK info

No response

Additional: pubspec.yaml

No response

Additional: Context

No response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant