lowRISC / lowRISC/opentitan

[ac_range_check/dv] DV Bring-Up, Smoke Test, V1 Sign-Off

Open
#26,113 0 comments 0 reactions 1 assignee Assigned to @martin-velay View on GitHub
Component:DV IP:ac_range_check
Dominant language
SystemVerilog
Stars
3.6k
Forks
1.1k
Avg merge
2d 22h
Merged PRs (30d)
141

Description

`ac_range_check` is a recently created HW IP block that is currently only instantiated in Darjeeling. To establish a basic level of confidence in the correctness of the implementation, block-level DV needs to be brought up, a smoke test exercising and checking essential functionality needs to pass, and eventually the block needs to be signed off at V1.

We want to get this done in three phases:
1. Bring up DV, so that multiple contributors can afterwards work in parallel on tests (or parts thereof) and checks.
2. Write smoke test and add basic checks to scoreboard; get it to pass with the default seed.
3. V1 sign off.

# Tasks

## DV Bring-Up
- [ ] #26115
- [x] DUT instantiated with major interfaces connected --> #26267
- [x] All available interface assertion monitors connected --> #26267
- [x] X / unknown checks on DUT outputs added
- #26174
- #26861
- [x] Skeleton DV environment created with UVCs --> #26267
- [x] TLM connections made from interface monitors to the scoreboard --> #26267

## Smoke Test
- [x] Smoke test (accessing basic functionality) written and manually checked for correctness
- #26446
- #26513
- #26643
- #26699
- #26707
- [x] Basic checks added to scoreboard
- #26513
- #26707
- [x] CSR / mem test suite activated and passing
- #26446
- #26845
- [x] Smoke test passing basic checks in scoreboard at least for the default seed
- #26446
- #26513
- [x] Smoke test (default seed) enabled in CI
- #26688

## V1 Sign-Off
- [ ] DV document drafted and reviewed
- [ ] Testplan complete and reviewed
- [ ] Smoke test passes for most of the seeds
- [ ] Smoke test passes also in alternative simulator
- [ ] Nightly regression set up
- [ ] DV lint set up and passing
- [ ] Coverage collection set up (doesn't have to be complete yet)

# References / Details
- Templated code: `hw/ip_templates/ac_range_check/`
- Generated code for Darjeeling: `hw/top_darjeeling/ip_autogen/ac_range_check/`
- Specification:
- `README.md`
- `doc/theory_of_operation.md`
- [Original RFC](https://docs.google.com/document/d/1ONAPg0IE--SfHJ_1ZNlShxLU7-zF2Bg6iQQwcQ1EOKI/edit) (should now be fully part of in-tree docs listed above)
- Sign-off tool: Xcelium

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.