1 Introduction

With the continually increasing operating frequencies and circuit densities, accurate and fast signal integrity analysis is becoming critically important for validation of high-speed VLSI designs [19]. In addition, advanced interconnect models are necessary to capture high frequency effects that have become more pronounced due to the increased integration of analog circuits with digital blocks, the demand for lower power consumption, and miniaturization of designs. These high-speed interconnect effects include signal distortion, crosstalk, reflection, attenuation, and delay, which can all severely limit the overall performance of high-speed systems. Failure to address these issues can lead to failed product and design cycles.

Analysis of high-speed interconnects is particularly challenged by the mixed frequency/time nature of the problem. This is handled in the recent literature by developing time-domain macromodels for high-speed interconnects. Several techniques can be found in the literature for macromodeling multiconductor transmission line (MTL) type interconnects characterized by per-unit-length (p.u.l) RLGC parameters. The prominent approaches include method of characteristics (MoC) [7], matrix rational approximations [6], and delay extraction based methods [9].

However, due to the increasing complexities of high-speed interconnects, characterization based on multiport tabulated data (obtained from either measurements or full-wave electromagnetic simulation) has gained popularity in the recent years. The multiport parameters can be in the form of Y (admittance), Z (impedance), S (scattering), or H (hybrid) data. Consequently, several algorithms for macromodeling tabulated data have been published in the recent years [14]. Prominent approaches in this category obtain a rational function approximation from the data and subsequently, synthesize an equivalent circuit or macromodel for integration in SPICE-like simulators. However, popular rational function-based approaches such as vector fitting [1], are designed for general types of data and may not take advantage of certain properties of the original network. For example, if the vector fitting algorithm is applied directly to tabulated data from MTL type interconnects, it may lead to large-order macromodels. This problem gets further aggravated for transmission lines with long delays.

For the purpose of illustration, consider the interconnect circuit shown in Fig. 1. Figures 2 and 3 represent the frequency-domain and time-domain responses of the network, respectively. As seen, the transient response contains a significant delay, consequently, the frequency-domain response contains a large number of poles. Hence, conventional vector fitting [1] will require a very high-order approximation (in this case 175 poles were required). This leads to a large system of differential equations to be solved during transient analysis, requiring excessive CPU time (14.74 s). On the other hand, Fig. 4 represents the delay extracted frequency-domain response, which is very smooth and hence, requires only a few poles for approximation (in this case 2 poles were required). This leads to a lower-order macromodel and hence, faster transient analysis (3.76 s).

Fig. 1
figure 1

Circuit for illustration

Fig. 2
figure 2

Imaginary part of the frequency-domain response Y 11(s)

Fig. 3
figure 3

Comparison of transient response for illustration (VF: vector fitting)

Fig. 4
figure 4

Imaginary part of Y 11(s) after delay extraction

In order to address the issue of large order macromodels for long delay networks, a new algorithm is presented in this paper. The new algorithm targets MTL type networks that are characterized by tabulated data. Unlike the conventional vector fitting technique, the new algorithm explicitly extracts the delay from the tabulated data and generates the macromodel based on modified Lie cells [9]. The method extends the scope of the DEPACT algorithm [9] (which was originally developed for macromodeling MTL networks characterized by RLCG parameters) to handle MTL networks characterized by tabulated multiport data. The advantages of the proposed algorithm are as follows:

  1. 1)

    it leads to low-order macromodels and fast transient simulations,

  2. 2)

    overcomes the ringing associated with conventional high-order rational function based macromodels by virtue of delay extraction and low-order macromodeling.

The necessary theoretical foundations and implementation details for the proposed algorithm are developed. Numerical examples are presented to demonstrate the accuracy and efficiency of the proposed macromodel.

The rest of the paper is organized as follows. Section 2 reviews the underlying theory and methodology for the DEPACT algorithm. It also reviews conventional macromodeling techniques for tabulated data. Section 3 gives a detailed development of the proposed algorithm and is followed by Sect. 4, which discusses the passivity of the proposed macromodel. Sections 5 and 6 present the numerical results and conclusions, respectively.

2 Review of the DEPACT algorithm and macromodeling techniques for tabulated data

Consider the multiconductor transmission line system shown in Fig. 5 with N coupled conductors. This system can be described by Telegraphers equations as [10]

$$ \begin{aligned} \frac{\partial}{\partial x}\user2{v}(x,t)&=-{\mathbf{R}}\user2{i}(x,t) -{\mathbf{L}}\frac{\partial}{\partial t}\user2{i}(x,t), \nonumber\\ \frac{\partial}{\partial x}\user2{i}(x,t)&=-{\mathbf{G}}\user2{v}(x,t) -{\mathbf{C}}\frac{\partial}{\partial t}\user2{v}(x,t), \end{aligned} $$
(1)
Fig. 5
figure 5

Multiconductor transmission line system

where \({\mathbf{R}}\in{\mathbb{R}}^{N\times N}, {\mathbf{L}}\in{\mathbb{R}}^{N\times N}, {\mathbf{C}}\in{\mathbb{R}}^{N\times N}\), and \({\mathbf{G}}\in{\mathbb{R}}^{N\times N}\) are the p.u.l parameters. \(\user2{v}(x,t) \in{\mathbb{R}}^{N}\) and \(\user2{i}(x,t) \in {\mathbb{R}}^{N}\) represent the voltage and current, respectively, as a function of position, x, and time, t. Equation 1 can be transformed into the Laplace-domain and solved using the terminal conditions of the transmission line to obtain [11]

