US6640330B1 - System and method for setup and hold characterization in integrated circuit cells - Google Patents

System and method for setup and hold characterization in integrated circuit cells Download PDF

Info

Publication number
US6640330B1
US6640330B1 US09/841,797 US84179701A US6640330B1 US 6640330 B1 US6640330 B1 US 6640330B1 US 84179701 A US84179701 A US 84179701A US 6640330 B1 US6640330 B1 US 6640330B1
Authority
US
United States
Prior art keywords
constraint
test point
pin
time
setup
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime, expires
Application number
US09/841,797
Inventor
Hemant Joshi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ARM Inc
Original Assignee
Artisan Components Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Artisan Components Inc filed Critical Artisan Components Inc
Priority to US09/841,797 priority Critical patent/US6640330B1/en
Assigned to ARTISAN COMPONENTS, INC. reassignment ARTISAN COMPONENTS, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: JOSHI, HEMANT
Application granted granted Critical
Publication of US6640330B1 publication Critical patent/US6640330B1/en
Assigned to ARM PHYSICAL IP, INC. reassignment ARM PHYSICAL IP, INC. MERGER/CHANGE OF NAME Assignors: ARTISAN COMPONENTS, INC.
Assigned to ARM, INC. reassignment ARM, INC. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: ARM PHYSICAL IP, INC.
Adjusted expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

Definitions

  • semiconductor integrated circuits are designed and fabricated by first preparing a schematic diagram or hardware description language (HDL) specification of a logical circuit in which functional elements are interconnected to form a particular logical function.
  • HDL hardware description language
  • the schematic diagram or HDL specification is synthesized into standard cells of a specific cell library.
  • FIG. 1 is a schematic diagram of a section of an exemplary prior art integrated circuit 100 .
  • the integrated circuit section 100 includes a plurality of rows 102 separated into standard cells 104 .
  • Each standard cell 104 corresponds to a logical function unit, which is implemented by one or more transistors that are optimized for the cell.
  • These functional units can be combinational cells, such as adders and gates, or sequential cells, such as flip-flops and latches.
  • Each of the sequential cells has “setup” and “hold” timing constraints, which are recorded in the timing library.
  • a series of computer-aided design tools generate a netlist of the selected cells 104 and the interconnections between the cells 104 .
  • a floor planner or placement tool uses the netlist to place the selected cells 104 at particular locations in an integrated circuit layout pattern.
  • the interconnections between the cells 104 are then routed along predetermined routing layers. Once the selected cells 104 have been placed and routed, the netlist, the cell layout definitions, the placement data and the routing data together form an integrated circuit layout definition, which is used to fabricate the integrated circuit.
  • FIG. 2 is a schematic diagram showing a prior art flip-flop 200 .
  • the flip-flop 200 includes a data pin 202 , an output pin 204 , and a clock 206 .
  • a time constraint exists between the constraint pin, which is the data pin 202 , and the reference pin, which is the clock 206 .
  • the data should arrive on the data pin 202 a particular amount of time before the clock 206 is asserted. This time period is referred to as the setup time.
  • FIG. 3 is a timing diagram illustrating setup and hold times for the flip-flop 200 .
  • Graph 202 a illustrates the graph of the data pin 202 and graph 206 a illustrates a graph of the clock 206 .
  • Point 302 is the time when the data is considered to be stable on the data pin 202 .
  • Point 306 is the time when the clock 206 is considered asserted, and point 304 is the time when the data pin 202 is considered changed.
  • the time period between point 302 and point 306 is the setup time, which is the minimum amount of the time that the data should be on the data pin 202 before the clock 206 is asserted on the flip-flop 200 .
  • the time period between point 306 and point 304 is the hold time, which is the minimum amount of time that the data should be on the data pin 202 while the clock 206 is asserted on the flip-flop 200 .
  • test point method defines a plurality of test points throughout the cell logic.
  • propagation delays are determined from the input pins to the test points defined in the circuit.
  • the propagation delays are then used to calculate the setup time and hold time constraints for the circuit.
  • the test point method is not accurate, and therefore, designers are forced to use pessimistic results for the setup and hold time values to ensure operability of the circuit.
  • the binary search method is an optimization process that runs multiple SPICE simulations with predefined objective (generally propagation delay) to determine setup and hold timing constraints. Since executing multiple SPICE simulations is a slow time consuming process, each of these optimization runs takes long time to complete. The binary search method is further slowed for cells that have more than one “constraint” pin as the optimization runs needs to be executed for each constraint pin and for all the sensitizing states on other constraint pins.
  • Each sequential cell generally includes a primitive sequential element, such as a flip-flop or latch, and combinational logic that connects the constraint ports of the sequential cell to the constraint port of the primitive sequential element. Further, the reference port of the sequential cell generally is connected to the reference port of the primitive sequential element.
  • FIG. 4 is a schematic diagram showing a prior art generic sequential cell 400 .
  • the generic sequential cell 400 includes a primitive sequential element 402 and a combinational logic block 404 .
  • the combinational logic block 404 includes three constraint pins S, D 0 , and D 1 .
  • To complete setup and hold characterization of the generic sequential cell 400 the following timing constraints need to be optimized using binary search method:
  • the number of optimization runs increases from four to sixteen when the combinational logic block 404 is added to the primitive sequential element 402 . Moreover, the number of optimization runs increases further when more complex combinational logic is used in a sequential cell, resulting in slower setup and hold characterization.
  • the methods should be capable of providing fast setup and hold characterization, while being accurate in determining values for the setup and hold times of a standard cell.
  • the present invention fills these needs by providing a method for accurately characterizing the constraint pins of an integrated circuit cell.
  • the method provides accuracy comparable to a binary search pin characterization method, while increasing the speed with which the characterization can be performed.
  • a method for setup and hold characterization in an integrated circuit cell is disclosed. The method includes obtaining a setup time for a first constraint pin. A setup time is then calculated for a test point defined in the integrated circuit cell using the setup time for the first constraint pin and a first propagation delay from the first constraint pin to the test point. Next, a setup time for a second constraint pin is determined based on the setup time for the test point and a second propagation delay from the second constraint pin to the test point.
  • the test point is a constraint input of a primitive sequential element within the integrated circuit cell, and is used to determine a setup time for each of a plurality of constraint pins based on the setup time for the test point and a propagation delay from each of the plurality of constraint pins to the test point.
  • a hold time can be obtained for the first constraint pin.
  • a hold time for the test point can be calculated using the hold time for the first constraint pin and the first propagation delay.
  • a hold time for the second constraint pin can be determined based on the hold time for the test point and the second propagation delay.
  • the same method can be used to determine a hold time for each of a plurality of constraint pins based on the hold time for the test point and a propagation delay from each of the plurality of constraint pins to the test point.
  • a further method for setup and hold characterization in an integrated circuit cell is disclosed.
  • a test point is defined in an integrated circuit cell, and both a first propagation delay from a first constraint pin to the test point and a second propagation delay from a second constraint pin to the test point are determined.
  • a setup time for the test point is calculated by subtracting the first propagation delay from a setup time for the first constraint pin.
  • a setup time for the second constraint pin is calculated by adding the second propagation delay to the setup time for the test point.
  • a hold time can be obtained for the first constraint pin, and a hold time for the test point can be determined by adding the first propagation delay to the hold time for the first constraint pin.
  • a hold time for the second constraint pin can be calculated by subtracting the second propagation delay from the hold time for the test point.
  • the method can be used to determine the setup and hold times for a plurality of constraint pins.
  • an integrated circuit cell having a plurality of input constraint pins, a reference pin, and an output pin.
  • the input constraint pins have setup and hold times characterized by obtaining a setup time for a first constraint pin, and calculating a setup time for a test point defined in the integrated circuit cell using the setup time for the first constraint pin and a first propagation delay from the first constraint pin to the test point.
  • a setup time for a second constraint pin is determined based on the setup time for the test point and a second propagation delay from the second constraint pin to the test point.
  • a hold time for the first constraint pin can be obtained, and a hold time for the test point can be calculated using the hold time for the first constraint pin and the first propagation delay. Further, a hold time for the second constraint pin can be determined based on the hold time for the test point and the second propagation delay.
  • the embodiments of the present invention reduce the number of binary search runs to that required by a single primitive element, while providing accurate cell characterization values for use in integrated circuit fabrication.
  • Other aspects and advantages of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention.
  • FIG. 1 is a schematic diagram of a section of an exemplary prior art integrated circuit
  • FIG. 2 is a schematic diagram showing a prior art flip-flop
  • FIG. 3 is a timing diagram illustrating setup and hold times for the flip-flop
  • FIG. 4 is a schematic diagram showing a prior art generic sequential cell
  • FIG. 5 is a schematic diagram showing a generic sequential cell, in accordance with an embodiment of the present invention.
  • FIG. 6 is a timing diagram showing hold time signals for constraint pin D 0 and the test point of the generic sequential cell, in accordance with an embodiment of the present invention
  • FIG. 7 is a timing diagram showing setup time signals for constraint pin D 0 and the test point of the generic sequential cell, in accordance with an embodiment of the present invention.
  • FIG. 8 is a flowchart showing a method for setup and hold characterization in an integrated circuit cell, in accordance with an embodiment of the present invention.
  • An invention for enhanced setup and hold characterization in an integrated circuit.
  • the present invention provides a method for accurately characterizing setup and hold timing constraints for the constraint pins of an integrated circuit cell.
  • the method provides accuracy comparable to a binary search pin characterization method, while increasing the speed with which the characterization can be performed.
  • FIG. 5 is a schematic diagram showing a generic sequential cell 500 , in accordance with an embodiment of the present invention.
  • the generic sequential cell 500 includes a primitive sequential element 502 and a combinational logic block 504 having constraint pins S 510 , D 0 512 , and D 1 514 .
  • Also included in the generic sequential cell 500 is a reference pin 508 , an output pin Q 516 , and a test point 506 .
  • the primitive sequential element 502 can be any sequential elements such as a flip-flop or latch.
  • the reference pin is generally a clock, for a flip-flop, or an enable, for a latch.
  • the embodiments of the present invention allow fast characterization of sequential cells by determining the setup and hold times for one constraint pin and then using those results to calculate the setup and hold times for the remaining constraint pins. More specifically, a test point 506 is defined within the sequential cell 500 . In the generic sequential cell 500 , all the constraint pins S 510 , D 0 512 , and D 1 514 are connected to the constraint input of the primitive sequential element 502 at the test point 506 . This test point 506 is preferably used to characterize the remaining constraint pins of the sequential cell 500 , as described in greater detail subsequently.
  • the embodiments of the present invention determine the setup and hold time at first constraint pin, for example constraint pin D 0 512 .
  • the embodiments of the present invention can use either the test point method or the binary search method, as described previously. Although the test point method provides fast results, the greater accuracy provided by the binary search method is preferred.
  • embodiments of the present invention can use the binary search method to determine the setup rising time, setup falling time, hold rising time, and hold falling time for constraint pin D 0 512 .
  • the constraint pins of sequential cell 500 is characterized for a plurality of input ramps. Specifically, an input ramp is determined for each constraint pin S 510 , D 0 512 , and D 1 514 . In addition, a propagation delay is determined from each constraint pin S 510 , D 0 512 , and D 1 514 to the test point 506 . Also, the ramp time at the test point is determined. These ramp times and propagation delays can be determined using a plurality of methods, as will be apparent to those skilled in the art.
  • FIG. 6 is a timing diagram showing hold time signals 600 for constraint pin D 0 512 and the test point 506 of the generic sequential cell 500 , in accordance with an embodiment of the present invention.
  • the hold time signals 600 include a reference signal 508 a , a constraint pin D 0 signal 512 a , and a test point signal 506 a .
  • Point 602 is the time when the reference signal 508 , such as the clock, is considered asserted.
  • Point 604 is the time when the data on pin D 0 512 is no longer considered available, and point 606 is the time when the data from the combinational logic block 504 is no longer available at the test point 506 .
  • FIG. 6 illustrates a method for determining the hold time for the test point 506 .
  • the time period between point 602 and point 604 is the hold time for constraint pin D 0 512 and the reference pin 508 .
  • the time period between point 604 and point 606 is the propagation delay between the constraint pin D 0 512 and the test point 506 .
  • the propagation delay between the constraint pin D 0 512 and the test point 506 is added to the hold time for the constraint pin D 0 508 .
  • the equation is:
  • T hd ( TP ,REF) T pd ( D 0 ⁇ TP )+ T hd ( D 0 , REF), (1)
  • T hd (TP, REF) is the hold time for the test point 506 with respect to the reference pin 508
  • T hd (D 0 , REF) is the hold time for the constraint pin D 0 512 with respect to the reference pin 508
  • T pd (D 0 ⁇ TP) is the propagation delay between the constraint pin D 0 512 and the test point 506 .
  • FIG. 7 is a timing diagram showing setup time signals 700 for constraint pin D 0 512 and the test point 506 of the generic sequential cell 500 , in accordance with an embodiment of the present invention.
  • the setup time signals 700 include the reference signal 508 a , the constraint pin D 0 signal 512 a , and the test point signal 506 a .
  • Point 602 is the time when the reference signal 508 is considered asserted.
  • Point 702 is the time when the data on pin D 0 512 is considered available, and point 704 is the time when the data from the combinational logic block 504 is available at the test point 506 .
  • FIG. 7 illustrates a method for determining the setup time for the test point 506 . More particularly, the time period between point 702 and point 602 is the setup time for constraint pin D 0 512 and the reference pin 508 . The time period between point 702 and point 704 is the propagation delay between the constraint pin D 0 512 and the test point 506 . To determine the setup time for the test point 506 , the propagation delay between the constraint pin D 0 512 and the test point 506 is subtracted from the setup time for the constraint pin D 0 508 . Thus, the equation is:
  • T su ( TP , REF) T su ( D 0 , REF) ⁇ T pd ( D 0 ⁇ TP ) (2)
  • T su (TP,REF) is the setup time for the test point 506 with respect to the reference pin 508
  • T su (D 0 ,REF) is the setup time for the constraint pin D 0 512 with respect to the reference pin 508
  • T pd (D 0 ⁇ TP) is the propagation delay between the constraint pin D 0 512 and the test point 506 .
  • the timing constraint values for the remaining constraint pins of the sequential cell can be determined. Specifically, to determine the setup time for a constraint pin, the propagation delay between the constraint pin and the test point 506 is added to the setup time for the test point 506 determined previously. Similarly, to determine the hold time for a constraint pin, the propagation delay between the constraint pin and the test point 506 is subtracted from the hold time for the test point 506 .
  • the equation for determining the setup time for remaining constraint pin S 510 of the generic sequential cell 500 of FIG. 5 is as follows:
  • T su ( S ,REF) T su ( TP ,REF)+ T pd ( S ⁇ TP ), (3)
  • T su (S,REF) is the setup time for the constraint pin S 510 with respect to reference pin 508
  • T su (TP,REF) is the setup time for the test point 506 with respect to the reference pin 508
  • T pd (S ⁇ TP) is the propagation delay between the constraint pin S 510 and the test point 506 .
  • T hd ( S ,REF) T hd ( TP ,REF) ⁇ T pd ( S ⁇ TP ), (4)
  • T hd (S,REF) is the hold time for the constraint pin S 510 with respect to the reference pin 508
  • T hd (TP,REF) is the hold time for the test point 506 with respect to the reference pin 508 .
  • the remaining constraint pin D 1 is similarly determined as follows:
  • T su ( D 1 ,REF) T su ( TP ,REF)+ T pd ( D 1 ⁇ TP ), (5)
  • T hd ( D 1 ,REF) T hd ( TP ,REF) ⁇ T pd ( D 1 ⁇ TP ), (6)
  • T su (D 1 ,REF) is the setup time for the constraint pin D 1 514 with respect to the reference pin 508
  • T pd (D 1 ⁇ TP) is the propagation delay between the constraint pin D 1 514 and the test point 506
  • T hd (D 1 ,REF) is the hold time for the constraint pin D 1 514 with respect to the reference pin 508 .
  • FIG. 8 is a flowchart showing a method 800 for setup and hold characterization in an integrated circuit cell, in accordance with an embodiment of the present invention.
  • preprocess operations include cell design, cell layout, and other preprocess operations that will be apparent to those skilled in the art.
  • a first constraint pin is characterized.
  • the embodiments of the present invention determine the setup and hold time the first constraint pin using either the test point method or the binary search method. Although the test point method provides fast results, the greater accuracy provided by the binary search method is preferred. Thus, embodiments of the present invention can use the binary search method to determine the setup rising time, setup falling time, hold rising time, and hold falling time for constraint pin.
  • the binary search method uses a SPICE simulation to extract the values of setup and hold times for the first constraint pin and the reference pin.
  • a suitable test structure is fabricated, which is designed to have a measurable electrical property, which depends upon the value of the interconnect process parameter of interest.
  • the SPICE simulation reiterates until a converged value of the setup and/or hold time is obtained.
  • the setup time for the first constraint pin can be obtained by successive approximation.
  • successively refined approximations of the setup time are fed into a SPICE simulation until the SPICE simulation predicts, within predetermined tolerance limits, the measured setup time.
  • the current approximation of the setup time when the predicted value converges to the measured value is the desired value for the setup time.
  • propagation delays are determined from the constraint pins to the test point.
  • the sequential cell is characterized for a plurality of input ramps and propagation delays in operation 806 .
  • an input ramp is determined for each constraint pin, and a propagation delay is determined from each constraint pin to the test point.
  • the ramp time at the test point is determined.
  • these ramp times and propagation delays can be determined using a plurality of methods, as will be apparent to those skilled in the art.
  • setup and hold times for the test point are calculated using the setup and hold time for the first constraint pin and the propagation delay from the first constraint pin to the test point. Since the ramp and propagation delay times were determined for the first constraint pin in operation 806 , these values can be used to determine the setup and hold times for the test point. To determine the hold time for the test point, the propagation delay between the first constraint pin and the test point is added to the hold time for the first constraint pin, as shown by Equation 1 above. Similarly, to determine the setup time for the test point, the propagation delay between the first constraint pin and the test point is subtracted from the setup time for the first constraint pin, as shown by Equation 2 above.
  • the setup and hold times for the remaining constraint pins are calculated in operation 810 using the setup and hold times for the test point and the propagation delays determined in operation 806 .
  • the timing constraint values for the remaining constraint pins of the sequential cell can be determined. Specifically, to determine the setup time for each constraint pin, the propagation delay between the constraint pin and the test point is added to the setup time for the test point, which is determined in operation 808 . Similarly, to determine the hold time for a constraint pin, the propagation delay between the constraint pin and the test point is subtracted from the hold time for the test point, which is also determined in operation 808 .
  • Post process operations are performed in operation 812 .
  • Post process operations include characterizing further sequential cells, fabrication of the integrated circuit, and other post process operations that will be apparent to those skilled in the art.
  • the embodiments of the present invention reduce the number of binary search runs to that required by a single primitive element, while providing accurate cell characterization values for use in integrated circuit fabrication.

Abstract

An invention is disclosed for setup and hold time characterization in an integrated circuit cell. A setup time is obtained for a first constraint pin. A setup time is also calculated for a test point defined in the integrated circuit cell using the setup time for the first constraint pin and a first propagation delay from the first constraint pin to the test point. A setup time for a second constraint pin is determined based on the setup time for the test point and a second propagation delay from the second constraint pin to the test point. In addition to the setup time, a hold time can be obtained for the first constraint pin, and a hold time for the test point can be calculated using the hold time for the first constraint pin and the first propagation delay. Further, a hold time for the second constraint pin can be determined based on the hold time for the test point and the second propagation delay.

Description

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to integrated circuits, and more particularly, to systems and methods for enhancing setup and hold characterization in an integrated circuit.
2. Description of the Related Art
Generally, semiconductor integrated circuits are designed and fabricated by first preparing a schematic diagram or hardware description language (HDL) specification of a logical circuit in which functional elements are interconnected to form a particular logical function. With standard cell technology, the schematic diagram or HDL specification is synthesized into standard cells of a specific cell library.
FIG. 1 is a schematic diagram of a section of an exemplary prior art integrated circuit 100. The integrated circuit section 100 includes a plurality of rows 102 separated into standard cells 104. Each standard cell 104 corresponds to a logical function unit, which is implemented by one or more transistors that are optimized for the cell. These functional units can be combinational cells, such as adders and gates, or sequential cells, such as flip-flops and latches.
Each of the sequential cells has “setup” and “hold” timing constraints, which are recorded in the timing library. During the design process, a series of computer-aided design tools generate a netlist of the selected cells 104 and the interconnections between the cells 104. A floor planner or placement tool uses the netlist to place the selected cells 104 at particular locations in an integrated circuit layout pattern. The interconnections between the cells 104 are then routed along predetermined routing layers. Once the selected cells 104 have been placed and routed, the netlist, the cell layout definitions, the placement data and the routing data together form an integrated circuit layout definition, which is used to fabricate the integrated circuit.
As mentioned above, each of the sequential cells has “setup” and “hold” timing constraints, which are recorded in the timing library. These constraints guide the chip design tool to meet timing goals set during the chip design phase. FIG. 2 is a schematic diagram showing a prior art flip-flop 200. The flip-flop 200 includes a data pin 202, an output pin 204, and a clock 206. To ensure the flip-flop 200 is functional, a time constraint exists between the constraint pin, which is the data pin 202, and the reference pin, which is the clock 206. For the flip-flop 200, the data should arrive on the data pin 202 a particular amount of time before the clock 206 is asserted. This time period is referred to as the setup time. Also to ensure the flip-flop 200 is functional, another time constraint exists between the constraint pin 202 and the reference pin 206. In this case, the data needs to stay on the data pin 202 while the clock 206 is asserted for particular amount of time. This time period is referred to as the hold time.
FIG. 3 is a timing diagram illustrating setup and hold times for the flip-flop 200. Graph 202 a illustrates the graph of the data pin 202 and graph 206 a illustrates a graph of the clock 206. Point 302 is the time when the data is considered to be stable on the data pin 202. Point 306 is the time when the clock 206 is considered asserted, and point 304 is the time when the data pin 202 is considered changed.
The time period between point 302 and point 306 is the setup time, which is the minimum amount of the time that the data should be on the data pin 202 before the clock 206 is asserted on the flip-flop 200. The time period between point 306 and point 304 is the hold time, which is the minimum amount of time that the data should be on the data pin 202 while the clock 206 is asserted on the flip-flop 200.
Two prior art methods are currently used to determine the setup time and the hold time for standard cells, 1) a test point method and 2) a binary search method. The test point method defines a plurality of test points throughout the cell logic. Next, propagation delays are determined from the input pins to the test points defined in the circuit. The propagation delays are then used to calculate the setup time and hold time constraints for the circuit. Unfortunately, the test point method is not accurate, and therefore, designers are forced to use pessimistic results for the setup and hold time values to ensure operability of the circuit.
The binary search method is an optimization process that runs multiple SPICE simulations with predefined objective (generally propagation delay) to determine setup and hold timing constraints. Since executing multiple SPICE simulations is a slow time consuming process, each of these optimization runs takes long time to complete. The binary search method is further slowed for cells that have more than one “constraint” pin as the optimization runs needs to be executed for each constraint pin and for all the sensitizing states on other constraint pins.
In total, four optimization runs would need to be executed to determine the setup rising time, setup falling time, hold rising time, and hold falling time for the constraint pin 202 and reference pin 206 of the flip-flop 200 of FIG. 2 using the binary search method. Each sequential cell generally includes a primitive sequential element, such as a flip-flop or latch, and combinational logic that connects the constraint ports of the sequential cell to the constraint port of the primitive sequential element. Further, the reference port of the sequential cell generally is connected to the reference port of the primitive sequential element.
FIG. 4 is a schematic diagram showing a prior art generic sequential cell 400. The generic sequential cell 400 includes a primitive sequential element 402 and a combinational logic block 404. The combinational logic block 404 includes three constraint pins S, D0, and D1. To complete setup and hold characterization of the generic sequential cell 400, the following timing constraints need to be optimized using binary search method:
setup time when pin D0 is rising;
setup time when pin D0 is falling;
hold time when pin D0 is rising;
hold time when pin D0 is falling;
setup time when pin D1 is rising;
setup time when pin D1 is falling;
hold time when pin D1 is rising;
hold time when pin D1 is falling;
setup time when pin S is rising and D0=1, D1=0;
setup time when pin S is falling and D0=1, D1=0;
hold time when pin S is rising and D0=1, D1=0;
hold time when pin S is falling and D0=1, D1=0;
setup time when pin S is rising and D0=0, D1=1;
setup time when pin S is falling and D0=0, D1=1;
hold time when pin S is rising and D0=0, D1=1;
hold time when pin S is falling and D0=0, D1=1;
Thus, the number of optimization runs increases from four to sixteen when the combinational logic block 404 is added to the primitive sequential element 402. Moreover, the number of optimization runs increases further when more complex combinational logic is used in a sequential cell, resulting in slower setup and hold characterization.
In view of the foregoing, there is a need for systems and methods that provide enhanced setup and hold characterization. The methods should be capable of providing fast setup and hold characterization, while being accurate in determining values for the setup and hold times of a standard cell.
SUMMARY OF THE INVENTION
Broadly speaking, the present invention fills these needs by providing a method for accurately characterizing the constraint pins of an integrated circuit cell. The method provides accuracy comparable to a binary search pin characterization method, while increasing the speed with which the characterization can be performed. In one embodiment, a method for setup and hold characterization in an integrated circuit cell is disclosed. The method includes obtaining a setup time for a first constraint pin. A setup time is then calculated for a test point defined in the integrated circuit cell using the setup time for the first constraint pin and a first propagation delay from the first constraint pin to the test point. Next, a setup time for a second constraint pin is determined based on the setup time for the test point and a second propagation delay from the second constraint pin to the test point. Generally, the test point is a constraint input of a primitive sequential element within the integrated circuit cell, and is used to determine a setup time for each of a plurality of constraint pins based on the setup time for the test point and a propagation delay from each of the plurality of constraint pins to the test point. In addition to the setup time, a hold time can be obtained for the first constraint pin. Then, a hold time for the test point can be calculated using the hold time for the first constraint pin and the first propagation delay. Further, a hold time for the second constraint pin can be determined based on the hold time for the test point and the second propagation delay. The same method can be used to determine a hold time for each of a plurality of constraint pins based on the hold time for the test point and a propagation delay from each of the plurality of constraint pins to the test point.
In another embodiment, a further method for setup and hold characterization in an integrated circuit cell is disclosed. A test point is defined in an integrated circuit cell, and both a first propagation delay from a first constraint pin to the test point and a second propagation delay from a second constraint pin to the test point are determined. Then, a setup time for the test point is calculated by subtracting the first propagation delay from a setup time for the first constraint pin. Then, a setup time for the second constraint pin is calculated by adding the second propagation delay to the setup time for the test point. In addition, a hold time can be obtained for the first constraint pin, and a hold time for the test point can be determined by adding the first propagation delay to the hold time for the first constraint pin. Further, a hold time for the second constraint pin can be calculated by subtracting the second propagation delay from the hold time for the test point. As mentioned above, the method can be used to determine the setup and hold times for a plurality of constraint pins.
In a further embodiment, an integrated circuit cell having a plurality of input constraint pins, a reference pin, and an output pin is disclosed. The input constraint pins have setup and hold times characterized by obtaining a setup time for a first constraint pin, and calculating a setup time for a test point defined in the integrated circuit cell using the setup time for the first constraint pin and a first propagation delay from the first constraint pin to the test point. In addition, a setup time for a second constraint pin is determined based on the setup time for the test point and a second propagation delay from the second constraint pin to the test point. Also, a hold time for the first constraint pin can be obtained, and a hold time for the test point can be calculated using the hold time for the first constraint pin and the first propagation delay. Further, a hold time for the second constraint pin can be determined based on the hold time for the test point and the second propagation delay.
Advantageously, the embodiments of the present invention reduce the number of binary search runs to that required by a single primitive element, while providing accurate cell characterization values for use in integrated circuit fabrication. Other aspects and advantages of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention, together with further advantages thereof, may best be understood by reference to the following description taken in conjunction with the accompanying drawings in which:
FIG. 1 is a schematic diagram of a section of an exemplary prior art integrated circuit;
FIG. 2 is a schematic diagram showing a prior art flip-flop;
FIG. 3 is a timing diagram illustrating setup and hold times for the flip-flop;
FIG. 4 is a schematic diagram showing a prior art generic sequential cell;
FIG. 5 is a schematic diagram showing a generic sequential cell, in accordance with an embodiment of the present invention;
FIG. 6 is a timing diagram showing hold time signals for constraint pin D0 and the test point of the generic sequential cell, in accordance with an embodiment of the present invention;
FIG. 7 is a timing diagram showing setup time signals for constraint pin D0 and the test point of the generic sequential cell, in accordance with an embodiment of the present invention; and
FIG. 8 is a flowchart showing a method for setup and hold characterization in an integrated circuit cell, in accordance with an embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
An invention is disclosed for enhanced setup and hold characterization in an integrated circuit. The present invention provides a method for accurately characterizing setup and hold timing constraints for the constraint pins of an integrated circuit cell. The method provides accuracy comparable to a binary search pin characterization method, while increasing the speed with which the characterization can be performed. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without some or all of these specific details. In other instances, well known process steps have not been described in detail in order not to unnecessarily obscure the present invention.
FIGS. 1-4 were described in terms of the prior art. FIG. 5 is a schematic diagram showing a generic sequential cell 500, in accordance with an embodiment of the present invention. The generic sequential cell 500 includes a primitive sequential element 502 and a combinational logic block 504 having constraint pins S 510, D0 512, and D1 514. Also included in the generic sequential cell 500 is a reference pin 508, an output pin Q 516, and a test point 506. The primitive sequential element 502 can be any sequential elements such as a flip-flop or latch. Further, the reference pin is generally a clock, for a flip-flop, or an enable, for a latch.
The embodiments of the present invention allow fast characterization of sequential cells by determining the setup and hold times for one constraint pin and then using those results to calculate the setup and hold times for the remaining constraint pins. More specifically, a test point 506 is defined within the sequential cell 500. In the generic sequential cell 500, all the constraint pins S 510, D0 512, and D1 514 are connected to the constraint input of the primitive sequential element 502 at the test point 506. This test point 506 is preferably used to characterize the remaining constraint pins of the sequential cell 500, as described in greater detail subsequently.
As mentioned above, the embodiments of the present invention determine the setup and hold time at first constraint pin, for example constraint pin D0 512. To determine the setup and hold time for constraint pin D0 512, the embodiments of the present invention can use either the test point method or the binary search method, as described previously. Although the test point method provides fast results, the greater accuracy provided by the binary search method is preferred. Thus, embodiments of the present invention can use the binary search method to determine the setup rising time, setup falling time, hold rising time, and hold falling time for constraint pin D0 512.
Further, the constraint pins of sequential cell 500 is characterized for a plurality of input ramps. Specifically, an input ramp is determined for each constraint pin S 510, D0 512, and D1 514. In addition, a propagation delay is determined from each constraint pin S 510, D0 512, and D1 514 to the test point 506. Also, the ramp time at the test point is determined. These ramp times and propagation delays can be determined using a plurality of methods, as will be apparent to those skilled in the art.
Since the ramp and propagation delay times are known for constraint pin D0 512, these values can be used to determine the setup and hold times for the test point 506. FIG. 6 is a timing diagram showing hold time signals 600 for constraint pin D0 512 and the test point 506 of the generic sequential cell 500, in accordance with an embodiment of the present invention. The hold time signals 600 include a reference signal 508 a, a constraint pin D0 signal 512 a, and a test point signal 506 a. Point 602 is the time when the reference signal 508, such as the clock, is considered asserted. Point 604 is the time when the data on pin D0 512 is no longer considered available, and point 606 is the time when the data from the combinational logic block 504 is no longer available at the test point 506.
FIG. 6 illustrates a method for determining the hold time for the test point 506. In particular, the time period between point 602 and point 604 is the hold time for constraint pin D0 512 and the reference pin 508. The time period between point 604 and point 606 is the propagation delay between the constraint pin D0 512 and the test point 506. To determine the hold time for the test point 506, the propagation delay between the constraint pin D0 512 and the test point 506 is added to the hold time for the constraint pin D0 508. Thus, the equation is:
T hd(TP,REF)=T pd(D 0TP)+T hd(D 0, REF),  (1)
where Thd (TP, REF) is the hold time for the test point 506 with respect to the reference pin 508, Thd(D0, REF) is the hold time for the constraint pin D0 512 with respect to the reference pin 508, and Tpd (D0→TP) is the propagation delay between the constraint pin D0 512 and the test point 506.
FIG. 7 is a timing diagram showing setup time signals 700 for constraint pin D0 512 and the test point 506 of the generic sequential cell 500, in accordance with an embodiment of the present invention. The setup time signals 700 include the reference signal 508 a, the constraint pin D0 signal 512 a, and the test point signal 506 a. Point 602 is the time when the reference signal 508 is considered asserted. Point 702 is the time when the data on pin D0 512 is considered available, and point 704 is the time when the data from the combinational logic block 504 is available at the test point 506.
FIG. 7 illustrates a method for determining the setup time for the test point 506. More particularly, the time period between point 702 and point 602 is the setup time for constraint pin D0 512 and the reference pin 508. The time period between point 702 and point 704 is the propagation delay between the constraint pin D0 512 and the test point 506. To determine the setup time for the test point 506, the propagation delay between the constraint pin D0 512 and the test point 506 is subtracted from the setup time for the constraint pin D0 508. Thus, the equation is:
T su(TP, REF)=T su(D 0, REF)−T pd(D 0TP)  (2)
where Tsu (TP,REF) is the setup time for the test point 506 with respect to the reference pin 508, Tsu(D0,REF) is the setup time for the constraint pin D0 512 with respect to the reference pin 508, and Tpd(D0→TP) is the propagation delay between the constraint pin D0 512 and the test point 506.
Based upon the timing constraint values at the test point 506 and the ramp and propagation delay data obtained earlier for the remaining constraint pins of the sequential cell, the timing constraint values for the remaining constraint pins of the sequential cell can be determined. Specifically, to determine the setup time for a constraint pin, the propagation delay between the constraint pin and the test point 506 is added to the setup time for the test point 506 determined previously. Similarly, to determine the hold time for a constraint pin, the propagation delay between the constraint pin and the test point 506 is subtracted from the hold time for the test point 506. Thus, the equation for determining the setup time for remaining constraint pin S 510 of the generic sequential cell 500 of FIG. 5 is as follows:
T su(S,REF)=T su(TP,REF)+T pd(S→TP),  (3)
where Tsu(S,REF) is the setup time for the constraint pin S 510 with respect to reference pin 508, Tsu(TP,REF) is the setup time for the test point 506 with respect to the reference pin 508, and Tpd(S→TP) is the propagation delay between the constraint pin S 510 and the test point 506.
Similarly, the equation for determining the hold time for remaining constraint pin S 510 of the generic sequential cell 500 is:
T hd(S,REF)=T hd(TP,REF)−T pd(S→TP),  (4)
where Thd (S,REF) is the hold time for the constraint pin S 510 with respect to the reference pin 508, and Thd (TP,REF) is the hold time for the test point 506 with respect to the reference pin 508. The remaining constraint pin D1 is similarly determined as follows:
T su(D 1,REF)=T su(TP,REF)+T pd(D 1TP),  (5)
T hd(D 1,REF)=T hd(TP,REF)−T pd(D 1TP),  (6)
where Tsu(D1,REF) is the setup time for the constraint pin D1 514 with respect to the reference pin 508, Tpd (D1→TP) is the propagation delay between the constraint pin D1 514 and the test point 506, and where Thd (D1,REF) is the hold time for the constraint pin D1 514 with respect to the reference pin 508.
All the above described calculations use the information related to the logical relationship between the constraint pins, namely, D0 512, D1 514, and S 510 and the test point 506 known as the arc unateness as well as the ramp times observed at these two points because the propagation delay has a dependency upon the ramp times. In addition, interpolation of the data can be used to increase the accuracy of the results, as will be apparent to those skilled in the art.
FIG. 8 is a flowchart showing a method 800 for setup and hold characterization in an integrated circuit cell, in accordance with an embodiment of the present invention. In an initial operation 802, preprocess operations are performed. Preprocess operations include cell design, cell layout, and other preprocess operations that will be apparent to those skilled in the art.
In a first characterization operation 804, a first constraint pin is characterized. As mentioned previously, the embodiments of the present invention determine the setup and hold time the first constraint pin using either the test point method or the binary search method. Although the test point method provides fast results, the greater accuracy provided by the binary search method is preferred. Thus, embodiments of the present invention can use the binary search method to determine the setup rising time, setup falling time, hold rising time, and hold falling time for constraint pin.
Generally, the binary search method uses a SPICE simulation to extract the values of setup and hold times for the first constraint pin and the reference pin. Typically, a suitable test structure is fabricated, which is designed to have a measurable electrical property, which depends upon the value of the interconnect process parameter of interest. Starting from an estimated value for the setup and hold times, and keeping the values of any other interconnect process parameters constant, the SPICE simulation reiterates until a converged value of the setup and/or hold time is obtained.
For example, given an actually measured capacitance, resistance, or inductance of a test structure, the setup time for the first constraint pin can be obtained by successive approximation. In particular, successively refined approximations of the setup time are fed into a SPICE simulation until the SPICE simulation predicts, within predetermined tolerance limits, the measured setup time. The current approximation of the setup time when the predicted value converges to the measured value is the desired value for the setup time.
In operation 806, propagation delays are determined from the constraint pins to the test point. The sequential cell is characterized for a plurality of input ramps and propagation delays in operation 806. Specifically, an input ramp is determined for each constraint pin, and a propagation delay is determined from each constraint pin to the test point. Also, the ramp time at the test point is determined. As previously mentioned, these ramp times and propagation delays can be determined using a plurality of methods, as will be apparent to those skilled in the art.
In operation 808, setup and hold times for the test point are calculated using the setup and hold time for the first constraint pin and the propagation delay from the first constraint pin to the test point. Since the ramp and propagation delay times were determined for the first constraint pin in operation 806, these values can be used to determine the setup and hold times for the test point. To determine the hold time for the test point, the propagation delay between the first constraint pin and the test point is added to the hold time for the first constraint pin, as shown by Equation 1 above. Similarly, to determine the setup time for the test point, the propagation delay between the first constraint pin and the test point is subtracted from the setup time for the first constraint pin, as shown by Equation 2 above.
The setup and hold times for the remaining constraint pins are calculated in operation 810 using the setup and hold times for the test point and the propagation delays determined in operation 806. Based upon the timing constraint values at the test point and the ramp and propagation delay data obtained in operation 806 for the remaining constraint pins of the sequential cell, the timing constraint values for the remaining constraint pins of the sequential cell can be determined. Specifically, to determine the setup time for each constraint pin, the propagation delay between the constraint pin and the test point is added to the setup time for the test point, which is determined in operation 808. Similarly, to determine the hold time for a constraint pin, the propagation delay between the constraint pin and the test point is subtracted from the hold time for the test point, which is also determined in operation 808.
Post process operations are performed in operation 812. Post process operations include characterizing further sequential cells, fabrication of the integrated circuit, and other post process operations that will be apparent to those skilled in the art. Advantageously, the embodiments of the present invention reduce the number of binary search runs to that required by a single primitive element, while providing accurate cell characterization values for use in integrated circuit fabrication.
Although the foregoing invention has been described in some detail for purposes of clarity of understanding, it will be apparent that certain changes and modifications may be practiced within the scope of the appended claims. Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.

Claims (15)

What is claimed is:
1. A method for setup and hold characterization in an integrated circuit cell, comprising the operations of:
obtaining a setup time for a first constraint pin;
calculating a setup time for a test point defined in the integrated circuit cell using the setup time for the first constraint pin and a first propagation delay from the first constraint pin to the test point; and
determining a setup time for a second constraint pin based on the setup time for the test point and a second propagation delay from the second constraint pin to the test point.
2. A method as recited in claim 1, wherein the test point is a constraint input of a primitive sequential element.
3. A method as recited in claim 1, wherein a setup time is determined for each of a plurality of constraint pins based on the setup time for the test point and a propagation delay from each of the plurality of constraint pins to the test point.
4. A method as recited in claim 1, further comprising the operation of obtaining a hold time for the first constraint pin.
5. A method as recited in claim 4, further comprising the operation of calculating a hold time for the test point using the hold time for the first constraint pin and the first propagation delay.
6. A method as recited in claim 5, further comprising the operation of determining a hold time for the second constraint pin based on the hold time for the test point and the second propagation delay.
7. A method as recited in claim 6, wherein a hold time is determined for each of a plurality of constraint pins based on the hold time for the test point and a propagation delay from each of the plurality of constraint pins to the test point.
8. A method for setup and hold characterization in an integrated circuit cell, comprising the operations of:
defining a test point in an integrated circuit cell;
determining both a first propagation delay from a first constraint pin to the test point and a second propagation delay from a second constraint pin to the test point;
calculating a setup time for the test point by subtracting the first propagation delay from a setup time for the first constraint pin; and
calculating a setup time for the second constraint pin by adding the second propagation delay to the setup time for the test point.
9. A method as recited in claim 8, wherein the test point is a constraint input of a primitive sequential element.
10. A method as recited in claim 8, wherein a setup time is determined for each of a plurality of constraint pins based on the setup time for the test point and a propagation delay from each of the plurality of constraint pins to the test point.
11. A method as recited in claim 8, further comprising the operation of obtaining a hold time for the first constraint pin.
12. A method as recited in claim 11, further comprising the operation of calculating a hold time for the test point by adding the first propagation delay to the hold time for the first constraint pin.
13. A method as recited in claim 12, further comprising the operation of calculating a hold time for the second constraint pin by subtracting the second propagation delay from the hold time for the test point.
14. A method as recited in claim 13, further comprising the operation of determining a propagation delay from each of a plurality of constraint pins to the test point.
15. A method as recited in claim 14, wherein a hold time is determined for each of the plurality of constraint pins by subtracting the propagation delay of each of the plurality of constraint pins from the hold time for the test point.
US09/841,797 2001-04-24 2001-04-24 System and method for setup and hold characterization in integrated circuit cells Expired - Lifetime US6640330B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/841,797 US6640330B1 (en) 2001-04-24 2001-04-24 System and method for setup and hold characterization in integrated circuit cells

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/841,797 US6640330B1 (en) 2001-04-24 2001-04-24 System and method for setup and hold characterization in integrated circuit cells

