АКИП-3403, АКИП-3404 и АКИП-3405 — современные USB-генераторы сигналов произвольной формы с сегментированной памятью. Часть 2

№ 2’2010
PDF версия
За последние 5 лет мы уже несколько раз рассказывали в журнале «Компоненты и технологии» о генераторах сигналов произвольной формы. Это были так называемые настольные лабораторные генераторы АКИП-3402, ГСС-93/1, ГСС-93/2, а также целая серия генераторов компании Tabor. Все эти генераторы имеют разные параметры, разные возможности по формированию стандартных сигналов и сигналов произвольной формы, но у них есть одно общее свойств — это лабораторные, самостоятельно функционирующие средства измерений.

Окончание. Начало в № 1’2010

Режим DDS

Режим DDS предназначен для формирования частотно-модулированных и фазомодулированных выходных сигналов. Созданные в этом режиме USB-генераторами АКИП модулированные сигналы практически не имеют аналогов, поскольку обладают не только сложной формой несущей, но и сложной произвольной формой модулирующего сигнала.

Как уже отмечалось в [1], принцип формирования сигнала произвольной формы методом прямого синтеза подразумевает, что в память генератора записываются сразу все отсчеты, составляющие выходной сигнал, и сигнал воспроизводится «по кругу» от первого отсчета до последнего. Особенностью многоканальных генераторов АКИП-3404 и АКИП-3405 является то, что каналы генератора могут иметь независимые режимы формирования сигналов — любой из каналов может находиться в режиме AWG, в то время как любой другой канал будет формировать выходные сигналы в режиме DDS.

В моделировании сигнала в режиме DDS есть несколько особенностей.

  1. Несущий сигнал, как и в режиме AWG, имеет структуру моделирования от старшего уровня к младшему: форма сигнала — сегменты — компоненты. Разница состоит в том, что в данном случае создание нескольких форм сигнала не имеет смысла, поскольку для этого режима сегментирования памяти не существует. То есть для несущего сигнала существует всего одна форма сигнала, которая в своем составе может иметь несколько сегментов.
  2. Форма сигнала может иметь несколько последовательных сегментов. Число сегментов и длина памяти отдельного сегмента определяются исходя из того, что максимальная длина всех сегментов не должна превышать 2048 точек (рекомендуемая минимальная длина сегмента 8 точек).

На самом деле столь небольшие значения длины памяти для модулирующего сигнала не должны пугать пользователя, поскольку в программном редакторе моделируется только структура формы сигнала, временные и частотные параметры носят относительный характер. Подавляющая часть внутренней памяти генератора используется для создания формы ЧМ-сигнала и ФМ-сигнала, которые в отличие от амплитудно-модулированного сигнала имеют во временной области гораздо более сложную форму. Конкретная частота несущей сигнала для частотной или фазовой модуляции будет задаваться в окнах управления модуляцией. Амплитуда сигнала, заданная в редакторе, полностью соответствует выходным значениям. Аналогично режиму AWG, детально рассмотренному в [1], в качестве компоненты для построения сегментов сигнала можно выбрать одну из стандартных форм сигнала из предлагаемого в меню списка (постоянное напряжение, синус, косинус, треугольный, прямоугольный, пилообразный, линейно нарастающий, линейно спадающий, импульсный, sin(x)/x, экспоненциальный, качающейся частоты). Также форма компоненты может быть загружена из внешнего файла или задана математической формулой.

Так же, как и ранее, на форму сигнала или ее отдельную область, выделенную курсорами, возможно наложить шум или применить фильтрацию (рис. 1).

Рис. 1. Окно моделирования формы сигнала, состоящего из двух сегментов с фильтрацией

Для формирования модулирующего сигнала используются две составляющие — постоянная и сегмент, это аналогично формированию амплитудно-модулированного сигнала (рис. 15 в [1]). Разница состоит в том, что при использовании «постоянной» возможно формировать манипулированные сигналы, в которых частота или фаза изменяется дискретно. Это, в частности, позволяет моделировать так называемые Hop signals — сигналы со скачкообразным изменением частоты или фазы.

Существенные отличия режимов DDS и AWG проявляются при формировании модулирующего сигнала. Как уже отмечалось, для моделирования ЧМ-сигналов и ФМ-сигналов в режиме DDS требуется больше аппаратных ресурсов для создания сложных форм сигналов (рис. 2). В этом режиме для получения наиболее оптимальных результатов требуется учитывать особенности аппаратной части USB-генераторов АКИП. Очевидно, что для создания модулированного сигнала с малым шагом перестройки по закону модулирующего сигнала требуется больше внутренней памяти для конструирования сложного сигнала. И наоборот — при грубой перестройке несущего колебания будет задействовано меньше памяти и общий период повторения сигнала может быть получен более «длинным». Для этого в программе можно выбрать число шагов перестройки модулирующего колебания посредством установки так называемого фактора прореживания Х. Время изменения одного шага частоты (или фазы) для генераторов АКИП будет определяться формулой:

