• 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. Strange transient behavior of an LC-oscillator

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 63
  • Views 13406
  • 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

Strange transient behavior of an LC-oscillator

anhchu88
anhchu88 over 4 years ago

Hi, I’m trying to do transient simulation for my LC-oscillator, intended for ~260GHz. I first em-simulated the inductor and interconnects using EMX to extract an S-parameter data file and then embeded the file into my transient sim testbench using nport. The emx simulation was done from DC-900GHz to cover the 3rd harmonic (see the 1st image below).  The nport settings are in the 2nd image. The settings for transient sim: conservative accuracy, transient noise 100-300GHz, traponly, timestep ensuring > 100 timepoints/cycle. The transient simulation results are in image 3. The frequency and amplitude are as predicted (255GHz, 1.5Vpp) until about 400ps, from which the frequency jumps to ~732GHz and the amplitude increases with time to very large value ~9Vpp. The fmax of my transistors is about 450GHz so the 732GHz frequency is impossible. The simulation's output log is shown on image 4 and 5, with causality check and minimal time-step warnings. I have then tried two things:

- Suspecting that the causality check could make the S-param data to become non-passive, I changed the causality correction to "No" in the nport setting. The simulation results however are quite the same, with a sudden jump of the frequency. The oscillation amplitude increases to ~20V before the simulation terminates itself with a warning "device is melting". The results are also the same when the nport's causality correction was changed to "fmax".

- Changed the integration method to euler and gear2. The 250GHz oscillation part then disappeared but the 732GHz part stayed almost the same as before.

I'm pretty sure the strange frequency jump is a simulation artifact but have little clue where it comes from and how to fix it. Could you please give a hint here?

Many thanks and regards,

Anh

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 4 years ago

    A very quick response because it's hard to debug these things without seeing the data (so going to customer support is your best option here). So some suggestions (and note, I've not completely reviewed every detail of what you've said):

    1. Using euler should be avoided - it adds a lot of damping and is likely to completely screw up the behaviour of an oscillator. Even gear2 is not so wise with a high-Q oscillator, since it also introduces a small amount of damping
    2. You might want to set the interpolation method to "bbspice" as that produces a passive rational model rather than using a convolution-based approach. See 7 Habits of Highly Successful S-Parameters (Spectre 20.1, 19.1 and IC6.1.8 ISR9) (you didn't say which spectre version you're using, but there's also a version of the guide for earlier versions: 7 Habits of Highly Successful S-Parameters (Spectre 18.1 and earlier releases) )
    3. Based on the guidance, you might want to check the goodness of the fit - and also look at how smooth your s-parameters are to determine whether. your frequency step in EMX is too high or not (a 5GHz step is pretty big)

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Cancel
  • anhchu88
    anhchu88 over 4 years ago in reply to Andrew Beckett

    Dear Andrew,

    Thanks for your very fast response. I tried the bbspice interpolation method and the oscillation is now as expected (253GHz, 1.8Vpp). 

    Best,

    Anh

    • 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