Поиск по базе сайта:
Тема 2 Основні архітектури кс icon

Тема 2 Основні архітектури кс




Скачати 281.11 Kb.
НазваТема 2 Основні архітектури кс
Дата конвертації15.11.2012
Розмір281.11 Kb.
ТипДокументи
1. /AKC/БЛАНК_контролю_нау.doc
2. /AKC/КОНТРОЛЬНА_АКС.doc
3. /AKC/ЛЕКЦIф_м1/01_ЛЕКЦIЯ__1.doc
4. /AKC/ЛЕКЦIф_м1/02_ЛЕКЦIЯ__2.doc
5. /AKC/ЛЕКЦIф_м1/03_ЛЕКЦIЯ__3.doc
6. /AKC/ЛЕКЦIф_м1/04_ЛЕКЦIЯ__4.doc
7. /AKC/ЛЕКЦIф_м1/05_ЛЕКЦIЯ__5.doc
8. /AKC/ЛЕКЦIф_м1/06_ЛЕКЦIЯ__6.doc
9. /AKC/ЛЕКЦIф_м1/07_ЛЕКЦIЯ__7.doc
10. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/01_x86.doc
11. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/02_Поколiння_процесорiв_з_1_по_7.doc
12. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/03_Процесори_молодших_поколiнь.doc
13. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/04_Мiкропроцесори_шостого_поколiння.doc
14. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/05_Архiтектура_IA64.doc
15. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/06_Огляд_сучасних_процесорiв.doc
16. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/_00_ЛЕКЦIЯ__8.doc
17. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/_ПРОЦЕСОРИ_мат.doc
18. /AKC/ЛЕКЦIф_м1/ЛЕКЦIЯ__8_процесори/_Типи процесорiв.doc
19. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_10/10_01_ОРГАНIЗАЦ_ПАМ+.doc
20. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_10/10_02_ДИНАМIЧНА_ПАМ+.doc
21. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_10/10_03_ТАЙМIНГИ+.doc
22. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_10/10_а_ЛЕКЦIЯ_ОП.doc
23. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_10/10_б_ЛЕКЦIЯ_Таймiнги.doc
24. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_10/10_в_ЛЕКЦIЯ_Огляд_ОП.doc
25. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_11/11_00_Фiзична структура HDD.doc
26. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_11/11_01_НАКОПИЧУВАЧI_+.doc
27. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_11/11_02_ЛЕКЦIЯ_RAID_.doc
28. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_11/11_02_ПРИСТР_ЗБЕРЕЖ_ДАНИХ_1+.doc
29. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_11/11_03_IDE.doc
30. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_11/11_04_SCSI_.doc
31. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_12/12_01_ШИНИ_розширення.doc
32. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_12/12_01а_PCI.doc
33. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_12/12_01б_PCI_express.doc
34. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_13/13_00_Iнтерфейси.doc
35. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_13/13_01_СОМ.doc
36. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_13/13_02_LPT.doc
37. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_13/13_03+06_Iнтерфейси.doc
38. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_13/13_04_USB+FireWire.doc
39. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_13/13_05_Fibre Channel.doc
40. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_13/13_07_Bluetooth.doc
41. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_13/13_08_IrDa.doc
42. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_14/14_00_Вiдесистема.doc
43. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_14/14_00_вiдеоадаптер.doc
44. /AKC/ЛЕКЦIф_м2/ЛЕКЦIЯ_14/14_01_Аудио_ГУК_Р12.doc
45. /AKC/ПИТАННЯ+модуль2+акс.doc
46. /AKC/ПИТАННЯ_МОДУЛЬ_ь1+.doc
47. /AKC/тесты с ответами.doc
Національний авіаційний унуверситет
Завдання на контрольну роботу завданям курсової роботи з дисципліни «Архітектура комп’ютерних систем»
Тема 1 Класичні основи побудови еом. Покоління комп’ютерів
Тема 2 Основні архітектури кс
Тема: Системні ресурси Системними ресурсами
Тема: Системні ресурси. (продовження) Система переривань
Тема: Системні ресурси (продовження) Прямий доступ до пам'яті dma
1. Поняття системної плати
Тема організація введення-виведення І bios
X86 Intel 80x86
Архітектура і мікроархітектура процесорів. Покоління процесорів
Мікропроцесори фірми Intel молодших поколінь
Мікропроцесори шостого покоління
Архітектура ia-64
Arhitektura komp system
Рис 1 Верхній рівень структурної організації комп‘ютера
Зміст Введення
Тип процессора Микро-архитектура
Підсистеми пам'яті
Динамічне озп. Конструктивні особливості
Таймінги пам'яті поняття «таймінгів»
Тема 12. Класифікація запам’ятовуючих пристроїв. Типи оперативної пам’яті план лекції Поняття «пам’ять еом»
Тема 13. Таймінги
Arhitektura komp system
Тема 14. Фізична структура жорсткого диску
Жорсткі диски. Введення 2 Фізичний пристрій жорсткого диска 2
Raid-масиви початкового рівня Що таке raid?
Устройства хранения данных
Интерфейс ide ata/atapi и sата
Arhitektura komp system
8. pci/pci-x
Шини pci/pci-x
Шина pci express Шина pci express
Usb fireWire ps/2 ata (ide)/ атарі
Інтерфейс rs-232C — com-порт
Паралельний інтерфейс — lpt-порт
Універсальна послідовна шина
Usb (Universal Serial Bus універсальна послідовна шина) є промисловим стандартом розширення архітектури рс, орієнтованим на інтеграцію з телефонією І пристроями побутової електроніки. Версія 1
Fibre Channel Fibre Channel
Arhitektura komp system
Arhitektura komp system
Arhitektura komp system
Тема 11. Відеоадаптер
Img src= 44 html 2f3a33e
Питання до модуля №2
2) Основні компоненти машини фон Неймана 3) Які покоління комп’ютерів характеризуються децентралізацією управління процедурами вводу-виводу (системи переривання програм)
Які принципи програмно-керованих еом не використовувалися Нейманом

Тема 2 Основні архітектури КС

Архітектура – узагальнене визначення системи з точки зору існуючих в ній інформаційних потоків і способу їх обробки.

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

Поняття архітектура комп’ютера охоплює сукупність пристроїв і зв’язків між ними.

У широкому сенсі поняття архітектура охоплює питання організації електронно обчислювальної машини в цілому, а також включає такі високо рівневі аспекти розробки комп’ютера, як організація структури процесора, наявність конвеєрів опрацювання команд і даних, наявність і обсяг кеш-пам’яті, побудова і реалізація віртуальної пам’яті, можливості і організація системної шини, реалізація процедур вводу/виводу та ін..

У вузькому сенсі під архітектурою розуміється архітектура набору команд. Архітектура набору команд служить межею між апаратною платформою та програмним забезпеченням і подає ту частину комп’ютера, що бачить програміст або розроблювач компілятора.

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

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

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

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

Основними властивостями архітектури комп’ютера є: універсальність, сумісність програмного забезпечення, маштабованість, агрегатність технічних засобів, широка номенклатура периферійних пристроїв і висока технологічність.

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

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

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

Однією з важливих властивостей програмного забезпечення (ПЗ) є його мобільність, тобто можливість використання тих самих програмних систем на різноманітних апаратних платформах.

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

По призначенню ПП можна розділити на дві групи: зовнішні пристрої пам’яті що призначенні для збереження великих масивів інформації, і пристроїв вводу/виводу, що забезпечують зв’язок комп’ютера з зовнішнім середовищем – користувачами, шляхом вводу в машину і виводу з неї інформації на пристрої друку і відображення.

Архітектура відображає аспекти структури мікроЕОМ, які є видимими для користувача, та інші параметри, зокрема: систему команд, режими адресації, формати даних, набір регістрів, що доступні для користувача.

На першому етапі розвитку мікроЕОМ використовувались в основному наступні принципи: модульність, магістральність, мікропрограмованість та принципи регулярності структури.

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

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

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

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

Визначення архітектури комп’ютера як універсальної мікроЕОМ за змістом, в основному, не відрізняється від визначення архітектури мікро ЕОМ взагалі.


Класифікації архітектур обчислювальних систем

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

Класифікація Фліна

Однією з вдалих класифікацій, де розглядаються архітектурні відмінності між ЕОМ, є класифікація, яку запропонував в 1966 році М. Фліном. Класифікація базується на понятті потоку, під яким розуміється послідовність елементів, команд або даних, що обробляється процесором. На основі числа потоків команд і потоків даних Флін виділяє чотири класи архітектур: OKOД (SISD), MKOД (MISD), OKМД (SIMD), MKМД (MIMD). В ній архітектурні особливості ЕОМ описуються з точки зору потоку команд (інструкцій) та потоку даних. Такий підхід дозволяє відносити архітектури комп’ютерів до одного з певних класів, що показано в табл. 2.1.

Таблиця 2.1Класифікація комп’ютерних архітектур за Фліном




Одинокий потік даних (ОД)

Множинний потік даних (МД)

Одинокий потік команд (ОК)

ОКОД (SISD) (одно процесорні комп’ютери)

ОКМД (SIMD) (комп’ютери з паралельними або асоціативними процесорами)

Множинний потік команд (МК)

МКОД (MISD) (конвеєрні магістральні комп’ютери)

МКМД (MIMD) (багатопроцесорні або багатомашинні комплекси)


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

Як основні ознаки обчислювальних структур по Фліну визначені поняття ординарності або множинності потоків команд і даних. Відповідно до цих ознак вводяться поняття чотирьох основних класів обчислювальних систем (рис. 2.1):

  1. ОКОД – системи з одиничним потоком команд і одиничним потоком даних (рис. 1а);

  2. МКОД – системи з множинним потоком команд і одиничним потоком даних (рис. 1б);

  3. ОКМД – системи з одиничним потоком команд і множинним потоком даних (рис. 1в);

  4. МКМД – системи з множинним потоком команд і множинним потоком даних (рис. 1г).

Відповідно до класифікаційної схеми Фліна звичайний однопроцесорний комп’ютер, що має фон-нейманівську структуру, входить у систему, що описується (рис. 1а) одномірним потоком команд і одномірним потоком даних.

До системи типу МКОД (рис. 1б) відносяться конвеєрні багатопроцесорні системи. Такі системи мають регулярну структуру у вигляді ланцюжка послідовно включених пристроїв. Опрацювання даних здійснюється таким чином, що інформація на виході одного процесора або обчислювального пристрою є вхідною інформацією для наступного в конвеєрному ланцюжку. Процесори в цьому випадку утворюють конвеєр, на вхід якого одиночний потік даних доставляє операнди з пам’яті. Кожний процесор або обчислювальний пристрій конвеєра опрацьовує відповідну частину задачі або операції і передає результати або сусідньому процесору, що використовує їх як вхідні дані.

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

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

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

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

Отже, що ж собою представляє кожен клас? У OKОД (SISD), Як уже говорилося, входять однопроцесорні послідовні комп'ютери наприклад на базі Intel 80486. Однак, критиками помічено, що в цей клас можна включити і векторно-конвеєрні машини, якщо розглядати вектор як одне неподільне дане для відповідної команди. У такому випадку в цей клас потраплять і такі системи, як CRAY-1.

Безперечними представниками класу ОКМД (SIMD) вважаються матриці процесорів: ILLIAC IV, ICL DAP, Goodyear Aerospace MPP, Connection Machine 1 і т.п. У таких системах єдиний управляючий пристрій контролює безліч процесорних елементів. Кожен процесорний елемент отримує від пристрою керування в кожен фіксований момент часу однакову команду і виконує її над своїми локальними даними. Для класичних процесорних матриць ніяких питань не виникає, однак у цей же клас можна включити і векторно-конвеєрні машини, наприклад, CRAY-1. У цьому випадку кожен елемент вектора треба розглядати як окремий елемент потоку даних. Але не все так просто. Останнім часом до типу виконання ОКМД (скоріше до типу виконання, а не до архітектури) відносять і розширення ОКОД-процесорів (або тих процесорів, які при досить відверненому розгляді виглядають як ОКОД) розширених методом виконання команд «ОКМД-в-регістрі», Коли довгий регістр ділиться на однакову кількість полів (звичайно 2n, n= 1 .. 3), над якими протягом одне машинного такту виконується одна і та ж команда, як над кількома регістрами, але з метою економії доступу до пам'яті всі значення завантажуються одночасно в цей реєстр. Схема ця надзвичайно популярна: Intel MMX/SSE/SSE2, AMD 3DNow!, SPARC VIS.

Клас МКМД (MIMD) надзвичайно широкий, оскільки містить у собі всілякі мультипроцесорні системи: Cm *, C.mmp, CRAY Y-MP, Denelcor HEP, BBN Butterfly, Intel Paragon, CRAY T3D та багато інших. Цікаво те, що якщо конвеєрну обробку розглядати як виконання безлічі команд (операцій ступенів конвеєра) не над поодиноким векторним потоком даних, а над множинним скалярним потоком, то всі розглянуті вище векторно-конвеєрні комп'ютери можна розташувати і в даному класі.

Запропонована схема класифікації аж до теперішнього часу є самою застосовується при початковій характеристиці того чи іншого комп'ютера. Якщо говориться, що комп'ютер належить класу ОКМД (SIMD) або МКМД (MIMD), То відразу стає зрозумілим базовий принцип його роботи, і в деяких випадках цього буває достатньо. Однак видно і явні недоліки. Зокрема, деякі заслуговують на увагу архітектури, наприклад dataflow і векторно-конвеєрні машини, чітко не вписуються в цю класифікацію. Інший недолік - це надмірна заповненість класу МКМД (MIMD). Необхідно засіб, більш вибірково систематизує архітектури, які за Флином потрапляють в один клас, але зовсім різні за кількістю процесорів, природу і топології зв'язку між ними, за способу організації пам'яті і, звичайно ж, за технологією програмування.

Наявність порожнього класу МКОД (MISD) не варто вважати недоліком схеми. Такі класи, на думку деяких дослідників в області класифікації архітектур, можуть стати надзвичайно корисними для розробки принципово нових концепцій в теорії і практиці побудови обчислювальних систем.





Рис. 1 Комп’ютерні архітектури за Фліном

Класифікація Фенга

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

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

Якщо розглянути граничні верхні значення даних характеристик, то кожну обчислювальну систему С можна описати парою чисел (n, m) і представити точкою на площині в системі координат довжина слова - ширина бітового шару. Площа прямокутника зі сторонами n і m визначає інтегральну характеристику потенціалу паралельності Р архітектури і носить назву максимального ступеня паралелізму обчислювальної системи: P(C) =mn. По суті, це значення є ніщо інше, як пікова продуктивність, виражена в інших одиницях. У період появи даної класифікації, а це початок 70-х років, ще здавалося можливим перенести поняття пікової продуктивності як універсального засобу порівняння і описи потенційних можливостей комп'ютерів з традиційних послідовних машин на паралельні. Розуміння того факту, що пікова продуктивність сама по собі не настільки важлива, прийшло пізніше, і цей підхід відображає, природно, ступінь осмислення специфіки паралельних обчислень того часу.

Якщо розглянути комп'ютер Advanced Scientific Computer фірми Texas Instruments (TIASC), який в основному режимі працює з 64-х розрядних словом, причому всі розряди обробляються паралельно і арифметико-логічний пристрій має чотири одночасно працюючих конвеєра, що містять по вісім ступенів. То така організація дає 4x8 = 32 біта в кожному бітовому шарі, і значить комп'ютер TI ASC може бути представлений у вигляді (64,32).

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

  • Розрядно-послідовні послівно-послідовні (n=m=l). У кожен момент часу такі комп'ютери обробляють тільки один двійковий розряд. Представником цього класу є давня система MINIMA з природним описом (1,1).

  • Розрядно-паралельні послівно-послідовні (n>1, m=1). Більшість класичних послідовних комп'ютерів, так само як і багато обчислювальні системи належить до даного класу: IBM 701 з описом (36, 1), PDP-11 (16, 1), IBM 360/50 і VAX 11/780 - обидві з описом (32, 1).

  • Розрядно-послідовні послівно-паралельні (n=1, m>1). Як правило обчислювальні системи даного класу складаються з великого числа однорозрядних процесорних елементів, кожен з яких може незалежно від інших обробляти свої дані. Типовими прикладами служать STARAN (1, 256) та МРР (1, 16384) фірми Goodyear Aerospace, прототип відомої системи ILLIAC IV комп'ютер SOLOMON (1, 1024) і ICL DAP (1, 4096).

  • Розрядно-паралельні послівно-паралельні (n>1, m>1). Більша частина існуючих паралельних обчислювальних систем, обробляючи одночасно mn двійкових розрядів, належить саме до цього класу: ILLIAC IV (64, 64), TI ASC (64, 32), C.mmp (16, 16), CDC 6600 (60, 10), BBN Butterfly GP1000 (32, 256).

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

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


Класифікація Хокні

Р. Хокні - Відомий англійський фахівець в області паралельних обчислювальних систем, розробив свій підхід до класифікації, введеної їм для систематизації комп'ютерів, що потрапляють в клас MIMD по систематиці Флінна.

Як зазначалося вище (див. класифікацію Флінна), клас MIMD надзвичайно широкий, причому поряд з великим числом комп'ютерів він об'єднує і ціла безліч різних типів архітектур, Хокні намагаючись систематизувати архітектури усередині цього класу, отримав ієрархічну структуру, представлену на малюнку:



