Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: спектр DDS
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
mcaffee
Всем привет! Этот пост обращен к тем, кто знает о методе прямого цифрового синтеза (DDS), надеюсь таких не малоwink.gif. Я вот столкнулся с такой проблемой: нужно рассчитать подавление боковых амплитудных составляющих относительно главного максимума(соответствующего синтезируемой выходной частоте) и сам спектр выходного сигнала в зависимости от поступающего на вход накопительного сумматора кода частоты. На практике убедился, что в зависимости от поступающего входного кода частоты,и спектр выходного сигнала, и подавление боковых амплитудных составляющих получаются разным! Может подскажите, кто чем сможет, как произвести теоретический расчет?wink.gif
Bad0512
Цитата(mcaffee @ Jul 16 2014, 05:54) *
Всем привет! Этот пост обращен к тем, кто знает о методе прямого цифрового синтеза (DDS), надеюсь таких не малоwink.gif. Я вот столкнулся с такой проблемой: нужно рассчитать подавление боковых амплитудных составляющих относительно главного максимума(соответствующего синтезируемой выходной частоте) и сам спектр выходного сигнала в зависимости от поступающего на вход накопительного сумматора кода частоты. На практике убедился, что в зависимости от поступающего входного кода частоты,и спектр выходного сигнала, и подавление боковых амплитудных составляющих получаются разным! Может подскажите, кто чем сможет, как произвести теоретический расчет?wink.gif

Теоретический расчёт чего? Уровня гармоник для соответствующего кода частоты? Или максимального уровня гармоник в диапазоне перестройки кода частоты? В принципе моделька DDS легко собирается в симулинке, там же можно и спектр поглядеть. Если нужны точные цифры - тогда чистый матлаб.
mcaffee
Цитата(Bad0512 @ Jul 16 2014, 07:30) *
Теоретический расчёт чего? Уровня гармоник для соответствующего кода частоты? Или максимального уровня гармоник в диапазоне перестройки кода частоты? В принципе моделька DDS легко собирается в симулинке, там же можно и спектр поглядеть. Если нужны точные цифры - тогда чистый матлаб.

Да, можно, и в матлабе, и в симулинке промоделировать!) Но хочется на бумаге, так сказать, все это рассчитать, а потом и сравнить теорию с моделированием!)
Fat Robot
Теория простейшая:

У вас есть генератор фазы - функция, генерирующая последовательность отсчетов в зависимости от параметров и .

От этой последовательности берется функция а потом, то, что получилось, квантуется.

Далее для анализа от этой квантованной последовательности -функций берете от нее дискретное, а можно и непрерывное преобразование Фурье.

Потом обязательно аналитически на бумаге для любых допустимых и ищете максимум на всей области определения за исключением -окрестности аргумента, соответствующего основной гармонике, т.е. .

Всё. Плёвое дело. Тыщщу раз такое проделывал. Шучу. Нет, правда.

Незначительные трудности в аналитических расчетах на бумаге возникают, когда вводится например dithering или интерполяция, но вы обязательно справитесь. Ведь "усердие всё превозмогает".

Если же основной вашей задачей при анализе синтезатора является получение результата, а не демонстрация наукообразия вашей деятельности и/или бездарнейшая трата времени, то сперва можно очень грубо оценить разрядность аккумулятора, ширину шин адреса и данных lut (если есть задача получения этих параметров), а потом моделировать, как вам посоветовали. Перебираете значения приращения фазы в окрестности такой выходной частоты, которая дает с частотой отсчетов несократимую дробь, а затем выводите все это на один график, или тривиальным образом автоматизируете анализ результатов.

Нажмите для просмотра прикрепленного файла

Здесь, например, показаны результаты 20 прогонов для диапазона нормализованных частот , при этом в каждом прогоне выбрана случайная равномерно распределенная начальная фаза из диапазона (норм.)

Это экономит время, силы, и проверка каждого шага по оптимизации вашего dds выливается всего лишь в серию прогонов моделирования. Заодно будет понимание, что вы делаете правильно, а что нет, уже с прицелом на реализацию.



Цитата(mcaffee @ Jul 16 2014, 06:21) *
Да, можно, и в матлабе, и в симулинке промоделировать!) Но хочется на бумаге, так сказать, все это рассчитать, а потом и сравнить теорию с моделированием!)
shurey
Вот здесь, в четвертом разделе, расписан теоретический расчет спуров возникающих за счет округления фазы и квантования самих отсчетов:
http://www.analog.com/static/imported-file..._rev12-2-99.pdf
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.