Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 152

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 146 147 148 149 150 151 < 152 > 153 154 155 156 157 158 .. 528 >> Следующая

инициализации неиспользованных сегментных регистров как средство
обнаружения случайных ссылок. Если сегментный регистр используется для
обращения к памяти, будет выработано исключение.
Регистры сегментов. МП сохраняет информацию из дескрипторов в сегментных
регистрах, поэтому нет необходимости обращаться к таблице дескрипторов
при каждом обращении к памяти.
Каждый регистр сегмента имеет "видимую" и "скрытую" часть, как показано
на рис. 3.18. Видимыми частями этих регистров манипулируют программы, как
если бы эти регистры были просто 16-разрядными регистрами. Скрытые части
контролируются процессором. Операции, которые загружают регистры,
реализуются обычными командами программы.
Так как большинство команд обращаются к данным в сегментах, селекторы
которых уже загружены в сегментные регистры, процессор может прибавить
относительный адрес из команды к базовому адресу из скрытого регистра, не
прибегая к процедуре обращения к памяти, которая описана выше (т. е. без
обращения к резидентной таблице дескрипторов).
15 3 2 1 0
Глобальная таблица Локальная таблица
дескрипторов (GDT) дескрипторов (LDT)
I | I I
м м
S 1
1 1 I I
N+2 N+2
1 1 I |
N+1 N+1
1 1 I |
N N

1 1 0 I | 0
не исло ьзуется ие исло ьзуется

1 GDTR |- | LDTR \-
Рис. 3.16. Таблица дескрипторов
Индекс
RPL
260
Рис. 3.17. Формат селектора (TI - индикатор таблицы; BPL - запрашиваемый
уровень привилегий)
ФУНКЦИОНИРОВАНИЕ ПАМЯТИ
16-разрядный "видимый" селектор "Скрытый" дескриптор
CS _____________________________________________
SS______________________________________________________
DS______________________________________________________
ES _____________________________________________________
FS _____________________________________________________
GS
Рис. 3.18. Регистры сегментов
3.3.2. АДРЕСАЦИЯ ФИЗИЧЕСКОЙ ПАМЯТИ
Адресуемыми единицами физической памяти являются отдельные байты.
Физическое Адресное пространство, разбитое на страничные кадры, содержит
232байт. Команды и данные могут размещаться в любом месте этого адресного
пространства.
Обычно многобайтовые данные размещаются в физической памяти в формате
"младший крайний", т. е. младший байт формата - это байт с наименьшим
адресом памяти (данное размещено в порядке адресов памяти и задано
адресом своего младшего байта). ПО в режиме "супервизор" может
динамически выбирать вариант упорядочения байтов. Вариант упорядочения
определяется состоянием специального разряда в одном из управляющих
регистров МП. МП обеспечивает также режим "старшего крайнего", при
котором самый старший байт элемента данных является байтом с самым
младшим адресом.
Программы всегда строятся с адресацией по принципу "младший крайний".
Адреса последовательных команд возрастают в памяти. Это подразумевает,
что команды при обращениях к командам как к данным в режиме "старший
крайний", появляются в порядке, отличном от естественного. Фирма "Intel"
рекомендует, чтобы дисассемблеры , выполняющие систему конвертирования
команд в режиме "старший крайний", читали их как данные в порядке,
обратном порядку "младший крайний", а представляли их в приведенном здесь
формате "младший крайний".
Таблицы страничных директорий и таблицы страниц также доступны в порядке
адресов памяти (режим "младший крайний").
Практически во всех МП необходимо следующее выравнивание адресов на
адреса целочисленных границ (любое несоответствие вызывает ловушку
обращения к данным):
• 128-разрядные значения должны быть размещены в памяти по адресу,
соответствующему целочисленной границе для 16-байтового формата (т. е.
четыре младших разряда адреса должны быть нулевыми);
• 64-разрядные данные должны размещаться в памяти по адресу,
соответствующему це-
лочисленной границе для 8-байтового формата (т. е. по адресу, кратному 8,
три младших разряда адреса должны быть нулевыми);
• 32-разрядные данные размещаются по адресу целочисленной границы для 4-
байтового
формата (т. е. по адресу, кратному 4, два младших разряда адреса
нулевые);
• 16-разрядные данные выравниваются по целочисленной границе для 2-
байтового формата (т. е. их адреса должны быть кратны 2, младший разряд
адреса нулевой).
1 Программы, получающие на вход программу в машинном коде или в виде
загрузочных и объектных модулей и выдающие на выходе эквивалентные
программы на языке Ассемблера.
261
ИСПОЛЬЗОВАНИЕ КЭШ-ПАМЯТИ И ОРГАНИЗАЦИЯ ОСНОВНОЙ ПАМЯТИ
3.3.3. ТРАНСЛЯЦИЯ СТРАНИЦ
Если страничная трансляция разрешена, то процессор перед обращением к
памяти преобразует линейные адреса данных и команд в физические адреса.
Механизм преобразования адресов в разных МП фирмы "Intel" обладает всеми
особенностями, присущими системам со странично-организованной памятью с
защитой уровня страниц.
Трансляция адресов может быть и отключена. В исходном состоянии
процессора (системный сброс по RESET) трансляция адресов отключена. Она
Предыдущая << 1 .. 146 147 148 149 150 151 < 152 > 153 154 155 156 157 158 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed