• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. RF Design
  3. Problem of Nport PSS shooting simulation

Stats

  • Locked Locked
  • Replies 12
  • Subscribers 63
  • Views 22530
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Problem of Nport PSS shooting simulation

Hubertastra
Hubertastra over 4 years ago

Hello,

I have some problem when doing the PSS/PAC/PSP simulation with Nport from the analoglib.

I'm using Spectre Version 19.1.0.373.isr7 64bit and Virtuoso IC6.1.8-64b.

I wrote a S4P touchstone file to model an ideal IQ coupler and simulated it with Nport component from analoglib.

I tried PSS/PSP/PAC simulations with both shooting and HB engine.

The result of HB engine is correct, funtioning exactly as an ideal IQ coupler. While the result of shooting engine is completely wrong.

I used the PSS shooting engine for NPORT simulation with Spectre 14 and Virtuoso IC6.1.6 before. It works very well.

I wonder whether there is a way to get NPORT works with PSS shooting engine in the new Spectre/Virtuoso version.

For the Nport setup, I  tried nearly all the options for passivity, causilty, interpolation methods.

One weird thing is that no matter which interpolation methods I chose (linear, rational), the final fitting is always based on BBspice.

Any comment is appreciated. Thank you.

 

Best regards,

Yang

  • Cancel
Parents
  • Andrew Beckett
    Andrew Beckett over 4 years ago

    Yang,

    Perhaps you can post your s-parameter file? Normally I would expect an "ideal" IQ coupler to be something that would be difficult to simulate in the time-domain because it represents something that is very hard to model in the time-domain (it would probably have passivity/causality problems). So almost certainly, bbspice would be problematic, but even linear could be tricky. With hb it would be easier since that is a frequency-domain analysis, but shooting could be a challenge.

    What is odd is that there are some automatic methods to switch to linear if bbspice modelling is problematic, but I wouldn't expect it to auto-switch the other way - that's what I'd like to investigate.

    Note that "rational" should never be used; it's been obsolete for many years and in fact in later IC6.1.8 ISRs (ISR9 onwards) it has been removed as a choice on the port component.

    I'd normally point to Tawna's 7 Habits of Highly Successful S-Parameters (Spectre 20.1, 19.1 and IC6.1.8 ISR9) but I think the issue here is a combination of an ideal model and something strange going on.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Hubertastra
    Hubertastra over 4 years ago in reply to Andrew Beckett

    Dear Andrew,

    Thank you for your quick response. I cannot upload my s-paramtere file directly due to unknown error. An screenshot is attached in stead.

    I read the  7 Habits of Highly Successful S-Parameters (Spectre 20.1, 19.1 and IC6.1.8 ISR9). However, the Nport interpolation setup is different with what I have. I don't have the default option (auto_switch) and rational is stii there. .  I didn't see nportbbsversion option in simulator option (I saw all the nports options except nportbbsversion). It turns out that the version I used is ISR 7.

    I agree that ideal coupler might be the source of problem. I will work with HB engine when using components like that.

    Thank you again.

    Best regards,

    Yang

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to Hubertastra

    Yang,

    Well, I'm not going to type in the file from your image, and my attempts to use OCR to convert it to something usable failed (too many characters in the wrong place - not helped by your image being line wrapped in the wrong places). Please try giving the file a ".txt" suffix and uploading it via Insert->Insert Image/Video/File

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Hubertastra
    Hubertastra over 4 years ago in reply to Andrew Beckett

    Andrew,

    Sorry. I didn't know that I need to change the suffix. Here it is.

    Ideal_90_coupler_1.txt

    Thank you.

    Best regards,

    Yang

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago in reply to Hubertastra

    Hi Yang,

    As I suspected, the s-parameters represent something totally non-physical - you can't have constant magnitude and 90-degree phase shift for s13 and s24 across a 60GHz bandwidth. As reported in the log files, the errors when trying to get a bbspice rational fit for this are huge, so it makes no sense. It's also likely to cause problems for time-domain analyses even with linear mode as the convolution-based approach will struggle to produce something that makes sense in the time-domain (because it's impossible to realise this in real life):

    WARNING (CMI-2837): In file `/export/home/andrewb/tools/spectre/Ideal_90_coupler.s4p', after causality enforcement, the maximum in-band error is 0.000104%, detected in S1_1 at 59.9854 GHz. Data may be non-causal.
    WARNING (CMI-2971): After causality enforcement, the maximum passivity violation is 91.750461% at 101.865 GHz. Data may be non-passive.

    Anyway, the reason for the problem is that in the IC version you're using, the only choices for Interpolation Method were linear, spline, rational and bbspice. Unfortunately if you left the setting at linear, then as this is the default, it gets omitted from the netlist. Then spectre kicks in and has the automatic switch to bbspice for PSS kick in (because usually this is the best option for PSS). In later IC ISRs, there's the new choice of "default" which does this, and if you explicitly pick "linear" then it will honour that.

    There are two ways to solve this (other than switching to a newer ISR subversion). One is to use the additional parameter list in the rarely used parameters on the nport as below:

    The alternative (because again, this option is not on the form in the version you're using) is to go to Simuilation->Options->Analog, Miscellaneous tab and enter "nport_default_interp=linear" in the Additional arguments field:

    In later IC618 ISRs, this choice is on the Component tab.

    Either way, this is risky with shooting PSS anyway, so be warned...

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Hubertastra
    Hubertastra over 4 years ago in reply to Andrew Beckett

    Andrew

    Problem solved. Thank you very much.

    I will use HB engine first when I need to simulate such ideal S-parameter components in the future.

    Best regards,

    Yang

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • Hubertastra
    Hubertastra over 4 years ago in reply to Andrew Beckett

    Andrew

    Problem solved. Thank you very much.

    I will use HB engine first when I need to simulate such ideal S-parameter components in the future.

    Best regards,

    Yang

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information