
- •Архитектура простой микро – эвм, структура простейшей памяти, состав команд.
- •Структура элементарного микропроцессора.
- •Функционирование микро – эвм: выполнение операции сложения.
- •Функционирование микро – эвм: действия на требования прерывания внешнего устройства.
- •Функционирование микро – эвм: использование регистра адреса/данных.
- •Функционирование микро – эвм: использование указателя стека.
- •И нтерфейс с озу.
- •Основные элементы интерфейса портов ввода/вывода.
- •Интерфейс с реальными портами ввода/вывода.
- •Синхронизация прерыванием передачи данных в устройства ввода/вывода.
- •Шины. Основные понятия.
- •Синхронизация шины.
- •Арбитраж шины.
- •Разновидности шин.
- •Разновидности озу.
- •Типы динамической памяти (fpm, edo, bedo, sdram)
- •Разновидности пзу(Постоянная память—rom, from, eprom).
- •Принципы кэширования.
- •Кэширование в процессорах старших поколений.
- •Архитектура микропроцессора intel 8086.
- •Микропроцессор intel 8086: регистры общего назначения, указатель команд, регистр флагов.
- •Внутренние регистры Регистры данных
- •Регистры сегментов
- •Регистры указателей и индексов
- •Указатель команд
- •Сегментация памяти в процессорах intel 8086.
- •Адресация
- •Способы адресации.
- •Режимы для указания адресов переходов.
- •Адресация портов ввода-вывода.
- •Принципы ввода/вывода, ввод/вывод по прерываниям.
- •Блоковые передачи и прямой доступ к памяти.
- •Регистры сегментов. Шесть 16-разрядных регистров содержат значения селекторов сегментов, которые указывают на текущие адресуемые сегменты памяти. Ниже перечислены эти регистры.
- •Режимы работы 32-разрядных процессоров семейства intel.
- •Основные понятия защищенного режима работы.
- •Основные понятия защищенного режима
- •Селекторы и дескрипторы.
- •Многозадачность. Переключение задач.
- •Страничное управление памятью в процессорах Pentium.
- •Страничное управление памятью в процессорах p6.
- •Режим виртуального 8086 (v86 и ev86).
- •Распределение памяти пк.
- •Стандартная память. Верхняя память (uma). Дополнительная память. Стандартная память — Conventional Memory
- •Верхняя память - uma
- •Дополнительная память — Extended и Expanded Memory
- •Основные характеристики озу.
- •Достоверность хранения данных.
- •Процессоры intel 486: пакетный режим передачи данных.
- •Процессоры intel 486: буферы отложенной записи.
- •Процессоры пятого поколения фирмы intel. Основные отличия по сравнению с предыдущими поколениями.
- •Процессоры Pentium
- •Технология mmx. Технология 3dnow!
- •Процессоры 6-го поколения фирмы intel. Основные особенности. Двойная независимая шина.
- •Обзор процессоров шестого поколения
- •Двойная независимая шина
- •Архитектурные принципы построения процессоров.
- •1.Технология cisc
Регистры сегментов. Шесть 16-разрядных регистров содержат значения селекторов сегментов, которые указывают на текущие адресуемые сегменты памяти. Ниже перечислены эти регистры.
Регистр сегмента программы (CS). Указывает на сегмент, который содержит текущую последовательность исполняемых команд. Процессор выбирает все команды из этого сегмента, используя содержимое счетчика команд как относительный адрес. Содержимое регистра CS изменяется в результате выполнения внутрисегментных команд управления потоком, прерываний и исключений. Он не может быть загружен явным способом.
Регистр сегмента стека (SS). Вызовы подпрограмм, записи параметров и активизация процедур обычно требуют области памяти, резервируемой под стек. Все операции со стеком используют регистр SS при обращении к стеку. В отличие от регистра CS регистр SS может быть загружен явно с помощью команды программы.
Остальные четыре регистра являются регистрами сегментов данных (DS, ES, FS, GS), каждый из которых адресуется текущей исполняемой программой. Доступ к четырем раздельным областям данных имеет целью повысить эффективность программ, позволяя им обращаться к различным типам структур данных. Содержимое этих регистров может быть заменено под управлением программы.
При использовании регистров сегментов МП 80386 с каждым выбранным сегментом связывает базовый адрес. При адресации единицы данных внутри сегмента к базовому адресу сегмента добавляется 32-разрядный относительный адрес. Если сегмент выбран загрузкой селектора сегмента в регистр сегмента, то командам манипуляции данными нужен только этот относительный адрес.
Регистры, которые содержат дескрипторы сегментов, программно недоступны. Внутри МП 80386 регистр дескриптора связан с каждым программно доступным регистром сегмента. Каждый регистр дескриптора содержит 32-разрядный базовый адрес сегмента, 32-разрядную границу сегмента (поле, определяющее размер сегмента) и другие необходимые атрибуты.
Когда значение селектора загружается в регистр сегмента, процессор автоматически обновляет связанный с ним регистр дескриптора. В защищенном режиме базовый адрес, граница и атрибуты целиком обновляются содержимым дескриптора сегмента, выбранного селектором. В режиме реальных адресов обновляется только базовый адрес путем сдвига значения селектора на четыре бита влево, поскольку максимальная граница сегмента и его атрибуты в реальном режиме фиксированы.
Регистры управления сегментированной памятью. Эти регистры известны также как регистры системных адресов. Четыре регистра указывают структуры данных, которые управляют механизмом сегментированной памяти. Они определены для ссылок на таблицы или сегменты, поддерживаемые моделью защиты МП 80286 и 80386.
Адреса этих таблиц и сегментов хранятся в специальных регистрах системных адресов и системного сегмента.
Регистр таблицы глобальных дескрипторов (GDTR). Содержит 32-разрядный линейный адрес и 1б-разрядную границу таблицы глобальных дескрипторов.
Регистр таблицы локальных дескрипторов (LDTR). Содержит 16-разрядный селектор для таблицы локальных дескрипторов. Так как эта таблица является специфичным для задачи сегментом, то она определяется значением селектора, хранимым в регистрах системного сегмента. Регистр дескриптора сегмента, связанный с этой таблицей, программно недоступен.
Регистр таблицы дескрипторов прерываний (IDTR). Указывает на таблицу точек входа в программы обработки прерываний. Регистр содержит 32-разрядный линейный базовый адрес и 16-разрядную границу таблицы дескрипторов прерываний (IDT).
Регистр задачи (TR). Указывает на информацию, необходимую процессору для определения текущей задачи. Регистр TR содержит 16-разрядный селектор дескриптора сегмента состояния задачи. Поскольку этот сегмент специфичен для задачи, то он определяется значениями селекторов, хранящихся в регистрах системного сегмента. Заметим, что с каждым регистром системных сегментов связан программно недоступный регистр дескриптора сегмента.
Указатель команд. Расширенный указатель команд (EIP) является 32-разрядным регистром. Он содержит относительный адрес следующей команды, подлежащей выполнению. Относительный адрес отсчитывается от начала (или базового адреса) сегмента текущей программы. Указатель команд непосредственно не доступен программисту, но он управляется явно командами управления потоком, прерываниями и исключениями. Младшие 16 бит регистра EIP называются IP и могут быть использованы процессором независимо. Это свойство полезно при исполнении команд МП 8086 и 80286, которые имеют только регистр IP.
Регистры управления. Микропроцессор 80386 имеет три 32-разрядных регистра управления (CRO, CR2 и CR3, a CR1 зарезервирован фирмой Intel), в которых хранятся состояния машины или глобальные состояния. Глобальное состояние-это такое состояние, к которому может получить доступ любой из логических блоков системы или которое управляет этими блоками. Вместе с регистрами системных адресов эти регистры хранят информацию о состоянии машины, которая влияет на все задачи в системе. Для доступа к регистрам управления определены команды их загрузки и сохранности содержимого.
-
P
G
E
T
T
S
E
M
M
P
P
E
Системным программистам регистры управления доступны только через варианты команды MOV, которые позволяют их загружать или сохранять в регистрах общего назначения. Формат четырех регистров управления показан на рис.5.
Регистр CRO содержит флаги, которые управляют или показывают условия, относящиеся к системе в целом, а не к отдельной задаче. Младшие 16 бит (биты с 0 по 15) этого регистра являются словом состояния машины (MSW) для совместимости с защищенным режимом МП 80286.
Бит 31 разбиения на страницы (PG) показывает, использует ли МП 80386 таблицы страниц для трансляции линейных адресов в физические.
Бит 4 расширения (ЕТ) показывает тип сопроцессора (80287 или 80387), присутствующего в системе.
Бит 3 переключения задачи (TS) процессор устанавливает при включении каждой задачи. Он также проверяет этот бит, когда интерпретирует команды сопроцессора, так как состояние последнего требуется сохранять только в случае запроса сопроцессора новой задачей. Бит TS может быть очищен загрузкой в регистр CRO, а также и специальной командой CLTS очистки этого бита.
Бит 2 эмуляции (ЕМ) показывает, нужно ли эмулировать функции сопроцессора. Эмуляция используется для имитации одной системы или процессора другой таким образом, что имитирующая система воспринимает те же самые данные, исполняет те же самые программы и достигает тех же самых результатов, что и имитируемая система или функция. Установка бита ЕМ часто возникает в случае отсутствия сопроцессора в системе.
Бит I арифметического сопроцессора (МР) управляет функцией команды WAIT, которая используется для взаимодействия с сопроцессором.
Бит 0 включения защиты (РЕ): при установке процессор переходит в защищенный режим, а при очистке - в режим реальных адресов.
Регистр CR1 зарезервирован для будущих процессоров фирмы Intel. Регистр CR2 используется для обработки отказов страницы в случае, когда установлен бит PG в регистре CRO. В регистре CR2 процессор сохраняет тот линейный адрес, который вызвал отказ. Код ошибки, запоминаемый при возникновении отказа в стеке обработки отказов страницы, обеспечивает дополнительную информацию о состоянии при этом отказе.
Регистр CR3 используется, когда установлен бит PG в регистре CRO. Этот регистр позволяет процессору определить место расположения таблицы каталога страниц для текущей задачи. Он содержит физический базовый адрес таблицы каталога страниц. Таблица каталога страниц МП 80386 всегда выровнена на размер страницы в 4 Кбайт, поэтому младшие 12 бит регистра CR3 игнорируются при записи в него и не определены при его сохранении.
Включение задачи через сегмент состояния задачи TSS, который изменяет значение или явно загружает регистр CR3, отменяет все входы в кэш-таблицу страниц в блоке кэширования страниц. Заметим, что если не изменять значение регистра CR3, то входы в кэш-таблицу страниц не пропадают.
Регистры отладки. Шесть доступных программисту регистров отладки (DR0-DR3, DR6 и DR7) расширяют возможности отладки в МП 80386, они устанавливают точки останова по данным и позволяют устанавливать точки останова по командам без модификации сегментов программ. Регистры DR0-DR3 предназначены для четырех линейных точек останова. Регистры DR4 и DR5 зарезервированы фирмой Intel для будущих разработок. Регистр DR6 показывает текущее состояние точек останова, а регистр DR7 используется для установки точек останова.