Add options.ElaborationOptions and move clock/reset configuration there
Migration: change option.CompilerOptions.ClkCfg to option.ElaborationOptions.ClkCfg. Same for RstCfg.
@top annotation
This annotation is now must be applied on top-level design declarations.
E.g.: @top class Example extends RTDesign
Its purpose:
Carry now newly created (implicit) elaboration options into the elaboration operation.
Create a main entry point application named top_<design_name> that can get user command-line options. Currently the command-line only enables updating the top-level arguments and selecting mode of running. In the near future more options will be added.
Use @top(false) to just add the annotation without creating a main entry point.
Migration: for top-level designs add @top(false) annotation if you don't want a main entry point.
Support for vector lengths as embedded parameters
Same as already existed for UInt,SInt,Bits widths, now exists for a generic vector length. E.g.:
val depth: Int <> CONST = 10
val dataWidth: Int <> CONST = 16
val vec = Bits(dataWidth) X depth <> VAR
Other minor updates:
add missing checks for proper vector lengths.
on errors, in SBT console, exception is raised by default instead of exit.
This PR breaks backward source compatibility
Add
options.ElaborationOptions
and move clock/reset configuration thereMigration: change
option.CompilerOptions.ClkCfg
tooption.ElaborationOptions.ClkCfg
. Same forRstCfg
.@top
annotationThis annotation is now must be applied on top-level design declarations. E.g.:
@top class Example extends RTDesign
Its purpose:top_<design_name>
that can get user command-line options. Currently the command-line only enables updating the top-level arguments and selecting mode of running. In the near future more options will be added.@top(false)
to just add the annotation without creating a main entry point.Migration: for top-level designs add
@top(false)
annotation if you don't want a main entry point.Support for vector lengths as embedded parameters
Same as already existed for
UInt
,SInt
,Bits
widths, now exists for a generic vector length. E.g.:Other minor updates: