• 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. Custom IC Design
  3. Viva XL Graph result different from schematic result

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 125
  • Views 1997
  • 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

Viva XL Graph result different from schematic result

RA20250218276
RA20250218276 6 months ago

I am trying to implement common mode feedback circuit for 2 stage amplifier. I swept length of transistor using variable "lcmfb" vs DC voltage of node "VOUT+".

I sweep it using ADE L dc analysis with linear 10n step size.

The graph shows that at lcmfb = 2u, the VOUT+ DC value is 880mV. But when I set lcmfb value to 2u, the resulting voltage is 1.8V instead of 880mV. Why the value is different from Viva XL Graph? 

For more information, the VOUT+ is fed back into input (negative feedback) at a higher level schematic.

I can't upload the image directly so here is the link to the image.

https://imgur.com/a/XLA1hEu

(Left: Node voltage on schematic, Middle: Viva XL Graph from DC Sweep, Right: ADE L interface, lcmfb = 2u)

  • Cancel
  • Andrew Beckett
    Andrew Beckett 6 months ago

    I think the issue with image uploading seems to be in the editor for the initial post - I see the same issue (that's finally narrowed it down - I've passed on to our IT). That said, with this post it doesn't work with reply either...

    Anyway, one likely scenario is that your circuit has multiple stable operating points. One way to test out this theory is to change your sweep to stop at 2u, and then set writefinal to write the dc solution to a file. Then try running the dc operating point with readns pointing at the file you wrote in writefinal and see if you get the same result on the annotated operating point on the schematic. If so, it suggests that your circuit is sensitive to the starting point (which generally indicates there are multiple stable operating points, which might be reached depending on where the solution starts from).

    If that's not it, I suggest you contact customer support - it's very hard to diagnose such issues without seeing the data. Note that false convergence in Spectre is extremely uncommon (other than rare bugs, it's most likely to be a circuit or model issue).

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • RA20250218276
    RA20250218276 6 months ago in reply to Andrew Beckett

    I tried your suggestion and I get the same result on the annotated schematic as in the Viva XL Graph. So, I think it's true the circuit has multiple stable operating points.

    That said, it means that the value annotated on the schematic and Viva XL Graph values are calculated in different way? Is there any way to know, or make them calculated in the same manner? I mean, I would like my Viva XL Graph provides the same result as in annotated schematic and vice versa.

    Thank you for your assistance.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • RA20250218276
    RA20250218276 6 months ago in reply to RA20250218276

    When I started the sweep from 2u to 10u, the produced Viva XL Graph changes. So I think the simulator uses 2u as the starting point now. So I would like to revise my question. Is there a way we can set the simulator to use every sweep step as a new starting point?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • RA20250218276
    RA20250218276 6 months ago in reply to RA20250218276

    I changed the circuit a little bit. Now this is the result of Viva XL Graph when lcmfb is set as 609nm.

    And when I change lcmfb to 610nm, here is the produced graph.

    https://imgur.com/a/zm5ePF7 (Can't upload image again)

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett 6 months ago in reply to RA20250218276
    RA20250218276 said:
    That said, it means that the value annotated on the schematic and Viva XL Graph values are calculated in different way? Is there any way to know, or make them calculated in the same manner? I mean, I would like my Viva XL Graph provides the same result as in annotated schematic and vice versa.

    First of all, I would be very wary of the scenario where your simulation results are sensitive to the initial conditions - you should investigate whether the circuit is behaving as you expect. Trying to force your circuit to give you one of the operating points is risky - this tends to suggest that your circuit has multiple operating points in real life and so it may not behave the way you expect in the real circuit (detecting whether a circuit has multiple stable operating points in simulation is difficult, by the way). 

    The reason for the difference here is as I explained previously. The DC operating point analysis is run from the parameter values (without the sweep) and so it's probably starting from all nodes being at 0V and converging from there. With the nodeset you gave it a different starting point. With the sweep, each sweep point typically starts converging from the previous solution - because usually this is close to the current solution and should converge more quickly - however, that means that you don't necessarily get the same result. This re-use feature is useful - if you are investigating hysteresis type effects, then the direction of the sweep will give different results (there's a switch in the dc analysis to sweep up then down to observe this).

    RA20250218276 said:
    So I would like to revise my question. Is there a way we can set the simulator to use every sweep step as a new starting point?

    There is an option swpuseprevic=no which can be added to the dc analysis. It's not on the form in ADE, but you can go to the DC options form and then in the additionalParams field at the bottom of the options form, enter swpuseprevic=no . This still might not give the same results, but it might give you the answers you want (as I said earlier about being careful not to convince yourself that all is rosy when there is probably a genuine issue with your circuit). More details can be seen here:

    Understanding difference in results when parametric sweep is used with DC sweep w.r.t. standalone DC sweep

    Andrew

    • Cancel
    • Vote Up +1 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