12.1. Використання принципів паралельної обробки інформації в архітектурі комп'ютера
Сьогодні використання принципів паралельної обробки інформації в архітектурі комп'ютерів є звичним. Практично всі сучасні комп'ютери використовують той або інший вид паралельної обробки інформації. На презентаціях нових мікросхем і в інформаційних матеріалах виробників це подається як останнє слово техніки і передовий край науки, і це дійсно так, якщо розглядати реалізацію цих принципів у мініатюрних рамках одного кристалу.
Водночас, ідеї паралельної обробки інформації з'явилися досить давно. Вони впроваджувалися в найбільш передових, дорогих, а тому одиничних, комп'ютерах свого часу. Пізніше, після належного відпрацювання технології і здешевлення виробництва, вони використовувалися в комп'ютерах середнього класу, і нарешті сьогодні вони в повному обсязі втілюються у робочих станціях і персональних комп'ютерах.
423
Прослідкуємо за впровадженням значущих нововведень в архітектурі комп'ютера з точки зору паралельної обробки інформації, починаючи практично з часу створення перших комп'ютерів.
Паралельна пам'ять та паралельна арифметика. Всі найперші комп'ютери (EDSAC, EDVAC, UNIVAC) мали послідовну пам'ять, із якої слова зчитувалися послідовно біт за бітом. Першим комерційно доступним комп'ютером, що використовував паралельну пам'ять і паралельну арифметику, став комп'ютер IBM701, який поступив на ринок у 1953 році. В більш популярній моделі IBM704, що поступила на ринок у 1955 році, крім названого, була вперше застосована пам'ять на феритових сердечниках і апаратний арифметичний пристрій з рухомою комою.
Незалежні процесори введення-виведення. В перших комп'ютерах процесори не лише обробляли інформацію, а й керували введенням-виведенням. Проте швидкість роботи найшвидшого зовнішнього пристрою, а в ті часи це була магнітна стрічка, була в 1000 разів меншою швидкості процесора, тому під час операцій введення/виведення процесор фактично простоював. У 1958 р. до комп'ютера IBM704 приєднали 6 незалежних процесорів введення/виведення, що після одержання команд від центрального процесора могли працювати паралельно з ним, а сам комп'ютер перейменували в IBM709. Дана модель була досить вдалою, підтвердженням чого є те, що було продано біля 400 її екземплярів, які знаходились в експлуатації близько 20 років.
Передбачення та розшарування пам'яті. У 1961 році фірма IBMзакінчила розробку комп'ютера STRETCH,що мав дві принципово важливі особливості: передбачення для вибірки команд і розшарування пам'яті на два блоки для узгодження низької швидкості вибірки з пам'яті та швидкості виконання операцій.
Конвеєр команд. Вперше конвеєрний принцип виконання команд був використаний у комп'ютері ATLAS,розробленому в Манчестерському університеті в 1962 році. Виконання команд розбито на 4 стадії: вибірка команди, обчислення адреси операнда, вибірка операнда і виконання операції. Конвеєризація дозволила зменшити час виконання команд із 6 мкс до 1,6 мкс. Створення даного комп'ютера зробило величезний вплив як на подальший розвиток архітектури комп'ютера, так і на розвиток системного програмного забезпечення: у ньому вперше використана мультипрограмна операційна система, що використовувала віртуальну пам'ять і систему переривань.
Незалежні операційні пристрої. В 1964 році фірма ControlDataCorporation(CDC)при особистій участі одного з її фундаторів Сеймура Крея випускає комп'ютер CDC-6600 - перший комп'ютер, у якому використовувалося декілька незалежних операційних пристроїв. Для порівняння із сьогоднішнім днем приведемо деякі характеристики цього комп'ютера:
час такту рівний 100 нс;
продуктивність рівна 2-3 млн операцій за секунду;
основна пам'ять розбита на 32 блоки по 4096 60-розрядних слів;
цикл пам'яті рівний 1 мкс;
10 незалежних операційних пристроїв.
Комп'ютер CDC-6600мав великий успіх на ринку, суттєво потіснивши комп'ютери фірми IBM.
Конвеєрні незалежні операційні пристрої. В 1969 році фірма CDCвипускає комп'ютер CDC-7600із вісьмома незалежними конвеєрними операційними пристроями, тим
424
самим забезпечивши поєднання паралельної та конвеєрної обробки даних. Основні характеристики цього комп'ютера:
такт рівний 27,5 нс;
продуктивність рівна 10-15 млн операцій за секунду;
8 конвеєрних операційних пристроїв;
дворівнева пам'ять.
Матричні процесори. В 1967 році були розпочаті роботи над створенням матричного процесора ILLIACIV,проект якого передбачав досягнення наступних характеристик: 256 процесорних елементів (ПЕ) - 4 квадранти по 64 ПЕ, з можливістю реконфігурацїї на 2 квадранти по 128 ПЕ, або на 1 квадрант із 256 ПЕ, такт рівний 40 нс, продуктивність рівна 1 млрд. операцій з рухомою комою за секунду. В якості пристрою керування був використаний універсальний комп'ютер із невеликою продуктивністю. Кожний ПЕ мав власний АЛП з повним набором команд та пам'ять ємністю 2К 64-розрядних слів з циклом 350 нс. Комп'ютер був введений в експлуатацію у 1974 році в складі лише 1 квадранта, такт 80 нс, реальна продуктивність наблизилась до 50 млн операцій з рухомою комою за секунду. Однак даний проект суттєво вплинув на архітектуру наступних комп'ютерів, побудованих за схожим принципом, які дістали назву масивно-паралельних комп'ютерів із розподіленою пам'яттю. Ідея побудови комп'ютерів цього класу наступна: беруться серійні мікропроцесори зі своєю локальною пам'яттю та з'єднуються за допомогою деякого комунікаційного середовища. Переваги такої архітектури наступні: якщо потрібно підвищити продуктивність, то збільшується кількість процесорів, якщо обмежені фінанси або заздалегідь відома необхідна продуктивність, то легко підібрати оптимальну конфігурацію і т. п.
Проте є і суттєвий недолік. Справа в тому, що міжпроцесорна взаємодія в комп'ютерах цього класу йде набагато повільніше, ніж відбувається локальне опрацювання даних самими процесорами. Саме тому написати ефективну програму для таких комп'ютерів дуже складно.
За цим принципом були побудовані комп'ютери PEPE,BSP,ICLDAP.До даного класу можна також віднести комп'ютери IntelParagon,IBMSP1,Parsytec,у якійсь мірі IBMSP2і CRAYT3D/T3E.До цього ж класу можна віднести і мережі комп'ютерів.
Векторно-конвеєрні комп'ютери. У 1972 році С. Крей залишає фірму CDCі засновує власну компанію Cray Research, що у 1976 р. випускає перший векторно-конвеєрний комп'ютер CRAY-1 з наступними характеристиками: час такту рівний 12,5 нс, 12 конвеєрних операційних пристроїв, пікова продуктивність - 160 мільйонів операцій за секунду, основна пам'ять до 1Мслова (слова 64-розрядні), цикл пам'яті рівний 50 нс. Головним нововведенням є використання векторних команд, що працюють із масивами цілих чисел і дозволяють ефективно використовувати конвеєрні операційні пристрої, а також ієрархія пам'яті. Ієрархія пам'яті прямого відношення до паралелізму не має, проте, безумовно, належать до тих особливостей архітектури комп'ютерів, що мають велике значення для підвищення їхньої продуктивності (згладжування різниці між тактом роботи процесора і часом вибірки з пам'яті). Основні рівні: регістри, кеш пам'ять, основна пам'ять, дискова пам'ять. Час вибірки по рівнях пам'яті від дискової до регістрів зменшується, вартість у перерахунку на 1 слово (байт) росте. В даний час подібна ієрархія підтримується і на персональних комп'ютерах.
425
Паралельні комп'ютери із спільною пам'яттю. З розвитком архітектур та технологій виробництва компонентів комп'ютера, в тому числі пам'яті, з'явився новий клас комп'ютерів - паралельні комп'ютери із спільною пам'яттю. Вся основна пам'ять таких комп'ютерів розділяється декількома однаковими процесорами. Хоча кількість процесорів, що мають доступ до спільної пам'яті, за чисто технічними причинами не можна зробити великим, до даного напрямку входить багато сучасних багатопроцесорних систем, наприклад, комп'ютери HPExemplarі SunStarFire.
Зрозуміло, що в багатьох випадках у комп'ютерах використовується комбінація описаних технічних рішень. З декількох процесорів (традиційних або векторно-конвеєрних) і спільної для них пам'яті формується обчислювальний вузол. Якщо отриманої обчислювальної потужності недостатньо, то об'єднується декілька таких вузлів швидкісними каналами зв'язку. Подібну архітектуру називають кластерною, і за таким принципом побудовані комп'ютери CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5, останні моделі IBM SP2 й інші.
Системи з масовою паралельною обробкою інформації. Після початкового домінування систем, що використовували повільні процесори з складною системою команд та розшаровану пам'ять, фірми Sun, HP, DEC, SGI, NCR/ATT, Tandem, Pyramid, IBM та CRI
розпочали випуск багатопроцесорних систем, здатних до масш-табування, що базуються на процесорах із складною системою команд. Наведемо приклади сучасних систем цього класу.
Суперкомп'ютер Intel Paragon. На рис. 12.1. подано організацію суперкомп'ютера Intel Paragon із так званою архітектурою на основі пересилання повідомлень. Суперкомп'ютер побудовано як тривимірне об'єднання множини окремих вузлів (топологія гіперкуба). Кожен вузол містить два або більше процесорів i860, які утворюють систему з спільною пам'яттю, та вбудовану підтримку зовнішньої мережі із швидкодією обміну з мережею 175 MB за секунду. Кожен вузол має ще індивідуальний зв'язок із власною підсистемою пам'яті з використанням прямого доступу та шини кеш пам'яті. Це дозволяє ефективно пересилати великі пакети інформації від кожного вузла до мережі та зворотно. Продук-
426
тивність системи складає 143 GFLOPS на тесті UNPACK (матричні тести лінійної алгебри), що на порядок перевищує продуктивність машин CRAY.
Суперкомп'ютер Blue Gene фірми IBM. Найшвидший на 2007 рік суперкомп'ютер, створення якого фірма IBMпроголосила у грудні 1999 року, отримав назву BlueGene.Він спроможний виконувати понад один квадрильйон операцій на секунду (1PFLOPS= 1000 TFLOPS=1000000 GFLOPS).BlueGeneє майже в мільйон разів продуктивнішим від ПК. Ієрархічний дизайн Blue Gene наведено на рис. 12.2.
BlueGeneскладено з мільйона процесорів, кожний з яких має продуктивність 1 GFLOPS.32 таких надшвидких процесори інтегровано до одного кристалу (32 GFLOPS).Компактна (два фути на два фути) плата вміщує 64 щойно зазначених кристали (2 TFLOPS).Апаратна частина такого друкованого вузла є продуктивнішою від відомого рекордсмена, суперкомп'ютера ASCIміністерства енергетики СІЛА, який займає 8000 квадратних футів площі. 11 друкованих вузлів збирають до одної монтажної 6-ти футової шафової конструкції, яка має продуктивність 16 TFLOPS.Фінальну конструкцію, що займає площу, меншу від 2000 кв. футів, утворено сполученням 64 шаф. Разом отримується продуктивність 1 PFLOPS= 1000 TFLOPS.
- 2.6. Формати даних 63
- 3.1. Кодування та виконання команд в комп'ютері 82
- 4.3. Суперконвеєрні процесори 157
- 4.10. Питання до розділу 4 165
- 5.3. Конфлікти керування 177
- 6.1. Логічні операції 204
- 8.3. Пристрій мікропрограмного керування 297
- 9.3. Пам'ять з асоціативним доступом 321
- 9.4. Основна пам'ять 328
- 9.7. Зовнішня пам'ять 339
- 10.1. Ієрархічна організація пам'яті комп'ютера 357
- 10.2. Організація обміну інформацією між процесором і основною пам'яттю
- 10.3. Організація обміну інформацією між основною та зовнішньою пам'яттю 376
- 10.4. Захист пам'яті від несанкціонованих звернень 391
- 12.8. Організація комп'ютерних систем із розподіленою пам'яттю 444
- 12.9. Комунікаційні мережі багатопроцесорних систем 445
- Розділ 1 Сучасний комп'ютер. Основні поняття
- 1.2. Функції, структура та характеристики комп'ютера
- 1.2.1. Функції та основні функціональні вузли комп'ютера
- 1.2.2. Тенденції зміни основних характеристик апаратних засобів комп'ютера
- 1.2.3. Оцінка продуктивності комп'ютера
- 1.2.3.1. Одиниці оцінки продуктивності
- 1.2.3.2. Тестові програми для оцінки продуктивності
- 1.2.4. Організація зв'язків між функціональними вузлами комп'ютера
- 1.3. Архітектура комп'ютера
- 1.3.1. Поняття архітектури комп'ютера
- 1.3.2. Архітектурні принципи Джона фон Неймана
- 1.3.3. Ненейманівські архітектури комп'ютерів
- 1.4. Типи сучасних комп'ютерів
- 1.4.1. Персональні комп'ютери
- 1.4..2. Робочі станції
- 1.4.3. Багатотермінальні системи
- 1.4.4. Сервери
- 1.4.5. Великі універсальні комп'ютерні системи
- 1.4.6. Кластерні комп'ютерні системи
- 1.4.7. Суперкомп'ютери
- 7.4.8. Мікроконтролери
- 1.4.9. Спеціалізовані комп'ютери
- 1.5. Предмет та порядок розгляду матеріалу даної книги
- 1.6. Підсумок розділу
- 1.7. Література для подальшого читання
- 1.8. Література до розділу 1
- 1.9. Питання до розділу 1
- Розділ 2 Представлення даних у комп'ютері
- 2.7, Позиційні системи числення
- 2.2. Двійкові, вісімкові та шістнадцяткові числа
- 2.5. Представлення чисел зі знаком
- 2.5.7. Прямий код
- 2.5.2. Обернений код
- 2.6. Формати даних
- 2.6.1. Способи представлення чисел
- 2.6.2. Числа з фіксованою комою
- 2.6.3. Числа із рухомою комою
- 2.6.4. Стандарт іеее-754
- 2.6.5. Кодування алфавітно-цифрової інформації
- 2.6.5.7. Двійково-кодовані десяткові числа
- 2.6.4.2. Розширений двійково-кодований десятковий код обміну ebcdic
- 2.6.4.3 Американський стандартний код інформаційного обміну ascii
- 2.6.4.4. Стандарт кодування символів Unicode
- 2.7. Короткий зміст розділу
- 2.8. Література для подальшого читання
- 2.9. Література до розділу 2
- 2.10. Питання до розділу 2
- 2.11. Задачі до розділу 2
- Розділ 3 Порядок виконання команд і програм в комп'ютері
- 3.1.1. Кодування команди та програми
- 3.1.2. Порядок виконання команд
- 3.1.3. Виконання команд на рівні регістрів процесора
- 3.2. Типи операцій та команд
- 3.2.1. Класифікація команд за типами операцій
- 3.2.2. Команди обробки даних
- 3.2.3. Команди переміщення даних
- 3.2.4.. Команди передачі керування
- 3.2.4.1. Команди переходу
- 3.2.4.2. Команди пропуску
- 3.2.4.3. Команди звернення до підпрограм
- 3.2.5. Команди введєння-виведення
- 3.2.6. Принципи формування системи команд комп'ютера
- 3.2.7. Конвеєрне виконання команд
- 3.3. Формати команд комп'ютера
- 3.3.1. Класифікація архітектури комп'ютера за типом адресованої пам'яті
- 3.3.2. Порівняльний аналіз форматів команд
- 3.4. Способи адресації операндів
- 3.4.1. Безпосередня адресація
- 3.4.2. Пряма адресація
- 3.4.3. Непряма адресація
- 3.4.4. Способи адресації операндів на основі операції зміщення
- 3.4.4.1. Відносна адресація
- 3.4.4.2. Базова адресація
- 3.4.4.3. Індексна адресація
- 3.4.5. Сторінкова адресація
- 3.4.6. Неявна адресація
- 3.4.7. Стекова адресація
- 3.4.8. Використання стекової адресації
- 3.4.9. Вибір способів адресації операндів
- 3.5. Приклади форматів команд
- 3.5.1. Формати команд комп'ютерної системи ibm 370
- 3.5.2. Формати команд комп'ютера Cyber-70
- 3.5.3. Формати команд сучасного комп'ютера
- 3.6. Вплив технологи компілювання на систему команд комп'ютера
- 3.7. Архітектура системи команд комп'ютера
- 3.7.1. Класифікація архітектури комп'ютера за складом системи команд
- 3.7.2. Комп'ютери із складною та з простою системами команд
- 3.7.3. Особливості архітектури комп'ютера з простою системою команд
- 3.7.4. Архітектура комп'ютера з доповненою системою команд
- 3.7.5. Комп'ютери зі спеціалізованою системою команд
- 3.8. Короткий зміст розділу
- 3.9. Література для подальшого читання
- 3.10. Література до розділу з
- 4.1. Процесор комп'ютера із складною системою команд
- 4.1.1. Одношинна структура процесора
- 4.1.2. Основні операції процесора
- 4.1.2.1. Вибірка слова з пам'яті
- 4.1.2.2. Запам'ятовування слова в пам'яті
- 4.1.2.3. Обмін даними між регістрами
- 4.1.2.4. Виконання арифметичних і логічних операцій
- 4.1.3. Багатошинна структура процесора
- 4.1.4. Приклади виконання операцій в процесорі
- 4.1.4.1. Виконання операції додавання двох чисел
- 4.1.4.2. Виконання операції переходу
- 4.1.5. Особливості побудови процесора комп'ютера із складною системою команд
- 4.2. Процесор комп'ютера з простою системою команд
- 4.2.1. Вимоги до процесора комп'ютера з простою системою команд
- 4.2.2. Базові принципи побудови процесора комп'ютера з простою системою команд
- 4.2.3. Взаємодія процесора з пам'яттю в комп'ютері з простою системою команд
- 4.2.4. Виконання команд в процесорі комп'ютера з простою системою команд
- 4.2.4.1. Фаза вибирання команди
- 4.2.4.3. Фаза виконання та формування ефективної адреси
- 4.2.4.4. Фаза звернення до пам'яті та завершення умовного переходу
- 4.2.4.5. Фаза зворотного запису
- 4.2.5. Конвеєрна структура процесора комп'ютера з простою системою команд
- 4.2.5.1. Конвеєрний процесор
- 4.2.5.2. Мікродії ярусів конвеєрного процесора
- 4.8. Література для подальшого читання
- 4.9. Література до розділу 4
- 4.10. Питання до розділу 4
- 5. 1. Структурні конфлікти
- 5.2. Конфлікти за даними
- 5.2.1. Типи конфліктів за даними
- 5.2.2. Методи зменшення впливу конфліктів за даними на роботу конвеєра команд
- 5.2.3. Призупинення виконання команди
- 5.2,4. Випереджувальне пересилання
- 5.2.5. Статична диспетчеризація послідовності команд у програмі під час компіляції
- 5.2.6. Динамічна диспетчеризація послідовності команд у програмі під час компіляції
- 5.2.7. Перейменування регістрів
- 5.3. Конфлікти керування
- 5.3.1. Типи конфліктів керування
- 5.3.2. Зниження втрат на вибірку команди, до якої здійснюється перехід
- 5.3.3. Зниження втрат на виконання команд умовного переходу
- 5.3.3.7. Введення буфера попередньої вибірки
- 5.3.3.2. Дублювання початкових ярусів конвеєра
- 5.3.3.3. Затримка переходу
- 5.3.3.4. Статичне передбачення переходу
- 5.3.3.5. Динамічне передбачення переходу
- 5.7. Комп'ютери з комбінованою архітектурою
- 5.9. Короткий зміст розділу
- 5.10. Література для подальшого читання
- 5.12. Питання до розділу 5
- 6.1. Логічні операції
- 6.1.1. Операція заперечення
- 6.2. Операції зсуву
- 6.2.1. Логічні зсуви
- 6.2.2. Арифметичні зсуви
- 6.2.3. Циклічні зсуви
- 6.3. Операції відношення
- 6.3.1. Порівняння двійкових кодів на збіжність
- 6.3.2. Визначення старшинства двійкових кодів
- 6.4. Арифметичні операції
- 6.4.1. Додавання двійкових чисел без знаків
- 6.4.2. Додавання двійкових чисел із знаками
- 6.4.3. Віднімання двійкових чисел
- 6,4.4. Множення двійкових чисел
- 6.4.4.7. Множення цілих двійкових чисел без знаків
- 6.4.4.2. Багатомісна операція додавання часткових добутків
- 6.4.4.3. Множення двійкових чисел із знаками
- 6.4.4.4. Прискорене множення двійкових чисел за методом Бута
- 6.4.5. Ділення двійкових чисел
- 6.4.6. Арифметичні операції над двійковими числами у форматі з рухомою комою
- 6.5. Операції обчислення елементарних функцій
- 6.6. Операції перетворення даних
- 6.6.1. Перетворення даних із формату з фіксованою у формат з рухомою комою та навпаки
- 6.6.2. Перетворення даних з двійково-десяткового коду в двійковий та навпаки
- 6.7. Операції реорганізації масивів і визначення їх параметрів
- 6.8. Операції обробки символів та рядків символів
- 6.9. Короткий зміст розділу
- 6.70. Література для подальшого читання
- 6.11. Література до розділу 6
- 6.72. Питання до розділу 6
- Розділ 7
- 7.1. Функції арифметико-логічного пристрою
- 7.2. Способи обробки даних в арифметико-логічному пристрої
- 7.3. Елементарні операції арифметико-логічного пристрою
- 7.4. Складні операції арифметико-логічного пристрою
- 7.5. Використання графа алгоритму при побудові арифметико-логічного пристрою
- 7.6. Виконання складних операцій в арифметико-логічному пристрої
- 7.8. Типи операційних пристроїв
- 7.9. Табличний операційний пристрій
- 7.10. Вагатотактовий операційний пристрій
- 7.11. Однотактовий операційний пристрій
- 7.12. Конвеєрний операційний пристрій
- 7.13. Алгоритмічні операційні пристрої
- 7.13.1. Пристрої додавання і віднімання двійкових чисел з фіксованою комою
- 7.13.2. Пристрої множення двійкових чисел з фіксованою комою
- 7.13.2.1. Багатотактовий пристрій множення двійкових чисел з молодших розрядів множника при нерухомому множеному з зсувом суми часткових добутків
- 7.13.2.2. Багатотактовий пристрій множення двійкових чисел з молодших розрядів при нерухомій сумі часткових добутків з зсувом множеного вліво
- 7.13.2.3. Багатотактовий пристрій множення двійкових чисел з старших розрядів при нерухомій сумі часткових добутків з зсувом множеного вправо
- 7.13.2.4. Багатотактовий пристрій множення двійкових чисел з старших розрядів при нерухомому множеному з зсувом суми часткових добутків вліво
- 7.13.2.5. Багатотактовіш пристрій прискореного множення
- 7.13.2.6. Однотактові пристрої множення двійкових чисел з фіксованою комою
- 7.13.2.7. Конвеєрні пристрої множення двійкових чисел з фіксованою комою
- 7.13.3 Пристрої ділення двійкових чисел з фіксованою комою
- 7.13.3.1. Багатотактові пристрої ділення двійкових чисел з фіксованою комою
- 7.13.3.2. Однотактові та конвеєрні пристрої ділення двійкових чисел з фіксованою комою
- 7.13.4. Пристрої обчислення елементарних функцій методом "цифра за цифрою"
- 7.13.4.1. Багатотактовий пристрій обчислення елементарних функцій методом "цифра за цифрою"
- 7.13.5.2. Пристрої множення та ділення чисел з рухомою комою
- 7.14. Таблично-алгоритмічні операційні пристрої
- 7.15. Короткий зміст розділу
- 7.16. Література для подальшого читання
- 7. Т 7. Література до розділу 7
- 7. 18. Питання до розділу 7
- Розділ 8 Пристрій керування
- 8.1. Функції та методи побудови пристрою керування
- 8.2. Пристрій керування з жорсткою логікою
- 8.2.1. Структура пристрою керування з жорсткою логікою
- 8.2.2. Методи проектування пристрою керування з жорсткою логікою
- 8.2.3.2. Мови опису функціонування автоматів
- 8.2.3.3. Структурний синтез цифрових автоматів
- 8.2.4. Пристрій керування на основі синхронних елементів часової затримки
- 8.2.5. Пристрій керування на основі лічильників
- 8.3. Пристрій мікропрограмного керування
- 8.3.1. Організація роботи пристрою мікропрограмного керування
- 8.3.2. Організація мікропрограм в пам'яті мікрокоманд
- 8.3.3. Горизонтальне та вертикальне мікропрограмування
- 8.4. Порівняння пристроїв керування з жорсткою логікою та пристроїв мікропрограмного керування
- 8.5. Короткий зміст розділу
- 8.6. Література для подальшого читання
- 8.7. Література до розділу 8
- 8.8. Питання до розділу 8
- 9.1. Типи та характеристики пам'яті комп'ютера
- 9.1.1. Багаторівнева структура пам'яті комп'ютера
- 9.1.2. Типи пам'яті
- 9.1.3. Основні характеристики пам'яті
- 9.2 Регістровий файл процесора
- 9.2.1. Типи регістрових файлів
- 9.2.2. Інтегрований багатопортовий регістровий файл
- 9.2.3. Розподілений регістровий файл
- 9.2.3. 1. Кластерний розподілений регістровий файл
- 9.2.3.2. Розподілений регістровий файл з керованою комутацією
- 9.2.3.3. Розподілений регістровий файл з віконною організацією
- 9.2.4. Ієрархічний регістровий файл
- 9.2.5. Динамічна та статична організація збереження даних в регістрових файлах
- 9.3. Пам'ять з асоціативним доступом
- 9.3.1. Організація та типи пам'яті з асоціативним доступом
- 9.3.2. Пам'ять з повним паралельним асоціативним доступом
- 9.3.3. Пам'ять з неповним паралельним асоціативним доступом
- 9.3.4. Пам'ять з послідовним асоціативним доступом
- 9.3.5. Пам'ять з частково асоціативним доступом
- 9.4. Основна пам'ять
- 9.4.1. Структура основної пам'яті
- 9.4.2. Нарощування розрядності основної пам'яті
- 9.4.4. Розшарування пам'яті
- 9.5. Оперативний запам'ятовуючий пристрій
- 9.6. Постійний запам'ятовуючий пристрій
- 9.6.1. Організація роботи постійного запам'ятовуючого пристрою
- 9.6.2. Запрограмований при виготовленні постійний запам'ятовуючий пристрій
- 9.6.3. Одноразово запрограмований після виготовлення постійний запам'ятовуючий пристрій
- 9.6.4. Багаторазово програмований постійний запам'ятовуючий пристрій
- 9.7. Зовнішня пам'ять
- 9.7.1. Магнітні диски
- 9.7.2. Масиви магнітних дисків з надлишковістю
- 9.7.2.1. Базовий тип дискових масивів raid 0
- 9.7.2.2. Базовий тип дискових масивів raid 1
- 9.7.2.3. Базовий тип дискових масивів raid 2
- 9.7.2.4. Базовий тип дискових масивів raid з
- 9.7.2.5. Базовий тип дискових масивів raid 4
- 9.7.2.6. Базовий тип дискових масивів raid 5
- 9.7.2.7. Тип дискових масивів raid 6
- 9.7.2.8. Тип дискових масивів raid 7
- 9.7.2.9. Тип дискових масивів raid 10
- 9.7.3. Оптична пам'ять
- 9.7.3.1. Постійна пам'ять на основі компакт дисків
- 9.7.3.2. Оптичні диски із стиранням
- 9.7.4. Магнітні стрічки
- 9.8. Короткий зміст розділу
- 9.9. Література для подальшого читання
- 9. 1 0. Література до розділу 9
- 9.11. Питання до розділу 9
- Організація пам'яті
- 10.1. Ієрархічна організація пам'яті комп'ютера
- 10.1.1. Різниця між: продуктивністю процесора та пам'яті
- 10.1.2. Властивість локальності за зверненням до пам'яті
- 10.1.3. Принцип ієрархічної організації пам'яті
- 10.1.4. Характеристики ефективності ієрархічної організації пам'яті
- 10.1.5. Ієрархічна пам'ять сучасного комп'ютера
- 10.2. Організація обміну інформацією між процесором і основною пам'яттю через кеш пам'ять
- 10.2.1. Кеш пам'ять в складі комп'ютера
- 10.2.2. Порядок взаємодії процесора і основної пам'яті через кеш пам'ять
- 10.2.3. Забезпечення ідентичності вмісту блоків кеш пам'яті і основної пам'яті
- 10. 0.2.4. Функція відображення
- 10.2.4.1. Типи функцій відображення
- 10.2.4.2. Повністю асоціативне відображення
- 10.2.4.3. Пряме відображення
- 10.2.4.4. Частково-асоціативне відображення
- 10.2.5. Порядок заміщення блоків в кеш пам'яті з асоціативним відображенням
- 70.2.6. Підвищення ефективності кеш пам'яті
- 10.3. Організація обміну інформацією між основною та зовнішньою пам'яттю
- 10.3.1. Статичний та динамічний розподіл пам'яті
- 10.3.2. Розподіл основної пам'яті за допомогою базових адрес
- 10.3.3. Віртуальна пам'ять
- 10.3.4. Сторінкова організація пам'яті
- 10.3.4.1. Основні правила сторінкової організації пам'яті
- 10.3.4.2. Реалізація сторінкової організації пам'яті
- 10.3.4.3. Апаратна реалізація сторінкової таблиці
- 10.3.5. Сегментна організація віртуальної пам'яті
- 10.4. Захист пам'яті від несанкціонованих звернень
- 10.4.1. Задачі захисту пам'яті
- 10.4.2. Захист пам'яті за допомогою регістра захисту
- 10.4.3. Захист пам'яті за граничними адресами
- 10.4.4. Захист пам'яті за значеннями ключів
- 10.4.5. Кільцева схема захисту пам'яті
- 10.5. Короткий зміст розділу
- 10.6. Література для подальшого читання
- 10.7. Література до розділу 10
- 10.8. Питання до розділу 10
- Розділ 11 Організіція введення-виведення
- 11.1. Під'єднаний зовнішніх пристроїв до комп'ютера
- 1 1.2. Розпізнавання пристроїв введення-виведення
- 11.3. Методи керування введенням-виведенням
- 11.4. Програмно-кероване введення-вивєдення
- 11.5. Система переривання програм та організація введення-виведення за перериваннями
- 11.5.1. Функції системи переривання програм
- 11.5.2. Характеристики системи переривання програм
- 11.5.3. Вхід в переривальну програму
- 11.5.4. Пріоритетне обслуговування переривання
- 11.5.5. Організація повернення до перериваної програми
- 11.5.6. Введення-виведення за перериваннями
- 11.6. Прямий доступ до пам'яті
- 11.7. Введення-виведення під керуванням периферійних процесорів
- 11.7.1. Принципи введення-виведення під керуванням периферійних процесорів
- 11.7.2. Причини застосування каналів введення-виведення
- 11.7.3. Функції каналів введення-виведення
- 11.7.4. Керуюча інформація каналу введення-виведення
- 11.7.5. Мультиплексний та селекторний канали введення-виведення
- 11.8. Короткий зміст розділу
- 11.9. Література для подальшого читання
- 11.10. Література до розділу 11
- 11.11. Питання до розділу 11
- Розділ 12
- 12.1. Використання принципів паралельної обробки інформації в архітектурі комп'ютера
- 12.2. Вибір кількості процесорів у багатопроцесорній системі
- 12.3. Багатопотокова обробка інформації
- 12.4. Класифікація паралельних комп'ютерних систем
- 12.4.1. Класифікація Шора
- 12.4.2. Класифікація Фліна
- 12.5. Типи архітектур систем окмд
- 12.6. Типи архітектур систем мкмд
- 12.7. Організація комп'ютерних систем із спільною пам'яттю
- 12.7.1. Типи комп'ютерних систем із спільною пам'яттю
- 12.7.2. Системи з однорідним доступом до пам'яті
- 12.7.3. Системи з неоднорідним доступом до пам'яті
- 12.7.4. Системи лише з кеш пам'яттю
- 12.8. Організація комп'ютерних систем із розподіленою пам'яттю
- 12.9. Комунікаційні мережі багатопроцесорних систем
- 12.9.1. Типи комунікаційних мереж
- 12.9.2. Основні характеристики комунікаційних мереж багатопроцесорних систем
- 12.9.3. Статичні топології комунікаційних мереж: багатопроцесорних систем
- 12.9.4. Шинні динамічні комунікаційні мережі багатопроцесорних систем
- 12.9.5. Комутуючі динамічні комунікаційні мережі багатопроцесорних систем
- 12.9.5.1. Типи комутуючих динамічних комунікаційних мереж
- 12.9.5.2. Координатна мережа
- 12.9.5.3. Матрична одноярусна комутуюча мережа
- 12.9.5.4. Багатоярусні блокуючі комутуючі мереж
- 12.9.5.5. Багатоярусні неблокуючі комутуючі мережі з реконфігурацією
- 12.9.5.6. Багатоярусні неблокуючі комутуючі мережі
- 12.10. Короткий зміст розділу
- 12.11. Література для подальшого читання
- 12.12. Література до розділу 12
- 12.13. Питання до розділу 12
- 43010 М. Луцьк, пр. Волі, 27.