The code coverage files are textual. They consist of sections, one per module instance, each section of which starts with a line of the form:
<instance type> <instance name> <number of coverage elements>
The sections indicate the code coverage of each module instance: each section heading is then followed by the specified number of lines, each line
containing an integer which should be the number of occurrences of a coverage element.
A sample code coverage file may then be:
and and_gate_1 4
and and_gate_2 4
This file may indicate (depending on the coding of the and gate, and the meaning that particular coding supplies to the code coverage
for the simulation engine) that one AND gate has its two inputs exercised as 00 ten times, 01 twenty times, 10 five times, and 11 never. The second
AND gate, then, would have its inputs exercised as 00 never, 01 fifteen times, 10 ten times, and 11 ten times.
Of course, the actual meaning depends on the code implementing the AND gate, and particularly how that code calculates its code coverage
that it reports to the simulation engine.