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

Gowin. FFs placement. #1386

Merged
merged 3 commits into from
Oct 22, 2024
Merged

Gowin. FFs placement. #1386

merged 3 commits into from
Oct 22, 2024

Conversation

yrabbit
Copy link
Contributor

@yrabbit yrabbit commented Oct 22, 2024

  • Allow clusters to be created from FFs and LUTs;

  • Immediately create pass-through LUTs from free LUTs adjacent to FF - at the same time ensure alternating use of LUT inputs;

  • In case of constant networks, such pass-through LUTs are disconnected from networks altogether;

  • Allow FF to be placed directly into SSRAM slides - this is useful when using synchronous reading.

* Allow clusters to be created from FFs and LUTs;

* Immediately create pass-through LUTs from free LUTs adjacent to FF - at the same time ensure alternating use of LUT inputs;

* In case of constant networks, such pass-through LUTs are disconnected from networks altogether;

* Allow FF to be placed directly into SSRAM slides - this is useful when using synchronous reading.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
if (ctx->debug) {
log("make a pass-through.\n");
}
IdString lut_input = lut_tmpl.at(cur_lut_tmpl).first;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is there a reason for changing which LUT input is used each time? this seems like something that long term might be better dealt with using LUT permutation

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no particular reason. I can use the I3 input to all LUTS if you think it is so convenient for the one who will implement Permutation in the future.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would make the code a bit simpler, if there are no other downsides I would just stick to I3 particularly if permutation is planned for the future

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
@gatecat gatecat merged commit 9c2d96f into YosysHQ:master Oct 22, 2024
8 checks passed
@yrabbit yrabbit deleted the ff-inputs branch October 22, 2024 12:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants