ГлавнаяСтатьиЭлектроника → О принципе действия DDS синтезатора

О принципе действия DDS синтезатора

11 апреля 2013 года
Ключевые слова: DDS , теория

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

Дискретизация и теорема Котельникова

Читатель, вероятно, знаком с двухполосной модуляцией с подавленной несущей. Этот тип сигнала называется DSB (от англ. сокр. Double Side Band). Математически он получается как результат произведения звукового сигнала и несущей.

Пусть:
$$x_1=a \cdot cos(\omega{}_0 t) $$ - несущая,
$$x_2=b \cdot cos(\Omega t)$$ - модуляция

Где $$ \omega_0=2\pi f_0 $$ - круговая частота несущей, $$ \Omega=2\pi F $$ - круговая частота модуляции

Тогда припомнив школьную тригонометрию получим:
$$y_{DSB}={x_1}\cdot{x_2}=\frac{ab}{2}cos(\omega_0-\Omega)t +\frac{ab}{2}cos(\omega_0+\Omega)t$$

Т.е. спектр DSB сигнала состоит из двух частот, расположенных симметрично относительно подавленной несущей.

Теперь возьмем в качестве несущего сигнала не синусоиду а последовательность очень коротких импульсов. Ее спектр состоит из постоянной составляющей и множества гармоник основной частоты:

$$ x_1=a_0+a_1 \cdot cos(\omega_0 t)+a_2 \cdot cos(2 \omega_0 t)+...$$

Если перемножить этот сигнал с сигналом модуляции то образуется последовательность дискретных отсчетов. Ее спектр станет таким, как изображено на рисунке.

Пропустим наши отсчеты через идеальный фильтр низких частот с частотой среза   $$ \omega_s=\omega_0 /2$$ . Тогда на выходе мы опять получим исходный НЧ сигнал:   $$ x=a_0\cdot b\cdot cos(\Omega t)$$
Естественно, это возможно если частота $$ \Omega<\omega_0/2$$ иначе произойдет "aliasing" или наложение спектров.

Вывод — для точного хранения и восстановления любого аналогового сигнала вовсе не обязательно запоминать абсолютно все его значения. Достаточно хранить лишь его дискретные отсчеты. Пропустив их через идеальный ФНЧ мы точно восстановим сигнал, при условии, что его максимальная частота не превышает половину частоты дискретизации. В этом и состоит физический смысл теоремы Котельникова.

Погрешности дискретизации

В реальности все не так хорошо и операции дискретизации и фильтрации всегда вносят частотные и фазовые искажения.
Во-первых в природе нет ФНЧ с идеально прямоугольной АЧХ. Во-вторых, как видно из рисунка, в нашей простенькой теории значения сигнала во время выборки меняются. Но на самом деле АЦП и ЦАП работают со строго дискретными величинами кода, т.е. сигнал во время выборки усредняется, и тем сильнее, чем больше время выборки.
Это приводит к спаду АЧХ в области верхних частот по закону [1]:

$$ A(f)=\frac { sin \left( \pi f/ f_0 \right) } {\left( \pi f / f_0 \right)} $$

Максимальная частота сигнала на которой спад АЧХ равен 3 дБ ( т.е. A(Fmax)=0,707 ) FMAX=0.44 f0.
Практически выбирают $$ f_{max}=f{}_{0} /{3} $$

DDS синтезатор

Способ получения аналогового сигнала из его дискретных отсчетов называют прямым цифровой синтезом ( англ. Direct Digital Synthesis, DDS ). Исходный сигнал оцифровывается и его отсчеты записывают в память микроконтроллера. Далее они последовательно считываются из памяти с тактовой частотой $$ f_0 $$   и поступают в ЦАП. На его выходе ставят ФНЧ с частотой среза $$ f_0 / 2 $$ который убирает ступеньки и высшие гармоники; в результате восстанавливается исходная форма сигнала.

