Владимир Стешенко
Школа схемотехнического проектирования устройств обработки сигналов
Занятие 1. Алгоритмы, элементная база, способы реализации
При изучении наук примеры полезнее правил.
Исаак Ньютон
Хороший учитель может научить других даже тому,
чего сам не умеет.
Тадеуш Котарбиньский
Последнее десятилетие можно назвать десятилетием коренных изменений в элементной базе устройств обработки сигналов. Действительно, в 1990–1991 годах реально существовали 2-5 наименований цифровых сигнальных процессоров (ЦСП), простейшие ПЛИС типов PAL и GAL, небольшая номенклатура АЦП, классические операционные усилители (ОУ). Сегодня по каждой из упомянутых позиций существуют десятки предложений, стоимость компонентов упала на порядок (или два?), появились многие принципиально новые классы устройств. За прошедшие годы произошли действительно революционные изменения. К ним стоит отнести следующие события:
- появление высокопроизводительных цифровых сигнальных процессоров, как с фиксированной, так и с плавающей точкой;
- появление ПЛИС емкостью до 106 и более вентилей;
- появление современных ОУ с полосой в сотни мегагерц;
- появление АЦП с быстродействием до 100 МГц при разрядности 10–12 бит;
- появление принципиально новых компонентов — цифровых квадратурных преобразователей с понижением частоты, чипсетов для цифровых радиоприемных устройств, БИС-интерфейсов, программируемых аналоговых интегральных схем и т. п.;
- появление недорогих массовых микроконтроллеров, позволяющих легко реализовать функции управления и интерфейса системы;
- широкое распространение поверхностного монтажа и технологий межсоединений с высокой плотностью;
- широкое применение средств САПР электронной аппаратуры (Electronic Design Automotion, EDA), включающих в себя как средства проектирования печатных плат, так и средства моделирования и проектирования аналоговых и цифровых устройств, средства разработки микропроцессоров и т. д.;
- появление идеологии разработки «система на кристалле» (System on chip, SOC).
Этот список можно продолжать, но уже сейчас становится очевидным одно из основных противоречий, которое также является приметой десятилетия: отставание в области подготовки специалистов от потребностей реального (действительно существующего и небезуспешно функционирующего) сектора нашей многострадальной экономики. Как показывает практика, курсы схемотехнического проектирования и конструирования аппаратуры обработки сигналов, читаемые в вузах, остаются практически неизменными с середины 80-х годов. Та же картина наблюдается и в издании литературы. Если в области программирования, слава Богу, можно считать информационный голод утоленным, то современной литературы по схемотехническому проектированию попросту нет. Практически трудно назвать хоть один курс, изданный после 1993 года. Жалкие попытки переиздания Хоровица–Хилла [1] и издания «Практической электроники» [2] не спасают положения, — первая книга является переводом с издания 1989 года, в ней отсутствуют материалы, посвященные применению новейших классов компонентов, а вторая просто ужасна (да простят меня автор, издатель и переводчики, но материал излагается на уровне конца 70-х годов, зачастую излишне примитивно — уж лучше бы тогда переиздали Титце и Шенка [3], действительно удачную и полезную книгу).
Книги российских авторов, вышедшие в последние два–три года, увы, похоже, просто провалялись на полках издательств несколько лет и теперь смотрятся как явно опоздавшие с выходом в свет. Рука не поднимется винить их авторов: отсутствие достойного финансирования издания учебной и научно-технической литературы приносит свои плоды— книги теряют свою актуальность, попросту отстают от реального положения дел.
Являясь преподавателем вуза и действующим разработчиком, работающим с современной элементной базой, автор понимает, что спасение утопающих— дело рук самих утопающих, и соломинкой в данной ситуации может оказаться публикация в журналах схемотехнического профиля циклов статей, посвященных актуальным вопросам современной схемотехники. Примером такого цикла может служить публикация журналом Chip News «Школы разработки аппаратуры цифровой обработки сигналов на ПЛИС» [4].
Предлагаемый цикл статей является в некотором смысле развитием упомянутого цикла. Основной упор будет сделан на выбор элементной базы, особенности схемотехники отдельных устройств — в этом плане он не пересекается с предыдущей работой автора, а скорее дополняет ее.
Материал, предлагаемый вниманию читателя, представляет собой сжатый вариант избранных лекций из курса «Схемотехническое проектирование микроэлектронных устройств», читаемого автором на кафедре СМ-5 «Автономные информационные и управляющие системы» МГТУ им. Н. Э. Баумана.
Первоначальной задачей, стоящей при проектировании устройств обработки сигналов, является выбор путей решения и алгоритмов, а также элементной базы, способной реализовать требуемые характеристики.
Целью этой статьи является показать на практическом примере реализацию алгоритмов демодуляции сигналов с частотной и фазовой манипуляцией. Подход, предлагаемый автором, может быть полезен при проектировании цифровых устройств обработки сигналов.
Обобщенная структурная схема, по которой реализованы оба демодулятора, описанные в статье, приведена на рис. 1.
Рис. 1
Как видим, используется аналоговая квадратурная обработка (перемножители, фазовращатель, фильтры нижних частот) и цифровое восстановление символов и символьной частоты, реализованное на ПЛИС. В качестве формирователя квадратур использована ИС RF2711 фирмы RF Microdevices. Данная микросхема содержит в своем составе два перемножителя и фазовращатель и позволяет работать в диапазоне частот от 0,1 до 200 МГц при ширине спектра до 25 МГц. К сожалению, фирма RF Microdevices объявила о прекращении выпуска этой ИС и не рекомендует ее к применению в новых разработках. Альтернативой является использование ИС AD607 и подобных ей производства фирмы Analog Devices. Их особенность — наличие УПЧ, что не всегда требуется. Опорная частота f0 формируется с помощью синтезатора прямого синтеза частот AD9830 [1] фирмы Analog Devices. Сигнал с выхода синтезатора фильтруется с помощью активного ФНЧ, реализованного на ОУ AD8052 по схеме Рауха. Как известно, при проведении цифровой обработки необходимо подавить составляющие, связанные периодичностью АЧХ системы, возникающей из-за дискретизации. В англоязычной литературе данное явление получило название Aliasing, а входной аналоговый фильтр — Antialiasing filter.
В настоящее время наблюдается тенденция к «оцифровыванию» обрабатываемого сигнала на промежуточных частотах (ПЧ) порядка десятков мегагерц, формируя квадратуры в цифре. В этом направлении преуспели компании Harris и Analog Devices. Последняя разработала семейство квадратурных преобразователей с понижением частоты — Digital Down Converters (DDС). В его состав входят БИС AD6620 и AD6624. Последняя имеет 4 канала формирования квадратур. Данные микросхемы работают в связке с АЦП типов AD6600, AD6640, AD9042 и AD10242, которые обеспечивают 12-битное аналого-цифровое преобразование с тактовой частотой 42–65МГц. ИС AD10242 имеет встроенный аналоговый узел, предназначенный для обеспечения стыковки АЦП с предшествующими каскадами, что существенно упрощает схемную реализацию. Несомненно, что за такими схемами будущее, однако в ряде случаев их применение не всегда оправдано, в основном из-за сложностей в управлении такой микросхемой. Кроме того, ряд ИМС поставляются только при наличии лицензии госдепартамента США, что, вообще говоря, не является кардинальным препятствием, просто получение такой лицензии и переписка отнимают огромное время (не менее 6–8 месяцев).
В качестве АЦП удобно использовать специализированный квадратурный АЦП AD9201. Пожалуй, единственным его недостатком является необходимость демультиплексирования отсчетов синфазной и квадратурной составляющих. В номенклатуре АЦП, предлагаемых компанией Analog Devices, имеется целый ряд сдвоенных быстрых АЦП, удобных для оцифровки квадратур. К таким микросхемам относятся AD9059, AD9058, AD9066 и другие. Неплохие быстрые АЦП выпускает BurrBrown. Это ИС ADC603 и ряд других.
Алгоритм работы детектора различался в зависимости от типа обрабатываемого сигнала: ЧМн или ФМн. Алгоритм работы синхронизатора был одинаковым для обоих демодуляторов. Ниже приведено описание алгоритмов детектора ЧМн-сигнала, детектора ОФМн-сигнала и синхронизатора, реализованных на ПЛИС. Определены преимущества каждой из предлагаемых схем.
Детектор ЧМн-сигнала предназначен для преобразования исходного модулированного радиосигнала в последовательность прямоугольных импульсов, появляющихся с частотой следования символов и обладающих той же полярностью. Частота исходного радиосигнала равна f = f0 - D / 2, если передается символ «0», и f = f0 + D / 2, если передается символ «1»; при этом, по техническому заданию, DfTc = 1 , где Tc— длительность символа (индекс модуляции единица, сигнал без разрыва фазы). Таким образом, измерение разности (f - f0) — это и есть та операция, которую должен осуществлять детектор. Оценка частоты осуществляется с использованием следующего алгоритма:
Здесь Ck и Sk — отсчеты синфазной и квадратурной составляющих соответственно.
Отсюда вытекает структурная схема детектора, которая приведена на рис. 2.
Рис. 2
Следует отметить преимущества предлагаемого алгоритма демодуляции ЧМн-сигнала:
- детектор не требует точной настройки квадратурного генератора (см. рис. 1) на частоту f0, что позволяет ему устойчиво функционировать при значительных (до 30%) уходах частоты входного сигнала вследствие эффекта Доплера;
- операция деления на двучлен Sk2 + Ck2 не является обязательной, если динамика входного сигнала невелика либо стабилизация амплитуды осуществляется при помощи АРУ в ВЧ-тракте;
- инвариантность алгоритма к фазе опорного и входного сигналов, а также к амплитуде входного сигнала (при наличии нормирующего множителя) увеличивает помехоустойчивость.
Демодулятор ФМн-сигнала. Если используемый вид модуляции — ФМн (DQPSK), то предназначение детектора остается таким же, как и в случае обработки ЧМн-сигнала, нo на выходе блока формируются два потока импульсов: один для идентификации четных символов исходного радиосигнала, а другой— для идентификации нечетных символов. Напомним, что соответствие между парами символов и «скачками» фазы при ОФМн (DQPSK) имеет вид (см. таблицу):
Таблица
Полярность нечетного символа |
Полярность четного символа |
Приращение фазы при переходе от символа к символу |
1 |
1 |
-3 p / 4 |
0 |
1 |
3 p / 4 |
0 |
0 |
p / 4 |
1 |
0 |
- p / 4 |
Таким образом, детектор должен измерять текущее приращение фазы исходного модулированного радиосигнала, и в случае обнаружения скачка определенной величины сопоставлять ему пару импульсов с полярностью, заданной табл. Можно показать, что при наличии отсчетов квадратур исходного радиосигнала: Sk и Ck, могут быть определены две функции, однозначно задающие величину «скачка» Djk:
Отсюда вытекает структурная схема детектора, которая приведена на рис. 3.
Рис. 3
Cледует отметить, что детектор ФМн-сигнала, построенный по предлагаемой схеме, обладает теми же достоинствами, что и рассмотренный ранее детектор ЧМн-сигнала, но в добавление к этому, он представляет собой реальную альтернативу традиционным когерентным демодуляторам типа схем Сифорова, Костаса и др., поскольку не склонен к так называемой «обратной работе».
Синхронизатор. При достаточно больших отношениях сигнал/шум (ОСШ) на входе демодулятора (20…30 дБ) восстановленную последовательность символов можно снимать непосредственно с выхода детектора. Однако при снижении ОСШ (до 10…15 дБ) форма сигнала на выходе детектора начинает искажаться (появляются ложные перепады, смещение фронтов по времени и т. п.). Поэтому на выход детектора (внутри ПЛИС) подключается еще один блок — синхронизатор, предназначение которого — восстановить истинную форму демодулированного радиосигнала за счет его накопления и анализа в течение N подряд идущих символов (в описанной далее версии демодуляторов N=10). Синхронизатор реализует оптимальный (по критерию максимума правдоподобия) алгоритм оценки сигнала прямоугольной формы на фоне белого гауссовского шума. Восстановлению подлежат истинные моменты смены символов в исходном радиосигнале (тактовая синхронизация), а также истинная полярность символов.
Главными элементами синхронизатора (рис.4) являются линия задержки на N*M отсчетов (M — число отсчетов на символ), реализованная на регистрах, и (N+1) сумматоров. Синхронизатор функционирует следующим образом: каждый отсчет входного сигнала порождает сдвиг в линии задержки, после чего вычисляются суммы каждых M подряд идущих отсчетов, определяются их модули и производится усреднение результатов по N суммам (символам). Если в какой-то момент времени каждое суммирование (по M отсчетам) будет производиться внутри одного символа, значение усредненного сигнала будет максимальным, на выходе порогового устройства (см. рис. 4) появится синхроимпульс, и в этот же момент будут считаны знаки накопленных сумм, с высокой вероятностью совпадающие с полярностями символов.
Рис. 4
К преимуществам предлагаемого алгоритма следует отнести:
- высокую эффективность (устойчивость к помехам, к уходу частоты следования символов от номинальной, к снижению частоты дискретизации и др.);
- способность точно восстанавливать моменты смены символов во входном сигнале при длинных (до N-1 включительно) сериях «нулей» и «единиц», причем в конце серии отсутствует переходный процесс (направленный на устранение накопленной ошибки), что характерно для аналоговых устройств с использованием ФАПЧ;
- наличие на выходе демодулятора одновременно N подряд идущих символов, что может быть важно при корреляционной обработке потока данных (например, при поиске синхропосылок);
- простоту операций (суммирование, сдвиг) и хорошую адаптацию к реализации на базе ПЛИС, что не характерно для большинства традиционных алгоритмов, содержащих петли обратной связи).
Реализация цифровой части алгоритма демодуляции и выделения синхроимпульса была выполнена на кристалле Altera FLEX10K50. Реализованное устройство состоит из входных цифровых КИХ-фильтров, непосредственно блока демодуляции сигнала и блока синхронизатора.
Для реализации входных КИХ-фильтров был использован пакет Altera DSP Design Kit. Данный пакет был выбран ввиду того, что он позволяет по рассчитанным коэффициентам цифрового фильтра быстро получить AHDL описание устройства с данными характеристиками и максимально доступной точностью при заданных значениях точности входных данных и внутреннего представления коэффициентов фильтрации. Для этого исходные коэффициенты фильтра масштабируются, что приводит к тому, что выходной сигнал фильтра также является промасштабированным на ту же величину, которую в большинстве случаев необходимо учитывать при дальнейших вычислениях. Однако для данной задачи это не является существенным, и масштабирующий множитель не учитывался в последующих операциях. Кроме этого, DSP Design Kit позволяет сгенерировать векторный файл для моделирования работы фильтра, а также позволяет преобразовать выходные данные отклика фильтра к масштабу входных данных и построить график отклика фильтра на входное воздействие.
В отличие от классической реализации КИХ-фильтров в виде набора умножителей для взвешивания задержанных отсчетов входного сигнала и выходного сумматора, данная реализация вообще не содержит умножителей. Все операции умножения заменены операциями распределенной арифметики, что возможно благодаря постоянству коэффициентов фильтрации и наличию в логических элементах FLEX10К [4] таблиц перекодировки (look-up-tables, LUTs).
Сигналы с выходов фильтров (восемь бит в дополнительном коде) подаются на квадратурные входы блока частотной демодуляции.
Для реализации демодулятора ЧМн-сигналов понадобились два регистра для хранения значений квадратур в предыдущий (k-й) момент времени — Sk и Ck, два умножителя и один сумматор. Все вычисления в схеме производятся в дополнительном коде за исключением умножителей, операнды и выходные данные которых представлены в прямом коде со знаком, что требует предварительно преобразовывать сигналы в дополнительный код до умножения и конвертировать в дополнительный код результат умножения. Выходной сигнал демодулятора имеет разрядность, равную пятнадцати битам, однако для выделения символов нужно рассматривать только старший (знаковый) разряд результата.
Так как синхронизатор работает по принципу максимума правдоподобия, то схема должна выставлять синхроимпульс в момент достижения выходным сигналом Xk максимума. Для определения момента наступления локальных максимумов этот сигнал дифференцируется, и определяются моменты смены знака продифференцированного сигнала.
Результаты моделирования в системе Max+Plus II приведены на рис. 5.
Рис. 5
Отметим, что все узлы системы были реализованы в виде параметризованных мегафункций [4–6] с использованием языка описания аппаратуры AHDL, что позволяет с легкостью использовать их для приложений, требующих другой точности вычислений.
Конструктивно устройство выполнено на четырехслойной печатной плате с использованием технологии поверхностного монтажа. Внешний вид приведен на рис. 6.
Рис. 6
На следующем занятии мы рассмотрим особенности схемотехники цифровых устройств с учетом использования элементной базы, работающей при пониженном напряжении питания, особенности реализации аппаратных средств интерфейса и ряд близких вопросов.
Литература
- Хоровиц, Хилл. Искусство схемотехники. — М.: «Мир», 1983, 1985, 1992.
- Пратт. Практическая электроника.
- Титце, Шенк. Полупроводниковая схемотехника. — М.: «Мир», 1983.
- Стешенко В. Школа разработки аппаратуры цифровой обработки сигналов на ПЛИС. // Chip News, 1999, № 8–10, 2000, № 1, 3–5.
- Губанов Д.А., Стешенко В.Б., Храпов В.Ю., Шипулин С.Н. Перспективы реализации алгоритмов цифровой фильтрации на основе ПЛИС фирмы ALTERA // Chip News, № 9–10, 1997,
с. 26–33.
- Губанов Д.А., Стешенко В.Б. Методология реализации алгоритмов цифровой фильтрации на основе программируемых логических интегральных схем // Сборник докладов 1-й Международной конференции «Цифровая обработка сигналов и ее применения» 30.06–3.07.1998, Москва, МЦНТИ, том 4, с. 9–19.
- Стешенко В. Б. Особенности проектирования аппаратуры цифровой обработки сигналов на ПЛИС с использованием языков описания аппаратуры // Сборник докладов 2-й Международной конференции «Цифровая обработка сигналов и ее применения» 21.09–24.09.1999, Москва, МЦНТИ, том 2, с. 307–314.
steshenk@sm.bmstu.ru
|