logo
AOM / Мельник А

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а.

275

Параметр р управляє подачею на суматор-віднімач СВЗ констант Сi. Параметр fi управляє суматорами-віднімачами, поступаючи із знакового розряду Yi, або Zi через ко­мутатор КМ1 залежно від коду операції R.

Включивши послідовно n таких пристроїв, де n - кількість ітерацій, одержимо кон­веєрний операційний пристрій виконання алгоритму "цифра за цифрою" (рис. 7.39b). Якщо з описаного пристрою видалити конвеєрні регістри, отримаємо однотактовий операційний пристрій виконання алгоритму "цифра за цифрою".

7.13.5. Пристрої для виконання арифметичних операцій над числами з рухомою комою

7.13.5.1. Пристрої додавання і віднімання чисел з рухомою комою

Як відомо, формат з рухомою комою передбачає наявність двох частин числа - по­рядку (Р) та мантиси (М). Числа представляються у вигляді X = Мх2Рх, Y = Му2ру.

При виконанні додавання та віднімання порядки операндів вирівнюються, а мантиси додаються. Порядки вирівнюються збільшенням порядку меншого операнду до значення порядку більшого операнду. Цей порядок є порядком результату. Щоб при вирівнюванні порядків величина операнда не змінювалася, його мантиса одночасно зменшується. Піс­ля виконання вирівнювання порядків виникають додаткові молодші розряди мантиси, які до, або після додавання, відкидаються або заокруглюються.

Блок-схема додавання та віднімання двійкових чисел з рухомою комою наведена на рис. 7.40.

Детальніший розпис алгоритму додавання та віднімання двійкових чисел з рухомою комою наведено нижче, а структура однотактового операційного пристрою додавання та віднімання двійкових чисел з рухомою комою наведена на рис. 7.41. Послідовність кроків алгоритму та відповідні їм вузли пристрою є наступними:

276

Рис. 7.41. Структура однотактового операційного пристрою додавання та віднімання двійкових чисел з рухомою комою

При необхідності представлений на рис. 7.41 операційний пристрій додавання та віднімання двійкових чисел з рухомою комою може бути конвеєризований шляхом вве­дення конвеєрних регістрів між його ярусами.