Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ПиП МПС(Ассемблер Левицкий экт 4) / MProc / M7 / Цифровые процессоры обработки сигналов

.doc
Скачиваний:
63
Добавлен:
16.04.2013
Размер:
54.27 Кб
Скачать

Сигнальные микропроцессоры

Термин «сигнальные процессоры» - является широко распростра­ненным сокращением термина «цифровые сигнальные процессоры» (ЦСП) в англоязычной литературе – Digital Signal Processor (DSP). В русскоязычной литературе вместо ЦСП используется более точный термин - цифровые процессоры обработки сигналов.

Общая схема цифровой обработки сигналов показана на рис. $.1. Здесь АЦП – аналого-цифровой преобразователь, ЦАП – цифро-аналоговый преобразователь. Если требуется только анализ сигнала (например, в системах управления), то присутствует только основная часть. Если же требуется преобразование исходного сигнала в другой сигнал, то используется вся схема.

Основная часть

Дополнительная

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

Цифровой вычислитель (МП)

часть

АЦП

Порт ввода

Порт вывода

ЦАП

Аналоговый сигнал

Рис. $.1. Общая схема цифровой обработки сигнала

В качестве цифрового вычислителя обычно выступает МП, но если алгоритм вычисления прост, то вычислителем может быть и специализированная интегральная схема (Application Specific Integrated Circuit), и программируемые логические устройства типа PLD и FPGA.1

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

Обычно DSP используются для решения таких видов задач, как:

  • Линейная фильтрация: селекция сигнала в частотной области; синтез фильтров, согласованных с сигналами; корректоры характеристик каналов; цифровые преобразователи Гильберта и дифференциаторы; частотное разделение каналов и т.п.

  • Спектральный анализ: обработка речевых, звуковых, сейсмических, гидроакустических сигналов; распознавание образов.

  • Частотно-временной анализ: компрессия изображений; разнообразные задачи обнаружения; гидролокация и радиолокация.

  • Адаптивная фильтрация: обработка речи и изображений; подавление шумов; распознавание образов; адаптивные антенные решетки.

  • Нелинейная обработка: вычисление корреляций; медианная фильтрация; синтез амплитудных, фазовых и частотных детекторов; обработка речи.

  • Многоскоростная обработка: увеличение и уменьшение частоты дискретизации в многоскоростных системах телекоммуникации и аудиосистемах.

Рассмотрение этих задач выходит за рамки данной книги, но в качестве примера упомянем только цифровые фильтры (ЦФ). Они описываются линейными разностными уравнениями вида:

(1)

(2)

где x(n) – значения исходного сигнала; y(n) – значения выходного сигнала; {bi} и {ak} – коэффициенты, полностью определяющие свойства ЦФ; M и N – константы, задающие сложность ЦФ.

Не рекурсивный фильтр (1) называют фильтром с конечной импульсной характеристикой (КИХ). Фильтр (2) является рекурсивным, и его называют фильтром с бесконечной импульсной характеристикой (БИХ). Из формул (1) и (2) видно, что основной вычислительной операцией является операция умножения со сложением (накоплением результатов умножения), такая операция называется MAC (Multiply and Accumulate).

МАС-операция является базовой не только для задач цифровой фильтрации, но и для всех других задач цифровой обработки сигналов, поэтому сигнальные процессоры обязательно должны выполнять ее за минимальное время (желательно за один такт). Однако для выполнения этой операции процессору требуется достать из памяти одновременно оба сомножителя (сумма может накапливаться во внутреннем регистре ЦПУ). Следовательно, система должна обеспечивать выборку из памяти одновременно двух чисел. Таким образом, производительность МП определяется возможностями обмена данными между ЦПУ и памятью.

Традиционная структура обмена процессор-память имеет одну пару шин адреса/данных (рис. $.2) и соответствует фон Неймановской архитектуре. В DSP используется Гарвардская архитектура (рис. $.3) характеризующаяся отдельными комплектами шин для обращения к памяти данных и к памяти программ. Это позволяет, по крайней мере, выбирать инструкции и данные одновременно. А если при этом поместить часть сомножителей (например, коэффициенты {bi}) в памяти программ, то можно добиться выборки операндов МАС-операции за один такт.

Память

Программа и данные

Шина адреса

ЦПУ

Шина данных

Рис. $.2. Архитектура фон Неймана.

Память программ

Шина адреса

ЦПУ

Шина адреса

Память данных

Шина данных

Шина данных

Рис. $.3. Гарвардская архитектура

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

Операции, которые обычно в процессорах общего назначения выполняются программно, в DSP реализуются аппаратным способом, т.е. для их выполнения имеются специальные функциональные устройства и модули (например, умножители-накопители). Эти модули работают одновременно с обычными функциональными устройствами (типа АЛУ), повышая тем самым производительность системы.

Во многих DSP используются устройства генерации адреса УГА (AGU – Address Generation Unit), которые формируют и генерируют адреса для обращения к операндам. Эти устройства функционируют параллельно с другими модулями и позволяют параллельно с основными вычислениями, вычислять адреса операндов для следующей операции.

Специальные методы адресации

Для реализации алгоритмов в сигнальных процессорах существуют специальные методы адресации – бит реверсивная и циклическая (wraparound).

Циклическая адресация

Циклическая адресация осуществляется на базе циклического буфера. Этот буфер представляет собой набор ячеек в памяти данных, обращение к которой производится циклически, т.е. за последней ячейкой буфера как бы находится первая ячейка буфера, а перед первой ячейкой – как бы находится последняя ячейка. На рис. ?? показан такой буфер из 10 физических ячеек памяти.

1 PLD – Programmable Logic Device, FPGA – Field Programmable Gate Array.

4