# Patent

## Title
Leakage current analyzing apparatus, leakage current analyzing method, and computer product

## Abstract

A leakage current analyzing apparatus receives input of data used for analysis and indicating intra/inter-chip variation concerning the gate length of transistors constituting cells in a circuit to be designed, where the inter-chip variation is handled as a discrete probability density distribution R. Using the data input, the leakage current analyzing apparatus obtains a cumulative probability density for a leakage current value (of the circuit) that is equal to or less than each arbitrary leakage current value I1 to IJ. As a result, the leak rate of the circuit to be designed can be correctly obtained without limiting the shape of distribution.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is based upon and claims the benefit of priority from the prior Japanese Patent Application No. 2008-048106, filed on Feb. 28, 2008, the entire contents of which are incorporated herein by reference.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to statistical estimation of leakage current in a semiconductor integrated circuit.
2. Description of the Related Art
Recently, with the higher integration of semiconductor integrated circuits, leakage current therein tends to increase. Leakage current is current that flows in an electronic circuit through a portion that should not have any current flow. Leakage current increases power consumption and the heat generated by the semiconductor integrated circuit, and can cause degraded circuit performance.
Therefore, it is important to correctly estimate leakage current and to take countermeasures when a circuit is designed. Meanwhile, due to reductions in chip dimension, variation of leakage current caused by the reductions has increased. Thus, conventional statistical analysis tends to pessimistically estimate the maximal current leak of a circuit. Therefore, a technique of more accurately estimating current leak is demanded.
Generally, it is known that element variation and wiring variation handled by statistical analysis has an intra-chip variation component that is independent for each element and wiring, and an inter-chip variation component that is correlated among elements/wiring. Conventionally, an approach of statistically estimating leakage current includes a Monte Carlo method of repeating for several tens of thousands of times a deterministic leakage current analysis of several million elements, and an approach of performing the multiple (numerical) integral of several million variables using the probability distribution of each element.
Other approaches include an approach of statistically estimating leakage current taking into account only the intra-chip variation component and an approach of statistically estimating leakage current by fixing a leak distribution function of the inter-chip variation component as a normal function or a logarithmic normal function such as that described in, for example, Japanese Patent Application Laid-Open Publication No. 2003-316849, and by Rajeev Rao, Ashish Srivastava, David Blaauw, Dennis Sylvester in “Statistical Analysis of Subthreshold Leakage Current for VLSI Circuits”, IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, Vol. 12, No. 2, February 2004, pp. 131-139.
However, although both the Monte Carlo method and the approach of statistically estimating a leakage current by multiple integral using the probability distribution of each element can correctly estimate the leakage current, a problem arises in that the calculations involved for both the Monte Carlo method and the approach, consume an enormous amount of time and the calculation is nearly impossible.
The conventional techniques disclosed in Japanese Patent Application Laid-Open Publication No. 2003-316849 and by Rajeev Rao, et al. can not accurately handle the inter-chip variation component and therefore, a problem arises in that the accuracy of the leakage current analysis is degraded. More specifically, when the correlation among elements/wiring due to the inter-chip distribution is strong, the shape of the leak distribution is not necessarily that of a normal distribution or a logarithmic normal distribution. Therefore, the error of the maximal leakage current value (for example, about 17%) increases and, as a result, correction of the circuit design after delivery occurs. Therefore, a problem has arisen in that the work load on designers increases and the time period for designing becomes longer.
SUMMARY OF THE INVENTION
It is an object of the present invention to at least solve the above problems in the conventional technologies.
A computer-readable recording medium according to one aspect of the present invention stores therein a leakage current analyzing program that causes a computer to execute acquiring a probability density distribution that represents a first variation component specific to each cell in a circuit to be designed and concerning a gate length of a transistor constituting a cell, and a discrete probability density distribution that represents a second variation component common to all the cells of the circuit and concerning the gate length; calculating, based on the probability density distribution and the discrete probability density distribution acquired at the acquiring and a function model that expresses leakage current variation of a cell as a product of the first variation component and the second variation component, a cumulative probability density for a leakage current value of the circuit, the leakage current value of the circuit being less than or equal to an arbitrary leakage current value; and outputting, for each arbitrary leakage current value, the cumulative probability density calculated at the calculating.
A leakage current analyzing apparatus according to another aspect of the present invention includes an acquiring unit that acquires a probability density distribution that represents a first variation component specific to each cell in a circuit to be designed and concerning a gate length of a transistor constituting a cell, and a discrete probability density distribution that represents a second variation component common to all the cells of the circuit and concerning the gate length; a calculating unit that, based on the probability density distribution and the discrete probability density distribution acquired by the acquiring unit and a function model that expresses leakage current variation of a cell as a product of the first variation component and the second variation component, calculates a cumulative probability density for a leakage current value of the circuit, the leakage current value being less than or equal to an arbitrary leakage current value; and an output unit that, for each arbitrary leakage current value, outputs the cumulative probability density calculated at the calculating.
A leakage current analyzing method according to still another aspect of the present invention includes acquiring a probability density distribution that represents a first variation component specific to each cell in a circuit to be designed and concerning a gate length of a transistor constituting a cell, and a discrete probability density distribution that represents a second variation component common to all the cells of the circuit and concerning the gate length; calculating, based on the probability density distribution and the discrete probability density distribution acquired at the acquiring and a function model that expresses leakage current variation of a cell as a product of the first variation component and the second variation component, a cumulative probability density for a leakage current value of the circuit, the leakage current value of the circuit being less than or equal to an arbitrary leakage current value; and outputting, for each arbitrary leakage current value, the cumulative probability density calculated at the calculating.
The other objects, features, and advantages of the present invention are specifically set forth in or will become apparent from the following detailed description of the invention when read in conjunction with the accompanying drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a schematic of an overview of an embodiment;
FIG. 2 is a block diagram of a leakage current analyzing apparatus according to the embodiment;
FIG. 3 is a functional diagram of the leakage current analyzing apparatus;
FIG. 4 is a table of an example of data for an analysis;
FIG. 5 is a second table of an example of data for the analysis;
FIG. 6 is a table of leakage current values that are arbitrarily set;
FIG. 7 is a table of an example of an analysis result; and
FIG. 8 is a flowchart of a leakage current analysis process of the leakage current analyzing apparatus.



DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Referring to the accompanying drawings, exemplary embodiments according to the present invention are explained in detail below. According to one aspect of the embodiments, an approach of an efficient and accurate statistical leakage current analysis that takes into account the intra-chip variation and the inter-chip variation, by obtaining the leak rate of the circuit to be designed without limitation on the shape of distribution is proposed.
FIG. 1 is a schematic of an overview of an embodiment. In the embodiment, a cumulative probability density (CDF value), where the leakage current value of a circuit to be designed is equal to or less than an arbitrarily given leakage current value (in FIG. 1, I1, . . . Ij−1, Ij, . . . , IJ), is obtained for each of the leakage current values I1 to IJ.
As depicted in FIG. 1, a leakage current analyzing apparatus 100 is a computer apparatus that statistically analyzes leakage current of a circuit to be designed. The leakage current analysis of the circuit to be designed is performed by an input of design data 110 of the circuit to be designed and data 120 and 130, used for the analysis, into the leakage current analyzing apparatus 100.
The data 120 and 130 used for the analysis are information indicating the variation of the gate lengths of transistors constituting cells in the circuit to be designed. The data 120 used for the analysis includes information that indicates a variation component that concerns the gate lengths and is specific to each cell (intra-chip variation component). Detailed description of the data 120 used for the analysis will be given later referring to FIG. 4.
The data 120 used for the analysis further includes information that identifies the leakage current values I1 to IJ arbitrarily given by a designer. Detailed description of the data that identifies the leakage current values I1 to IJ will be given later referring to FIG. 6.
The data 130 used for the analysis includes information that indicates a variation component that concerns gate length and is common to all the cells (inter-chip variation component). In this case, the probability density for each dividing point (in this case, L1 to LK) dividing a probability density distribution R, indicative of the inter-chip variation, into distribution sections is used as the inter-chip variation component (discrete value). Detailed description of the data 130 used for the analysis will be given later with reference to FIG. 5.
The leakage current variation of a cell is related to the gate length variation of the transistors constituting the cell and this variation is empirically known to be expressed using equation (1) where ΔI is the leakage current variation of the cell, L is the gate length variation of the transistors, and q1 and q2 are leak/gate length coefficients.

ΔI=q1exp(q2L)  (1)

The gate length variation of the transistors is the sum of the intra-chip variation component and the inter-chip variation component and this variation can be expressed using equation (2) where Ltyp is the average value, ΔLintra is the intra-chip variation component, and ΔLinter is the inter-chip variation component.

L=Ltyp+ΔLintra+ΔLinter  (2)

From the above, the leakage current variation of the cell can be expressed using equation (3) obtained by substituting equation (2) in equation (1), where A is a constant, and u( ) and v( ) are functions.

ΔI=A×u(ΔLintra)×v(ΔLinter)  (3)

As described above, the leakage current variation ΔI of the cell can be expressed by the product of the intra-chip variation component ΔLintra and the inter-chip variation component ΔLinter that constitute the gate length variation of the transistors.
In the embodiment, using this relation (equation (3)), a cumulative probability density, where the leakage current value of the circuit to be designed is equal to or less than a certain leakage current value (leakage current values I1 to IJ), is obtained. In this case, each of the leakage current values I1 to IJ is given without limiting the shape of distribution.
As a result, a cumulative leakage current distribution Q (leak rate) of the entire circuit, for which the intra-chip variation and the inter-chip variation of the circuit to be designed are taken into account, can be obtained accurately without limiting the shape of distribution.
FIG. 2 is a block diagram of a leakage current analyzing apparatus according to the embodiment of the present invention. As depicted in FIG. 2, the leakage current analyzing apparatus 100 includes a central processing unit (CPU) 201, a read-only memory (ROM) 202, a random access memory (RAM) 203, a magnetic disc drive 204, a magnetic disc 205, a optical disc drive 206, a optical disc 207 as an example of a removal recording medium, a display 208, an interface (I/F) 209, a keyboard 210, a mouse 211, a scanner 212, and a printer 213. These component units are connected to one another by way of a bus 200.
The CPU 201 governs overall control of the leakage current analyzing apparatus 100. The ROM 202 stores programs such as a boot program. The RAM 203 is used as a work area of the CPU 201. The magnetic disc drive 204, under the control of the CPU 201, controls reading/writing of data from or to the magnetic disc 205. The magnetic disc 205 stores the data written under control of the magnetic disc drive 204. Further, a hard disc, flexible disc, etc. may be adopted in place of the magnetic disc 205.
The optical disc drive 206, under the control of the CPU 201, controls reading/writing of data from or to the optical disc 207. The optical disc 207 stores the data written under control of the optical disc drive 206 and has the data stored in the optical disc 207 read by the leakage current analyzing apparatus 100.
Further, in place of the optical disc 207, a compact disc (CD), a Digital Versatile Disc (DVD), a magneto optical disk (MO), or a memory card, for example, may be adopted. The display 208 displays a cursor, an icon, a tool box, and data such as document, image, and function information. The display 208 may be, for example, a cathode ray tube (CRT), a thin-film-transistor (TFT) liquid crystal display, or a plasma display.
The I/F 209 is connected to a network 214 such as Internet through a telecommunication line and is connected to other devices by way of the network 214. The I/F 209 serves as an interface between the network 214 and the inside of the apparatus and controls the input and output of data from or to external devices. The I/F 209 may be, for example, a modem or a local area network (LAN) adapter.
The keyboard 210 is equipped with keys for the input of characters, numerals, and various instructions, and data is entered through the keyboard 210. The keyboard 210 may be a touch-panel input pad or a ten-key keypad. The mouse 211 performs cursor movement, range selection, and movement, size change, etc., of a window. The mouse 211 may be a trackball or a joystick if it has similar functions as a pointing device.
The scanner 212 optically reads an image and takes in the image data into the leakage current analyzing apparatus 100. The scanner 212 may have an optical character recognition (OCR) function as well. The printer 213 prints image data and document data. The printer 213 may be, for example, a laser printer or an ink jet printer.
FIG. 3 is a block diagram of a functional configuration of the leakage current analyzing apparatus. As depicted in FIG. 3, the leakage current analyzing apparatus 100 includes an input unit 301, an acquiring unit 302, a calculating unit 303, an output unit 304, and a determining unit 305.
Respective functions of the input unit 301, the acquiring unit 302, the calculating unit 303, the output unit 304, and the determining unit 305 can be realized by causing a CPU to execute a corresponding program stored in a storing unit of the leakage current analyzing apparatus 100, or by using an input/output interface. Data output from each of the units (301 to 305) is stored in the storing unit. The function of each connection destination, indicated by each of the arrows in FIG. 3, is realized by reading from the storing unit, the data output from a connection origin and causing the CPU to execute the program corresponding to the function.
The input unit 301 has a function of receiving an input of design data concerning the circuit to be designed. The design data may be a netlist of the circuit to be designed after logical synthesis. Information indicative of cell arrangement and connection relationships among the cells in the circuit to be designed are described in the netlist. A cell may be an inverter, a flip-flop, a buffer, wiring, etc.
The acquiring unit 302 has a function of acquiring the probability density distribution that represents a cell-specific variation component (intra-chip variation component) concerning the gate lengths of the transistors constituting each cell in the circuit to be designed, and the discretized probability density distribution that represents the variation component common to all the cells (inter-chip variation component) and concerning the gate lengths.
These probability density distributions may be directly input into the leakage current analyzing apparatus 100 as the data 120 and 130 depicted in FIG. 1, or the distributions may be acquired from an external source not depicted, or extracted from a database or a library not depicted. For example, a cell is identified using, as a clue, the name of the cell described in the design data received by the input unit 301 and the corresponding information is extracted from a library of a commercially available design tool.
FIG. 4 is a table of an example of the data for the analysis. As depicted in FIG. 4, the data 120 used for the analysis includes, for each cell C1 to Cn in the circuit to be designed, the average value Mintra of the probability density distribution representing the intra-chip variation component that is specific to each of the cells C1 to Cn, the standard deviation σintra, and the leak/gate length coefficients q1 and q2.
The leak/gate length coefficients q1 and q2 are coefficients used when the leakage current variation of a cell expressed in equation (1) is represented using the gate length variation of the transistors. In this case, taking a cell Ci as an example, the average value of the probability density distribution that represents the intra-chip variation component is mintra(i), the standard deviation is σintra(i), and leak/gate length coefficients are q1(i) and q2(i).
FIG. 5 is a second table of an example of the data for the analysis. As depicted in FIG. 5, the data 130 used for the analysis includes a probability density distribution value (PDF value) for each of the dividing points L1 to LK dividing, into distribution sections, a probability density distribution R indicative of the inter-chip variation. The inter-chip variation component is the common distribution in the circuit to be designed and, therefore, the PDF value of each of the dividing points L1 to LK is a value that is common to all the cells.
Description with reference to FIG. 3 is continued herein. The calculating unit 303 has a function of calculating the cumulative probability density for a leakage current value (of the circuit to be designed) that is equal to or less than a leakage current value arbitrarily given, based on the probability density distribution acquired by the acquiring unit 302 and a function model that represents the leakage current variation of a cell as the product of the variation component specific to each cell and the variation component common to all the cells.
More specifically, for example, the calculating unit 303 calculates the cumulative probability density, where a leakage current value of the circuit to be designed is equal to or less than the leakage current value arbitrarily given, based on the data 120 and 130 depicted in FIGS. 4 and 5, and equation (3). The “leakage current value arbitrarily given” is, for example, a leakage current value that is arbitrarily set by a designer according to the function and the size of the circuit to be designed.
FIG. 6 is a table of leakage current values that are arbitrarily set. As depicted in FIG. 6, a table 600 stores the leakage current values (PDF values) respectively for the leakage currents I1 to IJ. By graphically plotting the leakage current values P(I1) to P(IJ) respectively of the leakage currents I1 to IJ, the probability density distribution representing the leakage current of the circuit to be designed is formed.
As described above, in the embodiment, the leakage current value, which is a reference for obtaining the leak rate (the cumulative probability density that is equal to or less than this leakage current value is obtained), is given as a discrete distribution value without limiting the shape of distribution. The table 600 may be directly input into the leakage current analyzing apparatus 100 or may be included in the data 120 and 130 used for the analysis.
The calculating unit 303 calculates, for each of the leakage currents I1 to IJ, a cumulative probability density CDF(Ij) value where the leakage current value of the circuit to be designed is equal to or less than the leakage currents I1 to IJ, based on the data 120 and 130 used for the analysis and equation (3). More specifically, the cumulative probability density CDF(Ij) value that is equal to or less than the leakage current Ij can be obtained using equation (4).




  
    
      
        
          C
          ⁢
          
            
          
          ⁢
          D
          ⁢
          
            
          
          ⁢
          
            F
            ⁡
            
              (
              
                I
                j
              
              )
            
          
        
        =
        
          
            ∑
            
              k
              =
              1
            
            K
          
          ⁢
          
            
              p
              ⁡
              
                (
                
                  L
                  k
                
                )
              
            
            ×
            Δ
            ⁢
            
              
            
            ⁢
            L
            ×
            
              Norm
              ⁡
              
                (
                
                  
                    
                      I
                      j
                    
                    :
                    
                      
                        m
                        i
                      
                      ⁡
                      
                        (
                        k
                        )
                      
                    
                  
                  ,
                  
                    
                      σ
                      i
                    
                    ⁡
                    
                      (
                      k
                      )
                    
                  
                
                )
              
            
          
        
      
    
    
      
        (
        4
        )
      
    
  




Where, mi(k) in equation (4) can be obtained using equation (5) and σi(k) can be obtained using equation (6).




  
    
      
        
          
            m
            i
          
          ⁡
          
            (
            k
            )
          
        
        =
        
          
            ∑
            
              i
              =
              1
            
            n
          
          ⁢
          
            
              
                m
                intra
              
              ⁡
              
                (
                i
                )
              
            
            ×
            
              
                q
                1
              
              ⁡
              
                (
                i
                )
              
            
            ×
            
              exp
              ⁡
              
                [
                
                  
                    
                      q
                      2
                    
                    ⁡
                    
                      (
                      i
                      )
                    
                  
                  ⁢
                  
                    L
                    k
                  
                
                ]
              
            
          
        
      
    
    
      
        (
        5
        )
      
    
  
  
    
      
        
          
            σ
            i
          
          ⁡
          
            (
            k
            )
          
        
        =
        
          
            {
            
              
                ∑
                
                  i
                  =
                  1
                
                n
              
              ⁢
              
                
                  
                    
                      σ
                      intra
                    
                    ⁡
                    
                      (
                      i
                      )
                    
                  
                  2
                
                ×
                
                  exp
                  ⁡
                  
                    [
                    
                      2
                      ⁢
                      
                        
                          q
                          2
                        
                        ⁡
                        
                          (
                          i
                          )
                        
                      
                      ⁢
                      
                        L
                        k
                      
                    
                    ]
                  
                
              
            
            }
          
        
      
    
    
      
        (
        6
        )
      
    
  




