Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Микропроцессоры Конспект.doc
Скачиваний:
9
Добавлен:
14.02.2015
Размер:
1.27 Mб
Скачать

01.03.12

Сигналы упреавления шиной.

  1. Эти сигналы предназаначены для управления, в коком направлении идет передача даннызх: в МП или из него, и скаким устройством идет обмен данными: ЗУ или УУ. Все эти сигналы тристабильные. Cпомощью этого синанала производится считывание данных. (#RD) #WR- записсь данных роцессора. М/#IO- память. Этот сигнал показывает к какому устройству обращается МП. ЕслиM/#IO=1 , обращение производится к ЗУ, если 0 - то к ВУ. Эти 3 сигнала используются при работе МП в минимальном режиме. Для формирования 4-раздельных сигналов обращение к памяти или ВУ.

Управляющие сигналы необходимы для использования в системе изолированного ввода-вывода. Если в МПС используется только ввод-вывод, отображаемы й на память, тогда для обращения к портам ВВ достаточно сигналов #RD, #WR.

  1. Синалы для управления запросом (захват шины). HOLD- запрос (захват шины) - это входной сигнал, поступающий от уонтроллера прямого доступа к памяти, если УВВ требует обмена в режиме ПДП. Процессор отвечает ему сигналомHLDA- подверждение запроса (захвата). Этим сигналом МП подвепждает, что он перешел в реъим захвата. Переводит ША и ШД, а также некоторые упроавляющие сигналы в 3 сосотояние. После этого шиной управляет КДПД.

  2. Сингналы управления прерываний NMI- запрос немаскируемого прерывания, разпознается всегда по фронту сигнала, после завершения тякущей команды, независимо от того, разрешены или запрещены прерывания. КомандаINTR- запрос маскируемого прерывания. Микропроцессор реагирует на этот сигнал, если прерывания разрешены. СигналINTRзапрещается с помощью внутреннего триггера прерывания.

Прерывания по INTRзапрещены, еслиIFсброшен в 0. Программный сброс обеспечивается командойCLI. Прерывание разрешаются командойSTI. Замечания: при подаче сигналINTRтриггерIFсбрасывается в 0. #INTA- подверждение прерывания. Показывает, что МП перешел в режим по прерыванию.

02.03

  1. Ready- готов. ПриRDY=0 приоставливается активность процессора на.................... на неопределенное число тактов, появляющихся после такта 3 машинного цикла. СигналRDYпозаволяет организовать интерфейс МП с медленно действующими ЗУ и ВУ, у которых время обращения больше и равно 200 нсек.

  2. #TEST(проверка)CLR(RESET) - ОЧИСТКА, СБРОС. С помошью сигналаClrпроцессор переходит в начальное состояние. При подаче сигналаCLR=1, все выходные шины МП переходят в 3 состояние. По сигналуCLRустанавливаются в 0,DS,SS,ES,IP,IF= 0. зНАЧЕНИЕ ОСТАЛЬНЫХ РЕГИСТРОВ НЕ ПОРЕДЕЛЕНЫ. На шине адреса выставляется физический адрес =CS*2(в 4 степени)+IP=FFFF0+IP. Поэтому 1-ую команду программмы размещают по адресуFFFF0.

CLK- сигнал синхронизации. На этот вход подаются сигналы синхронизации от внешнего генератора.

MN\#MX- макс мин режимы.

Циклом шины называеют обращение к ячейкам памяти или устройствам.

03.03.12

Организация памяти.

Память представляет собой массив, емкостью 1 мб. В памятия хранятся как байты, иак и 16 разрядные слова. Слова располагаются в двух соседних ячейках памяти: старший байт хранится в ячейке со старшим адресом, младший - в ячей с младшим. Адресом слова считается адрес его младшего байта. Начальный адрес зарезервированы для системы прерываний и начальной установки соответственно.

Организация памяти, при которой содержимое одной ячейки памяти называется линейной. В МП 86 используется сегментная организация памТи , при которой программно-доступной является не вся память, а только некоторые сегменты. Внутри сегмента используются линейная адресация. ВВедение сегментной организации объясняется тем, что МП 86 является 16 разрядным, т.е. имеет 16 разрядную внут шину, 16 разрядные регистры и сумматоры, ОДНАКО РАЗРАБОТЧИКИ бис ДЛЯ РАСШИРЕНИЯ АДРЕСНОГО ПРОСТАННСТВА ПРИМЕНИЛИ 20 разрядную шину.

Для формирования 20 разрядного адреса в 16 разрядном процессоре используют информацию 2-х 16-рядных адресов, которых называют логическими.

1-ый логический адрес, дополненный справо 4-мя 0 представляет собой начальный адрес сегмента емеостью 64 кб. 2-ой логический адрес определяет смещение в сегменте, т.е. расстояние от начала сегмента до адресованной ячейки. Т.о. логическое адресное пространство разделено на блоки соседних адресов, емкостью 64 кб, т.е. сегментами.

Такой подход к организации памяти удобен потому, что память обычно логически делится на области кода (программная память), данных и стека.

Физический 20 разрядный адрес ячейки памяти формируется из 2 16-рфзрядных адресов адреса сегмента и исполнительного адреса EA, который суммируется со смещением на 4 разряда. Смещение адреса сегмента нв 4 разряда влево эквивалентно его умножению на 2 в 4 степени. Физический адрес =16ХSeg+EA. В каечстве 1-ого логического адресаSegиспользуется содердимое одно их 4 регистров:CS,DS,ES,SS. Второй логический адресEAзависит от типа сегмента.

В сегменте кодов CSиспользуется содержимое указаьеля команд. В сегменте данных значениеEAзависит от способа адресации операнда. В сегменте стэка для указания исполнительно адреса испольхуются регистрыSPилиBP. Емкость памяти 1 мб, начиная с 0-ого адреса разбиваются на параграфы по 16 байт. Сегмент может находится только на границе параграфа, т.е. Размещение сегментов в памяти произвольное. Сегменты могут частично или полностью перекрываться или не иметь общих областей. Изменяя значение 1 и 2 логических адресов, можно адресовать любую ячейку из общей памяти емкостью 1 мб.

Начальные адреса сегментов определяется содержимым 16 разрядных сегментных регистров, которые дополнены справо 4 нулевыми битами. смещение в сегменте кодов определяется содержимым регистра IPи т.д. Изменяя содержимое сегментных регистров можно передвигать сигменты всей памяти 1 мб.

06.03

состоит из Рон, сегментныз регистров, указателя команд и регистров флагов.

Регистры общего назначения делятся на регистры данных и регистры указателя. Регистры данных - это 4 16разрядных регистра: AX,BX,CX,DX. лЮБОЙ из этих регистров соостоит из 2-х 8 разрядных регистров, которые можно независимо адресовать символическими именамиAH,BH,CH,DH(СТАРШИЕ)

AL, BL, CL, DL.

Регистры указателей

BP,

SI,(индекс источника),

DI(Индекс назначения),

Эти регистры являются 16разрядными и предназначены как правило для хранения адресов операндов при косвенной адресации.

Все РОН можно использовать для хранения данных, но в некоторых команд допускается использование определенного регистра по умолчанию. Регистр АХ про умножении........

AL- при умножении делении ВВ байта 10ичной коррекции и др.AH- при умножении и делении байта.BX- при трансляции,CX- ка счетчик циклов.SP- при операции со стэком.SI,DI- при строковых операциях. В регистреSPхранится смещение последней занятой ячейки стэка относительно начала сегмента стэка, а полный адрес стэка определяется и записывается след образом.SS:SP. Сегментные регистрыDS,CS,ESОПРЕДЕЛЯЮТ НАЧАЛЬНЫЕ АДРЕСА 4 СЕГМЕНТОВ ПАМЯТИ. Использование сегментных регистров определяется типом обращения к памяти (выборка команд, стэковая операция).

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

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

CF- флаг переноса старших разоядов

PF- флаг политета, устанавливается при четном числе единиц в результате.

AF- флаг дополнительного переноса (заёма) в тетради для 10ичной арифметики.

ZF- флаг нулевого результат.

SF- флаг знака. Указывает на единичное значение старшего бита результата - признак отрицательного числа.

TF- флаг трассировки. (пошагового режима). При его установки после выполнения каждой команды вызывается внутреннее прерывание 1INT1.

IF- флаг урпавления прерыванием. При единичном его значении разрешается выполнение маскируемых аппаратных прерываний.

DF- флаг управления направлением в строковых операциях. Автомотичсеки декриментируется на установленное кол-во байт операнда - при1, при 0 - инкрементируется.

OF- флаг переполнения. устанавливается если результат арифметической операции не помещается в операнде назначения.

Особую роль играет 16разрядные регистры, указатели сегментов CS,DS,ESSS. Они могут модефицированться непосредственно командами их загрузки.

Адресация портов ВВ.

Пространство адресов портов ВВ несегментировано, занимает 64 кб и адресуется 16 младшими разрядами 20разрядной шины адреса. Порты могут быть как 8, так и 16 разрядные. Любые 2 смежных 8рядных порта можно рассматривать как 16рачжный порт анологично слову в памяти. При этом для обмена с 8разрядными портами используются регистр AL, в 16раядные - регистрAX.

Типы адресации операнда.

В МП I86 используются след типы адресации:

  1. прямая

  2. регистровая

  3. непосредственная

  4. косвенная

Однако косвенная адресация имеет след разновидности: базовая, индексная, базово-индексная. Процессор 86 может обрабатывать до 256 прерываний. Каждому прерыванию соответствует вектор - двойное слово, которое содержит адрес вызываемой подпрограммы. Подвекторе прерываний, в общем простанстве адресов памяти отводится 1 кб, начиная с 0-ого адреса.

При переходе к подпрограмме обработки прерываний INln, процессор перемещает в стэк содержимое регистровIP,CS, регистров флагов, сбрасывает флаг разрешения прерывания, вычисляет 4xn, первой слово по этому адресу перемещает вIP, а второе вCS. Последовательность этих действий эквивалентно командамPUSH,CALLFARproc. 4n.

Прерывания

..............поступают в систему прерываний или на линию немаскируемого прерывания. Система прерываний формирует сигнал Inetrмаскируемого прерывания МП. Маскируемое прерывание отличается от немаскируемого тем, что 1-ое может быть запрещено программно - командой сбросов, флагов. В этом случае при поступлении запросов прерывания они будут игнорироваться.

внутреннее прерывание процессора разделяют на программные и аппаратные. Источниками внутренних программных прерываний являются: ошибка деления (тип 0), пошаговый режим (тип 1), команда INTO(тип 4).

Внутреннее программное прерывание pin3 выполняются по команде прерывания и разрешают вызывать подпрограммы прерываний (сервисные попрограммы сервис иDOS) без применения дальних вызовов подпрограмм. Выполнение программных прерываний независит от флагаIF.

Внутренее аппаратное прерывание процессора возникает в следующих случаях.

  1. При делении на 0

  2. при установленном флаге трассировки тип1. В этом случае прерывание происходит после выполнения каждой команды.

  3. После команды INTO(тип 4), если установлен флаг переполнения.

Аппортаные прерывания возникают при активном уровне сигналов на выводах NMI(немаскируемое прерывание ТИП2) иINTER(маскируемые типы 5-255). Маскируемые прерывания выполняются при установленном флагеIF. Обработка тякущего прерывания может быть прервана намескируемым прерыванием или другим маскируемым прерыванием высшего проиоритета в том случае, если подпрограмма - обработчик установит флаг разрешения прерыванияIF. Немаскируемое прерывание выполняется независимо от состояния флагаIF.

13.02.12

Система команд МП Ibtel8086.

Система команд Intelсодержит 91 мнекод. Все команды можно разделить на 5 групп.

  1. Команды передачи информации (перессылка, работа со стеком, команды ВВ)

  2. Команды обработки информации (арифметические, логические, Команды сдвига)

  3. Строковые команды.

  4. Команды передачи управления, включая команды прерываний.

  5. Команды управления состояния МП.