t = (T/100)×Х, (1)

где t — время изменения шага; Т — длительность сегмента; Х — фактор прореживания.

Рис. 2. Пример создания формы модулирующего сигнала, состоящего из постоянной 100 кГц, сегмента одного периода синусоидального колебания, сегмента трех периодов треугольного сигнала, постоянной 100 кГц и одного полупериода треугольного сигнала

Из (1) следует, что число точек измерения частоты или фазы N будет определяться как:

N = 100/X (2)

Следует также принимать во внимание, что поскольку максимальная частота дискретизации в режиме DDS составляет 125 МГц, то минимальная длительность перестройки частоты или фазы не может быть менее 8 нс.

На рис. 3 показаны осциллограмма частотно-модулированного сигнала (верхний сигнал) и демодулирование этого сигнала при помощи осциллографа LeCroy. Демодулированный сигнал представлен на рис. 3 в нижней части экрана.

Рис. 3. Осциллограмма частотно-модулированного сигнала (верхний сигнал) и демодулирование этого сигнала при помощи осциллографа LeCroy (нижний сигнал)

Интересной особенностью режима DDS является функция коррекции АЧХ сигнала. В режиме коррекции АЧХ пользователь имеет возможность уменьшать (!) амплитуду в условных пределах от 0 до 1. Пользователь моделирует форму АЧХ исходя из следующих условий:

  1. определение центральной частоты коррекции АЧХ;
  2. определение ширины полосы частот, в которой будет производиться коррекция АЧХ;
  3. определение уровня подавления сигнала до начала полосы коррекции;
  4. определение уровня подавления сигнала после окончания полосы коррекции;
  5. определение уровня подавления сигнала в полосе коррекции;
  6. определение формы коррекции АЧХ.

Форма коррекции АЧХ может состоять из нескольких различных компонент и моделироваться по принципам, описанным выше. Так, на рис. 4 приведен пример достаточно простой формы коррекции АЧХ, состоящей всего из одной компоненты — 1,5 периода синусоидального сигнала с начальным сдвигом фазы 290° и имеющей следующие параметры:

  1. центральная частота — 15,625 МГц;
  2. ширина полосы частот — 15,625 МГц;
  3. уровень подавления до начала полосы коррекции — 0,6;
  4. уровень подавления после окончания полосы коррекции — 0,407;
  5. уровень подавления в полосе коррекции — от 0,2 до 0,8.

Рис. 4. Коррекция АЧХ

Принцип работы коррекции АЧХ достаточно прост: исходный уровень сигнала в заданной частотной точке умножается (делится, складывается или вычитается, в зависимости от выбранного алгоритма) на данные коррекции АЧХ в этой же точке, результат перемножения и является конечным уровнем сигнала для этой частотной точки. Очевидно, что для одночастотного сигнала, имеющего всего одну составляющую частоты, при включении коррекции АЧХ уровень выходного сигнала будет просто уменьшен до соответствующего значения (рис. 5). Полностью возможности коррекции АЧХ можно реализовать только для сложного сигнала, имеющего широкий спектр частот.

Рис. 5. АЧХ частотно-модулированного сигнала

Выходы и входы синхронизации, формирование макетных сигналов и двоичного кода, формирующего выходной сигнал в режиме DDS, аналогичны режиму AWG.

Режим формирования кодовых последовательностей

