Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MPS.doc
Скачиваний:
89
Добавлен:
12.05.2015
Размер:
10.45 Mб
Скачать

3.3. Risc-процесор PowerPc620

Спільними зусиллями компаній IBM і Motorola був розроблений 64-розрядний RISC-МП РС 620, який зберігає програмну сумісність з попередньою 32-розрядної моделлю РС 604, має продуктивність на 40% вище для операцій цілочисельної арифметики і на 100% - для операцій з плаваючою комою. В даному МП є спеціальний біт в слові стану, який визначає розрядність виконуваних програм. У 32-розрядному режимі використовується молодша половина 64-розрядних регістрів РС 620, що відповідає особливостям розрядності процесора РС 604, а значить забезпечує програмну сумісність з попередньою моделлю. В РС 620 шина адреси має 40 розрядів, завдяки чому фізичний простір, що адресується доведено до одного терабайта, а віртуальний простір - до 1 гектабайта (280).

Структурна схема МП РС620 показана на рис. 3.4.

Рисунок 3.4. Структурна схема РС620

Особливість даного МП полягає в тому, що кеш-пам'яті другого рівня можна підключати до системної шини RISC-процесора; роздільні кеш-пам'ять для даних і кеш-пам'ять для команд по 32КБ; ППДК - пристрій попереднього дешифрування команд; блок завантаження-збереження;

Виконавчий пристрій, що включає:

• 3 конвеєра арифметики цілих чисел ALU1-ALU3;

• РОНи, пов'язані з ними (регістровий файл 32х64), і буфера перепризначення;

• Конвеєр арифметики плаваючою точкою ОУПЗ і регістри файлу 32х64, з ним пов'язані.

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

В даному МП використовують механізм динамічного передбачення розгалуження. Він реалізується за допомогою блоку БОР і кеш-пам'яті адрес переходів. З блоком БОР пов'язана спеціальна таблиця ТПР. Ця таблиця має 256 рядків, завдяки чому вірогідність правильного передбачення розгалуження доведена до 0,9. У пристрої ППДК до кожної команди додається спеціальна 7-бітова ознака, за допомогою якої спрощується процес угруповання команд. Команди, зчитані з кеш-пам'яті команд, накопичуються в БК, а потім їх у міру готовності направляють до одного з виконавчих пристроїв. Після реалізації команд вони накопичуються в БПК, завдяки чому порядок їх видачі буде відповідати порядку їх надходження.

Особливість даного МП полягає в тому, що в ньому апаратно реалізована операція добування квадратного кореня з плаваючою точкою. Шинний інтерфейс забезпечує підтримку зовнішньої кеш-пам'яті L2. Ця пам'ять може мати обсяг до 128 МБ і функціонувати на тактовій частоті RISC-процесора РС 620, на частотах в 2 і 4 рази менше. Даний МП створювався для мультипроцесорних систем. СШ дозволяє підключати до 4 МП. Пропускна здатність цієї шини - 100 Мбіт/с. Унікальною особливістю цього МП є можливість програмного перемикання режимів адресації (Intel/Motorola) завдяки чому можна в ОС Unix виконувати Windows програми.

3.4. Risc-процесор mips-10000

Даний RISC-процесор є лідером за обсягом продажів, так як має найкращу характеристику показника ціна/продуктивність. Даний процесор, як і модель попереднього покоління R4400 розроблявся для високопродуктивних мікропроцесорних систем. До його системної шини може бути підключено до 4-х процесорів. Процесор містить близько 6,8 млн транзисторів, з яких 4,4 млн припадає на роздільний кеш L1. Процесор виготовляється за к-МОН 0,35 мкм технології з 4 шарами металізації. Продуктивність процесора R10000 при тактовій частоті 250 МГц становить 10,7 SPECint95 і 19SPECfp95.

