|
В начало
Принципы
формирования адресного пространства (Лекция) ПЛАН
ЛЕКЦИИ 1.
Среда выполнения задачи 2.
Архитектурные решения микропроцессоров 1. Среда выполнения задачи Любая
задача, запущенная на микропроцессоре IA-32, оперирует определенным набором
ресурсов для исполнения инструкций, сохранения данных и состояния задачи. Этот
набор ресурсов называется средой
выполнения. Функционирование некоторых элементов среды выполнения
микропроцессора зависит от режима работы микропроцессора. К среде выполнения
задачи относят: ·
адресное пространство (размер адресного
пространства и способы его адресации зависят от режима работы); ·
регистры (8 регистров общего назначения, 6
сегментных регистров, регистр флагов и указатель
команды); ·
регистры сопроцессора (восемь 80-битовых регистров
данных, регистр управления, регистр статуса, указатель
команды, указатель операнда, слово тэгов); ·
стек (для реализации вложенных подпрограмм и
передачи параметров между ними). Кроме
перечисленных ресурсов, среда выполнения микропроцессора содержит так
называемые системные ресурсы, предназначенные для поддержки операционных систем
и системного программного обеспечения: ·
пространство портов ввода-вывода (обеспечивает
взаимодействие с периферийными устройствами); ·
управляющие регистры (определяют режим работы
процессора и состояние задачи); ·
регистры управления памятью и дескрипторные
таблицы (используются в защищенном режиме); ·
регистры отладки; ·
прочие регистры (MTRRs,
MSRs и др.) 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). Процедура восстановления РОН из
стека тоже выполнялась аппаратно. Стековая архитектура дает возможность создать поле памяти с упорядоченной последовательностью записи и выборки информации. В общем случае команды неявно адресуются к элементу стека, расположенному на его вершине, или к двум верхним элементам стека. Архитектура МП,
ориентированная на оперативную память (типа "память-память"),
обеспечивает высокую скорость работы и большую информационную емкость рабочих
регистров и стека при их организации в оперативной памяти. Архитектура этого
типа не предполагает явного определения аккумулятора, регистров общего
назначения или стека; все операнды команд адресуются к области основной памяти.
|
|