Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Структура микропроцессоров IA-32




Архитектура 32-битных микропроцессоров семейства Intel IA-32. Часть 1

Вопросы

  1. Какие устройства составляют системное ядро ПК?
  2. При инициализации ПК информация о проверке каких устройств выводится на экран дисплея?
  3. С какого процессора семейства х86 количественные изменения в архитектуре кристалла перешли в качественные?
  4. Какими регистрами дополнилась программная модель ЦП 80286?
  5. Что такое селектор? С чем связано его появление? Какова структура селектора?
  6. Как формируется линейный адрес в режиме реальных адресов и в режиме системного управления?
  7. Что такое дескриптор? Какова структура дескриптора?
  8. Как формируется линейный адрес в защищенном режиме?
  9. Что находится в регистрах GDTR, IDTR и LDTR?
  10. Каково содержимое регистра TR? Для чего он нужен?

Лекция 3:

Аннотация: В данной части лекции рассматривается базовая структура микропроцессоров IA-32: программная модель, основные регистры и формат команд. Цель: познакомить учащихся с программной моделью IA-32, сформировать знания о некоторых архитектурных особенностях микропроцессоров IA-32.

Ключевые слова: IA-32, драйвер, мультиплексор, интерфейс, цикла, режим пакетирования, адрес, конвейеризация, функция, FIFO, First, очередь, операции, производительность, суперскалярность, pentium pro, сложение, вычисление, регистр, интеграция, point, вещественная арифметика, MMX, FPU, SIMD, инструкция, XMM, SSE, устройство управления памятью, кэш, память, компонент, страничное преобразование, физический адрес, трансляция, информация, пространство, рестарт, кэш данных, программная модель, указатель команд, регистр управления, бит, битовые поля, ESI, EDI, ebps, ESP, доступ, SI, SP, AH, указатель, значение, предел, сегментный регистр, дескрипторная таблица, логический адрес, EIP, FAR, far call, int, IRET, стек, байт, программа, время выполнения команды, MOV, немаскируемое прерывание, сегменты, call, RET, слово, флаг состояния, регистр флагов, защищенный режим, LDT, IDT, LTR, SIB, префикс, mod, режим адресации, дополнительный код, способ адресации, операнд, исключение, порт ввода-вывода, архитектура, процессор, адресация, EA


увеличить изображение
Рис. 3.1. Структура микропроцессора Intel-386

Базовую структуру микропроцессоров (МП) IA-32 можно рассмотреть на примере Intel-386 (рис. 3.1). В структуре Intel-386 можно выделить шесть основных блоков, работающих параллельно: блок интерфейса с магистралью, блок предварительной выборки команд, блок декодирования команд, исполнительный блок, блок управления сегментами и блок страничной трансляции.

Блок интерфейса с магистралью содержит драйвер адреса, схемы управления размером адреса и конвейером, мультиплексор, приемопередатчики и др. Этот блок обеспечивает интерфейс между МП и его окружением. Он принимает внутренние запросы для выборки команд от блока предварительной выборки команд и для обмена данными с исполнительным блоком и устанавливает приоритет этих запросов. Одновременно он генерирует или обрабатывает сигналы для исполнения текущего цикла магистрали. К ним относятся сигналы адреса, данных и управления для обращения к внешней памяти и устройствам ввода-вывода. При помощи схемы арбитра запросов блок управляет интерфейсом с внешними задатчиками магистрали и сопроцессорами. В МП Intel-486 (рис. 3.2) этот блок был дополнен схемой управления паритетом (выравниванием) и схемой управления пакетами. На основе последней был реализован специальный режим работы магистрали - режим пакетирования. В этом режиме при передаче 4 слов на магистрали выставляется только адрес первого, что позволяет существенно сократить время обмена данными с оперативной памятью или внешним кэшем.

11.

12.
увеличить изображение
Рис. 3.2. Структура микропроцессора Intel-486

Таблица 3.1. Порядок передачи 4 слов (64 бита) на системной магистрали
Такт Конвейеризация Intel-286 Режим пакетирования Intel-486
  Адрес 1 слова Адрес 1 слова
  Передача 1 слова ---
  Адрес 2 слова Передача 1 слова
  Передача 1 слова Передача 2 слова
  Адрес 3 слова Передача 3 слова
  Передача 1 слова Передача 4 слова
  Адрес 4 слова  
  Передача 1 слова  

Для того чтобы заранее получать команды или данные перед их фактическим использованием, существует функция опережающего просмотра программы, которую в Intel-386 выполняет блок предвыборки команд. Когда блок интерфейса с магистралью не занимает цикла магистрали для исполнения команды, блок предвыборки команд использует его для последовательной выборки из памяти байтов команд. Эти команды хранятся в 16-байтовой очереди команд в ожидании обработки блоком декодирования команд.

Блок декодирования команд преобразует байты команды из этой очереди в микрокод. Декодированные команды в ожидании обработки исполнительным блоком хранятся в очереди команд, работающей по принципу FIFO (First In First Out). В Intel-386 эта очередь имеет размер 3 команды, а в Intel-486 - уже 5 команд, что позволяет этому МП при некоторых условиях выполнять по одной команде за цикл. Непосредственные данные и относительные адреса в коде операции также берутся из очереди команд.

Исполнительный блок выполняет команды из очереди команд и взаимодействует со всеми другими блоками, нужными для завершения выполнения команды. Для ускорения выполнения команд с обращением к памяти исполнительный блок приступает к их исполнению до завершения выполнения предыдущей команды. Так как команды с обращением к памяти встречаются очень часто, то благодаря такому перекрытию по времени производительность повышается. В МП Pentium исполнительный блок реализован в виде двух параллельных конвейеров (u и v), что позволяет ему выполнять до двух команд за такт. Это архитектурное решение названо суперскалярностью. Оно получило дальнейшее развитие в МП подсемейства P6 (Pentium Pro, Pentium II, Pentium III), где исполнительный блок представлен уже тремя конвейерами. Особенностью конвейеров P6 является динамическое выполнение (предсказание ветвлений, спекулятивное выполнение, изменение последовательности команд).

В исполнительный блок встроены регистры общего назначения (РОН), которые используются для таких операций, как двоичное сложение или вычисление и модификация адресов. Исполнительный блок содержит восемь 32-разрядных РОНов, применяемых как для вычисления адресов, так и для операций с данными. Этот блок содержит также 64-разрядный регистр, необходимый для ускорения операций сдвига, циклического сдвига, умножения и деления.

Интеграция в МП i486DX блока вычислений с плавающей точкой (Floating Point Unit) резко повысила производительность вещественной арифметики. В МП Pentium MMX был добавлен набор команд, позволяющий использовать регистры блока FPU для параллельной обработки пакета целочисленных данных: SIMD - "одна инструкция - несколько операндов". В МП Pentium III эта технология была расширена, за счет добавленияем блока XMM, позволяющего параллельно обрабатывать пакет вещественных данных: SSE - потоковое расширение SIMD.

Блоки сегментации и страничной трансляции образуют устройство управления памятью.

Блок сегментации преобразует логические адреса в линейные по запросу исполнительного блока. Для ускорения этого преобразования текущие дескрипторы сегментов помещаются во встроенную кэш-память. Во время трансляции адресов блок управления сегментами проверяет, нет ли нарушения сегментации. Эти проверки выполняются отдельно от проверок нарушений статической сегментации, осуществляемых механизмом проверки защиты. Блок сегментации обеспечивает четыре уровня защиты (от 0 до 3) с целью изоляции и защиты друг от друга прикладных программ и операционной системы. Этот компонент также позволяет легко создавать перемещаемые программы и данные и обеспечивает их совместное использование. Полученный линейный адрес направляется в блок страничной трансляции.

Если механизм страничного преобразования включен, то для получения физических адресов по линейным используется блок страничной трансляции. Если же этот механизм выключен, то это означает, что, физический адрес совпадает с линейным, и трансляция не нужна. Для ускорения трансляции адресов в кэш-память дескрипторов страниц помещаются каталог недавно использованных страниц, а также информация о входах в таблицу страниц в буфере трансляции адресов. Затем блок страничной трансляции пересылает физические адреса в блок интерфейса с магистралью для выполнения цикла обращения к памяти или устройствам ввода-вывода. МП Intel-386 использует 32-разрядные регистры и шины данных для поддержки адресов и типов данных такой же разрядности.

Блок страничной трансляции позволяет прозрачно управлять пространством физических адресов независимо от управления сегментами. Каждый сегмент отображается в пространство линейных адресов, которое, в свою очередь, отображается в одну или несколько страниц объемом 4 Кб. Для реализации эффективной системы виртуальной памяти Intel-386 полностью поддерживает способность рестарта (повторного запуска) в случае отказа во всех страницах и сегментах.

В МП 80486 был интегрирован кэш первого уровня размером 8 Кб. В МП Pentium размер кэша первого уровня удвоен: 8 Кб - кэш команд и 8 Кб - кэш данных. В МП Pentium Pro, кроме того, на кристалле интегрирован кэш второго уровня.

Лекция 3: Архитектура 32-битных микропроцессоров семейства Intel IA-32. Часть 1




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


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


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



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




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