# Patent

## Title
Method and apparatus for model-order reduction and sensitivity analysis

## Abstract

Computer time for modeling VLSI interconnection circuits is reduced by using symmetric properties of modified nodal analysis formulation. The modeling uses modified nodal analysis matrices then applies a Krylov subspace matrix to construct a congruence transformation matrix to generate the reduced order model of the VLSI.

## Background
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to methods of model-order reduction and sensitivity analysis for VLSI interconnect circuits, and more particularly to a method of one-sided projection.
2. Description of Related Art
With considering the issues of the signal integrity in high-speed VLSI designs, interconnects are often modeled as lumped RLC networks. To analyze an RLC linear network, the modified nodal analysis (MNA) can be used as follows:




  
    
      
        
          
            
              
                M
                ⁢
                
                  
                    d
                    
                      x
                      ⁡
                      
                        (
                        t
                        )
                      
                    
                  
                  
                    d
                    t
                  
                
              
              =
              
                
                  -
                  
                    Nx
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                
                +
                
                  Bu
                  ⁡
                  
                    (
                    t
                    )
                  
                
              
            
          
        
        
          
            
              
                
                  y
                  ⁡
                  
                    (
                    t
                    )
                  
                
                =
                
                  
                    D
                    T
                  
                  ⁢
                  
                    x
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                
              
              ,
            
          
        
      
    
    
      
        (
        1
        )
      
    
  




where M,N∈Rn×n,x,B∈Rn×m, D∈Rn×p and y∈Rp×m. Matrices M and N containing capacitances, inductances, conductances and resistances are positive definite. The state matrix x(t) contains node voltages and branch currents of inductors, and u(t) and y(t) represent inputs and outputs. The adjoint equation associated with the system in Eq. (1) is of the form




  
    
      
        
          
            M
            ⁢
            
              
                d
                
                  
                    x
                    a
                  
                  ⁡
                  
                    (
                    t
                    )
                  
                
              
              
                d
                t
              
            
          
          =
          
            
              -
              
                
                  Nx
                  a
                
                ⁡
                
                  (
                  t
                  )
                
              
            
            +
            
              Du
              ⁡
              
                (
                t
                )
              
            
          
        
        ,
      
    
    
      
        (
        2
        )
      
    
  




which is the modified node equation of the adjoint network (or the dual system). If the m-port transfer functions are concerned, then p=m and D=B. The transfer functions of the state variables and of the outputs are X(s)=(N+sM)−1B and Y(s)=BTX(s). Conversely, those of the corresponding adjoint network are given as

Xa(s)=(NT+sM)−1B.

Since the computational cost for simulating such large circuits is indeed tremendously huge, model-order reduction techniques have been proposed recently to reduce the computational complexity, for example, U.S. Pat. No. 5,313,398, U.S. Pat. No. 5,379,231, U.S. Pat. No. 5,537,329, U.S. Pat. No. 5,689,685, U.S. Pat. No. 5,920,484, U.S. Pat. No. 6,023,573, U.S. Pat. No. 6,041,170. Among these ways, the moment matching techniques based on Pade approximation and Krylov subspace projections take advantage of efficiency and numerical stability.
‘Moment’ can be defined as follows. By expanding Y(s) about a frequency s0∈C, we have




  
    
      Y
      ⁡
      
        (
        s
        )
      
    
    =
    
      
        
          ∑
          
            i
            =
            
              -
              ∞
            
          
          ∞
        
        ⁢
        
          
        
        ⁢
        
          
            
              Y
              
                (
                i
                )
              
            
            ⁡
            
              (
              
                s
                0
              
              )
            
          
          ⁢
          
            
              (
              
                s
                -
                
                  s
                  0
                
              
              )
            
            i
          
        
      
      =
      
        
          ∑
          
            i
            =
            
              -
              ∞
            
          
          ∞
        
        ⁢
        
          
            B
            T
          
          ⁢
          
            
              X
              
                (
                i
                )
              
            
            ⁡
            
              (
              
                s
                0
              
              )
            
          
          ⁢
          
            
              (
              
                s
                -
                
                  s
                  0
                
              
              )
            
            i
          
        
      
    
  
  ,




where

X(i)(s0)=(−(N+s0M)−1M)i(N+s0M)−1B

is the i th-order system moment of X(s) about s0 and Y(i)(s0) is the corresponding output moment. Similarly, the i th-order system moment of Xa(s) about s0,

Xa(i)(s0)=(−(NT+s0M)−1M)i(NT+s0M)−1B,

can be obtained.
In general, Krylov subspace projection methods can be divided into two categories: one-sided projection methods and two-sided projection methods. The one-sided projection methods use the congruence transformation to generate passive reduced-order models while the two-sided ones can not be guaranteed.
The one-sided projection method for moment matching to generate a reduced-order network of Eq. (1) is described as follows. First, a congruence transformation matrix Vq can be generated by the Krylov subspace methods. Let A=−(N+s0M)−1M and R=(N+s0M)−1B . The k th-order block Krylov subspace generated by A and R is defined as

K(A,R,k)=colsp{R,AR, . . . ,Ak−1R}=colsp(Vq),  (3)

where q≦km. colsp(Vq) represents span the vector space by columns of matrix Vq. The Krylov subspace K(A,R,k) is then equal to the subspace spanned by system moments X(i)(s0) for i=0,1, . . . ,k−1. Matrix Vq can be iteratively generated by the block Arnoldi algorithm and thus be an orthonormal matrix. Next, by applying Vq, n-dimensional state space can be projected onto a q-dimensional space, where q<<n: x(t)=Vq{circumflex over (x)}(t). Then the reduced-order model can be calculated as

{circumflex over (M)}=VqTMVq,{circumflex over (N)}=VqTNVq,{circumflex over (B)}=VqTB.  (4)

The transfer function of the reduced network is

Ŷ(s)={circumflex over (B)}T({circumflex over (N)}+s{circumflex over (M)})−1{circumflex over (B)}.

The corresponding i th-order output moment about s0 is

Ŷ(i)={circumflex over (B)}T(−({circumflex over (N)}+s0{circumflex over (M)})−1{circumflex over (M)})({circumflex over (N)}+s0{circumflex over (M)})−1{circumflex over (B)}.

It can be shown that Y(i)(s0)=Ŷ(i)(s0) for i=0,1, . . . ,k−1 and the reduced-order model is passive.
However, linear independence of the columns in the block Krylov sequence, {R,AR, . . . ,Ak−1R}, is lost only gradually in general. In addition, the orthogonalization process to generate matrix Vq may be numerically ill-conditioned if the order k is extremely high. This invention will provide the adjoint network technique to overcome the above problem. Furthermore, the method will reduce the computational cost of constructing the projector.
SUMMARY OF THE INVENTION
This invention introduces an efficient technique to further reduce the computational cost of the one-sided projection methods. By exploring symmetric properties of the MNA formulation, we will show that the transfer functions and system moments of the adjoint network can be directly calculated from those of the original RLC network. The cost for constructing the congruence transformation matrix can be reduced by up to 50% of the previous methods. In addition, it will be shown that this can be directly applied to the sensitivity analysis of the original circuits, and to generate the congruence transformation matrices for the sensitivity analysis of the reduced-order system.
Further benefits and advantages of the present invention will become apparent after a careful reading of the detailed description with appropriate reference to the accompanying drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a flow chart of a method and apparatus for model-order reduction and sensitivity analysis in accordance with the present invention;
FIG. 2 is a couple tree-line circuit of the present invention;
FIG. 3 shows transfer functions of the far end of the aggressor net and the victim nets: (a) Net 1, (b) Net 2 and (c) Net 3; and
FIG. 4 shows sensitivity analysis of the far end of the aggressor net and the victim nets: (a) Net 1, (b) Net 2 and (c) Net 3.



DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 illustrates the flow chart of this invention. Step 12 establishes the MNA matrices M, N, and B as in Eq. (1). Step 14 generates the Krylov matrix Vq, which spans the k th-order block Krylov subspace defined in Eq. (3). Step 16 constructs the congruence transformation matrix U by using matrix Vq, which will be stated infra. Step 18 generates the corresponding reduced-order models by applying the congruence transformation technique with matrix U as in Eq. (4).
Frequency Response of Adjoint Networks
Suppose that nv and ni are the dimension of the node voltages and the branch currents in x(t). Let each port be connected with a current source so that BT=[BvT 0], where Bv∈Rnv×m. Let the signature matrix S be defined as S=diag (Inv,−Ini), where I represents an identity matrix. The symmetric properties of the MNA matrices are as follows:

S−1=S, SMS=M, SNS=NT, SB=B  (5)

If port impedance parameters are concerned, each port is connected with a voltage source and thus BT=[0 BiT], where Bi∈Rni×m. To preserve the properties in Eq. (3), then S=diag (−Inv,Ini) will be used. If port transmission parameters are concerned, BT=[BvT BiT], the properties in Eq. (5) can still be preserved using superposition principles. The relationship between the transfer functions of the original system X(s) and those of the adjoint network Xa(s) can be derived as follows:





  
    
      
        
          
            
              
                
                  X
                  a
                  
                    (
                    i
                    )
                  
                
                ⁡
                
                  (
                  
                    s
                    0
                  
                  )
                
              
              =
              
              ⁢
              
                
                  -
                  
                    
                      (
                      
                        
                          N
                          T
                        
                        +
                        
                          
                            s
                            0
                          
                          ⁢
                          M
                        
                      
                      )
                    
                    
                      -
                      1
                    
                  
                
                ⁢
                
                  
                    MX
                    a
                    
                      (
                      
                        i
                        -
                        1
                      
                      )
                    
                  
                  ⁡
                  
                    (
                    
                      s
                      0
                    
                    )
                  
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                
                  -
                  
                    
                      [
                      
                        
                          S
                          ⁡
                          
                            (
                            
                              N
                              +
                              
                                
                                  s
                                  0
                                
                                ⁢
                                M
                              
                            
                            )
                          
                        
                        ⁢
                        S
                      
                      ]
                    
                    
                      -
                      1
                    
                  
                
                ⁢
                
                  
                    SMSSX
                    
                      (
                      
                        i
                        -
                        1
                      
                      )
                    
                  
                  ⁡
                  
                    (
                    
                      s
                      0
                    
                    )
                  
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                S
                ⁡
                
                  [
                  
                    
                      -
                      
                        
                          (
                          
                            N
                            +
                            
                              
                                s
                                0
                              
                              ⁢
                              M
                            
                          
                          )
                        
                        
                          -
                          1
                        
                      
                    
                    ⁢
                    
                      
                        MX
                        
                          (
                          
                            i
                            -
                            1
                          
                          )
                        
                      
                      ⁡
                      
                        (
                        
                          s
                          0
                        
                        )
                      
                    
                  
                  ]
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                
                  SX
                  
                    (
                    i
                    )
                  
                
                ⁡
                
                  (
                  
                    s
                    0
                  
                  )
                
              
            
          
        
      
    
    
      
        (
        6
        )
      
    
  




Thus Xa(S) can also be calculated from X(s) directly.
Reduced-Order Models Based on Projection
If matrix U is chosen as the congruence transformation matrix such that

{X(i)(s0),Xa(j)(s0)}∈colsp(U), 0≦i≦k, 0≦j≦l.  (7)

Then, Ŷ(i)(s0)=Y(i)(s0), 0≦i≦k+l+1. The reduced-order transfer function satisfies Ŷ(s)=Y(s)+O(s−s0)K+l+2. In particular, if matrix U is built only from X(i)(s0) with no component from Xa(j)(s0), then Ŷ(i)(s0)=Y(i)(s0), 0≦i≦k. Although Eq. (4) can overcome the numerical instability problem when generating the basis matrix U if order k+l+1 is extremely high, Xa(j)(s0) and X(i)(s0) still need to be calculated individually for general RLC networks. The computational cost of generating U can not be reduced.
This invention provides the adjoint network method to reduce the computational cost of constructing the projector U as follows. Suppose that X(i)(s0)∈colsp(Vq) for 0≦i≦k−1 is a set of moments of X(s) about s0. Then, it can be shown that Xa(i)(s0)∈colsp(SVq) for 0≦i≦k−1. Vq is the orthonormal matrix generated iteratively by the block Arnoldi algorithm. Let U=[Vq SVq] be the congruence transformation matrix for model-order reductions. Therefore, moment Y(i)(s0) can be matched up to (2k−1)st-order by applying the congruence transformation matrix, that is,

Ŷ(i)(s0)=Y(i)(s0), for 0≦i≦2k−1  (8)

Sensitivity Analysis

We can also apply Xa(s)=SX(s) to perform the sensitivity analysis. If the sensitivity of the output Y(s) with respect to one circuit parameter λ is concerned, we have




  
    
      
        
          
            ∂
            
              Y
              ⁡
              
                (
                s
                )
              
            
          
          
            ∂
            λ
          
        
        =
        
          
            -
            
              
                X
                a
                T
              
              ⁡
              
                (
                s
                )
              
            
          
          ⁢
          
            
              ∂
              
                (
                
                  N
                  +
                  sM
                
                )
              
            
            
              ∂
              λ
            
          
          ⁢
          
            X
            ⁡
            
              (
              s
              )
            
          
        
      
    
    
      
        (
        9
        )
      
    
  




Substituting the symmetrical property Xa(s)=SX(s) into Eq. (9), we get





  
    
      
        
          
            ∂
            
              Y
              ⁡
              
                (
                s
                )
              
            
          
          
            ∂
            λ
          
        
        =
        
          
            -
            
              
                X
                T
              
              ⁡
              
                (
                s
                )
              
            
          
          ⁢
          S
          ⁢
          
            
              ∂
              
                (
                
                  N
                  +
                  sM
                
                )
              
            
            
              ∂
              λ
            
          
          ⁢
          
            X
            ⁡
            
              (
              s
              )
            
          
        
      
    
    
      
        (
        10
        )
      
    
  




