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

Refactor Bluespec Parameters into Config Infrastructure #9

Open
dz333 opened this issue Apr 27, 2021 · 0 comments
Open

Refactor Bluespec Parameters into Config Infrastructure #9

dz333 opened this issue Apr 27, 2021 · 0 comments
Labels
code generation Related to Generating RTL Code enhancement New feature or request

Comments

@dz333
Copy link
Collaborator

dz333 commented Apr 27, 2021

In order to make sizes (e.g. of Vectors) parametrizable in BSV, the standard practice is to make a file
full of macro definitions => sadly these cannot be instantiated as part of the module types

(e.g., if we have a LSQ definition which has internal Vectors then we can't instantiate multiple copies of that LSQ module with differently sized vectors unless it is computed based on types of other elements (like data, address, or size).

This is the wrong direction of parameterization (I'd rather say, 'make a structure with 8 entries' than, make a structure whose tags require 3 bits) -> and thus we need to do the weird macro define thing.

TODO for this is figure out a good way to integrate this with our BSV runtime with the eventual goal of threading user specified parameters from the frontend all the way through.

@dz333 dz333 added enhancement New feature or request code generation Related to Generating RTL Code labels Apr 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code generation Related to Generating RTL Code enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant