# Functioning of a second order Sigma delta modulator

Started by June 1, 2004
```Hello All,

I am a newbie to the Sigma Delta domain.

I am trying to simulate a sigma-delta modulator(SDM) (2 order, using 1
bit quantizer) but have been running into troubles all the way along.

1. using a straight forward implementation of the second order SDM as
shown by BOSER and WOOLEY, the program shows a decrease in the SNR
ratio for a 2nd order. A theoritically calculated value is more than
40dB higher than that obtained from simulations.

MODEL OUTLAY OF THE CODE:

d1 = first differentiator
d2 = second differentiator
i1 = first integrator
i2 = second integrator

x = discrete input signal
y = discrete output signal
e = error signal

// for present state 'n' in time
d1(n) = x(n)-y(n-1)
i1(n) = d1(n)-i1(n-1)
d2(n) = i1(n)-y(n-1)
i2(n) = d2(n)-i2(n-1)

if i2(n) >= 0
y(n) = +1
else
y(n) = -1;

e(n) = y(n)-x(n)

2. The SNR values of the 1st order and the 2nd order are almost
identical.

Would anyone please provide their feedback over the issues involved
which degrade the final SNR(signal to noise ratio) or if a sample
simulation can be made available. A detailed feedback would make my
day.

Regards.
```
```dspkavita@yahoo.com (Kavita) writes:

> Hello All,
>
> I am a newbie to the Sigma Delta domain.
>
> I am trying to simulate a sigma-delta modulator(SDM) (2 order, using 1
> bit quantizer) but have been running into troubles all the way along.
>
> 1. using a straight forward implementation of the second order SDM as
> shown by BOSER and WOOLEY, the program shows a decrease in the SNR
> ratio for a 2nd order. A theoritically calculated value is more than
> 40dB higher than that obtained from simulations.
>
> MODEL OUTLAY OF THE CODE:
>
>
> d1 = first differentiator
> d2 = second differentiator
> i1 = first integrator
> i2 = second integrator
>
> 	x = discrete input signal
>         y = discrete output signal
>         e = error signal
>
> // for present state 'n' in time
> d1(n) = x(n)-y(n-1)
> i1(n) = d1(n)-i1(n-1)

This is an integrator. The update equation should be

i1(n) = d1(n)+i1(n-1)

Similarly for the second integrator.

--RY

> d2(n) = i1(n)-y(n-1)
> i2(n) = d2(n)-i2(n-1)
>
> if i2(n) >= 0
> y(n) = +1
> else
> y(n) = -1;
>
> e(n) = y(n)-x(n)
>
>
> 2. The SNR values of the 1st order and the 2nd order are almost
> identical.
>
> Would anyone please provide their feedback over the issues involved
> which degrade the final SNR(signal to noise ratio) or if a sample
> simulation can be made available. A detailed feedback would make my
> day.
>
> Regards.

--
Randy Yates
Sony Ericsson Mobile Communications
Research Triangle Park, NC, USA
randy.yates@sonyericsson.com, 919-472-1124
```
```Dear Randy,

Thanks for the mention, sorry for the typo in my equations. I have
been using the summation in the implementation.

I tried my hands at another architecture with equations listed below.

MODEL OUTLAY OF THE CODE:

d1 = first differentiator
d2 = second differentiator
i1 = first integrator
i2 = second integrator

x = discrete input signal
y = discrete output signal
e = error signal

// for present state 'n' in time
d1(n) = x(n)-y(n)
i1(n) = d1(n-1)+i1(n-1)
d2(n) = i1(n)-y(n)
i2(n) = d2(n-1)+i2(n-1)

if i2(n) >= 0
y(n) = +1
else
y(n) = -1;

e(n) = y(n)-x(n-2) //as input arrives after 2 delays in the
feedforward loop.

some specifications are:
over sampling ratio = 10000

My input is a pure sinosoidal signal with +1 to -1 range.

Cheers.
K.
```
```Hi Kavita,

After your response that there was a typo in the equations, I
went back to this message to keep along one track of discussion.

The equations (except for the typos) look correct. The only problem
I can conjecture is that you are computing the quantization noise
power of e(n) directly. That power won't get smaller when going from a
1st-order to a 2nd-order - in fact it should increase.

Instead you need to be filtering e(n) with a lowpass filter with
a relative cutoff frequency of 1/M, where M is the oversampling
ratio you're using.

Is this a D/A converter? I.e., is there an interpolating filter
ahead of the modulator? If so, it's possible there could be
something going wrong there.

Chew these thoughts over and let me know what you think.

--Randy

dspkavita@yahoo.com (Kavita) writes:

> Hello All,
>
> I am a newbie to the Sigma Delta domain.
>
> I am trying to simulate a sigma-delta modulator(SDM) (2 order, using 1
> bit quantizer) but have been running into troubles all the way along.
>
> 1. using a straight forward implementation of the second order SDM as
> shown by BOSER and WOOLEY, the program shows a decrease in the SNR
> ratio for a 2nd order. A theoritically calculated value is more than
> 40dB higher than that obtained from simulations.
>
> MODEL OUTLAY OF THE CODE:
>
>
> d1 = first differentiator
> d2 = second differentiator
> i1 = first integrator
> i2 = second integrator
>
> 	x = discrete input signal
>         y = discrete output signal
>         e = error signal
>
> // for present state 'n' in time
> d1(n) = x(n)-y(n-1)
> i1(n) = d1(n)-i1(n-1)
> d2(n) = i1(n)-y(n-1)
> i2(n) = d2(n)-i2(n-1)
>
> if i2(n) >= 0
> y(n) = +1
> else
> y(n) = -1;
>
> e(n) = y(n)-x(n)
>
>
> 2. The SNR values of the 1st order and the 2nd order are almost
> identical.
>
> Would anyone please provide their feedback over the issues involved
> which degrade the final SNR(signal to noise ratio) or if a sample
> simulation can be made available. A detailed feedback would make my
> day.
>
> Regards.

--
Randy Yates
Sony Ericsson Mobile Communications
Research Triangle Park, NC, USA
randy.yates@sonyericsson.com, 919-472-1124
```
```Hi Randy,

Thanks for your input. I did find where I was going wrong all the
while. It was in the interval I was considering my input for and the
length of the FFT being used. That mismatch, made the integrators go
unstable.

Its a simple SDM, I was trying for.

But presently am working towards to the D/A part of it. Read a lot of
citations of use of comb filter followed by another FIR filter to
achieve the needed resolution. Any feedback in this regards.

Cheers.
Kavita.
```