Чтение онлайн

ЖАНРЫ

Интернет-журнал "Домашняя лаборатория", 2007 №8
Шрифт:

? Прямая адресация в пределах 64Кслов и страничная адресация в пределах 16М слов

? Адресные генераторы поддерживают 5 новых режимов адресации

? Доступ к регистровому файлу как к операнду

? Поддержка интерфейса JTAG

Рис. 7.21

История развития семейства 16-разрядных DSP с фиксированной точкой компании Analog Devices показана на рис. 7.22. Обратите внимание на улучшение производительности, геометрических размеров и характеристик по потребляемой мощности при постоянном обеспечении кодовой совместимости различных устройств. Появляющиеся новые семейства имеют напряжения питания 3,3 В (L-серия) и 2,5 В (М-серия), что способствует дальнейшему повышению эффективности использования данных процессоров. Ранние представители семейства помещались в дорогие корпуса типа PGA или PLCC, которые теперь заменяются PQFP и (в последнее

время) TQFP толщиной 1,6 мм. Обратите внимание, что в 1998 году поменялась спецификация JEDEC для толщины TQFP, доведя ее до значения 1,0 мм. Корпуса, ранее обозначавшиеся TQFP (1,6 мм толщиной), теперь называются LQFP в соответствии с квалификацией JEDEC.

Корпус мини-BGA со 144 выводами (см. рис. 7.23) представляет собой новый тип корпуса, обеспечивающий производительность 75 MIPS при более 2М бит внутренней памяти в 1 см2 корпуса, толщина которого составляет 1,35 мм, в сочетании с низкой потребляемой мощностью (0,4 мА на MIPS). Например, процессор ADSP-2188M, обладающий производительностью 75 MIPS, имеет 48К 24-разрядной памяти программ и 56К 16-разрядной памяти данных, что составляет в общей сложности 2028К бит. Потребляемая мощность данного процессора составляет менее 100 мВт.

Сравнение арифметики с плавающей и фиксированной точкой

Арифметика, применяемая при цифровой обработке сигналов, может быть разделена на две категории: с фиксированной точкой и с плавающей точкой. Данная классификация относится к формату, используемому для хранения чисел и манипуляций с этими числами под управлением процессора. Рассмотренные DSP компании Analog Devices с фиксированной точкой представляют каждое число 16-ю разрядами. Существует четыре различных способа представления 16-разрядного числа, принимающего в общей сложности 216 = 65536 возможных значений. При использовании беззнакового целого формата число может принимать значение от 0 до 65536. При использовании знакового целого формата используется дополнительный код для представления отрицательных чисел, поэтому диапазон возможных значений лежит в пределах от -32768 до +32767. При использовании беззнакового дробного формата 65536 уровней распределяются между 0 и +1. И, наконец, знаковый дробный формат позволяет использовать отрицательные числа, при этом 65536 возможных значений равномерно распределены между -1 и +1.

Арифметика DSP семейства ADSP-21xx оптимизирована под знаковый дробный формат, обозначаемый как 1.15 ("один точка пятнадцать"). В этом формате присутствует один разряд для знака (MSB) и 15 дробных разрядов, представляющих значения от -1 до значения, меньшего +1 на величину, соответствующую одному младшему биту, как показано на рис. 7.27.

Этот подход может быть обобщенно обозначен, как "I.Q", где I-число битов слева от точки, отделяющей дробную часть, a Q число битов справа от точки. Например, беззнаковое целое число представляется как формат 16.0. Однако, для большинства приложений цифровой обработки сигналов предполагается использование дробных форматов числа. Дробные числа имеют превосходство, которое заключается в том, что результат умножения двух дробных чисел меньше каждого из сомножителей.

Для сравнения, DSP с плавающей точкой обычно используют минимум 32 разряда для представления каждого числа. Это приводит к возможности представления гораздо большего количество различных значений, чем в 16-разрядном DSP с фиксированной точкой, а точнее — 232 = 4294967296. Что особенно важно, плавающая точка сильно увеличивает диапазон значений, который может быть представлен. Наиболее распространенный стандарт с плавающей точкой — стандарт ANSI/IEEE 754-1985, где самое большое и самое маленькое возможные числа равны ±3,4х1038 и ±1,2х10– 38 соответственно. Важно, что этот стандарт резервирует структуры битов, которые позволяют представить другие специальные коды чисел, такие как, например, ±0 и ±оо.

Стандарт IEEE-754 представления чисел с плавающей точкой охарактеризован более детально на рис. 7.28. 32-разрядное слово

разделяется на знаковый разряд, S, 8-разрядную экспоненту Е, и 23-разрядную мантиссу М. Отношение между десятичным и двоичным представлениями чисел с плавающей точкой, представленных в формате IEEE-754, задается с помощью выражения:

NUMBER10 = (-1)S х 1.M х 2(E– 127)

Обратите внимание, что "1." предшествует "М" и что смещение 127 вычитается из экспоненты "Е" так, что "Е" — всегда положительное число.

В случае использования арифметики с плавающей точкой с повышенной точностью используется один разряд для знака, 31 — разрядная мантисса, 11 — разрядная экспонента, и полная длина слова, таким образом, составляет 43 разряда.

При работе с арифметикой повышенной точности динамический диапазон мантиссы увеличивается на 8 разрядов, скорость обработки данных при этом остается практически прежней, так как регистры-аккумуляторы уже имеют число разрядов больше 32. С другой стороны, 64-разрядная двойная точность (52-разрядная мантисса, 11-разрядная экспонента и разряд под знак) требует дополнительного цикла процессора при обработке. Необходимость использовать удвоенную точность при цифровой обработке сигналов встречается редко.

Многие приложения ЦОС используют преимущества более широкого динамического диапазона, обеспечиваемого 32-разрядной арифметикой с плавающей точкой. К тому же, гораздо проще программировать процессор с плавающей точкой, так как проблемы, связанные с фиксированной точкой, такие как переполнение, потеря разрядов, масштабирование данных и ошибки округления, минимизируются, и даже полностью исчезают при использовании арифметики с плавающей точкой. Важно отметить также, что DSP с плавающей точкой могут стоить значительно выше, чем DSP с фиксированной точкой, а время на разработку эквивалентного программного обеспечения может быть значительно меньше при использовании процессора с плавающей точкой.

Хотя все DSP с плавающей точкой могут работать с фиксированной точкой (при необходимости на них можно реализовать счетчики, циклы и обработку сигналов АЦП/ЦАП), это не обязательно означает, что математические действия с фиксированной точкой выполняются в них так же быстро, как операции с плавающей точкой, что зависит от внутренней архитектуры DSP. Например, DSP семейства SHARC Analog Devices оптимизированы как для операций с плавающей точкой, так и для операций с фиксированной точкой, которые производятся с одинаковой эффективностью. По этой причине процессоры SHARC чаще называют "32-разрядными DSP", чем "процессорами с плавающей точкой".

СРАВНЕНИЕ АРИФМЕТИКИ С ФИКСИРОВАННОЙ ТОЧКОЙ И С ПЛАВАЮЩЕЙ ТОЧКОЙ

• 16-раз рядная с фиксированной точкой:

? 216 = 65536 возможных значений

• 32-разрядная с плавающей точкой:

? Наибольшее значение: ±6.8 х 1038, в стандарте IEEE-754: ±3.4 х 1038

? Наименьшее значение: ±5.9 х 10– 39, в стандарте IEEE-754: ±1.2 х 10– 38

• Расширенная точность (40-бит: знак + 8-битная экспонента + 31-битная мантисса)

• Двойная точность: (64-бит.: знак + 11-бит. эксп.+ 52-бит. мантисса)

• 32-разрядная с плавающей точкой:

? Более высокая точность

? Больший динамический диапазон

? Проще в программировании

Рис. 7.29

Цифровые сигнальный процессоры с плавающей точкой SHARC® компании Analog Devices

SHARC семейства ADSP-2106, построенный по модифицированной гарвардской архитектуре, представляет собой 32-разрядный высокопроизводительный цифровой сигнальный процессор. Процессор SHARC имеет в своей основе ядро процессорного семейства ADSP-21000, блок двухпортовой статической памяти и встроенные средства ввода-вывода, представляя, таким образом, полноценную микропроцессорную систему. Благодаря использованию встроенной кэш-памяти команд, процессор может выполнять каждую инструкцию за один машинный цикл. Модифицированная гарвардская архитектура процессоров семейства ADSP-2106x, показанная на рис. 7.30, включает в себя четыре независимых шины, предназначенных для передачи двойного набора данных, команд и осуществления ввода-вывода, а также набор коммутаторов адресов и данных между шинами адреса и данных программ и данных (crossbar switch memory connections).

Поделиться с друзьями: