Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Micro_systK.doc
Скачиваний:
4
Добавлен:
01.04.2025
Размер:
4 Мб
Скачать
☆

2.1.2.6. Система команд мп Intel 8086

Микропроцессор Intel 8086 относится к микропроцессорам с макро­программным управлением с CISC системой команд. Система команд включает 133 базовые команды и позволяет обрабатывать как 8-разрядные, так и 16-разрядные данные. Команды можно разделить на следующие типы:

  • команды пересылки данных;

  • арифметические команды;

  • логические команды и команды сдвига;

  • команды передачи управления;

  • команды управления процессором;

  • команды обработки строк.

Перечень команд микропроцессора Intel 8086 приведен в приложении [ПИЛЬ98].

2.1.2.7. Содержание цикла команды, типовые машинные циклы мп Intel 8086

Время выполнения одной команды называется циклом команды. Цикл команды складывается из машинных циклов. Машинный цикл – временной интервал, в течение которого выполняется одно обращение к памяти или устройству ввода-вывода.

Микропроцессор Intel 8086 имеет 7 типовых машинных циклов:

  • выборка кода команды;

  • чтение из памяти;

  • запись в память;

  • чтение из порта ввода;

  • запись в порт вывода;

  • подтверждение прерывания;

  • останов.

Выполнение любой команды начинается с выполнения машинного цикла «Выборка кода команды».

Машинные циклы, в свою очередь, состоят из машинных тактов. Машин­ный такт – временной интервал, в течение которого выполняется одна микрооперация. Длительность машинного такта в МП Intel 8086 равна периоду следования тактовых импульсов, поданных на вход CLK (частота 4,77–10 МГц). Машинный цикл микропроцессора состоит по крайней мере, из четырех тактов: T1, T2, T3 и T4 (см. рис. 2.15, 2.16).

На первом машинном такте T1 микропроцессор выдает 20-разрядный адрес на мультиплексированную шину AD0–AD15 и выводы A16–A19. Внешние устройства требуют наличия адреса на ША в течение всего машинного цикла. Микропроцессор формирует сигнал STB, по срезу которого вначале машинного такта T2, необходимо зафиксировать адрес в форми­р ователях шины адреса.

Рис. 2.15. Цикл чтения

Р ис. 2.16. Цикл записи

На втором такте T2 на выводах A16–A19 выдается информация о состоянии микропроцессора.

В машинном цикле записи информации микропроцессор выдает и поддерживает данные на шине AD0–AD15 на интервале T2, T3, T4.

В машинном цикле чтения на интервале T2 шины AD0–AD15 переводятся в Z-состояние. На тактах T3, T4 микропроцессор принимает данные по магистрали AD0-AD15.

В такте T3 микропроцессор анализирует состояние информации на входе READY. Если на нем присутствует сигнал логического «0», то после такта T3 микропроцессор переходит в состояние ожидания, формируя такт ожидания Tw. В такте ожидания Tw микропроцессор вновь проверяет сигнал на выводе READY. При нулевом значении сигнала МП выполняет еще один такт ожидания Tw, а при единичном значении сигнала МП переходит к выполнению такта T4 машинного цикла.

2.1.2.8. Входные и выходные сигналы мп Intel 8086

Корпус микросхемы Intel 8086 имеет сорок выводов, которые исполь­зуются следующим образом (см. рис. 2.2б):

  • AD0–AD15 – тристабильная 16-разрядная двунаправленная мультиплек­сированная шина адреса-данных. В такте T1 по ней передается адрес ячейки памяти или устройства ввода-вывода, а в тактах T2, T3, TОЖ и T4 – данные;

  • A16/ST3–A19/ST6 – тристабильная 4-разрядная выходная шина микро­процессора. В такте T1 по ней передаются четыре старших разряда адреса памяти. В тактах T2–T4 при выполнении операций обращения к памяти и устройствам ввода-вывода – признаки состояния микропроцессора: ST4 и ST3 кодируют номер одного из четырех сегментных регистров, который в данном цикле участвует в формировании адреса (см. табл. 2.1.); ST5 указывает на состояние бита разрешения прерывания IF регистра флагов; ST6=0;

  • B HE/ST7 – тристабильный выход разрешения передачи данных по старшей половине шины AD. Нулевой сигнал в такте T1 обозначает, что 8-разрядное слово данных передается по линиям AD8–AD15. В тактах T2, T3, T4 на выходе присутствует признак ST7 состояния микропроцессора. ST7 постоянно равен 0, а при переключении микропроцессора в режим захвата ST7 переходит в режим высокого сопротивления;

Таблица 2.1. Кодировка номера сегментного регистра

ST4

ST3

Тип регистра

0

0

ES

0

1

CS или никакой

1

0

SS

1

1

DS

  • R – тристабильный выход сигнала чтения. Нулевой сигнал указывает на то, что микропроцессор принимает информацию из памяти или устройства ввода;

  • RDY – вход сигнала готовности. Используется для синхронизации работы микропроцессора с устройствами, имеющими меньшее быстродействие;

  • T EST – вход сигнала проверки. Информация на входе анализируется командой WAIT. Если сигнал на входе равен “0”, то выполнение программы продолжается, в противном случае микропроцессор переводится в состояние ожидания до прихода нулевого сигнала ;

  • INT – вход маскируемого запроса прерывания;

  • NMI – вход немаскируемого запроса прерывания (по положительному перепаду на входе);

  • CLR – вход сигнала начальной установки микропроцессора. По фронту сигнала МП прекращает выполнение всех внутренних операций, по срезу сигнала – МП продолжает работу с новым содержанием регистров, указанных в табл. 2.2;

  • CLK – вход тактовых сигналов синхронизации;

  • M N/MX – вход сигнала управления режимом работы МП. При “1” обеспечивается минимальная конфигурация МПС, при “0” – максимальная;

Таблица 2.2. Содержание регистров после сигнала начальной установки

Регистры

Содержание

IP

0000

CS

FFFF

DS

0000

SS

0000

ES

0000

Флаги

Обнулены

Конвейер команд

Пуст

  • Ucc – вход для подачи напряжения питания +5 В;

  • GND – вход для подключения отрицательного вывода источника пита­ния (используются два вывода микросхемы).

Ф ункциональное назначение остальных 8 выводов МП определяется значением сигнала на входе MN/MX.

П ри MN/MX=1 обеспечивается минимальная конфигурация МПС и микропроцессор имеет:

  • W – тристабильный выход сигнала записи. Низкий уровень сигнала ука­зывает на то, что МП выдает информацию для записи в память или вывода через УВВ;

  • M /IO – тристабильный выход сигнала обращения к памяти или УВВ. Сигнал позволяет отличить передачу информации между МП и памятью (”1”) от передачи между МП и УВВ (“0”);

  • O P/IP – тристабильный выход направления передачи информации между МП и ЗУ или УВВ. При ”1” микропроцессор выдает информацию, а при “0” – принимает информацию. Этот сигнал обычно используется для управ­ления шинными формирователями;

  • D E – тристабильный выход сигнала разрешения передачи данных. Низкий уровень сигнала выдается в каждом цикле обращения к ЗУ или УВВ и в циклах подтверждения прерывания;

  • STB – выход строба адреса. Сигнал в такте T1 стробирует передачи адресной информации с шины AD0–AD15 на другие устройства.

  • I NTA – выход сигнала подтверждения прерывания. Низкий уровень сигнала стробирует ввод в МП информации из источника, вызвавшего прерывание;

  • HLD – вход сигнала запроса режима захвата;

  • HLDA – выход сигнала подтверждения захвата. Сигнал сопровождает перевод шин МП в высокоимпедансное состояние.

П ри MN/MX=0 обеспечивается максимальная конфигурация МПС и микропроцессор имеет:

  • ST0–ST2 – тристабильные выходы состояния МП. Сигналы на выходах формируются в тактах T4, T1 и T2 и указывают на тип машинного цикла (см. табл. 2.3.). Во время такта T3 на этих выходах выставляется комбинация 111;

Таблица 2.3. Кодирование типов машинных циклов

ST2

ST1

ST0

Тип машинного цикла

0

0

0

Подтверждение прерывания

0

0

1

Чтение из порта ввода

0

1

0

Запись в порт вывода

0

1

1

Останов

1

0

0

Выборка кода команды

1

0

1

Чтение из памяти

1

1

0

Запись в память

1

1

1

Не используется

  • R 1/E1, R0/E0 – двунаправленные выводы сигналов запроса/разрешения доступа к шинам МП. Предназначены для обеспечения захвата шин другими устройствами. Выводы функционально однотипны, но нулевой вывод имеет более высокий приоритет;

  • L OCK – тристабильный выход сигнала блокировки системного канала. При “0” другие устройства не могут захватить шины МП;

  • QS1, QS0 – выходы сигналов состояния памяти конвейера команд (см. табл. 2.4.).

Таблица 2.4. Кодирование состояния конвейера команд

QS1

QS0

Текущая операция с конвейером

0

0

Нет операции

0

1

Конвейер очищен

1

0

Извлекается первый байт команды из конвейера

1

1

Извлекается очередной байт команды из конвейера

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]