ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.12.2021
Просмотров: 6837
Скачиваний: 22
270
Послідовно з'єднавши п таких ярусів, де п - розрядність даних, як показано на рис. 7.33b, отримаємо структуру конвеєрного операційного пристрою множення двійкових чисел з фіксованою комою.
Аналогічним чином можна побудувати конвеєрні операційні пристрої множення двійкових чисел з фіксованою комою на основі операторів попарного n-розрядного додавання двох чисел відповідно до інших алгоритмів множення, розглянутих в п. 4.4.4.2 розділу 4.
Не є складною і побудова потокового графа алгоритму паралельного матричного виконання багатомісної операції додавання часткових добутків, наприклад з діагональним розповсюдженням переносу відповідно до рис. 4.12, а також реалізація відповідного конвеєрного пристрою багатомісного додавання часткових добутків.
7.13.3 Пристрої ділення двійкових чисел з фіксованою комою
7.13.3.1. Багатотактові пристрої ділення двійкових чисел з фіксованою комою
Як це вже було показано в розділі 4, існує два основних варіанти виконання операції ділення: з зсувом залишків вліво та з зсувом дільника. Для реалізації АОП перший варіант вигідніший, так як вимагає використання n-розрядного віднімача, тоді як другий варіант вимагає використання 2п-розрядного віднімача. При цьому перший варіант може бути виконаний двома способами: з відновленням і без відновлення залишку. Схема ба-гатотактового пристрою ділення за алгоритмом з відновленням залишку, який працює відповідно до блок-схеми, наведеної на рис. 4.15, показана на рис. 7.34.
277
Перед початком виконання операції значення дільника Y та діленого X (через мультиплексор МП1) записуються відповідно до регістрів PrR, та PrY. В кожному такті послідовно віднімається дільник від діленого і проводиться аналіз значення поточного залишку. Якщо після чергового віднімання залишок додатній, то відповідний розряд частки рівний одиниці. Через мультиплексор МП2 пропускається значення з виходу віднімана, тобто залишок, після чого він зсувається на один розряд вліво і процес повторюється. При від'ємному залишку розряд частки рівний нулю. В цьому випадку виконується коригуюче збільшення дільника до поточного залишку (відновлення залишку), що здійснюється шляхом пропуску через мультиплексор МП значення з регістра PrR, після чого він зсувається на один розряд вліво і процес повторюється. В кожному такті визначається один розряд частки, який записується в старший розряд регістру PrQ. на місце зсунутого розряду. Після виконання п тактів в регістрі PrQі будe знаходитись n-розрядна частка від ділення діленого на дільник.
Досить подібною до описаної є схема багатотактового пристрою ділення без відновлення залишку, представлена на рис. 7.35.
Як і в попередньо розглянутому пристрої, перед початком виконання операції значення дільника Y та діленого X записуються відповідно до регістрів PrY та PrRі. В кожному такті залежно від значення розряду частки, отриманого на попередньому такті, через мультиплексор МП на суматор CM проходить прямий або інверсний код дільника, і тим самим дільник додається або віднімається від діленого. Якщо після чергової операції додавання або віднімання залишок додатній, то відповідний розряд частки рівний одиниці, при від'ємному залишку розряд частки рівний нулю. Після виконання операції значення з виходу суматора зсувається на один розряд вліво і процес повторюється. В кожному такті визначається один розряд частки, який записується в старший розряд регістру PrQ. на місце зсунутого розряду. Після виконання п тактів в регістра PrQі буде знаходитись n-розрядна частка від ділення діленого на дільник.
В обох розглянутих пристроях час виконання ділення дорівнює Тд = n (tМП + tCM + tPr ), де складові суми є затримками в мультиплексорі, суматорі та регістрі відповідно.
Потрібно відзначити, що досить близькими до розглянутих алгоритмів і пристроїв ділення є алгоритми і пристрої добування квадратного кореня.
272
7.13.3.2. Однотактові та конвеєрні пристрої ділення двійкових чисел з фіксованою комою
Подібно до операції множення, побудова однотактових операційних пристроїв ділення передбачає повністю апаратне відображення просторового графа алгоритму виконання операції комбінаційними схемами, які виконують функціональні оператори алгоритму і з'єднані між собою відповідно до графа алгоритму. Тому структура однотак-тового пристрою множення двійкових чисел з фіксованою комою повторить відповідну структуру графа алгоритму, наведеного на рис. 4.16.
При побудові конвеєрного операційного пристрою ділення двійкових чисел з фіксованою комою кожному функціональному оператору алгоритму ставиться у відповідність комбінаційна схема, яка його виконує, і, крім того, комбінаційні схеми, які реалізують функціональні оператори ярусів потокового графа алгоритму, розділяються конвеєрними регістрами. Алгоритм ділення виконується над вхідними даними при їх однократному проходженні через конвеєрний операційний пристрій.
Якщо вибрати для реалізації граф алгоритму ділення двійкових чисел з відновленням залишку, який представлений на рис. 4.16, то і-й ярус конвеєрного операційного пристрою ділення двійкових чисел з фіксованою Камою буде мати вигляд, показаний на рис. 7.36.
Якщо вибрати для реалізації граф алгоритму ділення двійкових чисел без відновлення залишку, то структура і-го яруса конвеєрного операційного пристрою ділення двійкових чисел з фіксованою комою буде мати вигляд, показаний на рис. 7.37а.
273
Послідовно з'єднавши n таких ярусів, де n - розрядність частки, як показано на рис. 7.37b, отримаємо структуру конвеєрного операційного пристрою ділення двійкових чисел з фіксованою комою за алгоритмом без відновлення залишку.
7.13.4. Пристрої обчислення елементарних функцій методом "цифра за цифрою"
7.13.4.1. Багатотактовий пристрій обчислення елементарних функцій методом "цифра за цифрою"
В системі команд сучасних комп'ютерів присутня велика кількість команд обчислення елементарних функцій типу ехр X, ln X, Sin X, Cos X, Sh X, Ch X, піднесення до степеня Am; arctg y/x тощо. Виконання цих команд на універсальному АЛП, яке виконує елементарні команди, вимагає значних витрат часу. Навіть реалізація на універсальному АЛП досить простого за складом базових операцій методу "цифра за цифрою" не дає відчутного виграшу в швидкодії внаслідок його специфіки, що знайшла віддзеркалення, наприклад, в необхідності виконання зсувів на змінне число розрядів. Тому в ряді сучасних комп'ютерів до складу АЛП вводять операційні пристрої для обчислення елементарних функцій.
Багатотактовий АОП (рис. 7.38), що реалізовує метод "цифра за цифрою" відповідно до ітераційних рівнянь, наведених в п. 4.5.2, містить:
РгХ, PrY, PrZ, РгС - регістри для зберігання початкових значень X0 , Y0 , Z0, та констант С, а також результатів проміжних обчислень X., Y, Z..
С31, С32 - схеми зсуву на і розрядів (і=1,2,...,п);
СВ1, СВ2, СВЗ - суматори-віднімачі;
ПЗП - постійний запам'ятовуючий пристрій для зберігання констант;
МП - мультиплексор.
Будь-яка з елементарних функцій може бути реалізована на даній структурі за час Т = n (tСВ+ tСЗ +tРГ де tcB - час затримки на суматорі-віднімачі, tСЗ - час затримки в схемі зсуву, tРГ - час запису даних до регістра, n - розрядність операндів. Окрім розглянутої
274
тут структури з паралельною обробкою даних, можуть бути реалізовані менш швидкодіючі структури пристроїв з порозрядною обробкою, а також багато варіантів проміжних структур.
До основних переваг даного методу з точки зору можливостей його реалізації в АОП належать:
■ простота обчислювальних алгоритмів,
що базуються лише на трьох
операціях:
додавання/віднімання,
зсув і вибірка з ПЗП;
-
однотипність обчислювальних алгоритмів для обчислення майже всіх елементарних функцій;
-
однотипність виконання кожної ітерації;
■ можливість побудови багатофункціональних
АОП, що використовують даний
метод;
■ похибки цього методу достатньо повно
досліджені та легко компенсуються
шля
хом введення додаткових
розрядів.
7.13.4.2. Однотактовий та конвеєрний операційні пристрої обчислення елементарних функцій методом "цифра за цифрою"
Постійність констант і кількості розрядів зсуву на кожній ітерації дозволяє при реалізації однотактового операційного пристрою видалити ПЗП для зберігання констант і схеми зсуву, які необхідні в багатотактових операційних пристроях (рис. 7.38).
Зсуви здійснюються шляхом відповідного з'єднання розрядів операційних елементів, а константи формуються на вході операційного елементу шляхом подачі логічного нуля або одиниці у відповідний розряд. Таким чином, для реалізації однієї ітерації алгоритму "цифра за цифрою" необхідно виконати одну операцію віднімання і дві операції додавання, якщо оператор f. має значення -1, або одну операцію додавання і дві операції віднімання, якщо оператор f має значення +1. Операції додавання і віднімання кодів чисел можна виконувати використовуючи комбінаційну схему суматора-віднімача. При виконанні віднімання необхідно стежити, щоб від'ємник X, Y або Z поступав на другий вхід суматора-віднімача. Як показав аналіз, при використанні суматорів-віднімачів обробку даних в пристрої найвигідніше виконувати в доповняльному коді. Режим роботи суматора-віднімача забезпечується сигналом керування 0, якщо виконується операція додавання, і 1, якщо виконується операція віднімання.
Структура і-го яруса конвеєрного операційного пристрою для виконання однієї ітерації алгоритму "цифра за цифрою" показана на рис. 7.39а.