v3.0.0-RC1
Pre-release
Pre-release
- Invalidate API (#645)
Prior to this pull request, chisel automatically generated a DefInvalid for Module IO(), and each Wire() definition. This made it difficult to detect cases where output signals were never driven.
Chisel now supports a DontCare element, which may be connected to an output signal, indicating that that signal is intentionally not driven.
Firrtl will complain with a "not fully initialized" error if a signal is not driven by hardware or connected to a DontCare.
This feature is controlled by CompileOptions.explicitInvalidate and is set to false in NotStrict (Chisel2 compatibility mode), and true in Strict mode.
Please see the corresponding API tests for examples.