Hi everyone, hope the section is correct.
I'm simulating with spectre the inverter chain shown in the figure below where the input signal is a 30GHz sinusoid that is AC coupled to first inverter. My goal is to investigate its noise.
x6, x12... is the multiplicity of the inverters. What I want to do is to check how the noise coming from the fiirst inverter only is propagated along the chain and transformed into jitter on node N1 to node N4.
To furthermore simplify I went to Simulation -> Options -> Analog and I checked "Noise Contribution" to On, specifying the first inverter only as noise contributor (thermal).
I set up the PSS simulation with Beat Frequency 30GHz and 10 harmonics.
**netlist**
pss pss fund=30G harms=10 errpreset=conservative autosteady=yes
+ annotate=status
Then the pnoise: since it is a periodic simulation, it's sufficient to check the noise up to half the PSS Beat Frequency. Output Freq Range is absolute and set to 10k to 15G, as seen in the picture. At every node, there will be the folding of every noise bandwidth around the harmonics of the PSS toward the 10k-15G bandwidth. But I want to simplify even more, choosing Sidebands 15G-30G and 30G-45G only in the pnoise Sidebands form. This is to check how the noise placed around the 30GHz harmonic only contributes to noise. Finally, since it's a jitter simulation, I set "Noise Type" to "sampled(jitter)", "Timing Event" to "Edge Crossing" and set a measure for each transition of N1-N4 nodes using as trigger the same measured signal (e.g. measure N1 has the same N1 signal as trigger).
**netlist**
pnoise pnoise start=10k stop=15G dec=5 sidebands=[-1 1] noisetype=sampled \
sampleratio=1 measurement=[pm0 pm1 pm2 pm3] annotate=status
pm0 jitterevent trigger=[N4 0] triggerthresh=0.45 \
triggerdir=rise target=[N4 0]
pm1 jitterevent trigger=[N3 0] triggerthresh=0.45 \
triggerdir=rise target=[N3 0]
pm2 jitterevent trigger=[N2 0] triggerthresh=0.45 \
triggerdir=rise target=[N2 0]
pm3 jitterevent trigger=[N1 0] triggerthresh=0.45 \
triggerdir=rise target=[N1 0]
What I get from the results are the following time waveforms (N1 red... N4 green).
Then if I calculate the Jee integrated from 10k to 15G I see that is always increasing along the chain from 42f to 47f.
However, if instead of Jee I plot the Output Noise spectrum I get the following behavior, with the same Node-Color relation as before: N4 output noise is lower than the N3 output noise!
How is that possible?
So here's my questions:
1) how is that possible that noise is decreasing along the chain?
2) I'd like to plot the noise transfer functions along the chain: for example, how the noise in N1 in the bandwidth 15G-30G is going to N4 noise bandwidth 0-15G. What is the best way to have such a transfer function? I tried to use the PAC sampled and also the PXF sampled, but I am not sure how to combine the results to get the sort of "flat gain" that I see in the noise spectrums above, e.g the 53.5/35.3 ~ 1.52 "voltage gain" between N1 and N4.
Thank you in advance.
Nicola