Skip to content

[Add] Parameterizable decoder and verification flows - #28

Merged
ErickOF merged 2 commits into
devfrom
feature-parameterizable_decoder
Sep 21, 2026
Merged

ErickOF merged 2 commits into
devfrom
feature-parameterizable_decoder

Conversation

@ErickOF

@ErickOF ErickOF commented Sep 21, 2026

Copy link
Copy Markdown
Collaborator

Implement a reusable binary-to-one-hot decoder and qualify its portable open-source behavior.

  • Add parameterizable active-high decoding with validity reporting, non-power-of-two support, fail-closed X/Z behavior, and elaboration-time parameter guards.
  • Add qualified output counts 1, 2, 3, 4, 5, 8, 16, and 32 with exhaustive legal, invalid, disabled, transition, and randomized testing.
  • Add shared predicates, bound assertions, assumption-free format proofs, reusable coverage, and RTL-to-Yosys-netlist equivalence checks.
  • Add functional, transition, line, branch, toggle, and formal coverage qualification with explicit release thresholds.
  • Add invalid-parameter, inverted-enable mutation, and four-state X/Z detection campaigns.
  • Add executable SDC and UPF static-intent checks plus CDC, DFT, synthesis, low-power, and exploratory physical collateral.
  • Register the decoder in concurrent local, native GitHub Actions, and containerized module-profile execution.
  • Preserve representative coverage evidence in native and containerized release manifests.
  • Add interface, project configuration, power characterization, verification-plan, waiver, and template-aligned release documentation.
  • Record commercial and physical checks as reviewed portable skips that remain mandatory in the first consuming integration.
  • Verify all eight profiles natively and in the pinned Docker environment, including coverage and release-manifest validation.

Implement a reusable binary-to-one-hot decoder and qualify its portable
open-source behavior.

- Add parameterizable active-high decoding with validity reporting,
  non-power-of-two support, fail-closed X/Z behavior, and
  elaboration-time parameter guards.
- Add qualified output counts 1, 2, 3, 4, 5, 8, 16, and 32 with
  exhaustive legal, invalid, disabled, transition, and randomized
  testing.
- Add shared predicates, bound assertions, assumption-free format
  proofs, reusable coverage, and RTL-to-Yosys-netlist equivalence
  checks.
- Add functional, transition, line, branch, toggle, and formal coverage
  qualification with explicit release thresholds.
- Add invalid-parameter, inverted-enable mutation, and four-state X/Z
  detection campaigns.
- Add executable SDC and UPF static-intent checks plus CDC, DFT,
  synthesis, low-power, and exploratory physical collateral.
- Register the decoder in concurrent local, native GitHub Actions, and
  containerized module-profile execution.
- Preserve representative coverage evidence in native and containerized
  release manifests.
- Add interface, project configuration, power characterization,
  verification-plan, waiver, and template-aligned release documentation.
- Record commercial and physical checks as reviewed portable skips that
  remain mandatory in the first consuming integration.
- Verify all eight profiles natively and in the pinned Docker
  environment, including coverage and release-manifest validation.
@ErickOF ErickOF self-assigned this Sep 21, 2026
@ErickOF ErickOF added the enhancement New feature or request label Sep 21, 2026
Close the final portable release requirements.

- Reference push run 35551308160 and pull-request run 35551684468 for
  qualified module revision 0ace813.
- Add approved exception DEC-CI-001 with the check-run annotations,
  local evidence locations, owner, reviewer, and removal condition.
- Complete the verification exit criteria and release checklist with no
  remaining open items.
@ErickOF
ErickOF merged commit d907c79 into dev Sep 21, 2026
4 of 6 checks passed
@ErickOF

ErickOF commented Sep 21, 2026

Copy link
Copy Markdown
Collaborator Author

Closed #2 .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant