Forum Discussion
11 Replies
- Altera_Forum
Honored Contributor
Are you using a custom board or an evaluation board? What is the hardware architecture that you are using?
- Altera_Forum
Honored Contributor
- Altera_Forum
Honored Contributor
Hi thanks for replay, I am using Altera Cyclone-II device(EP2C8T144C8)
- Altera_Forum
Honored Contributor
currently we are I am using Altera Cyclone-II device(EP2C8T144C8), but in future I have to fit this logic in Altera CPLD Device
- Altera_Forum
Honored Contributor
OK I was also asking you which kind of digital-to-analogue converter you are using for the tone generation.
- Altera_Forum
Honored Contributor
I am using 14-bit DAc (AD9736)
- Altera_Forum
Honored Contributor
A simple way could be to use an altsyncram block and use it in ROM mode. Then you have to initialize it with a mif file that contains the samples of a sinuosid period. You can vary the frequency of the output tone by changing the frequency of the clock which sequentially allows the read from the ROM. Also you can work by changing the address increment to modulate the output frequency.
If you want to use the DAC full resolution you can use 14-bit wide words in your altsyncram block. Cheers OD - Altera_Forum
Honored Contributor
Hi OrchestraDirector
Certainly an Orchestra Director is the best guy to synthesize all sorts of tones. You are right, and the second method of using one clock is more practical. You can then generate frequencies with fine steps at any rate below .5Fclk using a modulo adder to address the LUT.Normally designers use a wide adder but then use few of its MSBs as LUT address. See AnalogDevices tutorial(DDS) Kaz - Altera_Forum
Honored Contributor
Hi,
Yes same Logic I am using, Now I am trying to generate base band data for particular tone using below equation in matLab and Generated Base band data is taken in ROM and data is accessed with SAMPLING frequency(Fs). tone_data=sin(2*pi*row_freq*time_period)+sin(2*pi*col_freq*time_period) - Altera_Forum
Honored Contributor
--- Quote Start --- Hi, Yes same Logic I am using, Now I am trying to generate base band data for particular tone using below equation in matLab and Generated Base band data is taken in ROM and data is accessed with SAMPLING frequency(Fs). tone_data=sin(2*pi*row_freq*time_period)+sin(2*pi*col_freq*time_period)--- Quote End --- I will follow that by(for 14 bits signed): tone_data = round((2^13-1) * tone_data/max(abs(tone_data))); also make sure of phase continuity i.e. the last value of tone_data must wrap-up correctly with first data. kaz