logo search
AOM / Мельник А

7.14. Таблично-алгоритмічні операційні пристрої

Арифметичні операції в таблично-алгоритмічних операційних пристроях необхідні для обчислення поправки. Ці обчислення можуть базуватися на використанні різних методів, таких як: дробово-раціональні наближення, ітераційні процеси, розкладання в ряди, наближення поліномами, ланцюговими дробами і т. д. При обчисленні таблич­но-алгоритмічним методом аргумент звичайно розбивається на дві частини. Розбивка аргументу на більшу кількість частин при неконвеєрній реалізації нераціональна через значну кількість додаткових операцій. При конвеєрній же реалізації така розбивка в ряді випадків може виявитися вигідною.

Застосування конвеєрного принципу обробки для виконання арифметичних опера­цій у таблично-алгоритмічних операційних пристроях дозволяє значно скоротити об'є­ми пам'яті в порівнянні з прямим табличним методом без зменшення, або і з підвищен­ням їх продуктивності. Продуктивність операційного пристрою, в якому застосований таблично-алгоритмічний метод, може бути вищою, ніж при використанні табличного методу, тому що швидкодія ПЗП залежить від розрядності операндів п, і, при великих вимогах по точності, може перевершувати затримку в одному ярусі операційного при­строю, яку можна довести до затримки в ПЗП значно меншого об'єму.

Основною проблемою при синтезі таблично-алгоритмічних операційних пристроїв є вибір із всіх існуючих методів обчислення даної функції чи набору функцій найбільш ефективного і визначення оптимальних співвідношень між об'мом ПЗП і витратами об­ладнання на арифметичну частину при забезпеченні потрібної продуктивності.

278

В даний час існує багато таблично-алгоритмічних методів обчислення елементар­них функцій, частина з яких була розглянута в розділі 4. Тут буде розглянута реалізація декількох таблично-алгоритмічних методів обчислення елементарних функцій, в яких застосований як загальний, так і частковий підходи при обчисленні поправки. Проекту­вання таблично-алгоритмічних операційних пристроїв за іншими, не розглянутими тут, алгоритмами може бути виконане аналогічно приведеному.

Розглянемо принципи побудови таблично-алгоритмічних операційних пристроїв з використанням часткового підходу при обчисленні поправки на прикладі реалізації тригонометричних функцій.

Розбивши аргумент на дві частини Х=Х1+Х2, утворені його старшими і молодшими розрядами, і скориставшись відомими співвідношеннями:

Sin(Xl+X2)=SinXl CosX2+CosXl SinX2;

Cos(Xl+X2)=CosXlCosX2-SinXlSinX2,

можна значно скоротити об'єм ПЗП в порівнянні з табличним методом. Структура одно-тактового операційного пристрою, який реалізує наведений алгоритм, показана на рис. 7.43.

Якщо прийняти, що XI- ціле число градусів з дискретністю 1, а Х2 - дробове числс градусів, з дискретністю 0,01, то неважко підрахувати, що таблиці, котрі зберігають SinXl і CosXl, будуть містити по 90 15-розрядних слів, а таблиці, що зберігають SinX2 і CosXI - по 1000 15-розрядних слів. Загальний об'єм ПЗП складе 5700 бітів, що в 24 рази менше, ніж при обчисленні табличним методом. В якості ПЗП з уже прошитими значеннями три­гонометричних функцій можна використати мікросхеми ДО505РЕ30068-ДО505РЕ30007: ємністю 4 Кбіти кожна. Перші дві мікросхеми містять 8 старших розрядів 512 значень функції SinX у діапазоні 0...П/4, а дві інші мікросхеми містять значення цієї функції в діапазоні П /4... П/2.

Ввівши конвеєрні регістри, включаючи і в перемножувачах ПМ, які також можна пс -будувати за конвеєрним принципом, можна підвищити продуктивність описаного при­строю. Зрозуміло, що зменшивши (об'єми таблиць, тут збільшені затрати обладнання на операційну частину, тобто введені чотири перемножувачі та суматор і віднімач.

279

Принципи побудови таблично-алгоритмічних операційних пристроїв з використан­ням загального підходу при обчисленні поправки розглянемо на прикладі обчислення елементарних функцій з використанням раціонального наближення.

Нехай обробці підлягають нормалізовані числа, представлені у форматі з фіксованою комою. Обчислення елементарних функцій будемо робити на основі методу сегментної апроксимації, відповідно до якого діапазон зміни аргументу [0,5;1] розбивається на ін­тервали з наступним наближенням функції на кожнім інтервалі за допомогою виразу Y = F(X) = А + W (X + В)2. Константи А та В вибираються з умови мінімізації абсолютної похибки, а константа Wвибирається рівною ступеню числа 2 (основа системи числен­ня), що дозволяє замінити операцію множення операцією зсуву. На різних інтервалах константи мають різні значення. Кількість інтервалів також визначається з умови міні­мізації абсолютної похибки, причому границі інтервалів визначаються k старшими двій­ковими розрядами аргументу, що полегшує здійснення адресації пам'яті, в яку записані константи. Структура однотактового операційного пристрою, який реалізує наведений вираз, показана на рис. 7.44.

Для реалізації описаного необхідно три блоки постійної пам'яті для збереження ко­ефіцієнтів, схему зсуву і два суматори. Для 12-ти розрядних операндів загальний об'єм ПЗП складає 8960 бітів. Константи A,B,W обчислюють з тим, щоб забезпечити задану точність обчислення. Вихідними даними для реалізації алгоритму розрахунку коефіці­єнтів є: реалізована функція, величина інтервалу зміни аргументу, розрядність функції й аргументу. Після обчислення отримують наступні величини: сумарний об'єм ПЗП, число підінтервалів зміни аргументу, число розрядів, необхідних для кодування номера підінтервалу, значення констант A,B,W.У табл. 7.6 як приклад наведені значення кон­стант, границі підінтервалів і абсолютна похибка обчислень m при обчисленні функції І/Х. Пристрій, що реалізує формулу y=A+W(X+B)2 є багатофункціональним. Для різних функцій константи мають різні значення. Включення конвеєра команд дозволяє обчис­лювати на такому пристрої одночасно kфункції від kданих.

280

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