Формирование ФА в реальном режиме.
В реальном режиме работы селектор – это база. База – это старшие 16 разрядов базо-вого адреса. Для формирования БА база сдвигается вле- во на 4 разряда (умножается на 16). БА ск-ладывается с относительным адресом (16 бит), и таким образом формируется ФА. 15 0
сегментный ФА граница регистр сегмента 15 0 база 0000 20 бит 64 КБ база начало база сдви- БА 20 бит сегмента гается влево на 4 бита ОП | 62.Формирование ФА в защищенном режиме.
В защищенном режиме с содержимым се-гментного регистра (селектором) связан программно недоступный регистр деск-риптора, который хранит размер сегмен- та, БА и атрибуты защиты.
Разрядность каждой части равна разрядно- сти шины адреса МП.
По селектору определяется регистр деск-риптора, из которого считывается БА и складывается с относительным адресом. Таким образом, формируется ФА, кото- рый в случае деления памяти на страни- цы называется линейным адресом.
Относительный
адрес
Сегментный
регистр гра-
15 0 ФА ница
селектор (ли- сегме-
регистр ней- нта
диск- размер сегмента ный
рип- БА адрес) нача-
тора ло
атрибуты защиты сегме-
нта
Логический адрес состоит из двух частей:
Селектор: Относительный адрес
Селектор: Смещение
В реальном режиме работы:
База: Смещение.
Вместо селектора можно указывать сегментный регистр.
Пример:
Объем ОП = 1МБ, режим работы МП – реальный. Текущая программа занимает третий сегмент, данные этой программы – четвертый, стек – шестой.
1)Определить кол-во сегментов в памяти:
Объем ОП 1МБ.
Объем сегмента 64 КБ.
Т=1МБ/64КБ = 1024КБ/64КБ = 16
ОА 7 0
FFFFh
ФА FFFFFh Сегмент
F0000h 15
БА 0000h
FFFFh
ФА 2FFFFh Сегмент
20000h 2
БА 0000h
FFFFh
ФА 1FFFFh Сегмент
10000h 1
БА 0000h
FFFFh
ФА 0FFFFh Сегмент
00000h 0
БА 0000h 64КБ
1МБ
2)Определить разрядность ОА.
n = log264K n=16
Диапазон ОА: 0000h–FFFFh
3)Определить базовые адреса сегментов.
4)Указать содержимое сегментных регистров.
Сегмент 3 – программа.
Сегмент 4 – данные.
Сегмент 6 – стек.
Селектор программного сегмента находится в CS.
Реальный режим: Селектор = База, База – старшие 16 бит БА.
БА третьего сегмента 30000h
(CS) = 30000h База
(SS) = 6000h
(DS) = 4000h
63.Физический, логический, относительный адрес.
Уникальный адрес байта памяти называет- ся физическим адресом или абсолютным.
Физический адрес МП выставляет на шину адреса.
При большем объеме памяти большей бу- дет и разрядность физического адреса. Это приводит к увеличению длины команды и программы в целом.
Чтобы исключить зависимость длины ко-манды от объема ОП компьютера, память условно делят на участки, называемые сегментами.
Начальные адреса сегментов могут быть любыми, их назыв. базовыми адресами.
БА – это ФА первой ячейки сегмента.
Адрес байта в сегменте называется смеще-нием (относительный адрес, исполните-льный адрес, эффективный адрес), т.е. ад- рес ячейки, отсчитанный от начала сегме- нта.
В команде указыв. относительный адрес и для его хранения достаточно m разрядов.
При этих условиях ФА ячейки памяти рас-считывается по формуле: ФА=БА+offset.
64.Устройство управления микропроцессора. Регистр команд, счетчик команд, очередь команд.
Назначение устройства управления: обес-печивает управление выполнением команд.
Состав:
1)Регистр команд. 2)Счетчик команд.
3)Микропрограммное устройство управ-ления. 4)Очередь команд.
Регистр команд:
Регистр команд предназначен для приема из внутренней памяти (ОП, ПП) и хране- ния команды.
Разрядность регистра команд определяет- ся разрядностью самой длинной команды микропроцессора – 12 байт.
Команда, которая находится в регистре команд и выполняется МП, называется текущей командой.
Счетчик команд:
16-разрядный – IP. 32-разрядный – EIP.
Счетчик команд хранит относительный адрес команды.
После считывания команды из памяти и загрузки ее в регистр команд содержимое счетчика увеличивается на длину команды.
Счетчик команд программисту не доступен.
Ни в одной команде нельзя использовать имя счетчика команд.
Содержимое счетчика команд изменяется при выполнении команд передачи управ-ления и прерываний:
1)команды безусловного перехода. JMP метка.
2)команды условного перехода.
JZ метка, JNZ метка.
3)переход на подпрограмму.
CALL имя подпрограммы.
Очередь команд:
Пока выполняется текущая команда, если магистраль процессора свободна, из памя- ти осуществляется считывание следующей команды, которая загружается в очередь команд. Очередь команд увеличивается быстродействием МП, т.к. выполнение команды совмещается с выборкой следу-ющей команды.
65.Устройство управления микропроцессора. Микропрограммное устройство управления. Совместимость процессоров.
Назначение устройства управления МП: обеспечивает управление выполнением команд.
Состав:
1)Регистр команд. 2)Счетчик команд.
3)Микропрограммное устройство управ-ления. 4)Очередь команд.
Микропрограммные ус-ва управления пре-дназначены для преобразования кода опе-рации команды в управляющие сигналы.
У каждого процессора есть система команд.
|
|
|
|
|
|
|
| Обеспечивается вертикальная совмести-мость по системе команд, т.е. МП, вы-пущенный последним, содержит все ко-манды предыдущих процессоров. Для каждой команды разрабатывается микропрограмма, которая состоит из микрокоманд. Микрокоманда – набор управляющих сигналов, которые могут действовать одновременно. Микропрограммы хранятся в постоянной памяти МП. 66.Структура команды МП. Команда (инструкция) указывает, какую операцию должен выполнить процессор (сложить, вычесть …), где находятся операнды и где разместить результат. В структуре команды можно выделить код операции (КОП) и адресную часть. Команды бывают 2-адресными, одноад-ресными и безадресными. В 2-адресной команде указываются адреса двух операндов, результат размещается на месте первого операнда. В одноадресных командах указывается ад- рес одного операнда, результат размещает- ся на месте этого операнда. Безадресная команда не содержит адресов операндов. CLI – устанавливает флаг прерывания IF в 0. 67.Способы адресации. Регистровая, непосредственная. Прямая, косвенно-регистровая. Регистровая: Операнд находится в регистре, в команде указывается имя регистра. регистровая адресация MOV BL, AL До выполнения: (BL)=15, (AL)=30. После выполнения: (BL)=30, (AL)=30. Непосредственная: Операнд находится в команде в поле “непосредственный операнд”. регистр. непоср. адрес. адрес. MOV AL, 40 После выполнения: (AL)=40 Прямая: Операнд находится в памяти, в команде указывается имя переменно. Относительный адрес памяти размещается в поле “смещение команды”. регистр. прямая адрес. адрес. MOV AL, AS .data AS AS+1 AS+2 AS DB 12, 16, 30 .code MOV AX, @data MOV DS, AX регист. адрес. рег. адр. прям. адр. MOV AL, AS+2; (AL):=30 Содержимое ячейки памяти (AS=2) копируется в РОН AL. Косвенно-регистровая: Операнд находится в памяти, а относите-льный адрес операнда находится в инде-ксном регистре (SI, DI, ESI, EDI) или ба-зовом регистре (BX, EBX). 16 бит 32 бит В команде следует указать имя регистра в квадратных скобках. регист. косв.-рег. адр. адр. MOV AL, [SI] Содержимое ячейки памяти, относитель- ный адрес которой находится в регистре SI, копируется в РОН AL. .data AS AS+1 AS+2 AS DB 12, 13, 30 0000h 0001h 0002h .code MOV AX, @data MOV DS, AX LEA SI, AS+2; (SI):=0002h, (SI):=AS+2 MOV AL, [SI]; (AL):=((SI)), (AL):=(0002h), (AL):=30 (AL)=30, (BL)=30 LEA R, M 2 Б MOV R, offset M 2 Б Относительный адрес ячейки М загружа- ется в РОН R. 68.Способы адресации. Базовая, индексная. Базово-индексная. Базовая: Операнд находится в памяти. Относительный адрес формируется путем сложения содержимого базового регистра (BP или BX) и смещение. регистр. MOV AL, AS[BX] Относительный адрес = (BX) + относите-льный адрес AS. Индексная: Операнд находится в памяти. Относительный адрес формируется путем сложения содержимого индексного регис- тра (SI или DI) и смещения относительного адреса ячейки памяти. индексная MOV AL, AS[DI] Относительный адрес = (DI) + относите-льный адрес AS. .data AS AS+1 AS+2 AS+3 AS DB 13, 12, 5, 6 0000h 0001h 0002h 0003h .code MOV AX, @data MOV DS, AX регистр. непос. MOV DI, 3; (DI):=3 регистр. индекс. MOV AL, AS[DI]; (AL):=(AS+3) AL:=6 Относительный адрес = относительный адресAS+(DI) = AS+3 = 0000h+3 = 0003h Базово-индексная: Операнд находится в памяти. Относительн. адрес образуется путем сло-жения содержимого базового регистра (BP или BX) и индексного регистра (SI или DI). MOV AL, [BP][SI] [BP+SI] Относительный адрес = (BP) + (SI) .data AS DB 13, 14, 5, 6 .code 0000h 0001h 0002h 0003h MOV AX, @data MOV DS, AX MOV BP, 1; (BP):=1 MOV SI, 2; (SI):=2 регистр. базово-индек. MOV AL, [BP][SI]; (AL):=((BP+SI))=6 Относительный адрес = (BP)+(SI)=1+2=3 Содержимое ячейки памяти, относитель- ный адрес которой равен сумме содер-жимого BP и SI, копируется в РОН AL. 69.Интерфейс МП. Шина данных. Управление разрядностью шины данных. Контроль по паритету. МП Intel 486 имеет 168-выходной корпус с матричным расположением. Взаимодействие МП с другими устройст-вами системы осуществляется при помощи 32-разрядной шины данных, 32-разрядной шины адреса и шины управления. Шина данных D31-D0 является двунапра-вленной, имеет возможность установки в высокоимпедансное состояние. Обеспе-чивает передачу данных между МП и др. устройствами системы. Изменение разрядности шины данных осуществляется с помощью сигналов на входах BS16# и BS8#. | Разрядность шины данных:
BS16#, BS8#
Сигналы на этих входах позволяют связать МП с 16- и 8-разрядными шинами данных. МП опрашивает эти входы в каждом такте. При активизации этих сигналов МП авто-матически генерирует вместо одного зап- роса передачи данных большого формата несколько запросов передачи данных ме-ньшего формата.
BS16# BS8# Шина данных
0 0 8 бит
0 1 16 бит
1 0 8 бит
1 1 32 бит
70.Шина адреса МП. Адресное пространство памяти. Адресное пространство ввода-вывода.
А31-А0.
Является двунаправленной и имеет возмо-жность установки в высокоимпедансное состояние.
На шине адреса МП формирует физический адрес байта памяти.
Адресное пространство памяти: 232 = 22 * 210 * 210 * 210 = 4 ГБ
Диапазон адресов: 0–232-1
00000000h – FFFFFFFFh
Также на шине адреса МП формирует ад- рес из пространства ввода-вывода (адрес порта).
Адресное пространство ввода-вывода 64К (65536 портов).
Адрес порта передается по линиям A15-A0.
Современные МП – это МП с изолирован- ной шиной, т.е. адресное пространство па- мяти и портов ввода-вывода перекрываю- тся, т.е. есть нулевая ячейка памяти и ну- левой порт.
Для работы с памятью и пространством ввода-вывода используются разные ко-манды. Для работы с памятью – команда MOV, для работы с пространством ввода-вывода – команды: 1)IN (ввод из порта), 2)OUT (вывод в порт).
71.Командный цикл. Такт магистрали. Цикл магистрали.
Элементарным интервалом времени при реализации протоколов обмена является такт магистрали, равный одному пери- оду сигнала, поступающему на вход Clock МП (внешняя тактовая частота МП или частота системной шины).
такт Т1 Т2 Т2 Т2
clock
цикл магистрали такты
ожидания RDY#=0
f = 100 МГц.
Т = 1/а = 1/100 МГц = 10 нс.
Полная передача инф-ции происходит в течение цикла магистрали, состоящего из 2 или > тактов.
Каждый цикл магистрали продолжается до получения от внешней аппаратуры сигнала READY (готов RDY).
Если READY не активен, то такт T2 пов-торяется до тех пор, пока проверка входа READY не укажет на его активность. По-вторяющиеся такты T2 называются такта- ми ожидания.
Командный цикл – время выборки кома- нды из памяти и ее выполнение.
Командный цикл начинается с цикла ма-гистрали “выборка команды”.
72.Сигналы определения цикла магистрали.
M/IO#, D/C#, W/R#.
Указывают тип выполняемого цикла магистрали.
M/IO# = 0 – цикл обращения к портам.
M/IO# = 1 – цикл обращения к памяти.
W/R# = 0 – цикл чтения.
W/R# = 1 – цикл записи.
D/C# = 0 – цикл управления.
D/C# = 1 – цикл данных.
Пример:
OUT 34h, AL
M/IO# = 0.
D/C# = 1.
W/R# = 1.
Типы циклов магистрали:
Циклы магистрали МП.
1) регист.регист. MOV AL, BL выборка
2) регистр. прямая MOV AL, AS выборка чтение из
M/IO# = 1, D/C = 1, W/R# = 0 3) прям. регист. MOV AM, BL выборка запись в
4) OUT 20h, AL выборка запись в
M/IO# = 0, D/C# = 1, W/R# = 1 5) INC A; (A):=(A)+1 выборка чтение из запись в
Протокол обмана МП:
Ti
clock A31-A0 M/IO#,D/C# ADS#
W/R#
READY#
D31-D0 дан- ные цикл в МП цикл чтения записи 74.Цикл МП “Захват магистрали”. Активный сигнал на входе Hold VG гово- рит о том, что некое активное устройство просит МП передать ему управление ма-гистралью. В ответ, после завершения текущего цикла магистрали, МП перево- дит свои выходы в высокоимпедансное состояние и формирует сигнал подтвер-ждения на выходе HLDA.
Воспользуйтесь поиском по сайту: ![]() ©2015 - 2026 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|