Лекция № 7 (1085701), страница 2
Текст из файла (страница 2)
В цифровых процессорах обработки сигналов используют специализированные устройства генерации адреса (УГА), которые формируют адреса данных, извлекаемых из памяти данных. УГА функционируют параллельно с другими модулями и позволяют одновременно с выполнением операций в АЛУ вычислять адреса операндов для следующей команды.
Циклические процессы, т.е. повторение одиночных команд и их блоков, занимают значительное место среди алгоритмов цифровой обработки сигналов. Обычная организация циклов программным образом требует использования команд формирования и проверки условий окончания циклов, которые должны выполняться при каждом прохождении «тела» цикла. На выполнение этих команд затрагивается время. Поэтому должен быть аппаратный счетчик циклов. В ПЦОС используются устройства, которые позволяют организовать циклы с «нулевыми потерями» времени на организацию (проверку условий окончания).
В процессорах Motorola используется команда цикла DO, которая работает с регистрами начала и конца цикла (LC и LA).
Гарвардская архитектура автоматически открывает многоступенчатый конвейер (от 3 до 11 ступеней конвейера). В базовом варианте: три ступени конвейера.
Базовый вариант: Motorola DSP56000 = 560 = 56К, где К = 000
Номер Процессор
серии в этой серии
Основные показатели процессоров цифровой обработки сигналов.
-
Способ представления данных.
По этому показателю все процессоры цифровой обработки сигналов делятся на:
-
Процессоры с фиксированной запятой (ФЗ) или процессоры с фиксированной точкой (ФТ).
-
Процессоры с плавающей запятой (ПЗ) или процессоры с плавающей точкой (ПТ).
Наиболее распространены процессоры с фиксированной запятой или процессоры с фиксированной точкой - они стоят во всех телефонах.
В процессорах с плавающей запятой данные представляются в виде мантиссы или порядка. Процессоры с плавающей запятой значительно более сложные и наиболее дорогие (в несколько сотен долларов).
-
Разрядность представления данных.
Для процессоров с фиксированной точкой разрядность равна 16 (у большинства сигнальных процессоров) или равна 24 (у фирмы Motorola).
Для процессоров с плавающей точкой разрядность равна 32 (из них порядок представляется 8 разрядами, мантисса 23 разрядами, а знак 1 разрядом).
У процессоров с плавающей точкой большой диапазон представления чисел (мантиссу откидываем) с учетом знака: от 2 −128 до 2127.
Диапазон представления чисел устанавливает границы между минимально и максимально допустимыми значениями, представляемыми в заданном формате и коде.
Динамический диапазон (ДД):
ДД = |max значение| / |min значение ≠ 0|
Динамический диапазон в децибелах равен:
20 lg (ДД) = 20 lg (|max значение| / |min значение ≠ 0|)
Динамический диапазон сигналов, с которыми могут без искажений работать процессоры, у процессоров с фиксированной точкой значительно уже (на несколько десятичных порядков). При относительно простых алгоритмах обработки это может быть неважно, т.к. динамический диапазон реальных входных сигналов чаще всего меньше, чем допускает DSP, однако в некоторых случаях возможно возникновение ошибок переполнения при выполнении программы. Это приводит к принципиально неустранимым нелинейным искажениям выходного сигнала, аналогичным искажениям из-за ограничения в аналоговых схемах.
3.) Производительность.
Одна из самых частых ошибок разработчика - отождествление тактовой частоты и быстродействия, что в большинстве случаев неправильно. Очень часто скорость работы DSP указывают в MIPS (миллионах инструкций в секунду). Это наиболее просто измеряемый параметр. Производительность нормальных процессоров – это несколько десятков MIPS.
Однако проблема сравнения скорости различных DSP состоит в том, что процессоры
имеют различные системы команд, и для выполнения одного и того же алгоритма разными процессорами требуется разное число этих команд. Кроме того, иногда для выполнения различных команд одним процессором требуется различное количество тактов синхронизации. В результате процессор со скоростью 1000 MIPS вполне может оказаться в разы медленнее процессора со скоростью 300 MIPS, особенно при различной их разрядности.
Одно из решений этой проблемы — сравнивать процессоры по скорости выполнения
определенных операций, например, операции умножения с накоплением (MAC). Скорость
выполнения таких операций критична для алгоритмов, использующих цифровую
фильтрацию, корреляцию и преобразования Фурье. К сожалению, такая оценка также не
дает полной информации о реальном быстродействии процессора.
Наиболее точной является оценка скорости исполнения определенных алгоритмов -
например, КИХ и БИХ - фильтрации, однако это требует разработки соответствующих программ и тщательного анализа результатов тестирования.
Существуют компании, занимающиеся анализом и сравнением процессоров по основным характеристикам, в том числе и по скорости. Лидером среди таких компаний является BDTI (Berkeley Design Technology, Inc).
Основные производители сигнальных процессоров.
1.) Фирма Texas Instruments (TI) занимает около 48% рынка ПЦОС. Именно она выпустила в 1982 г. первый ПЦОС, который имел коммерческий успех. ПЦОС TMS32010 использовался в игре Speak and Spell ("Скажи и произнеси по буквам"), а также в говорящей кукле по имени Джули. Все процессоры цифровой обработки сигналов фирмы Texas Instruments идут под маркой: TMS3200xxx.
2.) Фирма Analog Devices (AD). Все процессоры цифровой обработки сигналов фирмы Analog Devices идут под маркой: ADSP21xxx.
3 .) Фирма Motorola. Серии: DSP560xx
DSP561xx Процессоры с фиксированной точкой.
DSP563xx
DSP566xx
DSP568xx
Фирма Intel раньше тоже входила в первую тройку производителей сигнальных процессоров, но сейчас её оттеснили.
В нашей стране также производятся сигнальные процессоры, правда они несколько уступают зарубежным аналогам, но они есть. Например: в настоящее время научно-исследовательский институт электронной техники («НИИЭТ») серийно выпускает 16-разрядные процессоры ЦОС с фиксированной запятой М1867ВМx с производительностью 5 MIPS.
Аппаратная реализация.
Процессор цифровой обработки сигналов разбивается на две части: операционный блок и блок управления.
Операционный блок.
Блок управления операцией.
На входные регистры x0, x1,y0, y1 из памяти поступают данные и передаются на МАС или АЛУ, которые могут использоваться как отдельно, так и в паре. Если нужно использовать данные двойной длины, то, как правило, используют 16 разрядов. Результат выполнения операции из аккумулятора А или В передаётся в память данных через сдвигатель - выходной.
Распределение нагрузки между МАС и АЛУ: 62 команды в базовом варианте, из них: 61 - АЛУ и 1 - МАС.
МАС выполняется в 1000 раз чаще, чем все другие команды и, именно он определяет скорость быстродействия.
Схема блока МАС.
В блоке МАС после умножения первое суммирование происходит с нулём, а далее после каждого умножения происходит суммирование с каждым значением аккумулятора. Аккумуляторов всегда два или более.
Сдвигатель позволяет производить сдвиги при передаче и загрузке операндов без использования дополнительных команд.
Если в процессорах фирмы Motorola (в базовом варианте Motorola DSP560xx) разрядность слова равна 24, то длина расширенного слова составляет: 24 + 24 + 8 = 56 битов, где 8 разрядов отводится на расширение данных.
Если в процессорах фирмы Motorola разрядность слова равна 16, то длина расширенного слова составляет: 16 + 16 + 8 = 40 битов, где 8 разрядов отводится на расширение данных.
Пример представления целых чисел в форматах двойное и расширенное слово аккумулятора длиной 56 битов в процессорах DSP560xx фирмы Motorola:
Примечание:
На рисунке расширение EXT заполнено нулями – значением 47-го знакового бита.
Представление целых чисел в формате с ФТ в форматах двойное и расширенное слово предполагает следующее функциональное распределение битов:
1.) Старший бит MSB старшего слова MSP используется:
-
как знаковый при представлении целых чисел со знаком; значение MSB = 0 соответствует положительному знаку, а MSB = 1 - отрицательному знаку; ноль считается положительным; остальные биты являются значащими;
-
как старший значащий при представлении беззнаковых чисел; беззнаковыми называются целые числа, имеющие положительный знак по умолчанию.
2.) Все биты, кроме знакового, считаются значащими; они выравниваются по правому краю формата, т.е. младший бит LSB соответствует младшему разряду целого двоичного числа.
3.) При представлении целых чисел со знаком в формате «расширенное слово» в расширении EXT происходит расширение знака; это означает, что все биты EXT автоматически заполняются значением старшего знакового бита MSB слова MSP:LSP.
4.) При представлении целых беззнаковых чисел в формате «расширенное слово» все биты EXT обнуляются.