Sign In

Don't have a Xilinx account yet?

  • Choose to receive important news and product information
  • Gain access to special content
  • Personalize your web experience on Xilinx.com

Create Account

Username

Password

Forgot your password?
XClose Panel
Xilinx Home
Reply
Regular Visitor
arash-rezaee
Posts: 53
Registered: ‎02-01-2012
0
Accepted Solution

FM modulation with help of DDS

Hi every one.

I really need help to create FM modulation (Not FSK). I tried a lot with DDS compiler but until now I didn't`t get the FM modulation as well as theory. I want to modulate 19KHz  with clock frequency of 12.160MHz.

I really appreciate if some one help me.

 

Thanks

Super Contributor
vlavruhin
Posts: 195
Registered: ‎12-08-2010

Re: FM modulation with help of DDS

Arash, first of all look at theory behind frequency modulation.

E.g., Wikipedia has article on this subject:

http://en.wikipedia.org/wiki/Frequency_modulation

 

Look at following equation:

 

fc - carrier frequency (central frequency of modulated signal y(t) ),

f_delta - frequency deviation (usually, for wideband FM it is 75 kHz),

x_m(t) - modulating (audio) signal.

 

So in order to design FM demodulator:

 

1) Choose carrier frequency fc.

 

2) Make integrator of modulating signal. In digital domain integrator is just accumulator which calculates sum of input samples.

 

If your modulating signal can be only one sine signal (i.e., not voice or music), then you can bypass integrator stage, because integral of sine equals -cosine:

 

/

| sin(x) dx = -cos(x) + constant,

/

 

/

| cos(x) dx = sin(x) + constant,

/

 

3) Calculate instantaneous frequency: f = fc + f_delta * Integral.

 

4) Calculate phase increment of DDS.

 

 

Best Regards,
Vitaly.
Regular Visitor
arash-rezaee
Posts: 53
Registered: ‎02-01-2012
0

Re: FM modulation with help of DDS

thanks a lot. but how about if want to modulate the sound signal or voice signal? for example the stereo signal?

 

Super Contributor
vlavruhin
Posts: 195
Registered: ‎12-08-2010

Re: FM modulation with help of DDS

I have meant that you can skip integrator stage if modulating signal is sine. If it's arbitrary audio signal (voice, music), then use accumulator to integrate this sound signal.

 

Stereo FM is more complicated case which involves SSB modulation of audio signal first, and only after that - FM.

Short description of stereo FM can also be found on Wikipedia:

http://en.wikipedia.org/wiki/FM_broadcasting

 

Best Regards,
Vitaly.
Regular Visitor
arash-rezaee
Posts: 53
Registered: ‎02-01-2012
0

Re: FM modulation with help of DDS

Thanks again Vitaly.

 

About fm stereo< i knew that and until now I create my FM stereo signal and now it is ready for FM modulation. With best help of you I think I can do it very well. But if I had some question, is it possible Iask you again? through this forum or private email or ....?

 

Best Regards

Arash

Super Contributor
vlavruhin
Posts: 195
Registered: ‎12-08-2010

Re: FM modulation with help of DDS

Sure, Arash. You can ask any well-defined question approriate to the topics of this forum. There are many talented persons here, who will be happy to answer questions.

Best Regards,
Vitaly.
Regular Visitor
arash-rezaee
Posts: 53
Registered: ‎02-01-2012
0

Re: FM modulation with help of DDS

Thanks again vitaly

I didn`t get how to calculate instantaneous frequency? can you explain it more? and also when I calculate the instantaneous frequecy I have to pass it through DDS port ( pinc_in)?

 

Regards

Arash

Regular Visitor
arash-rezaee
Posts: 53
Registered: ‎02-01-2012
0

Re: FM modulation with help of DDS

ok. Now I think generated fm signal. but there is some issues I want to share with you guys. If some knows the solution let us now ( or maybe I am wronge). based on Vitaly solution ( the steps he mentioned) I created a block diagram as I showed it here.

for steps Vilaty said I choose my carrier frequency to 760KHz( for example) and I have sinusoidal signal in 19KHz with sample rate of 3.04MHz. from carrier frequecy the number is 4096 with I added to output of my sinusoidal signal and pass it to DDS compiler. Now the frequency changed when the amplitude of 19KHz sinusoidal change.

But there is one problem : when the amplitude goes to high, the frequency is much more but the amplitude of FM signal on that position is quite smaler than when it is at lower frequency? I do`nt why this happen?

if anyone knows about this or if you want any more explaination please let me know.

 

Regards

Arash

 

dds.png
Super Contributor
vlavruhin
Posts: 195
Registered: ‎12-08-2010
0

Re: FM modulation with help of DDS

Arash, could you attach some plots or model describing the problem?

Best Regards,
Vitaly.
Regular Visitor
arash-rezaee
Posts: 53
Registered: ‎02-01-2012
0

Re: FM modulation with help of DDS

Dear Vitaly

Sorry for such a delay. I was on a trip. Acually I had funny mistake. The carrier value was 8624(1.6MHz) and the maximum and minimum value of sinusoidal was (3932,-3932) so the maximum frequency was above 2.5MHZ and minimum was 750KHz and that is why my output signal was to bad ( I only needed 75KHz deviation) when I solve the problem it was like sinusoidal agian in oscop but when I look at it is spectrum analyzer it was like FM modulation.

I have one question : My clock is 12.160MHz and I want to have FM modulation. Is there any problem That the input of DDS has the sample rate of 3.04MHz and the clock of DDS is 12.04MHz? I think the output is 12.04MHz in sample rate but is it any problem if the input has lower sample rate or not? I hope my question is clear. If it is not let me.

 

Regards

Arash