Code Coverage Reconstruction via Primary and Secondary Bin Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing code coverage collection methods in electronic design automation are resource-intensive, leading to slow processing throughput and impractical hardware utilization due to the need for numerous counters and associated logic, especially with the increased use of hardware emulators for functional verification.
Innovation Solution
Implementing a system that divides coverage bins into primary and secondary bins, where primary bins record events and secondary bins have their records inferred from primary bins, reducing the need for extensive counter implementation and conserving resources by selectively using counters only for primary bins during simulation or emulation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If counters and associated logic are added to support coverage bins during circuit design simulation, then code coverage measurement capability is improved, but resource consumption and processing time increase
Solution Approach 1:
The patent segments coverage bins into two categories: coverage bins that are actively monitored during simulation and coverage bins that are not actively monitored. This segmentation allows the system to focus measurement resources on critical coverage areas while reducing overall resource consumption and improving processing throughput.
Solution Approach 2:
The patent extracts the coverage measurement function from the simulation engine itself, implementing coverage bins as separate, independently monitored structures. This extraction allows coverage measurement to be performed only where necessary without burdening the main simulation processing, thereby improving overall productivity while maintaining measurement precision.
2Measurement precision
If counters and associated logic are added to support coverage bins during hardware emulation, then code coverage measurement capability is improved, but hardware capacity utilization becomes impractical
Solution Approach 1:
The patent segments coverage bins into those monitored during hardware emulation and those not monitored, allowing the system to achieve comprehensive coverage measurement without requiring hardware resources for every single coverage bin. This segmentation maintains measurement precision while reducing device complexity.
Solution Approach 2:
The patent uses software-based coverage bin records to complement hardware emulation, copying coverage measurement functionality from hardware to software where appropriate. This approach maintains measurement capability while avoiding the need to implement all coverage bins in hardware, thereby reducing hardware capacity requirements.
3Measurement precision
If comprehensive coverage bins are implemented for all code statements, then measurement precision is improved, but resource consumption increases
Solution Approach 1:
The patent segments the set of all coverage bins into monitored and unmonitored subsets, allowing comprehensive coverage measurement without requiring active monitoring of every single bin. This segmentation reduces the quantity of monitoring resources consumed while maintaining complete measurement capability through selective monitoring combined with inference.
Solution Approach 2:
The patent implements partial monitoring of coverage bins, focusing resources on the most critical coverage areas while relying on inference and reconstruction for less critical areas. This partial action approach achieves sufficient measurement precision without the excessive resource consumption of complete monitoring.
Data Source
AI summary
This application discloses a computing system configured to divide bins into primary bins and secondary bins based, at least in part, on a configuration of a circuit design describing an electronic device. The computing system can utilize the primary bins to record coverage events performed by the electronic device when modeled in a verification environment by the computing system, and infer coverage event records for the secondary bins based, at least in part, on the coverage event records for the primary bins.


