МПС
Принципы формирования адресного пространства (Лекция) ПЛАН ЛЕКЦИИ 1. Среда
выполнения задачи 2. Архитектурные
решения микропроцессоров 1. Среда выполнения задачи Любая задача,
запущенная на микропроцессоре IA-32, оперирует определенным набором ресурсов для
исполнения инструкций, сохранения данных и состояния задачи. Этот набор
ресурсов называется средой выполнения.
Функционирование некоторых элементов среды выполнения микропроцессора зависит
от режима работы микропроцессора. К среде выполнения задачи относят: 1)
адресное пространство (размер адресного пространства и
способы его адресации зависят от режима работы); 2)
регистры (8 регистров общего назначения, 6 сегментных
регистров, регистр флагов и указатель команды); 3)
регистры сопроцессора (восемь 80-битовых регистров
данных, регистр управления, регистр статуса, указатель команды, указатель
операнда, слово тэгов); 4)
стек (для реализации вложенных подпрограмм и передачи
параметров между ними). Кроме
перечисленных ресурсов, среда выполнения микропроцессора содержит так
называемые системные ресурсы, предназначенные для поддержки операционных систем
и системного программного обеспечения: 1)
пространство портов ввода-вывода (обеспечивает
взаимодействие с периферийными устройствами); 2)
управляющие регистры (определяют режим работы
процессора и состояние задачи); 3)
регистры управления памятью и дескрипторные таблицы
(используются в защищенном режиме); 4)
регистры отладки; 5)
прочие регистры (MTRRs, MSRs и др.) 2. Архитектурные решения микропроцессоров Анализируя адресные пространства
программ и данных, определяют: 1) МП
с архитектурой фон Неймана (память программ и память данных находятся в едином
пространстве и нет никаких признаков, указывающих на тип информации в ячейке
памяти); 2) МП
с архитектурой Гарвардской лаборатории (память программ и память данных
разделены, имеют свои адресные пространства и способы доступа к ним). Мы рассмотрим более подробно основные типы архитектурных решений, выделяя связь со способами адресации памяти. 1. Регистровая архитектура определяется
наличием достаточно большого регистрового файла внутри МП. Команды получают
возможность обратиться к операндам, расположенным в одной из двух запоминающих
сред: оперативной памяти или регистрах. Размер регистра обычно фиксирован и
совпадает с размером слова, физически реализованного в оперативной памяти. К
любому регистру можно обратиться непосредственно, поскольку регистры
представлены в виде массива запоминающих элементов - регистрового файла.
Типичным является выполнение арифметических операций только в регистре, при
этом команда содержит два операнда (оба операнда в регистре или один операнд в
регистре, а второй в оперативной памяти). К данному типу архитектуры относится
микропроцессор фирмы Zilog. Процессор Z80 - детище фирмы Zilog помимо
расширенной системы команд, одного номинала питания и способности исполнять
программы, написанные для i8080, имел архитектурные "изюминки". Рис. 1. Микропроцессор Z80 фирмы Zilog В дополнение к основному набору РОН, в
кристалле был реализован второй комплект аналогичных регистров. Это значительно
упрощало работу при вызове подпрограмм или процедур обслуживания прерываний,
поскольку программист мог использовать для них альтернативный набор регистров,
избегая сохранения в стеке содержимого РОНов для основной программы с помощью
операций PUSH. Кроме того, в систему команд был включен ряд специальных
инструкций, ориентированных на обработку отдельных битов, а для поддержки
регенерации динамической памяти в схему процессора введены соответствующие
аппаратные средства. Z80
применялся в машинах Sinclair ZX, Sinclair Spectrum, Tandy TRS80. Предельный вариант - архитектура с
адресацией посредством аккумуляторов (меньший набор команд). МП фирмы Motorola имел ряд существенных
преимуществ. Прежде всего, кристалл МС6800 требовал для работы одного номинала
питания , а система команд оказалась весьма прозрачной для программиста.
Архитектура МП также имела ряд особенностей. Рис.2. Микропроцессор МС6800 фирмы Motorola Микропроцессор МС 6800 содержал два
аккумулятора, и результат операции АЛУ мог быть помещен в любой из них. Но
самым ценным качеством структуры МС 6800 было автоматическое сохранение в стеке
содержимого всех регистров процессора при обработке прерываний (Z80 требовалось
для этого несколько команд PUSH). Процедура восстановления РОН из стека тоже
выполнялась аппаратно. Стековая архитектура дает возможность создать поле памяти с упорядоченной последовательностью записи и выборки информации. В общем случае команды неявно адресуются к элементу стека, расположенному на его вершине, или к двум верхним элементам стека. Архитектура МП, ориентированная на
оперативную память (типа "память-память"), обеспечивает высокую
скорость работы и большую информационную емкость рабочих регистров и стека при
их организации в оперативной памяти. Архитектура этого типа не предполагает
явного определения аккумулятора, регистров общего назначения или стека; все
операнды команд адресуются к области основной памяти. |
||