• 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. Speeding up transient simulation of power detector with...

Stats

  • Replies 3
  • Subscribers 131
  • Views 536
  • Members are here 0

Speeding up transient simulation of power detector with PRBS input using PSS

SamLM929
SamLM929 20 days ago

I have an RF power detector used for an AGC loop. The output of this power detector is put through a low-pass filter, while the data is coming in at 112Gbps PAM4. I'd like to test that the power detector has the expected response to changes in amplitude that are lower than the low-pass cutoff, but not sensitive to the data. This means I would have to simulate for 10+ microseconds, which is not practical to do when simulating across corners and temperatures.

My original thinking was that I could use PSS simulation as a starting point, and just use Pnoise or PAC to get the transfer function, and assume that changes in the data translate to phase noise and amplitudes, and from there calculate the maximum ripple in my filtered output based on that. I don't think this works though because the signal is large enough that these are not small amplitude changes, so it breaks the PSS operating point assumption.

My next thought is to use ENVLP analysis. Documentation shows that it's good for situations like an AGC loop with binary data. However it doesn't allow PRBS inputs at all, even here I have to use a pre-determined bitstream. If I generate a PRBS9 sequence and manually enter it into a vbit source, that works but it does not provide any speed improvement at all.

To summarize the problem so far the input, it is (a) 224GHz clock (b) 112Gbps PRBS data modulation and (c) low frequency ~100kHz amplitude modulation. The intention is for the output to track only the 100kHz amplitude modulation, meaning my simulation time has to be much larger than the clock.

What's the best way to speed up this simulation? Is there a clever way I can use data from a PSS simulation to speed up the transient? Or am I misunderstanding the ENVLP analysis entirely?

Working in Virtuoso IC23.1, using ADE Assembler. Any pointers or directions either in simulation or how I'm mathematically thinking about it would be very helpful, thank you in advance!

  • Cancel
  • Sign in to reply
Parents
  • Andrew Beckett
    Andrew Beckett 19 days ago

    I've not checked if there are any specific limitations with PRBS sources and envlp, but even if there weren't, envlp would be unlikely to help. envlp helps when the data rates are much lower than the clock frequency or the settling time is much longer than the clock period. In this case your data rates are only half the clock frequency. Envelope analysis gains speed by skipping cycles, and needs the envelope to be representable by some kind of polynomial - it's a bit like the timestep control in transient but at a higher level - it can space out the cycles that are simulated in order to follow the envelope. You can't really miss out any cycles in this example.

    I suggest you contact customer support (use the case menu to submit a support case after logging in). That way we can look in a bit more detail at what you're doing right now and see if there are any other suggestions we can make about speeding up your verification. I assume you're already using Spectre X, and taking as much advantage of multi-threading as your design size allows? Anyway, that's a conversation to have with the Application Engineer once we have a few more details.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • Andrew Beckett
    Andrew Beckett 19 days ago

    I've not checked if there are any specific limitations with PRBS sources and envlp, but even if there weren't, envlp would be unlikely to help. envlp helps when the data rates are much lower than the clock frequency or the settling time is much longer than the clock period. In this case your data rates are only half the clock frequency. Envelope analysis gains speed by skipping cycles, and needs the envelope to be representable by some kind of polynomial - it's a bit like the timestep control in transient but at a higher level - it can space out the cycles that are simulated in order to follow the envelope. You can't really miss out any cycles in this example.

    I suggest you contact customer support (use the case menu to submit a support case after logging in). That way we can look in a bit more detail at what you're doing right now and see if there are any other suggestions we can make about speeding up your verification. I assume you're already using Spectre X, and taking as much advantage of multi-threading as your design size allows? Anyway, that's a conversation to have with the Application Engineer once we have a few more details.

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
  • SamLM929
    SamLM929 19 days ago in reply to Andrew Beckett

    Thank you for the suggestion, I'm now in contact with an application engineer. Would it be alright to keep this thread open so I can post the solution here for others' benefit?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Andrew Beckett
    Andrew Beckett 19 days ago in reply to SamLM929

    Yes, that’s fine. Threads stay open for several months normally unless explicitly locked (we ask people not to add on old threads, but fine to fill in the details when you have an answer to share).

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • 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.

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

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