Definition
Virtual coverage describes the concept of improving coverage-measurement granularity by inserting synthetic coverage points, with the goal of enhancing coverage-guided verification performance. [1]
Use in cross-level processor verification
In Efficient Cross-Level Processor Verification using Coverage-guided Fuzzing, virtual coverage appears in a co-simulation workflow that compares an instruction-set simulator (ISS) and an RTL core. The whole co-simulation, including both the RTL core and the ISS, is instrumented to collect coverage. In that setup, the authors state that the coverage of one core acts as virtual coverage for the other core. [2]
Coverage, together with a return code, is then provided as execution feedback to the fuzzer; the paper describes using shared memory for this feedback path. [3]
Practical role
Within the cited workflow, virtual coverage is used to expose additional coverage feedback to the coverage-guided fuzzing process. Rather than relying only on coverage directly observed for one implementation, the co-simulation can use coverage from the counterpart implementation as additional guidance. [2]