The present invention relates to scattering parameters (s-parameters) calculation using measurements made by network analysis instruments in general and specifically to s-parameters calculation using measurements made by network analysis instruments that use time domain methods and more specifically to s-parameters calculations using measurements made by the time domain network analyzer (TDNA) described in copending patent application Ser. No. ______, filed Jan. 31, 2011, titled Time Domain Network Analyzer or other appropriate apparatus, the entire contents thereof being incorporated herein by reference.
Network analyzers are instruments that characterize networks. The characterization result is based on conventions and define how the network will perform under various conditions. In signal integrity applications, the common network parameters in use are s-parameters. S-parameters define port to port relationships in a network when the network is driven by a source whose impedance is set to the reference impedance and all other ports are terminated in that same reference impedance. This convention allows scattering parameters to completely define the behavior of a network under any other driving and termination conditions.
A standard instrument for s-parameter measurement is the vector network analyzer (VNA). This instrument stimulates a network with sinusoidal incident waveforms and measures the reflected sinusoidal waveforms at the network ports, and calculates s-parameters from these measurements. This instrument is most commonly used in the field of microwave analysis.
The VNA needs certain user-defined inputs before it can begin measuring s-parameters. For example it needs the frequency points of interest. Having obtained the user-defined inputs, one needs to calibrate the VNA to eliminate systematic errors in the instrument. If the user-defined inputs change, for example if the user decides to choose different frequency points for s-parameters, then the VNA necessarily needs to be calibrated again. This is an unnecessary time consuming exercise.
There are certain desirable properties of s-parameters that one may expect from certain kinds of networks. For example, one may have the knowledge of whether the network to be analyzed is reciprocal. Frequently the s-parameters measured by the VNA are analyzed in conjunction with other networks using some simulation methods and the user may expect the s-parameters to satisfy some constraints based on the knowledge of the network. During the course of simulation if it is discovered that the constraints are violated, then the network necessarily needs to be remeasured or the s-parameters need to be processed by an external algorithm to satisfy the known constraints. The external algorithms may not be optimal.
Another instrument used for s-parameter measurement uses techniques called time domain reflectometry (TDR) and time domain transmission (TDT) (Here we will use the commonly used acronym TDR to represent both techniques, the name of the instrument itself, and time domain analysis in general). TDR stimulates a network with an incident step, or pulse and measures reflected waveforms at the network ports. The device used to generate step or step-like waveform is referred to as pulser and a device used to measure step or a step-like waveform is referred to as sampler.
Traditional, well known TDR instruments require as many pulsers and samplers as the number of ports in the device under test (DUT). Hence the cost of such instruments increases greatly with the increase in the number of ports in the DUT.
Since the s-parameters are described in frequency domain, the time domain measurements made by the TDR instruments should be converted into frequency domain methods. There are techniques to compute frequency response of a step-like waveform. For example the algorithm described by Shaarawi and Riad in “Computing the Complete FFT of a Step-like Waveform” IEEE Transactions on Instrumentation and Measurement, Vol IM-35, No. 1, March 1986 the entire contents thereof being incorporated herein by reference, presents such a technique. Such methods result in incorrect results if the measured step-like waveforms differ in delay or amplitude.
What is needed is a method to calculate s-parameters from measurements made with fewer pulsers and samplers. What is also needed is a method that provides measured s-parameters that are robust to changes in step characteristics like the delay or amplitude. What is also needed is a method that that does not require repeated calibration if some of the often used user-defined parameters are changed. What is also needed is a method that can satisfy one or more user-defined constraints at the time of measurements.
It is an object of this invention to provide methods to calculate s-parameters from step measurements, that remedies the drawbacks listed above.
It is a further object of this invention to provide methods and apparatuses to calculate s-parameters from step measurements obtained using a TDNA or other appropriate apparatus, including the apparatus described in the copending patent application Ser. No. ______, filed Jan. 31, 2011, titled Time Domain Network Analyzer.
Still other objects and advantages of the invention will in part be obvious and will in part be apparent from the specification and drawings.
As described in the copending patent application Ser. No. ______, filed Jan. 31, 2011, titled Time Domain Network Analyzer, the switches in the fixtures are set automatically and sequentially according to the sequence table, and step measurements are saved. At the end of the sequence one has various step measurements that correspond to the case when the driven port and the un-driven port are connected to the calibration standards used and various step measurements that correspond to the case when the driven port and the un-driven port are connected to different DUT ports.
The steps measured when the system ports are connected to the calibration standards may be referred to as CAL measurement steps [6] and the steps measured when the system ports are connected to the DUT ports may be referred to as the DUT measurement steps [7]. Each of the CAL measurement step [6] and DUT measurement step [7], will either be a step (for the case when measured port is not the driven port), or a step followed by another step change (for the case when measured port is the driven port). If the port is a driven port, one would like to separate the incident step from the reflected step. Once the incident step is determined it may be removed from the measured waveform to obtain the reflected step. Since one may be interested in calculating the frequency response, one may calculate the first difference of the measured waveform. For an incident step, this would correspond to the impulse that was input to the system. For the waveform measured at the un-driven port, the first difference of the signal would correspond to the through impulse response. Similarly when the incident impulse is extracted from the first difference of the waveform that was measured at the driven port, the waveform would correspond to the reflected impulse response. Once the time domain impulse response is determined, one may take the chirp z-transform (CZT) to obtain the raw frequency responses—incident response, reflected response and the through frequency response. Raw measured CAL s-parameters [9] are obtained from the calibration step measurements by dividing the reflected and through response by the incident response and raw measured DUT s-parameters [10] are obtained from the DUT measurements by dividing the reflected and through response by the incident response. The CZT is well known to those skilled in the art of signal processing.
The fixture s-parameters [11] may be measured ahead of time and are integral to the accuracy of the instrument. They are generally measured using a high-accuracy vector network analyzer at the factory. Preferably, they are measured at very fine frequency steps up to and including the highest frequency of the instrument. As an example, one could measure 8001 frequency points from 0 to 40 GHz for a 40 GHz measurement. At the time of use, the fixture S-parameters must be re-sampled onto the same frequency scale that the instrument user has requested. In one type of operation, the user may be purposely restricted from using points that require interpolation of the fixture S-parameters. This may be done by restricting the user to combinations of the prime factors of the the number of frequency points utilized to measure the fixtures at the factory. For example, if the user had selected 20 GHz as the end frequency in the aforementioned example, the unit would restrict him to numbers like 4000, 2000, 1000, 500, 100, 200, etc.—all numbers that divide into the 8000 frequency points using an integer divisor. This allows the fixture S-parameters to be resampled through simple decimation. In other words, if 2001 points were requested (at 20 GHz), one may simply pick every other frequency sample in the fixture S-parameters provided. Otherwise, the user is able to pick any number of points, provided it is within the frequency range of calibration. This may be accomplished by calculating the inverse discrete Fourier transform (IDFT) of the fixture S-parameters, preferably using only the points up to the end frequency provided and then calculating the Chirp Z-transform (CZT) of the time sequence utilizing an arc on the unit circle representing the frequency points that the user has requested. The IDFT is well known to those skilled in the art of signal processing. These fixture S-parameters, once re-sampled, may preferably be cached on the disk or other storage medium so that recalculation of the re-sampled data, which can be time consuming, does not need to be repeated.
The raw measured calibration s-parameters [9] calculated from the calibration steps [6] in conjunction with the fixture S-parameters [11] representing the calibration standards, may be used to generate what is referred to as the error terms [12]. These error terms are the s-parameter representation of the network model used to model the systematic errors. For example, the most commonly used twelve-term error model, as described in Agilent AN 1287-3 Applying Error Correction to Network Analyzer Measurements—Application Note the entire contents thereof being incorporated herein by reference, may be used. The raw measured DUT s-parameters [10] calculated from the DUT measurement steps [7], in conjunction with the error terms [12] and the fixture s-parameters [11] representing the DUT connections may be used to calculate the DUT s-parameters using the algorithm as will be described below. The block shown as Solver [13] (see
The output of the solver [13] comprises a raw DUT s-parameter result [14], which depending on the input parameters may be further processed to enforce certain characteristics. For example, if the DUT is connected using cables and adapters, and if the s-parameters of these cables and adapters are known [15], then they can be de-embedded from the calculated result to obtain the DUT s-parameters [16].
Thus as described in the copending patent application Ser. No. ______, filed Jan. 31, 2011, titled Time Domain Network Analyzer, a network analyzer for the present invention may preferably comprise:
The invention accordingly comprises the several steps and the relation of one or more of such steps with respect to each of the others, and the apparatus embodying features of construction, combinations of elements and arrangement of parts that are adapted to affect such steps, all is exemplified in the following detailed disclosure, and the scope of the invention will be indicated in the claims.
For a more complete understanding of the invention, reference is made to the following description and accompanying drawings, in which:
A detailed description of the invention will now be provided, making reference to the following drawings in which like reference numbers designate similar structure or steps.
Through a switch control system, the fixture switches may preferably be set to a plurality of desired positions automatically and sequentially, thus providing different paths between the system ports and the DUT ports. Therefore, in accordance with such a system in accordance with the present invention, the steps of:
A number of independent measurement conditions depend on the number of pulsers, samplers, and number of ports in the DUT, determined beforehand and may be stored in the form of sequence table. Such a table is described in the copending patent application Ser. No. ______, filed Jan. 31, 2011, titled Time Domain Network Analyzer. For example for a three port DUT connected to a TDNA with two pulsers and two samplers may have six DUT measurement conditions,
The fixtures shown for the measurement conditions preferably have two separate characteristics, i.e. there are separate fixtures for terminations and separate for the DUT connections. This does not have to be the case, as long as the switches are switched as described above, and the six port s-parameters are measured beforehand (as described in the copending patent application Ser. No. ______, filed Jan. 31, 2011, titled Time Domain Network Analyzer).
Once the steps corresponding to calibration and DUT measurements under different conditions are measured, each of the CAL or DUT measurement step may be first denoised using the algorithm described in the patent application Ser. No. 12/890,832, filed Sep. 27, 2010, titled Wavelet denoising for time-domain network analysis), and will be referred to as the denoised CAL measurement step or denoised DUT measurement step respectively.
Each of the denoised CAL or denoised DUT measurement step, will preferably either be a step (for the case when measured port is not the driven port), or a step followed by another step change (for the case when measured port is the driven port). If the port is a driven port, the incident step is separated from the reflected step. The incident step may be found by first finding the edge location ¼-th way between the minimum and the maximum value from the left. Once this edge location is found (which is coarse), it may be refined by finding the edge halfway between the coarse edge location minus an input parameter called the side length to the coarse edge location plus the side-length. This calculation of the edge location should handle all cases of edge finding in an input waveform as long as any noise is not greater than ¼-th the step size before the occurrence of the step. Once this edge location is found, the incident waveform may be found from the refined edge time minus the side-length to the refined edge location plus an input parameter called the incident length. The incident length and the side length may be determined from certain characteristics like rise time of the pulser. Once the incident step is determined it may be removed from the measured waveform to obtain the reflected step. Since one may be interested in calculating the frequency response, the first difference of the measured waveform may be preferably be formed. For an incident step, this would correspond to the impulse that was input to the system. The first difference of a signal s(n) is denoted as d(n) and may be defined as
For the waveform measured at the un-driven port, the first difference of the signal would correspond to the through impulse response. Similarly when the incident impulse is extracted from the first difference of the waveform that was measured at the driven port, the waveform would correspond to the reflected impulse response. Once the time domain impulse response is determined, one may take the CZT to obtain the raw frequency responses—incident response, reflected response and the through frequency response. Raw measured s-parameters may be obtained by dividing the reflected and through response by the incident response. The CZT is well known to those skilled in the art of signal processing. The above mentioned approach to calculate the raw measured S-parameters is robust to changes in step characteristics, like delay or amplitude, since any change in the incident step would affect the reflected and transmitted waveform in a similar fashion, thereby nullifying its effects.
Once the raw measured S-parameters are obtained, they may be used in conjunction with the fixture S-parameters to calculate the DUT s-parameters using the algorithm described next.
In accordance with various embodiments of the invention, a description of the case where pulsers and samplers [17] are considered ideal (
Since all the time domain measurements have been converted into frequency domain, the algorithm proceeds to calculate the DUT s-parameters for each frequency of interest. The procedure is the same for each frequency. So the notations described below are understood to be for each frequency unless otherwise specified. In order to determine the s-parameters of the DUT from M measurements, the method and system in accordance with the invention first defines an expression that relates the s-parameters of the fixture and the DUT, to that of the system s-parameters. Let S be the DUT s-parameter matrix at a particular frequency of interest and Fm be the fixture [18] s-parameter matrix at the same frequency and for measurement condition m. The s-parameter matrix Fm is measured beforehand. Then S is of size d×d (where d is the number of ports in the DUT [5]) and Fm is of size (d+I)×(d+I) (where I is the number of samplers). Partition the matrix F, as shown below:
Here the size of each sub-matrix is written below, e.g. Fm24 is of size I×I.
Let BDUTm represent a vector of length d, where each element bi is a complex number corresponding to amplitude and phase of the reflected wave at port i of the DUT, under measurement condition m. And ADUTm is a vector of length d, where each element ai is a complex number corresponding to amplitude and phase of the incident wave at port i of the DUT, under measurement condition m. Similarly, BSYSm is a vector of length I, comprising of reflected waves at the I system ports and ASYSm is a vector of length I, comprising of incident waves at the I system ports.
A reflected wave at each port of a device can be written in terms of the waves incident at the device (ai's) and the device s-parameters. The system of equations for the complete circuit is given as:
Here em is a vector of size I×1 with all zeros except a one at the location corresponding to the system port that is driven. Since the steps have been converted into frequency response, an element k of the BSYSm will be the frequency response for the port k under measurement condition m, and hence the input is considered ideal. Performing Gauss elimination gives the L and the U factors of A. Equation(2) can be then written as
Applying L−1 on both the sides reduces the above equation may be simplified to:
which can be solved using back substitution to obtain the solution.
ASYSm=em, (5)
A
DUTm=(I+Fm31·S)−1·(−Fm34·ASYSm), (6)
B
SYSm
=F
m21
·S·A
DUTm
−F
m24
·A
SYSm, (7)
B
DUTm
=S·A
DUTm. (8)
So, in accordance with embodiments of the invention the inventors have determined that it may be desirable to observe system s-parameters—BSYSm for M different measurement conditions and solve for DUT s-parameters S by using the system of equations defined above (5-8).
Linear solver for DUT s-parameters: The inventors of the present invention have determined that in general, the system of equations (5-8) cannot be solved in a linear fashion to obtain the DUT s-parameters S. But, as has further been determined by the inventors of the present invention, there exists a linear solution to obtain DUT s-parameters for the following two cases:
Putting equation (8) and (5) into equation (7),
BSYSm=−Fm21·BDUTm−Fm21·ASYSm, (9)
Here matrix Fm21 is a square or skinny matrix, i.e. a matrix with the number of rows greater than the number of columns, of a size corresponding to the number of samplers by the number of DUT ports. The above equation can be solved for BDUTm:
B
DUTm
=−F
m21
−1·(BSYSm+F24·ASYS). (10)
If Fm21 is skinny, then the above inverse can be replaced by a pseudo-inverse to obtain a least squares solution for BDUTm. Equation (6) can now be rearranged to get:
For each measurement condition, in accordance with embodiments of the invention, vectors BDUTm and ADUTm may be calculated from equations (10) and (11), and the column vectors may be concatenated to create matrices BDUT and ADUT:
BDUT=[BDUT1 BDUT2 . . . BDUTM] (12)
ADUT=[ADUT1 ADUT2 . . . ADUTM] (13)
The DUT s-parameters can now be calculated from the expression
S·ADUT−BDUT, (14)
S=B
DUT
·A
DUT
−1. (15)
For the case when the number of measurement conditions is greater than number of DUT ports, ADUT will be a fat matrix, i.e. a matrix with number of rows less than number of columns, and the inverse in equation (15) can be replaced by a pseudo-inverse to obtain a least squares solution for the DUT s-parameters.
Linear solver for reciprocal DUT 8-parameters: A reciprocal DUT satisfies the following relationship:
S−ST.
Here the T denotes the transpose of the matrix. Equation (14) has d2 unknowns corresponding to the number of s-parameters and d×M equations corresponding to the number of entries in the BDUT matrix. Each of these d×M equations can be written by expanding the matrix equation (14). For example, the equation corresponding to the (i, j) entry in the B matrix is given as
For a reciprocal DUT the number of unknowns reduce to
If one denotes all the elements on the diagonal of S and all the elements in the lower triangular portion of S, i.e. Si,j for i≧j, then one can substitute each Sik,i<k in equation (16) by Ski. Equation (16) can now be re-written as:
G·Ŝ
vec
=B
vec, (17)
where Bvec is “vectorized” BDUTT in equation (14), Ŝvec is the “vectorized” diagonal plus lower-triangular portion of S, and G is a coefficient matrix generated using entries of ADUT so that the equation (16) is satisfied for each element of BDUT. Here, “vectorized” BDUTT means taking each column of the matrix BDUTT, and stacking them on top of each other. So if BDUT is of size d×M, then
where BDUT*kT is the k-th column of BDUTT. Svec is formed by using only the diagonal and lower-triangular portion of S.
As an example, the matrix G for a two port, reciprocity enforced DUT, and two measurement conditions, is given by:
where ai,j is the (i,j) entry of the matrix ADUT, bi,j is the (i,j) entry of the matrix BDUT, and Si,j is the (i,j) entry of the matrix S. The above approach may be generalized for d-port DUT and M measurement conditions.
Nonlinear solver for DUT s-parameters: For the system where linear solution is not possible, the inventors of the present invention have determined to use a LevenbergMarquardt algorithm, such as that described in “Nadim Khalil, VLSI Characterization with Technology Computer-Aided Design-PhD Thesis, Technische Universitat Wien, 1995” to solve the following non-linear optimization problem:
where fm
f
m(S)=−Fm21·S·(I+Fm31·S)−1·(−Fm34·ASYSm)−Fm24·ASYSm, (19)
which for the given system input ASYSm and a guess for DUT s-parameters generates the system output BSYSm. Through the algorithm, it may be desired to determine an S that minimizes the distance between the analytical expression and the actual measurement. Levenberg-Marquardt optimization algorithm, for each iteration, requires evaluation of two functions:
Partial Derivatives: One method of calculating the partial derivatives would be to use the finite difference approximation, i.e.
for a small value of ε. Here ei is a vector of size DUT ports, with all zeros and a one at the i-th location, and ej is a vector of size DUT ports, with all zeros and a one at the j-th location. But this numerical calculation is costly as it involves extra calculation of matrix inverse. To save on this calculation cost, an analytical expression may be derived for the partial derivatives. For each measurement condition, the expression for partial derivative will be the same. In order to avoid cumbersome notations, the suffix m is dropped from the derivation. Hence equation (19) may be written as:
f(S)=−F21·S·(I+F31·S)−1·(−F34·ASYS)−F24·ASYS.
The analytical expression of partial derivative with respect to an element Sij may be computed by finding the limits shown below:
Equation (19) is used to compute f(S+ε·ei·ejT).
f(S+ε·ei·ejT)=−F21·(S+ε·ei·ejT)·(I+F31·(S+ε·ei·ejT))−1·(−F34·ASYS)−F24·ASYS (21)
Using Shermann-Morisson formula, the (I+F31·(S+ε·eiejT))−1 is given by
Substituting the above equation in equation (21),
Putting the suffix m back, the partial derivative for each measurement condition is defined as:
Comparing equations (19) and (22), one can observe that for each iteration of the optimization algorithm, only one evaluation of the inverse is required.
Symbolic Sub-Circuits: Instead of deriving the equations for fm(S) and its partial derivative, one can use system description described in U.S. patent application Ser. No. 12/418,645, filed Apr. 6, 2009 to Pupalaikis et al., titled Method for De-embedding Device Measurements, the entire contents thereof being incorporated herein by reference, to solve for the DUT s-parameters using the non-linear algorithm. A system description is essentially a method to describe the circuit. The inventors may preferably modify a format of the traditional system description on two counts:
This modified system description is referred to as symbolic sub-circuit as it is a symbolic representation of each circuit in the measurement condition. Now one does not need to know the details about the equations, which may change if the circuit changes. Each time one needs to create the circuit, supply the s-parameters of the devices that constitute the system and obtain the system s-parameters. Although the circuit shown in
Approximate Solution: As mentioned above the two conditions for a linear solution to exist are:
In order to calculate the approximate solution, first the symbolic sub-circuits are created for each measurement condition. This array of symbolic sub-circuits are then grouped together so that the symbolic sub-circuits for which the DUT ports that are connected to the system ports are the same. For example if we there are three DUT ports and two samplers and one pulser, then the grouping is shown in the
As can be seen in the
Once the DUT s-parameters are calculated, it can be verified if the DUT corresponds to a causal and passive device. If desired, one can enforce passivity or causality after the DUT s-parameters have been calculated. The following sections below will describe a method of enforcing passivity and causality in accordance with the present invention.
Enforcing Reciprocity while using non-linear solver: The non-linear algorithm remains the same except that the number of unknowns for a d-port reciprocal DUT are now
instead of d2, and the partial derivatives in equation (22) are modified to
for the derivative with respect to the diagonal elements in S and
for the case when i<j. Since Sij=Sji, the upper triangular part of S is not a part of the unknown and the case j>i is not considered.
Passivity Enforcement: A device is passive if the energy in reflected waves is always less than or equal to the energy in the incident waves. This in turn implies that a passive device with s-parameter matrix S will satisfy:
∥S∥2≦1,
where ∥·∥2 is the induced two norm of a matrix. To enforce passivity, for each frequency the following steps are preferably performed:
Causality Enforcement: Causality enforcement on a set of s-parameters is performed using an inverse DFT followed by impulse response length limits, followed by a DFT. Some special care must be taken to avoid pre-shoot and pre-ringing due to samples not landing precisely on a sample point. To understand this, consider a perfect delta function (i.e. impulse response is 1 followed by all zeros), but whose impulse is shifted by a fraction of a sample—the impulse response of such a function will exhibit a
type of impulse response with potentially a lot of pre and post ringing in the response. It would be grossly incorrect to chop off the pre-ring to make a causality enforcement. Therefore, to handle this, a best fractional sample is determined to first advance the frequency response prior to the inverse DFT to make the pre-shoot (due only to the aforementioned effect) as small as possible.
The procedure is explained in the below given steps:
Given the fractional sample value coming from either of the two methods, the frequency response is adjusted for the fractional sample
where N is the number of frequency points, n=0, . . . N-1 and Hn is the frequency response evaluated at
The IDFT of the above frequency response is taken to give the impulse response, which is then truncated to give a causal impulse response. DFT of this truncated impulse response is taken, Htrunc=DFT(truncated impulse response) and again adjusted back by the (−fractional sample) to bring it back to original delay.
Calibration and Error Terms: As noted above, the inventors of the present invention have determined that removing the ideal conditions proposed above, and thus implementing a calibration step, does not result in a change to the algorithm described above. Rather, such calibration results in a change to the fixture s-parameter matrix. After calibration in accordance with the system and method of the invention, the system may be modified as shown in
Therefore, in accordance with the invention, a system and method are provided that allow for the calibration of a system used to determine s-parameters of a DUT in an automatic manner. Such calibration may also be implemented employing a single pulser. Once performed, such calibration presents a switching device in accordance with the invention as an ideal device to the DUT, and is thus able to determine s-parameters thereof employing the mathematical calculations as described above. Through the user of such method and system in accordance with the present invention, it is possible to perform automatic calibration of an s-parameter measurement system, employing a single pulser, and then perform automatic s-parameter measurements of a DUT employing such calibrated system.
It will thus be seen that the objects set forth above, among those made apparent from the preceding description, are efficiently attained and, since certain changes may be made in the above construction(s) without departing from the spirit and scope of the invention, it is intended that all matter contained in the above description or shown in the accompanying drawing(s) shall be interpreted as illustrative and not in a limiting sense.
It is also to be understood that this description is intended to cover all of the generic and specific features of the invention herein described and all statements of the scope of the invention which, as a matter of language, might be said to fall there between.
This application claims the benefit of U.S. Provisional Patent Application 61/300,230, filed Feb. 1, 2010 titled “Time Domain Reflectometry Step to S-Parameter Conversion” to Pupalaikis et al.; and U.S. Provisional Patent Application 61/300,065, filed Feb. 1, 2010 titled “Time-Domain Network Analyzer” to Pupalaikis et al., the contents of each of these applications being incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61300230 | Feb 2010 | US | |
61300065 | Feb 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13017394 | Jan 2011 | US |
Child | 14107474 | US |