$$ \left[\begin{array}{l} {\mathbf{V}}(d,s)\\ {\mathbf{I}}(d,s)\\ \end{array}\right]=\left[\begin{array}{ll} {\mathbf{H}}_{11}(s)&{\mathbf{H}}_{12}(s)\\ {\mathbf{H}}_{21}(s)&{\mathbf{H}}_{22}(s)\\ \end{array}\right]\left[\begin{array}{c} {\mathbf{V}}(0,s)\\ {\mathbf{I}}(0,s)\\ \end{array}\right] $$
(2)
$$\quad =e^{\left({\mathbf{D}}+s{\mathbf{E}}\right)d} \left[\begin{array}{l} {\mathbf{V}}(0,s)\\ {\mathbf{I}}(0,s)\\ \end{array}\right], $$
(3)

where

$$ {\mathbf{D}}=\left[\begin{array}{ll} {\mathbf{0}}&-{\mathbf{R}}\\ -{\mathbf{G}}&{\mathbf{0}}\\ \end{array}\right],\quad {\mathbf{E}}=\left[\begin{array}{ll} {\mathbf{0}}&-{\mathbf{L}}\\ -{\mathbf{C}}&{\mathbf{0}}\\ \end{array}\right]. $$
(4)

Here, V and I represent the Laplace-domain terminal voltages and currents, respectively, and d is the length of the line. The multiconductor transmission line system described by (2) does not have a direct representation in the time-domain, which makes it difficult to interface with nonlinear transient simulators. In order to overcome this problem, the partial differential equations of (1) are approximated using matrix rational approximations (MRA) [12], which can be converted into a set of equivalent subcircuits for SPICE simulation [6].

For long delay lines, the order of the matrix rational approximation may become very high, leading to large macromodels and slow transient SPICE simulation. In order to address this issue, the DEPACT algorithm was developed [9]. Upon examination of the system in (2), it is clear that the delay is primarily contributed by E. Therefore, extracting the delay from the exponential system can be done by separating the s E term from the exponential matrix function, \(e^{{\bf D}+s{\bf E}}.\) Since the matrices D and s E do not necessarily commute, \(e^{{\bf D}+s{\bf E}}{\neq}e^{{\bf D}}e^{s{\bf E}}.\) Therefore, an appropriate approximation is required for \(e^{{\bf D}+s{\bf E}}\) to extract the delay term, s E from the matrix exponential. In [9], an efficient approximation is obtained using the modified Lie formula as

$$ e^{{\mathbf{D}}+s{\mathbf{E}}}\cong \prod_{k=1}^{m}\varvec{\Uppsi}_k+ \epsilon_m, \quad \varvec{\Uppsi}_k\equiv e^{\frac{s{\mathbf{E}}}{2m}}e^{\frac{{\mathbf{D}}}{m}}e^{\frac{s{\mathbf{E}}}{2m}}, $$
(5)

where the error \(\epsilon_m\cong O(1/m^2).\) The above approximation algorithm can also be adopted for frequency dependent R, L, C, and G parameters [9].

2.1 Frequency dependent parameters

It is common for the p.u.l parameters of a line to be a function of frequency, since at high frequencies these parameters can no longer be approximated as constant. The maximum delay that can be extracted without affecting the passivity of the model was found to be E(∞) [9]. Let

$$ {\mathbf{E}}_a(s)={\mathbf{E}}(s)-{\mathbf{E}}(\infty)=\left[\begin{array}{ll} {\mathbf{0}}&-{\mathbf{L}}_a(s)\\ -{\mathbf{C}}_a(s)&{\mathbf{0}}\\ \end{array}\right], $$
(6)

such that L a (s) and C a (s) are positive definite matrices. The modified Lie product (5) can be applied to the frequency dependent matrix exponential solution for distributed transmission lines, \(e^{{\bf D}(s)+s{\bf E}(s)},\) to give

$$ e^{{\mathbf{D}}(s)+s{\mathbf{E}}(s)}\approx \prod_{k=1}^{m} \left(e^{\frac{s{\mathbf{E}}(\infty)}{2m}}e^{\frac{{\mathbf{D}}(s)+s {\mathbf{E}}_a(s)}{m}}e^{\frac{s{\mathbf{E}}(\infty)}{2m}}\right). $$
(7)

2.2 Realization of the DEPACT macromodel

The realization of the DEPACT macromodel for transient analysis purposes is done by noting that (7) can be considered as a cascade of m transmission line subnetworks. Each of which can subsequently be viewed as a cascade of lossy and lossless transmission lines as shown in Fig. 6. Each of the lossless sections is modeled using the method of characteristics [13] while the lossy sections are modeled using matrix rational approximations [6]. By virtue of the delay extraction process, the frequency dependent function \(\frac{{\mathbf{D}}(s)+s{\mathbf{E}}_a(s)}{m}\) leads to a low-order matrix rational realization [9]. The realization of each lossless section requires only ideal delay elements, and thus, adds minimal CPU cost to the transient simulation.

Fig. 6
figure 6

Macromodel realization of product terms in (7) (MRA: matrix rational approximation)

2.3 Macromodeling of tabulated data

The tabulated frequency-domain data characterizing high-speed circuits is generally given in the form of scattering or admittance parameters. For the case of admittance parameters, the transfer function Y(s) relates the input voltages, \({\bf V}(s),\) to the output currents, \({\bf I}(s),\) via

$$ {\mathbf{I}}(s)={\mathbf{Y}}(s){\mathbf{V}}(s). $$
(8)

Prominent macromodeling approaches such as vector fitting [1] approximate each matrix element, Y ij (s), using a rational function in the form

$$ Y_{ij}(s)=d^{i,j}+\sum_{n=1}^{N_{ij}}\frac{r_n^{i,j}}{s-p_n^{i,j}}, \quad (i,j\in1,2,\ldots,L), $$
(9)

where d i,j is the coupling constant, N ij is the number of poles required to approximate Y ij (s), \(p_n^{i,j}\) are the poles, \(r_n^{i,j}\) are the residues, and L is the number of ports. The rational approximation is converted into a set of equivalent subcircuits for SPICE simulation [5].

As stated in the introduction, for long delays a large number of poles are required to approximate each matrix element, leading to large equivalent circuits and slow simulation times. In addition, if the data characterizes a transmission line, this method does not make use of any transmission line characteristics to reduce the order of the model or improve its efficiency.

In order to overcome the above difficulties, the next section presents the development of the new algorithm which extends the scope of the DEPACT algorithm to handle MTL networks characterized by tabulated multiport data.

3 Development of the proposed algorithm

In this section, a new algorithm is presented for efficient macromodeling of multiconductor transmission line structures characterized by tabulated data. The tabulated data can be in the form of Z, Y, S, or H parameters, which can be obtained through either measurement or full-wave electromagnetic simulators. The new algorithm extends the scope of the DEPACT algorithm, discussed in Sect. 2, to the case of tabulated multiport transmission line networks.

The proposed algorithm begins by obtaining a unique matrix logarithm of the H parameters in the system and subsequently, approximates the logarithm using a low-order rational function. Next, the DEPACT methodology is applied to obtain a realization suitable for time-domain simulation.

3.1 Concept of the proposed algorithm

Consider the H parameters of a multiconductor transmission line, which can be represented using the exponential relation as

$$ \begin{aligned} \left[ \begin{array}{l} {\mathbf{V}}(d,s)\\ {\mathbf{I}}(d,s)\\ \end{array} \right]&= \left[ \begin{array}{ll} {\mathbf{H}}_{11}(s)&{\mathbf{H}}_{12}(s)\\ {\mathbf{H}}_{21}(s)&{\mathbf{H}}_{22}(s)\\ \end{array} \right] \left[ \begin{array}{l} {\mathbf{V}}(0,s) \\ {\mathbf{I}}(0,s)\\ \end{array} \right]\\ &=e^{{\varvec{\Upphi}}(s)}\left[ \begin{array}{l} {\mathbf{V}}(0,s)\\ {\mathbf{I}}(0,s)\\ \end{array} \right]. \end{aligned} $$
(10)

Therefore, taking the matrix logarithm of the H parameters will give the function \(\varvec{\Upphi}(s),\) i.e.

$$ \varvec{\Upphi}(s)=\log\left(\left[\begin{array}{ll} {\mathbf{H}}_{11}(s)&{\mathbf{H}}_{12}(s)\\ {\mathbf{H}}_{21}(s)&{\mathbf{H}}_{22}(s)\\ \end{array} \right]\right). $$
(11)

However, the difficulty is that, there are infinite values for the matrix logarithm, and selecting the appropriate one for the approximation becomes critically important. This can be illustrated by considering a two-conductor example. Let T(s) and \(\varvec{\Uplambda}(s)\) be the matrices of eigenvectors and eigenvalues, respectively, for \(\varvec{\Upphi}(s)\) denoted by

$$ {\mathbf{T}}(s)=\left[ \begin{array}{ll} T_{11}(s)&T_{12}(s)\\ T_{21}(s)&T_{22}(s)\\ \end{array}\right], \quad \varvec{\Uplambda}(s) = \left[ \begin{array}{ll} \lambda_{11}(s)&0\\ 0&\lambda_{22}(s)\\ \end{array}\right]. $$
(12)

Then, we have

$$ \varvec{\Upphi}(s) = \log{(e^{[\varvec{\Upphi}(s)]})} = \log{(e^{[{\mathbf{T}}(s)][\varvec{\Uplambda}(s)][{\mathbf{T}}^{-1}(s)]})}\\ = [{\mathbf{T}}(s)]\log{(e^{[\varvec{\Uplambda}(s)]})}[{\mathbf{T}}^{-1}(s)]. $$
(13)

Evaluating the remaining logarithm in expression (13) gives

$$ \log{(e^{[\varvec{\Uplambda}(s)]})} = \left[ \begin{array}{ll} \log{(e^{\lambda_{11}(s)\pm 2j\pi p_1})}&0\\ 0&\log{(e^{\lambda_{22}(s)\pm 2j\pi p_2})}\\ \end{array}\right] = \left[ \begin{array}{ll} \lambda_{11}(s)\pm 2j\pi p_1& 0\\ 0&\lambda_{22}(s)\pm 2j\pi p_2\\ \end{array} \right], $$
(14)

where p 1 and p 2 are integers from −∞ to + ∞. Then, the possibilities for the matrix logarithm of the entire function, \(\varvec{\Upphi}(s),\) are

$$ \begin{aligned} \varvec{\Upphi}(s)=&[{\mathbf{T}}(s)]\left[ \begin{array}{ll} \lambda_{11}(s)& 0\\ 0&\lambda_{22}(s)\\ \end{array} \right][{\mathbf{T}}(s)^{-1}]\\ &+j2\pi [{\mathbf{T}}(s)]\left[ \begin{array}{ll} \pm p_1&0\\ 0&\pm p_2\\ \end{array}\right][{\mathbf{T}}(s)^{-1}]. \end{aligned} $$
(15)

All integer values of p 1 and p 2 would obtain the correct value for the logarithm in (14). However, selecting arbitrary p 1 and p 2 can lead to \(\varvec{\Upphi}(s)\) (as described by (14) and (15)), which is difficult to fit, thereby yielding inefficient macromodels (further details are given in Appendix I).

3.2 Formulation of the proposed algorithm

In the case of tabulated multiport Y, Z, S, or H parameters, the function \(\varvec{\Upphi}(s)\) is not known. The goal is to extract \(\varvec{\Upphi}(s)\) from the H parameters, so that the DEPACT algorithm can be applied for macromodeling purposes. However, as discussed earlier, direct application of the principal matrix logarithm does not necessarily lead to a \(\varvec{\Upphi}(s)\) that can be fit using a low-order matrix rational approximation. In order to overcome the above problem of selecting the appropriate matrix logarithm, a novel least squares technique is developed that minimizes the change in \(\log(e^{\varvec{\Upphi}(s)})\) between the i and i + 1 frequency points for \(i\in(1,2,\ldots,M-1),\) where M is the number of frequency points. We note that for N ports, the function \(\hbox{log}(e^{\varvec{\Upphi}(s)})\) can be written at the ith frequency point as

$$ \begin{aligned} \varvec{\Upphi}_i&=\log{\left({\left[\begin{array}{ll} {\mathbf{H}}_{11}(s_i)&{\mathbf{H}}_{12}(s_i)\\ {\mathbf{H}}_{21}(s_i)&{\mathbf{H}}_{22}(s_i)\\ \end{array} \right]}\right)}\\ &=\left[ \begin{array}{llll} \Upphi_{11,i}& \Upphi_{12,i}&\ldots&\Upphi_{1N,i}\\ \Upphi_{21,i}&\Upphi_{22,i}&\ldots&\Upphi_{2N,i}\\ \vdots&\ldots&\ddots&\vdots\\ \Upphi_{N1,i}&\Upphi_{N2,i}&\ldots&\Upphi_{NN,i}\\ \end{array} \right]. \end{aligned} $$
(16)

Following a similar derivation as (15) we obtain

$$ \begin{aligned} \varvec{\Upphi}_i=&[{\mathbf{T}}_i]\left\{ \left[ \begin{array}{llll} \lambda_{11,i}& 0&\ldots&0\\ 0&\lambda_{22,i}&\ddots&\vdots\\ \vdots&\ddots&\ddots&0\\ 0&\ldots&0&\lambda_{NN,i}\\ \end{array} \right]\right.\\ &{+}\: \left.j2\pi \left[\begin{array}{llll} p_{1,i}&0&\ldots&0\\ 0&p_{2,i}&\ddots&\vdots\\ \vdots&\ddots&\ddots&0\\ 0&\ldots&0& p_{N,i}\\ \end{array} \right]\right\}[{\mathbf{T}}_i^{-1}],\\ \end{aligned} $$
(17)

where at the ith frequency point, T i are the matrices of eigenvectors, λ kk,i is the principal logarithm of the eigenvalues, and p k,i is the kth port integer (positive or negative) value. The goal is to determine the values of p k,i+1 that minimize the least squares function

$$ \psi_i = \sum_{k=1}^{N}\sum_{l=1}^{N}[{\mathfrak{Re}}(\Upphi_{kl,i+1} -\Upphi_{kl,i})^2 + {\mathfrak{Im}}(\Upphi_{kl,i+1} -\Upphi_{kl,i})^2] $$
(18)

for every \(i\in(1,2,\ldots, M-1),\) where M is the number of frequency points. In order to solve this problem, first, the p k,1, \(k\in(1,2,\ldots, N),\) are selected and arbitrarily chosen as 0. Then, (18) is minimized with respect to p k,2 using a combinatorial optimization algorithm [14] (or equivalently an exhaustive search algorithm could be used for a small number of ports). This process is repeated recursively for \(i=(2,3,\ldots,M-1)\) to determine \(\varvec{\Upphi}(s)\) at all M frequency points. Once \(\varvec{\Upphi}(s)\) has been found, it is fit with a low-order matrix rational approximation [1]. The resulting approximation is in the form

$$ \varvec{\Upphi}(s)=\varvec{\Upphi}_F(s)+s\varvec{\Upphi}_D $$
(19)

where \(\varvec{\Upphi}_F(s)\) is a matrix rational function and \(\varvec{\Upphi}_D\) is the remaining delay term expressed as

$$ \varvec{\Upphi}_F(s) = \left[ \begin{array}{ll} {\mathbf{0}}&\varvec{\Upphi}_{F_{12}}(s)\\ \varvec{\Upphi}_{F_{21}}(s)&\mathbf{0}\\ \end{array}\right], \varvec{\Upphi}_D = \left[ \begin{array}{ll} {\mathbf{0}}&\varvec{\Upphi}_{D_{12}}\\ \varvec{\Upphi}_{D_{21}}&{\mathbf{0}}\\ \end{array}\right]. $$
(20)

Then, applying the modified Lie product we obtain the approximation as

$$ e^{\varvec{\Upphi}(s)}=e^{\varvec{\Upphi}_F(s) + s\varvec{\Upphi}_D} \approx \prod_{k=1}^{m} \left(e^{\frac{s\varvec{\Upphi}_D}{2m}}e^{\frac{\varvec{\Upphi}_F(s)}{m}} e^{\frac{s\varvec{\Upphi}_D}{2m}}\right). $$
(21)

In order to guarantee accurate transient simulation of the proposed macromodel, it is necessary that the macromodel is passive. Details on the passivity of the proposed macromodel are given in the next section.

4 Passivity of the proposed macromodel

By definition, passivity describes a network that cannot generate more energy than it absorbs. In addition, a passive network, when terminated with any other passive load, will always produce a stable output [15]. Passivity is important because stable, but non-passive macromodels may lead to unstable systems when connected to other passive devices [6]. The necessary and sufficient conditions for the passivity of admittance parameters, Y(s), are as follows [15].

  1. 1)

    \({\bf Y}(s^\ast)={\bf Y}^\ast(s)\) for all complex s, where * is the complex conjugate operator,

  2. 2)

    Y(s) is positive real, that is, \({z^{\ast}}^T({\bf Y}(s)+{\bf Y}^T(s^{\ast}))z {\geq}0\) for all complex values of s satisfying \({\mathfrak{Re}}(s) \ge 0\) and for any complex vector z.

In the proposed algorithm, the exponential function is approximated as cascade of subnetworks using (21). If each subnetwork is passive, then the complete macromodel will be passive. For this purpose, each of the matrices \(\varvec{\Upphi}_{D_{12}},\) \(\varvec{\Upphi}_{D_{21}},\) \(\varvec{\Upphi}_{F_{12}}(s),\) and \(\varvec{\Upphi}_{F_{21}}(s)\) of (20) are made positive definite using passivity correction algorithms [3]. Using this information, for lossless sections represented by \(e^{\frac{\varvec{\Upphi}_D}{2m}},\) it can easily be proven that their transfer function is passive provided \(\varvec{\Upphi}_D\) is positive real [9]. For lossy sections, the proof of passivity is given below.

4.1 Passivity of lossy sections

The lossy sections, represented by \(e^{\frac{\varvec{\Upphi}_F(s)}{m}},\) are modeled using matrix rational approximations [6]. Let

$$ \varvec{\Uppsi}(s)=\left[ \begin{array}{ll} {\mathbf{0}}&\varvec{\Uppsi}_{12}\\ \varvec{\Uppsi}_{21}&{\mathbf{0}}\\ \end{array} \right] = \left[ \begin{array}{ll} {\mathbf{0}}&\frac{\varvec{\Upphi}_{F_{12}}}{m}\\ \frac{\varvec{\Upphi}_{F_{21}}}{m}&{\mathbf{0}}\\ \end{array} \right] = \frac{\varvec{\Upphi}_F(s)}{m}. $$
(22)

The Padé approximation [12], of order n, for the exponential is

$$ e^{\varvec{\Uppsi}(s)} \approx {\mathbf{P}}_{n,n}(\varvec{\Uppsi}(s))^{-1} {\mathbf{Q}}_{n,n}(\varvec{\Uppsi}(s)) $$
(23)

where

$$ \begin{array}{l} {\mathbf{P}}_{n,n}(\varvec{\Uppsi}(s))=\sum\limits_{i=0}^{N}\frac{(N+N-i)!N!} {(N+N)!i!(N-i)!}(-\varvec{\Uppsi}(s))^i,\\ {\mathbf{Q}}_{n,n}(\varvec{\Uppsi}(s))=\sum\limits_{i=0}^{N}\frac{(N+N-i)!N!} {(N+N)!i!(N-i)!}(\varvec{\Uppsi}(s))^i. \end{array} $$
(24)

This can also be written as

$$ \begin{aligned} {\mathbf{P}}_{n,n}(\varvec{\Uppsi}(s))^{-1}{\mathbf{Q}}_{n,n} (\varvec{\Uppsi}(s))=&\prod_{i=1}^{n/2}\left[(a_i{\mathbf{U}} -\varvec{\Uppsi}(s))(a_i^{\ast}{\mathbf{U}}-\varvec{\Uppsi}(s))\right]^{-1}\\ &\times\left[(a_i{\mathbf{U}}+\varvec{\Uppsi}(s))(a_i^{\ast}{\mathbf{U}}+\varvec{\Uppsi}(s) )\right] \end{aligned} $$
(25)

for even values of n, and

$$ \begin{aligned} {\mathbf{P}}_{n,n}(\varvec{\Uppsi}(s))^{-1}{\mathbf{Q}}_{n,n} (\varvec{\Uppsi}(s))&=\left[a_0{\mathbf{U}}-\varvec{\Uppsi}(s)\right]^{-1}\left[a_0{\mathbf{U}}+\varvec{\Uppsi}(s) \right]\\ &\prod_{i=1}^{(n-1)/2}\left[ (a_i{\mathbf{U}}-\varvec{\Uppsi}(s))(a_i^{\ast}{\mathbf{U}}-\varvec{\Uppsi}(s) ) \right]^{-1} \nonumber\\ &\times\left[ (a_i{\mathbf{U}}+\varvec{\Uppsi}(s))(a_i^{\ast}{\mathbf{U}}+\varvec{\Uppsi}(s) )\right] \end{aligned} $$
(26)

for odd values of n. Here U represents the unity matrix, \(a_i=x_i+jy_i\) are complex roots for i > 0 (* represents the complex conjugate operator) and a 0 is a real root. The complex product terms can be expanded as in (27), shown on the top of the next page, while the real product terms can be defined as

$$ \begin{aligned} \left[(a_i{\mathbf{U}}-\varvec{\Uppsi}(s))(a_i^{\ast}{\mathbf{U}}-\varvec{\Uppsi}(s)) \right]=&\left[\begin{array}{ll} (x_i^2+y_i^2){\mathbf{U}}+\varvec{\Uppsi}_{12}\varvec{\Uppsi}_{21}&-2x_i \varvec{\Uppsi}_{12}\\ -2x_i\varvec{\Uppsi}_{21}&(x_i^2+y_i^2){\mathbf{U}}+\varvec{\Uppsi}_{12}\varvec{\Uppsi}_{21}\\ \end{array} \right] \\ \left[ (a_i{\mathbf{U}}+\varvec{\Uppsi}(s))(a_i^{\ast}{\mathbf{U}}+\varvec{\Uppsi}(s) ) \right] =&\left[ \begin{array}{ll} (x_i^2+y_i^2){\mathbf{U}}+\varvec{\Uppsi}_{12}\varvec{\Uppsi}_{21}&2x_i\varvec{\Uppsi}_{12}\\ 2x_i\varvec{\Uppsi}_{21}&(x_i^2+y_i^2){\mathbf{U}}+\varvec{\Uppsi}_{12}\varvec{\Uppsi}_{21}\\ \end{array} \right] \end{aligned} $$
(27)
$$ \begin{aligned}\left[a_0{\mathbf{U}}+\varvec{\Uppsi}(s) \right] =& \left[ \begin{array}{ll} a_0{\mathbf{U}}&\varvec{\Uppsi}_{12}\\ \varvec{\Uppsi}_{21}&a_0{\mathbf{U}}\\ \end{array} \right], \\ \left[ a_0{\mathbf{U}}-\varvec{\Uppsi}(s) \right] =& \left[ \begin{array}{ll} a_0{\mathbf{U}}&-\varvec{\Uppsi}_{12}\\ -\varvec{\Uppsi}_{21}&a_0{\mathbf{U}}\\ \end{array} \right]. \end{aligned}$$
(28)

Next, note that the product terms are a hybrid parameter representation. Converting the complex product terms in (27) to admittance parameters gives

$$ \begin{aligned} {\mathbf{Y}}_{11}={\mathbf{Y}}_{22}=&\frac{(x_i^2+y_i^2)}{4x_i}\varvec{\Uppsi}_{12}^{-1} + \frac{\varvec{\Uppsi}_{21}}{4x_i}\\ &+x_i\left[(x_i^2+y_i^2)\varvec{\Uppsi}_{21}^{-1}+\varvec{\Uppsi}_{12} \right]^{-1},\\ {\mathbf{Y}}_{12}={\mathbf{Y}}_{21}=&-\frac{(x_i^2+y_i^2)}{4x_i} \varvec{\Uppsi}_{12}^{-1} - \frac{\varvec{\Uppsi}_{21}}{4x_i}\\ &+x_i\left[(x_i^2+y_i^2)\varvec{\Uppsi}_{21}^{-1}+\varvec{\Uppsi}_{12} \right]^{-1}. \end{aligned} $$
(29)

The real product terms in (28) give the admittance parameters as

$$ \begin{array}{l} {\mathbf{Y}}_{11} = {\mathbf{Y}}_{22} = \frac{a_0}{2}\varvec{\Uppsi}_{12}^{-1} + \frac{1}{2a_0}\varvec{\Uppsi}_{21},\\ {\mathbf{Y}}_{12} = {\mathbf{Y}}_{21} = -\frac{a_0}{2}\varvec{\Uppsi}_{12}^{-1} + \frac{1}{2a_0}\varvec{\Uppsi}_{21}. \end{array} $$
(30)

Then, the admittance parameters are written in the form

$$ {\mathbf{Y}} = \left[ \begin{array}{ll} {\mathbf{Y}}_{11}&{\mathbf{Y}}_{12}\\ {\mathbf{Y}}_{21}&{\mathbf{Y}}_{22}\\ \end{array}\right] = \left[ \begin{array}{ll} \varvec{\Uptheta}&-\varvec{\Uptheta}\\ -\varvec{\Uptheta}&\varvec{\Uptheta}\\ \end{array}\right] + \left[ \begin{array}{ll} \varvec{\Upomega}&\varvec{\Upomega}\\ \varvec{\Upomega}&\varvec{\Upomega}\\ \end{array}\right] = \varvec{\Updelta}_1 + \varvec{\Updelta}_2 $$
(31)

where

$$ \begin{array}{l} \varvec{\Uptheta}=\frac{(x_i^2+y_i^2)}{4x_i}\varvec{\Uppsi}_{12}^{-1} + \frac{\varvec{\Uppsi}_{21}}{4x_i},\\ \varvec{\Upomega}=x_i\left[(x_i^2+y_i^2)\varvec{\Uppsi}_{21}^{-1}+\varvec{\Uppsi}_{12} \right]^{-1} \end{array} $$
(32)

for the complex product admittance terms in (29), and

$$ \varvec{\Uptheta}=\frac{a_0}{2}\varvec{\Uppsi}_{12}^{-1}, \quad \varvec{\Upomega}=\frac{1}{2a_0}\varvec{\Uppsi}_{21}, $$
(33)

for the real product terms in (30).

In order to prove the admittance parameters are passive, they must satisfy the passivity conditions described earlier. The first passivity condition is satisfied since the coefficients of the Padé approximation are real. It remains to show (31) is positive real for the definitions in both (32) and (33). To accomplish this, we use the following properties of positive real matrices.

  1. a)

    The addition of two positive real matrices is a positive real matrix.

  2. b)

    The inverse of a positive real matrix, if it exists, is a positive real matrix.

In order to prove the \(\varvec{\Updelta}_1\) and \(\varvec{\Updelta}_2\) are positive real, note that the matrices \( \varvec{\Uptheta}\) and \(\varvec{\Upomega}\) defined in (32) and (33) are positive real using properties a) and b) provided \(\varvec{\Uppsi}_{12}\) and \(\varvec{\Uppsi}_{21}\) are positive real. Next, write \(\varvec{\Updelta}_1\) and \(\varvec{\Updelta}_2\) as congruence transforms of positive real matrices

$$ \begin{array}{l} \varvec{\Updelta}_1={\mathbf{W}}_{\Uptheta}^{T}diag(\varvec{\Uptheta}, {\mathbf{0}}){\mathbf{W}}_{\Uptheta}\\ \varvec{\Updelta}_2={\mathbf{W}}_{\Upomega}^{T}diag(\Upomega,{\mathbf{0}}) {\mathbf{W}}_{\Upomega} \end{array} $$
(34)

where

$$ {\mathbf{W}}_{\Uptheta}=\left[ \begin{array}{ll} {\mathbf{U}}&-{\mathbf{U}}\\ {\mathbf{0}}&{\mathbf{U}}\\ \end{array}\right] , \quad {\mathbf{W}}_{\Upomega} = \left[ \begin{array}{ll} {\mathbf{U}}&{\mathbf{U}}\\ {\mathbf{0}}&{\mathbf{U}}\\ \end{array}\right]. $$
(35)

It is clear from (34) that since \(diag(\varvec{\Uptheta},{\mathbf{0}})\) and \(diag(\varvec{\Upomega},{\mathbf{0}})\) are positive real, \(\varvec{\Updelta}_1\) and \(\varvec{\Updelta}_2\) are positive real. Consequently, this means the admittance parameters are positive real provided \(\varvec{\Uppsi}_{12}\) and \(\varvec{\Uppsi}_{21}\) are positive real, and all subsections macromodeled using this technique passive.

A summary of the steps involved in the proposed algorithm for macromodeling a single set of multiconductor transmission lines is presented (in the form of pseudocode) in Algorithm 1.

Algorithm 1

Pseudocode for the proposed macromodel

  • Step 1: Obtain tabulated frequency-domain response data for the line in the form of H parameters, H(s i ), for \(i \in(1, 2, {\ldots,}M),\) where M is the number of distinct frequency points.

  • Step 2: Calculate the matrices of eigenvectors and eigenvalues, T(s i ) and \(\varvec{\Uplambda}(s_i),\) respectively, of the H parameters, H(s i ), at each of the i ∈ (1, 2,…,M) frequency points.

  • Step 3:

    for i = 1 : M − 1 do

    Solve the least squares combinatorial optimization problem in (18) for the integer values p k,i that minimize the least squares difference between the ith and (i + 1)th frequency point using p k,i  = 0 for i = 1.

    end for

  • Step 4: Apply the vector fitting algorithm [1] to obtain a low-order rational approximation for the resulting logarithm function, \(\varvec{\Upphi}(s).\)

  • Step 5: Apply passivity test and correction algorithms [3, 4] on the matrix rational approximation of \(\varvec{\Upphi}(s)\) to ensure a positive real matrix function.

  • Step 6: Apply the modified Lie product to obtain an approximation of the matrix exponential function \(e^{\varvec{\Upphi}(s)}\) in the form of (21) and subsequently, obtain an equivalent circuit (or macromodel) for integration into SPICE-like simulators.

5 Numerical results

This section presents several numerical examples that validate the accuracy and efficiency of the proposed algorithm. The proposed algorithm is compared to the conventional rational function based vector fitting algorithm [1]. Transient simulations were performed using HSPICE on an Intel Core T7200 2 GHz CPU.

5.1 Example 1

In this example, we consider the four-port transmission line shown in Fig. 7, characterized by tabulated frequency-domain admittance parameters. The sample frequency-domain plots in Fig. 8 illustrate the conventional vector fitting approximation (146 poles) and the proposed approximation (38 sections) in good agreement with the original tabulated data.

Fig. 7
figure 7

Circuit for example 1

Fig. 8
figure 8

Frequency-domain comparison for example 1 (VF: vector fitting)

