• 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. Using sampled pxf analysis to simulate deterministic ji...

Stats

  • Locked Locked
  • Replies 0
  • Subscribers 125
  • Views 9355
  • 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

Using sampled pxf analysis to simulate deterministic jitter

Frank Wiedmann
Frank Wiedmann over 3 years ago

The Rapid Adoption Kit "Deterministic Jitter Measurement using SpectreRF" (https://support.cadence.com/apex/articleattachmentportal?id=a1O0V000009EVT2UAO) shows how a sampled pxf analysis can be used to simulate the deterministic jitter of a circuit due to power supply ripple. However, the setup shown there seems to be inspired by the recommended setup for a sampled pnoise analysis. In my opinion, a linear absolute frequency sweep up to the maximum ripple frequency with no additional sidebands will give a much clearer result here. Please compare the following plot to the plot on page 26 of the RAK:

For reference, here is the corresponding netlist:

// Design library name: WorkshopLib
// Design cell name: 4_inv_tb1
// Design view name: schematic
simulator lang=spectre
global 0
parameters ripple_freq=0 ripple_peak_volts=30m Clk_Frq=2.5G VDD=3.3
include "gpdk.scs" section=NN

// Library name: circuits
// Cell name: INV
// View name: schematic
subckt INV A Y gnd vdd
NM2 (Y A gnd gnd) nmos1 w=(400n) l=180n as=440f ad=440f ps=2.8u \
pd=2.8u m=(1)*(1)
PM1 (Y A vdd vdd) pmos1 w=(600n) l=180n as=360f ad=180f ps=2.4u \
pd=1.2u m=(1)*(2)
ends INV
// End of subcircuit definition.

// Library name: WorkshopLib
// Cell name: 4_inv_tb1
// View name: schematic
I3 (Int3 Out1 0 net01) INV
I2 (Int2 Int3 0 net01) INV
I1 (Int1 Int2 0 net01) INV
I0 (net10 Int1 0 net01) INV
V0 (net1 0) vsource dc=3.3 pacmag=1 type=dc
V1 (net10 0) vsource type=pulse val0=0 val1=3.3 period=1/Clk_Frq \
rise=1/(40*Clk_Frq) fall=1/(40*Clk_Frq) width=19/(40*Clk_Frq) \
fundname="In"
V4 (net01 net1) vsource type=sine freq=ripple_freq ampl=ripple_peak_volts \
fundname="Ripple"
simulatorOptions options psfversion="1.4.0" reltol=1e-3 vabstol=1e-6 \
iabstol=1e-12 temp=27 tnom=27 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
pss pss fund=2.5G harms=1 autotstab=yes maxacfreq=100G
+ annotate=status
pxf ( Out1 0 Out1 0 ) pxf crossingdirection=rise
+ thresholdvalue=1.65 ptvtype=sampled start=0 stop=100G step=100M
+ maxsideband=0 annotate=status
saveOptions options save=allpub
  • 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