# Undersampling and Quadrature Sampling ?

Started by December 7, 2006
```Hi,

I would like to undersample a 70 MHz IF signal at a sampling frequency
of 55 MS/s. So this undersampling method creates a 15 MHz IF2 whith 55
MS/s.

Now I would like to donwconverter this 15 MHz IF2 to baseband (0 IF)
with quadrature sampling, so I need to generate a sinus at 60 MS/s and
a cosnius at 60 MS/s and I need to multiply theses sinus, cosinus with
the 15 MHz IF2.

But the problem is that the IF2 is at 55 MS/s and the cos/sin are at 60
MS/s !!!

How can I do this simple operation ?

Thanks.

```
```I think I need to interpole by 11 and then decimate par 12...

Or is there another simpler method ?

Thanks.

```
```patrick.melet@dmradiocom.fr wrote:
>
> I would like to undersample a 70 MHz IF signal at a sampling frequency
> of 55 MS/s. So this undersampling method creates a 15 MHz IF2 whith 55
> MS/s.
>
> Now I would like to donwconverter this 15 MHz IF2 to baseband (0 IF)
> with quadrature sampling, so I need to generate a sinus at 60 MS/s and
> a cosnius at 60 MS/s and I need to multiply theses sinus, cosinus with
> the 15 MHz IF2.
>
> But the problem is that the IF2 is at 55 MS/s and the cos/sin are at 60
> MS/s !!!
>
> How can I do this simple operation ?

I am not sure I understand the situation. Are you saying that you have
sine/cosine tables stored and they happen to be at 60 MS/s? Or, is
there a sine/cosine generator operating at 60 MS/s?

Is there another subsystem or component that needs the signals at that
sampling rate? In that case your solution of resampling it is fine but
you need to investigate whether it is cheaper to store/generate the
signals separately at 55 MS/s. Otherwise, you can just store/generate
the signals at 55 MS/s and there is no need to resample.

C

```
```I make the cos/sin with four values +1, 0, -1, 0 at 60MS/s to genrate
the 15 MHz...

And my sample signal is at 55 MS/s

And I want to multiply these two signals which are at different
sampling rates... 60 MS/s and 55 MS/s

I have a solution to make a NCO at 55 MS/s which generates the 15 MHz
cos/sin

> I am not sure I understand the situation. Are you saying that you have
> sine/cosine tables stored and they happen to be at 60 MS/s? Or, is
> there a sine/cosine generator operating at 60 MS/s?
>
> Is there another subsystem or component that needs the signals at that
> sampling rate? In that case your solution of resampling it is fine but
> you need to investigate whether it is cheaper to store/generate the
> signals separately at 55 MS/s. Otherwise, you can just store/generate
> the signals at 55 MS/s and there is no need to resample.
>
> C

```
```patrick.melet@dmradiocom.fr wrote:
> I make the cos/sin with four values +1, 0, -1, 0 at 60MS/s to genrate
> the 15 MHz...
>
> And my sample signal is at 55 MS/s
>
> And I want to multiply these two signals which are at different
> sampling rates... 60 MS/s and 55 MS/s
>
> I have a solution to make a NCO at 55 MS/s which generates the 15 MHz
> cos/sin

So it is a table having 4 values and covering 1 cycle. At 55MS/s you
can build a table having 11 entries and covering 3 cycles of 15MHz.
Depending on the amount of data you process in a block, you may incur