22986

Поняття про RISC-процесори. Процесори п’ятого та шостого поколінь

Лекция

Коммуникация, связь, радиоэлектроника и цифровые приборы

Процесори п’ятого та шостого поколінь Поняття про RISCпроцесори Якісний стрибок у розвитку мікропроцесорних систем відбувся з появою мікропроцесора 8086. Такі процесори і комп’ютери дістали назву RISC процесорів та RISC комп’ютерів на відміну від процесорів та комп’ютерів зі складною системою команд Complex Instruction Set Computer CISC комп’ютер. Перший €œсправжній€ RISC комп’ютер було створено наприкінці 70х років в університеті Берклі.

Украинкский

2013-08-04

6.22 MB

9 чел.

Лекція №20

Поняття про RISC-процесори.

Процесори пятого та шостого поколінь

Поняття про RISC-процесори

Якісний стрибок у розвитку мікропроцесорних систем відбувся з появою мікропроцесора 8086. Але за цей прогрес було сплачено ціною збільшення кількості команд, ускладненням системи адресації і, в цілому, значним ускладненням програмування. Подальше удосконалення мікропроцесорів і створення таких процесорів як 80286,80386, 80486 ще збільшило труднощі роботи з цими процесорами.

Тоді ж було встановлено, що далеко не всі команди застосовуються однаково часто. Лише невелика частина команд охоче використовувалась програмістами (біля 20%), тоді як решта (80%) застосовувалась вельми зрідка. З цієї причини ще наприкінці 70-х років була висунута “революційна” пропозиція - скоротити список команд процесора, обмежившись лише найнеобхіднішими. А більш складні операції виконувати за допомогою цих простих команд. Так виник новий напрямок в архітектурі мікропроцесорних систем - Reduced Instruction Set Computer, себто комп’ютер зі скороченим комплектом команд. Такі процесори і комп’ютери дістали назву  RISC - процесорів та RISC - комп’ютерів на відміну від процесорів та комп’ютерів зі складною системою команд   Complex Instruction Set Computer ( CISC - комп’ютер).

 Перший “справжній” RISC - комп’ютер було створено наприкінці 70-х років в університеті Берклі. Він обходився 31 командою. Всередині 80-х років зявилися вже RISC-процесори другого покоління з 75 командами. Але це було все ж значно менш, аніж у сучасного їм процесора 80386, у якого список команд складав кілька сотень.

Перелічимо основні ознаки за якими RISC-процесори відрізняються від СISC-процесорів:

Скорочений (порядку 100) набір команд замість кількох сотень у СISC-процесорів. Команди мають простий, чітко визначений формат і передбачають небагато методів адресації;

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

Всі  команди обробки даних працюють лише зі вмістом робочих регістрів, котрі завантажуються конвеєрним методом. Для цього робиться велика кількість робочих регістрів: 32, 64, навіть 128, а також містка багаторівнева кеш-память;

Застосовується метод динамічного виконання (оптимізуючої компіляції).

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

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

Спочатку СISC і RISC-процесори сильно відрізнялися між собою. Але згодом вони починають зближатися, запозичуючи один від одного деякі елементи. Останнім “чистим” СISC-процесорoм був 80386-й. У 80486-ого вже є декілька запозичень від RISC-процесорів: конвеєрні лінії, внутрішній та зовнішній кеш, Ще більш таких запозичень є у Pentium-i та y процесорів шостого покоління.

 Особливості архітектури сучасних RISC-процесорів можна простежити на прикладі блок-схеми RISC-процесора третього покоління Alpha 21164 фірми DEC (рис.20.1).

Як видно, архітектура цього процесора зовсім не схожа на архітектуру розглянутих нами раніш процесорів Intel-лінії.

Особливостями цього процесора є:

наявність кеш-памяті трьох рівнів - дві внутрішніх (окремо для команд і для даних) та одна зовнішня;

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

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

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

Пашпортні дані розглянутого RISC-процесора виглядають досить показно:

шина адреси - 40 розрядів;

шина даних  -128 розрядів;

тактова частота - 300 МГц (внутрішня); зовнішня частина ЕОМ  може працювати з частотою у 3 - 15 разів меншою, щоб узгодити швидкодію процесора з швидкодією оперативної памяті;

продуктивність 1200 MIPS;

кількість транзисторів 9.3 млн.шт; всі вони розташовані на кристалі з площею 300 мм2.

потужність теплорозсіювання становить 50 Вт, отже для охолодження процесора потрібний досить сильний вентилятор;

собівартість 430$, відпускна ціна 3000$ (по стану на 1997р.).

Пентіум

Цей процесор, розроблений фірмою Intel в 1992-93рр., мав дістати, здавалося б, назву 08586. Але фірма з якихось причин віддала перевагу комерційній назві “Pentium”. Ось деякі його пашпортні дані:

розрядність шина адреси -32;

розрядність шини даних - 64;

тактова частота - до 150 МГц;

продуктивність більша від 100 MIPS;

кількість транзисторів  на кристалі більша від 3 млн.шт. при розмірах 0.8мкм;

живлення від +5В.

Структурна схема Pentiumа  зображена на рис.20.2.

Як видно, . його архітектура істотно відрізняється від архітектури попередніх Intel - процесорів і більш нагадує архітектуру розглянутого вище RISC - процесора. Характерними особливостями архітектури Pentium є:

64 - розрядна внутрішня шина даних;

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

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

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

За швидкістю виконання команд з плаваючою точкою Pentium перевищує 486 DX у 10 разів, а 486 DX2 - у 2 - 3 рази.  Завдяки достатньо великому внутрішньому кешу Pentium може працювати з частотою у кілька разів більшою, ніж усі інші блоки ПЕОМ.

Порівняння RISC і CISC процесорів

Природньо виникає питання - яка ж архітектура краща - RISC чи СISC ? Це питання виникло одразу з появою перших RISC-процесорів і продовжує існувати до сих пір, хоча, мабуть, наближається до свого розвязання. За цією суперечкою стоїть боротьба фірм, що спеціалізуються на розробці та виготовленню RISC та  СISC-процесорів.

Зрозуміло, що пашпортні дані RISC-процесорів виглядають значно вагоміше, аніж навіть у Pentiumа, не кажучи вже про раньші зразки СISC процесорів. Але ЕОМ на RISC-процесорах значно дорожчі від СISC-ЕОМ (майже на порядок). RISC-ЕОМ працює лише з операційною системою UNIX, яка складнішa від  DOS або Windows і потребує більшого обєму памяті.

Тому RISC -ЕОМ доцільно використовувати там, де такі високі параметри дійсно необхідні: для розвязання особливо складних задач або у станціях що обслуговують багато користувачів. Для звичайних користувачів ПЕОМ подібні RISC-машини “не по кишені”, вони надто складні в роботі, а їх високі параметри здебільше зостаються нереалізованими. Можна, звичайно, ввести RISC-машину у режим емуляції звичайної ПЕОМ. Але при цьому всі її вигоди втрачаються.

Щоправда, останнім часом ситуація починає дещо змінюватися. Ціна на RISC-ЕОМ поступово знижується, для них розробляються операційні системи наближені до тих, котрі знайомі широким колам користувачів. Зявилась, наприклад, ОС Microsoft Windows NT, за якою може працювати RISC-ЕОМ і яка є близькою до звичайної Windows.

З іншого боку, CISC-процесори все більше запозичають від RISC-архітектури  і відповідно наближаються до RISC-процесорів за своїми параметрами. Це ми вже простежили на прикладі і486 та Pentiumа. А процесори шостого покоління є вже і зовсім “RISC-подібними”. Так що ці два напрямки в мікропроцесорній техніці, що так довго протистояли один одному, дедалі все більш наближаються один до одного.

Процесори шостого покоління

Розробка процесора шостого покоління, що умовно називається як Р6 (комерційні назви  Pentium Pro та Pentium II), розпочалась фірмою Intel в 1990р. і початок його масового випуску припадає на 1996-97рр. Припускається, що пік його продажу припаде на 1999-2000рр. Кількість транзисторів у цьому процесорі складає 5.5 млн.шт. при розмірах окремого транзистора порядку 0.35 мкм, що наближається до фізично можливої границі. Продуктивність цього процесора досягає 250 MIPS. Тактова частота складає 150 МГц і більш. Напруга живлення 2.9В що зменшує розігрів процесора В керамічному корпусі розташовані дві мікросхеми - власне сам процесор та кристал надшвидкої кеш-памяті другого рівня.  Потужність розсіювання досить значна і може досягати 20 Вт.

В Р6 застосовані методи прискорення швидкодії, які добре зарекомендували себе в процесорах  і486 та Pentiumі,  багаторівнева кеш-память і  декілька спеціалізованих виконавчих пристроїв конвеєрного типу. Але основною новацією, що відрізняє Р6 від його попередників і ще більш наближає його до RISC-процесорів  - це використання в ньому принципу динамічного виконання програм.

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

Для здійснення цієї ідеї процесор Р6 має своєрідну архітектуру (рис.20.3). Пристрій для видобування команд переглядає команди що зберігаються у кеші команд на 20 - 30 команд вперед відносно існуючого стану лічильника команд і обирає ті з них, для виконання яких є всі готові дані. Дешифратор (1) виробляє для таких команд відповідні мікрокоманди і надсилає їх до виконання у блок (2). А ті команди, для виконання яких ще немає всього потрібного матеріалу, очікують коли ж цей матеріал надійде. Блок (2) складається з чотирьох спеціалізованих виконавчих пристроїв:

пристою для оперування з цілими числами;

пристою для роботи з числами з плаваючою точкою;

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

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

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

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


 

А также другие работы, которые могут Вас заинтересовать

79420. Процессы проектирования. Проектирование системной архитектуры 36.81 KB
  Системная архитектура или общая архитектура системы указывает состав технических объектов программных средств ручных операций; указываются требования системы между объектами. Компоненты должны быть разделены на модули системы подсистемы и т. Необходимо документально оформить привязку системных элементов архитектуры к требованиям системы.
79421. Процессы проектирования. Методики описания системной архитектуры 94.71 KB
  Методики описания системной архитектуры. IEEE 1471 IEEE 1471 Рекомендуемые методы описания архитектуры программных систем. В нем излагается концепция отношений между архитектурой описанием архитектуры заинтересованными сторонами соображениями точками зрений разрезами представлениями и моделями а также подход к работе с ними. См подробное описание ссылка Модель Захмана Модель Захмана основана на дисциплине классической архитектуры и обеспечивает общий словарь и набор перспектив или структур для описания современных сложных...
79422. Процессы проектирования. Архитектурные стили и шаблоны проектирования 80.97 KB
  Шаблон проверяют на: Целостность и непротиворечивость Конструкция полностью покрывает заявленные требования к функционалу Устойчивость и производительность Два подхода проектирования: От общих функций к реализации От частного к общему Архитектурные стили Репозиторий: Описание Все совместно используемые подсистемами данные хранятся в центральной базе данных доступной всем подсистемам. Рекомендации Логично использовать если система обрабатывает большие объёмы данных. Преимущества Совместное использование больших объёмов данных эффективно...
79423. Процессы проектирования. Проектирование информационной архитектуры 44.84 KB
  Задачи решаемые во время проектирования информационной архитектуры: Идентификация и инвентаризация существующих данных включая определение их источников процедур изменения и использования ответственность оценка качества; Сокращение избыточности и фрагментарности данных с целью уменьшения стоимости хранения данных повышение качества данных за счет исключения противоречивости и неоднозначности различных экземпляров данных; Исключение ненужных перемещений и копирований данных; Формирование интегрированных представлений данных таких...
79424. Процессы проектирования. Построение ER модели. Виды нотации 56.27 KB
  С её помощью можно выделить ключевые сущности и обозначить связи которые могут устанавливаться между этими сущностями. Степень конца связи указывается графически множественность связи изображается в виде вилки на конце связи. Модальность связи так же изображается графически необязательность связи помечается кружком на конце связи. Наименование может быть одно для всей связи или два для каждого из концов связи.
79425. Процессы проектирования. Построение логической модели данных 47.37 KB
  Построение логической модели данных. Создание схемы базы данных на основе конкретной модели данных например реляционной модели данных. Для реляционной модели данных даталогическая модель набор схем отношений обычно с указанием первичных ключей а также связей между отношениями представляющих собой внешние ключи. Концептуальная модель хранилища данных представляет собой описание главных основных сущностей и отношений между ними.
79426. Процессы проектирования. Построение физической модели данных 44.2 KB
  Построение физической модели данных. Создание схемы базы данных для конкретной СУБД. Специфика конкретной СУБД может включать в себя ограничения на именование объектов базы данных ограничения на поддерживаемые типы данных и т. Кроме того специфика конкретной СУБД при физическом проектировании включает выбор решений связанных с физической средой хранения данных выбор методов управления дисковой памятью разделение БД по файлам и устройствам методов доступа к данным создание индексов и т.
79427. Процессы проектирования. Проектирование программной архитектуры 48.05 KB
  Подход на основе шаблонов примеры шаблонов можно найти в вопросе 26 Стандартная структура подхода на основе шаблонов: Имя паттерна Задача паттерна Описание решения алгоритм без привязки к реализации Плюсы применения паттерна Минусы применения паттерна Иногда 4 и 5 пункт заменяют рекомендацией. Плюсы применения шаблонов проектирования: Инструмент для решения простых задач на любом языке разработчикам легче взаимодействовать увеличивается скорость программирования. Минусы применения шаблонов проектирования: Зацикливание разработчика...
79428. Процессы проектирования. Шаблоны программной архитектуры 112.61 KB
  Как применять политику ценообразования Вырабатывается стратегия приоритета скидок объект Продажа не должен обладать информацией о применяемых скидках но можно было бы применить стратегию расчета скидок. Имеются классы проектирования Продажа ТоварПродажа продажа отдельного вида товара в рамках продажи в целом ТоварСпецификация описание конкретного вида товара. Объект Продажа должен передать сообщение Рассчитать промежуточную сумму каждому экземпляру класса ТоварПродажа которые в свою очередь передают сообщения СообщитьЦену объектам...