[i2c,dv] Clean up protocol coverage
- Dominant language
- SystemVerilog
- Stars
- 3.6k
- Forks
- 1.1k
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 141
Description
### Description
The protocol coverage is currently implemented in a module and directly monitoring signals in the design. Eventually it would be better to move this functionality into a class instead and use the virtual interface.
This issue was based on the following TODO:
https://github.com/lowRISC/opentitan/blob/fd6c80ba801bea6aaa1e96bb16e006c386a74497/hw/ip/i2c/dv/sva/i2c_protocol_cov.sv#L105
Contributor guide
Research direction
Start with hw/ip/i2c/dv/sva/i2c_protocol_cov.sv and the linked TODO at line 105. Trace how the current module monitors design signals, then inspect the I2C DV virtual-interface patterns before defining the class-based equivalent. Done means protocol coverage uses the virtual interface while preserving the existing coverage behavior.
Written by the indexing model from the issue text.
Assessment
- Domain
- embedded-iot, testing
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100