Реферат: Процессоры. История развития. Структура. Архитектура
1. 1. 1. Организация памяти 8086 /88
Память для процессоров 8086/8088 представляется в виде линейной последовательности байт. Для обращения к памяти процессор (совместно с внешней схемой) формирует шинные сигналы MEMWR# (Memory Write) и MEMRD# (Memory Read) для операции записи и считывания соответственно. Охват пространства размером 1 Мб обеспечивается 20-разрядной шиной адреса. Логическая память разбивается на сегменты размером 65 Кб. Физический адрес памяти (поступающий на шину адреса разрядностью 20 бит) состоит из двух 16-битных частей – адрес сегмента Seg и исполнительного адреса ЕА (executive address), суммируемых со смещением на 4 бита (рис 2.1).
Рис. 2.1. Формирование физического адреса памяти процессором 8086/8088
Процессор может обращаться к одному байту памяти, так и слову , или двойному слову . При размещении слова в памяти с адресом, соответствующим адресу слова, содержит его младшую часть (Low), следующий байт содержит старшую часть (High). Слово может размещаться в памяти как по четному (Even), так и по не нечетному (Odd) адресу. Двойное слово обычно используется для хранения полного адреса, и в нем располагается сначала слово смещения (в порядке L, H), а затем сегмента (в том же порядке). Сегментация памяти в порядке L, H являются характерной чертой процессоров Intel.
Все пространство памяти разбивается на параграфы – области из 16 смежных байт, начиная с нулевого адреса. Вполне очевидно, что любой сегмент может начинаться только на границе параграфа (четыре младших бита адреса – нулевые).
1.1.2. Адресация ввода-вывода
Для обращения к устройствам ввода-вывода процессор имеет отдельные команды IN и OUT , результатом выполнения которых является формирование шинных сигналов IORD# (Input/ Output Write) для чтения или записи одного или двух байт. Данные при чтении могут помещаться только в регистр AL или AX и выводятся из этих же регистров. В циклах ввода-вывода используется только 16 младших бит шины адреса (старшие биты при этом нулевые), что позволяет адресовать до 64 Кб регистров ввода-вывода. Адрес устройства задается либо в команде (только младший байт, старший – нулевой), либо берется из регистра DX (полный 16-битный адрес).
1.1.3. Система команд
Набор команд 8086/88 включает следующие основные группы:
· инструкции пересылки данных
· арифметические и логические инструкции;
· инструкции со строками;
· инструкции передачи управления;
· инструкции управления процессором;
Каждая команда имеет один или два байта инструкции , за которыми может следовать 1, 2 или 4 байты операнда. Перед кодом инструкции возможно применение префиксов CS;, DS;, ES;, SS;, указывающих на использование заданных сегментных регистров вместо обычного, префикса REP, указывающего на необходимость повтора инструкции указанное в регистре СХ число раз, и префикса LOCK, блокирующего системную шину на время выполнения инструкции. С позиции сегодняшнего дня можно считать, что система команд 16-разрядного процессора 8086/88 является подмножеством команд 32-разрядных процессоров 80х86.
1.2 . Процессоры 80186 / 80188
Процессоры i80186/80188 и их модификации 80С186/80С188 не представляют нового представления архитектуры: как и 8085/8088, они являются процессорами с 16-разрядной внутренней архитектурой и программно совместимыми с 8086ю Разрядность шины адреса - 20 бит, шины данных у 80186 – 16 бит, у 80188 – 8 бит. Эти процессоры имеют встроенные периферийные контроллеры прерывания, прямого доступа к памяти, трехканальный таймер и генератор синхронизации. За счет архитектурных улучшений сокращенно число тактов, требуемых для выполнения некоторых команд. Процессоры 80С186/80С188 имеют средства управления энергопотреблением, есть их модификации со встроенными последовательными портами и контроллерами регенерации динамической памяти. Встроенная периферия этих процессоров имеет программный интерфейс, не совместимы с IBM РС - спецификациями. Эти процессоры используются во встраиваемых контроллерах и компьютерах, не требующих 100% IBM – совместимости (возможно обеспечение совместимости на уровне MS DOS).
1.2.1. Математический сопроцессор 8087
Сопроцессор 8087, официально (фирмой Intel) называемый NPX (Numeric Processor eXtension), предназначен для расширения вычислительных возможностей центрального процессора (CPU) 8086/8088, 80186/80188. Его применение к системе команд 8086 добавляется 68 мнемоник, включающих арифметические, тригонометрические, экспоненциальные и логарифмические.
1.3. Процессор 80286
Процессор 80286, выпущенный в 1982 году, представляет второе поколение 16-разрядных процессоров. Он имеет специальные средства для работы в многопользовательских и многозадачных системах. Самым существенным отличием от 8086/88 является механизм управления адресации памяти, который обеспечивает четырехуровневую систему защиты и поддержки виртуальной памяти . Специальные средства предназначены для поддержки механизма переключения задач (Task switching). Процессор имеет расширенную систему команд, которая кроме команд управления защитой включает все команды 8086 н и несколько новых команд общего назначения. Процессор может работать в двух режимах:
8086 Real Address Mode – режим реальной адресации (или просто реальный режим - Real Mode), полностью совместимый с 8086. В этом режиме возможна адресация до 1 Мбайт физической памяти (на самом деле, за счет “удачной” ошибки, почти на 64 Кб больше).
Protect Virtual Address Mode – защищенный режим виртуальной адресации (или просто защищенный режим - Protect Mode). В этом режиме процессор позволяет адресовать до 16 Мбайт физической памяти, через которые при использовании страничной адресации могут отображаться до 1 Гб виртуальной памяти каждой задачи. Система команд в этом режиме также включает набор команд 8086, расширенный для обеспечения аппаратной реализации функций супервизора многозадачной ОС и виртуальной памяти. Переключение в защищенный режим осуществляется одной командой (с предварительно подготовленными таблицами дескрипторов) достаточно быстро. Обратное переключение в реальный режим возможно только через аппаратный сброс процессора.
По составу и назначению в реальном режиме регистры 80286 в основном совпадают с регистрами 8086/88. Изменения касаются назначения бит регистра 8086, процессор 80286 имеет 16-битную шину данных и очередь команд 6 байт. За счет архитектуры сокращенно время выполнения операций: процессор 20286 с тактовой частотой 12,5 МГц работает более чем в 6 раз быстрее чем 8086 с тактовой частотой 5 МГц. Предусмотрена возможность использования высокопроизводительного процессора 80287, программно совместимого с 8087.
Под управлением MSDOS процессор 80286 обычно используют в реальном режиме работы. Защищенный режим используют ОС типа XENIX, UNIX, OS/2, NetWare286 и оболочка MS Windows. Хотя его преимущества в РС реализованы лишь частично (он в основном использовался как быстрый процессор 8086), именно с этим процессором связан настоящий “бум” на рынке РС.
1.3.1. Организация памяти 80286
Как и у процессоров 8086/8088, для обращения к памяти процессор (совместно с внешней схемой) формирует шинные сигналы MEMWR# (Memory Write) и MEMRD# (Memory Read) для операции записи и считывания соответственно. Шина адреса разрядностью 24 бита позволяет адресовать 16 Мб физической памяти, но в реальном режиме доступен только 1 Мб, начинающийся с младших адресов. С программной точки зрения память также организуется в виде сегментов, но управление сегментацией имеет существенные различия для реального и защищенного режимов.