+ Post New Thread

Results 1 to 20 of 23

- 15th February 2017, 13:31 #1

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

## MASH ( SD modulator) power spectrum dc term

I am trying to plot the power spectrum of the quantization noise for a MASH topology(for frequency synthesizer) , but i have an offset of about 20 dB from the ideal curve.

On a last paper that i read , it was written that the desired power spectrum is given from the output of the SD modulator after removing the dc term.

What is the dc term that is mentioned? Is it the mean value of the sequence? ( in the case of frequency synthesizer, the fractional word)

Or just the term at frequency 0?

Thank you in advance,

Nikos

- 15th February 2017, 13:31

- 15th February 2017, 16:39 #2

- 15th February 2017, 17:05 #3

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

## Re: MASH ( SD modulator) power spectrum dc term

Could you explain it a bit more extensively please?

Does it depend on the number of accumulator bits ( N ) or the fractional input?

Thank you

- 15th February 2017, 17:18 #4

- 15th February 2017, 18:07 #5

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

## Re: MASH ( SD modulator) power spectrum dc term

Well, as long as the initial condition is odd , fractional input should have no impact on the curve.

As far as the accumulator bits are concerned, they should add just a small difference on the magnitude. For any number of bits that i tried though, the difference between my curve and the ideal is a constant 20 dB difference.

Why does this constant difference exists? I am pretty sure my plot is correct ( spectrum analysis on Cadence Virtuoso)

- 15th February 2017, 18:27 #6

- Join Date
- Oct 2006
- Location
- Real Homeless
- Posts
- 1,234
- Helped
- 357 / 357
- Points
- 9,300
- Level
- 23

## Re: MASH ( SD modulator) power spectrum dc term

See http://www.designers-guide.org/Forum...1361756819/3#3

Show us your results.

- 15th February 2017, 18:27

- 16th February 2017, 08:46 #7

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

## Re: MASH ( SD modulator) power spectrum dc term

- 16th February 2017, 08:46

- 16th February 2017, 11:16 #8

- Join Date
- Oct 2006
- Location
- Real Homeless
- Posts
- 1,234
- Helped
- 357 / 357
- Points
- 9,300
- Level
- 23

## Re: MASH ( SD modulator) power spectrum dc term

**Use correct terminology.**

This plot is a result of dfft() of Cadence OCEAN function.

It seems spectrum results are same between dfft() of Cadence OCEAN function and Scilab ?

What function do you apply in Scilab ?

Even in Cadence OCEAN, two functions exist for evaluating Spectrum, dfft() and psd().

Do you use psd() or dfft() in Scilab ?

In MathWorks MATLAB, fft(), psd(), pwelch(), etc. exist.

http://www.designers-guide.org/Forum...1405235104/2#2

Definition of fft() is different between Keysight ADS PostProcessing and MathWorks MATLAB.

Definition of fft() is same between Keysight ADS PostProcessing and Cadence ADE PostProcessing.

http://www.designers-guide.org/Forum...1484736874/8#8

There is no DC term in your plot.

On the other hand, DC term surely exist in my plot.

http://www.designers-guide.org/Forum...1361756819/3#3

Your issue has no relation to DC term.

Simply constant deviation between spectrum from time domain and Z-domain transfer function.

Do you mean this is a result of Z-Domain Transfer function plot ?

Cadence OCEAN function, dfft() is not Z-domain tranfer function.Last edited by pancho_hideboo; 16th February 2017 at 11:44.

- 16th February 2017, 11:56 #9

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

## Re: MASH ( SD modulator) power spectrum dc term

Thank you for your reply,

This plot is a result of dfft() of Cadence OCEAN function.

It seems spectrum results are same between dfft() of Cadence OCEAN function and Scilab ?

What function do you apply in Scilab ?

Even in Cadence OCEAN, two functions exist for evaluating Spectrum, dfft() and psd().

Do you use psd() or dfft() in Scilab ?

The plot from Scilab is also the result of using fft() ( and afterwards squaring the output).

If i use the equivalent of psd() function in Scilab ( it is named pspect) i get the following curve, which is way off ( going to positive dBs)

If , on the other hand, I use the psd() function in Cadence i get the following curve ( dBs dropped lower than the ideal curve, that is impossible i think).

