Карта памяти вычислительной системы – это графическое представление распределения адресного пространства системы, разбиение таблицы доступных адресов по функциональным и программно-аппаратным признакам.
При построении микропроцессорных устройств важнейшими задачами проектировщика являются распределение адресного пространства системы; определение и распределение доступных системных адресов между ОЗУ, ПЗУ и ВУ; формирование протоколов предоставления адреса и оптимизация аппаратно-программной части обмена адресом.
В первых моделях микропроцессоров использовалось линейное распределение адресного пространства, при котором все доступное адресное пространство системы разбивалось по линейному принципу. В младших адресах располагались системные векторы прерываний, а прочая память делилась по принципу фон Неймана, отображая адреса программ и данных в единое адресное пространство системы, при этом выделялись адреса внешних устройств. С момента разработки процессора I8086 и по настоящее время применяется принцип сегментированного разбиения,при котором область программ и данных разбивается на несколько сегментов (страниц) по функциональным признакам. Так, в микропроцессорной системе, организованной на базе МП I8086, присутствуют четыре сегмента (кода, данных, стековый и дополнительный).
Позднее при увеличении доступного адресного пространства появились более сложные, но вместе с тем и более эффективные способы организации системной памяти. Так, начиная с процессора I80286, принят принцип дескрипторной адресации, при котором сегменты в памяти адресуются посредством дескрипторов – специальных таблиц в памяти, отвечающих за распределение и доступ к адресам системы.
Основными критериями распределения адресного пространства системы являются:
• максимально доступное адресное пространство; • минимум аппаратных затрат на реализацию необходимых системных функций;
• максимальное быстродействие системной памяти в сочетании с контролем достоверности информации;
• обеспечение выбранной модели памяти необходимыми системными программными и аппаратными ресурсами;
• удобочитаемость карты распределения, подразумевающая иерархический, сегментированный или иной способ описания адресного пространства, при котором разработчик достаточно легко проводит анализ адресов аппаратной части системы;
• наращиваемость, возможность комбинационного проектирования адресного пространства.
Вышеперечисленные требования не отражают всех возможных критериев и задач распределения адресного пространства, которые могут возникнуть в процессе разработки микропроцессорной системы, но являются одними из основных.
Контрольные вопросы к главе 1
1. Дайте определение понятиям «автомат», «программа», «команда» и «память программ».
2. Приведите основные исторические сведения о развитии микропроцессоров.
3. Перечислите критерии классификации микропроцессоров.
4. Перечислите компоненты простейшей микропроцессорной системы, организованной по архитектуре «с тремя шинами».
5. Каковы основные принципы построения MPP- и SMP-систем?
6. Приведите общий алгоритм выполнения команды процессором.
7. Дайте определение понятиям «системная синхронизация», «машинный такт», «машинный цикл» и «цикл команды».
8. Каковы алгоритмы функционирования микропроцессорной системы в режиме прерывания и прямого доступа к памяти?
9. Приведите основные характеристики запоминающих устройств.
10. Каковы принципы функционирования динамической, статической и энергонезависимой памяти? Назовите методы и способы организации кэшпамяти.
11. Что такое карта памяти? Перечислите основные критерии и способы распределения адресного пространства вычислительных систем.