Режим формирования кодовых последовательностей для генератора сигналов произвольной формы значительно расширяет возможности генератора как устройства, предназначенного для тестирования различного рода аналоговых и цифровых устройств. Особенно это актуально в настоящий момент, когда наблюдается бурный рост «цифровых технологий», устройств, построенных на основе ПЛИС, и широкого использования цифровых протоколов передачи данных не только между различными устройствами, но и внутри одного устройства. Генераторы кодовых последовательностей способны формировать логические как сигналы для многоразрядных параллельных шин, так и сигналы систем последовательной передачи данных, например для шин UART, CanBus, I2C и многих других. Возможность формирования кодовых последовательностей (их еще называют «шаблонами», «цифрограммами», «сигнатурами» и т. п.) возможна только для USB-генераторов АКИП-3404 и АКИП-3405 и является опционной функцией, которую пользователь может самостоятельно активировать программным ключом. Генератор АКИП-3404 имеет одну группу на 18 логических каналов (шлейф «А»), а генератор АКИП-3405 имеет две группы по 18 логических каналов (шлейфы «А» и «В»). В каждом шлейфе отдельно выделены по два логических канала — «Запись ПЗУ» и «Синхронизация», которые невозможно включить ни в какую группу, и эти каналы программируются отдельно. Группы логических каналов «А» и «В» генератора АКИП-3405 являются независимыми между собой и позволяют формировать кодовые последовательности не только с разной структурой, но и с разной тактовой частотой. Максимальная тактовая частота составляет 125 МГц, длина памяти в стандартной комплектации — 1044576 бит на канал. Для 4-канального генератора АКИП-3405 возможны два режима кодового формирования последовательностей — смешанный режим, при котором каналы 1 и 2 работают в аналоговом режиме, а шлейф «В» формирует кодовые последовательности, или режим кодовой последовательности, когда задействованы оба шлейфа — «А» и «В». Генератор АКИП-3404 с двумя аналоговыми каналами не имеет возможности работы в смешанном режиме.

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

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

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

  1. Определить сигнал.
  2. В редакторе кодовых последовательностей произвести моделирование форм последовательностей.
  3. Формировать последовательность воспроизведения.

Определение сигнала

Для удобства идентификации тестовых сигналов, их конструирования и визуального анализа первоначально необходимо произвести процедуру определения сигнала, при которой задается число шин в кодовой последовательности, указывается, какие логические каналы из числа 18 доступных будут включены в состав шины, и задать наименование этих шин. Различные логические каналы могут по нескольку раз присутствовать в составе различных шин, и число шин при определении сигнала (рис. 6) может составлять несколько сотен. Такая реализация определения сигнала удобна для последующего процесса конструирования форм кодовых последовательностей, поскольку в структуре различных форм отдельно задается наличие или отсутствие тех или иных ранее заданных шин. Для удобства комбинирования сигналов каждый канал имеет свою цветовую маркировку и свое заданное пользователем текстовое обозначение. Аналогичная процедура проводится для канала «В» генератора АКИП-3405.

Рис. 6. Пример программного окна определения сигнала

Отдельно следует отметить особенности использования тактового генератора. Максимальная частота тактового генератора составляет 125 МГц, но при необходимости формирования низкочастотных кодовых последовательностей, для более оптимального использования памяти генератора, ее можно уменьшить до значения 119,2093 Гц. Выбор частоты тактового генератора производится из ряда частот 125 МГц/2n. При необходимости использования «некратной частоты» для формирования кодовой последовательности пользователь может задействовать внешнюю тактовую частоту. При определении сигнала все задаваемые шины и все логические каналы одного шлейфа будут иметь одну и ту же тактовую частоту.

Редактор кодовых последовательностей

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

  1. заполнение шины логическими нулями;
  2. заполнение шины логическими единицами;
  3. установка в канале высокоомного состояния (состояния, безразличного как к выдаче сигнала, так и к приему сигналов и обеспечивающего возможность физического объединения с другими сигналами);
  4. установка на шине статического кодового слова (постоянного на все время кодовой последовательности) в двоичном, десятичном или шестнадцатеричном кодах;
  5. установка на шине тактового сигнала, кратного исходному тактовому сигналу;
  6. заполнение шины сигналами счетчика, при котором счет начинается в сторону увеличения значений, начиная с предварительно заданного числа;
  7. инвертирование ранее присутствующих на шине сигналов;
  8. заполнение шины случайной комбинацией чисел (вся последовательность, каждый заданный интервал времен или каждый заданный бит).

Рис. 7. Редактор кодовых последовательностей

Кроме этого, редактор кодовых последовательностей позволяет импортировать данные из файлов с расширением .csv и из этих файлов создавать формы кодовых последовательностей. Также возможен обратный процесс, редактор позволяет созданные формы сигналов сохранять в виде файлов с расширением .csv.

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

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

Формирование последовательности воспроизведения

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

  1. повторение созданных форм сигнала по одному или нескольким адресам для моделирования кодовых последовательностей с практически бесконечным периодом повторения;
  2. создание условных и безусловных переходов в последовательности;
  3. мониторинг входных сигналов, включая мониторинг по заданной маске;
  4. принудительное изменение маски выходного сигнала;
  5. вставка статуса ожидания;
  6. ожидание события синхронизации;
  7. сброс события синхронизации.

