1. Які фактори справляють істотний вплив на В«подовженняВ» командного циклу процесора?
- Структурні конфлікти (Видача команд призупиняв):
пристрій не є повністю конвеєрним;
пристрій мають різні часу виконання (кількості записів в регістровий файл у кожному такті може бути більше 1)
- Конфлікти WAW (тому команди більше не надходять на щабель WB в порядку їх видачі за виконання), конфлікти типу WAR неможливі (читання регістрів здійснюється на щаблі ID)
- проблема з реалізацією переривань (команди можуть завершаться не в тому порядку, в якому вони надходили).
2. У якому (-их) місці (-ах) командного циклу зазвичай реалізується фаза переривання?
Переривання - механізм, за допомогою якого інші модулі можуть перервати нормальний процес виконання програми користувача.
Фаза переривання може слідувати після фази виконання команди, перед початком наступного циклу. Послідовність дій:
- збереження поточного стану процесу;
- перехід до процедури обслуговування переривання.
Класи переривань:
Програмні - виняткові ситуації при виконанні команд (арифметичне переповнення, розподіл на нуль, спроба виконання команди з неіснуючим кодом операції, звернення за адресою, який виходить за межі фізичного адресного простору комп'ютера, і т.п.).
Апаратні - генеруються спеціальними засобами контролю працездатності апаратури при виявленні збоїв (пропажа харчування, помилка контролю пам'яті по парності і т.п.).
Ввода-виводу - генеруються контролером вводу-виводу (завершення поточної операції введення-виведення, виникнення помилки процедури введення-виведення).
Переривання по таймеру - генеруються таймером процесора і використовуються ОС для переходів в багатозадачному режимі.
Потік даних при перериванні:
На малюнку: регістр адреси пам'яті (РгАП, MAR); буферний регістр даних пам'яті (БРгП, MBR); програмний лічильник (ПС, PC). Поточний зміст ПС зберігається (в стеку), що дозволяє в подальшому відновити виконання перерваної програми з тієї ж точки. У ПС замість поточного адреси перерваної програми завантажується початкова адресу підпрограми обробки переривання.
Які переривання відносяться до програмних?
Програмні - виняткові ситуації при виконанні команд (арифметичне переповнення, розподіл на нуль, спроба виконання команди з неіснуючим кодом операції, звернення за адресою, який виходить за межі фізичного адресного простору комп'ютера, і т.п.).
3. Що являє собою клас переривань?
Класи переривань:
Програмні - виняткові ситуації при виконанні команд (арифметичне переповнення, розподіл на нуль, спроба виконання команди з неіснуючим кодом операції, звернення за адресою, який виходить за межі фізичного адресного простору комп'ютера, і т.п.).
Апаратні - генеруються спеціальними засобами контролю працездатності апаратури при виявленні збоїв (пропажа харчування, помилка контролю пам'яті по парності і т.п.).
Ввода-виводу - генеруються контролером вводу-виводу (завершення поточної операції введення-виведення, виникнення помилки процедури введення-виведення).
Переривання по таймеру - генеруються таймером процесора і використовуються ОС для переходів в багатозадачному режимі.
Що є концептуальною основою конвеєрних обчислень?
Засоби підвищення ефективності роботи системи:
- вдосконалення елементної бази;
- архітектурні рішення: збільшення кількості програмно доступних регістрів ЦП; використання кеш-пам'яті; поєднання операцій.
Апаратура комп'ютера в будь-який момент часу виконує одночасно більше однієї базової операції. Два виду сполучення:
- паралелізм (Апаратна структура відтворюється в кількох копіях);
- конвеєризація (конвеєрна обробка) - архітектурне рішення, спосіб організації процесу обробки команд, заснований на поєднанні в часі окремих етапів робочого циклу.
Принцип конвейеризации:
- що підлягає виконанню функція ділиться на більш дрібні частини (етапи, стадії, ступені);
- для кожного етапу виділяється окремий блок апаратури;
- дані передаються від одного етапу до наступного;
- етапи виконання різних команд поєднуються.
Способи синхронізації ступенів конвеєра:
1. Синхронний конвеєр - Характерний для традиційних комп'ютерів: синхронний характер роботи процесора; короткі тракти поширення сигналів синхронізації (перекіс сигналів не істотний).
2. Асинхронний конвеєр
Умови застосування:
- тривалості тимчасових інтервалів окремих щаблів конвеєра залежать від типу команди і виду операндів;
- зв'язок між ступенями не сильна;
- довжина сигнальних трактів між різними ступенями сильно різниться;
Що означає поняття RISC?
RISC - Reduced Instruction Set Architecture. Комп'ютер із скороченим форматом команд.
RISC - Reduced (Restricted) Instruction Set Computer - процесори (комп'ютери) з скороченою системою команд. Ці процесори зазвичай мають набір однорідних регістрів універсального призначення; їх система команд відрізняється відносною простотою. У результаті апаратна реалізація такої архітектури дозволяє з невеликими витратами виконувати ці інструкції за мінімальне (в межі 1) число тактів синхронізації.
4. Перелічіть характеристики RISC?
Для поліпшення ефективності було вирішено спростити архітектуру комп'ютера - так з'явилася RISC-архітектура. Концепції:
- виконання по крайней мірою, 75% команд за один машинний цикл;
- пристрій управління з В«жорсткоюВ» логікою;
- стандартна однослівні довжина всіх команд:
дорівнює природній довжині слова і ширині шини даних;
допускає уніфіковану потокову обробку всіх команд;
- мале число команд (Не більше 128);
- мала кількість форматів команд (не більше 4);
- мале число способів адресації (не більше 4; відсутність непрямої адресації пам'яті);
- доступ до пам'яті тільки за допомогою команд В«ЧитанняВ» і В«ЗаписВ»;
- всі команди, за винятком В«ЧитанняВ» і В«ЗаписиВ», використовують внутріпроцессорние межрегістровие пересилання;
- відносно великий (Не менше 32) процесорний файл РОНов (в сучасних мікропроцесорах перевищує 500).
Що було напрямком досліджень, що призвели до створення RISC-архітектури?
Згідно з проведеними Девідом Паттерсоном і Джоном Хеннесі дослідженням (досліджувалися мови С, Pascal:
- операції - функції виконувані ЦП взаємодія ЦП з ОП
- операнди - операнди, частота використання, служити для вибору необхідного безлічі режимів адресації
- послідовність виконання - визначає структуру управлінні процесором і конвеєром.
1. Більшість посилань - скалярні змінні (в основному - локальні).
2. Найбільше часу займають виклик підпрограм (і повернення з них) і умовні переходи.
Оцінювані параметри:
-середня кількість машинних команд і звернень до пам'яті при реалізації операторів різних типів;
- динамічна частота появи різних класів (типів) змінних.
Які висновки з наукових досліджень привели до появи RISC?
Ефективний шлях підвищення продуктивності:
- основа - конвеєр команд:
проектування конвеєра (традиційний неефективний)
використання компіляторів оптимізації роботу конвеєра.
- більш інтенсивно використовувати регістри (мінімальне звернення до змінних в ОП)
- скоротити набір відносно простих команд.
5. Що є технічною основою реалізації RISC?
Технічною основою реалізації RISC є процесор у якого велика кількість внутрішніх регістрів і обміни відбувається В«регістр - регістрВ».
Регістри процесора, їх оптимізація:
1. Програмний метод: Р...