ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.12.2021
Просмотров: 6809
Скачиваний: 22
128
Можливі два варіанти формату команд - ортогональний та кодований. Ортогональний формат складається з фіксованих незалежних керуючих полів. У випадку кодованого формату інтерпретація бітів команди як керуючих полів залежить від значення бітів формату. У випадку ортогонального формату команди розряди всередині керуючого поля можуть бути також закодовані для зменшення його розрядності.
Зазвичай КОСК мають 16- або 32-розрядний кодований формат команди. Прикладна програма розміщується в пам'яті кристала. Формат команди вибирають узгодженим з розміром паралельного порту даних та стандартних блоків пам'яті, які використовуються для зберігання прикладної програми.
КОСК мають ефективну структуру основної та регістрової пам'яті, які забезпечують високу швидкість обміну між різними блоками тракту даних і між трактом даних та пам'яттю. Такі комп'ютери мають один або два блоки пам'яті даних. Для збільшення продуктивності роботи таких комп'ютерів при їх побудові використовується гарвардська архітектура (розділення пам'яті даних та пам'яті програм).
Більшість КОСК використовують гетерогенну структуру регістрової пам'яті, що дозволяє зменшити кількість розрядів команди, збільшуючи швидкість обміну даними. Це означає, що спеціально організовані регістри та регістрові файли прямо під'єднані до спеціальних портів функціональних блоків. Функціональні блоки можуть вибирати операнди або записувати результати тільки в конкретні регістри. Між елементами комп'ютера є тільки ті зв'язки, які є корисними для ефективної реалізації заданого алгоритму.
Архітектура КОСК зазвичай має ряд особливостей, які відділяють її від інших архітектур і не були відображені в попередніх розділах. Далі наведено перелік особливостей існуючих КОСК:
■ Як зазначалось вище, система команд
КОСК включає спеціалізовані команди,
які
дозволяють виконувати критичні
ділянки заданих алгоритмів за мінімальну
кількість
машинних циклів та без
засилання в пам'ять проміжних результатів.
Структура трактів
даних таких
процесорів спеціально проектується
для конкретних алгоритмів.
-
Пам'ять даних зазвичай працює з одним або двома процесорами формування адрес, які підтримують безпосередній, прямий та непрямий способи адресації. Також підтримуються спеціальні адресні операції, такі як обчислення модуля при реалізації циркулярних буферів при виконанні фільтрації та підрахунок з інверсним розповсюдженням переносу при виконанні швидкого перетворення Фур'є.
-
КОСК обробки мовних, відео- та аудіосигналів часто включають блоки бітових маніпуляцій. Більше того, ці комп'ютери підтримують кілька типів даних з фіксованою комою (наприклад: 2 різних типи 16-розрядних даних двох доповняльних кодів з різною інтерпретацією бінарних значень, 32-розрядний тип двох доповняльних кодів у акумуляторі та тип 8-розрядного цілого в процесорах формування адрес). Перетворення типів даних підтримуються апаратурою тракту даних.
■ Більшість КОСК підтримують стандартні
команди керування, такі як умовні
роз
галуження, що базуються на
значеннях розрядів в регістрі кодів
умов. При цьому в них
враховано
можливості появи затримок при виконанні
операцій переходу, які пов'яза
ні
з наявністю конвеєра, реалізовано
можливість виконання арифметичних
команд та
команд пересилання при
наявності певної умови, що дозволяє
реалізувати умовні ал-
129
горитми без необхідності умовного зчитування програмного лічильника, а також можливість виконання деяких арифметичних команд резидентно, коли поведінка команди залежить від значення розряду в керуючому регістрі, який може бути записаний іншими операціями.
3.8. Короткий зміст розділу
В даному розділі були розглянуті основні елементи архітектури комп'ютера, які включають організацію пам яті, формати і типи команд, способи адресації. Показано, як кодуються та виконуються команди в комп'ютері. Проведена класифікація команд відповідно до ініційованих ними типів операцій та детально розглянуті команди обробки даних, переміщення даних, передачі керування, введення виведення. Багато рішень має бути прийнято, коли проектується система команд. Наявність значної кількості команд в системі команд комп'ютера призводить до збільшення довжини команди, до збільшення часу вибірки та декодування. Команди фіксованої довжини легше декодувати, але втрачається гнучкість. Реалізація одних команд на основі інших є компромісом між потребою у великих системах команд і бажанні мати короткі команди
Конвеєризація виконання команд один із прикладів паралелізму на рівні команди. Це загальна але складна технологія, яка може підвищити продуктивність виконання послідовності команд. Проте рівень паралелізму може бути обмежений конфліктами в конвеєрі
Є три типи архітектур комп'ютера за типом адресованої пам'яті: стекова, акумуляторна, та на основі регістрів загального призначення. Кожна має свої переваги і недоліки, які потрібно розглядати в контексті застосування запропонованої архітектури
Досягнення в технології пам'яті, привівши до великих її ємностей, викликали потребу в альтернативних способах адресації. Були введені різні способи адресації, включаючи безпосередню, пряму, непряму, базову, індексну, сторінкову і стекову. Наявність цих різних способів забезпечує гнучкість і зручність для програміста без заміни фундаментальних операцій процесора
Розгляд архітектури комп'ютера на рівні системи команд встановлює межу між апаратурою та програмним забезпеченням і дозволяє побачити комп'ютер на рівні, який видимий програмісту, що працює на мові асемблера, або розробнику компіляторів. За складом системи команд комп'ютери можуть бути поділені на наступні типи: комп'ютери із складною, з простою, з доповненою та спеціалізованою системою команд. В розділі ці архітектури розглянуті детально
3.9. Література для подальшого читання
Класифікація різних типів пам'яті залежно від способу доступу до даних наведена в [5]. В роботі [6] було запропоновано новий тип пам'яті, яка за способом доступу до даних належить до пам'яті з впорядкованим доступом. Принципи побудови та роботи пам яті з довільним доступом детально розглянуті в літературі [8, 9]. Асоціативна пам'ять описана в [1].
Порядок виконання команд та формат команди описані в роботах [2, 3]. Системи команд, адресація та формати команди розкриті детально в майже кожній книзі, яка стосується архітектури комп'ютерної системи. Книги [21,22] найповніше охоплюють ці питан-
130
ня. Багато книг, як наприклад [10, 11, 15, 18], присвячені архітектурі процесора х86 фірми Intel. Для тих, хто зацікавлений у вивченні серії 68000, пропонується література [20, 31].
Належне обговорення конвеєрної обробки команд надає [24]. В [16] подано цікавий короткий огляд конфліктів у конвеєрі. Історія конвеєрної обробки розкрита в [23]. Щоб одержати знання обмежень і проблем з конвеєрною обробкою, варто прочитати [30].
Подивіться [11] для довершеного і зручного введення в сім'ю процесорів Intel В [14] зроблено опис безадресної машини фірми Burroughs. [28] дає достатнє уявлення про серію IBM 360. В [12] наведено деталі про систему VAX, в якій об'єднана двоадресна архітектура з відпрацьованою системою команд. В [25] надано короткий огляд архітектури SPARC. В [19] зроблено цікавий огляд віртуальної машини Java.
Порівняння архітектур комп'ютерів із складною та спрощеною системою команд зроблено в [21, 22]. Тут же запропоновано архітектуру комп'ютера із спрощеною системою команд DLX. Архітектура комп'ютерів з доповненою системою команд розглянута в [4].
3.10. Література до розділу З
-
Искусственньїй интеллект: В 3-х книгах. Кн. 3. Программньїе и аппаратньїе средства: Спра-вочник/ Под ред. В. Н. Захарова, В Ф. Хорошевского. - М.: Радио и связь, 1990. - 191 с
-
Каган Б М. Злектронньїе вьічислительньїе машиньї и систехмьі. - М.: Знергия, 1979. - 528 с
-
Каган Б М., Каневский М М. Цифровьіе вьічислительньїе машиньї и системи М.: Знергия, 1974. - 680 с
-
Мельник А О. Програмовані процесори обробки сигналів. - Львів: Вид-тво Національного університету "Львівська політехніка", 2000. 55 с
-
Угрюмов Е П. Цифровая схемотехника. - СПб.: БХВ - Санкт Петерберг, 2000. - 528 с
-
Мельник А О. Принципи побудови буферної сортувальної пам'яті. Вісник Державного університету "Львівська політехніка". - "Комп'ютерна інженерія та інформаційні технології", № 307, 1996.-С. 65-71.
-
Справочник по цифровой вьічислительной технике. Б Н Малиновский и др - К.: Техніка, 1980. - 320 с
-
Шигин А Г., Дерюгин А А. Цифровьіе вьічислительньїе машиньї (память ЦВМ). - М.: Знергия, 1975. - 536 с
-
Метлицький Б А., Каверзнев В В. Системи параллельной памяти. Теория, проектирование, применение. Под. ред. В И. Тихонова. - Л., 1989.
-
Abel, Peter. IBM PC Assembly Language and Programming, 5th ed., Upper Saddle River, NJ: Prentice Hall, 2001.
-
Brey, B. Intel Microprocessors 8086/8088, 80186/80188, 80286, 80386, 80486 Pentium, and Pentium Pro Processor, Pentium II, Pentium III, and Pentium IV: Architecture, Programming, and Interfacing, 6th ed., Englewood Cliffs, NJ: Prentice Hall, 2003.
-
Brunner, R.A. VAX Architecture Reference Manual, 2nd ed., Herndon, VA: Digital Press, 1991.
-
Burks, Alice, & Burks, Arthur. Vie First Electronic Computer: The Atanasoff Story. Ann Arbor, MI: University of Michigan Press, 1988.
-
Hauck, E. A., & Dent, B. A. "Burroughs B6500/B7500 Stack Mechanism", Proceedings ofAPIPS SJCC (1968), Vol. 32, pp. 245-251.
-
Jones, William. Assembly Language Programming for the IBM PC Family, 3rd ed., El Granada, CA: Scott/Jones Publishing, 2001.
-
Kaeli, D., & Emma, P. "Branch History Table Prediction of Moving Target Branches Due to Subroutine Returns". Proceedings of the 18th Annual International Symposium on Computer Architecture, May 1991.