При использовании окон может быть применен как страничный, так и сегментный метод отображения адресного пространства в окно. При этом размер страницы, отображаемой в окно, не может превышать размер самого окна.
При использовании страничного метода отображения конкретная страница дополнительного адресного пространства, отображаемая в окно основной памяти, определяется переключателем страниц. Переключатель страниц строится по принципу, рассмотренному выше (см. схему на рис. 5.4).
При использовании сегментного метода конкретная область адресного пространства, которая будет отображаться в окно, определяется содержимым базового регистра. Если разрядность адреса вспомогательного адресного пространства, отображаемого в окно основной памяти, совпадает с разрядностью базового регистра, то любая область вспомогательной памяти может быть отображена в основную память с точностью до байта.
Принцип использования оконной адресации при отображении страниц дополнительной памяти в основное адресное пространство можно легко понять по рис. 5.9.
Рис. 5.9.
Оконная адресация часто используется при развитии микропроцессорных семейств, когда размера областей памяти, отведенных для конкретных задач в младших моделях семейства, не хватает для старших моделей, а при этом нужно поддерживать аппаратную совместимость с младшими моделями семейства. В качестве примера можно привести микросхемы 181с96 фирмы INTEL или TMS320c5410 фирмы Texas Instrument, где для расширения области регистров специальных функций используется оконная адресация.
Универсальные микропроцессоры применяются в настольных или портативных компьютерах, а также во встраиваемых системах, и в настоящее время именно на них отрабатываются самые передовые решения по повышению быстродействия микросхем.
Паразитные емкости печатной платы компьютера или другого устройства, в котором используется микропроцессор, не позволяют достигнуть предельного быстродействия, с которым может работать кристалл микропроцессора. Кроме того, невозможно реализовать кварцевые резонаторы на частоты, на которых работают современные микропроцессоры. Поэтому внутренняя и внешняя тактовая частота микропроцессора различаются. Обычно внутренняя тактовая частота в несколько раз выше внешней.
Умножение внешней тактовой частоты внутри кристалла процессора производится при помощи схемы фазовой автоподстройки частоты, поэтому для установления стабильной внутренней частоты микропроцессора требуется некоторое время, определяемое обычно десятками микросекунд.
Первым фактором, огранивающим быстродействие микропроцессорной системы в целом, является то, что для увеличения доступной емкости системной памяти компьютера используют микросхемы ОЗУ динамического вида. Однако они обладают относительно невысоким быстродействием. В результате возникает противоречие между высоким быстродействием микропроцессора и недостаточным быстродействием системной памяти, что ограничивает производительность микропроцессорной системы в целом.
В качестве решения этой проблемы в современных компьютерах предлагается использование кэш-памяти. Эта память с точки зрения программиста никак не видна и общий объем системной памяти вследствие ее наличия не увеличивается.
Кэш-память выполняется в виде статической памяти небольшого размера и высокого быстродействия. Она ставится как буфер между основной памятью и микропроцессором. Кэш-память располагается на материнской плате. Естественно, что при первом обращении к системной памяти быстродействие снижается на задержку, вносимую копированием информации в кэш-память. Выигрыш в быстродействии достигается при повторном обращении к одному и тому же участку памяти. В этом случае обращение к основной памяти не требуется, т. к. в кэш-памяти уже хранится копия содержимого основной памяти. Учитывая, что выполнение программ обычно реализуется в виде циклов, когда один и тот же участок программного кода повторяется многократно, общее быстродействие системы в целом будет определяться быстродействием кэш-памяти. Всю логику работы с кэш-памятью выполняет контроллер памяти, входящий в набор микросхем (
Рассмотренный выше метод увеличивает общее быстродействие системной памяти, но только до значения тактовой частоты системной шины (внешняя тактовая частота микропроцессора). Согласовать внутреннее быстродействие микропроцессора и быстродействие системной шины позволяет использование внутренней кэш-памяти. Естественно, ее объем меньше, чем у кэш-памяти, расположенной на материнской плате компьютера.