-
Notifications
You must be signed in to change notification settings - Fork 637
[chiselsim] Add FIRRTL macro control #4699
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
Conversation
layerControl: LayerControl.Type = LayerControl.EnableAll, | ||
chiselSettings: ChiselSettings[T] = ChiselSettings.default[T], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note: because the default
factory is necessarily given a type parameter with a lower bound (A <: RawModule]
), this necessitates giving it a type parameter on line 77 here. If I don't do this, this will infer to Nothing
and everything blows up.
There may be a way to untangle this.
50f6ddf
to
58a1586
Compare
58a1586
to
bd1218d
Compare
bd1218d
to
16ec7fe
Compare
Extend ChiselSettings with three macros which were currently being set by ChiselRunners: - ASSERT_VERBOSE_COND - PRINTF_COND - STOP_COND Make this work in such a way that the user can specify a function that will return the _signal_ that they want to use to set this macro in one of several predefined ways. Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>
16ec7fe
to
ac56d63
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! A few nits but I like it
Change SimulatorAPI methods to use the ChiselSettings class instead of
directly communicating layerControl. This will enable us to lump together
more options that all are associated with Chisel/FIRRTL/the Verilog ABI.
Extend ChiselSettings with three macros which were currently being set by
ChiselRunners:
Make this work in such a way that the user can specify a function that
will return the signal that they want to use to set this macro in one of
several predefined ways.
This is working towards replacing this part of ChiselSpec: https://github.com/chipsalliance/chisel/blob/main/src/test/scala-2/chiselTests/ChiselSpec.scala#L60
Release Notes