Допустим надо получить синусоиду. Ее отсчеты xi   храним в ПЗУ, номер i считает счетчик. Фактически, номер это адрес ПЗУ где хранятся отсчеты. Счетчик называют аккумулятором фазы, поскольку хранимое в нем число однозначно определяет фазу.
N разрядный двоичный счетчик может сосчитать 2N значений (числа от 0 до 2N-1). Фаза меняется от 0 до 2π. Следовательно она равна   $$ \varphi_i= {2\pi} \frac {i}{ 2^N } $$
Частота синусоиды есть приращение ее фазы по времени: $$ \omega=2 \pi f= \frac {\triangle \varphi}{\triangle t} = {2\pi} \frac {\triangle i}{2^N}\,\frac{1}{T_0} $$
В итоге частота синусоиды $$ f $$ задана приращением номера за один такт, разрядностью счетчика и тактовой частотой:
$$ f=\frac{\triangle i}{2^N} f_0$$

Минимальному приращению номера на такте ▵ i=1 соответствует частота fmin=f0 /2N , а максимальному ▵ i=2N-1 частота f0 /2.
Повышая разрядность счетчика можно добиться чрезвычайно малого приращения фазы а следовательно и отличного разрешения по частоте. Например, если N=24 разрядам а тактовая частота 10 МГц, то максимальная частота синусоиды равна 5 МГц, а минимальная всего 0,6 Гц !


Влияние усечения кода аккумулятора.

Разрядность аккумулятора фазы обычно составляет 24, 32 или 48 бит. В то же время быстродействующие ЦАП имеют от 8 до 14 разрядов. Следовательно младшие биты кода аккумулятора отбрасываются. Это приведет к погрешности амплитуд отсчета (шумам квантования) и появлению в спектре побочных колебаний. Анализ и минимизация этого явления технически сложная задача [1,2,3].
Ориентировочно отношение мощности сигнала и шума примерно равно   $$ SNR=6 N $$   где SNR - отношение сигнал шум в дБ, N - число разрядов ЦАП.

Литература

  1. Г.И. Волович. Схемотехника аналоговых и аналого-цифровых электронных устройств. 2-е изд, испр. — М.: Додека, 2007. — 528c. ил./ Стр.419-423,  434.
  2. Л.И. Ридико. DDS: Прямой цифровой синтез частоты.
  3. В. Макаренко Синтезаторы частоты прямого цифрового синтеза. Компоненты для построения беспроводных устройств связи, часть 7.// Электронные компоненты и системы. №1, 2010. Стр. 34-46.

Комментарии

#1. 5 марта 2017 года, 09:35. пишет:
Всем привет приобрел приобрел синтез на китайский на AD9850, не могу ума дать. Какие вбить параметры для подключение трансивера у которого кварц 8Мгц,т.е. На примере хотябы 7.000-7.150 Мгц Помогите люди добрые.
есть изменяемые параметры
MIN_RX_DDS_FREQ=15.000 Мгц с учетом пч на кварце 8.000 Мгц
MAX_RX_DDS_FREQ=15.150 Мгц
SSB_OFFSET=? тюниг
CW_OFFSETF=? тюнинг
OFFSET_FREQ=смещение минус 8.000Мгц для правильного отображения частоты на эекране
DDS-SYSTEM-CLK=??? предел от 30.000 до 190.000 Мгц А это что за параметр и что туда вбить??? хрен пойму но от него все зависит!!!
#2. 6 марта 2017 года, 16:21. Андрей пишет:
Добрый день Денис. Я когда-то собирал макет DDS генератора на AD9834.
Могу предположить, что DDS-SYSTEM-CLK это частота внешнего кварцевого генератора, который подключен к выводу 9 (CLKIN) AD9850 и тактирует эту микросхему.
По идее его частота должна быть в 2, а лучше в 3 раза выше максимальной рабочей частоты, но не превышать максимальную частоту микросхемы. Отсюда и получается диапазон 30-190 МГц. Я не знаю, входит ли этот генератор в состав Вашего синтезатора, или его надо покупать отдельно.
Например, в моем случае нужен был отдельный генератор 66 МГц и DDS-SYSTEM-CLK=66.000 Мгц.
CW и SSB сдвиги частоты в телефонном и телеграфном режиме, скорее всего 0 и 1 кГц соответственно.

Оставьте свой комментарий

Ваше имя:

Комментарий:

Формулы на латехе: $$f(x) = x^2-\sqrt{x}$$ превратится в $$f(x) = x^2-\sqrt{x}$$.
Для выделения используйте следующий код: [i]курсив[/i], [b]жирный[/b].
Цитату оформляйте так: [q = имя автора]цитата[/q] или [q]еще цитата[/q].
Ссылку начните с http://. Других команд или HTML-тегов здесь нет.

Сколько будет 59+7?