Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Legacy). 3 страница




91. Головні характеристики архітектури AMD64. +

  • Архітектурні особливості

Основною визначальною характеристикою AMD64 є наявність 64-бітових регістрів загального призначення

(наприклад, RАX і RBX), арифметичних і логічних операцій над 64-бітними числами, а також 64-бітових

віртуальних адрес.

  • 64-розрядні цілі числа

Всі регістри загального призначення (GPRS) розширені з 32 біт до 64 біт, і всі арифметичні і логічні

операції, пам'ять-регістр і регістр-пам'ять і т.д., тепер можуть працювати безпосередньо з 64-

розрядними цілими числами. Заштовхування і виштовхування у стек можливе 8 байтовими кроками, і

вказівники мають розмір 8 байт.

  • Додано регістри

На додаток до збільшення розміру регістрів загального призначення, кількість регістрів загального

призначення збільшується з восьми (тобто EAX, EBX, ECX, EDX, EBP, ESP, ESI, EDI) в x86 до 16

(тобто RАX, RBX, RCX, RDX, RBP, RSP, RSI, RDI, R8, R9, R10, R11, R12, R13, R14, R15). Таким

чином, можна зберегти більше локальних змінних в регістрах, а не в стеку, і утримувати в регістрах

часто використовувані константи; Аргументи для невеликих і швидких підпрограм також можуть бути

передані в регістрах більшою мірою.

AMD64 має менше регістрів, ніж багато RISCподібних (які зазвичай мають 32 регістри) або VLIW

машин - таких як IA-64 (який має 128 регістрів). Проте, реалізація AMD64 може мати набагато більше

внутрішніх регістрів, ніж кількість архітектурних регістрів, доступних в наборі команд.

  • Додано XMM (SSE) регістри

Крім того, число 128-бітних регістрів XMM (використовується для Streaming SIMD інструкцій) також

збільшилося з 8 до 16 (XMM0 — XMM15).

  • Великий віртуальний адресний простір

Архітектура AMD64 визначає формат віртуального адресного простору 64-бітовим, з яких молодші 48

біт використовуються в поточних реалізаціях. Це дозволяє мати до 256 ТБ (248 байт) віртуального

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

повною мірою (до 64 біт), тобто розширення віртуального адресного простору для 16EB (264 байт).

Порівняйте з 4 ГБ (232 байт) для x86.

  • Великий фізичний адресний простір

Оригінальна архітектура AMD64 реалізована на 40-розрядних фізичних адресах і тому може

адресувати до 1 ТБ (240 байт) оперативної пам'яті. Поточні реалізації архітектури AMD64 (починаючи з

мікроархітектури AMD 10h) розширені до 48-бітних фізичних адрес і, отже, можуть адресувати до 256

Тбайт ОЗУ. Архітектурні можливості, що зараз розглядаються, це 52 біт в майбутньому (обмежується форматом запису таблиці сторінок); Це дозволить отримати до 4 PB оперативної пам'яті. Для порівняння, 32-розрядні процесори x86 обмежені 64 ГБ оперативної пам'яті в режимі продовженої фізичної адреси (PAE), або 4 Гб оперативної пам'яті без режиму PAE.

  • Великий фізичний адресний простір в стандартному режимі

При роботі в стандартному режимі архітектура AMD64 підтримує Physical Address Extension режим

(PAE), як і більшість сучасних процесорів x86, але AMD64 поширюється PAE з 36 бітів архітектурної

межі до 52 біт фізичної адреси.

  • Вказівник команд

Тепер Інструкції можуть посилатися на дані, які визначаються 64-бітовим вказівником команд (RIP

регістр). Це робить Position Independent код, який часто використовується в більш ефективних

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

  • Інструкції SSE

SSE (англ. Streaming SIMD Extensions, потокове SIMD-розширення процесора) — це SIMD набір інструкцій,

розроблених Intel, і вперше представлених у процесорах серії Pentium III як відповідь на аналогічний набір

інструкцій 3DNow! відAMD, який був представлений роком раніше. Оригінальна архітектура AMD64 прийняла від Intel SSE і SSE2 в якості основних інструкцій. Ці набори інструкцій забезпечують векторний додаток до скалярних x87 FPU, для одинарної точності і типів даних з подвійною точністю. SSE2 також пропонує цілий набір операцій для типів даних, починаючи від 8bit до 64bit. Це робить векторні можливості архітектури на одному рівні з передовими свого часу процесорами x86. Ці інструкції можуть бути також використані в 32-бітному режимі, що дозволяє покращення стандартів 32-бітних додатків 32-розрядної версії Windows 8. SSE3 інструкції та останні Streaming SIMD Extensions набори інструкцій не є стандартними особливостями архітектури.

  • No-Execute bit

Апаратний NX-Bit (No eXecute Bit в процесорах AMD), або XD-Bit (Execute Disable Bit в процесорах Intel) це

технологія, яка запобігає можливості виконання даних як коду. Біт "NX" (біт 63 запису таблиці сторінок)

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

порушення доступу до пам'яті, подібно спробі записати на сторінку тільки для читання. Аналогічна функція була доступна на процесорах x86 з моменту 80286 в якості ознаки дескрипторів сегментів. Сегментовані рішення вже давно вважаються застарілим режимом роботи, і всі нинішні операційні системи в силі обійти його, встановлюючи всі сегменти базової адреси в нуль (в реалізації 32 біт) і обмежитися розміром 4 ГБ. AMD був першим x86 сім'ї, який відмовився від режиму лінійної адресації.

  • Видалення старих функцій

Кілька «Системних функцій» архітектури x86 не використовуються в сучасних операційних системах і не доступні на AMD64 в довгому режимі (64-бітному і сумісному). Вони включають в себе сегментовану адресацію (хоча сегменти FS і GS зберігаються в залишковому вигляді для використання в якості додаткових базових вказівників в операційній системі), механізм task state switch, і віртуальний режим 8086. Ці особливості залишаються повністю реалізовані в "стандартному режимі", що дозволяє процесорам працювати як з 32-розрядними, так і 16-бітовими операційними системами без змін. Деякі інструкції, які рідко використовуються, не підтримуються в 64-бітному режимі, у тому числі збереження / відновлення сегментних регістрів в стеку, збереження / відновлення всіх регістрів (PUSHA / POPA), десяткової




Поделиться с друзьями:


Дата добавления: 2014-12-25; Просмотров: 395; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.016 сек.