DDS: прямой цифровой синтез частоты


Леонид Ридико

Фазовращатели

Еще несколько лет назад прямые цифровые синтезаторы частоты (Direct Digital Synthesizers, DDS) были диковинкой и имели ограниченную область применения. Их широкое использование сдерживалось сложностью реализации, а также недостаточно широким диапазоном рабочих частот. Несмотря на то, что в настоящее время наиболее популярны синтезаторы на основе фазовой автоподстройки частоты (PLL), все чаще применяются прямые цифровые синтезаторы, имеющие ряд уникальных возможностей. DDS уже не воспринимаются разработчиками как сложные, непонятные и дорогие устройства.

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

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

Прямой аналоговый синтез (DAS)

Структурная схема прямого аналогового синтезатора показана на рис. 1. Этот метод синтеза называют прямым, потому что в нем отсутствует процесс коррекции ошибки. Следовательно, качество выходного сигнала напрямую связано с качеством опорного сигнала. Фазовый шум такого синтезатора достаточно низок вследствие прямого синтеза. Перестройка по частоте может быть очень быстрой. Одной из важных особенностей DAS-синтезатора на основе смесителя/фильтра является возможность вернуться на любую частоту и продолжать работать в той же фазе, как если бы перехода не было вообще. Этот эффект называют «фазовой памятью». Для перестройки по частоте используется переключаемый банк опорных генераторов. Это удобно, например, для радиостанций с небольшим количеством каналов. Но для перекрытия широкого диапазона частот потребуется большое количество опорных генераторов, что является весьма дорогостоящим решением. Используя делители частоты, имеющие структуру смеситель/фильтр/делитель, можно уменьшить количество необходимых опорных генераторов, хотя и в этом случае возможности перестройки останутся более чем скромными.



Рис. 1. Прямой аналоговый синтезатор частоты (DAS)

Косвенный синтез частоты на основе фазовой автоподстройки (PLL)

Этот метод синтеза использует принцип сравнения частоты и фазы выходного сигнала, формируемого генератором, управляемым напряжением (VCO), с сигналом опорного генератора. Структурная схема такого синтезатора показана на рис. 2. Обнаружение ошибки обеспечивает фазовый детектор (ФД), который работает на определенной частоте FC, называемой частотой сравнения. Эта частота получается путем деления частоты опорного генератора G на N. Частота выходного сигнала вначале делится на M, а затем сравнивается с частотой FC. При отклонении частоты на выходе ФД появляется управляющее напряжение, воздействующее на управляющий элемент VCO до исчезновения отклонения. Поскольку делители частоты имеют целочисленные коэффициенты деления, шаг сетки такого синтезатора определяет частота сравнения. Выходная частота определяется по формуле:

FOUT = FCxM = (FCLK/N)xM = FCLKx(N/M),
где FOUT — выходная частота; FC — частота сравнения; N — коэффициент деления опорной частоты; M — коэффициент деления выходной частоты.



Рис. 2. Синтезатор частоты на основе PLL

Другими словами, PLL-синтезатор умножает опорную частоту в N/M раз. Коэффициенты N и M могут задаваться микроконтроллером, хотя на практике число N при перестройке меняют редко, так как это влечет за собой изменение частоты сравнения (и, соответственно, шага сетки) и требует изменения параметров петлевого фильтра.

Фазовый детектор является источником дополнительных фазовых шумов. Попытка получить малый шаг перестройки частоты вынуждает работать на более низкой частоте сравнения, что требует понижения частоты среза петлевого фильтра. А это еще более увеличивает фазовые шумы. Быструю перестройку частоты в таком синтезаторе обеспечить также очень сложно.

Для получения малого шага перестройки по частоте иногда объединяют в одном синтезаторе несколько петель PLL. Однако многопетлевой PLL-синтезатор является весьма дорогим и громоздким устройством, что сдерживает его широкое применение.

Прямой цифровой синтез (DDS)

Прямой цифровой синтез — относительно новый метод синтеза частоты, появившийся в начале 70-х годов прошлого века. Все описанные методы синтеза доступны разработчикам уже десятилетия, но только в последнее время DDS уделяется пристальное внимание. Появление дешевых микросхем с DDS и удобных средств разработки делает их сегодня привлекательными для разных сфер применения.

DDS уникальны своей цифровой определенностью — генерируемый ими сигнал синтезируется со свойственной цифровым системам точностью. Частота, амплитуда и фаза сигнала в любой момент времени точно известны и подконтрольны. DDS практически не подвержены температурному дрейфу и старению. Единственным элементом, который обладает свойственной аналоговым схемам нестабильностью, является ЦАП. Высокие технические характеристики стали причиной того, что в последнее время DDS вытесняют обычные аналоговые синтезаторы частот. Основные преимущества DDS:

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

Параметры синтезатора частоты очень важны для аппаратуры связи. Являясь сердцем системы настройки, синтезатор в основном определяет потребительские свойства конкретного аппарата. Как с технической, так и с экономической стороны DDS удовлетворяет большинству критериев идеального синтезатора частоты: простой, высокоинтегрированный, с малыми габаритами. Кроме того, многие параметры DDS программно-управляемые, что позволяет заложить в устройство новые возможности. Современные DDS используют субмикронную CMOS-технологию, трехвольтовую логику, миниатюрные корпуса. Одновременно постоянно снижаются цены на них. Все это делает DDS очень перспективными приборами.

С процессами дискретизации и цифро-аналогового преобразования, который имеет место в DDS, связаны и некоторые ограничения:

Структура DDS

Если сразу рассматривать реальную структуру конкретного DDS, то она может показаться необоснованно сложной и запутанной. Для того чтобы та или иная особенность структуры DDS была очевидной, начнем рассмотрение с конечного результата, который нужно получить. Задача DDS — получить на выходе сигнал синусоидальной формы заданной частоты. Поскольку в DDS формирование выходного сигнала происходит в цифровой форме, совершенно очевидна необходимость цифро-аналогового преобразования. Это означает, что в структуре DDS должен быть ЦАП. В любом случае на выходе ЦАП должен присутствовать ФНЧ для подавления образов выходного спектра, повторяющихся с периодичностью FCLK (anti-aliasing filter). Для получения синусоидального сигнала на вход ЦАП необходимо подать последовательность отсчетов функции sin, следующих с частотой дискретизации FCLK. Закон изменения функции sin во времени сложен и цифровыми методами просто не реализуется. Можно, конечно, используя полиномиальное представление, вычислять значения функции sin с помощью АЛУ. Однако такой метод вряд ли будет быстродействующим, а высокое быстродействие как раз является одним из основных требований к DDS. Поэтому наиболее подходящим методом формирования отсчетов функции sin является табличный метод. Перекодировочная таблица (Look Up Table) чаще всего размещается в ПЗУ. Код, который подается на адресные входы ПЗУ, является аргументом функции sin, а выходной код ПЗУ равен значению функции для данного аргумента. Аргумент функции sin или фаза, в отличие от значения функции, меняется во времени линейно. Сформировать линейно меняющуюся во времени последовательность кодов гораздо проще. Это способен сделать простой двоичный счетчик. Поэтому простейший DDS выглядит так: двоичный счетчик формирует адрес для ПЗУ, куда записана таблица одного периода функции sin, отсчеты с выхода ПЗУ поступают на ЦАП, который формирует на выходе синусоидальный сигнал, подвергающийся фильтрации в ФНЧ и поступающий на выход (рис. 3). Для перестройки выходной частоты используется делитель с переменным коэффициентом деления, на вход которого поступает тактовый сигнал с опорного генератора.



Рис. 3. Простейший прямой цифровой синтезатор

Такая структура DDS имеет очевидные недостатки. Основным из них является неудовлетворительная способность к перестройке по частоте. Действительно, поскольку тактовая частота испытывает деление на целое число, шаг перестройки будет переменным, причем чем меньше коэффициент деления, тем больше относительная величина шага. Этот шаг будет недопустимо грубым при малых коэффициентах деления.

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



Рис. 4. Прямой цифровой синтезатор на основе накапливающего сумматора

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