Таблица (рис. 8) содержит до 1024 строки с шагами команд.

  1. «Бездействие» — используется для формирования времени ожидания, в течение которого на выходе генератора будет присутствовать последнее кодовое слово.
  2. «Повторение формы сигнала» — используется для создания локального однократного цикла повторения формы сигнала. Этот оператор позволяет формировать линейную последовательность (NO LOOP), при которой форма сигнала повторяется заданное число раз и генератор переходит к выполнению команды в следующей строке таблицы. Число повторений находится в пределах от 0 до 65 535. Или же этот оператор позволяет организовать циклическое повторение нескольких строк таблицы, ограниченных операторами Loop Begin и Loop End. Максимальное число циклов в этом случае — 8191. Между метками «Loop Begin» и «Loop End» могут находиться строки, в которых организованы собственные алгоритмы воспроизведения форм сигналов или имеются свои циклические воспроизведения форм сигналов.
  3. «Синхронное повторение формы сигнала» — отличие от предыдущего режима заключается в том, что теперь имеется возможность задать время задержки между фронтом сигнала тактовой частоты и фронтом формы сигнала.
  4. «Переход к» — задает номер строки безусловного перехода в таблице формирования кодовой последовательности. Точка безусловного перехода может быть указана как на последующие шаги, так и на предыдущие шаги. При указании точки перехода на предыдущие шаги (возврат назад) генератор будет формировать кодовую последовательность бесконечно до момента принудительной остановки генератора.
  5. «Переход к, если» — задает номер строки условного перехода в таблице формирования кодовой последовательности по условию кодового слова. Кодовое слово анализируется на логических входах генератора, который в этот момент времени находится в режиме оцифровщика. Точка условного перехода может быть указана как на последующие шаги, так и на предыдущие шаги.
  6. «Загрузка маски» — задает кодовое слово на выходах генератора при выполнении этого оператора.
  7. «Ожидание события» — при выполнении этого оператора генератор находится в режиме ожидания, пока на входах генератора, который переключается в режим оцифровщика, не будет обнаружена заданная кодовая последовательность. При обнаружении заданной кодовой последовательности генератор перейдет к выполнению следующего шага в таблице формирования кодовой последовательности.
  8. «Сброс события синхронизации» — сброс события, вызвавшего запуск генератора.

Рис. 8. Таблица формирования последовательности воспроизведения

Так, на рис. 8 приведен пример формирования следующей кодовой последовательности:

  • 0 шаг — форма 1 повторяется 500 раз;
  • 1 шаг — форма 3 повторяется 1 раз;
  • 2 шаг — форма 2 повторяется 700 раз;
  • 3 шаг — последовательность шагов 1 и 2 повторяется 7 раз;
  • 4 и 5 шаг — форма 2 повторяется 400 раз;
  • 6 шаг — ожидание на входе числа «D» (двоичный код 1011);
  • 7 шаг — возврат к повторению шага 0.

Редактор формирователя последовательности воспроизведения имеет хороший отладчик на случай возникновения ошибок пользователя при организации сложных циклов повторения.

На рис. 9 приведен пример отображения 18-разрядной кодовой последовательности.

Рис. 9. Пример кодовой последовательности

Мультигенераторный синхронный режим работы (х8) при помощи AT-XSS-подключения (шина SCSI)

Последней особенностью, на которую имеет смысл обратить внимание, является возможность объединения в одну систему до восьми генераторов АКИП одного типа (например, объединение генераторов АКИП-3404 и АКИП-3405 невозможно). Это позволяет значительно расширить функциональные возможности системы в целом. При объединении генераторов возможны два режима — последовательное или параллельное использование генераторов. При параллельном использовании происходит увеличение числа каналов, так, например, система из генераторов АКИП-3405 может иметь до 32 аналоговых выходов или до 288 логических каналов. При параллельном использовании генераторов целесообразно физическое объединение как аналоговых, так и цифровых входов/выходов генераторов, и в этом режиме возможно увеличение длины памяти системы в 8 раз по отношению к стандартной.

Объединение генераторов производится на задних панелях генераторов соединением разъемов AT-XSS параллельной кабельной шиной и присвоением одному генератору статуса ведущего, а остальным статуса ведомого. Для обеспечения синхронной работы по шине передаются сигналы синхронизации, и генераторы используют один источник тактовой частоты.

В заключение можно отметить, что ни один из генераторов сигналов произвольной формы, существующих на сегодняшний день на российском рынке, не обладает такими широкими функциональными возможностями. При этом генератор имеет весьма малый вес (всего 845 г) и небольшой размер (27,4×18,5×6,5 см).

Литература
  1. Дедюхин А. АКИП-3403, АКИП-3404 и АКИП-3405 — современные USB-генераторы сигналов произвольной формы с сегментированной памятью. Часть 1 // Компоненты и технологии. 2010. № 1.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *