- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Разработка устройств на основе цифровых сигнальных процессоров фирмы Analog Devices с использованием Visual DSP++ - Олег Вальпа
Шрифт:
Интервал:
Закладка:
Примеры записи команд:
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 позволяют коммутировать внутри устройства один из нескольких операндов.
Блок сложения/вычитания имеет более 32 разрядов для того, чтобы учесть промежуточные переполнения в ряде операций умножения с накоплением. Флаг MV (переполнение) устанавливается в единицу, если значение аккумулятора превышает 32 разряда.
Регистры ввода-вывода подобны регистрам ALU. Порт X может принимать данные из регистра MX или из любого другого регистра на R-шине результата. R-шина соединяет выходные регистры всех вычислительных модулей для непосредственного использования результатов вычислений в качестве входных операндов. Регистр MX состоит из двух регистров (MX0 и MX1).
Эти регистры читаются и записываются с DMD-шины. Организованы регистры MX0 и MX1 таким образом, что один из них поставляет множитель в блок умножения, а другой управляет DMD-шиной.
Порт Y принимает данные из регистра MY или регистра обратной связи MF. Регистр MY также разбит на два регистра (MY0 и MY1), доступ к которым осуществляется с DMD-шины и возможна запись с PMD-шины. Система команд предусматривает чтение этих регистров с помощью PMD-шины, но прямого доступа для этой операции нет, в этом случае используется устройство DMD-PMD обмена. Выводы регистра MY устроены аналогично MX.
Результат умножения поступает либо в блок сложения/вычитания, либо в регистры MY или MF. Регистр обратной связи MF позволяет результату вычисления в предыдущем цикле становиться операндом умножения на входе Y, в последующей операции. 40-разрядный регистр MR разделен на три регистра (MR0, MR1, MR2). Содержимое любого из них может быть выведено на DMD-шину или R-шину и записано с DMD-шины.
Любой из регистров MAC может быть прочитан и записан в одном цикле. Чтение данных происходит в начале цикла, а запись - в конце цикла. Прочитанное содержимое регистра в начале одного цикла записывается в конце предыдущего, следовательно, новое значение регистра может быть прочитано только в течение следующего цикла. Такой механизм позволяет входному порту предоставлять операнд для MAC в начале цикла и оперировать со следующим значением из памяти в конце того же цикла. Это относится и к выходному регистру.
Регистры MR, MF, MX, MY продублированы в теневых банках. Одновременно процессору может быть доступен лишь один из банков. Теневой банк регистров может быть активизирован для чрезвычайно быстрого контекстного переключения. Таким образом, новая задача, типа подпрограммы обработки прерывания, может выполняться без сохранения текущих данных в памяти, благодаря использованию теневых банков. Выбор первичного или теневого банка регистров определяется установкой нулевого разряда в регистре MSTAT состояний процессора. Если этот разряд установлен в 0, то выбран первичный банк.

