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

Пароль



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

Забыли пароль?
Запросите новый здесь.
Бит глобальности G
ФОРМАТЫ ПРЕДСТАВЛЕНИЯ ДАННЫХ И ВЫПОЛНЕНИЕ ОПЕРАЦИЙ

Бит размера страниц PS при установленном значении бита PSE = 1 указывает размер используемых страниц: 4 Кбайт при PS = 0, 4 Мбайт при PS = 1 (если PSE = 0, то используются страницы по 4 Кбайт при любом значении PS).


31 12 11 9 8 7 6 5 4 3 2 1 0
а) Базовый адрес таблицы страниц AVL G PS О А PCD PWT U/S R/W Р

31 12 11 9 8 7 6 5 4 3 2 1 0
б) Базовый адрес страниц AVL G О D А PCD PWT U/S R/W Р

31 22 21 12 11 9 8 7 6 5 4 3 2 1 0
в) Базовый адрес страниц Резерви­ровано AVI G PS О А PCD PWT U/S R/W Р

Рис. 2.45. Формат указателей таблицы (а), страницы (б) для страниц 4Кбайт и указателя страницы для страниц 4Мбайт (в) при 32-разрядном адресе

Бит глобальности G программно устанавливается в состояние «1», чтобы отметить разделы или страницы, часто используемые при решении данной задачи. Базовые адреса этих разделов или страниц, загруженные во внутреннюю буферную память TLB, сохраняются при ее очистке. Подробнее работа TLB рассмотрена ниже.

Биты 9-11 указателей (AVL на рис. 2.45) зарезервированы для операционной системы (ОС), которая может использовать их для своих потребностей. Например, в этих битах может размещаться информация о времени последнего обращения к данному разделу или странице. Эта информация используется ОС для определения разделов и страниц, подлежащих замене из внешней памяти.

Если процессор работает в режиме формирования расширенных 36-разрядных адресов (в регистре CR4 установлено значение бита РАЕ = 1), то процедура формирования физического адреса несколько усложняется (см. рис. 2.46). В этом случае вводится дополнительная таблица каталогов, с помощью которой адресуется каталог разделов (при использовании стандартных страниц 4 Кбайт, рис. 2.46, а) или каталог страниц (при использовании расширенных страниц 2 Мбайт, рис. 2.46, б). Для обращения к таблице каталогов в линейном адресе выделяется 2-разрядное поле Directory Pointer. В основном процедура трансляции производится так же, как описано выше для формирования 32-разрядных адресов. Отличия состоят в том, что выполняется дополнительный этап трансляции с обращением к таблице каталогов.

Форматы указателей каталогов, разделов и страниц, используемых при расширенной адресации, показаны на рис. 2.47. Указатели содержат 64 бита (часть из них резервирована), назначение которых аналогично соответствующим битам указателей при стандартной 32-разрядной адресации (см. рис. 2.45). Указатели имеют поля, в которых хранятся старшие разряды 36-разрядных базовых адресов каталогов, разделов и страниц. С помощью страничной трансляции (рис. 2.46) формируется 36-разрядный физический адрес команды или операнда.

Отметим, что расширенная разрядность адреса реализуется только при использовании страничной адресации, когда установлены значения битов PG = РАЕ = 1.

Как указано выше, страничная организация памяти требует дополнительных затрат вре-ме ни для преобразования (трансляции) линейного адреса в физический. Эти затраты будут весьма значительными, если в каждом цикле производить обращение к оперативной памяти для выбора указателей таблиц и страниц. Существенное сокращение времени преобразования адресов достигается путем использования специализированной внутренней кэш-памяти, которая называется буфером ассоциативной трансляции TLB (translation look-aside buffer). Эти буферы хранят физические адреса нескольких ранее выбранных страниц. При повторном обращении к этим страницам процедура трансля­ции не выполняется, а выбирается из TLB ранее полученный базовый адрес страницы. Про­цессоры семейства Р6 содержат два отдельных буфера TLB - для трансляции адресов команд и данных (см. рис. 2.1).

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

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

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

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