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

Automatic sorting and grouping for generated outputs #545

Open
mkorbel1 opened this issue Jan 15, 2025 · 1 comment
Open

Automatic sorting and grouping for generated outputs #545

mkorbel1 opened this issue Jan 15, 2025 · 1 comment
Labels
enhancement New feature or request

Comments

@mkorbel1
Copy link
Contributor

Motivation

Currently, the order of module and signal declaration within generated outputs can appear somewhat random, being largely dependent on the order of construction and parsing. There may be a better way to sort and organize module and signal declarations based on the connectivity between them. For example, having things that depend on inputs near the top and that generate outputs near the bottom, and grouping logic together which are interdependent, could result in prettier and more readable outputs.

Desired solution

Add an ability for Synthesizers to organize module and signal declarations more intelligently based on their connectivity to each other and the ports of the module.

Alternatives considered

No response

Additional details

No response

@mkorbel1 mkorbel1 added the enhancement New feature or request label Jan 15, 2025
@mkorbel1
Copy link
Contributor Author

Perhaps grouping into clusters first (maybe somthing like https://en.wikipedia.org/wiki/HCS_clustering_algorithm), then topological sort between the clusters and within each cluster could get us close?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant