Voltage and frequency balancing at nominal point
First Claim
1. A computer program product for determining voltage and frequency pairs, the computer program product comprising:
- one or more non-transitory computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising;
program instructions to identify an integrated circuit design;
program instructions to identify a timing model associated with the identified integrated circuit design;
program instructions to identify at least a nominal voltage, a nominal clock signal, and a voltage range associated with the integrated circuit design;
program instructions to receive a number n that defines the number of at least one alternate voltage within the voltage range;
program instructions to analyze the identified integrated circuit based on the received number n for each number n for at least one alternate voltage within the voltage range;
program instructions to perform a single statistical static timing analysis for the identified integrated circuit based on the received number n for each number n for at least one alternate voltage within the voltage range, wherein the single statistical static timing analysis calculates voltage sensitivity via finite differencing with respect to the identified timing model;
program instructions to create a canonical variability of frequency dependent tests, wherein the clock period and voltage are parameterized;
program instructions perform a multi-corner static timing analysis for the identified integrated circuit based on the received number n for each number n for the identified at least one alternate voltage within the voltage range;
program instructions to calculate a timing at a first voltage point and a timing second voltage point;
program instructions to calculate a sensitivity to voltage that is a difference between the timing at the first voltage point and the timing at a second voltage point;
program instructions calculate a nominal slack;
program instructions to calculate one or more clock periods based on the calculated nominal slack;
program instructions to solve a slack equation for a clock period;
program instructions to calculate the clock period for each number n by inserting each calculated voltage for each number n into the solved slack equation for the clock period;
program instructions to provide a report based on the calculated one or more clock periods;
program instructions to optimize a voltage and frequency pairing for a best power-performance balance, wherein the voltage and frequency pairing meets a maximum power and a minimum frequency; and
program instructions to manufacture an integrated circuit based upon an optimized integrated circuit design using the optimized voltage and frequency pairing.
1 Assignment
0 Petitions
Accused Products
Abstract
In an approach for determining voltage and frequency pairs, the computer identifies an integrated circuit design. The computer identifies a timing model associated with the identified integrated circuit design. The computer identifies at least a nominal voltage, a nominal clock signal, and a voltage range associated with the integrated circuit design. The computer receives a number n that defines the number of at least one alternate voltage within the voltage range. The computer analyzes the identified integrated circuit based on the received number n for each number n for at least one alternate voltage within the voltage range. The computer calculates a nominal slack. The computer calculates one or more clock periods based on the calculated nominal slack. The computer provides a report based on the calculated one or more clock periods.
19 Citations
1 Claim
-
1. A computer program product for determining voltage and frequency pairs, the computer program product comprising:
-
one or more non-transitory computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising; program instructions to identify an integrated circuit design; program instructions to identify a timing model associated with the identified integrated circuit design; program instructions to identify at least a nominal voltage, a nominal clock signal, and a voltage range associated with the integrated circuit design; program instructions to receive a number n that defines the number of at least one alternate voltage within the voltage range; program instructions to analyze the identified integrated circuit based on the received number n for each number n for at least one alternate voltage within the voltage range; program instructions to perform a single statistical static timing analysis for the identified integrated circuit based on the received number n for each number n for at least one alternate voltage within the voltage range, wherein the single statistical static timing analysis calculates voltage sensitivity via finite differencing with respect to the identified timing model; program instructions to create a canonical variability of frequency dependent tests, wherein the clock period and voltage are parameterized; program instructions perform a multi-corner static timing analysis for the identified integrated circuit based on the received number n for each number n for the identified at least one alternate voltage within the voltage range; program instructions to calculate a timing at a first voltage point and a timing second voltage point; program instructions to calculate a sensitivity to voltage that is a difference between the timing at the first voltage point and the timing at a second voltage point; program instructions calculate a nominal slack; program instructions to calculate one or more clock periods based on the calculated nominal slack; program instructions to solve a slack equation for a clock period; program instructions to calculate the clock period for each number n by inserting each calculated voltage for each number n into the solved slack equation for the clock period; program instructions to provide a report based on the calculated one or more clock periods; program instructions to optimize a voltage and frequency pairing for a best power-performance balance, wherein the voltage and frequency pairing meets a maximum power and a minimum frequency; and program instructions to manufacture an integrated circuit based upon an optimized integrated circuit design using the optimized voltage and frequency pairing.
-
Specification