Структурна схема процесора показана на рис. 3.5. В даному процесорі є 5 функціональних виконавчих блоків: 2 блоки цілочисельної арифметики ALU1 і ALU2, два блоки операцій з плаваючою точкою F1 і F2 і один блок завантаження-збереження - БЗЗ. Інформація в виконавчі блоки надходить з відповідного реєстрового файлу (РФ1 або РФ2), кожен з яких містить 64 регістра. З метою забезпечення програмної сумісності з попереднім процесором R4400, в якому число регістрів було в 2 рази менше тут використовується так звана логічна нумерація (крім фізичної), в наслідок чого програми можуть спостерігати тільки 32 регістра. При цьому ймовірні і проміжні результати зберігаються в інших «невидимих» регістрах. Для програм ці регістри стають «видимими» (доступними), тільки після того, коли будуть встановлені всі залежності і стануть дійсними всі раніше ймовірні шляхи реалізації команд.

Рисунок 3.5. Структурна схема MIPS-10000

Кожен з цілочисельних блоків ALU може виконувати операцію додавання і логічні операції. Крім того один з блоків виконує операції зсуву і прогнозує переходи, інший - операцію множення і ділення. Один з блоків ПК виконує операцію складання з подвоєною точністю, інший блок - множення, ділення і добування квадратного кореня. Виконавчі блоки виконують операції ЦА і ПК незалежно. Блок завантаження/збереження займається усіма обчисленнями та перетвореннями адрес, визначаючи одну адресу за такт. Він перетворює 44-розрядні віртуальні адреси в 40-розрядні фізичні, використовуючи буфер перетворення адрес БПА (TLB). У цьому МП команди виконуються в порядку їх надходження. Для реалізації даного механізму використовується досить складна система запуску команд (вважається, що вона найскладніша з усіх RISC-процесорів, що серійно випускаються). Під час вибірки в блоці попередньої вибірки БПВК здійснюється їх попереднє дешифрування, при цьому до кожної команди додається по 4 біта, які потім полегшують процес сортування. Потім здійснюється одночасне завантаження таких чотирьох 32-розрядних команд в кеш-команд. На другому етапі команди, що вибираються з кеш-пам'яті проходять два ступені дешифрування в блоці дешифрування команд БДК і в схемі перепризначення регістрів СПР. Другий ступінь необхідний для перейменування регістрів і дозволяє скоротити число міжрегістрових залежностей в ході виконання програми. При цьому складається два списки: С2-вільних регістрів, С1-зайнятих регістрів. Регістри зі списку С1 можуть бути в 2 станах «в роботі» (при виконанні команди) і «виконання закінчено» (в регістрі результат виконання команди). Після видачі результату цей регістр зі списку С1 переводиться в список С2. Після дешифрування команди поділяються на три 16-позиційні черги: ЧЦК - черга цілочисельних команд, ЧПК - черга команд з плаваючою точкою, ЧА - черга адрес.

Черги обслуговуються в порядку звільнення виконавчих блоків. Таким чином команда може виконуватися на одному з п'яти конвеєрів процесора, пов'язаному з відповідним блоком. При потенційній здатності виконувати 5 команд за 1 такт, МП R10000 дозволяє вибірку тільки чотирьох команд. Блок передбачення розгалуження БПР заповнюється при дешифруванні команд переходів. Ця інформація буде використовуватися в разі неправильно передбаченого переходу.

Якщо перехід передбачений неправильно, - скасовуються всі команди вибрані після неправильно передбаченого переходу. Ймовірність правильного переходу становить 0,87 - 0,9. У пристрої сполучення з системною шиною міститься спеціальний контролер, який забезпечує можливість управління зовнішньою кеш-пам'яттю L2, розмір якої може бути обраний від 512 Кб до 16 МБ. Якщо в RISC-процесорі компанії DEC Alpha 21164 пам'ять підключалася до загальної системної шини, то в процесорі М10000 така пам'ять підключається до автономної магістралі має 128 ліній даних і 36 ліній адреси.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]