Вход/Регистрация
Разработка устройств на основе цифровых сигнальных процессоров фирмы Analog Devices с использованием Visual DSP++
вернуться

Вальпа Олег Дмитриевич

Шрифт:

[IF cond] |AR| = DIVS yop, xop;

[IF cond] |AR| = DIVQ xop;

Команды тестирования результата:

NONE = <ALU>;

Последняя команда выполняет заданную команду АЛУ, устанавливает флаги и сбрасывает значение результата. Она позволяет тестировать значения в регистрах без изменения содержимого AR или AF. Строка <ALU> — это любая безусловная команда АЛУ, кроме DIVS, DIVQ и дополнительных команд АЛУ с константами.

Для всех приведенных выше команд ALU разрешено использовать следующие операнды:

xop: AX0, АХ1, AR, MR0, MR1, MR2, SR0, SR1; yop: AY0, AY1, AF;

constant: 0, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32767, -2, -3, -5, -9, -17, -33, -65, -129, -257, -513, -1025, -2049, -4097, -8193, -16385, -32768.

Команда DIVS не может использовать регистр AY0 как оператор yop. Коды условия IF соответствуют кодам, приведенным ранее в табличном виде.

Примеры записи команд:

AR=AX0+AY0+C; /* Присвоить регистру AR значение суммы регистров AX0, AY0

 и переноса*/

IF EQ AR=AX0+AY0+C; /* Выполнение описанной выше операции при условии

 равенства нулю предыдущего результата */

AF=TSTBIT 7 AX; /* Занести в регистр AF значение результата операции

 логического «И» разряда 7 с единицей */

Глава 15. Устройство MAC

В этой главе говорится о вычислительном устройстве MAC (умножителя с накопителем) сигнального процессора и выполняемых в нем командах.

Структура устройства MAC

Свое название устройство MAC получило от сокращения английских слов: multiplier (умножитель) и accumulator (накопитель). Устройство MAC выполняет быстрые одноцикловые операции умножения, умножения с добавлением, умножения с вычитанием, функции насыщения и очистку результата. Функция обратной связи позволяет части результата в одном цикле быть одним из сомножителей в следующем цикле.

Операции в MAC производятся над числами, представленными в виде двоичных последовательностей. Результат выдается в том же виде.

Процессор ADSP-2181 поддерживает два режима корректировки формата: дробный режим для дробных операндов формата 1.15 и целочисленный режим для целых чисел формата 16.0.

Когда процессор умножает два операнда в формате 1.15, в результате получается число в формате 2.30 (два знаковых и 30 дробных разрядов).

В дробном режиме MAC автоматически сдвигает результат на один бит влево перед пересылкой его в регистр результата MR. Этим сдвигом результат приводится к виду 1.31, который может быть округлен до формата 1.15.

В целочисленном режиме сдвига влево не происходит. Например, при умножении операндов в формате 16.0 результат представляется в виде 32.0.

Сдвиг влево в этом случае не нужен, т.к. он изменит числовое представление результата. В табл. 15.1 показаны форматы данных операндов и результата для вычислительных устройств процессора ADSP-2181.

Таблица 15.1 Форматы данных операндов и результата для вычислительных устройств процессора ADSP-2181

Операции Арифметические форматы
Операнды Результат
Устройство ALU
Сложение Знаковые числа или без знака Установка флагов
Вычитание Знаковые числа или без знака Установка флагов
Логические операции Двоичные строки Тот же, что и операнды
Деление Знаковые числа или без знака Тот же, что и операнды
Переполнение ALU Знаковые числа Тот же, что и операнды
Бит коррекции ALU 16-разрядные числа без знака Тот же, что и операнды
Насыщение ALU Знаковые числа Тот же, что и операнды
Устройство MAC (дробные числа)
Умножение (P) 1.15 знаковые числа /без знака 32 разряда (2.30)
Умножение (MR) 1.15 знаковые числа /без знака 2.30, сдвинутый к 1.31
Умножение с накоплением 1.15 знаковые числа /без знака 2.30, сдвинутый к 1.31
Умножение с вычитанием 1.15 знаковые числа /без знака 2.30, сдвинутый к 1.31
Насыщение MAC Знаковые числа Тот же, что и операнды
Устройство MAC (целые числа)
Умножение (P) 1.15 знаковые числа /без знака 32 разряда (32.0)
Умножение (MR) 16.0 знаковые числа /без знака 32.0 без сдвига
Умножение с накоплением 16.0 знаковые числа /без знака 32.0 без сдвига
Умножение с вычитанием 16.0 знаковые числа /без знака 32.0 без сдвига
Насыщение MAC Знаковые числа Тот же, что и операнды
Устройство сдвига Shifter
Логические сдвиги Баз знака/двоичные строки Тот же, что и операнды
Арифметические сдвиги Знаковые числа Тот же, что и операнды
Определение порядка Знаковые числа Тот же, что и операнды
Структура MAC

Рассмотрим подробнее содержимое устройства MAC. Его структурная схема приведена на рис. 15.1.

Рис. 15.1. Структурная схема MAC

MAC имеет два входных 16-разрядных порта X и Y и один 32-разрядный порт вывода результата P. 32-разрядный результат поступает в 40-разрядный блок сложения/вычитания, который либо прибавляет, либо вычитает текущий результат из регистра результата MR, либо передает текущий результат непосредственно в MR. Регистр MR имеет 40 разрядов. Фактически регистр MR состоит из трех регистров. Два из них, MR0 и MR1, являются 16-разрядными, а регистр MR2 8-разрядный. Мультиплексоры MUX позволяют коммутировать внутри устройства один из нескольких операндов.

  • Читать дальше
  • 1
  • ...
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: