Patents by Inventor Kerim Kalafala

Kerim Kalafala has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20090210839
    Abstract: A method of timing closure for integrated circuit designs uses multiple timing runs which distribute the frequency of identified fails per timing corner (between starting timing corners and remaining timing corners) to maximize efficiency in timing analysis. More specifically, the method closes timing for a chosen set of starting timing corners, verifies the remaining timing corners are orthogonal to the starting timing corners, closes timing for the remaining timing corners using multi-corner analysis, and verifies that all timing corners have positive slack margin.
    Type: Application
    Filed: February 14, 2008
    Publication date: August 20, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Nathan C. Buck, John P. Dubuque, Eric A. Foreman, Peter A. Habitz, Kerim Kalafala, Gregory M. Schaeffer, Chandramouli Visweswariah
  • Patent number: 7555740
    Abstract: Methods, systems and computer program products for analyzing a timing design of an integrated circuit are disclosed. According to an embodiment, a method for analyzing a timing design of an integrated circuit comprises: providing an initial static timing analysis of the integrated circuit; selecting a static timing test with respect to a static timing test point based on the initial static timing analysis; selecting a timing path leading to the static timing test point for the static timing test; determining an integrated slack path variability for the timing path based on a joint probability distribution of at least one statistically independent parameter; and analyzing the timing design based on the integrated slack path variability.
    Type: Grant
    Filed: February 27, 2007
    Date of Patent: June 30, 2009
    Assignee: International Business Machines Corporation
    Inventors: Nathan C. Buck, John P. Dubuque, Eric A. Foreman, Peter A. Habitz, Kerim Kalafala, Peihua Qi, Chandramouli Visweswariah, Xiaoyue Wang
  • Publication number: 20080209375
    Abstract: A method and system for decreasing processing time in multi-corner static timing analysis. In one embodiment, slack cutoff values are assigned across a parameter process space. For example, a slack cutoff value is assigned to each parameter in a process space by determining an estimated maximum slack change between a starting corner and any other corner in a corresponding process sub-space. In another embodiment, parameters are ordered in a parameter order by decreasing magnitude of impact on variability of timing.
    Type: Application
    Filed: February 27, 2007
    Publication date: August 28, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Nathan C. Buck, John P. Dubuque, Eric A. Foreman, Peter A. Habitz, Kerim Kalafala, Peihua Qi, Chandramouli Visweswariah, Xiaoyue Wang
  • Publication number: 20080209372
    Abstract: A method and system for reducing a number of paths to be analyzed in a multi-corner static timing analysis. An estimated upper slack variation based on a non-common path delay for a racing path is utilized in determining if a multi-corner static timing analysis may be bypassed for a racing path. In another example, an estimated maximum RSS credit based on a total delay for a racing path is utilized in determining if a multi-corner static timing analysis may be bypassed for a racing path.
    Type: Application
    Filed: February 26, 2007
    Publication date: August 28, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Nathan C. Buck, John P. Dubuque, Eric A. Foreman, Peter A. Habitz, Kerim Kalafala, Jeffrey M. Ritzinger, Xiaoyue Wang
  • Publication number: 20080209373
    Abstract: Methods, systems and computer program products for analyzing a timing design of an integrated circuit are disclosed. According to an embodiment, a method for analyzing a timing design of an integrated circuit comprises: providing an initial static timing analysis of the integrated circuit; selecting a static timing test with respect to a static timing test point based on the initial static timing analysis; selecting a timing path leading to the static timing test point for the static timing test; determining an integrated slack path variability for the timing path based on a joint probability distribution of at least one statistically independent parameter; and analyzing the timing design based on the integrated slack path variability.
    Type: Application
    Filed: February 27, 2007
    Publication date: August 28, 2008
    Inventors: Nathan C. Buck, John P. Dubuque, Eric A. Foreman, Peter A. Habitz, Kerim Kalafala, Peihua Qi, Chandramouli Visweswariah, Xiaoyue Wang
  • Publication number: 20080209374
    Abstract: A method and system for decreasing processing time in multi-corner static timing analysis. In one embodiment, parameters are ordered in a parameter order by decreasing magnitude of impact on variability of timing. In one example, a decreasing parameter order is utilized to order slack cutoff values that are assigned across a parameter process space. In another example, a decreasing parameter order is utilized to perform a multi-corner timing analysis on one or more dependent parameters in an independent fashion.
    Type: Application
    Filed: February 27, 2007
    Publication date: August 28, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Nathan C. Buck, John P. Dubuque, Eric A. Foreman, Peter A. Habitz, Kerim Kalafala, Peihua Qi, Chandramouli Visweswariah, Xiaoyue Wang
  • Publication number: 20080163147
    Abstract: Run-time reduction is achieved in timing performance of a logical design, such as a digital integrated circuit. A portion of the logical design that is expected to be stable with respect to timing performance, such as a clock tree, is identified. Timing sensitivities, including sensitivities to sources of variability, of the identified portion of the logical design are determined at a given instant. The timing sensitivities of the identified portion of the logical design are saved for re-use. The saved timing sensitivities are re-used throughout the timing analysis and in subsequent timing analyses.
    Type: Application
    Filed: January 3, 2007
    Publication date: July 3, 2008
    Applicant: International Business Machines Corporation
    Inventors: James C. Gregerson, Kerim Kalafala, Alexander Suess
  • Publication number: 20080140983
    Abstract: A computer system for partitioning the columns of a matrix A. The computer system includes a processor and a memory unit coupled to the processor. Program code in the memory unit, when executed by the processor, implements the method. Matrix A is provided in a memory device and has n columns and m rows; wherein n is an integer of at least 3; and wherein m is an integer of at least 1. The n columns is partitioned into a closed group of p clusters, p being a positive integer of at least 2 and less than n. The partitioning includes an affinity-based merging of clusters of pairs of clusters of the matrix A based on an affinity between the clusters in each pair of clusters being merged. Each cluster consists of one or more columns of matrix A. The p clusters are stored in a computer-readable storage device.
    Type: Application
    Filed: January 28, 2008
    Publication date: June 12, 2008
    Inventors: Kerim Kalafala, Vasant Rao, Chandramouli Visweswariah
  • Publication number: 20080134117
    Abstract: A method and a system for conducting a static timing analysis on a circuit having a plurality of point-to-point delay constraints between two points of the circuit, in which two conservative and two optimistic user defined tests are derived for all types of the point-to-point delay constraints. The method shows that when a conservative test is performed without introducing any special tags, then it is found that the point-to-point constraint is satisfied. On the other hand, when the optimistic test fails without any special tags, it is determined that the point-to-point constraint is bound to fail if special tags are introduced, in which case, they are to be introduced only when an exact slack is desired. Finally, for anything in between, a real analysis with special tags or path tracing is required. Based on the topology of the graph, arrival time based tests may be tighter in some situations, while the required arrival time based tests, may be tighter in others.
    Type: Application
    Filed: December 1, 2006
    Publication date: June 5, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kerim Kalafala, Revanta Banerji, David J. Hathaway, Jessica Sheridan, Chandramouli Visweswariah
  • Publication number: 20080112441
    Abstract: A method of performing node-based static timing analysis on a digital network and a program storage device for implementing the method, wherein the method comprises partitioning timing delays in the digital network into portions attributable to a factor of interest and portions attributable to other factors; multiplying the timing delays by different weights based on the factor of interest to produce weighted timing delays; and using the multiplied timing delays to determine a relative impact of the factor of interest on the various paths in the digital network. The method further comprises setting arrival times of timing signals at digital network path start points to zero and identifying digital network paths whose timing delays are dominated by a particular factor of interest. The different weights comprise any of a positive weight, a negative weight, and a zero weight.
    Type: Application
    Filed: January 15, 2008
    Publication date: May 15, 2008
    Applicant: International Business Machines Corporation
    Inventors: David Hathaway, Kerim Kalafala
  • Patent number: 7353477
    Abstract: A method of performing node-based static timing analysis on a digital network and a program storage device for implementing the method, wherein the method comprises partitioning timing delays in the digital network into portions attributable to a factor of interest and portions attributable to other factors; multiplying the timing delays by different weights based on the factor of interest to produce weighted timing delays; and using the multiplied timing delays to determine a relative impact of the factor of interest on the various paths in the digital network. The method further comprises setting arrival times of timing signals at digital network path start points to zero and identifying digital network paths whose timing delays are dominated by a particular factor of interest. The different weights comprise any of a positive weight, a negative weight, and a zero weight.
    Type: Grant
    Filed: April 28, 2004
    Date of Patent: April 1, 2008
    Assignee: International Business Machines Corporation
    Inventors: David J. Hathaway, Kerim Kalafala
  • Patent number: 7353359
    Abstract: A method and computer program product for partitioning the columns of a matrix A. The method includes providing the matrix A in a memory device of a computer system. The matrix A has n columns and m rows, wherein n is an integer of at least 3, and wherein m is an integer of at least 1. The method further includes executing an algorithm by a processor of the computer system. Executing the algorithm includes partitioning the n columns of the matrix A into a closed group of p clusters, wherein p is a positive integer of at least 2 and less than n, wherein the partitioning includes an affinity-based merging of clusters of the matrix A, and wherein each cluster is a collection of one or more columns of A.
    Type: Grant
    Filed: October 28, 2003
    Date of Patent: April 1, 2008
    Assignee: International Business Machines Corporation
    Inventors: Kerim Kalafala, Vasant Rao, Chandramouli Visweswariah
  • Publication number: 20070276896
    Abstract: A method for partitioning the columns of a matrix A. The method includes providing the matrix A in a memory device of a computer system. The matrix A has n columns and m rows, wherein n is an integer of at least 3, and wherein m is an integer of at least 1. The method further includes executing an algorithm by a processor of the computer system. Executing the algorithm includes partitioning the n columns of the matrix A into a closed group of p clusters, wherein p is a positive integer of at least 2 and less than n, wherein the partitioning includes an affinity-based merging of clusters of the matrix A, and wherein each cluster is a collection of one or more columns of A.
    Type: Application
    Filed: August 10, 2007
    Publication date: November 29, 2007
    Inventors: Kerim Kalafala, Vasant Rao, Chandramouli Visweswariah
  • Patent number: 7117466
    Abstract: A method of removing pessimism in static timing analysis is described. Delays are expressed as a function of discrete parameter settings allowing for both local and global variation to be taken in to account. Based on a specified target slack, each failing timing test is examined to determine a consistent set of parameter settings which produces the worst possible slack. The analysis is performed on a path basis. By considering only parameters which are in common to a particular data/clock path-pair, the number of process combinations that need to be explored is reduced when compared to analyzing all combinations of the global parameter settings. Further, if parameters are separable and linear, worst-case variable assignments for a particular clock/data path pair can be computed in linear time by independently assigning each parameter value.
    Type: Grant
    Filed: September 18, 2003
    Date of Patent: October 3, 2006
    Assignee: International Business Machines Corporation
    Inventors: Kerim Kalafala, Peihua Qi, David J. Hathaway, Alexander J. Suess, Chandramouli Visweswariah
  • Publication number: 20050243869
    Abstract: A method of performing node-based static timing analysis on a digital network and a program storage device for implementing the method, wherein the method comprises partitioning timing delays in the digital network into portions attributable to a factor of interest and portions attributable to other factors; multiplying the timing delays by different weights based on the factor of interest to produce weighted timing delays; and using the multiplied timing delays to determine a relative impact of the factor of interest on the various paths in the digital network. The method further comprises setting arrival times of timing signals at digital network path start points to zero and identifying digital network paths whose timing delays are dominated by a particular factor of interest. The different weights comprise any of a positive weight, a negative weight, and a zero weight.
    Type: Application
    Filed: April 28, 2004
    Publication date: November 3, 2005
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Hathaway, Kerim Kalafala
  • Publication number: 20050091298
    Abstract: A method and computer program product for partitioning the columns of a matrix A. The method includes providing the matrix A in a memory device of a computer system. The matrix A has n columns and m rows, wherein n is an integer of at least 3, and wherein m is an integer of at least 1. The method further includes executing an algorithm by a processor of the computer system. Executing the algorithm includes partitioning the n columns of the matrix A into a closed group of p clusters, wherein p is a positive integer of at least 2 and less than n, wherein the partitioning includes an affinity-based merging of clusters of the matrix A, and wherein each cluster is a collection of one or more columns of A.
    Type: Application
    Filed: October 28, 2003
    Publication date: April 28, 2005
    Applicant: International Business Machines Corporation
    Inventors: Kerim Kalafala, Vasant Rao, Chandramouli Visweswariah
  • Publication number: 20050066297
    Abstract: A method of removing pessimism in static timing analysis is described. Delays are expressed as a function of discrete parameter settings allowing for both local and global variation to be taken in to account. Based on a specified target slack, each failing timing test is examined to determine a consistent set of parameter settings which produces the worst possible slack. The analysis is performed on a path basis. By considering only parameters which are in common to a particular data/clock path-pair, the number of process combinations that need to be explored is reduced when compared to analyzing all combinations of the global parameter settings. Further, if parameters are separable and linear, worst-case variable assignments for a particular clock/data path pair can be computed in linear time by independently assigning each parameter value.
    Type: Application
    Filed: September 18, 2003
    Publication date: March 24, 2005
    Inventors: Kerim Kalafala, Peihua Qi, David Hathaway, Alexander Suess, Chandramouli Visweswariah