Equation (4) is a function model obtained based on the leakage current value of the entire circuit to be designed being the sum of the leakage current values respectively of the cells in the circuit to be designed. More specifically, the leakage current variation of the circuit to be designed is the sum of the leakage current variation of each cell.
It is assumed that the leakage current variation of a cell Ci in the circuit to be designed is Xi=hi(bi+b) where bi is the intra-chip variation component of the leakage current variation and b is the inter-chip variation component of the leakage current variation.
When the fact that the leakage current variation of the circuit to be designed is the sum of the leakage current variation of the cells C1 to Cn is expressed using a mathematical theorem, equation (7) is obtained, where p1(b1), . . . , pn(bn) are PDF values of the probability density distributions each respectively representing the intra-chip variation concerning gate length specific to each cell and p(b) is the PDF value of the probability density distribution representing the inter-chip variation concerning gate length common to all the cells.




  
    
      
        
          C
          ⁢
          
            
          
          ⁢
          D
          ⁢
          
            
          
          ⁢
          
            F
            ⁡
            
              (
              
                I
                j
              
              )
            
          
        
        =
        
          
            ∫
            
              
                {
                
                  
                    
                      h
                      1
                    
                    ⁡
                    
                      (
                      
                        
                          b
                          1
                        
                        +
                        b
                      
                      )
                    
                  
                  +
                  ...
                  +
                  
                    
                      h
                      n
                    
                    ⁡
                    
                      (
                      
                        
                          b
                          n
                        
                        +
                        b
                      
                      )
                    
                  
                
                }
              
              ≤
              
                I
                j
              
            
            
              
            
          
          ⁢
          
            
              
                p
                1
              
              ⁡
              
                (
                
                  b
                  1
                
                )
              
            
            ⁢
            
              
            
            ⁢
            ...
            ⁢
            
              
            
            ⁢
            
              
                p
                n
              
              ⁡
              
                (
                
                  b
                  n
                
                )
              
            
            ⁢
            
              p
              ⁡
              
                (
                b
                )
              
            
          
        
      
    
    
      
        (
        7
        )
      
    
  




More specifically, equation (7) is obtained using the fact that the leakage current variation of a cell expressed in equation (3) is expressed by the product of the intra-chip variation component and the inter-chip variation component of the gate lengths of the transistors. This is an equation for obtaining the cumulative probability density (CDF (Ij)) where the leakage current value of the circuit to be designed is equal to or less than a certain leakage current value I.
When the probability density distribution R (see FIG. 1) that is common to all the cells and represents the inter-chip variation concerning gate length is handled being discretized, equation (7) is transformed into equation (8), where ΔL is the distance between consecutive dividing points of the divided sections of the probability density distribution R that represents the inter-chip variation.




  
    
      
        
          C
          ⁢
          
            
          
          ⁢
          D
          ⁢
          
            
          
          ⁢
          
            F
            ⁡
            
              (
              
                I
                j
              
              )
            
          
        
        =
        
          
            ∑
            
              k
              =
              1
            
            K
          
          ⁢
          
            
              p
              ⁡
              
                (
                
                  L
                  k
                
                )
              
            
            ⁢
            Δ
            ⁢
            
              
            
            ⁢
            L
            ⁢
            
              
                ∫
                
                  
                    (
                    
                      
                        
                          h
                          1
                        
                        ⁡
                        
                          (
                          
                            
                              b
                              1
                            
                            +
                            
                              L
                              k
                            
                          
                          )
                        
                      
                      +
                      ...
                      +
                      
                        
                          h
                          n
                        
                        ⁡
                        
                          (
                          
                            
                              b
                              n
                            
                            +
                            
                              L
                              k
                            
                          
                          )
                        
                      
                    
                    }
                  
                  ≤
                  
                    I
                    j
                  
                
              
              ⁢
              
                
                  
                    p
                    1
                  
                  ⁢
                  
                    
                  
                  (
                  
                    p
                    1
                  
                  ⁢
                  
                    
                  
                  )
                
                ⁢
                ...
                ⁢
                
                  
                
                ⁢
                
                  
                    p
                    n
                  
                  ⁡
                  
                    (
                    
                      b
                      n
                    
                    )
                  
                
              
            
          
        
      
    
    
      
        (
        8
        )
      
    
  




