00-0002-8000
00-0000-8001 00-0001-8001 00-0001-8001
00-0001-8001 00-0002-8001 00-0002-8001
00-0000-7FFF 00-0000-7FFF 00-0000-7FFF
00-0001-7FFF 00-0001-7FFF 00-0001-7FFF
Цей режим ефективний тільки, у тому випадку, коли значення регістра MR0 більше 0х8000. У всіх інших випадках працюють звичайні операції округлення. Цей режим дозволяє ефективніше реалізовувати алгоритми, що використовують зміщене округлення, наприклад, підпрограми мовного стискування GSM.
BARREL SHIFTER
Shifter надає повний набір сдвиговых функцій для 16- і 32-розрядних операндів. Це арифметичні зрушення, логічні зрушення і нормалізація. Так само shifter виконує сортування. Ці базисні функції можуть бути об'єднані, щоб реалізувати роботу з числами будь-якого формату, зокрема з плаваючою крапкою.
Опис блок схеми
Малюнок 4.1 ілюструє блок схему модуля зрушення. Shifter може бути роздільний на наступні частини: масив зрушення, логіка OR/PASS, детектор порядку і логіка порівняння порядку.
Масив зрушення приймає 16-розрядні дані і в одному циклі може помістити їх в будь-якій позиції 32-розрядного поля виводу. Це дає 49 можливих розміщень в полі виводу. Розміщення 16-ти вхідних розрядів визначається кодом управління C і сигналом посилання HI/LO.
Масив зрушення і зв'язна логіка OR/PASS оточені набором регістрів. Вхідний регістр Shifter (SI) містить дані для масиву зрушення і детектора порядку. SI-16-разрядный, записується і читається з DMD-шины. Як вхідні регістри для масиву зрушення і детектора порядку можуть служити AR, SR або MR, підключені через R-шину. Вихідний 32-розрядний регістр SR роздільний на дві частини по 16 розрядів: SR0 і SR1. Вони можуть бути завантажені з DMD шини і виведені на R- або DMD-шину. Також SR підключений до блоку OR/PASS логіки для проведення зрушень подвійної точності.