Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект МПТ.doc
Скачиваний:
10
Добавлен:
12.11.2019
Размер:
4.89 Mб
Скачать

2.2. Расширенное адресное пространство.

Для адресации ячейки того или иного ресурса необходимо место, в которое надо занести её адрес. Как правило, в роли такого ресурса, несущего в себе адрес выступают регистры общего назначения (РОН), в других случаях в качестве адреса может быть использована константа, следующая за командой. «Ширина» этой константы будет, естественно, ограничена разрядностью шины, которая совпадает с разрядностью РОН. Иное нецелесообразно – зачем нужен РОН, в который «не влазит» константа или, обратный случай, который нужно загружать за два раза?

Получается парадоксальная ситуация – из сказанного выше следует, что у 8-разрядных ядер максимальный размер адресного пространства ограничен 256 словами.

Для того чтобы понять, каким образом 8-разрядные ядра адресуют более чем 265 слов, рассмотрим способы доступа к расширенному адресному пространству.

Часть адресного пространства, доступная исходя из разрядности РОН, называется непосредственно адресуемой. Как было показано выше, для 8-разрядных РОН непосредственно адресуемой является младшая часть адресного пространства длинной 256 слов. Оставшаяся часть адресного пространства называется расширенной.

Адресное пространство, существующее для программы, называется логическим. Размер его совпадает с размером непосредственно адресуемой памяти. Адреса, которые при таком способе доступа приходят на входы модуля памяти, составляют физическое адресное пространство или физический адрес.

Рис 2.4. Расширенное и непосредственно адресуемое адресные пространства. К=2N, где N – разрядность РОН

Устройство, которое преобразует логический адрес в физический, называется диспетчером памяти (ДП). Диспетчер памяти обычно имеет регистр, с помощью которого управляют этим преобразованием. Располагается такой регистр в адресном пространстве, обязательно параллельном преобразуемому. Чаще всего для этого используется адресное пространство устройств ввода/вывода (страница ввода/вывода, УВВ, IOP).

Диспетчер памяти является, как правило, процессор-зависимым устройством - он является составной частью процессора, которую невозможно добавить, удалить или изменить. Для доступа к расширенному адресному пространству используется несколько способов. Рассмотрим наиболее применимые в настоящее время способы доступа к расширенному адресному пространству.

2.2.1. Метод регистровых пар

Этот способ впервые был применен в процессоре 8080. Суть его сводилась к тому, что два 8-разрядных РОН (а так же регистры диспетчера памяти) H и L при обращении к адресному пространству размером в 64 Кб аппаратно объединялись в 16-разрядную регистровую пару HL, содержащую физический адрес.

Рис 2.5. Метод регистровых пар в исходном варианте

Неудобство этого метода заключалось в следующем:

- два из шести РОН были задействованы под хранение адреса, следовательно, исключались из других применений;

- операции инкремента и декремента адреса приходилось выполнять как для двухбайтового числа – сначала операция проводилась с регистром L, затем возможный перенос (заём) учитывался в старшем байте – регистре H.

В настоящее время метод применяется в модифицированном виде. Например, в ОЭВМ семейств MCS-51 и MCS-52 в роли регистра диспетчера памяти используется 16-разрядный регистр DPTR, который относится не к РОН, а к регистрам специальных функций (РСФ, SFR), и, следовательно, не ограничивает использование регистров общего назначения.

Регистр DPTR может быть загружен 16-разрядной константой с помощью специальной команды, или же доступен как два 8-разрядных регистра – DPH и DPL. Существует также команда инкремента регистра.

Рис 2.6. Метод регистровых пар в современном варианте