Publications (1)

Publication Number Publication Date
US6640330B1 true US6640330B1 (en) 2003-10-28

Family

ID=29251442

Family Applications (1)

Application Number Title Priority Date Filing Date
US09/841,797 Expired - Lifetime US6640330B1 (en) 2001-04-24 2001-04-24 System and method for setup and hold characterization in integrated circuit cells

Country Status (1)

Country Link
US (1) US6640330B1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030101399A1 (en) * 2001-11-26 2003-05-29 Fujitsu Limited Hold time error correction method and correction program for integrated circuits
US20030159119A1 (en) * 2002-02-20 2003-08-21 Nec Electronics Corporation Method for designing semiconductor integrated circuit and computing program for semiconductor integrated circuit
US20040014513A1 (en) * 2002-05-21 2004-01-22 Boon Edward J. Game control system and method
US20060123370A1 (en) * 2004-12-08 2006-06-08 Mario Vergara-Escobar Method for specification and integration of reusable IP constraints
US20060123369A1 (en) * 2004-12-03 2006-06-08 Lsi Logic Corporation Ramptime propagation on designs with cycles
US20060259839A1 (en) * 2005-05-13 2006-11-16 Stmicroelectronics Sa Method and system for evaluating a constraint of a sequential cell
US20080071489A1 (en) * 2006-09-15 2008-03-20 International Business Machines Corporation Integrated circuit for measuring set-up and hold times for a latch element
US20080201675A1 (en) * 2006-09-15 2008-08-21 International Business Machines Corporation Structure for integrated circuit for measuring set-up and hold times for a latch element
US20090235222A1 (en) * 2008-03-17 2009-09-17 Xilinx, Inc. Creating a standard cell circuit design from a programmable logic device circuit design
US20090241080A1 (en) * 2008-03-24 2009-09-24 Freescale Semiconductor, Inc. Setup and hold time characterization device and method
US20100077271A1 (en) * 2008-09-22 2010-03-25 Nec Electronics Corporation Method of achieving convergence of hold time error, device and program therefor
US11270052B2 (en) * 2018-09-26 2022-03-08 Taiwan Semiconductor Manufacturing Company Ltd. System and method of timing characterization for semiconductor circuit

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5663889A (en) * 1993-12-28 1997-09-02 Fujitsu Limited Apparatus for computing delay time of integrated circuit
US5819072A (en) * 1996-06-27 1998-10-06 Unisys Corporation Method of using a four-state simulator for testing integrated circuit designs having variable timing constraints
US5956256A (en) * 1996-11-19 1999-09-21 Unisys Corporation Method and apparatus for optimizing a circuit design having multi-paths therein
US5956257A (en) * 1993-03-31 1999-09-21 Vlsi Technology, Inc. Automated optimization of hierarchical netlists
US6216256B1 (en) * 1997-05-22 2001-04-10 Sony Corporation Semiconductor integrated circuit and method of designing the same
US6314553B1 (en) * 1998-11-02 2001-11-06 Intel Corporation Circuit synthesis and verification using relative timing
US6484297B1 (en) * 2000-02-29 2002-11-19 Lsi Logic Corporation 4K derating scheme for propagation delay and setup/hold time computation
US6543032B1 (en) * 2000-10-02 2003-04-01 Lsi Logic Corporation Method and apparatus for local resynthesis of logic trees with multiple cost functions

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956257A (en) * 1993-03-31 1999-09-21 Vlsi Technology, Inc. Automated optimization of hierarchical netlists
US5663889A (en) * 1993-12-28 1997-09-02 Fujitsu Limited Apparatus for computing delay time of integrated circuit
US5819072A (en) * 1996-06-27 1998-10-06 Unisys Corporation Method of using a four-state simulator for testing integrated circuit designs having variable timing constraints
US5956256A (en) * 1996-11-19 1999-09-21 Unisys Corporation Method and apparatus for optimizing a circuit design having multi-paths therein
US6216256B1 (en) * 1997-05-22 2001-04-10 Sony Corporation Semiconductor integrated circuit and method of designing the same
US6314553B1 (en) * 1998-11-02 2001-11-06 Intel Corporation Circuit synthesis and verification using relative timing
US6484297B1 (en) * 2000-02-29 2002-11-19 Lsi Logic Corporation 4K derating scheme for propagation delay and setup/hold time computation
US6543032B1 (en) * 2000-10-02 2003-04-01 Lsi Logic Corporation Method and apparatus for local resynthesis of logic trees with multiple cost functions

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990646B2 (en) * 2001-11-26 2006-01-24 Fujitsu Limited Hold time error correction method and correction program for integrated circuits
US20030101399A1 (en) * 2001-11-26 2003-05-29 Fujitsu Limited Hold time error correction method and correction program for integrated circuits
US20030159119A1 (en) * 2002-02-20 2003-08-21 Nec Electronics Corporation Method for designing semiconductor integrated circuit and computing program for semiconductor integrated circuit
US20040014513A1 (en) * 2002-05-21 2004-01-22 Boon Edward J. Game control system and method
US20060123369A1 (en) * 2004-12-03 2006-06-08 Lsi Logic Corporation Ramptime propagation on designs with cycles
US7246336B2 (en) 2004-12-03 2007-07-17 Lsi Corporation Ramptime propagation on designs with cycles
US20070234255A1 (en) * 2004-12-03 2007-10-04 Lsi Logic Corporation Ramptime propagation on designs with cycles
US7568175B2 (en) 2004-12-03 2009-07-28 Lsi Corporation Ramptime propagation on designs with cycles
US7526745B2 (en) 2004-12-08 2009-04-28 Telefonaktiebolaget L M Ericsson (Publ) Method for specification and integration of reusable IP constraints
US20060123370A1 (en) * 2004-12-08 2006-06-08 Mario Vergara-Escobar Method for specification and integration of reusable IP constraints
US20060259839A1 (en) * 2005-05-13 2006-11-16 Stmicroelectronics Sa Method and system for evaluating a constraint of a sequential cell
US7487482B2 (en) * 2005-05-13 2009-02-03 Stmicroelectronics Sa Method and system for evaluating a constraint of a sequential cell
US20080201675A1 (en) * 2006-09-15 2008-08-21 International Business Machines Corporation Structure for integrated circuit for measuring set-up and hold times for a latch element
US20080071489A1 (en) * 2006-09-15 2008-03-20 International Business Machines Corporation Integrated circuit for measuring set-up and hold times for a latch element
US7930663B2 (en) 2006-09-15 2011-04-19 International Business Machines Corporation Structure for integrated circuit for measuring set-up and hold times for a latch element
US20090235222A1 (en) * 2008-03-17 2009-09-17 Xilinx, Inc. Creating a standard cell circuit design from a programmable logic device circuit design
US8667437B2 (en) * 2008-03-17 2014-03-04 Xilinx, Inc. Creating a standard cell circuit design from a programmable logic device circuit design
US20090241080A1 (en) * 2008-03-24 2009-09-24 Freescale Semiconductor, Inc. Setup and hold time characterization device and method
US7861200B2 (en) 2008-03-24 2010-12-28 Freescale Semiconductor, Inc. Setup and hold time characterization device and method
US20100077271A1 (en) * 2008-09-22 2010-03-25 Nec Electronics Corporation Method of achieving convergence of hold time error, device and program therefor
US8312403B2 (en) * 2008-09-22 2012-11-13 Renesas Electronics Corporation Method of achieving convergence of hold time error, device and program therefor
US11270052B2 (en) * 2018-09-26 2022-03-08 Taiwan Semiconductor Manufacturing Company Ltd. System and method of timing characterization for semiconductor circuit

Similar Documents

Publication Publication Date Title
Coudert Gate sizing for constrained delay/power/area optimization
US6131182A (en) Method and apparatus for synthesizing and optimizing control logic based on SRCMOS logic array macros
US6324671B1 (en) Using a reduced cell library for preliminary synthesis to evaluate design
US6212665B1 (en) Efficient power analysis method for logic cells with many output switchings
US7555740B2 (en) Method and system for evaluating statistical sensitivity credit in path-based hybrid multi-corner static timing analysis
US5426591A (en) Apparatus and method for improving the timing performance of a circuit
Drechsler et al. Synthesis of fully testable circuits from BDDs
US8977994B1 (en) Circuit design system and method of generating hierarchical block-level timing constraints from chip-level timing constraints
US5553000A (en) Eliminating retiming bottlenecks to improve performance of synchronous sequential VLSI circuits
US8056035B2 (en) Method and system for analyzing cross-talk coupling noise events in block-based statistical static timing
EP1192559B1 (en) Updating placement during technology mapping
US6640330B1 (en) System and method for setup and hold characterization in integrated circuit cells
US7240304B2 (en) Method for voltage drop analysis in integreted circuits
US6763513B1 (en) Clock tree synthesizer for balancing reconvergent and crossover clock trees
US8813006B1 (en) Accelerated characterization of circuits for within-die process variations
US7100140B2 (en) Generation of graphical congestion data during placement driven synthesis optimization
US10963610B1 (en) Analyzing clock jitter using delay calculation engine
Gupta et al. Energy and peak-current per-cycle estimation at RTL
US11270052B2 (en) System and method of timing characterization for semiconductor circuit
Ye et al. Power consumption in XOR-based circuits
Lim et al. A statistical approach to the estimation of delay-dependent switching activities in CMOS combinational circuits
Najoua et al. Analytical dynamic power model for LUT based components
Sambamurthy et al. A robust top-down dynamic power estimation methodology for delay constrained register transfer level sequential circuits
Khvatov Method for Fast Evaluation of the Circuit Performance After Structural Resynthesis for RSoC
Neumann et al. Tight coupling of timing-driven placement and retiming

Legal Events

Date Code Title Description
AS Assignment

Owner name: ARTISAN COMPONENTS, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:JOSHI, HEMANT;REEL/FRAME:011748/0982

Effective date: 20010424

STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: ARM PHYSICAL IP, INC., CALIFORNIA

Free format text: MERGER/CHANGE OF NAME;ASSIGNOR:ARTISAN COMPONENTS, INC.;REEL/FRAME:017619/0154

Effective date: 20041223

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: ARM, INC.,CALIFORNIA

Free format text: MERGER;ASSIGNOR:ARM PHYSICAL IP, INC.;REEL/FRAME:019323/0528

Effective date: 20061218

Owner name: ARM, INC., CALIFORNIA

Free format text: MERGER;ASSIGNOR:ARM PHYSICAL IP, INC.;REEL/FRAME:019323/0528

Effective date: 20061218

FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12