Архитектура ЦП 8086: основные регистры, организация памяти

Автор работы: Пользователь скрыл имя, 15 Декабря 2012 в 12:20, курсовая работа

Краткое описание

Программная модель МП представляется набором его регистров. Регистр является устройством временного хранения данных и используется с целью облегчения арифметических, логических и пересылочных операций.

Содержимое работы - 1 файл

Документ Microsoft Word.docx

— 41.41 Кб (Скачать файл)

Архитектура ЦП 8086: основные регистры, организация памяти

Программная модель МП представляется набором его регистров. Регистр является устройством временного хранения данных и используется с целью облегчения арифметических, логических и пересылочных операций.

Центральный процессор 8086 имеет четыре 16-битных регистра общего назначения AX, BX, CX, DX, четыре регистра-указателя SI, DI, BP и SP, четыре регистрасегментов CS, DS, ES, SS, один 16-битовый регистр флагов FLAGS и указатель программ IP (см. рис.2.1)

 
Рис. 2.1.  Программная модель ЦП 8086

Регистр-аккумулятор AX используется для хранения промежуточных данных и результатов.

При базовых типах адресации регистр BX содержит адрес области памяти либо адрес, который суммируется для получения нового значения со смещением.

Регистр-счетчик CX предназначен для  управления числом итераций в цикле  или числом повторений в командах REP в строковых операциях.

Регистр данных DX используется как вторичный аккумулятор для хранения промежуточных данных и результатов.

Индексный регистр-источник SI применяется  в качестве указателя адреса байта  или слова в таких строковых  командах, как LODS ("загрузить строку"), CMPS ("сравнить строку"), MOVS ("переслать  строку"). При базово-индексной  адресации содержимое регистра SI может суммироваться с содержимым регистра BX.

Индексный регистр-приемник DI используется как указатель назначения для  адреса байта или слова в строковых  командах, таких как SCAS (сканировать  строку), CMPS, MOVS, STOS (записать строку). При  базово-индексной адресации для  получения адреса операнда содержимое регистра DI может суммироваться с содержимым регистра BX.

Регистр-указатель стека SP применяется  для работы с данными в стековых структурах. Его содержимое указывает  адрес элемента на вершине стека, что удобно при организации обработки прерываний, процедур вызова подпрограммы и выхода из нее путем сохранения адреса возврата на вершине стека.

Регистр-указатель базы BP используется как дополнительный указатель для  работы с данными в стековых структурах. В режиме базово-индексной адресации  содержимое регистра BP может суммироваться с содержимым регистров SI или DI.

Адресное пространство памяти процессора, откуда происходит выборка команд и  данных, разделено на сегменты (области памяти) емкостью до 64 Кбайт каждый. Процессор 8086 имеет прямой доступ одновременно к четырем сегментам.

Начальный адрес сегмента может быть установлен прикладной программой и всегда должен начинаться с 16-байтовых границ. Базовый адрес сегмента получается делением действительного физического адреса начальной ячейки сегмента на 16. Базовые адреса содержатся в одном из четырех 16-битных сегментных регистровCS, DS, ES и SS. На расположение сегмента не накладывается никаких специальных ограничений, кроме одного: он должен быть на границе 16 байт (т.е. физический адрес начальной ячейки должен делиться на 16). Сегменты могут быть смежными, разделенными, перекрываться частично или полностью.

Регистры сегментов используются для идентификации текущего сегмента адресного пространства.

Регистр сегмента команд CS указывает сегмент, содержащий адрес текущей выполняемой программы.

Регистр сегмента данных DS содержит начало зоны адресов, которая в общем случае включает программно изменяемые таблицы и константы.

Регистр дополнительного сегмента ES указывает начало области памяти, которая обычно используется для запоминания промежуточных данных.

Регистр сегмента стека SS содержит начальный адрес стековой структуры в памяти ЭВМ.

Указатель команд IP содержит адрес  следующей команды в сегменте памяти, определяемом содержимым регистра сегмента команд CS.

Регистр флагов FLAGS содержит информацию о текущем состоянии микропроцессора. Имеет шесть однобитовых флагов состояния, которые индицируют результаты выполнения арифметических и логических операций.

 

 

 

Архитектура ЦП 80286: основные регистры, режимы работы, адресация  памяти

Программная модель процессора 80286 включает 14 регистров ЦП 8086, пять новых регистров:

  • GDTR - 40-разрядный регистр определяет размер и положение глобальной дескрипторной таблицы ;
  • LDTR - 16-разрядный регистр определяет базовый адрес локальной дескрипторной таблицы ;
  • IDTR - 40-разрядный регистр определяет начало и размер таблицы векторов прерываний;
  • MSW - слово состояния программы (, если флаг PE = 1 в MSW, то процессор переключается в защищенный режим ).;
  • TR - 16-разрядный регистр содержит селектор сегмента состояния задачи, используется для многозадачности,

и шесть программно недоступных регистров, связанных с CS, DS, ES, SS, GDTR, IDTR.

Режимы работы

С появлением Intel-286 впервые стали  говорить о различных режимах  работы IA-32. Это первый представитель  данного семейства микропроцессоров, в котором были реализованы многозадачность  и защищенная архитектура. Чтобы  обеспечить совместимость с предыдущими  представителями этого семейства (8086/88, 80186/188), в Intel-286 было реализовано  два режима функционирования: режим реального адреса (режим эмуляции 8086) и защищенный режим, в котором используются все возможности МП. В последующих поколениях МП этого семейства защищенный режим становится основным режимом работы.

Формирование  линейного адреса без участия  селекторов

В режиме реального адреса используется упрощенная схема формирования линейного адреса.

В этом случае базовый адрес сегмента берется из сегментного регистра. Значение в сегментном регистре представляет собой биты 4-19 базового адреса сегмента. Из этого следует, что сегменты в этих режимах выровнены по 16-битной границе и все сегменты начинаются в пределах нижнего мегабайта линейного адресного пространства. Действительный физический адрес получается умножением на 16 базового адреса сегмента (рис. 2.2). Предел для всех сегментов одинаков. В режиме реального адреса предел сегмента - 64 Кбайт.

 
Рис. 2.2.  Формирование физического адреса в реальном режиме

Формирование  линейного адреса в защищенном режиме

Значения, помещаемые в сегментные регистры, называются селекторами. Селектор содержит индекс дескриптора, определяющий номер записи в дескрипторной таблице, бит TI, указывающий, к какой дескрипторной таблице производится обращение LDT (TI = 1) или GDT (TI = 0), а также запрашиваемые права доступа ксегменту - RPL (рис. 2.3.).

 
Рис. 2.3.  Структура селектора

По указанному в селекторе номеру записи в соответствующей (бит TI селектора ) дескрипторной таблице определяется дескриптор сегмента.

Дескриптор - это 8-байтная единица описательной информации, распознаваемая устройством управления памятью в защищенном режиме, хранящаяся вдескрипторной таблице.

Дескриптор сегмента содержит базовый адрес описываемого сегмента, предел (размер) сегмента и права доступа к сегменту. В защищенном режиме сегментымогут начинаться с любого линейного адреса.

Для определения физического адреса базовый адрес сегмента суммируется со смещением.

Существуют две обязательных дескрипторных таблицы - глобальная (GDT) и дескрипторная таблица прерывания (IDT), - а также множество (до 8192) локальных дескрипторных таблиц (LDT), из которых в один момент времени процессору доступна только одна. Расположение дескрипторных таблиц определяется регистрамипроцессора GDTR, IDTR, LDTR.

Регистры GDTR и IDTR - содержат базовый адрес и предел дескрипторной таблицы.

Программно доступная часть регистра LDTR - 16 бит, которые являются селектором LDT. Дескрипторы LDT находятся в GDT. Однако, чтобы не обращаться каждый раз к GDT, в процессоре имеется теневая (программно недоступная) часть регистра LDTR, в которую процессор помещает дескриптор LDT при каждой перегрузкеселектора в регистре LDTR.

 

 

 

 

 

 

 

 

 

 

Анализ развития процессоров фирмы Intel IA-32

В табл. 2.1 приведены основные свойства процессоров фирмы Intel, от процессора 8086 до первых представителей семейства Pentium.

Таблица 2.1. Основные свойства процессоров фирмы Intel

Тип ЦП Свойства

8086

8088

80286

80386

80486

Pentium

P6

1. Год выпуска

1978

1979

1982

1985

1989

1993

1995

2. Проектные нормы (мкм)

3

3

1,5

1

1-0,8

0,8-0,6

0,6-0,35

3. Количество транзисторов

29000

29000

130000

275000

1млн 200т

3млн 100т

9млн 500т

4. Разрядность ШД/ША

16/20

8/20

16/24

32/32

32/32

64/32

64/32 (36)

5. Максимальный объем  физ. памяти

1 Мб

1 Мб

16 Мб

4 Гб

4 Гб

4 Гб

4 Гб (64 Гб)

6. Максимальный объем  виртуальной памяти

1 Мб

1 Мб

1 Гб

64 Тб

64 Тб

64 Тб

64 Тб

7. Максимальный размер  сегмента

64 Кб

64 Кб

64 Кб/4 Гб

64 Кб/4 Гб

64 Кб/4 Гб

64 Кб/4 Гб

64 Кб/4 Гб

8. Размер очереди предвыборки  (байт)

6

6

16

32

32

32

32

9. Размер операндов (бит)

8, 16

8, 16

8, 16

8, 16, 32

8, 16, 32, 64

8, 16, 32, 64

8, 16, 32, 64

10. Размер регистров (бит)

8, 16

8, 16

8, 16

8, 16, 32

8, 16, 32

8, 6, 32

8, 16, 32

11. Разбиение на страницы

Нет

Нет

Нет

Есть

Есть

Есть

Есть

12. Рабочая частота (МГЦ)

5, 8, 10

5, 8, 10

8, 10, 12, 16

20, 25,33, 40

25-133

60-233

166, 180, 200

13. Защита памяти

Нет

Нет

Есть

Есть

Есть

Есть

Есть

14. Сопроцессор

8087

8087

80287

80287, 80387

FPU

FPU

FPU


 

 

 

 

 

 

 

Конвейеризация шины.

Стоимость компьютерной памяти зависит от ее быстродействия: чем  меньше время обращения, тем выше удельная стоимость. В процессоре 80286 применяется интересный способ, называемый конвейеризацией шины, для повышения  производительности при медленной  памяти, хотя для этого приходится усложнять схемы. При обсуждении цикла шины мы предполагали, что процессор выдает адрес на шину адреса в начале части состояния цикла шины и сохраняет его в течение всего цикла шины.

Мы предполагали также, что  данные помещаются на шину в командной  части и сохраняются на ней  до конца цикла шины. Но теперь представим себе, что адрес выдается немного раньше начала цикла шины и не будем требовать данных даже немного спустя после начала командной части цикла. Очевидно, при этом на реакцию устройствам отводится больше времени. Рассмотрим этот способ подробнее. Показано, что в действительности происходит на трех частях шины процессора (линиях состояния, шине адреса и шине данных). Предполагается, что частота синхронизации процессора составляет 8 МГц. Видно, что адрес опережает цикл шины на один такт системной синхронизации (62,5 не). На такой же интервал данные "залезают" в следуюлшй цикл шины. (Отметим, что здесь используется дополнительная разрешающая способность по времени, обеспечиваемая двойной частотой системной синхронизации.)

 

 

 

 

 

 

 Пакетирование —  это средство блоковой передачи. 
• Реализация пакетного режима в процессоре 486 опирается на представление памяти основной памяти компьютера с размером слова 64 бита (рис. 17.6). Здесь один адрес может открыть 64 бита. По сравнению с конвейеризацией процессора 386 пакетная передача в процессоре 486 осуществляется в два раза быстрее. В процессоре 386 конвейеризация требует два такта на передачу, а в процессоре 486 тот же объем данных передается за один такт. Если сравнить конвейерное обращение к четырем последовательным 16-битовым словам с пакетным обращением к этим же словам, то преимущество пакетирования над конвейеризацией становится очевидным (табл. 17.2).

 

 

 

Суперскалярная архитектура процессора, то есть процессор имеет два пятиступенчатых параллельно работающих конвейера обработки информации, благодаря чему он способен одновременно выполнять две команды за один такт. Необходимо отметить, что преимущества такой архитектуры проявляются только в случае специальной компиляции программного обеспечения, позволяющей осуществлять параллельную обработку. [1]

Суперскалярная архитектура Pentium процессора представляет собой совместимую только с INTEL двухконвейерную индустриальную архитектуру, позволяющую процессору достигать новых уровней производительности посредством выполнения более, чем одной команды за один период тактовой частоты. [2]

Динамическое исполнение программыДинамическое исполнение программы  

Динамическое исполнение программы Динамическое исполнение программы 

представляет собой комбинацию трёх технологийпредставляет собой комбинацию трёх технологийобработки данных:обработки данных:

Глубокое предсказание ветвленийГлубокое предсказание ветвлений

(с(свероятностьювероятностью>>90% можно предсказать 10 - 1590% можно предсказать 10 - 15ближайших переходов)ближайших переходов)

Анализ потока данныхАнализ потока данных

(на 20-30 шагов вперед(на 20-30 шагов впередпосмотреть программу и определить зависимостьпосмотреть программу и определить зависимостькоманд по данным или ресурсам)команд по данным или ресурсам)

Опережающее (внеочередное) исполнениеОпережающее (внеочередное) исполнениекомандкоманд


Информация о работе Архитектура ЦП 8086: основные регистры, организация памяти