Menu

#73 Need lossy stripline diffpair transmission line

0.0.18
open
nobody
5
2021-09-08
2019-07-11
Buenos
No

The following type of transmission line I could not find or create:
lossy stripline diffpair.
For my digital board designs we always use striplines, differential pairs (coupled), and they are always very lossy. The loss we could enter into any simulator either as:
- 0.7dB/inch at 13GHz (loss, length, freq)
- Loss tangent at frequency (DF=0.0035@10GHz, DK=3.5@10GHz) and copper roughness.
QUCS 0.19 has elements with almost all these features, but:
- The "substrate" element does not support stripline (with 3 metal and 2 non-identical dielectric layers).
- The coupled microstrip line has loss, but I need a stripline element like that.
- The "coupled transmission line" does not support frequency dependent loss. Otherwise would be suitable for my stripline diffpairs.
You see all the features are already implemented, but not in this particular combination.
The easiest would be to add freq dependent loss parameter to the coupled tline. The existing "attenuation factor" parameter does help.

Discussion

  • Buenos

    Buenos - 2019-07-11

    Actually, you don't need to make the loss tangent (DF, dissipation factor) itself frequency dependent, even Keysight ADS does not do it, I think. If DF is a constant, even then the insertion loss profile (S21) of the transmission line will still be declining over frequency, which is what a real Tline looks like. That is what I need, but on differential (coupled) and stripline (not microstrip).
    http://d2xunoxnk3vwmv.cloudfront.net/uploads/loss-tangent-loss.jpg

     
  • Buenos

    Buenos - 2019-07-11

    I could almost use the "coupled transmission lines", but I have to feed a function into its Ao and Ae parameters, to make the loss frequency dependent. But then it does not simulate anything, the S-parameter simulation results are "nan / nan" in list view, and displays negative infinity line on graph. If I type in "20 dB" to Ao then it works, but I need it to vary over frequency, so it has to work with a function. I tried with the following equations:
    Ao= LOSSFACT for the tline parameter
    Equations:
    DBLOSSPERINCH = 0.7
    DBLOSSPERINCH_FREQ=10000000000
    LOSSFACT=DBLOSSPERINCH*frequency/DBLOSSPERINCH_FREQ
    Either the Ao paramteter field does not take a function, or it requires a "dB" unit definition, or I'm doing something wrong.
    If this could worked, then the above stripline and other new features would not really be needed.

     
  • Buenos

    Buenos - 2021-07-08

    Update:
    I was able to model lossy TLINES, by connecting a diff tline with zero loss, in series with an equation controlled RF device that creates the freq dependent loss.
    This has 2 issues:
    1. This combo cannot be placed into a QUCS subcircuit, because QUCS refuses to pass the frequency parameter into the subcircuit and throws an error.
    2. Leaving the combo on the top level schematic makes it hard to manage when trying to add more tlines to or to change the structure to match an actual design.
    Here is a template I use this in:
    http://buenos.extra.hu/download/Channelsim_template_prj.zip
    Options:
    a) add a lossy diff tline model component
    b) fix one of the bugs: Either the subcircuit parameter error (subcircuit cannot take "frequency" in its equations), or the Tline parameter error (diff/coupled tiline cannot take an equation for the A0 loss parameter).

     
    • Felix

      Felix - 2021-07-09

      On Thu, Jul 08, 2021 at 08:22:40PM -0000, Buenos wrote:

      b) fix one of the bugs: Either the subcircuit parameter error
      (subcircuit cannot take "frequency" in its equations), or the Tline
      parameter error (diff/coupled tiline cannot take an equation for the
      A0 loss parameter).

      Thanks for pointing out issues with parameters.

      I have not looked into this in detail, but it seems that "frequency" is
      not a model parameter. It seems more like a simulation global variable
      controlled by the analysis, akin to "time" in a transient run.

      There are two aspects of this, one is Qucs (the GUI) and Qucsator (the
      simulator I believe you are using). Is it correct that Qucsator does not
      support what you need? Can you suggest an approach?

      The other issue, "take an equation for the A0 loss parameter" looks more
      straightforward. Are there places where parameters are resolved from
      equations in the way you would expect? Can you identify if it is a Qucs
      problem, e.g. in netlisting, or maybe a bug in Qucsator?

       
      • Buenos

        Buenos - 2021-07-09

        If it is a global parameter, then teh equation inside a subcircuit should be able to use "F". But it cannot, it complains with error that F is unrecognized. So the same RF part can take "F" in its equation when the part is on the top level sch, but when i place it inside a subckt it throws a simulation error.
        I tried 2 ways: a) use it as "F" inside the subckt. b) use "FREQUENCY" variable inside the subckt and make it a parameter that is assigned F on the top level. Both ways it failed to simulate.

        Last night I spent few hours in developing a third way: use the equ defined RF component to implement both the freq dependent loss and the TLINE delay, on top level only. I was able to make it functional, but the phase delay is calculated with like 30% error, which is a lot.
        I typed in the same formula for P21,P12,P34,P43. The rest are 0.
        10^(((-1)LENGTH1DBLOSSPERINCH1F/DBLOSSPERINCH_FREQ)/20) * e^((-1)((10^9)LENGTH1 / (11.8 / sqrt(DK1)))j6.28318530718F)

        So I tried 3-4 different workarounds for implementing a lossy tline, but run into different bugs each case.

        "The other issue, "take an equation for the A0 loss parameter" looks more
        straightforward. Are there places where parameters are resolved from
        equations in the way you would expect? Can you identify if it is a Qucs
        problem, e.g. in netlisting, or maybe a bug in Qucsator?"
        Yes, the equ based RF component is able to take an equation including "F" and run with it, but the A0 parameter of the TLINE cannot. It can take equations as long as "F" is not in the equation.

        I think I have identified it as several different bugs in QUCS that are hindering the lossy tline implementation. Any one of the 4 proposals below would solve the issue.
        Possible solutions:
        a) fix the bug with the coupled Tline A0 parameter not accepting "F" in formulas.
        b) Allow subcircuits to see "F" global parameter inside the subckt equations.
        c) add a new part to the transmission lines palette, a lossy coupled Tline with frequency dependent loss, dB/inch at certain frequency, for example 0.7dB/in at 6GHz. Then the actual loss = 10^(((-1)LENGTHDBLOSSPERINCH*F/DBLOSSPERINCH_FREQ)/20)
        e) Add a new component on the Tlines palette: Coupled Strip-line, similarly to the coupled microstrip line. This also requires the "Substrate" component to support striplines, or have a substrate for microstrip (the original one) and one for stripline. Microstrip has 2 metal layers and one h parameter, stripline has 3 metals and 2 h parameters.

        Please take the example file I uploaded that demonstrates some of the errors.

        The phase delay accuracy I complained about, actually i can make that one go away.

         

        Last edit: Buenos 2021-07-09
  • Buenos

    Buenos - 2021-07-08

    I created a modified version of this that demonstrates the bugs.
    the subcircuit models inability to take freq, and the tline models inability to take equations or freq dependent equations.
    buenos.extra.hu/download/tline-errors-demo.zip
    updated file on ftp at 2021-07-09-2:18pm

     

    Last edit: Buenos 2021-07-09
  • Buenos

    Buenos - 2021-09-08

    Update: I have implemented the lossy diff TLINE using Eq controlled RF device.
    This works well, although it is hard to add one more instance to the same schematic, as it would require the user to rewrite 16 very long equations. My template has 4 instances in it.
    http://buenos.extra.hu/download/Channelsim_template_prj.zip
    It would be nice to have a hard component implementing it.

     

Log in to post a comment.