When the leakage current variation hi(bi+b) of each of the cells C1 to Cn in equation (8) is variable-changed using equation (3), the cumulative probability density CDF(Ij) value for the leakage current value (of the circuit to be designed) that is equal to or less than the leakage current Ij can be expressed using equation (9) where r1, . . . , rn are the PDF values respectively representing the intra-chip variation of the leakage current of each of the cells C1 to Cn.




  
    
      
        
          C
          ⁢
          
            
          
          ⁢
          D
          ⁢
          
            
          
          ⁢
          
            F
            ⁡
            
              (
              
                I
                j
              
              )
            
          
        
        =
        
          
            ∑
            
              k
              =
              1
            
            K
          
          ⁢
          
            
              p
              ⁡
              
                (
                
                  L
                  k
                
                )
              
            
            ⁢
            Δ
            ⁢
            
              
            
            ⁢
            L
            ⁢
            
              
                ∫
                
                  
                    (
                    
                      
                        x
                        1
                      
                      +
                      ...
                      +
                      
                        x
                        N
                      
                    
                    )
                  
                  ≤
                  
                    I
                    j
                  
                
              
              ⁢
              
                
                  (
                  
                    1
                    /
                    
                      
                        v
                        1
                      
                      ⁡
                      
                        (
                        
                          L
                          k
                        
                        )
                      
                    
                  
                  ⁢
                  
                    
                  
                  )
                
                ⁢
                
                  
                    r
                    1
                  
                  ⁡
                  
                    (
                    
                      
                        x
                        1
                      
                      /
                      
                        
                          v
                          1
                        
                        ⁡
                        
                          (
                          
                            L
                            k
                          
                          )
                        
                      
                    
                    )
                  
                
                ⁢
                
                  ...
                  ⁡
                  
                    (
                    
                      1
                      /
                      
                        
                          v
                          N
                        
                        ⁡
                        
                          (
                          
                            L
                            k
                          
                          )
                        
                      
                    
                    )
                  
                
                ⁢
                
                  
                    r
                    N
                  
                  ⁡
                  
                    (
                    
                      
                        x
                        N
                      
                      /
                      
                        
                          v
                          N
                        
                        ⁡
                        
                          (
                          
                            L
                            k
                          
                          )
                        
                      
                    
                    )
                  
                
              
            
          
        
      
    
    
      
        (
        9
        )
      
    
  




Because the term in the integration in equation (9) is the CDF value of the sum (n variables) of independent variables, the term can be approximated by a cumulative normal distribution using the central limit theorem when n is a large number. Thereby, multiple integration of the dimensions of the total number of the cells can be calculated at the order (n) and, therefore, higher efficiency of the calculation process can be facilitated. More specifically, the term in the integration can be calculated using the average value mi(k) of the leakage current variation of each cell and the standard deviation σi(k). As a result, the equation expressed by equation (4) can be obtained.
Using equation (4) obtained as described above, the cumulative leakage current variation of the cells is approximated using the cumulative normal distribution and, thereby, the cumulative probability density CDF(Ij) that is equal to or less than the leakage currents I1 to IJ can be calculated for each of the leakage currents I1 to IJ.
In equation (8), the distance ΔL between consecutive dividing points that divide the divided sections of the probability density distribution R that represents the inter-chip variation is constant (that is, descretization is uniform). However, the distance is not limited hereto. For example, ΔL may be ΔL=0.5×(Lk+1−Lk−1) or ΔL may be ΔL=Lk+1−Lk or ΔL=Lk−Lk−1.
More specifically, all these ΔLs may be employed as the distance ΔL between the dividing points and leakage current analysis of the circuit to be designed may be executed for each ΔL. Further, any one ΔL may be employed and the leakage current analysis of the circuit to be designed may be executed.
The output unit 304 has a function of outputting the cumulative probability density calculated by the calculating unit 303 for each arbitrarily given leakage current value. In the example above, the outputting unit 304 outputs the cumulative probability density values CDF(I1) to CDF(IJ) calculated by the calculating unit 303, respectively for the leakage currents I1 to IJ.
The output format by the outputting unit 304 may be any one of screen display on the display 203 depicted in FIG. 2, output by printing by the printer 213, output as data to a memory (storage), and transmission to an external computer apparatus. Description will be given for a specific example of the analysis result of the leakage current analysis output by the outputting unit 304.
FIG. 7 is a table of an example of an analysis result. As depicted in FIG. 7, an analysis result 700 indicates the CDF value C(I1) to C(IJ) where the leakage current of the circuit to be designed is equal to or less than the leakage currents I1 to IJ, for each of the arbitrarily given leakage currents I1 to IJ.
As described above, the leak rate (CDF values C(I1) to C(IJ)), where the leakage current value of the circuit to be designed is equal to or less than each of the arbitrarily given leakage currents I1 to IJ, can be obtained without limiting the shape of distribution.
Description with reference to FIG. 3 is continued herein. The determining unit 305 has a function of determining the dividing points that divide, into distribution sections, the probability density distribution that represents the variation component common to all the cells. Taking an example of the probability density distribution R that represents the inter-chip variation depicted in FIG. 1, the determining unit 305 determines the dividing points L1 to LK that indicate the distribution section of the probability density distribution R.
In this case, the acquiring unit 302 acquires the data 130 that reflects the determination result by the determining unit 305. More specifically, for example, the data 130 is created using the probability density distribution R representing the inter-chip variation input by the input unit 301 and the determination result by the determining unit 305, and the acquiring unit 302 acquires the data 130 used for the analysis.
A specific approach of the determination by the determining unit 305 may be, for example, that dividing points arbitrarily set by a designer may be determined as the dividing points L1 to LK. Further, the dividing points L1 to LK that indicate the distribution section of the probability density distribution R may be determined based on the slope of the probability density distribution R.
More specifically, the dividing points are determined such that the intervals of consecutive dividing points in a distribution section having a larger inclination (slope) of the probability density distribution R are smaller. Thereby, the dividing points in a distribution section having more drastic variation of the distribution values become denser and more PDF values can be acquired as the inter-chip variation component. As a result, higher precision of the leakage current analysis can be facilitated.
The dividing points are further determined such that the intervals of consecutive dividing points in a distribution section having a smaller inclination (slope) of the probability density distribution R are larger. Thereby, the dividing points in the distribution section having more moderate variation of the distribution values become sparser and the PDF values to be acquired as the inter-chip variation component can be reduced.
As a result, reduction of the analysis period can be facilitated. For a distribution section having moderate variation of the distribution values, the need for acquiring many PDF values is low because the effect of the section on analysis accuracy is weak even when the intervals of the dividing points are set to be large.
FIG. 8 is a flowchart of a leakage current analysis process of the leakage current analyzing apparatus according to the embodiment.
As depicted in the flowchart of FIG. 8, the input unit 301 determines whether the design data of the circuit to be designed has been received (step S801). Input of the design data is waited for (step S801: NO) and, when the design data has been input (step S801: YES), the acquiring unit 302 determines whether the data 120 (including the table 600) and 130 for the leakage current analysis has been acquired (step S802).
Acquisition of the data 120 and 130 used for the analysis is waited for (step S802: NO) and, when the acquiring unit 302 acquires the data 120 and 130 (step S802: YES), the calculating unit 303 substitutes the data content of the data 120 into equations (5) and (6) to calculate the average value mi(k) and the standard deviation σi(k) (step S803).
Thereafter, the calculating unit 303 substitutes the average value mi(k) and the standard deviation σi(k) that are calculated into equation (4) (step S804). A variable j in equation (4) is initialized to 0 (step S805). The calculating unit 303 increments the variable j (step S806) and the calculating unit 303 calculates a CDF value (Ij) (step S807).
The calculating unit 303 judges whether j=J (step S808) and, when the calculating unit 303 judges that j≠J (step S808: NO), flow returns to step S806 and the series of processes are repeated. On the other hand, when the calculating unit 303 judges that j=J (step S808: YES), the output unit 304 outputs the analysis result 700 ({IJ, CDF (Ij)}j=1, . . . , J) (step S809) and the series of processes according to the flowchart come to an end.
As described above, the leak rate of the entire circuit, taking into account the intra-chip variation and the inter-chip variation, can be correctly obtained without limiting the shape of distribution by discretizing the leakage current of the circuit to be designed and handling the discretized current. More specifically, even when the correlation among the cells due to the inter-chip distribution is strong, the shape of the leak distribution is not limited to that of a normal distribution or a logarithmic normal distribution, and the error of the maximal leakage current value can be reduced from the conventional 17% to approximately 5 to 6%.
The calculation of the leak rate is executed using the function model that expresses the leakage current variation of each cell by the product of the intra-chip variation and the inter-chip variation concerning the gate length and, thereby, higher efficiency of the calculating process can be facilitated. More specifically, the multiple integration of the dimensions of the total number of the cells (n) in the circuit to be designed in the rate calculation can be calculated at the order (n). Therefore, significant reduction of the calculation period can be realized.
As described above, according to an aspect of the embodiment, leakage current analysis can be facilitated having greater accuracy and higher speed by efficiently and correctly obtaining the leak rate without limiting the shape of distribution. Thereby, the work load of the leakage current analysis on the designer and the design period of the circuit to be designed can be reduced.
The leakage current analyzing method explained in the present embodiment can be implemented by a computer, such as a personal computer and a workstation, executing a program that is prepared in advance. The program is recorded on a computer-readable recording medium such as a hard disk, a flexible disk, a CD-ROM, an MO, and a DVD, and is executed by being read out from the recording medium by a computer. The program can be a transmission medium that can be distributed through a network such as the Internet.
The leakage current analyzing apparatus 100 described in the present embodiment can be realized by an application specific integrated circuit (ASIC) such as a standard cell or a structured ASIC, or a programmable logic device (PLD) such as a field-programmable gate array (FPGA). Specifically, for example, the functions of the units (301 to 305) of the leakage current analyzing apparatus 100 are defined in hardware description language (HDL), which is logically synthesized and applied to the ASIC, the PLD, etc., and thereby enabling manufacture of the leakage current analyzing apparatus 100.
Although the invention has been described with respect to a specific embodiment for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art which fairly fall within the basic teaching herein set forth.

