IP Library › Granted Patent US 10,915,683
Granted Patent B2
US 10,915,683 · App. 16/297,554 · Granted Feb 9, 2021

Methodology to create constraints and leverage formal coverage analyzer to achieve faster code coverage closure for an electronic structure

Inventors: Vinay Kumar Surisetty (Bangalore, IN); Nivin Ninan George (Bangalore, IN); Hari Pramoda Sri Sesha Arun Vedantham (Bangalore, IN); Chaitanya Kamasani (Bangalore, IN)
Assignee: Synopsys, Inc.
G06F30/30G06F8/4435G06F30/3323G06F2117/08
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 10,915,683
App. No.
16/297,554
Granted
Feb 9, 2021
Kind
B2
Abstract

An efficient unreachability analysis tool utilizes toggle coverage report data to automatically generate constraints associated with viable constant signals (e.g., constant inputs, one-time programmable and constant registers) utilized in a circuit design before performing a full unreachability analysis process, thereby improving the functioning of the computer/processor executing the unreachability analysis process by identifying low-activity registers and constraining them before the unreachability analysis process is performed, thereby substantially reducing the number of process steps required to identify dead code (unreachable signal/register targets). Constant inputs are identified using the toggle coverage report and used to generate corresponding constraints, and an initial unreachability analysis process is performed using only toggle coverage properties, then the full unreachability analysis process is performed for all (i.e., line, conditional, state/FSM and toggle) coverage properties using the constant input constraints. Constraints are also generated for one-time programmable and constant registers (OTP/C) before performing the full unreachability analysis process.

Claims (47)

1. A computer-implemented method for identifying dead code in a circuit design during development of the circuit design, the method comprising:

utilizing data contained in a toggle coverage report to automatically generate constant constraints associated with viable constant signals utilized in the circuit design, and

performing an unreachability analysis process using the automatically generated constant constraints to distinguish the dead code from the viable constant signals,

wherein utilizing the data contained in the coverage report comprises:

identifying constant inputs from the toggle coverage report, utilizing the identified constant inputs to generate corresponding constant input constraints;

performing a first unreachability analysis process only for toggle coverage properties using the constant input constraints;

generating a revised toggle coverage report in accordance with the first unreachability analysis process; and

performing a second unreachability analysis process for line coverage, conditional coverage, state coverage and toggle coverage properties using the revised toggle coverage report.

2. The method of claim 1 , further comprising forward propagating the identified constant inputs through synchronizers to all domains of the circuit design and generating corresponding constant input constraints before performing said first unreachability analysis process.

3. The method of claim 1 ,

wherein utilizing the data contained in the coverage report further comprises identifying one-time programmable and constant (OTP/C) registers, and generating corresponding OTP/C constraints, and

wherein performing the second unreachability analysis process further comprises utilizing the OTP/C constraints.

4. The method of claim 1 ,

wherein utilizing the data contained in the coverage report comprises identifying one-time programmable and constant (OTP/C) registers, and generating corresponding OTP/C constraints, and

wherein performing the unreachability analysis process comprises analyzing said circuit design for line coverage, conditional coverage, state coverage and toggle coverage properties using the OTP/C constraints.

5. A non-transitory computer readable medium comprising a stored circuit design and stored instructions, the instructions, when executed by a processor, cause the processor to execute operations for identifying dead code in the circuit design, the operations including:

utilizing data contained in a toggle coverage report to automatically generate constant constraints associated with viable constant signals utilized in the circuit design, and

performing an unreachability analysis process using the automatically generated constant constraints to distinguish the dead code from the viable constant signals,

wherein utilizing the data contained in the coverage report comprises:

identifying constant inputs from the toggle coverage report, utilizing the identified constant inputs to generate corresponding constant input constraints;

performing a first unreachability analysis process only for toggle coverage properties using the constant input constraints;

generating a revised toggle coverage report in accordance with the first unreachability analysis process; and

performing a second unreachability analysis process for line coverage, conditional coverage, state coverage and toggle coverage properties using the revised toggle coverage report.

6. The non-transitory computer readable medium of claim 5 , further comprising forward propagating the identified constant inputs through synchronizers to all domains of the circuit design and generating corresponding constant input constraints before performing said first unreachability analysis process.

7. The non-transitory computer readable medium of claim 5 ,

wherein utilizing the data contained in the coverage report further comprises identifying one-time programmable and constant (OTP/C) registers, and generating corresponding OTP/C constraints, and

wherein performing the second unreachability analysis process further comprises utilizing the OTP/C constraints.

8. The non-transitory computer readable medium of claim 5 ,

wherein utilizing the data contained in the coverage report comprises identifying one-time programmable and constant (OTP/C) registers, and generating corresponding OTP/C constraints, and

wherein performing the unreachability analysis process comprises analyzing said circuit design for line coverage, conditional coverage, state coverage and toggle coverage properties using the OTP/C constraints.

9. A system comprising:

a memory storing instructions; and

a processor, coupled with the memory and configured to execute the instructions, the instructions when executed cause the processor to execute operations comprising:

utilizing data contained in a toggle coverage report to automatically generate constant constraints associated with viable constant signals utilized in the circuit design, and

performing an unreachability analysis process using the automatically generated constant constraints to distinguish dead code in the circuit design from the viable constant signals in the circuit design,

wherein utilizing the data contained in the coverage report comprises:

identifying constant inputs from the toggle coverage report, utilizing the identified constant inputs to generate corresponding constant input constraints;

performing a first unreachability analysis process only for toggle coverage properties using the constant input constraints;

generating a revised toggle coverage report in accordance with the first unreachability analysis process; and

performing a second unreachability analysis process for line coverage, conditional coverage, state coverage and toggle coverage properties using the revised toggle coverage report.

10. The system of claim 9 , further comprising forward propagating the identified constant inputs through synchronizers to all domains of the circuit design and generating corresponding constant input constraints before performing said first unreachability analysis process.

11. The system of claim 9 ,

wherein utilizing the data contained in the coverage report further comprises identifying one-time programmable and constant (OTP/C) registers, and generating corresponding OTP/C constraints, and

wherein performing the second unreachability analysis process further comprises utilizing the OTP/C constraints.

12. The system of claim 9 ,

wherein utilizing the data contained in the coverage report comprises identifying one-time programmable and constant (OTP/C) registers, and generating corresponding OTP/C constraints, and

wherein performing the unreachability analysis process comprises analyzing said circuit design for line coverage, conditional coverage, state coverage and toggle coverage properties using the OTP/C constraints.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2019
From: SURISETTY, VINAY KUMAR; GEORGE, NIVIN NINAN; VEDANTHAM, HARI PRAMODA SRI SESHA ARUN; KAMASANI, CHAITANYA
To: SYNOPSYS, INC.
Reel/Frame 049026/0062 →
Priority Claims (1)
IN 201811008488 · Mar 8, 2018 · national
Continuity (1)
Related Publication 20190278884A1 · Sep 12, 2019
Cited By (2)
US 12,204,832 US 12,265,768