Архитектура ЭВМ и микроархитектура процессора

Содержание

Слайд 2

Архитектура ЭВМ и микроархитектура процессора

2. Архитектура процессора включает:
2.1. Набор и доступность регистров

Архитектура ЭВМ и микроархитектура процессора 2. Архитектура процессора включает: 2.1. Набор и
(программную модель процессора)
2.2. Режимы работы и логическую организацию памяти в них.
2.3. Способы представления и форматы данных.
2.4. Набор и форматы машинных команд.
2.5. Обработку прерываний.
Микроархитектура процессора – это блочная схема процессора, соответствующая схемотехнической реализации архитектуры процессора.

Слайд 4

Иерархия памяти [3]
Микроархитектура Nehalem

L0:

L1:

L2:

L3:

L4:

L5:

L6:

Регистры
(4 ядра)

4 кэша L1 (32+32 КБ)

4 кэша L2 (256

Иерархия памяти [3] Микроархитектура Nehalem L0: L1: L2: L3: L4: L5: L6:
КБ)

Разделяемый кэш L3 (8 МБ)

Память
( используется встроенный контроллер памяти)

Локальныe устройства

Сетевые устройства

Меньше
Быстрее
Дороже
Доступнее
Критичнее

Больше
Медленнее
Дешевле
Удаленнее
Менее необходимы

Слайд 5

Программная модель процессора [1, 2]
Архитектура IA-32 до процессора Pentium 4

Программная модель процессора

Программная модель процессора [1, 2] Архитектура IA-32 до процессора Pentium 4 Программная
в архитектуре IA-32 включает следующий
набор ресурсов:
Адресное пространство памяти до 236-1 Б = 64 ГБ
(232-1 Б =4 ГБ для Pentium II).
2. Набор регистров процессора и сопроцессора.
3. Программный стек.
4. Адресное пространство портов ввода-вывода.
5. Счетчики мониторинга производительности.

Слайд 6

Аппаратный интерфейс процессора и памяти использует для передачи данных физические адреса.
Физический

Аппаратный интерфейс процессора и памяти использует для передачи данных физические адреса. Физический
адрес – двоичный код ячейки памяти, устанавливаемый на шине адреса.
n проводников (линий) в шине данных позволяют обращаться к 2n ячейкам памяти. n – разрядность адреса (шины адреса)
Модель памяти, в которой адреса ячеек памяти задаются последовательно от 0 до 2n-1, называется линейной (flat, плоской, сплошной).

Слайд 7

Адресное пространство памяти Pentium 4

Стек

ss:esp

0

236-1 (64ГБ)
(232-1 (4 ГБ) Pentium)

Дисциплина LIFO –
Last

Адресное пространство памяти Pentium 4 Стек ss:esp 0 236-1 (64ГБ) (232-1 (4
Input First Output

Слайд 8

Логическая адресация осуществляется с использованием блоков смежных адресов, называемые сегментами.
В пределах сегмента

Логическая адресация осуществляется с использованием блоков смежных адресов, называемые сегментами. В пределах
можно использовать линейную адресацию, начиная с 0 относительно начала сегмента. Такие адреса называются смещением (offset).
Адрес начала сегмента называется базой сегмента.
Для сегмента можно задавать целевое использование - тип сегмента:
различают сегменты кода, стека и данных.

Слайд 9

Набор регистров Pentium 4.

Регистры общего назначения.
Предназначены для хранения данных и адресов.
EAX/AX/AH/AL –

Набор регистров Pentium 4. Регистры общего назначения. Предназначены для хранения данных и
accumulator register для хранения промежуточных данных
EBX/BX/BH/BL – base register для хранения базового адреса объекта
ECX/CX/CH/CL – count register для организации циклов
EDX/DX/DH/DL – data register для хранения промежуточных данных
ESI/SI – source index register для текущего адреса элемента в цепочке-источнике
EDI/DI – destination index register для текущего адреса в цепочке-приемнике
ESP/SP – stack pointer register - указатель вершины стека в текущем сегменте стека
EBP/BP – base pointer register для доступа к данным в стеке

Для IA-64 добавляется 64-битные регистры RAX, RBX,…

Слайд 10

Сегментные регистры

Аппаратная поддержка сегментной организации вычислений.
3 сегмента программы: код (команды), данные, стек.
CS

Сегментные регистры Аппаратная поддержка сегментной организации вычислений. 3 сегмента программы: код (команды),
– code segment register – адрес сегмента с машинными командами
DS – data segment register – адрес сегмента данных
ES, FS, GS – extention data segment registers – адреса дополнительных сегментов данных
SS – stack segment register – адрес сегмента стека.

Слайд 11

Регистры состояния и управления

EIP/IP – instruction pointer register – адрес следующей подлежащей

Регистры состояния и управления EIP/IP – instruction pointer register – адрес следующей
выполнению команде (смещение относительно адреса сегмента кода в CS) EFLAGS/FLAGS – flag register – регистр флагов состояния, управления и системных флагов.

Для защищенного режима работы процессора используются системные регистры:
5 регистров управления
CR0 – command register 1 – системные флаги
CR1 – зарезервирован
CR2 – страничная организация памяти
CR3 – регистр каталога страниц
CR4 – включение свойств процессора

Слайд 12

4 регистра системных адресов:
GDTR (48) - Global Descriptor Table register – предел

4 регистра системных адресов: GDTR (48) - Global Descriptor Table register –
(размер таблицы) (0-15) и базовый адрес GDT
LDTR (16) – Local Descriptor Table register – селектор (указатель)
дескриптора LDT в GDT
IDTR (48) – Interrupt Descriptor Table register – – предел (размер таблицы) (0-15) и базовый адрес IDT
TR (16) – Task register – селектор (указатель)
дескриптора TSS (task segment status) в GDT для переключения задач

8 регистров отладки DR0 – DR7 (32)
DR0 – DR3 – для реализации точек останова
DR4, DR5 - зарезервированы
DR6 состояние отладки (причина останова)
DR7 управления отладкой (условия останова)

Слайд 13

Регистры сопроцессора

8 регистров стека сопроцессора R0-R7 (80)
0-63 - мантисса, 64-78 – порядок,

Регистры сопроцессора 8 регистров стека сопроцессора R0-R7 (80) 0-63 - мантисса, 64-78
79 – знак
3 служебных регистра (16):
SWR – status word register – вершина стека и состояние сопроцессора
CWR – control word register – управление режимами работы
сопроцессора
TWR – tags word register – состояние регистров стека R0-R7 (по 2 бита на регистр)
2 регистра указателей (48)
DPR – data point register – адрес операнда команды, вызвавшей исключение
IPR –instruction point register - адрес команды, вызвавшей исключение

Слайд 14

Регистры целочисленного MMX-расширения
MultiMedia eXtensions начиная с Pentium MMX

MMX реализует целочисленные SIMD (Single

Регистры целочисленного MMX-расширения MultiMedia eXtensions начиная с Pentium MMX MMX реализует целочисленные
Instruction Multiple Data) вычисления
При выполнении целочисленных MMX-операций сопроцессор
переводится в специальный режим, в котором разряды мантиссы (0-63)
регистров R0-R7 (80) используются в качестве
регистров RMMX0-RMMX7 (64).
Целочисленные регистры MMX отображены на регистры сопроцессора.
Биты 64-79 устанавливаются в 1 для предотвращения исключений.