Слайд 2
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
1. Введение в цифровую обработку сигналов
Сигналы могут быть
обработаны с использованием:
аналоговых методов (аналоговой обработки сигналов, или ASP),
цифровых методов (цифровой обработки сигналов, или DSP);
комбинации аналоговых и цифровых методов (комбинированной обработки сигналов, или MSP).
В случае цифровой обработки сигнала (ЦОС) аналоговый сигнал преобразуется в двоичную форму с помощью АЦП. На выходе АЦП получается двоичное представление аналогового сигнала, которое затем обрабатывается арифметическим ЦСП (DSP). После обработки содержащаяся в сигнале информация может быть преобразована обратно в аналоговую форму с использованием ЦАП.
Главное отличие ЦОС от традиционного компьютерного анализа данных заключается в высокой скорости и эффективности выполнения сложных функций цифровой обработки, таких как фильтрация, анализ с использованием быстрого преобразования Фурье (БПФ) и сжатие данных в реальном масштабе времени.
Слайд 3
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Аналоговая, цифровая и комбинированная обработка сигналов (1)
Термин «комбинированная
обработка сигналов» подразумевает, что системой выполняется и аналоговая, и цифровая обработка . Такая система может быть реализована в виде печатной платы, гибридной интегральной схемы (ИС) или отдельного кристалла с интегрированными элементами. АЦП и ЦАП рассматриваются как устройства комбинированной обработки сигналов, так как в каждом из них реализованы и аналоговые, и цифровые функции.
Успехи технологии создания микросхем с очень высокой степенью интеграции (VLSI) позволяют осуществлять комплексную (цифровую и аналоговую) обработку на одном кристалле. Сама природа ЦОС подразумевает, что эти функции могут быть выполнены в режиме реального масштаба времени.
Выполнить обработку физических аналоговых сигналов, используя только цифровые методы, невозможно, так как все датчики (микрофоны, термопары, тензорезисторы, пьезоэлектрические кристаллы, головки накопителя на магнитных дисках и т.д.) являются аналоговыми устройствами. Поэтому, некоторые виды сигналов требуют наличия цепей нормализации для дальнейшей обработки сигналов аналоговым или цифровым методом.
Слайд 4
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Аналоговая, цифровая и комбинированная обработка сигналов (2)
Цепи нормализации
сигнала – это аналоговые процессоры, выполняющие такие функции как усиление, накопление (в измерительных и предварительных (буферных) усилителях), обнаружение сигнала на фоне шума (высокоточными усилителями синфазного сигнала, уравнителями и линейными приемниками), динамическое сжатие диапазона (логарифмическими усилителями, логарифмическими ЦАП и усилителями с программируемым коэффициентом усиления) и фильтрация (пассивная и активная).
На следующем слайде показаны методы реализации процесса обработки сигналов.
В верхней области рисунка изображен чисто аналоговый подход.
В остальных областях изображена реализация DSP. Как только выбрана DSP технология, следующим решением должно быть определение местоположения АЦП в тракте обработки сигнала.
Слайд 5
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Обработка аналоговых и цифровых сигналов
Слайд 6
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Аналоговая, цифровая и комбинированная обработка сигналов (3)
Расширение возможностей
АЦП может выражаться в увеличении частоты дискретизации, расширении динамического диапазона, повышении разрешающей способности, отсечении входного шума, использовании входной фильтрации и программируемых усилителей (PGA), наличии источников опорного напряжения на кристалле и т.д. Все упомянутые дополнения повышают функциональный уровень и упрощают систему.
При наличии современных технологий производства ЦАП и АЦП с высокими частотами дискретизации и разрешающими способностями существенный прогресс достигнут в интеграции все большего числа цепей непосредственно в АЦП/ЦАП.
В сфере измерений, например, существуют 24-битные АЦП со встроенными программируемыми усилителями (PGA), которые позволяют оцифровывать полномасштабные мостовые сигналы 10 mV непосредственно, без последующей нормализации (например серия AD773x).
На голосовых и звуковых частотах распространены комплексные устройства кодирования-декодирования – кодеки (Analog Front End, AFE), которые имеют встроенную в чип аналоговую схему, удовлетворяющую минимуму требований к внешним компонентам нормализации (AD1819B и AD73322).
Существуют также видео-кодеки (AFE) для таких задач, как обработка изображения с помощью приборов с зарядовой связью (ПЗС, CCD).
Слайд 7
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Цели обработки сигналов
Извлечение информации о сигнале (амплитуда, фаза,
частота, спектральные составляющие, временные соотношения)
Преобразование формата сигнала (телефония с разделением каналов FDMA, TDMA, CDMA)
Сжатие данных (модемы, сотовые телефоны, телевидение HDTV, сжатие MPEG)
Формирование сигналов обратной связи (управление промышленными процессами)
Выделение сигнала из шума (фильтрация, автокорреляция, свертка)
Выделение и сохранение сигнала в цифровом виде для последующей обработки (БПФ)
Слайд 8
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Практический пример цифрового фильтра (1)
В качестве практического примера
использования DSP сравним аналоговый и цифровой фильтры нижних частот (ФНЧ), каждый с частотой среза 1 кГц.
Цифровой фильтр реализован в виде типичной дискретной системы.
Принимается, что тракт АЦП/ЦАП обладает достаточными значениями частоты дискретизации, разрешающей способности и динамического диапазона.
Для того, чтобы закончить все свои вычисления в пределах интервала дискретизации (1/fs), устройство ЦОС должно иметь достаточное быстродействие.
В-третьих, на входе АЦП и выходе ЦАП сохраняется потребность в аналоговых фильтрах низкой частоты (anti-aliasing filter и anti-imaging filter), хотя требования к их производительности невелики.
Приняв эти допущения, можно сравнить цифровой и аналоговый фильтры.
Слайд 9
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Практический пример цифрового фильтра (2)
Слайд 10
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Практический пример цифрового фильтра (3)
Представленный же цифровой имеет
малую неравномерность характеристики в полосе пропускания, линейную фазовую характеристику и намного более крутой спад. На практике такие характеристики невозможно реализовать с использованием одних только аналоговых методов.
Другое очевидное преимущество схемы состоит в том, что цифровой фильтр не требует подбора компонентов и не чувствителен к дрейфу частоты, так как она (частота) стабилизирована на кристалле.
Фильтр со N коэффициентами требует N операций умножения с накоплением (УСН) для вычисления выходной выборки. Эта обработка должна быть закончена в пределах интервала дискретизации 1/fs, чтобы обеспечить работу в реальном масштабе времени. В этом примере частота дискретизации равна 10 кГц, поэтому для обработки достаточно 100 мкс, если не требуется производить существенных дополнительных вычислений. Семейство DSP ADSP-21xx может закончить весь процесс умножения с накоплением (и другие функции, необходимые для реализации фильтра) за один командный цикл.
Фильтр со N коэффициентами требует быстродействия более N/100 мкс, например, при N = 129 быстродействие д.б. > 1,3 миллиона операций в секунду (MIPS). Существующие ЦСП имеют намного большее быстродействие и, таким образом, не являются ограничивающим фактором для этих приложений.
Слайд 11
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Практический пример цифрового фильтра (4)
Слайд 12
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Цифровая и аналоговая обработка сигналов: резюме
Цифровая обработка сигналов:
Ширина
спектра обрабатываемого сигнала ограничена частотой дискретизации АЦП/ЦАП (Критерий Найквиста и теорема Котельникова!)
Динамический диапазон сигнала ограничен разрядностью АЦП/ЦАП
Производительность ЦСП ограничивает объем обработки сигнала – для работы в реальном масштабе времени все вычисления, производимые ЦСП, должны быть закончены в течение интервала дискретизации, равного 1/fs
Аналоговая обработка сигналов:
При высокочастотной/радиочастотной фильтрации, модуляции, демодуляции
Аналоговые антиалайзинговые и восстанавливающие фильтры (обычно ФНЧ) для АЦП и ЦАП
Там, где диктуют здравый смысл и экономические выкладки
Слайд 13
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
2. Архитектура ЦСП
Особенности программ, реализующих алгоритмы ЦОС:
программы
выполняются, как правило, в реальном масштабе времени – по мере поступления входного сигнала, что придает критическую важность вопросам повышения быстродействия;
программы содержат много логических и особенно арифметических операций и практически не содержат программ перехода;
происходит постоянный и быстрый ввод/вывод данных, зачастую в аналоговой форме;
программы относительно короткие и достаточно редко изменяются, зачастую остаются неизменными на протяжении всего срока эксплуатации процессора.
Слайд 14
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Особенности архитектуры ЦСП
Из этого проистекают такие особенности архитектуры:
часто используется Гарвардская архитектура с раздельными блоками памяти для хранения программ и данных. Они могут иметь разную разрядность, к ним происходит обращение по разным командам;
большая (иногда нестандартная) разрядность обрабатываемых данных – 16, 24, 32, 48, 64, 128, что позволяет увеличить диапазон обрабатываемых чисел без применения формата с плавающей запятой или обрабатывать по несколько чисел одновременно;
блоки, предназначенные для ускорения выполнения команды умножения – сдвиговые регистры, матричные умножители;
память команд и данных на самом кристалле процессора;
возможность параллельного выполнения нескольких операций одновременно, например, ввода вывода и арифметических команд;
все команды имеют одинаковую длину и выполняются за одинаковое время, что позволяет использовать счетчик команд для отсчета временных интервалов.
Слайд 15
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Классификация ЦСП
По архитектуре различают (условно) следующие типы ЦСП:
стандартные;
улучшенные
стандартные;
процессоры с архитектурой VLIW;
суперскалярные;
гибридные.
По назначению ЦСП делятся на:
ЦСП общего назначения;
специализированные ЦСП.
Слайд 16
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Стандартные ЦСП. Варианты выполнения УСН
Вариант №1
Вариант №2
Слайд 17
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Стандартные ЦСП
На рисунке показано два варианта выполнения команды
УСН на стандартном ЦСП.
В первом варианте оба операнда хранятся в памяти данных, поэтому на их выборку требуется два такта, то есть время выполнения n сложений равно 2n.
Во втором случае один из операндов хранится в памяти программ, поэтому команда исполняется за один такт, и общее время выполнения цикла будет равно n тактов (следует уточнить, что в реальности для исполнения за один такт УСН должна исполняться внутри специальной команды цикла для исключения повторной выборки самого кода команды, что требует дополнительного такта).
Здесь видно, что эффективная реализация алгоритма требует использования памяти программ для хранения данных, а максимальное быстродействие достигается только в однокомандном цикле.
Слайд 18
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Стандартные ЦСП
Одним из вариантов, позволяющим отказаться от использования
памяти программ для хранения данных, является применение т. н. «двухпортовой памяти», то есть памяти, имеющей два комплекта входных шин — двух шин адреса и данных. Такая архитектура позволяет произвести одновременное обращение по двум адресам (правда, при этом они должны находиться в разных адресуемых блоках). Данное решение применяется в ЦСП компаний Motorola (DSP56000) и Lucent (DSP1600).
При указанной архитектуре повысить производительность можно только увеличением тактовой частоты.
Слайд 19
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Улучшенные стандартные ЦСП
По сравнению со стандартными, эти ЦСП
используют следующие методы повышения параллелизма:
Увеличение количества операционных и вычислительных устройств;
Введение специализированных сопроцессоров;
Расширение шин для увеличения количества передаваемых данных;
Использование памяти с многократным доступом (несколько обращений за такт);
Усложнение системы команд;
Слайд 20
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Улучшенные стандартные ЦСП
Справа показан пример реализации вычисления двух
параллельных команд УСН. Для этого в ЦСП присутствуют два модуля MAC и два аккумулятора. Блоки УСН получают данные по трём шинам одновременно, причём одно из значений является для них общим. Таким образом, происходит одновременное исполнение двух команд.
Особенность показанного решения состоит в том, что к выполнению двух параллельных команд с одним общим сомножителем можно свести многие алгоритмы ЦОС.
Слайд 21
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
ЦСП с архитектурой VLIW
Основное отличие VLIW-процессоров состоит в
том, что коды команд еще на этапе компиляции собираются в большие «суперкоманды» и выполняются параллельно. Обычно такие процессоры используют RISC-архитектуру с фиксированной длиной команды, где каждая из них выполняется в отдельном операционном модуле.
К характерным особенностям таких процессоров можно отнести:
Большой набор операционных модулей, работающих независимо друг от друга.
Необходимость оптимизации компилятора под каждую модель процессора, так как между моделями может меняться состав и функции вычислительных блоков, что влечет за собой изменение перечня команд, которые могут выполняться одновременно;
Необходимость в наличии сверхшироких шин данных (порядка 128 бит), чтобы код операции, состоящий из отдельных команд (до 8-ми) мог быть получен из памяти за одно обращение.
Высокие требования к объему памяти программ, что также связано с большой длиной операции.
Слайд 22
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Суперскалярные ЦСП
Суперскалярные ЦСП характеризуются большим набором параллельных операционных
модулей и возможностью одновременного исполнения нескольких команд. Однако, по сравнению с VLIW, они имеют две характерные особенности:
Команды процессора не группируются в блоки, каждая их них поступает в процессор независимо;
Команды для параллельного исполнения группируются внутри процессора на основе состава и текущей загруженности операционных блоков, а также зависимости между данными.
Суперскалярные ЦСП планируют исполнение команд не только на основе информации о загруженности операционных блоков, но и на основе анализа зависимостей между данными.
К примеру, команда сохранения результата арифметической операции не может быть выполнена раньше самой операции вычисления, даже если модуль обращения к памяти в данный момент свободен. Эта особенность приводит в том числе к тому, что один и тот же набор команд может по-разному исполняться в различных местах программы, что делает невозможным точную оценку производительности.
Слайд 23
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Гибридные ЦСП
Под гибридными ЦСП обычно понимают специализированные устройства,
сочетающие в себе функцию МК и ЦСП.
Обычно такие изделия предназначены для выполнения одной функции — например, управления электрическими двигателями в реальном времени.
Другой широкой областью их является мобильная телефония, где ранее использовались два процессора — один обычный для управления функциями аппарата (дисплеем, клавиатурой), а другой для обработки голосовых сигналов (кодирование и т. д.).
Слайд 24
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Программирование ЦСП
Для программирования ЦСП обычно используют один из
двух языков – ассемблер и С.
Основные особенности ассемблеров ЦСП совпадают с аналогичными языками обычных микропроцессоров:
Язык ассемблера является машинно-ориентированным
Одна команда на ассемблере обычно эквивалентна одной команде машинного языка
При программировании на ассемблере программисту доступны все ресурсы процессора и системы, что позволяет использовать их максимально эффективно
К интересным особенностям ассемблеров ЦСП можно отнести следующее:
Наличие двух форм записи многих команд — мнемонической и алгебраической.
Средства организации стандартных структур, например, специальных аппаратных команд повторения одной команды или блока кода.
Слайд 25
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Программирование ЦСП
С другой стороны, при использовании ЯВУ, в
частности, C, можно заметно упростить и ускорить создание программ, но при этом ресурсы системы будут использоваться менее эффективно, по сравнению с программой, целиком написанной на ассемблере.
В реальности обычно используется подход, совмещающий достоинства как ЯВУ, так и эффективности программ на ассемблере.
Слайд 26
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
Микроконтроллеры, микропроцессоры и ЦСП
Микроконтроллеры:
ЦПУ, ОЗУ, ПЗУ, последовательный/параллельный интерфейс,
таймер, схемы прерываний
Хорошо подходят как для тостеров, так и для управления промышленными процессами
Скорость не является главным требованием
Компактная система команд
Примеры: AVR, 8051, 68HC11, PIC
Микропроцессоры:
На одном кристалле находится только ЦПУ – требуются дополнительные внешние устройства
Процессоры с упрощенной системой команд (RISC)
Процессоры со сложной системой команд (CISC)
Примеры: Pentium, PowerPC, МIPS
Цифровые Сигнальные Процессоры (DSP):
ОЗУ, ПЗУ, последовательный/параллельный интерфейсы, схема обработки прерываний
ЦПУ оптимизировано для многократно повторяющихся математических операций в реальном масштабе времени
Примеры: ADSP-21xx, ADSP-21K, TMS320xx
Слайд 27
Цифровые вычислительные устройства и микропроцессоры приборных комплексов -
Лекция 11
НАИБОЛЕЕ ВАЖНАЯ МАТЕМАТИЧЕСКАЯ ОПЕРАЦИЯ В ЦСП: УМНОЖЕНИЕ С
НАКОПЛЕНИЕМ
y(n) = h(0) · x(n) + h(1) · x(n-1) + … + h(N-1) · x(n-N)
Пример: цифровая фильтрация
Многократное умножение значений входных отсчетов на коэффициенты фильтра (или на поворотные множители при БПФ)
Накопление результатов умножения в регистре-аккумуляторе
Повторение этих действий N раз
Требования, предъявляемые к ЦСП:
Быстрое выполнение УСН
Высокая точность представления результата (в аккумуляторе)
Одновременная выборка двух операндов
Наличие циклических буферов
Реализация циклов с автоматической проверкой условий
Пример: при использовании ядра ADSP-21xx за один цикл возможно осуществить:
Выборку значения отсчета из памяти данных
Выборку значения коэффициента из памяти программ
Выполнить умножение с накоплением