Thus the computational cost of sensitivity analysis can be reduced about 50% by only solving x(s).
Although we can perform the sensitivity analysis of the original network using Eq. (10) it is advisable to perform the sensitivity analysis by applying the model-order reduction techniques. In the previous works, the congruent transformation matrices V and Va such that X(i)(s0)∈V and Xa(i)(s0)∈Va for 0≦i≦k−1 are constructed individually, with V=SVa. The proposed sensitivity analysis includes the following steps:
(1) calculate the congruence transformation matrix U=[Vq/2 SVq/2];
(2) generate the reduced order systems {{circumflex over (M)},{circumflex over (N)},{circumflex over (B)}} through the congruence transformation Eq. (4);
(3) solve ({circumflex over (N)}+s{circumflex over (M)}){circumflex over (X)}(s)={circumflex over (B)} for each frequency s; and
(4) map {circumflex over (X)}(s) back to the original and adjoint state spaces X(s) and SX(s).
Experimental Results
We provide an example, a coupled three-line circuit in FIG. 2, to show the efficiency of the proposed method. The line parameters are resistance: 3.5 Ω/cm, capacitance: 5.16 μF/cm, inductance: 3.47 nH/cm, coupling capacitance: 6 μF/cm and mutual inductance: 3.47 nH/cm. Nets 1, 2, and 3 are divided into 50, 100 and 150 sections, respectively. The dimension of the MNA matrices is 600×600 and the number of ports is 4. Suppose that the block Arnoldi algorithm is chosen to generate the orthonormal basis for the corresponding Krylov subspace during the whole experiment. We set shift frequency s0=1 GHz and iteration number k=10. So q=40. The frequency responses of the original model and the reduced-order model generated by the block Arnoldi algorithm with the congruence transformation matrices U=Vq, U=V2q, and U=[Vq SVq] are illustrated in FIG. 3. The time to generate the reduced-order models are with U=Vq: 1.50s, U=V2q: 3.86s, and the proposed U=[Vq SVq]: 2.02s by using Matlab 6.1 with Pentium II 450 MHz CPU and 128 MB DRAM.
In addition, sensitivity analysis results are also compared. We choose λ to be the effective driver impedance at the near end of the aggressor net and total 101 frequency points ranged from 0 to 15 GHz to be simulated. The results are generated by the traditional adjoint method, the adjoint method with the 24th-order reduced-order models, and the proposed method are compared in FIG. 4. The simulation time of these models are 555.36s, 24.55s, and 14.15s, respectively. Therefore, it can be observed that the proposed method shows pretty good approximate results and takes less time.
Conclusions
An efficient model-order reduction technique for general RLC networks has been proposed in this invention. Extending the traditional projection method with considering both the original system and the adjoint network, the proposed method only needs to use one half of the original moment information by exploring symmetric properties of the MNA formulation. In addition, moment matching and passivity are preserved. Sensitivity analysis also can be efficiently calculated. Experimental results have demonstrated the accuracy and the efficiency of the proposal method.
Although the invention has been explained in relation to its preferred embodiment, it is to be understood that many other possible modifications and variations can be made without departing from the spirit and scope of the invention as hereinafter claimed.

## Claims

1. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection comprising:
modeling a circuit by entering circuit RLC parameters into a modulated node analysis matrix;
generating a module reduction circuit replacing the model circuit, by use of a modularized simplification with a Krylov subspace matrix;
constructing a congruence transformation matrix from the module reduction circuit; and
generating a reduced order model of the congruence transformation matrix by applying a congruence transformation; by
using a frequency response adjoint network to eliminate symmetries in the congruence transformation matrix to reduce calculations required.

2. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection as in claim 1 further comprising performing a sensitivity analysis of the reduced order model.

3. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection as in claim 2 further comprising:
reducing a size of the congruence transformation matrix by use of symmetrical properties of the congruence transformation matrix to reduce calculations required for sensitivity analysis.

4. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection as in claim 1 further comprising:
performing a sensitivity analysis reduced order system by:
calculating the congruence transformation matrix,
generating a reduced order system through congruence transformation of the congruence transformation matrix,
solving the reduced order system for each frequency, and
mapping results of the solved reduced order system.

5. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection as in claim 1 further comprising:
generating the congruence transformation matrix by a block Arnoldi algorithm to produce an orthonormal matrix.

6. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection as in claim 5 further comprising performing a sensitivity analysis of the reduced order model.

7. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection as in claim 6 further comprising:
reducing a size of the congruence transformation matrix by use of symmetrical properties of the congruence transformation matrix to reduce calculations required for sensitivity analysis.

8. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection as in claim 5 further comprising:
performing a sensitivity analysis reduced order system by:
calculating the congruence transformation matrix,
generating a reduced order system through congruence transformation of the congruence transformation matrix,
solving the reduced order system for each frequency,
mapping results of the solved reduced order system.

9. A method of model-order reduction for RLC circuits in very large scale integration of interconnection circuits using one sided projection as in claim 5 further comprising:
reducing a size of the congruence transformation matrix by use of symmetrical properties of the congruence transformation matrix to reduce calculations required for sensitivity analysis.