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

на главную - закладки

Жанры

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

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

Шрифт:

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

Ниже приводится полный список команд устройства сдвига Shifter в соответствии с принятыми ранее условными сокращениями. Назначение команд приводится в тексте описания этих команд и комментариях для некоторых из команд.

Команды арифметического сдвига:

[IF cond] SR = |SR OR| ASHIFT xop |(HI)|;

|(LO)|

Команды

логического сдвига:

[IF cond] SR = |SR OR| LSHIFT xop |(HI)|;

|(LO)|

Команды нормализации:

[IF cond] SR = |SR OR| NORM xop |(HI)|;

|(LO)|

Команды выделения порядка:

[IF cond] SR = EXP xop |(HI) |;

|(LO) |

|(HIX)|

Команды выравнивания блочного порядка:

[IF cond] SR = EXPADJ xop;

Команды арифметического непосредственного сдвига:

[IF cond] SR = |SR OR| ASHIFT xop BY <exp> |(HI)|;

|(LO)|

Команды логического непосредственного сдвига:

[IF cond] SR = |SR OR| LSHIFT xop BY <exp> |(HI)|;

|(LO)|

В записях некоторых команд присутствуют символы, которые имеют следующее назначение:

HI — сдвиг выполняется относительно старших 16 разрядов (SR1);

LO — сдвиг выполняется относительно младших 16 разрядов (SR0);

HIX — расширенный режим HI (при выделении порядка учитывается бит переполнения AV).

Например, команда:

SE=EXP AR (HIX);

означает, что в регистр SE будет занесен результат выделения порядка из регистра AR в расширенном режиме, т.е. с учетом бита переполнения AV.

Команда:

SR=NORM AR (HI); {Нормализация}

означает, что в регистр SR будет занесен результат нормализации регистра AR, причем сдвиг при нормализации будет выполняться относительно старших 16 разрядов.

Для всех команд устройства сдвига разрешено использовать следующие операнды xop: SI, SR0, SR1, AR, MR0, MR1, MR2, а в качестве ЕХР может быть любое целое число от -128 до 127.

Коды условия IF соответствуют кодам, приведенным ранее в табличном виде.

Ниже приведен пример программы для вычисления разницы двух чисел в формате с плавающей точкой, с применением устройства сдвига.

.MODULE float_point_sub;

{

 Программный модуль вычисления z = x - y в формате с плавающей точкой

 Входные операнды:

AX0 =
показатель x, АХ1 = мантисса x, AY0 = показатель y, AY1 = мантисса y.

 Выходные данные: AR = показатель z, SR1 = мантисса z

 Изменяются регистры: AX0,AY1,AY0,AF,AR,SI,SE,SR

 Время вычисления = 11 циклов

}

.ENTRY fps;

fps : AF=AX0-AY0; {Показатель x > показателя y?}

IF GT JUMP shifty; {Если да - переход на сдвиг y}

SI=AX1, AR=PASS AF; {Иначе - сдвиг x}

SE=AR;

SR=ASHIFT SI (HI);

AR=SR1-AY1; {Вычисление мантиссы}

JUMP subt;

shifty: SI=AY1, AR=-AF; SE=AR;

SR=ASHIFT SI (HI);

AY1=SR1;

AY0=AX0, AR=AX1-AY1; {Вычисление мантиссы}

subt: SE=EXP AR (HIX);

AX0=SE, SR=NORM AR (HI); {Нормализация}

AR=AX0+AY0; {Вычисление показателя}

RTS;

.ENDMOD;

Данная программа содержит многофункциональные команды, что позволило сократить время ее работы. Программа выполняется всего за 11 машинных циклов процессора.

Глава 17. Устройство обмена между шинами

В этой главе говорится об устройстве обмена между шинами памяти программ PMD и памяти данных DMD.

В операциях обмена данными и при загрузке данных вычислительными устройствами процессора, часто используется устройство обмена между шиной памяти программ PMD и шиной памяти данных DMD. Это устройство позволяет передавать данные между упомянутыми выше шинами в обоих направлениях. Рассмотрим работу данного устройства. Его структурная схема приведена на рис. 17.1.

Рис. 17.1. Устройство обмена между шинами памяти программ PMD и памяти данных DMD

Как видно из рисунка, устройство состоит из нескольких буферов, мультиплексора и регистра PX. Регистр PX используется для временного хранения 8 разрядов данных. Он необходим для обеспечения корректной передачи данных между 16-разрядной шиной DMD и 24-разрядной шиной PMD. При этом старшие 16 разрядов 24-разрядной шины PMD передаются на 16 разрядов шины DMD непосредственно, а 8 младших разрядов записываются в регистр PX, а затем передаются на младшие 8 разрядов шины DMD.

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

Дракон - не подарок

Суббота Светлана
2. Королевская академия Драко
Фантастика:
фэнтези
6.74
рейтинг книги
Дракон - не подарок

Бастард Императора. Том 8

Орлов Андрей Юрьевич
8. Бастард Императора
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бастард Императора. Том 8

Чужая дочь

Зика Натаэль
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Чужая дочь

Эра Мангуста. Том 2

Третьяков Андрей
2. Рос: Мангуст
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Эра Мангуста. Том 2

Идеальный мир для Лекаря 14

Сапфир Олег
14. Лекарь
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 14

Один на миллион. Трилогия

Земляной Андрей Борисович
Один на миллион
Фантастика:
боевая фантастика
8.95
рейтинг книги
Один на миллион. Трилогия

Помещицы из будущего

Порохня Анна
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Помещицы из будущего

Шлейф сандала

Лерн Анна
Фантастика:
фэнтези
6.00
рейтинг книги
Шлейф сандала

Черный маг императора 2

Герда Александр
2. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
6.00
рейтинг книги
Черный маг императора 2

Император

Рави Ивар
7. Прометей
Фантастика:
фэнтези
7.11
рейтинг книги
Император

Бандит 2

Щепетнов Евгений Владимирович
2. Петр Синельников
Фантастика:
боевая фантастика
5.73
рейтинг книги
Бандит 2

На границе империй. Том 9. Часть 2

INDIGO
15. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 2

Князь Серединного мира

Земляной Андрей Борисович
4. Страж
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Князь Серединного мира

Чайлдфри

Тоцка Тала
Любовные романы:
современные любовные романы
6.51
рейтинг книги
Чайлдфри