Skip to content

v3.0.0-RC1

Pre-release
Pre-release
Compare
Choose a tag to compare
@ucbjrl ucbjrl released this 22 Dec 17:38
· 5218 commits to main since this 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.