IP Library Granted Patent US 11,288,427
Granted Patent B2
US 11,288,427 · App. 16/814,342 · Granted Mar 29, 2022

Automated root-cause analysis, visualization, and debugging of static verification results

Inventors: Sauresh Bhowmick (Bangalore, IN); Sanjay Gulati (Noida, IN); Sourasis Das (Bangalore, IN); Bhaskar Pal (Bangalore, IN); Rajarshi Mukherjee (San Jose, CA)
Assignee: Synopsys, Inc.
G06F30/3323G06N20/00G06T11/206
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,288,427
App. No.
16/814,342
Granted
Mar 29, 2022
Kind
B2
Abstract

Disclosed herein are system, method, and computer-readable storage device embodiments for implementing automated root-cause analysis for static verification. An embodiment includes a system with memory and processor(s) configured to receive a report comprising violations and debug fields, and accept a selection of a seed debug field from among the plurality of debug fields. Clone violations may be generated by calculating an overlay of a given violation of the violations and a seed debug field, yielding possible values for a subset of debug fields. A clone violation may be created for a combination of the at least two second debug fields, populating a projection matrix, which may be used to map violations and clone violations to corresponding numerical values in the projection matrix and determine a violation cluster based on the mapping having corresponding numerical values and score(s) satisfying a threshold, via ML. Clustering may further be used to generate visualizations.

Claims (42)

1. A system for performing automated root-cause analysis, comprising:

memory and at least one computer processor communicatively coupled with the memory and configured to perform operations comprising:

selecting a seed debug field from among the plurality of debug fields in a report;

creating a clone violation for a given combination of at least two additional debug fields, based at least in part on the seed debug field and a violation type;

populating a projection matrix, based at least in part on mapping the violation to the clone violation;

determining a violation cluster, based at least in part on the projection matrix; and

generating a representation of the violation cluster.

2. The system of claim 1 , the operations further comprising:

grouping a plurality of violations, having a plurality of violation types, into one or more violation groups comprising a subset of the plurality of violations within the violation cluster, based on similarity of the numerical values corresponding to at least one debug field of the plurality of debug fields.

3. The system of claim 2 , the operations further comprising:

identifying a dominant violation field, from the at least one debug field of the plurality of debug fields, as corresponding to a root cause of at least the subset of the plurality of violations.

4. The system of claim 1 , wherein the projection matrix comprises a table of unique field values for each violation of a given number of violations.

5. The system of claim 4 , wherein the populating the projection matrix further comprises adding a zero-count axis to the table of unique field values.

6. The system of claim 1 , wherein the determining comprises processing the representation via a mean-shift algorithm, k-means clustering algorithm, balanced iterative reducing and clustering using hierarchies (BIRCH) algorithm, or a combination thereof.

7. The system of claim 1 , wherein the report comprises violation data representing the plurality of violations, wherein the violation data corresponds to at least one violation of a low-power specification, and wherein the violation data is formatted in accordance with Unified Power Format (UPF).

8. A computer-implemented method of automated root-cause analysis, comprising:

selecting, by at least one computer processor, a seed debug field from among a plurality of debug fields in a report;

creating, by the at least one computer processor, a clone violation for a given combination of at least two additional debug fields, based at least in part on the seed debug field and a violation type;

populating, by the at least one computer processor, a projection matrix, based at least in part on mapping the violation to the clone violation;

determining, by the at least one computer processor, a violation cluster, based at least in part on the projection matrix; and

generating, by the at least one computer processor, a representation of the violation cluster.

9. The computer-implemented method of claim 8 , further comprising:

grouping, by the at least one computer processor, having a plurality of violation types, into one or more violation groups comprising a subset of the plurality of violations within the violation cluster, based on similarity of the numerical values corresponding to at least one debug field of the plurality of debug fields.

10. The computer-implemented method of claim 9 , further comprising:

identifying, by the at least one computer processor, a dominant violation field, from the at least one debug field of the plurality of debug fields, as corresponding to a root cause of at least the subset of the plurality of violations.

11. The computer-implemented method of claim 8 , wherein the projection matrix comprises a table of unique field values for each violation of a given number of violations.

12. The computer-implemented method of claim 11 , wherein the populating the projection matrix further comprises adding a zero-count axis to the table of unique field values.

13. The computer-implemented method of claim 8 , wherein the determining comprises processing the representation via a mean-shift algorithm, k-means clustering algorithm, balanced iterative reducing and clustering using hierarchies (BIRCH) algorithm, or a combination thereof.

14. The computer-implemented method of claim 8 , wherein the report comprises violation data representing the plurality of violations, wherein the violation data corresponds to at least one violation of a low-power specification, and wherein the violation data is formatted in accordance with Unified Power Format (UPF).

15. A non-transitory computer-readable storage device having instructions stored thereon, wherein the instructions, when executed, cause at least one computer processor to perform operations for automated root-cause analysis, the operations comprising:

selecting a seed debug field from among a plurality of debug fields in a report;

creating a clone violation for a given combination of at least two additional debug fields, based at least in part on the seed debug field and a violation type;

populating a projection matrix, based at least in part on mapping the violation to the clone violation;

determining a violation cluster, based at least in part on the projection matrix; and

generating a representation of the violation cluster.

16. The non-transitory computer-readable storage device of claim 15 , the operations further comprising:

grouping a plurality of violations, having a plurality of violation types, into one or more violation groups comprising a subset of the plurality of violations within the violation cluster, based on similarity of the numerical values corresponding to at least one debug field of the plurality of debug fields.

17. The non-transitory computer-readable storage device of claim 16 , the operations further comprising:

identifying a dominant violation field, from the at least one debug field of the plurality of debug fields, as corresponding to a root cause of at least the subset of the plurality of violations.

18. The non-transitory computer-readable storage device of claim 15 , wherein the projection matrix comprises a table of unique field values for each violation of a given number of violations.

19. The non-transitory computer-readable storage device of claim 18 , wherein the populating the projection matrix further comprises adding a zero-count axis to the table of unique field values.

20. The non-transitory computer-readable storage device of claim 15 , wherein the determining comprises processing the representation via a mean-shift algorithm, k-means clustering algorithm, balanced iterative reducing and clustering using hierarchies (BIRCH) algorithm, or a combination thereof.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2022
From: BHOWMICK, SAURESH; GULATI, SANJAY; DAS, SOURASIS; PAL, BHASKAR; MUKHERJEE, RAJARSHI
To: SYNOPSYS, INC.
Reel/Frame 058976/0422 →
Continuity (2)
Continuation 16242746 · Jan 8, 2019
Related Publication 20200349311A1 · Nov 5, 2020