FFF FFFFFFFF FFFF Позитивне
FFFF8000 00000000 0000 Негативне
Максимальний ціле число в додатковому коді
00000000 00007FFF FFFF Позитивне
FFFFFFFF FFFF8000 0000 Негативне
Максимальний беззнакове дробове число
0000FFFF FFFF FFFF FFFF
Максимальний беззнакове ціле число
00000000 0000FFFF FFFF
Результат насичення MR можна помістити або в регістровий файл, або назад в той же самий регістр MR.
В
1.6.4 Режими роботи з плаваючою точкою
Умножитель управляється двома бітами стану режиму в регістрі MODE1: біти режиму округлення і межі округлення. Крім того, ці біти впливають на операції ALU. br/>
Біт
MODE1
Ім'я
15
TRUNC
16
RND32
Функція
1 = усічення; 0 = округлення до найближчого
1 = округлення до 32 біт; 0 = округлення до 40 біт
6.4.1 Режими округлення даних з плаваючою точкою
Умножитель підтримує два режими округлення стандарту IEEE для операцій з плаваючою крапкою. Якщо біт TRUNC встановлений, то помножувач округлює результат з плаваючою точкою до нуля (усічення). Якщо біт TRUNC обнулений, то помножувач округлює результат до найближчого.
6.4.2 Кордон округлення даних з плаваючою точкою
У ADSP-2106x вхідні дані та результати помножувача з плаваючою точкою можуть бути 32 - і 40-розрядними. Якщо біт RND32 встановлений, то вісім молодших біт кожного вхідного операнда обнуляються перед множенням. Результати з плаваючою точкою виводяться в 32-розрядному форматі стандарту IEEE з нулями у 8 молодших розрядах 40-розрядного регістра реєстрового файлу. Мантиса результату округлюється до 23 біт (не включаючи прихований біт). Якщо біт RND32 дорівнює нулю, то помножувач отримує 40-розрядні числа з реєстрового файлу і виводить результати в 40-розрядному форматі стандарту IEEE підвищеної точності, з мантисою, округленої до 31 біта (не включаючи прихований біт).
В
6.5 Прапори стану помножувача
В кінці кожної операції помножувач оновлює чотири прапора стану в регістрі ASTAT. Стану цих прапорів відображають результат самої останньої операції помножувача. Умножитель також оновлює чотири "заліпшіе" прапора стану в регістрі STKY. Після оновлення "заліпшіе" прапор залишається в цьому стані, поки явно не буде обнулено. br/>
Біт ASTAT
Ім'я
6
MN
7
MV
8
ми
9
Ml
Біт STKY
Ім'я
6
MOS
7
MVS
8
MUS
9
MIS
Опис:
Результат операції помножувача негативний
Переповнення помножувача
Втрата значущих розрядів
Неправильна операція помножувача з плаваючою точкою
Опис
Переповнення результату помножувача з фіксованою
точкою
Переповнення результату помножувача з плаваючою точкою
Втрата значущих розрядів
Неправильна операція помножувача з плаваючою точкою
Оновлення прапора відбувається в кінці циклу, в якому генерується стан, а в наступному циклі він стає доступним. Якщо програма здійснює пряму запис у регістри ASTAT або STKY в тому ж циклі, в якому помножувач виконує операцію, то явна запис має перевагу.
6.5.1 Прапори втрати значущих розрядів (MU, MUS)
Втрата значущих розрядів визначена для всіх операцій помножувача з фіксованою і плаваючою крапкою. Прапори встановлюються, якщо результат операції помножувача менше, ніж мінімальне число, представимое в цьому форматі. Інакше він скинутий. p> Для результатів з плаваючою точкою MU і MUS встановлюються, якщо результат після округлення втратив значущі розряди (незміщеними порядок <-126). Ненормалізованние операнди завжди обробляються як нулі, тому вони ніколи не приводять до втрати значущих розрядів.
Для результатів з фіксованою точкою установка MU і MUS залежить від формату даних і відбувається за таких умов:
...