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

3.Особливості архітектури Alpha компанії dec

У цей час сімейство мікропроцесорів з архітектурою Alpha представлено декількома кристалами, що мають різні діапазони продуктивності, що працюють із різною тактовою частотою й розсіюють різну потужність.

Першим на ринку з'явився 64-розрядний мікропроцесор Alpha (DECchip 21064) . Він являє собою RISC-процесор в однокристальному виконанні, до складу якого входять пристрій цілочисленої і плаваючої арифметики, а також кеш-пам'ять ємністю 16 Кб. Кристал проектувався з урахуванням реалізації передових методів збільшення продуктивності, включаючи конвеєрну організацію всіх функціональних пристроїв, одночасну видачу декількох команд для виконання, а також засобу організації симетричної багатопроцесорної обробки.

У кристалі є два регістрових файли по 32 64-бітових регістра: один для цілих чисел, другий - для чисел із плаваючою крапкою. Для забезпечення сумісності з архітектурами MIPS і VAX архітектура Alpha підтримує арифметику з одинарною й подвійною точністю як у відповідності зі стандартом IEEE 754, так і відповідно до внутрішнього для компанії стандартом арифметики VAX.

Сама потужна модель процесора 21064 працює на частоті 200 Мгц. Наприкінці 1993 року з'явилася модернізована версія кристала - модель 21064А, що має на кристалі кеш-пам'ять подвоєного обсягу й працююча з тактовою частотою 275 Мгц.

Потому були випущені моделі 21066 і 21068, що оперують на частоті 166 і 66 Мгц. Відмінною рисою цієї галузі процесорів Alpha є реалізація на кристалі шини PCI. Це істотно спрощує й здешевлює як проектування, так і виробництво комп'ютерів. Відмінна риса моделі 21068 - низька споживана потужність (близько 8 ватів). Основне призначення цих двох нових моделей - персональні комп'ютери й одноплатні ЕОМ.

На Рис. 10 представлено блок-схему мікропроцесора 21066. Основними компонентами цього процесора є: кеш-пам'ять команд, цілочислений пристрій, пристрій плаваючої крапки, пристрій виконання команд завантаження/запису, кеш-пам'ять даних, а також контролер пам'яті й контролер введення/виводу.

Рис.10. Основні компоненти процесора Alpha 21066

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

Контролер пам'яті насамперед перевіряє вміст зовнішньої кеш-пам'яті другого рівня, що побудована на принципі прямого відображення й реалізує алгоритм відкладеного зворотного копіювання при виконанні операцій запису. При виявленні промаху контролер звертається до основної пам'яті для перезавантаження відповідних рядків кеш-пам'яті. Контролер введення/виводу шини PCI обробляє весь трафик, пов'язаний з введенням/виводом. Під керуванням центрального процесора він виконує операції програмувального введення/виводу. Трафік прямого доступу до пам'яті шини PCI обробляється контролером PCI разом з контролером пам'яті. При виконанні операцій прямого доступу до пам'яті в режимі читання й запису дані не розміщаються в кеш-пам'яті другого рівня. Інтерфейси пам'яті й PCI були розроблені спеціально розраховуючи на однопроцесорні конфігурації й не підтримують реалізацію мультипроцесорної архітектури.

На Рис.11 показано приклад системи, побудованої на базі мікропроцесора 21066. У представленій конфігурації контролер пам'яті виконує звертання як до статичної пам'яті, за допомогою якої реалізована кеш-пам'ять другого рівня, так і до динамічної пам'яті, на якій побудована основна пам'ять. Для зберігання тегів і даних у кеш-пам'яті другого рівня використовуються кристали статична пам'яті з однаковим часом доступу по читанню й запису.

Рис.11. Приклад побудови системи на базі мікропроцесора Alpha 21066

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

Високошвидкісна шина PCI має ряд привабливих властивостей. Крім можливості роботи із прямим доступом до пам'яті й програмованим введенням/виводом вона допускає спеціальні конфігураційні цикли, розширюваність до 64 біт, компоненти, що працюють із живлячими напругами 3.3 і 5 У, а також більш швидке тактування. Базова реалізація шини PCI підтримує мультиплексування адреси й даних і працює на частоті 33 Мгц, забезпечуючи максимальну швидкість передачі даних 132 Мбайт/с. Шина PCI безпосередньо управляється мікропроцесором. На Рис. 11 показано деякі високошвидкісні периферійні пристрої: графічні адаптери, контролери SCSI і мережні адаптери, підключені безпосередньо до шини PCI. Мостова мікросхема інтерфейсу ISA дозволяє підключити до системи низькошвидкісні пристрої типу модему, флоппі-дисковода й т.д.

У цей час випущена модернізована версія цього мікропроцесора. Як і його попередник, новий кристал Alpha 21066A крім інтерфейсу PCI містить на кристалі інтегрований контролер пам'яті й графічний акселератор. Ці характеристики дозволяють значно знизити вартість реалізації систем, що базуються на Alpha 21066A, і забезпечують простий і дешевий доступ до зовнішньої пам'яті й периферійних пристроїв. Alpha 21066A має дві модифікації відповідно до частоти: 100 Мгц і 233 Мгц. Модель із 233 Мгц забезпечує продуктивність 94 і 100 одиниць, відповідно, по тестах SPECint92 і SPECfp92.

Новітній мікропроцесор Alpha 21164 являє собою другу повністю нову реалізацію архітектури Alpha. Мікропроцесор 21164, представлений у вересні 1994 року, забезпечує продуктивність 330 і 500 одиниць, відповідно, по шкалах SPECint92 і SPECfp92 або близько 1200 MIPS і виконує до чотирьох інструкцій за такт. На кристалі мікропроцесора 21164 розміщено близько 9,3 мільйони транзисторів, більшість із яких утворять кеш. Кристал побудований на базі 0.5 мікронної КМДП технології компанії DEC. Він збирається в 499-контактні корпуси PGA (при цьому 205 контактів приділяються під розведення живлення й землі) і розсіює 50 Вт при живлячій напрузі 3.3 V на частоті 300 Мгц.

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

На Рис. 12 представлено блок-схему процесора, що включає п'ять функціональних пристроїв: пристрій керування потоком команд (IBOX), цілочислений пристрій (EBOX), пристрій плаваючої крапки (FBOX), пристрій керування пам'яттю (MBOX) і пристрій керування кеш-пам'яттю й інтерфейсом шини (CBOX). На малюнку також показані три розташованих на кристалі кеш-пам'яті. Кеш-пам'ять команд і кеш-пам'ять даних являють собою первинні кеші, що реалізують пряме відображення. Множинно-асоціативна кеш-пам'ять другого рівня призначена для зберігання команд і даних. Довжина конвеєрів процесора 21164 варіюється від 7 ступенів для виконання цілочислених команд і 9 ступенів для реалізації команд із плаваючою крапкою до 12 ступенів при виконанні команд звертання до пам'яті в межах кристала й змінного числа ступенів при виконанні команд звертання до пам'яті за межами кристала.

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

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

Пристрій плаваючої крапки складається із двох конвеєрних виконавчих пристроїв: конвеєра додавання, що виконує всі команди плаваючої крапки, за винятком команд множення, і конвеєр множення, що виконує команди множення із плаваючою крапкою. Два спеціальних конвеєри завантаження й один конвеєр запису даних дозволяють командам завантаження/запису виконуватися паралельно з виконанням операцій із плаваючою крапкою. Апаратно підтримуються всі режими округлення, передбачені стандартами IEEE і VAX.

Пристрій керування пам'яттю виконує всі команди завантаження, записи й бар'єрні операції синхронізації. Він містить повністю асоціативний 64-рядковий буфер перетворення адрес (DTB), 8 Кбайт кеш-пам'ять даних із прямим відображенням, файл адрес промахів і буфер запису. Довжина рядка в кеші даних дорівнює 32 байтам, він має два порти по читанню й реалізований за принципом наскрізного запису. Він індексується розрядами фізичної адреси й у тегах зберігаються фізичні адреси. У пристрій керування пам'яттю в кожному такті може надходити до двох віртуальних адрес із цілочисленого пристрою. DTB також має два порти, тому він може одночасно виконувати перетворення двох віртуальних адрес у фізичні. Команди завантаження звертаються до кешу даних і повертають результат у регістровий файл у випадку влучення. При цьому затримка становить два такти. У випадку промаху фізичні адреси направляються у файл адрес промахів, де вони буферизуються й очікують завершення звертання до кеш-пам'яті другого рівня. Команди запису записують дані в кеш даних у випадку влучення й завжди поміщають дані в буфер запису, де вони очікують звертання до кеш-пам'яті другого рівня.

Рис.12. Блок-схема процесора Alpha 21164

Відмінною рисою мікропроцесора 21164 є розміщення на кристалі вторинного трьохканального множинно-асоціативного кеша, ємністю 96 Кбайт. Вторинний кеш різко знижує кількість звертань до зовнішньої шини мікропроцесора. Крім вторинного кеша на кристалі підтримується робота із зовнішнім кешем третього рівня.

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

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