Next, the proposed macromodel was excited by a pulse with 0.1 ns rise/fall times and 15 ns pulse width. The proposed model required 3.74 s to simulate, compared to 163.92 s for the conventional vector fitting macromodel. A sample comparison of the transient responses shown in Fig. 9 illustrates that both macromodels are in good agreement.

Fig. 9
figure 9

Comparison of transient response for example 1 (VF: vector fitting)

5.2 Example 2

In this example, we consider the ten-port transmission line shown in Fig. 10. Conventional vector fitting required 280 poles to fit the admittance response matrix while the proposed algorithm required 12 sections in the modified lie formula. It is clear from Fig. 11 that the proposed fitting algorithm and the conventional vector fitting algorithm are in good agreement with the original data.

Fig. 10
figure 10

Circuit for example 2

Fig. 11
figure 11

Frequency-domain comparison for example 2 (VF: vector fitting)

Next, the macromodel designed via conventional vector fitting was excited using a trapezoidal pulse with 0.1 ns rise/fall times and 10 ns pulse width. The model required 383.42 s to simulate, compared to 2.28 s for the proposed macromodel. Sample comparisons for the transient responses at v 1out and v 2out are shown in Fig. 12. As seen, the transient response from both the vector fitting macromodel and the proposed macromodel are in good agreement.

Fig. 12
figure 12

Comparison of transient response for example 2 (VF: vector fitting)

5.3 Example 3

In this example, we consider a practical interconnect system corresponding to a line card packet interface (level 4 phase 2 (SPI4.2)) that uses standard low-voltage differential signaling (LVDS) with a 1 GBps data rate. Figure 13(a) shows the circuit topology. Here the transmission medium is comprised of a pair of coupled traces routed in a dual stripline configuration whose cross section is shown in Fig. 13(b). The output buffer characteristics at the driving point impedance are represented by a pair of differential current sources. The receiver is represented by its input capacitance of 5 pF (since the peak-to-peak voltage swing is not very high on a lossy long transmission line structure, the electrostatic discharge (ESD) protection diodes will not turn on and can be neglected). The proposed algorithm required 20 segments to accurately model the admittance parameters in the network. In comparison, conventional vector fitting required 84 poles to accurately model the admittance parameters. A sample frequency-domain fitting is shown in Fig. 14.

Fig. 13
figure 13

Circuit configuration for example 3 (s: conductor edge-to-edge separation, w: conductor width, t: conductor thickness, h 1: dielectric slab thickness, h 0: height from trace to reference plane)

Fig. 14
figure 14

Frequency-domain comparison for example 3 (VF: vector fitting)

Next, each current source in the proposed macromodel was excited with periodic input pulse of 7.5 mA peak-to-peak current, 0.1 ns rise/fall times, pulse width of 0.8 ns, and a period of 2 ns. A transient response comparison of the output is given in Fig. 15 and illustrates both macromodels are in good agreement.

Fig. 15
figure 15

Comparison of transient response of v 2out for example 3 (VF: vector fitting)

A summary of the CPU time and speed-up comparison for all the three examples is given in Table 1. Table 2 gives a summary of the order for all 3 examples.

Table 1 A summary of the CPU performance of the macromodels during transient analysis
Table 2 A summary of the order of the macromodels

5.4 Discussion of computational results

In this section, a discussion of numerical results with respect to the proposed algorithm is given.

CPU speed-up: It is to be noted that, for the case of the conventional vector-fitting algorithm, the data including delay is modeled using a rational function in the frequency-domain or equivalently, a sum of exponential terms in the time-domain. For modeling long delays, a high number of poles is required. This leads to a large system of differential equations to be solved during transient analysis, requiring excessive CPU time. In addition, the presence of widely varying poles can force the step size to be much smaller during transient analysis, thereby causing further longer simulation times. On the other hand, a significant speed up is achieved using the proposed macromodel, due to its ability to extract the delay and to represent it explicitly. This is because, in circuit simulators, any explicit delay is modeled as an ideal delay element, which does not contribute significantly to the CPU cost of simulation. This leads to lower-order macromodels and faster transient analysis.

Ripple free initial delay portion: Another important advantage of the proposed macromodel is that it overcomes the artificial ringing in the response associated with the conventional vector fitting macromodel. This is illustrated by expanding the early time view of the transient response in Fig. 3, and is given in Fig. 16. It is to be noted that, the primary cause of the ringing in conventional vector-fitting based macromodels is due to approximating the delay using a sum of exponential terms. Consequently, convolving the time-domain impulse response (transfer function), which has a nonzero value over the delay portion, with the input leads to finite output (causing early time ripples). On the other hand, using ideal delay elements, the delay is taken exactly as 0, which leads to zero-output when the input is convolved with the transfer function.

Fig. 16
figure 16

Expanded view of the time-domain response in Fig. 3 (VF: vector fitting)

6 Conclusion

In this paper, a new method for producing passive and compact macromodels for multiconductor transmission lines described by tabulated multiport data has been developed. The algorithm obtains a novel logarithm of the hybrid parameters using a least squares optimization algorithm and subsequently, approximates the logarithm using a low-order passive matrix rational function via the vector fitting algorithm. Next, the DEPACT algorithm is applied to obtain a passive, compact macromodel for SPICE simulation. The proposed algorithm extends the DEPACT algorithm to tabulated data and is substantially more efficient than conventional vector fitting-based macromodels, which require high-order rational approximations for long delay lines.