Действительно, если приращение фазы равно единице, то поведение накапливающего сумматора ничем не отличается от поведения двоичного счетчика. Но если приращение фазы будет равно, например, двум, то код фазы будет изменяться вдвое быстрее. При этом на ЦАП коды будут поступать с той же частотой, но будут представлять собой не соседние, а взятые через один отсчеты функции sin. Частота генерируемого сигнала при этом будет вдвое большей, а частота дискретизации останется прежней.



Рис. 5. Работа DDS

Аккумулятор фазы работает с периодическими переполнениями, обеспечивая арифметику по модулю 2N. Такое периодическое переполнение соответствует периодическому поведению функции sin с периодом 2p. Другими словами, частота переполнения аккумулятора фазы равна частоте выходного сигнала. Это частота определяется формулой:

FOUT = MxFCLK/2N,
где FOUT — выходная частота; FCLK — тактовая частота; M — код частоты; N — разрядность аккумулятора фазы.

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

D FOUT = FCLK/2N.

Из этого соотношения следует еще одно уникальное свойство синтезатора частоты на основе накапливающего сумматора: если увеличить разрядность N, то уменьшится шаг перестройки частоты. Причем особых ограничений здесь нет. Например, если разрядность накапливающего сумматора 32 бита, а тактовая частота составляет 50 МГц, то частотное разрешение составит порядка 0,01 Гц! Увеличение разрядности аккумулятора фазы не требует обязательного увеличения разрядности адреса ПЗУ. Для адресации можно использовать лишь необходимое количество старших разрядов кода фазы. Более детально этот вопрос будет рассмотрен ниже.

Для уменьшения объема ПЗУ можно использовать свойства симметрии функции sin. В большинстве DDS в ПЗУ содержится только 1/4 периода. Правда, при этом немного усложняется логика формирования адреса.

Таким образом, в DDS аккумулятор фазы формирует последовательность кодов мгновенной фазы сигнала, которая изменяется линейно (рис. 5). Скорость изменения фазы задается кодом частоты. Далее с помощью ПЗУ линейно изменяющаяся фаза преобразуется в изменяющиеся по синусоидальному закону отсчеты выходного сигнала. Эти отсчеты поступают на ЦАП, на выходе которого формируется синусоидальный сигнал, состоящий из «ступенек». Они фильтруются аналоговым ФНЧ, и на его выходе получается синусоидальный сигнал.

Выходной синусоидальный сигнал восстанавливается из отдельных отсчетов. Целое число отсчетов на период укладывается лишь в частном случае (рис. 6, а). В большинстве случаев это не так, и на каждом новом периоде сигнала отсчеты находятся в новых местах (рис. 6, б). Конечно, картина периодически повторяется, но период повторения может быть самым разным. Он зависит от кода частоты, разрядности аккумулятора фазы и от разрядности используемого кода фазы. В любом случае с равным успехом из последовательности отсчетов будет восстановлен сигнал синусоидальной формы.



Рис. 6. Положение выборок исходного сигнала для разных частот.

Рассмотренная выше структура применяется во всех современных DDS. Объединение в одном чипе быстродействующего ЦАП и собственно DDS (так называемый полный DDS или Complete DDS) позволило получить весьма заманчивую альтернативу обычным синтезаторам на основе PLL. DDS, не имеющие встроенного ЦАП, иногда называют Numerically Controlled Oscillator (NCO), несмотря на то, что DDS не содержит никаких генераторов.

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

Назначение всех этих дополнительных блоков будет описано ниже. Для того чтобы правильно применять DDS, необходимо представлять, как различные факторы влияют на качество выходного сигнала. Для этого рассмотрим отдельно свойства DDS и составляющие качества выходного сигнала.

Источник тактового сигнала

Важнейшими характеристиками источника тактового сигнала являются нестабильность частоты (в PPM), джиттер (в пико- или наносекундах) и фазовый шум (в dBc/Гц, то есть относительно уровня несущей).

Источник тактового сигнала DDS является главным источником фазовых шумов, даже несмотря на эффект их уменьшения в процессе деления частоты в DDS (рис. 7). Фазовый шум выходного сигнала DDS теоретически меньше фазового шума тактового сигнала на 20log(FCLK/FOUT) дБ. На практике это улучшение ограничено шумовым порогом схем DDS. Типичным для собственного фазового шума DDS является значение -130 dBc/Гц при расстройке на 1 кГц от выходной частоты. Если источник тактового сигнала имеет меньшие фазовые шумы, на выходе DDS все равно не может быть получено их меньшее значение. По этому эту величину называют «остаточный фазовый шум».



Рис. 7. Фазовый шум и джиттер на выходе DDS

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

Некоторые типы DDS, которые способны работать на высоких тактовых частотах, имеют встроенный умножитель частоты на основе PLL. Для высокоскоростных DDS он позволяет использовать менее высокочастотный опорный генератор или вовсе обойтись уже имеющимися в системе тактовыми частотами. Примерами таких DDS могут служить AD9852 и AD9854, где тактовая частота может быть умножена на 4…20, а AD9851 имеет умножитель на 6. Однако использование умножения тактовой частоты не всегда желательно, так как при этом фазовый шум тактового сигнала увеличивается во столько же раз, во сколько раз умножается частота. Более того, выше частоты среза петлевого фильтра PLL может наблюдаться пик фазовых шумов (рис. 8). Несмотря на ухудшение Некоторые типы DDS, которые способны работать на высоких тактовых частотах, имеют встроенный умножитель частоты на основе PLL. Для высокоскоростных DDS он позволяет использовать менее высокочастотный опорный генератор или вовсе обойтись уже имеющимися в системе тактовыми частотами. Примерами таких DDS могут служить AD9852 и AD9854, где тактовая частота может быть умножена на 4…20, а AD9851 имеет умножитель на 6. Однако использование умножения тактовой частоты не всегда желательно, так как при этом фазовый шум тактового сигнала увеличивается во столько же раз, во сколько раз умножается частота. Более того, выше частоты среза петлевого фильтра PLL может наблюдаться пик фазовых шумов (рис. 8). Несмотря на ухудшение характеристик, встроенный умножитель частоты удешевляет систему и может быть использован в большинстве случаев. Для особо критичных к чистоте спектра выходного сигнала приложений требуется непосредственное тактирование DDS от высококачественного опорного генератора.

Значение выходной частоты и частотное разрешение

Выше приводилась формула, связывающая тактовую частоту, код частоты и разрядность аккумулятора фазы с выходной частотой. Можно сказать, что тактовая частота делится на величину 2N/M. Поскольку N и M — целые числа, из формулы следует, что требуемая выходная частота, например 20 МГц, точно может быть получена далеко не всегда. В то же время может быть получена весьма близкая частота, отстоящая от требуемой не далее шага перестройки, например 19,9999999954 МГц или 20,000000009 МГц. Такая погрешность вряд ли имеет значение на практике. Если все же по каким-то причинам требуется получить точное значение частоты, то сделать это можно соответствующим выбором тактовой частоты. Существует также гибридный синтезатор, где в качестве опорного генератора DDS используется VCXO, подстраиваемый с помощью PLL в зависимости от отклонения выходной частоты. Такая структура позволяет получить на выходе точные значения частот, правда, шаг сетки будет такой же, как и у обычных PLL-синтезаторов. Вследствие применения VCХO фазовый шум такого гибридного синтезатора будет намного меньше, чем у обычного PLL-синтезатора.

Скорость перестройки частоты

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



Рис. 8. Типичный фазовый шум DDS

В некоторых случаях, например при осуществлении FSK-модуляции, требуется максимальная скорость перестройки. Для таких целей во многих DDS имеются два отдельных регистра частоты, которые могут переключаться логическим сигналом. Этот сигнал фактически является модуляционным входом FSK. Примером таких DDS являются AD9852, AD9853, AD9835 и др.

Иногда могут возникнуть проблемы в связи с тем, что резкое переключение с одной частоты на другую при FSK модуляции вызывает появление побочных продуктов преобразования, которые расширяют спектр выходного сигнала. Для решения этой проблемы применяют метод, называемый Ramped-FSK. Правильнее не резко переключаться между частотами, а плавно переходить с одной частоты на другую. AD9852 имеет встроенную возможность осуществлять Ramped-FSK, и пользователь может программировать скорость перехода с одной частоты на другую.

Усечение кода фазы