Do you mean this is a result of Z-Domain Transfer function plot ?

(found in numerous papers, like Reduced Complexity MASH Delta-Sigma Modulator, Zhipeng Ye and Michael Peter Kennedy)

If i didn't make something clear, please tell me.

- 16th February 2017, 16:31 #10

- Join Date
- Oct 2006
- Location
- Real Homeless
- Posts
- 1,234
- Helped
- 357 / 357
- Points
- 9,300
- Level
- 23

## Re: MASH ( SD modulator) power spectrum dc term

Still, you can not understand things correctly and also not understand correct terminologies.

Consider frequency bin width of result of dft() and definition of dft().

Surely consider what units are applied for y-axis of your plot each other.

In your setting, they are different each other.

fs ; Sampling Frequency

Nfft = 2^17

BinWidth=fs/Nfft

(1) db20( dft() ) - db10(BinWidth) gives dBV/Hz

(2) db10( psd() ) gives dBV/Hz

(3) db10( (1/12)/(fs/2)*abs((1-z^-1)^3)^2 ) which gives dBV/Hz

You can plot these three in Cadence ViVA.

http://www.designers-guide.org/Forum...1444923186/6#6Last edited by pancho_hideboo; 16th February 2017 at 16:51.

1 members found this post helpful.

- 17th February 2017, 09:58 #11

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

## Re: MASH ( SD modulator) power spectrum dc term

fs ; Sampling Frequency

Nfft = 2^17

BinWidth=fs/Nfft

My question is that , if i sample for let's say 16 full Ls, the binWidth according to your formula will be 2^(N+1) * 16= 2^19?

So according to this

Code:(1) db20( dft() ) - db10(BinWidth) gives dBV/Hz

(1) db20( dft() ) - db10(BinWidth) gives dBV/Hz

(2) db10( psd() ) gives dBV/Hz

(3) db10( (1/12)/(fs/2)*abs((1-z^-1)^3)^2 ) which gives dBV/Hz

The thing that confuses me is the factor (1/12)/(fs/2). On almost every paper I came across, this factor is (1/12)/Ls.

If i plot your equation ( in SciLab ) , i get the peak at -80 dB ( big enough difference from the measured data ).

If i plot my variation ( that is substituting fs/2 with Ls ), i get the peak at -40 dB (still 20 dB difference from measured data ).

Thank you for your time

- 17th February 2017, 11:58 #12

- Join Date
- Oct 2006
- Location
- Real Homeless
- Posts
- 1,234
- Helped
- 357 / 357
- Points
- 9,300
- Level
- 23

## Re: MASH ( SD modulator) power spectrum dc term

Tottally, I can not understand what you want to mean at all.

Before posting, study basic mathematic.

I can not understand what you want to mean at all.

Full sequence length is 2^Nbit - 1 = 16383, Nbit=14

I can not understand what you want to mean at all.

There is no direct constraint between Nfft and Nbit.

Show me the followings.

fs ; Sampling Frequency

Tstart ; argument for dft()

Tstop ; argument for dft()

Nfft ; argument for dft()

Nfft have to be (Tstop-Tstart)*fs.

delta_f = 1/(Tstop-Tstart)

I can not understand what you want to mean at all.

I can not understand what you want to mean at all.

Normalized Spectrum(dBV/Hz) is not so dependent on sample periods as far as delta_f is relative small.

Show me results of following and setting.

(1) db20( dft() ) - db10(BinWidth)

(2) db10( psd() )

Maybe right.

Rather I don't see such expression.

I think your expression is normalized as unitless, so its denominator is not Hz.

Surely read your**every paper**.

Attached is a extract from very famous book.

https://www.amazon.com/Understanding...4826787&sr=1-1

Also see Eq.(23) the following.

http://www.adv-radio-sci.net/5/313/2...5-313-2007.pdf

This is phase noise PSD not delta_N PSD

See http://www.designers-guide.org/Forum...1444923186/6#6

Show me your results and fs.Last edited by pancho_hideboo; 17th February 2017 at 12:09.

- 17th February 2017, 13:22 #13

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

## Re: MASH ( SD modulator) power spectrum dc term

