US2006048084A1PendingUtilityA1

System and method for repairing timing violations

Individually held — no corporate assignee on recordPriority: Aug 27, 2004Filed: Aug 27, 2004Published: Mar 2, 2006
Est. expiryAug 27, 2024(expired)· nominal 20-yr term from priority
G06F 30/30G06F 2119/12
43
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

One disclosed method for repairing min-time timing violations comprises receiving a circuit design to analyze, analyzing the circuit design to determine if a min-time timing violation is present in the circuit design, and fixing a determined min-time timing violation by replacing an appropriate element of the circuit design with a de-raced element.

Claims

exact text as granted — not AI-modified
1 . A method for repairing min-time timing violations comprising: 
 receiving a circuit design to analyze;    analyzing said circuit design to determine if a min-time timing violation is present in said circuit design; and    fixing a determined min-time timing violation by replacing an appropriate element of said circuit design with a de-raced element.    
   
   
       2 . The method of  claim 1  wherein said method for repairing is done electronically.  
   
   
       3 . The method of  claim 1  wherein said step of analyzing to determine if a min-time timing violation is present comprises: 
 identifying an endpoint associated with said min-time timing violation as a min-time endpoint;    identifying at least one element of said circuit design associated with said min-time endpoint; and    classifying said element associated with said min-time endpoint as a min-time element.    
   
   
       4 . The method of  claim 1  wherein said step of fixing a determined min-time timing violation comprises: 
 analyzing an endpoint associated with said min-time timing violation to determine if said analyzed endpoint is a qualifying endpoint wherein said analyzed endpoint is a qualifying endpoint if said analyzed endpoint satisfies a plurality of conditions;    identifying an element that corresponds to said qualifying endpoint as a qualifying element; and    replacing said qualifying element with said de-raced element.    
   
   
       5 . The method of  claim 4  wherein said plurality of conditions comprises: 
 a condition that requires an endpoint to be an endpoint for a min-time timing violation;    a condition that requires said endpoint to contain a sufficient time margin so that an insertion of a de-raced element will not introduce a max-time failure; and    a condition that requires said endpoint to not be an endpoint of a circuit element that contains properties such that no other circuit element satisfies said properties.    
   
   
       6 . The method of  claim 4  wherein said de-raced element exhibits a functionality similar to a functionality of said qualifying element.  
   
   
       7 . The method of  claim 4  wherein said de-raced element includes a delay element selectively arranged for said timing violation.  
   
   
       8 . The method of  claim 7  wherein said delay element delays signals at one or more of: 
 an input data point of said de-raced state element;    an enable point of said de-raced state element; and    a reset point of said de-raced state element.    
   
   
       9 . The method of  claim 4  wherein said de-raced element occupies an area that is similar to an area occupied by said qualifying element that is being replaced.  
   
   
       10 . The method of  claim 4  wherein said qualifying element is a state element.  
   
   
       11 . The method of  claim 1  wherein said de-raced element comprises: 
 a state element; and    a delay element integrated into said state element.    
   
   
       12 . The method of  claim 11  wherein said state element comprises one or more of: 
 a latch; and    a flip-flop.    
   
   
       13 . The method of  claim 4  wherein said qualifying element that is being replaced comprises one or more of: 
 a latch; and    a flip-flop.    
   
   
       14 . The method of  claim 4  further comprising the step of: 
 identifying an element that does not correspond to said qualifying endpoint as non-qualifying element.    
   
   
       15 . The method of  claim 14  further comprising the step of: 
 identifying a min-time timing violation associated with said non-qualifying element as a remaining min-time timing violation; and    repairing said remaining min-time timing violation.    
   
   
       16 . The method of  claim 15  wherein said step of repairing said remaining min-time timing violation comprises: 
 implementing at least one additional independent delay element into said circuit design.    
   
   
       17 . The method of  claim 16  wherein said independent delay element comprises: 
 a delay buffer.    
   
   
       18 . A system for repairing violations, said system comprising: 
 a means for analyzing a circuit for the presence of at least one timing violation;    a means for identifying an element to replace with a de-raced element to repair said timing violation; and    a means for replacing said identified element with said de-raced element.    
   
   
       19 . The system of  claim 18  wherein said means for identifying an element comprises: 
 a means for identifying an endpoint associated with said timing violation; and    a means for identifying an element associated with said endpoint.    
   
   
       20 . The system of  claim 18  further comprising; 
 a means for classifying an endpoint as a qualifying endpoint if: 
 said endpoint is an endpoint corresponding to a min-time timing violation,  
 said endpoint contains a sufficient time margin so that an insertion of a de-raced element will not introduce a new max-time violation, and  
 said endpoint does not correspond to an element that comprises characteristics such that another element can not satisfy said characteristics of said element.  
   
   
   
       21 . The system of  claim 20  wherein said means for identifying an element further comprises: 
 a means for classifying said element corresponding to said qualifying endpoint as a qualifying element.    
   
   
       22 . The system of  claim 18  wherein said means for replacing said identified element further comprises: 
 a means for replacing a qualifying element with said de-raced element wherein said de-raced element comprises: 
 a replacement element that exhibits the same functionality as the qualifying state element and a delay element integrated therewith.  
   
   
   
       23 . The system of  claim 22  wherein said de-raced state element is configured so that it occupies an area similar to an area occupied by said qualifying element that is being replaced.  
   
   
       24 . A computer program product having a computer readable medium having computer program logic recorded thereon for repairing timing violations, the computer program product comprising: 
 code for analyzing a circuit for the presence of at least one timing violation;    code for identifying at least one endpoint corresponding to said timing violation; and    code for identifying at least one circuit element associated with said endpoint wherein said element can be replaced to repair said timing violation.    
   
   
       25 . The computer program product of  claim 24  further comprising: 
 code for replacing said element with said de-raced element.    
   
   
       26 . The computer program product of  claim 25  further comprising: 
 code for outputting a repaired circuit.    
   
   
       27 . The computer program product of  claim 25  wherein said de-raced element comprises: 
 a delay element; and    an element exhibiting the same functionality as said element to be replaced.    
   
   
       28 . The computer program product of  claim 27  wherein said code for replacing said element with said de-raced element further comprises: 
 code for selectively arranging said delay element according to said timing violation.    
   
   
       29 . The computer program product of  claim 24  further comprising: 
 code for identifying said endpoint associated with a min-time violation as a min-time endpoint.    
   
   
       30 . The computer program product of  claim 24  wherein said code for identifying at least one circuit element comprises: 
 code for identifying an element associated with a min-time endpoint as a min-time element.    
   
   
       31 . The computer program product of  claim 29  further comprising: 
 code for analyzing said min-time endpoint to determine if said min-time endpoint is a qualifying endpoint wherein said min-time endpoint is a qualifying endpoint if said min-time endpoint satisfies a plurality of conditions; and    code for identifying an element that corresponds to said qualifying endpoint as a qualifying element.    
   
   
       32 . The computer program product of  claim 31  wherein said plurality of conditions comprises: 
 a condition that requires an endpoint to be an endpoint for a min-time violation, and    a condition that requires said endpoint to contain a sufficient time margin so that an insertion of a de-raced element will not introduce a max-time failure.    
   
   
       33 . The computer program product of  claim 32  wherein said plurality of conditions further comprises: 
 a condition that requires said endpoint to not be an endpoint of a circuit element that contains properties such that no other circuit element satisfies said properties.    
   
   
       34 . The computer program product of  claim 31  wherein said code for replacing said element comprises: 
 code for replacing said qualifying element with said de-raced element.    
   
   
       35 . The computer program product of  claim 27  further comprising: 
 code for placing said delay element of said de-raced element at one or more of: 
 an input data point of said de-raced state element;  
 an enable point of said de-raced state element; and  
 a reset point of said de-raced state element.  
   
   
   
       36 . The computer program product of  claim 31  further comprising: 
 code for identifying an element that does not correspond to a qualifying endpoint as a non-qualifying element.    
   
   
       37 . The computer program product of  claim 36  further comprising: 
 code for identifying a timing violation associated with said non-qualifying element as a remaining timing violation; and    code for repairing said remaining timing violation.    
   
   
       38 . The computer program product of  claim 37  wherein said code for repairing said remaining timing violation further comprises: 
 code for integrating at least one new independent delay element into said circuit to fix said remaining timing violation.

Join the waitlist — get patent alerts

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

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