ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.12.2021
Просмотров: 6823
Скачиваний: 22
164
VP100 і VP200, за ними Hitachi S810 і NEC SX/2, які за технічними характеристиками не поступалися комп'ютерам фірми Cray Research
Протягом наступних 20 років векторні комп'ютери мали швидкий розвиток і з екзотичних перетворились в широковживаний клас потужних комп'ютерів.
4.6. Класифікація
архітектури комп'ютера за рівнем
суміщення
опрацювання
команд та даних
Виходячи з вищенаведеного розгляду різних принципів побудови процесорів, можна зробити наступну класифікацію архітектури комп'ютера за рівнем суміщення в них опрацювання команд та даних
■ за відсутністю та наявністю конвеєра
команд: комп'ютери без конвеєра команд
та
комп'ютери з конвеєром команд
■ за відсутністю та наявністю конвеєра
даних: комп'ютери без конвеєра даних
та
комп'ютери з конвеєром даних
-
за кількістю послідовно виконуваних фаз команд в конвеєрі: конвеєрні та супер-конвеєрні
-
за кількістю одночасно опрацьовуваних даних за однією командою: скалярні та векторні
" за кількістю одночасно опрацьовуваних скалярних команд: скалярні та супер-скалярні
■ за кількістю одночасно опрацьовуваних
векторних команд: векторні та
супер-
векторні
Проведений вище аналіз названих архітектур дозволяє зробити висновок про те, що для побудови високопродуктивних комп'ютерів потрібно, щоб вони мали суперконве-єрну суперскалярну та супервекторну архітектуру
4.7. Короткий зміст розділу
Розглянуто місце процесора в комп'ютері, його функції та склад. Приведена одно-шинна структура процесора комп'ютера із складною системою команд та розглянуто виконання на ній основних операцій процесора: вибірки слова із пам'яті, запам'ятовування слова в пам'яті, обміну між регістрами, виконання арифметичних і логічних операцій. Проведено порівняння одношинної з багатошинною структурою процесора
Виділено особливості побудови процесора комп'ютера із складною системою команд та сформовано вимоги до процесора комп'ютера з простою системою команд. Описані базові принципи побудови процесора комп'ютера з простою системою команд, а також взаємодія процесора з основною пам'яттю в комп'ютері з простою системою команд
Розглянуто фази виконання команд в процесорі комп'ютера з простою системою команд: вибирання та декодування команди, виконання та формування ефективної адреси, звернення до пам'яті/завершення умовного переходу, зворотного запису. Описана конвеєрна структура процесора з простою системою команд на прикладі процесора комп'ютера DLX. Розглянуто принципи побудови суперконвеєрним та суперскалярних процесорів, а також процесорів векторних комп'ютерів. Виходячи з вищенаведеного розгляду різних принципів побудови процесорів, зроблено класифікацію архітектури комп'ютера за рівнем суміщення в ньому опрацювання команд та даних.
165
4.8. Література для подальшого читання
Питання побудови процесорів комп'ютерів з складною системою команд детально розглянуті в багатьох підручниках та наукових працях, зокрема [1-4, 7, 8]. Вимоги до процесора комп'ютера з простою системою команд та базові принципи його побудови детально описані в роботах [5, 6]. Там же, а також в роботах [7-8] запропоновано принципи побудови процесора комп'ютера DLX і процесора векторних комп'ютерів, а в роботах [9-10] розглянуті принципи побудови суперконвеєрним та суперскалярних процесорів.
4.9. Література до розділу 4
-
Каган Б.М. Электронные вычислительнме машины и системи. - М,: Энергия, 1979. - 528 с.
-
Каган Б. М., Каневский М. М. Цифровые вычислительнме машины и системи. - М.: Знергия, 1974. - 680 с.
-
Tanenbaum, A. Structured Computer Organization, 4th end. Upper Saddle River, NJ: Prentice Hall, 1999.
-
Stallings, W. Computer Organization and Architecture, 5th ed., New York, NY: Macmillan Publishing Company, 2000.
-
D. Patterson, J. Hennessy. Computer Architecture. A Quantitative Approach. Morgan Kaufmann Publishers, Inc. 1996.
-
Patterson, D. A., & Hennessy, J. L. Computer Organization and Design, The Hardware/Software Interface, 2nd ed., San Mateo, CA: Morgan Kaufmann, 1997.
-
AGERWALA, T. AND }. COCKE [1987]. "High performance reduced instruction set processors", IBM Tech. Rep. (March).
-
Bakoglu, H. B., G. E Grohoski, L. E. Thatcher, J. A. Kahle, C R. Moore, D. P. Tuttle, W. E. Maule, W. R. Hardell, D. A. Hicks, M. Nguyen phu, R. K. Montoye, W. T. Glover, and S. Dhawan [1989]. «IBM second-generation RISC processor organization,» Proc. Int'l Conf. on Computer Design, IEEE (October), Rye, N.Y, 138-142.
-
Johnson, M. [1990]. Superscalar Microprocessor Design, Prentice Hall, Englewood Cliffs, N.J,
10. JOUPPI,
N.
P.
AND D. W. WALL [1989].
"Available
instruction-level parallelism for superscalar
and superpipelined
processors", Proc. Third Conf. on Architectural Support for
Programming Languages
and Operating Systems, IEEE/ACM (April),
Boston, 272-282.
4.10. Питання до розділу 4
-
Місце процесора в комп'ютері та його функції.
-
Що таке командний цикл?
-
Дві основні фази командного циклу.
-
Основні вузли процесора.
-
Одношинна структура процесора комп'ютера із складною системою команд і його зв'язки з іншими пристроями комп'ютера.
-
Виконання процесором операції "Вибірка слова з пам'яті".
-
Виконання процесором операції "Запам'ятовування слова в пам'яті".
-
Виконання процесором операції обміну між регістрами.
-
Виконання процесором арифметичних і логічних операцій.
10. Порівняння
одношинної та багатошинної структур
процесора комп'ютера із складною
системою
команд.
166
-
Чому в процесорі комп'ютера із складною системою команд команда виконується за багато тактів?
-
Чому в процесорі комп'ютера із складною системою команд потрібна складна система розпізнавання команди?
-
Чому в процесорі комп'ютера із складною системою команд організація конвеєризації виконання команд складніша, ніж у процесорі комп'ютера з простою системою команд?
-
Основні вимоги до процесора комп'ютера з простою системою команд.
-
Сформуйте правила вибору системи команд комп'ютера з простою системою команд.
-
Чому в системі команд комп'ютера з простою системою команд відносно небагато операцій та способів адресації?
-
Чому в комп'ютері з простою системою команд команди обробки даних мають реалізуватися лише у формі "регістр-регістр"?
-
Чому в комп'ютері з простою системою команд обміни з основною пам'яттю виконуються лише за допомогою команд завантаження/запису?
-
Чому в процесорі комп'ютера з простою системою команд дешифрування команд із спрощеними форматами має виконуватися лише апаратно?
-
Що є основою проектування структури процесора комп'ютера з простою системою команд?
-
Як будується процесор для того, щоб команда виконувалася за один такт?
-
Поясніть принципи роботи процесора комп'ютера DLX.
-
Опишіть фази виконання команди в процесорі комп'ютера DLX.
-
Поясніть роботу конвеєрного процесора комп'ютера DLX.
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці IF конвеєра комп'ютера DLX.
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці ID конвеєра комп'ютера DLX.
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці ЕХ конвеєра комп'ютера DLX при виконанні команди АЛП.
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці ЕХ конвеєра комп'ютера DLX при виконанні команд завантаження і збереження (load/store).
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці ЕХ конвеєра комп'ютера DLX при виконанні команди умовного переходу (branch).
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці MEM конвеєра комп'ютера DLX при виконанні команд АЛП.
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці MEM конвеєра комп'ютера DLX при виконанні команд завантаження або збереження.
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці WB конвеєра комп'ютера DLX при виконанні команд АЛП.
-
Проаналізуйте та поясніть мікродії, що виконуються на сходинці WB конвеєра комп'ютера DLX при виконанні команди load.
-
Основна ідея суперконвеєрних процесорів.
-
Суперскалярні процесори - структура та принцип роботи.
-
Процесори векторних комп'ютерів - структура та принцип роботи.
-
Наведіть класифікацію архітектури комп'ютера за рівнем суміщення в ньому опрацювання команд та даних.
Розділ 5
Запобігання конфліктам в конвеєрі команд
У попередньому розділі були розглянуті структури процесора, які забезпечують суміщений в часі режим виконання кількох команд, коли вони є незалежними одна від одної. Це суміщення називається конвеєрним виконанням команд. У даному розділі буде розглянуто ряд методів підвищення ефективності конвеєрного виконання команд. Потреба в цьому викликана тим, що при реалізації конвеєрного виконання команд виникають ситуації, які перешкоджають виконанню чергової команди з потоку команд в призначеному для неї такті. Такі ситуації називаються конфліктами, або ризиками. Конфлікти знижують продуктивність конвеєра, яка могла б бути досягнута в ідеальному випадку. Більше того, конфлікти можуть звести нанівець всі затрати на створення конвеєра команд.
Існує три класи конфліктів:
-
Структурні конфлікти, які виникають з причини браку ресурсів, коли апаратні засоби не можуть підтримувати всі можливі комбінації команд в режимі одночасного виконання з перекриттям.
-
Конфлікти за даними, що виникають у разі, коли виконання наступної команди залежить від результату виконання попередньої команди.
* Конфлікти керування, які виникають при конвеєризації команд передачі керування, які змінюють значення лічильника команд.
Конфлікти в конвеєрі призводять до необхідності призупинення виконання команд. Звичайно, якщо призупиняється виконання якої-небудь команди в конвеєрі, то виконання всіх наступних за нею команд також призупиняється і, зрозуміло, під час призупинення не вибирається жодна нова команда. При цьому команди, передуючі призупиненій, можуть продовжувати виконуватися.
Спочатку будуть розглянуті методи, що дозволяють знизити вплив структурних конфліктів, а також конфліктів за даними та конфліктів керування, а потім питання розширення можливостей комп'ютера по використанню паралелізму, закладеного в програмах. Далі буде проведено аналіз сучасних технологій компіляторів, які використовуються для збільшення ступеня паралелізму рівня команд.
5. 1. Структурні конфлікти
Конвеєризація виконання команд в комп'ютері вимагає значних додаткових затрат обладнання, особливо якщо забезпечується безконфліктне виконання в конвеєрі всіх можливих комбінацій команд. Якщо яка-небудь комбінація команд не може бути вико-
168
нана в конвеєрному режимі через причини браку ресурсів, то говорять, що в комп'ютері є структурний конфлікт.
Існує дві групи структурних конфліктів. До першої групи належать структурні конфлікти, які виникають через потребу порушення тактової частоти роботи конвеєра. До другої групи належать структурні конфлікти, які виникають у зв'язку з необхідністю очікування на звільнення ресурсів комп'ютера.
Найбільш типовим прикладом комп'ютерів, у яких можлива поява структурних конфліктів першої групи, є комп'ютери з не повністю конвеєрними функціональними пристроями. Час виконання операції в такому пристрої може складати декілька тактів синхронізації конвеєра. В цьому випадку послідовні команди, які використовують даний функціональний пристрій, не можуть надходити до нього в кожному такті. Прикладом такого не повністю конвеєрного функціонального пристрою може бути пристрій додавання-множення на основі одного суматора, в якому додавання виконується за один такт, а множення з метою економії обладнання реалізується шляхом ітераційного виконання операції додавання. Такий підхід є виправданим при нечастому виконанні операції множення.
Можлива також інша, але досить подібна за впливом на конвеєр ситуація, коли в останньому включений пристрій, затримка в якому більша одного такту конвеєра. Наприклад, це може бути паралельний однотактовий поділювач двійкових чисел, затримка в якому перевищує такт конвеєра, а його конвеєризація є невиправдано дорогою із-за причини маловживаності цієї операції.
Поява структурних конфліктів першої групи викликає необхідність призупинення роботи конвеєра до закінчення роботи функціонального пристрою, звернення до якого викликало конфлікт. Кількість тактів простою конвеєра рівна відношенню часу виконання операції в функціональному пристрої до величини такту конвеєра. На рис. 5.1 наведено діаграму виконання на симуляторі WinDLX нижче приведеного фрагмента деякої програми
addf f6,f5,f4
хог г1,гЗ,г4
and r5,r6,r7,
у якій виник структурний конфлікт першої групи, викликаний наявністю в програмі команди додавання чисел з рухомою комою addf. Фаза виконання ЕХ цієї команди є довшою в три рази, ніж такт роботи конвеєра. Тому фази MEM команд addf та and співпали, тобто вимагається одночасний доступ до ресурсів фази MEM, що і стало причиною конфлікту. Через те виконання команди and призупиняється (Stall - зупинка). Час призупинення визначається алгоритмом та структурою пристрою додавання чисел з рухомою комою.