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

Add a way to specify global values used in the gen framework #427

Open
Tracked by #405
UnsignedByte opened this issue Mar 7, 2024 · 0 comments
Open
Tracked by #405

Add a way to specify global values used in the gen framework #427

UnsignedByte opened this issue Mar 7, 2024 · 0 comments

Comments

@UnsignedByte
Copy link
Collaborator

UnsignedByte commented Mar 7, 2024

Currently, in PR #398 we modify gen parameters as follows:

[globals.flopoco]
conf = "frequency=800 ..."

We use this configuration file by running filament with the --gen-config /path/to/conf.toml argument.

This allows us to insert whatever values we want into the [globals] tag for the flopoco.toml gen framework file.
This is very nice in some aspects as it allows us to modify multiple different frameworks at once without worrying about namespace collisions and the like. It has some downsides, however:

  • We cannot specify parameters at a component-level, meaning all instances of a component will have the same gen framework settings
  • The setting is global, meaning if for some reason one module was built to work at a specific value (For example if we wanted XLS pipeline depth = some value we can hand optimize with), specifying this file elsewhere would break that behavior.
  • There is no relationship between the globals variables and the output filament, I.E. maybe we would want pipeline depth to actually affect the latency of the component output?
  • The configuration is in a separate file that we have to include every time we compile

I remember we discussed before the possibility of maybe using something like #[attribute=] notation or something like this to achieve the same behavior, but this might run into some of the namespacing issues we mentioned before.

@UnsignedByte UnsignedByte changed the title Adds a way to specify global values used in a configuration (open an issue to discuss the current implementation) Add a way to specify global values used in the gen framework Mar 7, 2024
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

No branches or pull requests

1 participant