US2010325597A1PendingUtilityA1

Generalized constraint collection management method

Assignee: CADENCE DESIGN SYSTEMS INCPriority: Sep 25, 2006Filed: Aug 31, 2010Published: Dec 23, 2010
Est. expirySep 25, 2026(~0.2 yrs left)· nominal 20-yr term from priority
G06F 30/30
46
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Techniques are provided to allow users of Electronic Design Automation (EDA) tools to define constraint template types for efficiently associating constraints with design objects to specify design intent. Processes for creating and validating the constraints are provided by user-defined plug-ins, thereby allowing users to annotate circuit designs with constraints for proprietary layout and fabrication processes without exposing the constraints to tool vendors or competitors. The constraints are re-created from the template types whenever the circuit design is loaded into the EDA tool, so that the constraints are based upon the latest version of the template type. The constraints are also re-created when validation fails. Constraint groups are reusable in different designs, technology nodes, and processes because they automatically expand to provide the specific constraints to achieve a goal. The specific constraints in a template type can be modified as technology changes, and the modification will automatically be applied to the design objects.

Claims

exact text as granted — not AI-modified
1 - 10 . (canceled) 
     
     
         11 . A method of automating the validation of constraints associated with circuit design objects in a circuit design created using an electronic design automation tool, comprising:
 receiving notification of a change action that affects the design;   identifying a template instance validation process associated with the template type;   invoking the validation process to validate the constraints;   receiving a validity indicator from the validation process; and   if the validity indicator indicates that the constraints are not valid, invoking a recovery process.   
     
     
         12 . The method of  claim 11 , further comprising:
 retrieving the template instance validation process from a plug-in file associated with the template type.   
     
     
         13 . The method of  claim 11 , wherein the template instance validation process is provided by a user of the design automation tool. 
     
     
         14 . The method of  claim 11 , further comprising providing the at least one design object and a template instance parameter to the template instance validation process. 
     
     
         15 . The method of  claim 14 , wherein the template instance validation process comprises:
 determining if the value of at least one constraint parameter associated with at least one of the constraints is valid;   if the constraint parameter is valid, generating a success indicator; and   if the constraint parameter is not valid, generating a failure indicator.   
     
     
         16 . The method of  claim 11 , wherein the recovery process comprises:
 deleting the constraints;   identifying a template instance generation process associated with the template type; and   invoking the template instance generation process to re-create the constraints.   
     
     
         17 . The method of  claim 11 , wherein the change action comprises reading in of a template instance from a storage medium, modification of a template instance parameter, or a combination thereof. 
     
     
         18 . The method of  claim 11 , wherein the change action comprises modification of the circuit design. 
     
     
         19 . The method of  claim 11 , wherein the change action comprises a change to the at least one constraint, and the recovery process comprises:
 rejecting the change action.   
     
     
         20 - 25 . (canceled) 
     
     
         26 . A system for retrieving a circuit design annotated with a constraint from a circuit design file on a persistent storage medium, comprising:
 a template instance reader to retrieve a representation of a template instance from the circuit design file, wherein the representation includes an instance name, a template type identifier, and at least one design object identifier;   a template type selector to identify a template type specified by the template type identifier;   a generator plug-in locator to identify a template instance generator associated with the template type if the template type is accessible; and   a generator plug-in invoker to invoke the template instance generator to create a restored template instance if the instance generator is accessible, wherein the restored template instance includes a constraint that references at least one design object, wherein the at least one design object is specified by the at least one design object identifier.   
     
     
         27 - 28 . (canceled) 
     
     
         29 . A system for retrieving a circuit design annotated with a constraint from a circuit design file on a persistent storage medium, comprising:
 a template instance reader means for retrieving a representation of a template instance from the circuit design file, wherein the representation includes an instance name, a template type identifier, and at least one design object identifier;   a template type selector means for identifying a template type specified by the template type identifier;   a generator plug-in locator means for identifying a template instance generator associated with the template type if the template type is accessible; and   a generator plug-in invoker means for invoking the template instance generator to create a restored template instance if the instance generator is accessible, wherein the restored template instance includes a constraint that references at least one design object, wherein the at least one design object is specified by the at least one design object identifier.   
     
     
         30 - 31 . (canceled) 
     
     
         32 . A computer program product comprising program code for automating the validation of constraints associated with design objects in a design created using an electronic design automation tool, the computer program product comprising:
 program code operable to receive notification of an change action that affects the design;   program code operable to receive identify a template instance validation process associated with the template type;   program code operable to receive invoke the validation process to validate the constraints;   program code operable to receiving a validity indicator from the validation process; and   program code operable to invoke a recovery process if the validity indicator indicates that the constraints are not valid.

Join the waitlist — get patent alerts

Track US2010325597A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.