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.