Prev: Xilinx Pipelined/Streaming FFT Architecure?
Next: Shannon's upper bound for AWGN channel, but what about Multipath?
From: Vladimir Vassilevsky on 6 Apr 2010 11:50 Muzaffer Kal wrote: > On Mon, 5 Apr 2010 23:46:10 0700 (PDT), HardySpicer > <gyansorova(a)gmail.com> wrote: > > >>On Apr 6, 11:15 am, "csilva1975" <cesard(a)n_o_s_p_a_m.hotmail.com> >>wrote: >> >>>Hi all! >>> >>>As the subject states, i want to generate a FM modulated signal in DSP, or >>>better yet a NBFM signal. >>> >>>Reading thru this newsgroup I have found a very usefull paper at >>> >>>h**p://www.claysturner.com/dsp/2nd_OSC_paper.pdf >>> >>>that describes how to generate sine and cosine waves. Many thanks to the >>>author ! >>>However, since the input signal is 12 bits, I whould need 1024 diferent >>>matrixes to modulate the output. >>>I have found another sine wave generator >>>(h**p://www.bnm.at/sinegenerationtutorial/) that is simpler and I don't >>>need to store matrixes, unfortunatly it becomes very instable bellow the >>>2*pi/10 frequency. >>> >>>Is there another/simpler way of digitaly generate a FM signal on a >>>microcontroller ? >>> >>>Something about the system I'm designing: >>> >>>The modulating input should be arround 3 Khz (voice) sampled at 12 bits. >>>The desired center frequency 6540 hz with a deviation of +/ 2500 hz. If my >>>math and knowlage doesn't fail me, the BW of the output signal should be >>>arround 11 Khz. >>>The sampling rate is 28847 hz (yes, I know this is a very odd number). >>> >>>Some pointer are greatly apreciated. >>> >>>Thanks. >>>Cesar >>> >>>PS  I'm sorry for my spelling, but english is not my primary language. >> >>You know, one of these days a DSP engineer is gonna discover analogue >>electronics. >>There will be such a Eureka...I can solve a problem with a few >>transistors...wow!! > > > And find out that at 32nm you can't make the kind of transistor you > need? ;) This shouldn't be a problem; an FM modulator could be build from few logic gates. VLV
From: Tauno Voipio on 6 Apr 2010 12:27 On 6.4.10 2:15 , csilva1975 wrote: > Hi all! > > As the subject states, i want to generate a FM modulated signal in DSP, or > better yet a NBFM signal. > > Reading thru this newsgroup I have found a very usefull paper at > > h**p://www.claysturner.com/dsp/2nd_OSC_paper.pdf > > that describes how to generate sine and cosine waves. Many thanks to the > author ! > However, since the input signal is 12 bits, I whould need 1024 diferent > matrixes to modulate the output. > I have found another sine wave generator > (h**p://www.bnm.at/sinegenerationtutorial/) that is simpler and I don't > need to store matrixes, unfortunatly it becomes very instable bellow the > 2*pi/10 frequency. > > Is there another/simpler way of digitaly generate a FM signal on a > microcontroller ? > > Something about the system I'm designing: > > The modulating input should be arround 3 Khz (voice) sampled at 12 bits. > The desired center frequency 6540 hz with a deviation of +/ 2500 hz. If my > math and knowlage doesn't fail me, the BW of the output signal should be > arround 11 Khz. > The sampling rate is 28847 hz (yes, I know this is a very odd number). > > Some pointer are greatly apreciated. > > Thanks. > Cesar > > PS  I'm sorry for my spelling, but english is not my primary language. Your deviation is 38% of carrier frequency and modulation index from 1 to 10. This is hardly NBFM. The carrier frequency is too small for good FM of an audio signal.  Tauno Voipio, OH2UG tauno voipio (at) iki fi
From: Clay on 6 Apr 2010 14:02 On Apr 5, 7:15 pm, "csilva1975" <cesard(a)n_o_s_p_a_m.hotmail.com> wrote: > Hi all! > > As the subject states, i want to generate a FM modulated signal in DSP, or > better yet a NBFM signal. > > Reading thru this newsgroup I have found a very usefull paper at > > h**p://www.claysturner.com/dsp/2nd_OSC_paper.pdf > > that describes how to generate sine and cosine waves. Many thanks to the > author ! > However, since the input signal is 12 bits, I whould need 1024 diferent > matrixes to modulate the output. > I have found another sine wave generator > (h**p://www.bnm.at/sinegenerationtutorial/) that is simpler and I don't > need to store matrixes, unfortunatly it becomes very instable bellow the > 2*pi/10 frequency. > > Is there another/simpler way of digitaly generate a FM signal on a > microcontroller ? > > Something about the system I'm designing: > > The modulating input should be arround 3 Khz (voice) sampled at 12 bits. > The desired center frequency 6540 hz with a deviation of +/ 2500 hz. If my > math and knowlage doesn't fail me, the BW of the output signal should be > arround 11 Khz. > The sampling rate is 28847 hz (yes, I know this is a very odd number). > > Some pointer are greatly apreciated. > > Thanks. > Cesar > > PS  I'm sorry for my spelling, but english is not my primary language. Hello Cesar, Both my 1st and 2nd oscillator papers describe a method for easily modulating the oscillator's frequency to generate FM. You set up a quadrature osc at you center frequency (carrier) and then after you do each iteration on the carrier frequency, you then use a 2nd matrix (described) in the 1st paper to advance the same state variables that the carrier's matrix works on. Then finally do a simple amplitude correction. Also described in the papers. Happy coding. Clay
From: csilva1975 on 6 Apr 2010 19:05 >Hello Cesar, > >Both my 1st and 2nd oscillator papers describe a method for easily >modulating the oscillator's frequency to generate FM. You set up a >quadrature osc at you center frequency (carrier) and then after you do >each iteration on the carrier frequency, you then use a 2nd matrix >(described) in the 1st paper to advance the same state variables that >the carrier's matrix works on. Then finally do a simple amplitude >correction. Also described in the papers. > >Happy coding. >Clay > Hello everybody! First let me thank everyone that posted a reply. It really helped! I was starting to feel that I was out of options, but after reading your posts and links, I will try new things. Replying in order: John and Andrea: The LUT should be an option to consider. I didn't know the techique to use a table to store the values of sine and another to store the diferences. Will definitly give it a go. Will also try the Ollie Niemitalo algorithm since the microcontroller I'm working has 16 bit fixed point and a single clock MAC (Multiply And Accumulate). HardySpicer: I had a really good laugh with your transistor post. Don't feel bad. A single DSP chip has millions of transistors in it. Also, after the signal is generated it will be upmixed with a 461,538 Khz signal to give an output at 455 khz to be filtered by a ceramic filter (hello analog world). Tauno: Your post really confused me. Since beta=deltaF/Fm, and deltaF=2500 and Fm=3000, beta =0.833(3) hence a NBFM. Please correct me if I'm wrong. This is just an hobby of mine. Clay: Thank you for your post. I have learn much with your papers. I'm using a Coupledstandard quadrature oscillator, as decribed in them, to generate the SSB signals. If I understand your papers correcly, and since I have a modulating signal of 12 bits (or even 8 bits) I would need 1024 (or 256) diferent precalculated matrixes to advance the state variables, or calculate it in real time. I only have 4K of code space so this solution is not viable. Is this correct ? Cheers. Cesar
From: Tauno Voipio on 7 Apr 2010 02:09 On 7.4.10 2:05 , csilva1975 wrote: >> Hello Cesar, > Tauno: > Your post really confused me. > Since beta=deltaF/Fm, and deltaF=2500 and Fm=3000, beta =0.833(3) hence a > NBFM. > Please correct me if I'm wrong. This is just an hobby of mine. The range of voice signals can be taken as 250 to 3000 Hz. For the minimum modulation frequency, the modulation index will be 10  remember the deviation comes from the amplitude f the modulating signal and not its frequency. As you intend to upconvert the signal, have you considered creating two orthogonal components (I and Q, or Hilbert) of the audio and using them to create phase modulated signal at the conversion process?  Tauno Voipio tauno voipio (at) iki fi
First

Prev

Next

Last
Pages: 1 2 3 4 Prev: Xilinx Pipelined/Streaming FFT Architecure? Next: Shannon's upper bound for AWGN channel, but what about Multipath? 