1. Technical Field
Embodiments of the present disclosure relates to circuit simulating methods, and more particularly, to a computing device and a method for enforcing passivity of scattering parameter (S-parameter) equivalent circuit.
2. Description of Related Art
Scattering parameters (S-parameters) are useful for analyzing behaviour of circuits without regard to detailed components of the circuits. The S-parameters may be measured at ports of a circuit at different signal frequencies. In a high frequency and microwave circuit design, the S-parameters of the circuit may be used to create a rational function, and the rational function may be used to generate an equivalent circuit model, which may be applied to time-domain analysis for the circuit design. For judging whether the circuit design satisfies stability requirements, the time-domain analysis result should be convergent. To ensure constringency, the rational function and the equivalent circuit model of the S-parameters are required to be passive.
In general, the word “module,” as used hereinafter, refers to logic embodied in hardware or firmware, or to a collection of software instructions, written in a programming language, such as, for example, Java, C, or Assembly. One or more software instructions in the modules may be embedded in firmware. It will be appreciated that modules may comprised connected logic units, such as gates and flip-flops, and may comprise programmable units, such as programmable gate arrays or processors. The modules described herein may be implemented as either software and/or hardware modules and may be stored in any type of computer-readable medium or other computer storage device.
In this embodiment, the computing device 30 further includes a passivity enforcing unit 31 and at least one processor 33. The passivity enforcing unit 31 includes a number of function modules (depicted in
In block S10, the measurement device 20 measures S-parameters at ports of the circuit 10, to obtain the S-parameter file 32, and stores the S-parameter file 32 in the storage device 34. The parameter reading module 311 reads the S-parameters from the S-parameter file 32.
In block S11, the vector fitting module 312 creates a non-common-pole rational function of the S-parameters by applying a vector fitting algorithm to the S-parameters. In one embodiment, the non-common-pole rational function of the S-parameters may be the following function labeled (1):
In the function (1), M represents control precision of the function, N represents the number of the ports of the circuit 10, rm represents residue values, pm represents pole values, s=ω=2πƒ, ƒ represents a frequency of a test signal, and dm represents a constant. It is understood that control precision means how many pairs of pole-residue values are utilized in the function (1).
In block S12, the passivity analysis module 313 determines if the non-common-pole rational function satisfies a determined passivity requirement. A detailed description of block S12 is depicted in
In block S13, the passivity enforcing module 314 enforces passivity of the non-common-pole rational function. In one embodiment, passivity of the non-common-pole rational function is enforced by converting the function (1) to the following function labeled (2):
In the function (2), E is a matrix may be shown using the following function labeled (3):
Using function (2), {tilde over (S)}, which represents modified S-parameters, may be found using the following function labeled (4):
In the function (4), Δλ is solved may be using the following functions labeled (5a) and (5b) according to quadratic programming (QP):
Function (5a) is a least square equation. AsysTAsys in function (5a) may be showed using the following function labeled (6):
In the function (6), sk are different signal frequencies listed in the S-parameter file 32.
Abase (sk) in the function (6) and Δx in the function (5a) may be showed using the following functions labeled (7a) and (7b):
Function (5b) is a constrain equation. Bsys and c in function (5b) may be showed using the following function labeled (8):
In the function (8), Δσks
The bk (s) in function (8) may be showed using the following function labeled (9):
bk(s)=[ukBbase(s)(INexM{circle around (x)}νk)] (9).
In the function (9), IN
{circle around (x)} is Kronecker tensor product, u and v may be showed using the following function labeled (10):
Bbase(s) in function (9) may be showed using the following function labeled (11):
Bbase(s)=[Bbase1(s)Bbase2(s) . . . BbaseM(s)], Bbasem(s)=BCBpolem(s) (11).
In the function (11), Bc and Bpolem(s) may be showed using the following function labeled (12):
In the function (12), IN is a N×N identity matrix.
In block S14, the equivalent circuit generation module 315 generates an equivalent circuit model of the circuit 10 according to the non-common-pole rational function adjusted in block S13 which satisfies the determined passivity requirement.
In block S120, the passivity analysis module 313 converts the non-common-pole rational function to a state-space matrix. As mentioned above, the non-common-pole rational function is the following function (1):
In one embodiment, the matrix conversion module 313 combines the function (1) and the following functions labeled (13a) and (13b) to obtain a combined matrix, then converts the combined matrix into the state-space matrix using the following function labeled (14):
where pup,q and rup,q are real numbers.
where j=√{square root over (−1)}, U+2V=M, pup,q>0, and Re(pvp,q)>0.
jωX(jω)=AX(jω)+BU(jω)
Y(jω)=CX(jω)+DU(jω), (14).
In the function (14), A, B, C, and D may be showed using the following function (15):
In the function (15), Ar, Br and Cr are state-space matrixes of the pole values Ŝrp,q(s) in (13a), and may be showed using the following function labeled (16):
In the function (16), Ar is a (N·N·U)×(N·N·U) sparse matrix, Br is a (N·U)×N sparse matrix, Cr is a N×(N·U) sparse matrix.
Ac, Bc, and Cc are state-space matrixes of the residue values Ŝcp,q(s) in (13b), and may be showed using the following function (17):
In the function (17), Ψ(p, q, v)=(2V·N)(p−1)+2V(q−1)+2v, Ac is a sparse matrix, Br is a (N·2V)×N sparse matrix, and Cr is a N×(N·2V) sparse matrix.
The matrix conversion module 313 combines the functions (15), (16), and (17) to obtain expressions of the coefficients A, B, C, and D in the state-space matrix of the function (14).
In block S121, the passivity analysis module 313 substitutes the state-space matrix of the function (14) into a Hamiltonian matrix, where the Hamiltonian matrix is the following function labeled (18):
where R=DTD−I Q=DDT−I, I is an identity matrix.
In block S309, the passivity analysis module 313 analyzes the eigenvalues of the Hamiltonian matrix for pure imaginaries, to determine if the non-common-pole rational function of the S-parameters satisfies a determined passivity requirement. If the eigenvalues of the Hamiltonian matrix have pure imaginaries, the passivity analysis module 313 determines that the non-common-pole rational function of the S-parameters satisfies the determined passivity requirement. Otherwise, if the eigenvalues of the Hamiltonian matrix have no pure imaginaries, the passivity analysis module 313 determines that the non-common-pole rational function of the S-parameters does not satisfy the determined passivity requirement.
Although certain inventive embodiments of the present disclosure have been specifically described, the present disclosure is not to be construed as being limited thereto. Various changes or modifications may be made to the present disclosure without departing from the scope and spirit of the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
99142000 A | Dec 2010 | TW | national |
Number | Name | Date | Kind |
---|---|---|---|
7996169 | Lin et al. | Aug 2011 | B2 |
8155934 | Gustavsen et al. | Apr 2012 | B2 |
8494820 | Tseng et al. | Jul 2013 | B2 |
20030088394 | Min et al. | May 2003 | A1 |
20060010406 | Lee et al. | Jan 2006 | A1 |
20070005324 | Gong et al. | Jan 2007 | A1 |
20090171604 | Lin et al. | Jul 2009 | A1 |
Number | Date | Country | |
---|---|---|---|
20120143584 A1 | Jun 2012 | US |