OK, as it seems i have trouble explaining what i mean, so i am attaching the script that i run for the plots ( i have added as many comments as necessary i think, but if you need more info on any line of the code tell me.)

The script is written in Scilab ( the syntax is almost identical to Matlab, so you won't have trouble understanding it ).

The plots generated are the following.

- 17th February 2017, 13:33 #14

- Join Date
- Oct 2006
- Location
- Real Homeless
- Posts
- 1,234
- Helped
- 357 / 357
- Points
- 9,300
- Level
- 23

## Re: MASH ( SD modulator) power spectrum dc term

Simply you can not understand basic mathematic especially fft.

Surely read your**every paper**.

Show me informations I requested in #12.

You don't show at all.

These are for Cadence ViVA using time-domain data.

This is for Plot using frequency-domain data in Scilab.Last edited by pancho_hideboo; 17th February 2017 at 13:44.

- 17th February 2017, 14:01 #15

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

- 17th February 2017, 14:11 #16

- Join Date
- Oct 2006
- Location
- Real Homeless
- Posts
- 1,234
- Helped
- 357 / 357
- Points
- 9,300
- Level
- 23

## Re: MASH ( SD modulator) power spectrum dc term

fs=1GHz

Nfft=65536=2^16

Tstart=2.125002nsec

Tstop=Tstart+2*32768/fs=Tstart+Nfft/fs

**BinWidth=fs/Nfft**

db10(BinWidth)=41.8dB

(1) db20( dft() ) -**db10(BinWidth)**gives -64.2481dB at 493.713MHz

(2) db10( psd() ) gives -58.578dB at 473.419MHz

Show me (3) db10( (1/12)/(fs/2)*abs((1-z^-1)^3)^2 )

Are your outputs in Spectre truely [-3,4] ?

I think they are 2^Nbit*[-3,4].Last edited by pancho_hideboo; 17th February 2017 at 14:32.

- 17th February 2017, 14:40 #17

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

- 17th February 2017, 14:46 #18

- 17th February 2017, 14:48 #19

- Join Date
- Jan 2017
- Posts
- 24
- Helped
- 0 / 0
- Points
- 119
- Level
- 1

- 17th February 2017, 14:48

- 17th February 2017, 18:43 #20

- Join Date
- Oct 2006
- Location
- Real Homeless
- Posts
- 1,234
- Helped
- 357 / 357
- Points
- 9,300
- Level
- 23

## Re: MASH ( SD modulator) power spectrum dc term

>> fs=1e6;

>> f=fs/2=0.5e6;

>> Se=(1/12)/(fs/2);

>> Sq=Se*(2*sin(pi*f/fs))^6;

>> 10*log10(Sq)

ans = -49.7197

See result of order=3 of the following.

http://www.designers-guide.org/Forum...s/hoge_001.jpg

Here order=3, fs=1MHz

You can see -50dB/Hz Spectrum at f=fs/2=0.5MHz.

My results from Cadence Spectre Transient Analysis using Verilog-A DSM Model is very close to Sq.

You set fs=1e9, so Se is fairy small.

Sq=-79.7dB/Hz at f=fs/2 is reasonable.

Raw_Spectrum is a result of db20( dft() ) with hanning window.

See Appendix-A of the followings.

https://www.amazon.com/Understanding...4826787&sr=1-1

Smoothed_Spectrum is a db10( circ_smooth( mag(inv_db20(Raw_Spectrum))**2, 16 ) ).

I ported "circ_smooth()" of delta-sigma toolbox of MATLAB to Cadence ADE as Skill function.

https://jp.mathworks.com/matlabcentr.../circ_smooth.m

Now you apply window size=Nfft.

Try to reduce window size of psd(), such as Nfft/2, Nfft/4, Nfft/8, .....

Why do you use fs=1GHz ?

I can not believe such high frequency clock for Delta-Sigma-Fractional-N Frequency Synthesizer.

Assume fvco=10GHz.

fs=1GHz means average divide-ratio is around 10.

3rd-Order-DSM perturb divide-ratio from 10-3 to 10+4.

Generally unless average divide-ratio is enough large compared to delta_N range, e.g. [-3, 4], DSM-PLL can not work.Last edited by pancho_hideboo; 17th February 2017 at 18:50.

+ Post New Thread

Please login