Аккумулятор фазы DDS имеет типичную разрядность 32 или 48 бит. Но только часть разрядов используется для адресации ПЗУ с таблицей синуса. Это вынужденная мера, вызванная необходимостью уменьшения размеров ПЗУ до разумных пределов. Действительно, если бы использовались все 32 бита, а каждый отсчет в ПЗУ кодировался бы одним байтом, то необходимый объем ПЗУ составил бы 4 Гбайта! Поэтому для адресации ПЗУ используется только несколько старших разрядов аккумулятора фазы. Усечение кода фазы является внутренней операцией DDS и извне изменить ничего нельзя. Отбрасывание младших битов приводит к возникновению ошибки в представлении фазы. Как следствие, это приводит к появлению погрешности амплитуды при преобразовании фазы в амплитуду, которое имеет место в DDS. Более того, эта погрешность является периодической, так как в зависимости от кода частоты состояния аккумулятора фазы повторяются чаще или реже. В результате в спектре выходного сигнала появляются отдельные составляющие, вызванные усечением кода фазы. На распределение фаз и амплитуд этих составляющих влияют три фактора:

При некоторых значениях кода частоты составляющие, вызванные усечением кода фазы, отсутствуют вовсе, в то время как при некоторых других значениях кода частоты эти составляющие имеют максимальный уровень. Когда величина A-P равна 4 и более (обычное значение для реальных DDS), максимальный уровень составляющих, вызванных усечением кода фазы, достаточно точно можно определить как –6,02ґP дБ. Например, 32-разрядный DDS с 12-разрядным кодом фазы имеет максимальный уровень этих составляющих –72 дБ. Причем наихудшим является случай, когда наибольший общий делитель T и 2(A-P) равен 2(A-P-1), другими словами, когда в отбрасываемой части кода фазы старший бит всегда равен 1, а все остальные биты — 0. Другой предельный случай соответствует отсутствию составляющих. При этом наибольший общий делитель T и 2(A-P) должен быть равен 2(A-P), другими словами, когда в отбрасываемой части кода фазы всегда все нули. Все иные значения кода частоты дают промежуточные уровни составляющих, вызванных усечением кода фазы.

Частотное распределение составляющих, вызванных усечением кода фазы, не может быть проанализировано так просто, как их максимальная амплитуда. Рассматривая вопрос на качественном уровне, можно сказать, что усечение фазы приводит к появлению ее ошибки, величина которой меняется по пилообразному закону. Сигнал ошибки появляется в результате отбрасывания битов кода фазы. Поэтому для того, чтобы вычислить частоту этого сигнала, можно рассмотреть только ту часть аккумулятора фазы, которая отбрасывается при усечении ее кода. Разрядность этой части аккумулятора равна числу отбрасываемых битов (B). Соответственно, она способна воспринимать только младшую часть кода частоты с разрядностью В. Тогда частота пилообразного сигнала ошибки будет равна

FCLKx(ET/2B),
где FCLK — частота дискретизации; ET — эквивалентный код частоты, представленный значением отброшенных битов при выполнении усечения полного кода частоты; B — разрядность ET (количество отброшенных битов).

При этом необходимо учитывать, что частота пилообразного сигнала или ее гармоники могут лежать на частотах выше FCLK/2. В этом случае они способны попасть в рабочую область частот в результате зеркального отображения спектра относительно частот n·FCLK. На рис. 9 приведены зависимости уровня побочных компонентов от разрядности кода фазы для ЦАП разной разрядности. Неограниченно наращивать разрядность кода фазы нет необходимости еще и потому, что снижение уровня побочных компонентов происходит только до определенного значения, зависящего от уровня шумов квантования ЦАП. На практике разрядность кода фазы должна быть на 2–3 разряда больше, чем разрядность примененного ЦАП.



Рис. 9. Уровень побочных компонентов в зависимости от разрядности кода фазы

Следует отметить, что существуют методы уменьшения влияния усечения кода фазы, основанные на добавлении к фазовой информации псевдослучайного шума. Таким образом, удается уменьшить энергию соответствующих побочных компонентов, зато при этом увеличивается общий шумовой порог.

Продолжение следует

Леонид Ридико
wubblick@yahoo.com