## Claims

1. A non-transitory computer-readable recording medium storing therein a leakage current analyzing program that causes a computer to execute:
acquiring a probability density distribution that represents a first variation component specific to each cell in a circuit to be designed and concerning a gate length of a transistor constituting a cell, and a discrete probability density distribution that represents a second variation component common to all the cells of the circuit and concerning the gate length;
calculating, based on the probability density distribution and the discrete probability density distribution acquired at the acquiring and a function model that expresses leakage current variation of a cell as a product of the first variation component and the second variation component, a cumulative probability density for a leakage current value of the circuit, the leakage current value of the circuit being less than or equal to an arbitrary leakage current value; and
outputting, for each arbitrary leakage current value, the cumulative probability density calculated at the calculating.

2. The non-transitory computer-readable recording medium according to claim 1, wherein the calculating includes calculating a cumulative probability density that is equal to or less than the arbitrary leakage current value, by approximating cumulative leakage current variation of the cells using a cumulative normal distribution.

3. The non-transitory computer-readable recording medium according to claim 1, wherein the leakage current analyzing further causes the computer to execute: determining dividing points that divide, into distribution sections, the discrete probability density distribution that represents the second variation component, wherein the acquiring includes acquiring the probability density distribution that represents the first variation component and for each of the dividing points determined at the determining, probability density of the discrete probability density distribution that represents the second variation component.

4. The non-transitory computer-readable recording medium according to claim 3, wherein the determining includes determining the dividing points based on a slope of the discrete probability density distribution that represents the second variation component.

5. A leakage current analyzing apparatus comprising:
an acquiring unit that acquires a probability density distribution that represents a first variation component specific to each cell in a circuit to be designed and concerning a gate length of a transistor constituting a cell, and a discrete probability density distribution that represents a second variation component common to all the cells of the circuit and concerning the gate length;
a calculating unit that, based on the probability density distribution and the discrete probability density distribution acquired by the acquiring unit and a function model that expresses leakage current variation of a cell as a product of the first variation component and the second variation component, calculates a cumulative probability density for a leakage current value of the circuit, the leakage current value being less than or equal to an arbitrary leakage current value; and
an output unit that, for each arbitrary leakage current value, outputs the cumulative probability density calculated at the calculating.

6. A leakage current analyzing method comprising:
executing by a computer operations of:
acquiring a probability density distribution that represents a first variation component specific to each cell in a circuit to be designed and concerning a gate length of a transistor constituting a cell, and a discrete probability density distribution that represents a second variation component common to all the cells of the circuit and concerning the gate length;
calculating, based on the probability density distribution and the discrete probability density distribution acquired at the acquiring and a function model that expresses leakage current variation of a cell as a product of the first variation component and the second variation component, a cumulative probability density for a leakage current value of the circuit, the leakage current value of the circuit being less than or equal to an arbitrary leakage current value; and
outputting, for each arbitrary leakage current value, the cumulative probability density calculated at the calculating.