загрузка...
загрузка...
На головну

SISD-комп'ютери

 
 


Мал. 2 SISD- архітектура

Комп'ютери з CISC(Complex Instruction Set Computer - Комплекс з набором команд) архітектурою мають комплексну (повну) систему команд, під управлінням якої виконуються різноманітні операції типу «пам'ять-пам'ять», «пам'ять-регістр», «регістр-пам'ять», «регістр-регістр». Дана архітектура характеризується:

? великим числом команд (понад 200);

? змінною довжиною команд (від 1 до 11 байт);

? значним числом способів адресації і форматів команд;

? складністю команд і багатотактного їх виконання;

? наявністю вбудованого управління, що знижує швидкодію і ускладнює процесор.

Обмін з пам'яттю в процесі виконання команди робить практично неможливою глибоку конвейеризацию арифметики, тобто обмежується тактова частота процесора, а значить, і його продуктивність.

Більшість сучасних комп'ютерів типу IBM PC відносяться до CISC архітектурі, наприклад, комп'ютери з мікропроцесорами 8080, 80486, 80586 (товарна марка Pentium).

Комп'ютери з RISC (Reduced Instruction Set Computer - Комп'ютер зі скороченим набором команд) архітектурою містять набір простих, часто вживаних в програмах команд. Основними є операції типу «регістр-регістр».

Дана архітектура характеризується:

? скороченим числом команд;

? тим, що більшість команд виконується за один машинний такт;

? постійною довжиною команд;

? невеликою кількістю способів адресації і форматів команд;

? тим, що для простих команд немає необхідності у використанні мікропрограмного управління;

? великим числом регістрів внутрішньої пам'яті процесора.

Комп'ютери з RISC-архітектурою «зобов'язані» матиме перевагу в продуктивності в порівнянні з CISC комп'ютерами, за яке доводиться розплачуватися наявністю в програмах додаткових команд обміну регістрів процесора з оперативною пам'яттю.

Ще одним різновидом однопотокові архітектури є суперскалярна обробка. Сенс цього терміна полягає в тому, що в апаратуру процесора закладаються кошти, що дозволяють одночасно виконувати дві або більше скалярні операції, тобто команди обробки пари чисел.

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

Апаратна реалізація суперскалярной обробки застосовується як в CISC, так і в RISC - процесорах і полягає в чисто апаратному механізмі вибірки з буфера інструкцій (або кешу інструкцій) незв'язаних команд і паралельному запуску їх на виконання. Цей метод хороший тим, що він "прозорий" для програміста, складання програм для подібних процесорів не вимагає ніяких спеціальних зусиль, відповідальність за паралельне виконання операцій покладається в основному на апаратні засоби.

VLIW-архітектури суперскалярной обробки. Другий спосіб реалізації суперскалярной обробки полягає в кардинальній перебудові всього процесу трансляції та виконання програм. Уже на етапі підготовки програми компілятор групує незв'язані операції в пакети, вміст яких строго відповідає структурі процесора. Наприклад, якщо процесор містить функціонально незалежні пристрої (складання, множення, зсуву і ділення), то максимум, що компілятор може «укласти» в один пакет - це чотири різнотипні операції; (Додавання, множення, зрушення і розподіл). Сформовані пакети операцій перетворюються компілятором в командні слова, які в порівнянні зі звичайними інструкціями виглядають дуже великими. Звідси і назва цих суперкоманд і відповідної їм архітектури - VLIW (Very Large Instruction Word - дуже широке командне слово).

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

Архітектури класу SISD охоплюють ті рівні програмного паралелізму, які пов'язані з одиночним потоком даних. Вони реалізуються багатофункціональної обробкою і конвеєром команд.

Паралелізм циклів і ітерацій тісно пов'язаний з поняттям множинності потоків даних і реалізується векторної обробкою. В таксономії комп'ютерної архітектури М. Фліна виділена спеціальна група однопроцесорних систем з паралельною обробкою потоків даних - SIMD.

SIMD (Single Instruction Stream - Multiple Data Stream) або ОКМД - один потік команд і безліч потоків даних. SIMD комп'ютери складаються з одного командного процесора (керуючого модуля), званого контролером, і декількох модулів обробки даних, званих процесорними елементами.

 
 


Мал. 3. SIMD- архітектура

керуючий модуль приймає, аналізує і виконує команди. Якщо в команді зустрічаються дані, контролер розсилає на всі процесорні елементи команду, і ця команда виконується на декількох або на всіх процесорних елементах.

Усе процесорні елементи ідентичні і кожен з них являє собою сукупність управляюще-обробного органу (швидкодіючого процесора) і процесорної пам'яті невеликої ємності. Процесорні елементи виконують операції паралельно над різними потоками даних (ПД) під керуванням загального потоку команд (ПК), внаслідок чого такі ЕОМ називаються системами із загальним потоком команд. У будь-який момент в кожному процесорі виконується одна і та ж команда, але обробляються різні дані. Реалізується синхронний паралельний обчислювальний процес.

Одним з переваг даної архітектури вважається те, що в цьому випадку більш ефективно реалізована логіка обчислень. До половини логічних інструкцій звичайного процесора пов'язано з управлінням виконанням машинних команд, а решта їх частина відноситься до роботи з внутрішньою пам'яттю процесора і виконання арифметичних операцій. У SIMD комп'ютері управління виконується контролером, а "арифметика" віддана процесорним елементам. Можливі два способи побудови комп'ютерів цього класу. Це матрична структура ЕОМ і векторно-конвеєрна обробка.

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

Основні їх переваги - висока продуктивність і економічність. Недоліки матричних систем, що обмежують області їх застосування, полягають в жорсткості синхронного управління матрицею процесорних елементів і складності програмування обміну даними між процесорними елементами через комутатор.

Вони застосовуються головним чином для реалізації алгоритмів, що допускають паралельну обробку багатьох потоків даних по одній і тій же програмі (одномірне і двовимірне пряме і зворотне перетворення Фур'є, рішення систем диференціальних рівнянь в приватних похідних, операцій над векторами і матрицями і ін.). Матричні системи досить часто використовуються спільно з універсальними однопроцесорними ЕОМ. Прикладом векторних супер-ЕОМ з матричної структурою є знаменита свого часу система ILLIAC-IV.

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

Векторно-конвеєрну структуру мають однопроцесорні супер-ЕОМ серії VP фірми Fujitsu; серії S компанії Hitachi; C90, М90, Т90 фірми Cray Research; Сгау-3, Сгау-4 фірми Cray Computer і т.д. Загальним для всіх векторних суперкомп'ютерів є в системі команд векторних операцій, що допускають роботу з векторами певної довжини, допустимо, 64 елемента по 8 байт. У цих комп'ютерах операції з векторами зазвичай виконуються над векторними регістрами.

Ще одним прикладом SIMD-архітектури є технологія ММХ, Яка істотно поліпшила архітектуру мікропроцесорів фірми Intel. Технологія MMX являє собою компромісне рішення, що об'єднує шляху, використовувані в класичному процесорі CISC-архітектури (Pentium), в комп'ютерах з паралельною SIMD-архітектурою, з додаванням ряду простих (RISC) команд паралельної обробки даних. Вона розроблена для прискорення виконання мультимедійних і комунікаційних програм з додаванням нових типів даних і нових інструкцій. Технологія в повній мірі використовує паралелізм SIMD-архітектури і зберігає повну сумісність з існуючими операційними системами і додатками для SISD.

3. багатопроцесорні системи

Точно так же, як однопроцесорні комп'ютери, представлені архітектурою з одним потоком даних SISD і безліччю потоків даних SIMD, так і багатопроцесорні системи можуть бути представлені двома базовими типами архітектур в залежності від паралелізму даних:

 



архітектура ЕОМ | MISD комп'ютери
загрузка...
© um.co.ua - учбові матеріали та реферати