Electronic – S-parameter bi-section for deembedding

RFs-parameters

I've recently come to suspect the effects of connectors on my measurements. I'm looking at several different ways of de-embedding their effects from measurements that I take with a network analyzer (20-30 GHz).

Here's the thru board I'm trying to deembed
So Beautiful!!!!

I have 3 questions

1)Is S-parameter Bi-section a reasonable way to see the S-parameters for the DUT using measured data?

2) Given a T-matrix, Y-matrix, and Z-matrix method for solving for the symmetrical matrices, which produces the best result?

3) Given solving for a T-matrix, which of the 4 possible solutions should be used?

First Here's some background reading

Here are my doubts1 as well as here. These links discuss that with real data, S-parameter bisection the process begins to break down with excessive noise and other parasitics. Additionally, if insertion and return loss are too high the results are also inaccurate. Finally with the equations themselves there are several assumptions about symmetry that could ruin the results if symmetry is not kept.

I feel that the assumption of symmetry should work well with just 2 connectors and a trace, and insertion loss and return loss should be reasonable. I'm not sure if real world measurement noise would be an issue

Second, when I look at link 1, the method for bisection differs from 2 and 3. The methods introduced are using T-matrices, Y-matrices, and Z-matrices. Which of these produce the best result?

Finally after assuming that T-matrices (check out link 1) would work the best, I started solving the equations

[[T11,T12], [T21,T22]] * [[T22,T21],[T12,T11]] =  [[T11f,T12f],[T21f,T22f]]

after expanding this ( and assuming T12 = T21) out I get

T11f = T11*T22 + T12^2 
T12f = 2*(T11*T12)
T21f = 2*(T22*T12)
T22f = T11*T22 + T12^2

Solving for T12 (second equation) I get

T12  = T12f/(2*T11)

Solving for T22 (third equation)

T22 = T21f/(2*T12)

Finally plugging those into the first equation and solving for S11, I get

T11 = (T11f-T12^2) / T22
T11 = (T11f - T12f^2/4T11^2)/(T21f*T11/T12f)

This reduces down to

T11^4 - (T12f*T11f/T21f)*T11^2 + (T12^3/(4*T21f)) = 0

when I solve this equation I get 4 possible answers. Which should I use?

EDIT *****

I found this link that suggests an easy way to do things is to switch to abcd matrices, then to take the square root. here's some sample code I made using python

import numpy as np
import nport
import scipy
from nport import touchstone

// I imported some files that were saved in a matlab format 
// the names are freq and new_data
new_n = nport.NPort(np.array(freq),np.array(new_data),nport.S,50)
abcd2 = new_n.convert('ABCD')

print(abcd2)
new_abcd = []
for i,value in enumerate(abcd2):
    if not i:
        print("START HERE!!!")
        print(value)
    holder = scipy.linalg.sqrtm(value)
    if not i:
        print(holder)
        print(holder.dot(holder))

    new_abcd.append(holder)


newest_n = nport.NPort(np.array(freq),np.array(new_abcd),nport.ABCD)

half = newest_n.convert('S', 50)

Best Answer

To answer (1), I would recommend de-embedding differently, namely "gating". Gating is done in the time domain. Most VNAs will gave a time gating option. The same holds true about noise and large impedance mismatches, but you should be ok here. For a really good paper on gating, read Joel Dunsmore http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=4804303&url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F4801867%2F4804274%2F04804303.pdf%3Farnumber%3D4804303

EDIT: I'll add a link to a short paper I wrote a few years ago that basically sums up the Dunsmore paper with examples time-domain gating

Related Topic