lowRISC / lowRISC/opentitan

[dv/chip] LC_CTRL related chip level coverage

Open
#15,481 6 comments 1 reaction 0 assignees View on GitHub
Component:DV Earlgrey-PROD Candidate
Dominant language
SystemVerilog
Stars
3.6k
Forks
1.1k
Avg merge
2d 22h
Merged PRs (30d)
141

Description

- [ ] [cindy] lc_otp_vendor_test_i/o: Move to connectivity test, tied off in open source chip level test.
---> Check if block level checked output from CSR, check if connectivity is done in chip level.
Block level check here: https://github.com/lowRISC/opentitan/blob/master/hw/ip/lc_ctrl/dv/env/lc_ctrl_scoreboard.sv#L163

- [ ] lc_otp_program_o.count/program: sparsely encoded. So some of the toggle values are unreachable.
But since we are changing build-seeds to generate different encoding pattern, it is very hard to find the unreachables on the fly.
Are we comfortable to exclude the entire outputs?
- [ ] otp_lc_data_i.state/count: same issue as above
- [x] [cindy] lc_otp_program_i.err: We have a testbench, but it only forces the value to be 1. Will fix it to release the force.
- [ ] kmac_data_i.error: No test currently cover this scenario. Test issue: https://github.com/lowRISC/opentitan/issues/16069
- [ ] [cindy] otp_manuf_state_i: design constant, other values can be excluded.
- [x] [cindy] hw_rev_o.chip_rev/chip_gen: design constant, can just check connectivity.

FYI @msfschaffner @sriyerg

Contributor guide

Open the contributing guide

Research direction

Start with the lc_ctrl scoreboard at hw/ip/lc_ctrl/dv/env/lc_ctrl_scoreboard.sv#L163 and review each unchecked coverage item. Check the linked issue 16069 for the kmac_data_i.error test context. Done means resolving or documenting the listed connectivity, unreachable-value, and missing-scenario coverage decisions.

Written by the indexing model from the issue text.

Assessment

Domain
embedded-iot, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.