IP Library Granted Patent US 10,909,301
Granted Patent B2
US 10,909,301 · App. 15/741,252 · Granted Feb 2, 2021

Method and apparatus for determining waiver applicability conditions and applying the conditions to multiple errors or warnings in physical verification tools

Inventors: Alexey Kalinov (Moscow, RU); Douglas Den Dulk (Apex, NC); Andrey Freidlin (Zhyukovskiy, RU)
Assignee: Cadence Design Systems, Inc.
G06F30/398G06F16/2379G06F30/31
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,909,301
App. No.
15/741,252
Granted
Feb 2, 2021
Kind
B2
Abstract

An approach is described for determining waiver applicability conditions and applying the conditions to multiple errors or warnings in physical verification tools. According to some embodiments, the approach includes identification of a waiver of an error or warning, registration of one or more condition sets for waiver of an error or warning, waiver of multiple errors or warnings that match the registered one or more condition sets, and further comprise any or all of the following: receiving or retrieving a circuit design, analyzing the circuit design to identify errors and warnings, and displaying identified errors and warnings where errors and warnings matching a registered condition set are waived. This approach provides for a 1-to-many relationship between identification of a waiver and application of waivers.

Claims (55)

1. A computer implemented method for applying multiple waivers to design rule violations base on at least a single waiver, comprising:

receiving an indication of a waiver of a first violation at a first block, the first block comprising an instance of a first block master;

registering a set of conditions corresponding to the first block, the set of conditions comprising external conditions associated with the first block and a hierarchical relationship between the first block and one or more additional blocks, the one or more additional blocks comprising instances of other block masters; and

waiving a plurality of violations for different instances of the first block master using the set of conditions.

2. The method of claim 1 , further comprising:

receiving or retrieving a circuit design;

analyzing the circuit design to identify violations, the violations comprising at least errors and warnings; and

displaying the violations where the violations matching the set of conditions are waived.

3. The method of claim 1 , wherein registration of the set of conditions comprises identifying the first block master and storing the set of conditions in a database corresponding to the first block master, wherein the set of conditions are associated with first block master.

4. The method of claim 3 , wherein the set of conditions comprise at least one or more parameters for one or more connections between the first block and external elements.

5. The method of claim 4 , wherein the one or more parameters are selected based on any combination of inputs received with the indication of the waiver of the first violation, data corresponding to the first violation, or data previously associated with the first block master.

6. The method of claim 1 , wherein waiving a plurality of violations for different instances of the first block master comprises:

processing each violation of the plurality of violations by:

determining that the violation is at a block that is an instance of the first block master,

determining that the first block master is associated with one or more registered sets of conditions for waiver,

determining that external conditions of the block match at least one of the registered sets of conditions for waiver of the violation, and

waiving the violation.

7. The method of claim 6 , wherein processing each violation further comprises identifying one or more parameters for processing the registered sets of conditions for waiver of the violation and determining values of the one or more parameters, wherein determining that the conditions of the block match at least one of the registered sets of conditions for waiver of the violation comprises at least determining that the values of the one or more parameters satisfy at least one of the registered sets of conditions for waiver of the violation.

8. A computer program product that includes a computer readable medium, the computer readable medium comprising a plurality of computer instructions which, when executed by a processor, cause the processor to execute a process for applying multiple waivers to design rule violations base on at least a single waiver, the process comprising:

receiving an indication of a waiver of a first violation at a first block, the first block comprising an instance of a first block master;

registering a set of conditions corresponding to the first block, the set of conditions comprising external conditions associated with the first block and a hierarchical relationship between the first block and one or more additional blocks, the one or more additional blocks comprising instances of other block masters; and

waiving a plurality of violations for different instances of the first block master using the set of conditions.

9. The product of claim 8 , further comprising:

receiving or retrieving a circuit design;

analyzing the circuit design to identify violations, the violations comprising at least errors and warnings; and

displaying the violations where the violations matching the set of conditions are waived.

10. The product of claim 8 , wherein registration of the set of conditions comprises identifying the first block master and storing the set of conditions in a database corresponding to the first block master, wherein the set of conditions are associated with first block master.

11. The product of claim 10 , wherein the set of conditions comprise at least one or more parameters for one or more connections between the first block and external elements.

12. The product of claim 11 , wherein the one or more parameters are selected based on any combination of inputs received with the indication of the waiver of the first violation, data corresponding to the first violation, or data previously associated with the first block master.

13. The product of claim 8 , wherein waiving a plurality of violations for different instances of the first block master comprises:

processing each violation of the plurality of violations by:

determining that the violation is at a block that is an instance of the first block master,

determining that the first block master is associated with one or more registered sets of conditions for waiver,

determining that external conditions of the block match at least one of the registered sets of conditions for waiver of the violation, and

waiving the violation.

14. The product of claim 13 , wherein processing each violation further comprises identifying one or more parameters for processing the registered sets of conditions for waiver of the violation and determining values of the one or more parameters, wherein determining that the conditions of the block match at least one of the registered sets of conditions for waiver of the violation comprises at least determining that the values of the one or more parameters satisfy at least one of the registered sets of conditions for waiver of the violation.

15. A system for applying multiple waivers to design rule violations base on at least a single waiver, comprising:

a memory for storing instructions; and

a processor which performs the following actions when executing instructions:

identifying a waiver of a first violation at a first block, the first block comprising an instance of a first block master;

storing a set of conditions corresponding to the first block, wherein storing the set of conditions comprises at least registering the set of conditions, the set of conditions comprising external conditions associated with the first block and a hierarchical relationship between the first block and one or more additional blocks, the one or more additional blocks comprising instances of different block masters; and

waiving a plurality of violations for different instances of the first block master using the set of conditions.

16. The system of claim 15 , further comprising:

receiving or retrieving a circuit design;

analyzing the circuit design to identify violations, the violations comprising at least errors and warnings; and

displaying the violations where the violations matching the set of conditions are waived.

17. The system of claim 15 , wherein registration of the set of conditions comprises identifying the first block master and storing the set of conditions in a database corresponding to the first block master, wherein the set of conditions are associated with first block master.

18. The system of claim 17 , wherein the set of conditions comprise at least one or more parameters for one or more connections between the first block and external elements.

19. The system of claim 18 , wherein the one or more parameters are selected based on any combination of inputs received with the indication of the waiver of the first violation, data corresponding to the first violation, or data previously associated with the first block master.

20. The system of claim 15 , wherein waiving a plurality of violations for different instances of the first block master comprises:

processing each violation of the plurality of violations by:

determining that the violation is at a block that is an instance of the first block master,

determining that the first block master is associated with one or more registered sets of conditions for waiver,

determining that external conditions of the block match at least one of the registered sets of conditions for waiver of the violation, and

waiving the violation, wherein processing each violation further comprises identifying one or more parameters for processing the registered sets of conditions for waiver of the violation and determining values of the one or more parameters, wherein determining that the conditions of the block match at least one of the registered sets of conditions for waiver of the violation comprises at least determining that the values of the one or more parameters satisfy at least one of the registered sets of conditions for waiver of the violation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2017
From: KALINOV, ALEXEY; DEN DULK, DOUGLAS; FREIDLIN, ANDREY
To: CADENCE DESIGN SYSTEMS, INC.
Reel/Frame 044509/0559 →
Continuity (1)
Related Publication 20200143100A1 · May 7, 2020