• 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. K Stability Factor Simulation Results Do not show up

Stats

  • Locked Locked
  • Replies 14
  • Subscribers 63
  • Views 20843
  • 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

K Stability Factor Simulation Results Do not show up

Mehdi Nasr
Mehdi Nasr over 5 years ago

Hi, 

I have designed an LNA and am going to check the k Stability factor. When I run the s-parameters I plot the k-stability factor, but nothing shows up and the screen is black and nothing is there. So, any suggestion how can I fix this issue? 

Regards,

Mehdi

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

    Hi Medhi,

    You'll need to provide some more information, because I just did this and it worked fine - and I'm not aware of this being a recently reported issue. So please can you answer these questions:

    1. Which IC subversion are you using? This is in Help->About (please give the full number, not just the first part)
    2. Which spectre version are you using (this will appear at the top of the spectre.out log file in ADE)? Assuming you're using spectre, that is...
    3. Which ADE flavour are you using? ADE L, XL, Explorer or Assembler? Or if not ADE, how are you running the simulation?
    4. How are  you plotting the "k-stability factor" - explain precisely how you are doing this
    5. Please copy and paste the analysis statements from the input.scs file in ADE (the bottom part of the input.scs), particularly the "sp" analysis lines.
    6. Are there any errors that appear in the CIW when you do this?

    Regards,

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett over 5 years ago

    Hi Medhi,

    You'll need to provide some more information, because I just did this and it worked fine - and I'm not aware of this being a recently reported issue. So please can you answer these questions:

    1. Which IC subversion are you using? This is in Help->About (please give the full number, not just the first part)
    2. Which spectre version are you using (this will appear at the top of the spectre.out log file in ADE)? Assuming you're using spectre, that is...
    3. Which ADE flavour are you using? ADE L, XL, Explorer or Assembler? Or if not ADE, how are you running the simulation?
    4. How are  you plotting the "k-stability factor" - explain precisely how you are doing this
    5. Please copy and paste the analysis statements from the input.scs file in ADE (the bottom part of the input.scs), particularly the "sp" analysis lines.
    6. Are there any errors that appear in the CIW when you do this?

    Regards,

    Andrew.

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
Children
  • Mehdi Nasr
    Mehdi Nasr over 5 years ago in reply to Andrew Beckett

    Which IC subversion are you using? This is in Help->About (please give the full number, not just the first part) IC6.1.7-64b.500.18

    Which spectre version are you using (this will appear at the top of the spectre.out log file in ADE)? Assuming you're using spectre, that is...

    Cadence (R) Virtuoso (R) Spectre (R) Circuit Simulator
    Version 15.1.0.803.isr18 64bit -- 21 Jun 2017
    Copyright (C) 1989-2017 Cadence Design Systems, Inc. All rights reserved worldwide. Cadence, Virtuoso and Spectre are registered trademarks of Cadence Design Systems, Inc. All others are the property of their respective holders.

    Includes RSA BSAFE(R) Cryptographic or Security Protocol Software from RSA Security, Inc.

    User: mehdina94rm Host: amml.ece.neu.edu HostID: A81673C PID: 248590
    Memory available: 82.7415 GB physical: 133.5396 GB
    Linux : CentOS Linux release 7.5.1804 (Core)
    CPU Type: Intel(R) Xeon(R) Gold 6136 CPU @ 3.00GHz
    Socket: Processors [Frequency] (Hyperthreaded Processor)
    0: 0 [1307.2] ( 12 ), 1 [1199.9] ( 13 ), 2 [1200.6] ( 14 )
    3 [1199.9] ( 15 ), 4 [1199.9] ( 16 ), 5 [1199.9] ( 17 )
    6 [1209.6] ( 18 ), 7 [1199.9] ( 19 ), 8 [3599.9] ( 20 )
    9 [1199.9] ( 21 ), 10 [1200.1] ( 22 ), 11 [1200.1] ( 23 )

    System load averages (1min, 5min, 15min) : 5.0 %, 5.7 %, 5.9 %
    Hyperthreading is enabled


    Simulating `input.scs' on amml.ece.neu.edu at 4:15:16 PM, Mon Nov 4, 2019 (process id: 248590).
    Current working directory: /ECEnet/home/student/mehdina94rm/Sim/LNA_diff_matching_finalized_tb/spectre/config/netlist
    Command line:
    /ECEnet/Apps1/linux/cad12/tools/cadence/MMSIM151/tools/bin/spectre \
    -64 input.scs +escchars +log ../psf/spectre.out -format psfxl \
    -raw ../psf +lqtimeout 900 -maxw 5 -maxn 5

    Loading /ECEnet/Apps1/linux/cad12/tools/cadence/MMSIM151/tools.lnx86/cmi/lib/64bit/5.0/libinfineon_sh.so ...

    ...

    Time for NDB Parsing: CPU = 454.093 ms, elapsed = 1.14059 s.
    Time accumulated: CPU = 492.094 ms, elapsed = 1.1406 s.
    Peak resident memory used = 53.5 Mbytes.


    The CPU load for active processors is :
    Spectre 0 (8.8 %) 1 (6.1 %) 2 (23.5 %) 3 (15.9 %)
    6 (16.1 %) 7 (12.4 %) 8 (100.0 %) 9 (4.5 %)
    11 (12.9 %) 13 (1.7 %) 16 (1.8 %) 21 (2.7 %)
    22 (2.7 %)
    Other
    Reading link: /ECEnet/Apps1/linux/cad12/tools/cadence/MMSIM151/tools.lnx86/spectre/etc/ahdl/discipline.h
    Reading file: /ECEnet/Apps1/linux/cad12/tools/cadence/MMSIM151/tools.lnx86/spectre/etc/ahdl/disciplines.vams
    Reading link: /ECEnet/Apps1/linux/cad12/tools/cadence/MMSIM151/tools.lnx86/spectre/etc/ahdl/constants.h
    Reading file: /ECEnet/Apps1/linux/cad12/tools/cadence/MMSIM151/tools.lnx86/spectre/etc/ahdl/constants.vams
    Time for Elaboration: CPU = 152.351 ms, elapsed = 159.82 ms.
    Time accumulated: CPU = 644.588 ms, elapsed = 1.30056 s.
    Peak resident memory used = 81.9 Mbytes.

    Time for EDB Visiting: CPU = 90.327 ms, elapsed = 90.5421 ms.
    Time accumulated: CPU = 735.056 ms, elapsed = 1.39124 s.
    Peak resident memory used = 97 Mbytes.


    Notice from spectre during topology check.
    Only one connection to the following 56 nodes:
    I21.M5|avC2
    I21.M5|avC1
    I21.M7|avC2
    I21.M7|avC1
    I21.M17|avC2
    Further occurrences of this notice will be suppressed.
    No DC path from node `I21.M5|avC2' to ground, Gmin installed to provide path.
    No DC path from node `I21.M5|avC1' to ground, Gmin installed to provide path.
    No DC path from node `I21.M7|avC2' to ground, Gmin installed to provide path.
    No DC path from node `I21.M7|avC1' to ground, Gmin installed to provide path.
    No DC path from node `I21.M17|avC2' to ground, Gmin installed to provide path.
    Further occurrences of this notice will be suppressed.


    Global user options:
    reltol = 1e-06
    vabstol = 1e-08
    iabstol = 1e-13
    temp = 27
    homotopy = 7
    limit = delta
    compatible = spice2
    gmin = 1e-12
    rforce = 1
    maxnotes = 5
    maxwarns = 5
    digits = 5
    cols = 80
    pivrel = 0.001
    sensfile = ../psf/sens.output
    checklimitdest = psf
    save = allpub
    tnom = 27
    scalem = 1
    scale = 1

    Scoped user options:

    Circuit inventory:
    nodes 10869
    bsim3v3 172
    capacitor 3468
    diode 472
    inductor 20
    isource 2
    port 3
    resistor 17819
    transformer 2
    vcvs 2
    vsource 3

    Analysis and control statement inventory:
    info 6
    sp 1

    Output statements:
    .probe 0
    .measure 0
    save 0


    Notice from spectre.
    54 notices suppressed.

    Time for parsing: CPU = 33.381 ms, elapsed = 36.0088 ms.
    Time accumulated: CPU = 768.582 ms, elapsed = 1.42739 s.
    Peak resident memory used = 104 Mbytes.

    ~~~~~~~~~~~~~~~~~~~~~~
    Pre-Simulation Summary
    ~~~~~~~~~~~~~~~~~~~~~~
    ~~~~~~~~~~~~~~~~~~~~~~

    Warning from spectre.
    WARNING (SPECTRE-16707): Only tran supports psfxl format, result of other analyses will be in psfbin format.


    **************************************************
    S-Parameter Analysis `sp': freq = (2 GHz -> 3 GHz)
    **************************************************

    Notice from spectre during DC analysis, during SP analysis `sp'.
    GminDC = 1 pS is large enough to noticeably affect the DC solution.
    dV(I21.I9|M2_10__rcx.b1d) = 14.1994 nV
    Use the `gmin_check' option to eliminate or expand this report.

    DC simulation time: CPU = 82.559 ms, elapsed = 82.7818 ms.
    sp: freq = 2.023 GHz (2.84 %), step = 4.653 MHz (568 m%)
    ...
    sp: freq = 2.992 GHz (99.4 %), step = 6.882 MHz (568 m%)
    sp: freq = 3 GHz (100 %), step = 7.529 MHz (568 m%)
    Accumulated DC solution time = 80 ms.
    Intrinsic sp analysis time = 820 ms.
    Total time required for sp analysis `sp': CPU = 2.88472 s, elapsed = 3.30678 s.
    Time accumulated: CPU = 3.69166 s, elapsed = 5.28976 s.
    Peak resident memory used = 131 Mbytes.

    modelParameter: writing model parameter values to rawfile.

    Opening the PSF file ../psf/modelParameter.info ...
    element: writing instance parameter values to rawfile.

    Opening the PSF file ../psf/element.info ...
    outputParameter: writing output parameter values to rawfile.

    Opening the PSF file ../psf/outputParameter.info ...
    designParamVals: writing netlist parameters to rawfile.

    Opening the PSFASCII file ../psf/designParamVals.info ...
    primitives: writing primitives to rawfile.

    Opening the PSFASCII file ../psf/primitives.info.primitives ...
    subckts: writing subcircuits to rawfile.

    Opening the PSFASCII file ../psf/subckts.info.subckts ...

    Aggregate audit (4:15:21 PM, Mon Nov 4, 2019):
    Time used: CPU = 4.07 s, elapsed = 5.78 s, util. = 70.4%.
    Time spent in licensing: elapsed = 34.5 ms.
    Peak memory used = 141 Mbytes.
    Simulation started at: 4:15:16 PM, Mon Nov 4, 2019, ended at: 4:15:21 PM, Mon Nov 4, 2019, with elapsed time (wall clock): 5.78 s.
    spectre completes with 0 errors, 1 warning, and 7 notices

    Which ADE flavour are you using? ADE L, XL, Explorer or Assembler? Or if not ADE, how are you running the simulation? ADE L

    How are you plotting the "k-stability factor" - explain precisely how you are doing this. Results --> Direct Plot --> Main Form --> sp --> Kf --> plot

    Please copy and paste the analysis statements from the input.scs file in ADE (the bottom part of the input.scs), particularly the "sp" analysis lines.

    ps=0.7u*2+(700.0n) nrd=0.3u/(700.0n) nrs=0.3u/(700.0n) \
    par1=((1)*(1))
    I10 (net032 vss) isource dc=500u type=dc
    I5 (net31 vss) isource dc=500u type=dc
    I29 (net13 vss net18 net14) ideal_balun
    PORT3 (LNA vss) port r=50 type=dc
    PORT4 (out vss) port r=50 num=2 type=dc
    E0 (LNA vss RFout\- RFout\+) vcvs gain=1
    E2 (out vss RFout\- RFout\+) vcvs gain=1
    simulatorOptions options reltol=1e-6 vabstol=1e-8 iabstol=1e-13 temp=27 \
    tnom=27 homotopy=all limit=delta scalem=1.0 scale=1.0 \
    compatible=spice2 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 digits=5 \
    cols=80 pivrel=1e-3 sensfile="../psf/sens.output" checklimitdest=psf
    sp sp ports=[PORT1 PORT3] start=2G stop=3G dec=1000 donoise=yes \
    oprobe=PORT3 iprobe=PORT1 annotate=status
    modelParameter info what=models where=rawfile
    element info what=inst where=rawfile
    outputParameter info what=output where=rawfile
    designParamVals info what=parameters where=rawfile
    primitives info what=primitives where=rawfile
    subckts info what=subckts where=rawfile
    saveOptions options save=allpu

    Are there any errors that appear in the CIW when you do this? No errors.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Tawna
    Tawna over 5 years ago in reply to Mehdi Nasr

    1. You are using an extremely outdated version of Spectre.  (15.1).   The latest version is 19.1.  You should upgrade to at least 18.1

    2. You have two ports (PORT3 and PORT4) in your netlist.    

    PORT3 (LNA vss) port r=50 type=dc
    PORT4 (out vss) port r=50 num=2 type=dc

    In your sp statement, you list a port that is not in your netlist.   Where is PORT1?:

    sp sp ports=[PORT1 PORT3] start=2G stop=3G dec=1000 donoise=yes \
    oprobe=PORT3 iprobe=PORT1 annotate=status

    Best regards,

    Tawna

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to Tawna

    Tawna,

    The missing port is probably just because this is a snippet of the netlist; if the port was really missing, the sp analysis would fail (I checked).

    Mehdi,

    I ran with the exact same version of MMSIM and IC that you are (Tawna's right, the MMSIM version is old, although the hot fix you're using is less than 2.5 years old, compared with the IC version which is about 1.5 years old - so compared with much that we see here, it's not that bad...). It works fine for me - I even set up the sp analysis the same as you did (same start and stop frequencies, turning on noise, and so on).

    By the way, your reltol/vabstol/iabstol are way too tight. You really should not need reltol of 1e-6 except in very rare situations, and even then only for transient simulations where you need very high dynamic range (typically you'd have to be doing an FFT of the results, and even then you'd need to ensure that it's not your measurement accuracy that is wrong). This is a good way of unnecessarily slowing down the simulations for little advantage. 

    However, that's unlikely to be the issue here. The simulation ran in a few seconds, so that's more of a point for future reference.

    Can you try pasting this expression into the calculator and then plotting that to see if this works?

    kf(sp(1 1 ?result "sp") sp(1 2 ?result "sp") sp(2 1 ?result "sp") sp(2 2 ?result "sp"))

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mehdi Nasr
    Mehdi Nasr over 5 years ago in reply to Andrew Beckett

    Andrew and Tawana, 

    Thanks for your comments. I have checked with school and they will upgrade it. But I am not sure if thats the problems since I was previously running it even with the older cadence version. 

    Regarding the missing Port, I have to mention that I have a couple of ports in other parts of the circuit but not used in this simulation. So it will not be an issue since the SP analysis is running and I can get the S parameters without any issue. The only issue is the result of Kf. 

    I have checked the equation and that is exactly the same as what you mentioned above, BTW I copied yours into my calculation and the result is the same and nothing shows up.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to Mehdi Nasr

    Can you plot anything else from the Direct Plot form for the sp analysis? For example, plotting s11 or s22, or any of the other metrics? Is it just Kf that is the problem?

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mehdi Nasr
    Mehdi Nasr over 5 years ago in reply to Andrew Beckett

    Andrew, 

    I can plot S11, S21, S12, S22, NF. But I cannot plot  Kf and B1f or even Z parameters. 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mehdi Nasr
    Mehdi Nasr over 5 years ago in reply to Mehdi Nasr

    Here is the error that I get when I plot z-parameters:

    ERROR (WIA-1006): Unable to plot expression <zpm('sp 1 1)>

    because it does not evaluate to an object that can be plotted, like a waveform or

    parametric wave. See the Visualization & Analysis Tool documentation for information

    about the types of objects that can be plotted in Visualization & Analysis Tool. Only

    the expressions that evaluate to those objects can be plotted.

    *Warning* Wave1 is not a waveform object that can be displayed and

    will be DELETED automatically.

    name: "Z11 magOhm"

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 5 years ago in reply to Mehdi Nasr

    Can you do the following tests in the CIW after running the simulation and trying to plot in the direct plot form:

    outputs(?result 'sp ?map nil)
    zpm('sp 1 1)
    kf(sp(1 1 ?result "sp") sp(1 2 ?result "sp") sp(2 1 ?result "sp") sp(2 2 ?result "sp"))

    and paste here exactly what it shows in the CIW - the pasted commands and output/errors between them. For me it shows:

    outputs(?result 'sp ?map nil)
    ("s11" "s21" "s12" "s22" "cy11"
    "cy21" "cy12" "cy22"
    )
    zpm('sp 1 1)
    srrWave:0x32b12020
    kf(sp(1 1 ?result "sp") sp(1 2 ?result "sp") sp(2 1 ?result "sp") sp(2 2 ?result "sp"))
    srrWave:0x32b12190

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mehdi Nasr
    Mehdi Nasr over 5 years ago in reply to Andrew Beckett

    Here is what I got:

    outputs(?result 'sp ?map nil)

    zpm('sp 1 1)

    kf(sp(1 1 ?result "sp") sp(1 2 ?result "sp") sp(2 1 ?result "sp") sp(2 2 ?result "sp"))

    ("s11" "s21" "s12" "s22")

    nil

    srrWave:0x30bd7420

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Mehdi Nasr
    Mehdi Nasr over 5 years ago in reply to Mehdi Nasr

    This is also the whole commands when I ran the ADE L:

    Delete psf data in /ECEnet/home/student/mehdina94rm/Sim/LNA_diff_matching_finalized_tb/spectre/config/psf.

    generate netlist...

    *Error* def: function is write protected and cannot be redefined - ansCdlCompPrim

    *Error* load: error while loading file - "./.xkit/setup/x_all/cadence/xenv/skill/ansCdlCompPrim.ile" at line 0

    *Error* def: function is write protected and cannot be redefined - ansCdlCompPrim

    *Error* load: error while loading file - "./.xkit/setup/x_all/cadence/xenv/skill/ansCdlCompPrim.ile" at line 0

    Begin Incremental Netlisting Nov 5 16:48:04 2019

    End netlisting Nov 5 16:48:05 2019

    The netlist is up to date.

    Time taken to compare the design with netlist: 1.0s

    ...successful.

    compose simulator input file...

    ...successful.

    start simulator if needed...

    ...successful.

    simulate...

    INFO (ADE-3071): Simulation completed successfully.

    reading simulation data...

    ...successful.

    outputs(?result 'sp ?map nil)

    zpm('sp 1 1)

    kf(sp(1 1 ?result "sp") sp(1 2 ?result "sp") sp(2 1 ?result "sp") sp(2 2 ?result "sp"))

    ("s11" "s21" "s12" "s22")

    nil

    srrWave:0x30bd7420

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

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