Файл: Мельник А. Архітектура комп\'ютера.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 24.12.2021

Просмотров: 6851

Скачиваний: 22

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

246

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

Висока продуктивність обробки даних в сучасних компютерах досягається завдяки використанню просторового і часового паралелізму з урахуванням досягнень інтеграль­ної технології. Серед основних ідей слід виділити конвеєрну організацію обчислень, поєднання обробки на різних рівнях, використання декількох паралельно працюючих АЛП з конвеєрним принципом обробки даних, застосування секцій векторних регістрів в регістровій пам'яті, розшарування пам'яті, застосування найбільш швидкої елемент­ної бази з тією метою, щоб в максимальній мірі забезпечити розпаралелювання вико­нання операцій. Особливо цікавою в цьому плані є ідея підвищення продуктивності та ефективності за рахунок статичної і динамічної програмної зміни структури системи в цілях її наближення до структури графа алгоритму, тобто її реконфігурація. В основі концепції АЛП з реконфігурованою структурою лежить принцип, згідно з яким струк­тура АЛП, функції його операційних пристроїв, а також способи організації обчислю­вального процесу повинні відповідати структурі графа виконуваного алгоритму, а не навпаки, як це має місце у традиційних АЛП, коли в цілях реалізації алгоритму в рамках жорсткої структури АЛП алгоритм модифікується так, що йому надається форма, від­повідна структурі АЛП. Чим більше адаптована структура АЛП до специфіки вирішу­ваних задач, тим суттєвіше покращуються його характеристики. Така адаптація дося­гається шляхом перекладення обчислювальних процедур з програмного забезпечення на апаратну частину, чому сприяють вражаючі успіхи в області інтегральної технології. Це, зокрема, поява програмованих логічних інтегральних схем (ПЛІС), що дозволяє в найкоротші терміни реалізувати на 'їх базі крупні функціональні вузли. Це і можливість створення спеціалізованих НВІС місткістю в десятки і сотні мільйонів транзисторів, що привело до радикальних змін як в області технологічних та інструментальних засобів, так і в принципах проектування.

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

7.7. Структура арифметико-логічного пристрою

В більшості комп'ютерів АЛП виконує операції над двома вхідними даними, тобто є двомісним, та видає один вихідний результат, як це показано на рис. 7.7. При цьому спо­чатку операнди А та В записуються у вхідні регістри Ргі і Рг2, та поступають на входи АЛП через мультиплексори МП1 і МП2, які керуються сигналами Y1 та Y2. Після цього в АЛП виконується задана операція, тип якої задається кодом операції. Результат операції поступає на вихід АЛП та записується у вихідний регістр РгЗ. З виходу вказаного регі­стра результат поступає в регістровий файл процесора, а крім того, якщо він потрібний для виконання наступної операції, він поступає через мультиплексори МП1 або МП2 на один з входів АЛП, що здійснюється шляхом подання відповідних значень керуючих сигналів находи мультиплексорів.


247

В сучасних комп'ютерах АЛП є багатоблоковими. В них окремі групи операцій над кож­ним типом операндів виконуються окремими блоками, які називаються операційними при­строями. Це дозволяє підвищити продуктивність АЛП за рахунок паралельного виконання операцій. Узагальнена структура АЛП сучасного комп'ютера представлена на рис. 7.8.

До складу АЛП, крім вищеописаного пристрою для виконання елементарних опера­цій, входять п операційних пристроїв ОП1, ОП2,..., ОПп, які виконують складні опера­ції. Кількість п цих пристроїв та їх функції визначаються конструкторами комп'ютера залежно від сфери його використання. Входи та виходи операційних пристроїв АЛП підключаються до його інформаційних входів та виходів за допомогою комутуючих ме­реж, якими керує код виконуваної операції. Цим же кодом вибирається тип виконуваної операції в пристрої для виконання елементарних операцій та в операційному пристрої, якщо він може виконувати декілька операцій.


248

Як приклад АЛП реального комп'ютера, на рис. 7.9 представлено АЛП програмова­ного процесора NIOS 2.0 фірми Altera. Як бачимо, цей АЛП має наступні блоки: два вхід­них регістри RA та RB, два двовходових мультиплексори для подачі даних на обробку або з вхідних регістрів, або з вихідного регістра, операційні пристрої - арифметичний, логічний, зсуву та виділення байтів і слів, а також вихідний мультиплексор, необхідний для підключення до входу вихідного регістра виходу відповідного операційного при­строю, і сам вихідний регістр.

Ще більшу кількість паралельних блоків мають АЛП процесорів UltraSPARC фірми Sun Microsystems та PA-8Q0Q фіріми Huwlett-Packard, структури яких наведено на рис. 7Л0а та рис. 7.10b відповідно.

АЛП процесора UltraSPARC фірми Sun Microsystems має два блоки для виконання елементарних операцій над цілими числами (АШ1 та ALU2), перемножувач та поділь-


249

ник чисел з фіксованою комою (MUL, DIV), два АЛП для обробки даних з рухомою ко­мою (БАШО та БАШІ). АЛП процесора UltraSPARC може виконувати до чотирьох опе­рацій за один такт.

Процесор РА-8000 фірми Huwlett-Packard є суперскалярним процесором з невпо-рядкованим виконанням команд, який може виконувати до чотирьох команд за один такт. Його АЛП включає по два наступних блоки (длоки, розміщені зверху донизу на рис. 7.10b): 64-розрядне АЛП для виконання елементарних операцій над цілочислови­ми даними, операційний пристрій зсуву та сортування, операційний пристрій множен­ня та накопичення, операційний пристрій ділення та добування квадратного кореня.

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

7.8. Типи операційних пристроїв

Залежно від принципів побудови можна провести наступну класифікацію операцій­них пристроїв:

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

" Алгоритмічні операційні пристрої - операційні пристрої, в яких задана операція виконується шляхом апаратної реалізації алгоритму цієї операції.

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

Під апаратною реалізацією алгоритму розуміється його виконання без участі про­граміста (програми, яка зчитується з основної пам'яті). При цьому алгоритмічні та та­блично-алгоритмічні операційні пристрої в свою чергу діляться на:

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

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

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

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


250

7.9. Табличний операційний пристрій

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

Розглянемо принцип формування таблиці на прикладі виконання операції Y=X2. В табл. 7.2 наведені двійкові коди значень операндів X, які одночасно є адресами, та зна­чень операндів Y, які є вмістом відповідних комірок пам'яті.

Таблиця 7.2



Двійкове значення X (адреса)

Двійкове значення X (вміст комірок пам'яті)

000

000000

001

000001

010

000100

011

001001

100

010000

101

011001

110

100100

111

110001

Тут розрядності X та Y вибрані рівними відповідно 3 та 6 бітам.

Запис у пам'ять необхідної інформації може здійснюватися або розроблювачем цифрового пристрою при використанні оперативних та перепрограмовних постійних запам'ятовуючих пристроїв (ОЗП та ПГТЗП), або виготовлювачем замовних ПЗП. Важ­ливим при цьому є те, що виробництво замовних ПЗП не вимагає від виготовлювача тих великих витрат, з якими звичайно зв'язана розробка і виробництво спеціалізованих НВІС, тому що зводиться до виключення частини елементів заздалегідь розробленої то­пології типової НВІС. При використанні перепрограмовних ПЗП, що допускають елек­тричний перезапис збереженої інформації, з'являється можливість зміни виконуваних пристроєм функцій без зміни його структури.

Структура табличного операційного пристрою показана на рис. 7.11.