Мікропроцесори архітектури SPARC

 

Напрямки розвитку архітектури. Реалізація пам'яті

 

Архітектура SPARC була створена компанією Sun в 1985 р. За основу була прийнята концепція 'регістрових вікон', що спрощує створення однопрохідних компіляторів і істотно знижуюча кількість команд звернення до пам'яті в порівнянні з іншими реалізаціями RISC архітектури.

На даний момент існують 4 лінії розвитку даної архітектури:

MicroSparc - 32 розрядні;

SuperSparc - 32 розрядні;

HiperSparc - 32 розрядні;

UltraSparc - 64 розрядні.

Основними рисами архітектури є:

підтримка лінійного 32-розрядного адресного простору;

використовування 32-розрядних команд фіксованої структури з трьома базовими форматами;

реалізація доступу до пам'яті і вводу/виводу за допомогою команд завантаження/збереження;

невелика кількість способів адресації (регістр-регістр, регистр - беспосередній операнд);

використовування триадресних регістрових команд. Велика частина команд виконується над двома операндами, результат поміщається в регістр приймач;

великий регістровий файл з регістровими вікнами. В кожен момент часу доступно 8 глобальних цілочисельних регістрів і регістрове вікно (24 регістри), що відображається на регістровий файл. Використовування регістрових вікон дозволяє значно скоротити невигідні витрати, пов'язані з перемиканням контекста при виконанні паралельних процесів;

мікропроцесор архітектура функціональний блок

окремий регістровий файл для операндів рухомої крапки (як набір з 32-32-розрядних регістрів для одинарної точності або 16 64-розрядних регістрів подвійної точності, 8 128-розрядних регістрів збільшеної учетверо точності або як суміш регістрів різної точності);

відкладена передача управління. Процесор завжди вибирає команду, наступну за командою відкладеної передачі управління. Ця команда може бути виконаний чи ні, залежно від стану ' аннулирующего' розряду в команді передачі управління;

швидкі обробники переривань. Генерація переривань приводить до формування в регістровому файлі нового регістрового вікна;

тегіровані команди. Ці арифметичні команди інтерпретують два молодші значущі розряди операндів, як інформацію про типи операндів. Ці команди встановлюють біт переповнювання в регістрі стану при арифметичному переповнюванні або у разі коли який-небудь з теговых бітів операндів не рівний нулю. Є варіанти команд, які за вказаних умов генерируют переривання;

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

підтримка співпроцесора (простий набір команд співпроцесора, який може використовуватися наряду з АЛУ);

двійкова сумісність програм користувачів у всіх реалізаціях архітектури.

Склад процесора - цілочисельний пристрій, пристрій для формату ПТ, співпроцесор. Кожний пристрій має свій набір регістрів, які мають фіксовану довжину - 32 біт.

Режими роботи - призначений для користувача і привілейований (виконання - аналог 486) При зверненні до пам'яті адреса доповнюється ідентифікатором адресного простору, який містить інформацію про режим роботи процесора, а також про те до якої пам'яті (команд або даних) здійснюється обіг.

Конкретна апаратна реалізація цілочисельного пристрою може містити від 40 до 520 32-розрядних регістра загального призначення, які розбиті на групи з восьми глобальних регістрів і циклічного стека, що містить набір від 2-х до 32-х наборів по 16 регістрів в кожному (регістрове вікно). В кожний момент часу виконуваній програмі доступно вісім глобальних регістрів і регістрове вікно (24 регістри). Регістри вікна розбиті на три групи; восьми вхідних, восьми локальних і восьми вихідних, які в той же час є вхідними регістрами суміжного вікна (тобто сусідні вікна перекриваються на 8 регістрів). Поточне вікно задається полем покажчика поточного вікна в слові стану процесора.

В даній архітектурі реалізована стандартна модель пам'яті, що має повну назву - повне впорядковування обігу (TSO - Total Store Ordering). Дана модель застосовна як до однопроцесорних так і до багатопроцесорних систем із загальною пам'яттю. Реалізація даної моделі дає гарантію, що всі команди запису, сбросу і безперервні команди читання/запису на всіх процесорах відпрацьовуються пам'яттю серіями в тому порядку, в якому вони завершуються процесором. Підтримується також додаткова модель пам'яті - часткове впорядковування обігу (PSO - Partial Store Ordering), яка у ряді випадків дозволяє підвищити продуктивність систем.

Архітектура UltraSparc

 

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

Основний набір блоків наступний:

пристрій видачі команд, що включає кеш-пам'ять команд, чергу команд, логіку управління;

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

пристрій з рухомою комою (множення, складання, віднімання, графічний пристрій);

кеш-пам'ять даних;

пристрій зовнішньої пам'яті (контроллер SDRAM, теги зовнішньої пам'яті, контроллер SRAM;

системний інтерфейс, що складається з контроллера обмінних операцій пам'яті і контроллера перемикання даних.




Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: