December 17 2017 17:23:36
Навигация
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации .

Забыли пароль?
Запросите новый здесь.
возможность использования до 64 Тбайт виртуальной памяти
ПРОЦЕССОРЫ ОБЩЕГО НАЗНАЧЕНИЯ И СИСТЕМЫ НА ИХ ОСНОВЕ

Процессор оперирует с физической памятью объемом до 64 Гбайт. Каждый байт памяти имеет свой физический адрес - от 000000000h до FFFFFFFFFh. В памяти могут храниться 8-разрядные байты, 16-разрядные слова, 32-разрядные двойные слова и 64-разрядные счетверенные слова. При выполнении блоком SSE потоковых SIMD-команд используются 128-разрядные операнды. Слова занимают два смежных байта памяти, двойные и счетверенные слова - четыре и восемь смежных байт, причем младший байт располагается в ячейке с меньшим адресом, а старший байт - в ячейке с большим адресом. Адресом слова служит адрес младшего байта.

Процессор выполняет обращение к памяти, использующей два способа организации - сегментацию и разбиение на страницы.

Сегментация памяти обеспечивается при любом режиме работы процессора. Сегментация реализуется путем разбиения адресного пространства на отдельные блоки - сегменты, доступ к которым производится в соответствии с определенными правилами. Сегментированная память представляет собой набор блоков, характеризуемых определенными атрибутами, такими как расположение, размер, тип (стек, программа, данные), характеристика защиты. В системе на основе процессора Р6 каждой задаче доступны до 8192 сегментов величиной до 4 Гбайт каждый. Таким образом, обеспечивается возможность использования до 64 Тбайт виртуальной памяти. Для обращения к ячейке сегментированной памяти используется составной (логический) адрес, который состоит из селектора, задающего базовый адрес сегмента (начало), и относительного адреса ячейки (байта, слова) в сегменте. Арифметическое сложение базового и относительного адреса дает физический (линейный) адрес байта или слова (одинарного, двойного или счетверенного). Правила определения базового адреса сегмента зависят от режима работы микропроцессора (реальный или защищенный). Формирование относительного адреса определяется заданным методом адресации.

Страничная организация памяти обеспечивается только в защищенном режиме. Для ее реализации необходимо с помощью команды LMSW или MOV CR0 установить в регистре CR0 значение бита страничной адресации PG = 1. При этом сегменты делятся на отдельные страницы емкостью 4 Кбайт или 4 Мбайт, размещаемые в различных позициях адресного пространства ОЗУ. Страницы могут группироваться в разделы. Размещение разделов и страниц в ОЗУ производится диспетчером памяти, входящим в состав операционной системы. Диспетчер задает базовые адреса разделов и страниц, которые хранятся в памяти в виде адресных таблиц. При использовании страничной организации блоки трансляции адреса, входящие в состав процессора, преобразуют адрес, сформированный MIL) (при выборке операнда) или блоком выборки-декодирования (при выборке команды), в реальный физический адрес байта или слова. В процессе этого преобразования, который называется страничной трансляцией адреса, блок трансляции обращается к хранящимся в ОЗУ адресным таблицам. Чтобы уменьшить число таких обращений и повысить, таким образом, производительность процессора, базовые адреса 32 страниц памяти команд и данных, к которым выполнялись последние обращения, записываются во внутренние буферы трансляции адреса (TLB). При обращении к этим страницам их базовые адреса считываются из буфера, поэтому формирование физического адреса происходит существенно быстрее.

Страничная трансляция позволяет расширить объем адресуемой памяти до 64 Гбайт, используя 36-разрядную шину адреса. Такая возможность реализуется, если установить в регистре управления CR4 значение бита РАЕ = 1. При этом в адресных таблицах задаются 36-разрядные базовые адреса разделов и страниц, а размер страниц может составлять 4 Кбайт или 2 Мбайт.

2.1.3. РЕГИСТРОВАЯ МОДЕЛЬ

Регистровая модель процессоров Р6 содержит набор регистров, большинство из которых входят в состав более ранних моделей семейства Intel 80x86/Pentium. Эти регистры составляют следующие группы.

1.  Основные функциональные регистры:

регистры общего назначения ЕАХ, ЕВХ, ECX, EDX, ESP, EBP, ESI, EDI;

указатель команд EIP;

регистр флагов EFLAGS;

регистры сегментов CS,SS,DS,ES,FS,GS.

2.  Регистры блока обработки чисел с плавающей точкой (регистры FPU):

регистры данных R7-0 (ST7-0);

регистр тегов TW;

регистр состояния FPSR;

регистр управления FPCR;

регистры-указатели команды и операнда FIP, FDP.

3.  Регистры обработки пакетов чисел с плавающей точкой (регистры SSE):

регистры пакетов данных ХММ7-0;

регистр управления состояния MXCSR.

4.  Системные регистры:

регистры управления режимом CR4-0;

регистры системных адресов GDTR, LDTR, IDTR, TR;

регистры отладки DR7-0.

5.  Служебные (модельно-специфические) регистры. етствующий дескриптор выбирается из таблицы, хранящейся в ОЗУ, и размещается в программно-недоступном (теневом) регистре дескриптора сегмента (рис. 2.2). Селектор в регистре CS обеспечивает обращение к сегменту команд, селектор в SS - к сегменту стека, селекторы в DS, ES, FS, GS - к сегментам данных.

Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, авторизуйтесьили зарегистрируйтесь для голосования.

Нет данных для оценки.

Время загрузки: 0.01 секунд 2,299,252 уникальных посетителей