Основна ідея класифікації полягає в наступному. Множинний потік команд може бути оброблений двома способами: або одним конвеєрним пристроєм обробки »працює в режимі поділу часу для окремих потоків, або кожен потік обробляється своїм власним пристроєм. Перша можливість використовується в MIMD комп'ютерах, які автор називає конвеєрними (наприклад, процесорні модулі в Denelcor HEP). Архітектури, використовують другий можливість, в свою чергу знову діляться на два класи:

  • MIMD комп'ютери, в яких можлива прямий зв'язок кожного процесора з кожним, що реалізується за допомогою перемикача;

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

Далі, серед MIMD машин з перемикачем Хокні виділяє ті, в яких вся пам'ять розподілена серед процесорів як їх локальна пам'ять (наприклад, PASM, PRINGLE). У цьому випадку спілкування самих процесорів реалізується за допомогою дуже складного перемикача, що становить значну частину комп'ютера. Такі машини носять назву MIMD машин з розподіленою пам'яттю. Якщо пам'ять це розділяється ресурс, доступний для всіх процесорів через перемикач, то такі MIMD є системами із загальною пам'яттю (CRAY X-MP, BBN Butterfly). Відповідно до типу перемикачів можна проводити класифікацію і далі: простий перемикач, багатокаскадний перемикач, загальна шина.

Багато сучасних обчислювальні системи мають як загальну поділювану пам'ять, так і розподілену локальну. Такі системи автор розглядає як гібридні MIMD з перемикачем.

При розгляді MIMD машин з мережевою структурою вважається, що всі вони мають розподілену пам'ять, а подальша класифікація проводиться відповідно до топологією мережі: зіркоподібна мережа (1CAР), регулярні решітки різної розмірності (Intel Paragon, CRAY T3D), гіперкуба (NCube, Intel iPCS), мережі з ієрархічною структурою, такий, як дерева, піраміди, кластери (Cm, CEDAR) і, нарешті, мережі, змінюють свою конфігурацію.

Зауважимо, що якщо архітектура комп'ютера спроектована з використанням декількох мереж з різною топологією, то, як видно, за аналогією з гібридними MIMD з перемикачами, їх варто назвати гібридними мережевими MIMD, а що використовують ідеї різних класів - просто гібридними MIMD. Типовим представником останньої групи, зокрема, є комп'ютер Connection Machine 2, що має на зовнішньому рівні топологію гіперкуба, кожен вузол якого є кластером процесорів з повної зв'язком.


Класифікація Шнайдера

У 1988 році Л. Шнайдер (L. Snyder) запропонував новий підхід до опису архітектур паралельних обчислювальних систем, що потрапляють в клас SIMD систематики Флінна. Основна ідея полягає у виділенні етапів вибірки і безпосередньо виконання в потоках команд і даних. Саме поділ потоків на адреси та їх вміст дозволяє описати такі раніше "незручні" для класифікації архітектури, як комп'ютери з довгим командним словом, систолічний масиви і цілий ряд інших.

Введемо необхідні для подальшого викладу поняття і позначення. Назвемо потоком посилань (reference stream) S деякої обчислювальної системи кінцеве безліч нескінченних послідовностей пар:

S= ((a1 1>) (a2 2 >)...,

(b1 1>) (b2 2 >)...,

(c1 1>)(c2 2 >)...},

де перший компонент кожної пари - це невід'ємне ціле число, зване адресою, другий компонент - це набір із n невід'ємних цілих чисел, званих значеннями, причому n однаково для всіх наборів всіх послідовностей. Наприклад, пара (b2 2 > ) визначає адресу b2 і значення < u2 >. Якщо значення розглядати як команди, то з потоку посилань отримаємо потік команд I, якщо ж значення інтерпретувати як дані, то відповідний потік - це потік даних D.

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

Нехай S довільний потік посилань. Послідовність адрес потоку S, позначається Sa, - Це послідовність, чий i--й елемент - набір, сформований з адрес i-x елементів кожної послідовності з S:

Sa = < a1 b1 ... c1 >, < a2 b2 ... c2 >,...

потоку S, позначається Sv, - Це послідовність, чий i--й елемент - набір, утворений злиттям наборів значень i-x елементів кожної послідовності з S:

Sv = < t1 u1 ... v1 >, < t2 u2 ... v2 >, ...

Якщо Sx - Послідовність елементів, де кожний елемент - набір з n чисел, то для позначення "ширини" послідовності будемо користуватися позначенням: w (Sx) = n.

З визначень Sa, Sv і w відразу вступає твердження: якщо S -- це потік посилань з значеннями з n чисел, то

w (Sa) = | S | і

w (Sv) = n | S|,

де | S | позначає потужність множини S.

Кожну пару (I, D) з потоком команд / і потоком даних D будемо називати обчислювальним шаблоном, а всі комп'ютери будемо розбивати на класи в залежності від того, який шаблон вони можуть виконати. Справді, комп'ютер може виконати шаблон (I, D), якщо він у стані:

  • видати w (Ia) адрес команд для одночасної вибірки з пам'яті;

  • декодувати і проінтерпретувати одночасно w (Iv) команд;

  • видати одночасно w (Da) адрес операндів і

  • виконати одночасно w (Dv) операцій над різними даними.

Якщо всі ці умови виконані, то комп'ютер може бути описаний таким чином:

Iw(Ia)w (Iv)Dw(Da) w (Dv)

Розглянемо класичну послідовну машину. Відповідно до класифікації Флінна, вона потрапляє в клас SISD, отже | I | = | D | = 1. Використовуючи твердження 1, отримуємо, що w(Ia) = w(Da) = 1. Через те, що в подібного роду комп'ютерах команди декодуються послідовно, слід рівність w (Iv) = 1, а послідовне виконання команд дає w (Dv) = 1. Тому опис однопроцесорній машини з фон-неймановской архітектурою буде виглядати так:

I1,1D1,1

Тепер візьмемо дві машини з класу SIMD: Goodyear Aerospace MPP і ILLIAC IV, причому не будемо брати до уваги різницю в способах обробки даних окремими процесорними елементами. Єдиний потік команд означає |1| = 1 для обох машин. З тих же міркувань, використаним тільки що для послідовної машини, для потоку команд отримуємо рівність w(Ia) = w(Iv) = 1. Далі, згадаємо, що для доступу до операнда пристрій управління МРР розсилає один і той же адреса всім процесорним елементів, тому в цій термінології МРР має єдину послідовність у потоці даних, тобто | D | = 1. Проте потім вибірка даних з пам'яті і наступна обробка здійснюється в кожному процесорному елементі, тому w(Dv) = 16384, а вся система МРР може бути описана так:

Il,lDl,16384

У ILLIAC IV пристрій управління, так само, як і в МРР, розсилає один і той же адреса всім процесорним елементів, проте кожен з них може отримати свій унікальний адреса, додаючи вміст локального індексного регістра. Це означає, що | D | = 64 і в системі присутні 64 потоку адрес даних, що визначають поодинокі потоки операндів, тобто w (Da) = W (Dv) = 64. Підсумовуючи сказане, приходимо до опису ILLIAC IV:

Il,lD64,64

Для більш чіткої класифікації Шнайдер вводить три предиката для позначення значень, які можуть приймати величини w(Ia), W(Iv), W(Da) і w(Dv):

s -- предикат "дорівнює 1";

с - предикат "від 1 до деякої (невеликий) константи";

m -- предикат "від 1 до довільного кінцевого числа".

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

МРР є підставою для того, щоб віднести її до класу IssDsm. Звичайно ж, відмінність між 'c' і 'm' в достатній мірі умовне і, як правило, породжує масу питань. Зокрема, як описати машину, в якій процесори пов'язані через загальну шину? З одного боку, немає ніяких принципових обмежень на кількість підключаються процесорів. Однак кожний додатковий процесор збільшує завантаженість шини, і при досягненні певного порогу підключення нових процесорів безглуздо. Як описати таку систему, 'c' або 'm'? Це питання є відкритим.

На основі вказаних предикатів можна виділити наступні класи комп'ютерів:

  • IssDss - фон-неймановскі машини;

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

  • IssDsm - SIMD комп'ютери без можливості отримання унікального адреси для даних у кожному процесорному елементі, що включають МРР, Connection Machine 1 так само, як і систолічної масиви.

  • ISSDCC - багатовимірні SIMD машини - фон-неймановскіе машини, здатні розщеплювати потік даних на незалежні потоки операндів;

  • IssDmm - це SIMD комп'ютери, що мають можливість незалежної модифікації адрес операндів в кожному процесорному елементі, наприклад, ILLIAC IV і Connection Machine 2.

  • IscDcc - обчислювальні системи, які вибирають і виконує одночасно кілька команд, для доступу до яких використовується одна адреса. Типовим прикладом є комп'ютери з довгим командним словом (VLIW).

  • IccDcc - багатовимірні MIMD машини. Фон-неймановскі машини, які можуть розщеплювати свій цикл вибірки/виконання з метою обробки паралельно декількох незалежних команд.

  • ImmDmm - до цього класу належать всі комп'ютери типу MIMD.

Досить ясно, що не потрібно розглядати всі можливі комбінації описувачів 's', 'c' і 'm', Так як архітектура реальних комп'ютерів накладає ряд цілком розумних обмежень. Очевидно, що кількість адрес w (Sa) не повинно перевищувати числа повернутих значень w (Sv), що комп'ютер може обробити. Звідси випливають нерівності: w(Ia) <= w(Iv) і w(Da) <= w(Dv). Іншим природним припущенням є той факт, що кількість виконуваних команд не повинно перевищувати числа оброблюваних даних: w(Iv) <= w(Dv).

Підводячи підсумок, можна відзначити два позитивних моменти в класифікації Шнайдера: більш виборча систематизація SIMD комп'ютерів і можливість опису нетрадиційних архітектур типу систолічним масивів або комп'ютерів з довгим командним словом. Однак майже всі обчислювальні системи типу MIMD знову потрапили в один і той же клас ImmDmm. Це й не дивно, так як критерій класифікації, заснований лише на потоках команд і даних без урахування розподілене пам'яті і топології міжпроцесорних зв'язку, занадто слабкий для подібних систем.


Класифікація Скіллікорна

У 1989 році була зроблена чергова спроба розширити класифікацію Флінна і, тим самим, подолати її недоліки. Д. Скіллікорн розробив підхід, придатний для опису властивостей багатопроцесорних систем та деяких нетрадиційних архітектур, зокрема dataflow і reduction machine.

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

  • процесор команд (IP - Instruction Processor) - функціональний пристрій, що працює, як інтерпретатор команд; в системі, взагалі кажучи, може відсутнім;

  • процесор даних (DP - Data Processor) - функціональний пристрій, що працює як перетворювач даних, у відповідності з арифметичними операціями;

  • ієрархія пам'яті (IM -- Instruction Memory, DM -- Data Memory) - запам'ятовуючий пристрій, у якому зберігаються дані та команди, що пересилаються між процесорами;

  • перемикач -- абстрактне пристрій, що забезпечує зв'язок між процесорами і пам'яттю.

Функції процесора команд багато в чому схожі з функціями пристроїв керування послідовних машин і, згідно з Д. Скіллікорну, зводяться до наступного:

  • на основі свого стану і отриманої від DP інформації IP визначає адресу команди, яка буде виконуватися наступної;

  • здійснює доступ до IM для вибірки команди;

  • отримує і декодує вибрану команду;

  • повідомляє DP команду, яку треба виконати;

  • визначає адреси операндів і посилає їх в DP;

  • отримує від DP інформацію про результат виконання команди.

Функції процесора даних роблять його багато в чому, схожим на арифметичне пристрій традиційних процесорів:

  • DP отримує від IP команду, яку треба виконати;

  • отримує від IP адреси операндів;

  • вибирає операнди з DM;

  • виконує команду;

  • запам'ятовує результат у DM;

  • повертає в IP інформацію про стан після виконання команди.

У термінах таким чином визначених основних частин комп'ютера структуру традиційної фон-неймановской архітектури можна представити в наступному вигляді:



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

  • 1-1 - перемикач такого типу пов'язує пару функціональних пристроїв:

  • n-n - перемикач пов'язує i-е пристрій з одного великого кола пристроїв з i-м пристроєм з іншого множини, тобто фіксує попарно зв'язок;

  • 1-n - перемикач з'єднує одне виділене пристрій з усіма функціональними пристроями з деякого набору:

  • nхn - кожне функціональний пристрій одного безлічі може бути пов'язано з будь-яким пристроєм іншого множини, і навпаки,

Прикладів подібних перемикачів можна навести дуже багато, так. все матричні процесори мають перемикач типу 1-n для зв'язку єдиного процесора команд з усіма процесорами даних. У комп'ютерах сімейства Connection Machine кожен процесор даних має свою локальну пам'ять, отже, зв'язок буде описуватися як n-n. У той же час, кожен процесор команд може зв'язатися з будь-яким іншим процесором, тому дана зв'язок буде описана як nхn.

Класифікація Д. Скіллікорна складається з двох рівнів. На першій рівні вона проводиться на основі восьми характеристик:

  1. кількість процесорів команд (IP);

  2. число запам'ятовуючих пристроїв (модулів пам'яті) команд (IM);

  3. тип перемикача між IP і IM;

  4. кількість процесорів даних (DP);

  5. число запам'ятовуючих пристроїв (модулів пам'яті) даних (DM);

  6. тип перемикача між DP і DM;

  7. тип перемикача між IP і DP:

  8. тип перемикача між DP і DP.

Розглянемо згаданий вище комп'ютер Connection Machine 2. У термінах даних характеристик його можна описати:

(1, 1, 1-1, n, n, n-n, 1-n, nxn),

а умовне зображення архітектури наведено на наступному малюнку:



Для сильного зв'язку мультипроцесорів (BBN Butterfly, C.mmp) ситуація інша. Такі системи складаються з безлічі процесорів, з'єднаних з модулями пам'яті за допомогою динамічного перемикача. Затримка при доступі будь-якого процесора до будь-якого модуля пам'яті приблизно однакова. Зв'язок і синхронізація між процесорами здійснюється через загальні (колективні) змінні. Опис таких машин в рамках даної класифікації виглядає так:

(n, N, n-n, n, n, nxn, n-n, ні), а саму архітектуру можна зобразити так, як на наступному рисунку:



Використовуючи введені характеристики і припускаючи, що розгляд кількісних характеристик можна обмежити лише трьома можливими варіантами значень: 0, 1 і n (тобто більше одного), можна отримати 28 класів архітектур.

У класах 1-5 знаходяться комп'ютери типу dataflow і reduction, що не мають процесорів команд у звичайному розумінні цього слова. Клас 6 це класична фон-неймановская послідовна машина. Всі різновиди матричних процесорів містяться у класах 7-10. Класи 11 та 12 відповідають комп'ютерів типу MISD класифікації Флінна і на даний момент, на думку автора, порожні. Класи з 13-го по 28-й займають всі можливі варіанти мультипроцесорів, причому в 13-20 класах знаходяться машини з досить звичною архітектурою, в той час, як архітектура класів 21-28 поки виглядає екзотично.

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

Наприкінці даного опису має сенс привести сформульовані автором три мети, яким має слугувати добре побудована класифікація:

  • полегшувати розуміння того, що досягнуто на сьогоднішній день в області архітектур обчислювальних систем, і які архітектури мають найкращі перспективи в майбутньому;

  • підказувати нові шляхи організації архітектур - мова йде про тих класах, які в даний час з різних причин порожні;

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


Класифікація Дункана

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

  • З класу паралельних машин повинні бути виключені ті, в яких паралелізм закладений лише на самому низькому рівні, включаючи:

    • конвейеризації на етапі підготовки та виконання команди (instruction pipelining), тобто часткове перекриття таких етапів, як дешифрування команди, обчислення адрес операндів, вибірка операндів, виконання команди і збереження результату;

    • наявність в архітектурі декількох функціональних пристроїв, що працюють незалежно, зокрема, можливість паралельного виконання логічних і арифметичних операцій;

    • наявність окремих процесорів введення / виводу, що працюють незалежно і паралельно з основними процесорами.

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

  • Класифікація повинна бути узгодженою з класифікацією Фліна, показала правильність вибору ідеї потоків команд і даних.

  • Класифікація повинна описувати архітектури, які однозначно не укладаються в систематику Фліна, але, тим не менше, відносяться до паралельних архітектура (наприклад, векторно-конвеєрні).

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



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

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

Гібридні MIMD / SIMD архітектури, dataflow, reduction і wavefront обчислювальні системи здійснюють паралельну обробку інформації на основі асинхронного управління, як і MIMD системи. Але вони виділені в окрему групу, оскільки всі мають ряд специфічних особливостей, якими не володіють системи, традиційно пов'язані з MIMD.

MIMD/SIMD - типово гібридна архітектура. Вона припускає, що в MIMD системі можна виділити групу процесорів, що представляє собою підсистему, працюючу i режимі SIMD (PASM Non-Von). Такі системи відрізняються відносною гнучкістю, оскільки допускають реконфігурацію відповідно до особливостей розв'язуваної прикладної задачі.

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

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

Wavefront array архітектура поєднує в собі ідею систолічної обробки даних і модель обчислень, що використовується в dataflow. У даній архітектурі процесори об'єднуються в модулі і фіксуються зв'язку, по яких процесори можуть взаємодіяти один з одним. Однак, на противагу ритмічній роботі систолічним масивів, дана архітектура використовує асинхронний механізм зв'язку з підтвердженням (handshaking), через що "фронт хвилі" обчислень може змінювати свою форму у міру проходження по всьому безлічі процесорів.





Схожі:




База даних захищена авторським правом ©lib.exdat.com
При копіюванні матеріалу обов'язкове зазначення активного посилання відкритою для індексації.
звернутися до адміністрації