• 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. ac and pz discrepancies

Stats

  • Locked Locked
  • Replies 4
  • Subscribers 126
  • Views 14479
  • 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

ac and pz discrepancies

itos
itos over 9 years ago

Hi,

I have a simple 2-stage OTA (without any compensation) and again getting results which absolutely do not make any sense.

pz analysis tells me:

****************
PZ Analysis `pz'
****************
DC simulation time: CPU = 0 s, elapsed = 679.016 us.
                      Poles (Hz)

           Real                       Imaginary                 Qfactor

   1   -3.67643e+09                  0.00000e+00              5.00000e-01
   2   -1.47901e+11                  0.00000e+00              5.00000e-01
   3   -1.62910e+11                  0.00000e+00              5.00000e-01
   4   -3.44741e+11                  0.00000e+00              5.00000e-01

                      Zeros (Hz)
                      at V(vop,vom)/V3

           Real                       Imaginary                 Qfactor

   1    5.66921e+10                  0.00000e+00              -5.00000e-01
   2   -1.52018e+11                  0.00000e+00              5.00000e-01

Constant factor =  8.36594e+25

DC gain =  5.98046e+02

This is result of ac analysis (with the points from pz annotated):

Can this really be? This looks perfectly inconsistent to me. How can there only be one dominant pole which is above all much too high?

Based on hand calculations using values from dc op analysis (gds, Cdd and Cgg) I get the pole from the first stage as 1.054GHz, from the second stage as 990.2GHz.

I tried tweaking options for pz analysis but there are not really any useful options (like accuracy).

Thank you!

itos

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    Something strange appears to be going on. I suggest you contact customer support so we can take a look. Not sure if you've set any options to do pole-zero cancellation? Maybe seeing the pz analysis statement from your input.scs might give a clue?

    What happens if you pick method=arnoldi instead of the default method=qz?

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • itos
    itos over 9 years ago

    Thanks Andrew. I use cancellations but whatever options I choose the results do not differ. The pz statement is not spectacular, the last part of the netlist looks like:

    simulatorOptions options reltol=1e-3 vabstol=1e-6 iabstol=1e-12 temp=27 \                                                                                   

        tnom=25 scalem=1.0 scale=1.0 gmin=1e-12 rforce=1 maxnotes=5 maxwarns=5 \                                                                                

        digits=5 cols=80 pivrel=1e-3 sensfile="../psf/sens.output" \                                                                                             

        checklimitdest=psf                                                                                                                                      

    dcOp dc write="spectre.dc" maxiters=150 maxsteps=10000 annotate=status                                                                                       

    dcOpInfo info what=oppoint where=rawfile                                                                                                                    

    ac ac start=1 stop=100P dec=100 annotate=status                                                                                                             

    pz ( vop vom ) pz iprobe=V3 freq=1                                                                                                                           

    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=allpub subcktprobelvl=2

    Using the arnoldi method, results are different but still weird: Now I get a dominant pole at 290 MHz which makes a bit more sense to match with the ac analysis. However, there should still be two closely spaced poles at 1 GHz:

    ****************

    PZ Analysis `pz'

    ****************

    DC simulation time: CPU = 1 ms, elapsed = 2.67696 ms.

    Arnoldi iterative solver is invoked for poles.

    Arnoldi iterative solver is invoked for zeros.

                          Poles (Hz)

     

               Real                       Imaginary                 Qfactor

     

       1   -2.90789e+08                  0.00000e+00              5.00000e-01

       2   -3.67643e+09                  0.00000e+00              5.00000e-01

       3   -1.47901e+11                  0.00000e+00              5.00000e-01

       4   -1.62910e+11                  0.00000e+00              5.00000e-01

       5   -3.44741e+11                  0.00000e+00              5.00000e-01

       6   -2.75207e+12                  0.00000e+00              5.00000e-01

     

                          Zeros (Hz)

                          at V(vop,vom)/V3

     

               Real                       Imaginary                 Qfactor

     

       1    1.89672e+10                  0.00000e+00              -5.00000e-01

       2    5.66921e+10                  0.00000e+00              -5.00000e-01

       3   -1.52018e+11                  0.00000e+00              5.00000e-01

       4   -2.68036e+12                  0.00000e+00              5.00000e-01

     

    Constant factor =  1.31691e+24

     

    DC gain =  5.98046e+02

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 9 years ago

    As I said, I think you'll have to go via customer support as we'll probably need to see the testcase that shows the problem to fully understand it.

    Regards,

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • itos
    itos over 9 years ago
    Thanks, I submitted over a Cadence support.
    • 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