Many FPGA architectures allow RTL to contain initial values for storage elements.
Use of these can significantly simplify designs since they provide the opportunity to eliminate hardware-based reset controls.
Provide the option to use initial values for the field storage elements. One idea would be to make this a command-line option --use-init (and also mirror this as a TOML config setting)
Other considerations:
- Init value would use the field's reset value
- If no reset value specified, assign "X" (required since this would be a struct initialization)
- May want to do the same for cpuif and other glue logic storage elements.
- May be interesting to provide the option to override the default reset signal to eliminate it entirely
- Users should still be able to provide specific hardware resets using field_reset/resetsignal and cpuif_reset mechanisms.
Many FPGA architectures allow RTL to contain initial values for storage elements.
Use of these can significantly simplify designs since they provide the opportunity to eliminate hardware-based reset controls.
Provide the option to use initial values for the field storage elements. One idea would be to make this a command-line option
--use-init(and also mirror this as a TOML config setting)Other considerations: